Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

Raymond作者Hao Wang编辑

深度学习如何感知跟踪位置变化

位置感知能力是基于位置的服务(LBS)的核心。但是,准确估计目标的位置有时候并不是一件容易的事。全球定位系统(GPS)是户外最好的位置感知计算使能者,能够直接输出地理空间坐标,但其误差可能会超出某些应用的容忍极限。在 GPS 无法使用的地方,位置可以通过来自惯性测量单元(IMU)和摄像头等传感器提供的原始数据间接推断出来。传统上,不管是直接测量地理空间坐标还是推理得到位置,数据都必须经过一个相当繁琐的人工设计的数据处理流程,之后才能被更高阶的 LBS 使用。本文将介绍两项近期的将深度学习模型引入位置感知计算的尝试,这两项研究能有效减少专家的参与。

通过部分可观测随机过程实现目标跟踪(Object Tracking via Partially-observable Stochastic Processes)

论文地址:https://arxiv.org/abs/1602.00991

演示视频:https://youtu.be/cdeWCpfUGWc 

研究背景

这篇 AAAI16 论文提出了一种端到端的目标跟踪方法,其中一端是从模拟的 2D 激光扫描器收集到的原始数据,另一端是整个环境状态(甚至包含被遮挡的物体),如下图所示:

这个跟踪问题背后有一个值得提及的关键问题,即由于遮挡情况,原始数据只是来自环境的一部分。传统上一般是用贝叶斯滤波(类似于卡尔曼滤波器)来解决这样的部分可观测随机过程问题,而这又涉及到大量人工设计的状态表征,并且还隐含了对模型分布的特定假设或采样。这篇论文称:该论文提出了首个端到端的可训练解决方案,让机器人智能体可以无监督的方式学习信念状态表征以及相应的预测和更新操作;相比于传统方法,这种方法更有效且更省力。

模型

这个跟踪问题被放入了一个生成模型框架中,其有一个详细描述环境动态的隐马尔可夫过程 h。与此同时,其外观层 y 会获取各个目标的位置,并且可被另外一层(传感器测量层 x)部分观测,如下图所示:

该任务的目标就变成了:给定 x 的历史输入序列,估计 y 在时刻 t 的条件分布。注意 y 实际上并不是一个马尔可夫过程,因此隐马尔可夫模型等方法不能在这里应用。作为替代,这可以通过递归贝叶斯估计来处理,即给定 x 的历史输入序列(信念),递归式地计算 h 在时刻 t 的条件分布。这种方法不直接估计目标,而是给定信念,将目标作为 y 的条件分布来估计。该论文通过加权了 W_F 和 W_P 的两个神经网络来表示最终目标,其中第一个网络是指从历史输入序列到信念的模型,第二个网络是指从信念到位置(在 t 时的 y)的模型。两个网络链接在一起,从而整体上有效地使它们成为了一个前馈循环神经网络。信念的隐藏状态表征是从原始数据中学习的,并且可用作从一个时间步骤传递到下一个时间步骤的网络记忆。这个过滤过程如下图所示:

更具体而言,该论文使用了一个 4 层的前馈循环网络,其中使用了卷积运算,每一层之后都有 sigmoid 激活。该网络的架构如下所示:

无监督训练

上述模型可以通过最小化目标分布的负对数似然这种常用方式来训练。但是,由于遮挡,y 的基本真值(ground-truth)数据可能是无法获取的。该论文提出的网络训练方法是不仅要预测下一个时间步骤,还要预测未来更多几步(比如 n 步),具体做法是丢弃当前时间步骤与当前之后 n 步之间的所有观察结果(将它们设为 0)。为了避免过拟合,这种观察丢弃(observation dropout)必须在空间和时间上并且对所有数据集都执行。这让网络可以不使用基本真值数据进行训练,这是一种相对无监督的方式。

结果

训练集总共包含 10000 个长度为 2000 时间步骤的序列。进行了 50000 次迭代的随机梯度下降训练。得到了两个重要发现。第一,这种无监督训练得到了几乎和监督学习一样的结果,这说明观察丢弃是有效的。第二,信念层的激活表现出了对不同目标移动模式的适应性表征。训练过程参阅下图,或参看原论文附带的视频。

但是,也许由于这是该方向的首个研究,所以该论文没有提供任何性能表现的量化指标或与已有研究的比较。该论文最后提到,研究者正在将该研究成果延展到更接近现实的数据以及更有难度的机器人任务上。

基于地理空间轨迹的位置预测(Location Prediction based on Geospatial Trajectories)

研究介绍:https://launchpad.ai/blog/tracking

研究背景

Launchpad.AI 最近有篇文章介绍了将长短期记忆(LSTM)用在运输工作中的方法。对于很多工业和室外应用,GPS 和射频识别(RFID)跟踪技术现在已经得到了普遍应用,因为它们能以米级的精度获取实时的位置信息。但是,解译地理空间数据以改善操作流程的方法还是一个人们不太了解的主题。该论文提出了一种自动化地理空间异常检测系统,可通过评估被跟踪目标是否偏离了预期轨迹来检测异常。该研究使用了 LSTM 网络来学习历史数据以预测未来位置。他们还将该系统应用到了一个真实数据集上,其中包含北京市 28000 辆出租车一个月的轨迹数据。

模型

除了时间戳和出租车对应的位置(经度和纬度),速度、方向和是否载客的状态也在规范化之后被纳入了序列数据之中。然后使用 LSTM 网络处理这个序列数据。该研究还考虑了目标的身份信息。身份信息(这里是每位驾驶员独有的 ID)首先通过嵌入(embedding)进行预处理,然后与 LSTM 输出融合。在某种程度上讲,驾驶员 ID 的语义含义中有两辆出租车是否具有相似的移动模式的信息。在经过一个密集的全连接层之后,整个网络会以纬度和经度的形式输出一分钟的未来预测。该网络是用 Keras 实现的,下图给出了其网络架构:

结果

训练完成后的模型在留存的测试数据集上进行了评估。根据该论文的结果,出租车在一分钟后离起始位置平均 391 米远,这意味着如果该系统使用当前位置作为预期位置,那么就会造成 391 米的误差。使用 5 辆出租车作为训练集的 LSTM+embedding 的最终结果得到了 2076 米的误差。但是,随着出租车数量增长至 8000,误差显著下降到了 152 米,低于出租车的一分钟平均移动距离。

简评

这两个案例都表明位置感知计算可受益于深度学习:一个是根据原始传感器数据推断位置,另一个是直接使用位置数据检测运营异常。显然,处理序列数据的深度学习已经非常成熟了,但是其在位置感知计算上的应用还不普遍,可能的原因有:

  1. 评估困难。事实上,上述案例更像是概念验证研究,因为研究者都没能提出可比较和公平的评估指标来评估他们的研究。
  2. 缺乏可靠标注的数据集。位置感知计算的基本真值数据(通常是位置)一般难以获取。比如在第一篇论文中,可能没办法记录真实环境中所有目标的基本真值位置,这使得大规模学习难以实现。
  3. 时间复杂性。非常类似于语音识别,时间数据序列的最小长度让地理空间感知具有任意性,而且高度依赖当前状况。在语音识别光学字符识别(OCR)领域,目前是通过连接主义时间分类器(CTC)来解决这个问题。这种方法能否延展到位置感知计算领域?还有待探索和研究。

总体而言,目前的位置感知计算的机器学习水平还非常有限;当涉及到数据挖掘和解释时,还需要大量领域专业知识。这两个研究案例表明自动学习数据能有效提升当前的位置感知计算,这是一个很有前景的研究方向。

理论
1
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

感知技术

知觉或感知是外界刺激作用于感官时,脑对外界的整体的看法和理解,为我们对外界的感官信息进行组织和解释。在认知科学中,也可看作一组程序,包括获取信息、理解信息、筛选信息、组织信息。与感觉不同,知觉反映的是由对象的各样属性及关系构成的整体。

光学字符识别技术

光学字符识别是指对文本资料的图像文件进行分析识别处理,获取文字及版面信息的过程。在这个过程中,手写的、打印的等多种类型的图像被转换为机器编码的文本,这些含有文字信息的图像可以是扫描而来,也可以是场景文本——如照片中出现的广告牌文字 (scene text),或者叠加在图像上的文字 (overlay text)——如电视节目中常见的字幕等等。光学字符识别是一种将印刷文本数字化的常用方法,可以对其进行电子编辑、搜索、更紧凑地存储、在线显示,并用于认知计算、机器翻译、(提取)文本到语音、 关键数据和文本挖掘。 OCR是模式识别人工智能和计算机视觉领域的一个重要的研究领域。

异常检测技术

在数据挖掘中,异常检测(英语:anomaly detection)对不符合预期模式或数据集中其他项目的项目、事件或观测值的识别。 通常异常项目会转变成银行欺诈、结构缺陷、医疗问题、文本错误等类型的问题。 异常也被称为离群值、新奇、噪声、偏差和例外。

随机过程技术

在概率论概念中,随机过程是随机变量的集合。若一随机系统的样本点是随机函数,则称此函数为样本函数,这一随机系统全部样本函数的集合是一个随机过程。实际应用中,样本函数的一般定义在时间域或者空间域。随机过程的实例如股票和汇率的波动、语音信号、视频信号、体温的变化,反对法随机运动如布朗运动、随机徘徊等等。

机器人技术技术

机器人学(Robotics)研究的是「机器人的设计、制造、运作和应用,以及控制它们的计算机系统、传感反馈和信息处理」 [25] 。 机器人可以分成两大类:固定机器人和移动机器人。固定机器人通常被用于工业生产(比如用于装配线)。常见的移动机器人应用有货运机器人、空中机器人和自动载具。机器人需要不同部件和系统的协作才能实现最优的作业。其中在硬件上包含传感器、反应器和控制器;另外还有能够实现感知能力的软件,比如定位、地图测绘和目标识别。之前章节中提及的技术都可以在机器人上得到应用和集成,这也是人工智能领域最早的终极目标之一。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

数据挖掘技术

数据挖掘(英语:data mining)是一个跨学科的计算机科学分支 它是用人工智能、机器学习、统计学和数据库的交叉方法在相對較大型的数据集中发现模式的计算过程。 数据挖掘过程的总体目标是从一个数据集中提取信息,并将其转换成可理解的结构,以进一步使用。

随机梯度下降技术

梯度下降(Gradient Descent)是遵循成本函数的梯度来最小化一个函数的过程。这个过程涉及到对成本形式以及其衍生形式的认知,使得我们可以从已知的给定点朝既定方向移动。比如向下朝最小值移动。 在机器学习中,我们可以利用随机梯度下降的方法来最小化训练模型中的误差,即每次迭代时完成一次评估和更新。 这种优化算法的工作原理是模型每看到一个训练实例,就对其作出预测,并重复迭代该过程到一定的次数。这个流程可以用于找出能导致训练数据最小误差的模型的系数。

监督学习技术

监督式学习(Supervised learning),是机器学习中的一个方法,可以由标记好的训练集中学到或建立一个模式(函数 / learning model),并依此模式推测新的实例。训练集是由一系列的训练范例组成,每个训练范例则由输入对象(通常是向量)和预期输出所组成。函数的输出可以是一个连续的值(称为回归分析),或是预测一个分类标签(称作分类)。

卡尔曼滤波技术

卡尔曼滤波,也称为线性二次估计(LQE).它使用时域上一系列包含统计噪声和其他误差的观测量,对未知变量进行估计。这种方法因为对每个时间段上未知变量的联合概率分布做了估计,因此比基于单一观测值预测更加精确。

过拟合技术

过拟合是指为了得到一致假设而使假设变得过度严格。避免过拟合是分类器设计中的一个核心任务。通常采用增大数据量和测试样本集的方法对分类器性能进行评价。

语音识别技术

自动语音识别是一种将口头语音转换为实时可读文本的技术。自动语音识别也称为语音识别(Speech Recognition)或计算机语音识别(Computer Speech Recognition)。自动语音识别是一个多学科交叉的领域,它与声学、语音学、语言学、数字信号处理理论、信息论、计算机科学等众多学科紧密相连。由于语音信号的多样性和复杂性,目前的语音识别系统只能在一定的限制条件下获得满意的性能,或者说只能应用于某些特定的场合。自动语音识别在人工智能领域占据着极其重要的位置。

隐马尔可夫模型技术

隐马尔可夫模型(Hidden Markov Model,HMM)是统计模型,它用来描述一个含有隐含未知参数的马尔可夫过程。其难点是从可观察的参数中确定该过程的隐含参数。然后利用这些参数来作进一步的分析,例如模式识别。

生成模型技术

在概率统计理论中, 生成模型是指能够随机生成观测数据的模型,尤其是在给定某些隐含参数的条件下。 它给观测值和标注数据序列指定一个联合概率分布。 在机器学习中,生成模型可以用来直接对数据建模(例如根据某个变量的概率密度函数进行数据采样),也可以用来建立变量间的条件概率分布。

推荐文章
暂无评论
暂无评论~