2
本文作者: 李尊 | 2016-07-11 14:13 |
导读:2016国际人工智能联合会议(IJCAI2016)于7月9日至7月15日举行,今年会议聚焦于人类意识的人工智能。本文是IJCAI2016接收论文之一,除了论文详解之外,我们另外邀请到哈尔滨工业大学李衍杰副教授进行点评。
联合编译:Blake、陈圳、章敏
摘要
普适计算领域中人类活动识别已经开始使用深度学习来取代以前的依靠手工提取分类的分析技术。但是由于这些深度技术都是基于不同的应用层面,从识别手势到区分跑步、爬楼梯等一系列活动,所以很难对这些问题提出一个普遍适用的方案。在本文中我们认真地探索了深度、卷积、递归方式对三种代表性的包含运用可穿戴感应器测得的运动数据组进行的实验。我们将展示怎样训练递归方法并介绍一种创新性的规范方式,讲述它们如何在大型基础数据集上实现现有技术下最好的表现。通过使用随机样本模型进行数千次实验,我们对每个人类活动识别中的不同任务中的模型适用性进行了探究,对使用fANOVA架构的超参数影响做了探索,为以后想将深度学习应用到他们的研究中的学者提供了参考。
1. 引言
过去几年里深度学习已经成为机器学习领域中最流行的研究方向。由于这个概念的流行导致它的分支已经快速扩张,且在学术界和商业界的推动下势必还会进一步推进。对于普通人来说,深度学习中像Torch7这一类机器学习框架已经随手可及,深度学习对一系列的运用层面也有相当大的影响。
另外一个因为深度学习受益的领域是在普适计算方面的人类活动识别(HAR)。在HAR领域中占主导地位的技术方法包括用身体佩带的传感器,手动设计特征提取程序,以及各种(监督)分类方法。在许多情况下这些相对简单的装置就足够了,能够得到令人印象深刻的识别精度。然而对于更复杂的行为,例如在医学应用中,这种手动调教方法还是存在显著挑战。有些工作还进一步进行,这也许可以解释一些明显的惯性在通过深度学习技术领域的主要技术途径。
深度学习在普适计算方面的人类识别活动上有机会造成很大影响。它可以替代缺乏有利于其他领域如语音识别强大的鲁棒性,设计了手动特征提取程序。然而,对于从业者来说困难的是选择为他们的应用最合适的深度学习方法。促进深度学习几乎都提供了最佳的系统,很少有工作包括在其最优参数是如何被发现等细节。由于只有一个分数报告,平均性能与峰值性能比较结果仍不清楚。
在本文中,我们运用目前最先进的深度学习方法对普适计算中的人类行为识别中的三种问题进行了探索。针对深度、卷积和递归模型的训练过程进行了详细描述,并且我们针对递归性网络介绍一种创新规划方法。在4000多个实验中,我们探讨HAR中每个超参数对不同的影响,为以后想将深度学习应用到他们的研究中的学者提供了参考。在这些实验的过程中我们发现,递归性网络实现了目前最佳的表现。
图1 本文中使用的模型
2. 普适计算中的深度学习
通过穿戴设备感应器获得的运动数据是多元时间序列数据,这些数据都有相关的高维时空频率(20Hz-200Hz)。在普适计算领域中分析这些数据基本上是在Bulling等人所提出的基础方法上进行的。第一步是把时间序列数据分割成相邻的片段,通常是通过单个特点或者是滑动窗分割技术。在分割出一系列特性中,在每一帧最有可能包含的是统计特性或者频率域中的词干。
目前在普适计算领域中最流行的方法是卷积网络,许多作者都用它来处理活动识别任务。更进一步的是,卷积网络已经被用来处理特定领域的问题,像在Autism中检测常规运动等,它们以及能将其提升到目前最佳的水准。
3. 针对人类活动识别对深度学习进行比较
虽然在不同情境的人类行为识别(HAR)方面已经有过一系列的研究探索,但是对于深度学习的兼容性上仍然缺乏一个系统性的研究。研究者进行初步试验对边界空间进行探索,但通常忽略了细节问题,这使得整个过程仍然不明确且难以重复。相应的,像CNNs这样的单一网络在单一应用情境下表现良好。然而,单个的良好表现并不能代表整体在普适计算在人类行为识别上的普遍适用性。在限定条件下的探索实验中,这些结果有多少代表性?哪些参数对于最终表现影响最大?实验者怎么找到那个刚好适合他们研究的参数?这些问题对于研究学者们十分重要,但是目前这些问题仍然没有解答。
在本文中我们首先提出了 在三种代表性数据集上 最流行的深度学习方法的表现。
这些包括几个典型的应用情境,如控制手势、重复动作和帕金森疾病中的医学运用。对三种模型的比较如下。为了探索每种方法的适用性我们选取了一系列合理范围的超参数,同时随机模型配置。
为了探讨每一种方法的适用性,我们为每一个超参数和随机样本模型配置都选择了合理的范围。并且,通过上千次的实验对它的性能做出报告,同时分析超参数对每种方法的影响。
3.1深度前馈网络(DNN)
我们使用了深度前馈网络,它相当于五个有着softmax-group的隐层的神经网络。DNN代表网络输入数据的一个非线性转换序列。我们遵循规则,并提出了一个有着N个隐层的网络作为N层网络。每个隐层都包含有,相同的数量的单元,对应的线性转换,和一个激活函数(ReLU)。我们使用了两个不同规范技术:(i)Dropout:在训练期间,每一个隐层的每个单元都通过一个概率Pdrop设置成0,而在推断时,每一个单元的输出都通过1/pdrop进行缩放(所有实验的dropout率都是固定值0.5)。(ii)Max-in准则:每个批梯度下降之后,网络中每个单元的输入量都被放缩到一个最大欧式长度din。对于限制方法中超参数的数量,我们选择不去进行任何生成的预训练,并且只依靠监督学习的方法。输入到网络中的输入数据相当于每个移动数据的帧。每个帧都由Rd中不同数量的s样本组成,也就是简单地连接到一个单一的向量FtRs*d。图1(d)中对模型进行了说明。
DNN是用批梯度下降的方法进行训练的,其中每一个批梯度下降包含64个帧,并且它是根据测试集中的阶级分层进行分层的。我们使用随机梯度下降的方法,尽量减小阴性似然。
3.2卷积网络(CNN)
卷积网络的目标是在输入数据的模式匹配中引入一个位置,并且确保每个有运动数据帧的模式的精确位置,的平移不变性(例如,发生的时间)。我们研究了卷积网络的性能,遵循了[Srivastava等人,2014]在结构方面的建议,并且规范化了技术。图1(c)说明CNN的整体结构。每个CNN包含至少一个暂存的卷积层,一个pooling层,和一个完整的连接层——在最高等级Softmax-group之前。暂存的卷积层相当于有着nf种不同特征图——宽度为Kw,的输入序列的卷积。最后的max-pooling,即是寻找宽度为mw范围中最大值,并对应一个子采样,向系统引入平移不变性。整个实验中max-pooling的宽度为固定值2。每个max-pooling层的输出都通过一个激活函数进行转换。随后的完全连接的部分有效地对应一个DNN并且遵循上述相同的架构。
对于规则化,我们应用了每一个max-pooling层/完全连接层的dropout,在整个实验中可能的dropout Pidrop在i层中是固定值(p1drop=0.1,p2drop=0.25,pi>2drop=0.5)。类似于DNN我们同样使用了max-in准则。输入到CNN的输入数据,如DNN中一样,对应移动数据的帧
。然而,并非连接不同的输入维度,矩阵结构被保留(FtRsxRd)。CNN的训练,使用了批梯度下降法(64帧)和随机梯度下降法,以尽量减少阴性似然。
3.3递归网络
为了研究移动数据的时序依赖,我们使用了递归数据网络,它基于vanilla变型(不包括peephole联系)的LSTM单元。当网络中的一些连接形成定向循环时,该结构是递归的,其中当前的时间t会考虑到前面时间t-1的网络状态。当错误的衍生物通过递归网络中的很多层“通过时间”进行反向传播时,LSTM单元用于抑制梯度下降。每一个LSTM单元(联合)都会持续追踪代表他“记忆”的内部状态(the constant error carousel)。随着时间的推移,该单元学会,输出,覆盖,或者基于当前的输出和过去的内部状态清空他们的内存,从而使一个系统保留数百个时间步长的信息。
我们实现了两个有特色的LSTM递归网络:(i)深度前馈LSTMs,它包含多种递归单元层,并及时联系“前馈”(见图1(a));(ii)双向LSTMs,它包含了两个平行的递归层,在一个连接了它们在时间步长t时内部状态的层之后(见图1(b)),延伸到当前时间步长的未来和过去中。
实际上这两种特色的LSTM,在他们的应用要求方面有着很大不同。前馈LSTM联系当前的时间步长,是基于它看到了过去,并且,在推理时,“未来”还不知道的情况下,它本质上适合于实时应用。另一方面双向LSTMs利用了未来和过去的上下文,去解释时间t时的输入,这使得它更适合于离线分析场合。
在该工作中,我们应用了三种不同设置的递归网络,每一种都使用adagrad和max-in规则进行训练以便最小化阴性似然。
在第一种情况下,在任何给定的时间t输入到网络的输入数据,都对应当前帧的运动数据,它延伸到一个特定的时间长度,并且维度也被级联(如前面的DNN一样)。我们将该模型称之为LSTM-F。前馈LSTMs达到第二种应用情况,代表了实时的应用,其中提出的每一个移动数据采样都是针对于他们记录序列中的网络,称之为LSTM-S。最后场景中,对于同样的样本到样本预测问题,应用了双向LSTMs。我称之为LSTM-S。
3.4对于HAR训练RNNs
RNNs相同的应用,包括演讲识别和自然语言处理。在这种设定下,输入的上下文(例如,一个单词)受限于它周围的实体(例如,句子,段落)。训练RNNs时,通常把上下文的实体看成一个整体,例如在一个完整的句子中训练RNN。
在HAR中,移动数据个体样本的上下文没有得到很好的定义,至少,超越了邻近样本之间的直接关系,并且好像还取决于移动的类型和它更广泛的行为情景。这是该领域众所周知的事,并且它会影响选择滑动窗口分割的窗口长度。
对于建立用于训练RNN的b批梯度下降,我们在开始和结束训练集中,初始化了多个位置(pi)b。对于建立批梯度下降,我们采用了L样本跟随(pi)b中的每个位置,并且增加L步长的(pi)b,它可能缠绕到该序列结束。我们发现随机初始化位置以避免梯度振荡是非常重要的。当这个方法保留对RNN提出的样品排序时,它不允许每一个批梯度下降层,都关于类-分布。
4.实验
实验中研究的不同种类的超参数在表1中列出。最后一列表示了每个数据集采样的参数配置的数目,它们被挑选出来代表一个相等量的计算时间。我们在三个代表了HAR典型问题的基准数据集进行了实验(下文进行描述)。实验是在一个有着3个GPUs (NVidia GTX980 Ti)的机器上进行,其中除了最大的网络,两个模型配置都在不同的GPU上运行。
在每次训练之后,我们都在验证集中进行性能评估。每个模型都训练了至少30次,其中最大的是300次。训练30次之后,如果在10次后验证性能没有得到提升,便终止训练。我们选择了显示最优验证集性能的次数,并且将对应的模型应用到测试集中。
4.1数据集
实验中,我们研究了三个在普适计算中具有代表性的HAR数据集。每一个数据集都对应一个HAR的应用。第一个数据集,Opportunity,它包含如开门和关门的操控手势,这种手势持续时间段,而且是不重复的。第二个数据集,PAMAP2,它包含了典型的系统特征——长时间和重复的物理运动,这其目的是描述能源支出。第三个数据集,Daphnet Gait,对应一个医疗应用,它参与展现了一个典型帕金森氏病中的运动并发症,众所周知该疾病有着非常大的整体变化性。接下来我们详细的描述每个数据集。
Opportunity数据集(Opp)
Chavarriaga等人,用4个参与者——被要求进行相同的厨房活动,身上传感器的数据组成了注释记录。数据是在频率为30Hz的情况下,从人体12地方记录到的,并且用了18个中级手势进行了注释(例如,开门/关门)。每个对象,都从五个不同的方式进行了数据记录。我们使用的子集,没有丢失任何的数据包——包括加速的记录,如抬手臂,放回,和脚部完整的IMU数据。最终数据是79维度的。我们使用了对象1中的第2关作为我们的验证集,并且通过使用我们测试集中对象2和3的第4和第5关,复制最流行的识别挑战。剩余的数据被用于训练。对于帧到帧的分析,我们创造了持续时间为1秒和重叠部分为50%的滑动窗口。最终的训练集包含大概650k的样本(43k的帧)。
PAMAP2数据集
Reiss和Strickere,在被要求进行12项日常生活的9个参与者中,进行了数据记录,包括家庭活动和各种各样的活动(北欧散步,踢足球,等)。加速度计,陀螺仪,磁力计,温度,心率数据都是由位于手,胸部和脚踝的惯性测量单位记录的(总共超过了10个小时)。最终的数据是52维度的。我们在验证集中使用了对象5的第1和第2关,在测试集中使用对象6的第1和第2关。剩余的数据用于训练。在分析中,我们向下采样计算器到33.3Hz,以便与Opportunity数据集有一个时间分辨率的比较。对于从帧到帧分析,我们用一个5.12秒的非重叠滑动窗口——它的相邻窗口之间持续时间为一秒(78%重叠),复制以前的工作。该训练集包括大概473k的样本(14k的帧)。
Daphnet Gait 数据集
(DG)Bachlin等人记录了帕金森病(PD)对于10个参与者的影响,这意味着开展活动,可能会导致步态冻结。冻结是帕金森病常见的运动并发症,它会影响个体的移动,例如散步。我们的目的是检测这些冻结的事件,以便通知未来情境激励系统。这代表一个两级的识别问题。加速器数据是从脚踝以上,膝盖以上和躯干部位进行记录的。最终的数据是9维的。我们在验证集中使用对象9的第1关,在测试集中使用了对象2的第1和第2关,并且使用剩余的数据进行训练。据我们分析,我们向下采样加速器数据到32Hz,对于帧到帧的分析,我们创造了持续1秒且重叠为50%的滑动窗口。整个训练集包含了大概470k的样本(30k的帧)。
表1:模式的超参数和实验的数值范围
通过逐帧分析,我们创造了持续时间为1秒且重叠部分为50%的滑动窗口。训练集大约包括470K的样本(30k帧)。
4.2超参数的影响
为评价所有实验中每一个参数的影响,我们运用fANOVA框架分析方法。fANOVA会决定每一个超参数对于网络结构表现的影响程度。它会就模式的表现建立一个预测模式,并作为超参数的函数。这一非线性模式随即被分解成为超参数的相互作用函数。fANOVA曾在递归函数中进行超函数探索。
对于探索者来说,知道模式的哪一方面对表现的影响最大是至关重要的。我们将模式的参数分成三类:(1)学习型参数,控制学习过程;(2)规则型参数,限制模式的建模能力以防止过度重合;(3)构建型参数,影响模式的结构。每一个超参数都不一样,我们估计归因于参数类别和不同等级参数之间的相互作用。
4.3 表现标准
由于在本次研究中所使用的数据集有偏重,所以要求表现标准的类别分布是独立的。我们倾向于评估f1数值的平均值:
相关研究曾使用加权f1分值作为主要表现标准。为把我们的结果和其他先进方法进行比较,我们会对加权f1分值进行评估:
Nc表示的是在c等级之内的样本数量,Ntoatal代表是样本总数量。
表2:每一模式和数据集所获得的最好结果,和一些比较标准。变量增量(表格的下半部分)指代的是所有实验中上等和中等表现之间的绝对差别。
5.结果
结果在图2可见。图(a-c)显示的是主要表现标准在每一个数据中的累积分布。图(d)通过fANOVA 解释了每一超参数类型的影响。
总的来说,我们观察了模式在OPP和DG上的优秀表现分布,其中在(b-LSTM-S)表现最好f1的平均值超过了15%,在OPP中表现最差(DG上的平均值为12%)(见图2)。在PAMAP2上的差别较小,但也有7%。在OPP上表现最好的方法超过目前的先进方法,在f1的平均值上超过4%(加权f1值超过1%)。CNN模式发现此项研究比之前结果都要好,因为f1的平均值和加权平均值都超过5%(见图2)。递归方法表现良好,它能就实验样品进行建模,能对HAR进行新(实时)运用,因为它们能缓解分割时间序列数据的压力。
图2:(a)-(c)每一个数据集识别表现的累积分布;(d)从fANOVA分析得出的结果,并解释超参数的种类对于识别表现的影响(见表1)。
在本次所研究的模式中,表现得分的分布不同。CNNs显示最有特色的表现:模型配置的一小部分表现较差(例如,在PAMAP的得分为20%),而其余配置在表现上的差别却不大。在PAMAP2中,例如,最优表现和中等表现之间的f1平均值只相差7%(见表2)。DNNs显示在OPP上所有方法的最优和中等表现相差最大值为35。7%。两个前置RNNs模式(LSTM-F,LSTM-S)在不同数据集上表现相似。尤其在PAMAP2和OPP上进行探索的配置识别表现非凡。
超参数种类对于识别表现影响的解释在图2(d)中可见。有趣的是,我们观察的是CNN中,参数的最一致影响。与我们期待相反的是,围绕学习过程(见表1)的参数对于表现的影响最大。我们希望对于这一模式而言,拥有多样选择结构变体影响会更大。对于DNNs,我们不会观察任意超参数种类的系统影响。在PAMAP2中,准确的学习参数会是最关键的。在OPP中,是模式结构最关键。十分有趣的是,我们观察到网络结构较浅的模式比深度网络表现更好。在这一网络结构表现中有下降趋势且带有超过3层的隐藏层。这可能与我们仅仅只依靠监督进行训练有关,因为生成训练能提深度网络的表现。
在OPP中,基于框架的RNN(LSTM-F)的表现受本次研究中的结转概率影响。由于经常保持内在状态或是忘记内部状态,这都会导致表现结果较差。我们发现0.5的Pcarry在大多数情况下都表现良好。我们的发现值得进行对转结时间表进行更加深入的研究,这会提高LSTM的表现。
基于样本实验的前向LSTMs(LSTM-S)的研究结果证明了之前的发现,因为对于这种模式其学习率是至关重要的参数。然而,对于双向LSTM(b-LSTM-S),我们发现每一层的单元数对表现影响重大,所以实验者应重点关注此类参数。
6.讨论
在本次研究中,我们探索了先进深度学习方法通过使用便携式传感器对人类活动识别的表现。我们介绍了如何在此设定中训练递归方法并引入新颖的规则化方法。在数千次实验中,我们用随机选择取样的参数对模式的表现进行评估。发现在Opportunity中双向LSTMs比目前先进的方法表现要好,基准数据库要更大,利润更可关。
但是对于研究者而言有趣的,不是每一个模式的峰值性能,而是参数在适应不同HAR任务时的探索和理解过程。对于时间较短但是按照时间顺序发生的时间理解中,递归网络模式比卷积模式表现得更好。因为递归模式有较好的理解语境能力。对于双向RNNs,我们发现在所有的数据集中,每一层的单元数目对表现的影响都很大。对于持续时间长且是重复发生的动作,例如,走路,跑步;我们推荐使用CNNs模式。在此情景中平均表现能让研究者更容易发现一个合适的配置,尽管RNNs模式和CNNs 模式表现差不多,甚至是RNNs有时表现的更好。我们强烈建议在优化网络结构之前要开始探索学习率,因为在我们的试验中发现学习率对表现的影响最大。
我们发现在不同的参数设置下,模式的识别表现都不一样。Regular DNNs模式对于研究者来说是最可行的方法,因为它需要进行大量的参数探索,并且在优良表现和中等表现之间的跨度较大。所以研究者不应舍弃在开始时识别表现较差的模式。更复杂的方法,例如,CNNs或是RNNs在表现上的差别较小,所以更可能发现表现较好的参数并且迭代次数也少。
点评
这篇文章主要针对人类行为识别问题,介绍并比较了三类不同的模型,包括DNN,CNN和RNN,并运用可穿戴传感器的运动数据和人类运动识别中的不同任务(如开关门、帕金森病等的运动情况)对三类模型的适用性进行了比较研究。
对于可穿戴设备收集得数据集,可穿戴设备主要以加速度计、陀螺仪等传感器测得数据,精度会更高,但其应用也就有了限制,必须在可以加装这些传感器的场景才行。音视频就更为一般性些,只需要有话筒和摄像头,不一定加在被监控对象身上。
文中提到的实验是深度学习在PD检测方面的应用,用以判断病情。
via IJCAI 2016
PS : 本文由雷锋网(搜索“雷锋网”公众号关注)(搜索“雷锋网”公众号关注)独家编译,未经许可拒绝转载!
雷峰网原创文章,未经授权禁止转载。详情见转载须知。