DeepTrack: Grouping RFID Tags Based on Spatio-temporal Proximity in Retail Spaces-翻译
DeepTrack: Grouping RFID Tags Based on Spatio-temporal Proximity in Retail Spaces-翻译
简述和翻译
文章来源:IEEE INFOCOM 2020 - IEEE CONFERENCE ON COMPUTER COMMUNICATIONS , pp.1271-1280
下载地址:https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=9155357
作者:Shasha Li, Mustafa Arslan, Amir Khojastepour, Srikanth V. Krishnamurthy, Sampath Rangarajan
题目
DeepTrack:在零售空间中基于时空邻近性(Spatio-temporal Proximity)对RFID标签分组
摘要
用于在销售点(POS)系统中盘点和处理交易的RFID应用程序可提高运营效率,但其设计目的并非提供客户与产品交互的见解。我们通过解决邻近分组问题来弥合这一差距,以识别随着时间的推移彼此非常接近的RFID标签组。我们设计了DeepTrack,这是一个框架,它使用深度学习自动跟踪客户在购物过程中携带的一组物品。这挖掘了隐藏的购买行为,帮助零售商做出更好的商业决策,并为创新的购物体验打下基础,如无缝结帐(“a la Amazon Go亚马逊无人超市”)。DeepTrack采用带有注意机制的循环神经网络(RNN)来解决噪声环境下的邻近分组问题,而无需显式定位标签。**我们制作DeepTrack的设计,不仅可以跟踪移动组(客户携带的产品),还可以灵活识别固定标签组(货架上的产品)。**DeepTrack的关键特质是,它只需使用现成的商用RFID设备的标签数据。我们的实验表明,只有两小时的训练数据,当跟踪八个移动(静止)组时,DeepTrack的分组准确率达到98.18%(99.79%)。
介绍
零售店(如优衣库、梅西百货等)已开始使用RFID增加或取代传统条形码,以加快库存和付款处理。虽然这样的实施提高了运营效率,但它们并不是为了让零售商了解客户与产品的互动。在这个方向上,我们提出了一个问题,在这个问题中,我们试图确定我们称之为接近组的东西,那指的是一组RFID标签,这些标签在零售商店中随着时间的推移彼此非常接近。
**为了识别邻近组,我们设计了DeepTrack,这是一个利用深度学习来捕获标签阅读之间的时空关系的框架。**DeepTrack利用零售商店中分布的RFID阅读器的数据,通过跟踪客户在整个购物过程中提货(或放回)产品时的“虚拟购物车”的演变,可以解锁客户隐藏的购买行为。不仅要了解客户购买的商品,还要了解他们在商店中的路径[1]、[2]、[3]、[4]以及他们购买商品的时间特征[5]、[6]、[7]、[8]、[9],这为零售商提供了新的营销策略。相比之下,传统的POS系统无法揭示这种深度的洞察,因为它们只从单一的有利优势提供最终的购物车内容,即从收银台收到的发票。此外,DeepTrack还为无缝结账铺平了道路,在这里,客户无需在结账站停车即可结账,因为购买将作为购物过程的一部分被自动跟踪。[显然,这需要将标签组与用户身份关联起来(即,带有人脸认证)]
表面上看,似乎可以通过持续定位标签来解决邻近分组问题。最先进的标签定位系统需要专用设备[11]和/或采用受控的标签轨迹和速度[12]。很明显,这样的限制在零售店是不实际的,因为人们,(及其项目)不会表现出可预测的静态行为。因此,我们不知道有任何研究在实验上显示数百个RFID标签在动态环境中以随机模式移动的精确定位。DeepTrack 独特地利用 RNN 将来自多个阅读器的标签读取历史拼接在一起,以准确识别邻近组,而无需显式定位标签。我们的贡献总结如下:
- 据我们所知,这是第一篇为大型零售商店的RFID邻近分组问题提供可行解决方案的论文。通过不断跟踪具有常见移动模式的标签组,这为创新零售应用打下基础。
- 我们设计的DeepTrack,该框架采用Siamese RNN模型来学习RFID标签之间的时空接近度。DeepTrack的关键属性是:(a)它只依赖于来自商用RFID设备的标签数据;(b)它可以以非常高的精度对固定和移动标签进行分组。
- 由于无线系统中固有的多径和阻塞,实施DeepTrack具有挑战性,这会导致零星和嘈杂的标签读取。我们利用NLP(natural language processing,自然语言处理)研究中的注意机制,确保强调可靠的阅读,同时过滤掉可能降低分组准确性的嘈杂报告。
- 我们在商用RFID设备上实施并广泛评估DeepTrack。我们的实验表明,DeepTrack实现了98.18%的分组准确率,(99.79%)跟踪8个移动(静止)组,同时适应动态环境。
系统模型
RFID系统:典型的UHF RFID系统包括读卡器、附在物体上的标签以及收集/处理标签阅读的软件。每个阅读器发出一个信号,该信号被接收者标签反向散射以生成响应(包含其唯一的标签ID)。除了标签数据,读取器还从响应中提取RSSI(即,信号强度)。也可捕获一些精密的其他特性,像相位差和多普勒频移。每个阅读器可能配备多根天线,在移动到下一根天线之前通过发射和等待标签响应来循环浏览它们,直到所有天线都有机会读取标签。由于我们试图在大型零售商店中跟踪标签,因此我们假设多个阅读器被仔细放置,以允许它们之间有一些重叠,从而消除任何覆盖范围差距。
循环神经网络(RNN):RNNs[13][14][15] 广泛用于时空邻近数据建模(例如[16][17])。简言之,RNN包含一系列重复的单元,每个单元同时考虑当前输入和前一单元的内存状态,以输出新的内存状态。使用重复单元,RNN可以获取一个输入序列,在每个时间点对每个输入的空间信息进行建模,并在输入序列中加入时间信息。LSTM[18]和GRU[19]是流行的RNN,它们克服了所谓的梯度消失/爆炸问题[20],因此能够捕获长期依赖性,[18], [19]. 我们使用基于GRU的RNN作为DeepTrack中的基本构建块,因为它比LSTM简单,并且在大多数情况下具有相当的性能。
问题和挑战
问题描述
我们试图识别多个标签组,其中一个组被定义为RFID标签集,这些标签随着时间的推移彼此非常接近。我们还定义了(a)移动组,表示标签在商店中一起移动;它们可能在某些时间处于静止状态,但始终保持接近状态;(b)静态组,表示相互靠近(不移动)的一组标签。这些群体可能因不同的购物行为而演变。例如,当客户从货架上取下一件物品并带走时,该物品不再与货架上的其他物品属于同一组,必须与客户可能携带的其他物品一起包含在一组中。
我们将决策窗口定义为一个时间间隔,在此时间间隔内,我们对给定的一对标签是否非常接近进行单个估计。更正式地说,我们将每次阅读表示为一个向量:$r_i ∈ R^{d_1} $ ;rir_iri包括时间戳、RSSI等特性。决策窗口中标签的所有读数都可以表示为x=[r1,r2,...rN],x∈Rd1x=[r_1,r_2,... r_N],x ∈ R^{d_1}x=[r1,r2,...rN],x∈Rd1 其中N是决策窗口中的阅读数量,可以随标签和决策窗口的不同而变化。给定一对标签的读数,比如x1和x2,我们使用RNN学习嵌入函数KaTeX parse error: Unexpected character: '' at position 3: f(̲·),该函数将RFID读数映射到特征向量。我们假设,如果在特定决策窗口期间,两个标签(即f(x1)和f(x2))在预先指定的空间接近度内,则两个标记的嵌入特征向量将是接近的,否则将彼此远离。拥有一个小的决策窗口有助于快速捕获邻近性的变化。但是,它不能太小,以获取足够的读数,从而进行可靠的估计。
挑战
不幸的是,深度学习不是RFID数据处理的即插即用,因为我们需要仔细设计模型以解决以下挑战。
不同的阅读数量
大多数深度学习模型要么是为固定大小的输入(如图像)设计的,要么是假设类似大小的输入(如单词数相似的句子)。使用 RFID,在每个决策窗口中,跨标签的读取次数可能从数十到数千不等。影响这一点的一个关键因素是阅读器覆盖区域中标签的总数及其各自的无线信道。提供 RNN 来处理最高数量的读数会导致模型的高复杂性(由于输入向量很大),而为具有少量读数的标签设计它,可能会产生一个“能力”不足的模型来识别组。
噪音标签读数
多径导致来自标签的多个信号(具有不同的RSSI和相位),即使它位于固定位置。先前的解决方案[11][12]通过随时间收集读数以在给定位置精确定位标签来解决此问题。此类解决方案不适用于零售环境;使用标签移动性,不仅每个位置的读数较少,而且很难确定哪些读数可靠地表示给定的位置。因此,该模型需要使用来自每个位置的少量不可靠读数来准确发现移动组。
不同的移动模式
零售店既有固定标签(如货架上的标签)也有移动标签(如由人携带的标签)。理论上,多普勒频移可以帮助区分不同的移动组,因为它可以指示移动的速度和方向。然而,对于静态标签组来说,这并不重要,因为缺乏运动不会引起足够的多普勒频移。相位差可用于识别固定组,因为它可以估计标签与读取器的距离[11]。另一方面,很难获得移动标签的可靠相位估计。此外,并非所有COTS RFID阅读器都具有此类低电平信号特征。
DeepTrack的描述(重点)
在本节中,我们将描述DeepTrack的总体架构,并描述我们为应对上述挑战而做出的具体设计选择。
使用成对邻近性进行分组(重点)
为了识别一个群体,我们使用成对接近(即两个标签之间的接近度)作为初基。我们假设存在“参考”标签,它们最初是各自组中的唯一成员。这些特殊标签可能安装在购物车或购物袋以及货架上。通过将其他标签(非参考标签)的“相似性”与该组的参考标签进行比较,测试其在该组中的成员资格。更高的相似性意味着两个标签更可能接近。因此,每个标签都会添加到具有最高相似性的组中。
在DeepTrack中,我们使用暹罗神经网络(NN)架构来学习一对标签之间的相似性,(见图1)。暹罗NN最初被提议用于手签名验证[22],其任务是确定两个签名是否相似(属于同一个人)。暹罗神经网络有两个具有相同配置的相同子网络,其中每个子网络接受一个输入并将其映射到嵌入空间。然后,将来自两个子网络的嵌入特征输出馈送至模块,在模块中使用两个嵌入输出之间的L2范数距离等度量来查找相似性。
为了训练暹罗RNN学习嵌入函数f(⋅)f(·)f(⋅),我们对[23]中提出的对比损失函数进行了修改,该修改适合我们的问题,包括下界(m1)和上界(m2),如下所示:
Loss(x1,x2,y)=12y⋅max(0,∣∣f(x1)−f(x2)∣∣2−m1)2+12(1−y)⋅max(0,m2−∣∣f(x1)−f(x2)∣∣2)2Loss(x_1,x_2,y) = \frac{1}{2}y·max(0,||f(x_1)-f(x_2)||_2-m_1)^2+\frac{1}{2}(1-y)·max(0,m_2-||f(x_1)-f(x_2)||_2)^2 Loss(x1,x2,y)=21y⋅max(0,∣∣f(x1)−f(x2)∣∣2−m1)2+21(1−y)⋅max(0,m2−∣∣f(x1)−f(x2)∣∣2)2
其中x1x_1x1和x2x_2x2来自两个标签的一对读数。布尔值标记y=1,表示读数属于同一接近组的两个标签,否则为“0”。具体地说,我们引入下界m1以确保附近的标签(而不是在完全相同的坐标处)被分组在一起。
我们用大量输入对及其真实标记训练 Siamese RNN(以下简称模型);如果一对读数来自同一组中的两个标签,则为真(y=1),否则为假(y=0)。为了找到最佳 f(·),模型最小化上述损失函数以对两个标签在同一组中(距离 < m1)或不在(距离 > m2)中进行分类。两个子网络的参数通过梯度下降算法进行更新,以最小化所有训练对的损失。距离根据经验确定。在训练之后,我们使用该模型来测试一对标签(其中一个是参考标签)之间的相似性,以便形成组。
利用注意机制总结标签读数(重点)
在将标签读数作为输入,输入到我们的模型之前,我们首先将决策窗口划分为多个(比如T)时隙。时隙具有足够短的持续时间,使得在该时间内(例如,1-2秒),标签被假定为准静止的。更重要的是,首先应用一个称为注意的关键预处理步骤来总结每个时隙中的读数(见图2)。这些总结构成了模型的输入,对于时隙t和标签j和k,用xt(j)x^{(j)}_txt(j)和xt(k)x^{(k)}_txt(k)表示。据我们所知,这是首次将注意力应用于RFID读数。
由于最近在自然语言处理(NLP)方面取得的成功,人们对注意变得越来越受欢迎[24]。以英法翻译为例,将法语句子逐字与源英语句子对齐是不合理的。具体来说,不同的英语单词与相关的派生法语单词有不同的相关性。注意机制动态地计算每个源英语单词与每个法语单词的相关度(也称为注意度)。
我们以类似的思想应用注意在我们的问题,我们假设标签上的一些读数可能是“信息量更大”(即不受多路径或剧烈衰减的影响),而其他标签几乎没有关于当前状态的信息。我们使用模型到目前为止积累的内存,以指导在当前时隙中读数的总结。通过将记忆状态(包含标签的当前轨迹信息)与时隙内的每次读数进行比较,注意机制计算出哪些读数在标签状态(位置、运动等)方面更值得信赖。因此,它在总结过程中给予更多信息的读数更多的权重(迫使更多的注意力)。
一个问题是每个读数可能在不同方面提供信息(例如,读数可能具有相似的 RSSI,但可能来自以前未见过的天线)。因此,我们使用多头注意力机制,它允许我们在多个子空间(一个头意味着一个子空间)中进行特征汇总,并比较每个子空间内的信息范围。我们将当前时隙的读数表示为Rt=[r1t,r2t,...,rNt,]∈RN∗d1R^t = [r_1^t,r_2^t,...,r_N^t,]∈ R^{N*d_1}Rt=[r1t,r2t,...,rNt,]∈RN∗d1。N是当前时隙内的阅读数,在at−1∈Rd2a^t-1∈R^{d_2}at−1∈Rd2是来自最后一个RNN单元的内存。为了便于说明,我们考虑与单个标签相关的读数,而不显示指数t或t-1在下文中。
1. 我们首先将aaa和每个rir_iri线性投影到d维空间,如下所示。WaW_aWa和WrW_rWr是要学习的投影矩阵。
RWr∈RN∗d,Wr∈Rd1∗d(2)aWa∈Rd,Wa∈Rd2∗d(3)RW_r∈R^{N*d}, \qquad W_r∈R^{d_1*d} \qquad\qquad\qquad\qquad(2)\\ aW_a∈R^d, \qquad W_a ∈ R^{d_2*d} \quad \qquad\qquad\qquad\qquad(3) RWr∈RN∗d,Wr∈Rd1∗d(2)aWa∈Rd,Wa∈Rd2∗d(3)
2. 我们将投影存储向量和投影阅读向量均匀地划分为H部分。我们现在在H代表子空间中有H个记忆向量。一个类似的方法是将每个阅读向量的子特征映射到这些子空间中。为了形式化,在$h$th子空间中,我们获取一个记忆向量$a^(h)∈R^{d_H}$,并且N个标签的阅读向量$R^(h)∈R^{N*d_H},d_H=\frac{d}{H}$。3. 在每个子空间内,我们首先通过计算记忆向量和每个阅读向量之间的点积来测量记忆向量$a^{(h)}$和所有阅读向量$r_i^{(h)}$之间的相关性(注意)。这将产生一个N维向量,其中每个元素表示每次阅读的相对度。我们让每个元素除以$\sqrt{(d_H)}$,并且然后再向量上应用**softmax**函数,以获得每个阅读向量的最终注意度。该子空间内所有读数的汇总特征是所有读数向量的加权和,如等式4所示。显然,汇总向量是$d_H$维的。
fSingleHead(a(h),R(h))=softmax(a(h)R(h)TdH)R(h)(4)f_{SingleHead}(a^{(h)},R^{(h)})=softmax(\frac{a^{(h)}{R^{(h)}}^T}{\sqrt{d_H}})R^{(h)} \qquad\qquad\qquad (4) fSingleHead(a(h),R(h))=softmax(dHa(h)R(h)T)R(h)(4)
- 我们将每个子空间中的汇总向量连接起来,得到最终的汇总向量。
fMultiHead(a,R)=[fSingleHead(a(1),R(1)),...,fSingleHead(a(H),R(H))](5)f_{MultiHead}(a,R)= [f_{SingleHead}(a^{(1)},R^{(1)}),...,f_{SingleHead}(a^{(H)},R^{(H)})] \qquad\qquad (5) fMultiHead(a,R)=[fSingleHead(a(1),R(1)),...,fSingleHead(a(H),R(H))](5)
- 汇总向量中的汇总子特征被分离。为了组合它们,我们在汇总的特征向量上调用线性变换,如等式6所示,然后,将转换后的特征作为输入,输入到GRU模型中,如图2所示。
xt=fMultiHread(at,Rt)Wm(6)x^t=f_{MultiHread}(a^t,R^t)W_m \qquad \qquad\qquad (6) xt=fMultiHread(at,Rt)Wm(6)
在训练过程中,要学习的注意机制的参数是投影矩阵 Wa、Wr 和 Wm。给定输入对及其基本真值标签,我们使用梯度下降法更新Wa、Wr和Wm。经过训练后,我们得到:
a. Wa 将最后一个记忆状态投影到适当的子空间,以便在每个子空间中,记忆状态和阅读向量之间的点积值将捕获相对于该子空间阅读的信息范围。
b. Wr 将标签读取向量投影到适当的子空间,以便点积捕获信息范围(如(a)中所示)。
c. Wm 合并来自不同子空间的信息,并形成 适合RNN 输入的方式表示汇总。
DeepTrack如何应对挑战?(重点)
我们将决策窗口拆分为多个时间段,以处理标签上不同数量的读数。这样做使得RNN的序列长度(即,重复单元的数量)等于决策窗口内的时隙数量(T)。这使我们能够用T而不是读数的数量来控制模型的复杂性。如前所述,在决策窗口中可以观察到来自某些标记的数千个读数,这会带来巨大的复杂性。
我们专门应用多头注意机制来处理嘈杂的标签读数。由于多路径,即使标签位于固定位置,标签的响应也可能在RSSI(或相位)中大幅波动。注意机制识别出最能描述标签移动状态的一组响应,并使用这些响应进行推理,而不是盲目地使用所有响应。直觉是移动标签的位置在时间段内变化有些缓慢(因为典型的人类购物速度是有限的),因此可靠的信号往往会随着时间逐渐演变。所提出的注意机制将先前的轨迹信息与新读数进行比较,并选择与记忆一致的可信新读数。产生与记忆中的特征显着不同的特征的异常读数被认为不太可信。为了解决不同的移动模式,我们选择在我们的模型中不采用多普勒频移或相位作为特征,尽管阅读器公开了这些信息。如前所述,多普勒频移对于固定标签不重要,而相位测量对于移动标签不可靠。此外,在多个干扰读卡器的实践中获得这些特征是有挑战性的。相反,我们为每个RFID读取使用两个简单属性:RSSI和天线端口ID。天线端口ID表示读取标签的特定阅读器的特定天线(或波束)。为了读数之间的一致性,我们在[-1,1]范围内标准化RSSI。天线端口ID是一个离散属性,由一位有效向量表示。正如我们稍后将展示的,尽管使用了如此简单的属性,但由于其精心设计的RNN体系结构,DeepTrack具有非常高的分组精度。
实验设置
我们在一个15m*15m的区域内进行实验,该区域代表一个拥有开放空间的杂货店,各种金属物体和结构稀疏地分布在其中。天花板大约3米高,有金属设备,可以产生多路径。
RFID装备
我们部署了四个Impinj XArray RFID阅读器,覆盖图4所示的区域(阅读器用X标记)。每个阅读器位于地面以上2.5米处,以避免与天花板中的金属管道发生紧密的相互作用。我们部署阅读器并调整它们的发射功率,以便在其覆盖范围内只允许一些重叠,但不允许太多重叠。这提供了连续覆盖,同时最大限度地减少了交叉阅读器的干扰。XArray 使用一个天线阵列,可产生 52 个指向不同方向的波束。实际上,由于环境中的各种反射,波束之间存在一些覆盖重叠。阅读器在这些光束上连续循环,激活每个光束的时间由 Impinj 专有算法确定。我们将 RFID 标签以不同的方向放置在纸板箱上,以模拟包含随机放置物品的典型购物袋。每个盒子都很容易为我们的志愿者所携带,他们帮助我们进行涉及移动性的实验。因为我们需要同一组中的所有标签一起移动,所以一个人只需抓住一个盒子,四处走动,直到她把它放回原位。我们一共有36个盒子,每个盒子上有四个标签。
模型的超参数
在我们的实现中,决策窗口为30秒,时隙为2秒;因此,在每个决策窗口中有15个时隙,并且RNN的序列长度参数是15,即,有15个重复的RNN单元。对于 GRU,隐藏神经元的数量设置为 256,输出神经元的数量设置为 128。已经表明隐藏神经元比输出神经元多是有益的 [25]。对于多头注意机制,我们将头部数量设置为16,并将每个子空间的维数设置为16,即dH=16。我们从经验上发现,这些头部足够大,能够提供对噪声的稳健性。
训练数据集
我们使用前面描述的贴着标签箱在训练集中创建36个接近组。我们收集标签读数两个小时。在此期间,两个人每次选择一个随机的箱子并将其移动到任意位置。他们每2分钟重复一次。因此,我们不仅获得了关于固定盒子位置的信息,而且当人们拿起盒子并四处移动时,我们还获得了移动轨迹信息。虽然更长的数据集和更多的轨迹可以提高模型的性能,但我们的设置和人力有限,无法在如此长的时间内收集数据。
训练设置
我们使用批梯度下降[26]来训练模型。在每个步骤中:
- 我们将一批输入对输入到与决策窗口内两个标签的读数相对应的模型中。 如果两个标签来自同一个盒子,则这对标签为真(否则为假)。
- 给定标签,我们进行反向传播并获得每个参数的梯度,以最小化输入批次的对比损失。
- 然后,我们根据其梯度更新参数,即,wi(t)=wi(t−1)−α∂Loss∂wiw_i^{(t)}=w_i^{(t-1)}-α\frac{∂Loss}{∂w_i}wi(t)=wi(t−1)−α∂wi∂Loss,其中α是学习率。
我们有 100,000 个训练步骤,批大小为 256。起始学习率为 0.0005; 我们对学习率使用指数衰减 [27],衰减步长为 20,衰减率为 0.99。 这些值是根据经验选择的。
在训练期间,随机选择的标签对很有可能会有false标记。由于最小化了所有训练样本的损失,如果其中大多数的基本事实是false,则模型被训练为偏向于false的输出,并且将无法学习true的关系。我们通过在每个训练步骤中将一半样本限制为具有true的标签而另一半具有falsed标签来克服这一问题。即使我们平衡了样本,属于两个邻近组的false对的数量也远小于属于远距离组的false对的数量。 然而,来自两个附近组的对更重要,因为很难将这些对与true对区分开来。为了帮助模型从邻近组中识别false对,我们引入了“在硬样本上重复训练”的策略。在每个训练步骤中,我们保留损失较大的硬样本,并在下一批中将它们用于下一个训练步骤。 为了避免过拟合异常样本,我们首先选择这些硬样本的前 10%,然后随机选择其中的一半包含在下一个训练批次中。
Benchmarking-标杆管理
另一种测量标签之间接近度的潜在方法是动态时间扭曲 (DTW),它分析时间序列之间的相似性。[28]、[29]等研究使用DTW分析RFID相位模式。我们的 DTW 实施用于来自一对标签的读数,其中每个读数都是一个元组(天线位置和 RSSI)。为了测量两个元组之间的距离,我们使用天线位置之间的距离和 RSSI 之间的距离的加权线性组合。 我们在一组有限的离线测试中尝试了几种权重选择,并使用那些为我们的在线实验产生最佳准确性的权重选择。
评估
在本节中,我们首先介绍涉及移动组的实验,然后是静态组。 然后我们详细分析模型的各个方面。
评估移动分组准确性
购物实验:目标是跟踪商店里人们的购物车。我们有五名志愿者被标记为顾客A到E,每个人都有一个袋子,上面贴着一个参考标签。我们在该地区分发了八个货架,并要求我们的志愿者在这些货架上“购买”带有标签的产品。他们模仿典型的购物行为:(a)呆在架子前浏览商品一段时间;(b) 偶尔以 1.5 米的距离互相跟随;(c) 偶尔会相互交叉路径。
场景:实验持续10分钟。 每个顾客的包都从有的三件物品开始。 顾客 A、B 和 C 各拿起一件物品(分别标记为 A1、B1 和 C1),并在第 2 分钟结束时将其放入他们的包中。 他们在第 4 分钟结束时各自拿起另一个物品(分别标记为 A2、B2 和 C2),并在第 6 分钟结束时各自拿起另一个物品(A3、B3 和 C3)作为他们的购物之旅。 最后,他们在第 8 分钟结束时各放回一个物品(分别标记为 A1、B1 和 C1)。 他们继续购物而不改变袋子里的东西,直到实验结束。 客户 D 和 E 携带他们最初的一套物品只需步行 10 分钟即可。
性能指标:我们以两分钟为间隔分析结果,每个时间间隔由 60 个两秒的时隙组成。通过滑动决策窗口,我们使用我们的模型在每个阶段做出46个分组决策。我们将分配准确率定义为标签被正确分配的百分比; 例如,如果 5 个标签中有 4 个正确分配到各自的组,则分配精度为 80%。我们还为每个组定义了完美的购物车条件,该条件要求该组被完全(组中没有丢失的物品)和正确(没有从货架或其他客户的包中分配的额外物品)被识别。在上面的例子中, 假设我们有三组 G1、G2 和 G3 以及 5 个标签。 如果 G1 的标签之一被错误地分配给 G2,这违反了 G1 和 G2 的完美购物车条件。 尽管分配准确率为 80%,但完美的购物车率仅为 33.3%(三组之一)。
结果:从每个阶段的 46 个测试中,表 I 显示了每个客户获得完美购物车的次数。我们看到 DeepTrack 在 25 个实例中的 10 个中始终识别出正确的组(≥45/46 购物车率)。整体完美购物车率为 93.39%,分配准确率为 95.91%(并非来自表格)。 当客户站在另一位客户附近或在某些决策窗口期间浏览货架时间过长时,我们观察到标签分配错误。即使DeepTrack犯了这种性质的错误,当志愿者继续四处走动时,它也会在随后的决策窗口中自我纠正。另一方面,DTW 的分配准确率为 90.34%,这看起来很有希望,因为它只比 DeepTrack 实现的差 5%。 然而,完美的购物车率仅为 44%(结果不以空间利益呈现)。DeepTrack 的带有注意力机制的 RNN 基于读数的一致性(即注意先验关联)将 RSSI 和天线 ID 结合起来,并且不会盲目地将读数线性结合(如 DTW)。这允许隐式过滤不良异常值读数,并显着提高分组精度,而不是 DTW。
跟踪嵌入距离:为了进一步分析结果,我们在图 5 中绘制了顾客 A 的物品标签和参考标签(记为A0)之间的嵌入距离。我们将两个标签之间的嵌入距离定义为两个嵌入特征之间差异的 L2 范数。我们观察到在第 2 分钟结束时,A1 和 A0 之间的距离变小,这与客户 A 拿起物品 A1 是一致的。类似地,A2(A3)和A0 之间的距离在第4 分钟(第6 分钟)结束时减小。 在第 8 分钟结束时,当客户 A 放回物品 A1 时,A1 和 A0 之间的距离再次增加。有趣的是,当顾客 A 在货架附近时(例如,当她在第 2 分钟结束时拿起 A1 时),A0 与货架上其他物品(A2 和 A3)之间的距离也会减小。如前所述,在这些场景中,来自附近货架(或其他客户)的物品可能会被临时分配到一个组中。 解决此问题的一种方法是在距离曲线上应用低通滤波器以平滑这些脉冲。 我们将这项调查留作未来的工作。
轨迹的影响:接下来,我们将深入研究人与人之间的不同交互如何影响分组准确性。我们要求两名志愿者以四种不同的方式各自携带一个盒子(B1和B2):(a)B2 追随与 B1 保持在某个固定距离后面相同的轨迹;(b)B2 跟随 B1 保持固定距离但从左到右移动(摆动),这使得它们的轨迹不同;(c)B1 和 B2 都随机行走,但有时会故意穿过路径;(d)B1和B2都是随机移动的。
我们为每个场景收集 10 分钟的数据并执行 1000 组作业。 表二显示,当 B2 以完全相同的轨迹(1.2m)紧跟 B1 时,分配准确率为 75.97%,这是低但可以接受的,因为购物车本身大约有 0.8m 长。 分配精度随着 B1 和 B2 之间的分离而提高。 在实践中,我们不希望两个人在如此长的时间内完全跟随对方。 对于不同的轨迹,我们看到该模型具有 100% 的分配准确率。
保真度和稳健性:接下来,我们调查该模型是否足够智能以高保真地学习组之间的物理距离。回想一下,我们只用false和true标记训练模型,没有任何特定的物理距离信息。使用二进制false和true标记比始终跟踪每对标签之间的物理距离更实用。我们将 B1 和 B2 放在两个相对的角上,如图 6 所示。我们将 B1 带向 B2 步行 60 秒,然后将其带回起始位置 60 秒。 由于每个盒子上有四个标签,因此两个盒子之间有 16 个标签对。
图7绘制了B1和B2之间所有标签对的嵌入距离。标签在第 t 秒的嵌入特征是从以该秒为中心的决策窗口获得的。 正如预期的那样,一开始嵌入距离很大。 当 B1 靠近 B2 时它会减小,当 B1 远离 B2 时它会增加。 这说明嵌入距离与物理距离“大体”一致; 尽管该模型是用离散二进制基本事实训练的,但它有效地学习了连续距离近似值。 我们还注意到盒子上的标签放置在不同的方向。 所有曲线随着时间的推移紧密聚集的事实表明我们的模型对标签方向具有稳健性。
评估静态分组准确性
分配误差的位置:我们评估了静态组的精度,其中我们在6*6网格上放置了36个盒子。我们通过网格上的行和列来表示每个组,即(r,c)。行或列中两个相邻箱子之间的距离(例如 (r,c) 和 (r+1,c))约为 1.2m。我们从每个盒子上的四个标签中随机选择一个标签作为参考标签; 其他的是我们需要分配给 36 个组之一的“非参考”标签。除了上一节中的模型(我们称之为模型 A),我们还引入了模型 B,该模型专门使用通过将箱子放置在 6*6 网格上的完全相同位置获得的数据进行训练(回想一下模型 A 在随机箱子位置和运动上进行训练)。
我们为标签定义术语分配误差,我们计算其分配组与其正确组(即基本事实)之间网格上的物理距离。如果标签被正确分配,则该误差为 0。我们使用图 8 中的模型 A 和模型 B 绘制分配误差的累积分布函数 (CDF)。我们观察到大部分标签被正确分配(模型 A 为 70%,模型 B 为 95%)并且分配误差仅限于大多数标签的相邻框(模型 A 为 91%,模型 B 为 98%)。 我们希望模型 B 表现更好,因为它是用相同的箱子位置训练的。 这里的重要观察结果是,对于超过 90% 的标签,更通用的模型(模型 A)的性能与模型 B(使用完全相同的框位置训练的模型)相当。 这表明,虽然模型 A 没有在其训练数据中看到确切的箱子位置,但它成功地“转移”了从其他位置学到的知识。 如果要在通用设置中应用模型,这将很有用。
多径干扰的稳健性:我们接下来评估环境动态变化时的分组准确性。 我们再次使用相同的 6*6 网格放置,但当志愿者在盒子周围走动(不移动它们)现在收集读数。 为了产生额外的多径效应,我们要求一些人携带大型反射器物体(尺寸为 0.8m*0.4m 的板,由铝箔覆盖)。
我们从图 11 中的三个箱子(Box (1,1)、Box (1,3) 和 Box(1,5))绘制了 16 个标签对之间的嵌入距离。我们看到同一箱子中标签之间的嵌入距离与不同箱子中的标签之间的嵌入距离相比,要小得多。 此外,嵌入距离随着箱子间距离的增加而增加,这表明该模型学习了静态箱子之间的相对物理距离(与动态箱子的早期结果一致)。 更重要的是,即使我们人为地引起了显着的反射,距离曲线也没有表现出异常变化,表明我们的模型对多径非常稳健。
波束成形的影响:我们发现,一般来说,在沿阅读器径向定位的两个附近静止组(例如,图 9 中的 A 组和 B 组)之间的歧义更难消除。这与与径向(即切线方向)正交的其他静止组对(例如,图 9 中的组 C 和 D)形成对比。为了评估这一点,我们在阅读器附近沿不同方向放置了两个箱子(相隔 1.2m 的固定距离)。图 10 显示了沿径向和切线方向的这种放置以及相应的分组精度。我们看到沿切线方向的精度明显高于沿径向的精度。这是因为在切线方向上的区分主要来自不同的波束(天线端口 ID 属性)。相比之下,在沿径向上,两组通常都被同一组波束覆盖,其中它们的 RSSI 变得更加重要。这表明阅读器的波束成形能力对于实现高分组精度至关重要。我们设想使用可以产生更清晰光束的系统,可以进一步提高此处报告的准确性。
评估模型各方面
特征的相对重要性:回想一下,我们用两个特征训练我们的模型:天线端口 ID 和 RSSI。 接下来,我们在缺少这些属性之一的情况下评估模型,以衡量它们对分组准确性的贡献。 为了消除RSSI的影响,我们将其值设为0; 为了消除天线端口 ID 的影响,我们使用全零向量而不是单热向量。我们评估了两种情况:(a)跟踪8个移动组;(b)跟踪八个静态组。表 III 捕获了不同属性单独和共同对分配准确性和完美购物车率的影响。我们看到:(1)在这两种情况下,天线端口ID是最重要的属性,但是,它本身并不足以产生高的完美购物车率;将天线端口 ID 与 RSSI 相结合是至关重要的,因为即使分配精度的微小提高也会导致完美购物车率的更大提高;(3)这两个特征的组合更为有利,尤其是对于静态组。我们指出,移动组通常跨波束移动(对应于多个天线端口 ID),而静态组需要 RSSI 功能来区分同一波束区中的组。
注意机制的影响:接下来,我们检查我们的注意机制在多大程度上有助于为 RNN 制作好的汇总。 我们训练了一个备用模型,该模型也使用 RNN,但应用全连接层进行汇总(在表 IV 中标记为传统方法)。 与多头注意机制相比,该模型学习静态权重以总结一个时间段内的读数。表IV比较了两种情况下这两个方法:(a)跟踪八个移动组;(b)跟踪八个静态组。我们看到,虽然传统方法实现了较高的分配准确率,但它的完美购物车率仍然相对较低。 由于传统的方法学习一个固定的汇总函数,不能动态识别信息读数,不能相应地适应; 这转化为相对较低的完美购物车率。 凭借其专注于可靠读数的能力,多头注意在这两种情况下都提供了显着的改进。 这对于移动组而言更为明显,因为在这种情况下,模型通常在每个位置具有较少的可靠读数(注意有助于发现可靠读数)。
可视化注意机制:使用多头注意,我们将 16 个子空间中的分数相加(每个分数在 [0,1] 中),并将其用作读数的注意度。我们现在展示模型如何使用一个简单的案例来关注图 12a 中的一个静态标签的读数。 对于每个读数,我们显示相关的天线端口 ID、RSSI 和模型计算的注意度。
在第一个时隙(冷启动),具有较大 RSSI 的读数(来自光束 34)获得更高的注意力分数。 由于没有轨迹记忆,因此“信任”具有大 RSSI 的读数是合理的。 在第二个时隙中,虽然来自更远光束 (32) 的读数具有最大的 RSSI(可能是因为反射),但模型更关注来自光束 42 的读数。模型的选择更为明智,因为光束 42 更接近于 前一个位置(波束 34)并且具有较大的相关 RSSI(虽然不是最高的)。在图 12b 中,我们用标记 i 标记时隙 i 中注意力得分最高的位置。 我们看到选择的光束是聚集的并且与静态标签的物理位置一致。 这个结果(以及我们看到的许多其他结果)表明我们的模型可以动态识别信息读数,因此能够处理由多径引起的噪声读数。
我们还观察到有关移动标签的有趣案例。 如图 12c 所示,虽然标签被许多光束读取(用橙色弧线标记),但模型更关注沿着标签物理轨迹的读数(用大箭头表示)。 在连续的时间段中注意力得分最高的阅读位置与随后的箭头相连。 选择的读数似乎与物理轨迹不完全一致; 然而,我们指出,在每个时隙内只有一部分波束处于活动状态,并且在遍历时可能尚未激活覆盖地面实况位置的最佳天线。
细化DeepTrack:由于标签之间的竞争,每个时隙内一个标签的读取次数可能会减少。为了检查我们的模型如何随标签数量而变化,我们通过在附近逐步部署更多标签来评估两个静态组(相距 1.2 m)的分配精度。表 V 显示,当我们使用 2s 时隙时,分组精度会随着额外标签数量的增加而降低。 这种减少在额外标签的数量达到 288 之前并不明显。随着我们进一步增加额外标签的数量,减少更加明显,其中 512 个额外标签的准确率为 95.15%。 将时隙持续时间增加到 4 秒可将准确度恢复到 99.14%,因为它有助于积累足够的读数。 这表明分组准确性和延迟之间存在折衷。
相关工作
- RFID标签定位与跟踪:RFID定位的早期工作(例如,[31]-[32])未能处理多路径对信号的影响。因此,它们在零售环境中的定位精度不足以进行邻近分组。其他研究采取特殊措施来处理多路径,以实现非常准确的 RFID 标签定位。其中一些([33]、[34]、[28])移动阅读器天线以收集信号测量值,而一些则利用非常大带宽上的通信 [11]。 虽然这些研究显示了高度准确的定位结果,但它们对静态标签也是如此,这些标签适合收集长时间的测量值(如 [11] 中报道的长达 6 秒)。 显然,零售环境中标签移动的动态特性对此类技术提出了挑战。 RFID 标签跟踪技术 [35]、[36]、[12] 通常假设标签轨迹和速度可以提前知道。他们实施逆合成孔径雷达或全息图来精确跟踪标签移动。 这种技术对于具有数百个标签的大面积部署(例如,零售店)来说是不切实际的,其中人们以不可预测的模式移动。 相比之下,DeepTrack 不依赖于精确的标签定位,因此不受相同挑战的限制。
- 用RFID对顾客行为挖掘:最近的研究([29]、[37]、[38])侧重于使用 RFID 来检测零售店的顾客购买模式。这些研究提倡使用低级信号特征,如多普勒频移和相位,来识别某些产品交互(例如,拿起)或发现相关物品(例如,由同一客户持有)。由于多种原因,在大型零售店中使用相位或多普勒测量受到限制。首先,为了可靠地测量这些特征,需要慢速读取模式来延长收集它们所需的时间。其次,它们要求阅读器停留在一个频道上,这不是普遍可用的,例如美国的 FCC 要求阅读器实现跳频。第三,它们受到阅读器之间的干扰以及紧密间隔的标签之间的耦合效应 [39](例如,随机放置在购物袋中的物品),从而产生极其嘈杂的测量结果。为了验证这一假设,我们训练了一个更复杂的模型,该模型使用相位和多普勒(除了天线 ID 和 RSSI)并观察到非常小的增益(此处未提供结果)。我们通过展示深度学习可以识别具有易于获取的特征(例如天线 ID 和 RSSI)的邻近组,从而做出了新的贡献。
结论
在本文中,我们提出了我们称之为RFID标签的时空邻近分组问题,该问题可以作为新兴零售应用(如挖掘客户购物行为和无缝结账)的基础。为了解决这个问题,我们设计了一个新颖的框架 DeepTrack,它将神经网络和自然语言处理的最新进展映射到这个问题。 DeepTrack 推断在附近组合在一起的静态和移动标签,并且对多路径和非视距环境具有稳健性。 我们的评估表明,高精度分组是可能的,这表明该技术在零售业的未来前景广阔。
DeepTrack: Grouping RFID Tags Based on Spatio-temporal Proximity in Retail Spaces-翻译相关推荐
- 自结-DeepTrack Grouping RFID Tags Based on Spatio-temporal Proximity in Retail Spaces
DeepTrack: Grouping RFID Tags Based on Spatio-temporal Proximity in Retail Spaces翻译+理解+引文简介 简述和翻译 文章 ...
- Tagoram: Real-Time Tracking of Mobile RFID Tags to High Precision Using COTS Devices
论文解析 论文名Tagoram: Real-Time Tracking of Mobile RFID Tags to High Precision Using COTS Devices 论文DOI:& ...
- Lidar based off-road negative obstacle detection and analysis(论文翻译)
(机翻 自己留作资料的 大家辩证使用 论文地址:https://ieeexplore.ieee.org/document/6083105) Abstract: 无人驾驶地面车辆 (UGV) 要想在越野 ...
- 《UAV Intelligent Coverage Navigation Based on DRL in Complex Geometrical Environments》翻译
目录 摘要 一.介绍 二.相关工作 2.12D覆盖路径规划 2.2传统的3D覆盖路径规划 2.3智能3D路径规划 三.DRL GIS培训环境 3.1复杂GIS地形采样 3.2无人机航路点生成与能见度分 ...
- Fast and Accurate Detection of Unknown Tags for RFID Systems – Hash Collisions are Desirable 理解+笔记
Fast and Accurate Detection of Unknown Tags for RFID Systems – Hash Collisions are Desirable 理解+笔记+翻 ...
- 【 Notes 】RFID Preliminary Introduction
射频识别,RFID(Radio Frequency Identification)技术,又称无线射频识别,是一种通信技术,可通过无线电讯号识别特定目标并读写相关数据,而无需识别系统与特定目标之间建立机 ...
- RFID Cooking with Mifare Classic
转自: http://www.backtrack-linux.org/wiki/index.php/RFID_Cooking_with_Mifare_Classic Contents [hide] 1 ...
- 【论文翻译 - RFID】射频全息图:利用商业化产品对移动射频标签进行实时高精度追踪
直接引用 http://m.360docs.net/doc/info-c19c44d13968011ca2009195.html Tagoram: Real-Time Tracking of Mobi ...
- IOT_WIFI/LORA/THREAD/ZIGBEE/NFC/RFID/EnOcean
文章目录 What is IoT? IoT Applications IoT Entities IoT Protocol layers Cellular IoT IoT Device and comp ...
最新文章
- git通过gitosis来管理权限(三)
- flutter分平台主题定制
- Yum mysql 日志_CentOS5上yum安装Apache+php+Mysql
- 在CentOS 6上使用yum安装lnmp服务
- 为什么Python 4.0不会像Python 3.0
- python绘图颜色深浅代表数值_画图理解Python的深浅拷贝
- 周口a货翡翠,泸州a货翡翠
- python用matplotlib画球_python 如何用matplotlib画一个漂亮的圆-百度经验
- Android开发 - 掌握ConstraintLayout(一)传统布局的问题 1
- java获取当前系统时间
- ccf小明种苹果(续)
- C#中使用Windows API控制阿里旺旺自动登录 的程序源代码
- CodeForces 379C -- D - New Year Ratings Change
- Python-[jieba库应用]-统计水浒传中人物出现次数
- 江西省中小学生学籍管理-登录(1)
- 像素三国志在线html5小游戏,像素三国志bt版
- Git操作流程(非常详细)
- win10商店打不开_win10 64位系统打不开美图秀秀是啥原因呢
- python目前的最新版本是_最新版Python 3.8.6 版本发布
- win10删除多余账户_win10删除多余账户,win10
热门文章
- 量具管理-分发与报废
- UVA Knights in FEN
- java dateformat gmt_如何将java.util.Date转换为GMT格式
- 阿里云IoT赵磊:ICA联盟,构建未来物联网生态圈 | 金山软件第三季度营收13.03亿元
- 搭建Office 2010 KMS服务器
- 计算机不支持此接口,不支持此接口-请问为什么安装软件会提示不支持此接口我的电脑从前几天开始装很多 爱问知识人...
- linux运行雷神之锤,RTX改造版《雷神之锤II》现已开放下载
- android 拍照无法生成图片,Android生成二維碼--拍照或從相冊選取圖片
- 移动阅读市场也需要“小而美”
- 蓝桥杯VIP试题 基础练习 龟兔赛跑预测C语言,C++