Human Activity Recognition Using FederatedLearning

摘要:

最先进的用于人类活动识别的深度学习模型使用大量的传感器数据来实现高精度。然而,使用从智能设备收集的数据在数据中心训练这样的模型会导致高昂的通信成本和可能的隐私侵犯。为了缓解上述问题,可以使用联邦学习来训练一个通用分类器,方法是将多个本地模型结合起来,这些模型是在来自多个客户端的数据上训练的。在这项工作中,我们评估联邦学习来训练人类活动识别分类器,并通过构建两个模型,即深度神经网络和在合成数据集和真实数据集上训练的softmax回归,将其性能与集中式学习进行比较。我们研究了联邦学习设置中通信成本以及错误客户端与损坏数据的影响我们发现,用于人类活动识别任务的联邦学习能够产生略差的模型,但与集中式模型相比,精度可以接受。在我们的实验中,联邦学习的准确率高达89%,而深度神经网络集中训练的准确率为93%。在倾斜数据集上使用联邦学习训练的全局模型达到了与集中式学习相当的精度。此外,我们发现了客户端数据损坏的一个重要问题,并提出了一种识别和拒绝错误客户端的联邦学习算法。最后,我们确定了通信成本和模型复杂性之间的权衡。我们表明,与不太复杂的模型(如多项逻辑回归)相比,更复杂的模型(如深度神经网络)在人类活动识别的联邦学习设置中需要更多的通信。

  1. 引言

人类活动识别(HAR)是一种分类机器学习任务,其目标是了解某个人在给定时间内执行了哪些活动。活动可以是不同种类的,例如:坐、站、走、跑、骑自行车或开车。HAR分类器可以适用于各种类型的应用,从医疗保健和健身应用,例如Fitbit[1]手表计数步数,到上下文感知应用,如iOS版本11[2]上的“驾驶时请勿打扰”功能。为了识别活动,机器学习模型通过来自智能设备、智能手机或智能手表的加速度计和陀螺仪传感器数据进行训练。

广泛的移动应用程序和智能设备允许收集大量的传感器数据,并推动HAR研究的进展。利用深度学习,研究人员基于智能设备[3]-[5]的数据,实现了HAR任务的高精度。Yao等人[3]提出了一种基于加速度计和陀螺仪传感器数据的移动传感深度模型。该模型由卷积神经网络(CNN)与循环神经网络(RNN)相结合组成,并在来自智能设备的高达GB级的传感器数据上进行训练。在从智能设备收集的真实世界数据上训练这个模型会导致各种各样的影响。移动客户端需要将大量数据发送到集中式服务器或集群,以进行训练和推断。由于用户的计费计划、用户的隐私和传感器数据的标签,这是一个挑战。

McMahan等人[6]提出通过使用联邦学习训练分类器来解决上述挑战。联邦学习允许建立一个全局模型,同时保持传感器数据接近用户,确保用于训练和推断的数据不会离开用户的设备。这也允许在训练和使用模型时保护隐私并减少通信成本。由于需要收集大量用于训练和推理的运动数据来对活动进行高精度的分类,如[3]中内置的模型,使用联邦学习算法训练分类器自然适合这个问题。然而,该算法在实践中并没有得到太多的测试,而且在实现细节方面还存在一些悬而未决的问题,例如该算法的限制是什么以及它适用于什么环境。

在这项研究中,我们评估了联邦学习的性能,并表明联邦学习可以代替集中式学习来训练HAR分类器。我们的基线是使用集中学习训练的HAR分类器,即使用随机梯度下降(SGD)在中央服务器上收集和存储的传感器数据上训练的分类器。我们比较了使用集中式学习训练的HAR分类器和使用联邦学习训练的HAR分类器在客户端之间的三种数据分布:(1)不平衡和非独立非同分布(非iid)数据,(2)均匀分布数据,(3)倾斜数据。在非iid数据的情况下,联邦客户端最多有2个来自数据集的活动,其中一个活动的数据点比另一个少50%。对于均匀分布的数据,客户端拥有数据集中的所有活动,并且这些活动均匀地分布在客户端上。在倾斜数据的情况下,大多数客户端都有均匀分布的数据,一个客户端只有一个数据类(倾斜分布的客户端)。我们尝试将分布映射到现实世界的场景中,其中客户端可以执行不同的活动,或者一些客户端可能有不太频繁的活动,例如骑自行车。对于倾斜数据的情况,我们研究了具有倾斜分布的客户端的局部测试精度。此外,由于在联邦学习中数据分布在许多客户端中,我们研究了错误的客户端如何影响联邦学习,以及如何减轻这种影响。我们将错误客户端定义为产生传感器数据的客户端,该客户端完全超出了来自正常客户端的传感器数据的分布范围。集中式和联邦方法都使用两种不同的模型进行评估:(1)多项逻辑回归,通常称为softmax回归,(2)深度神经网络(DNN)。

本文的主要贡献如下。首先,我们为HAR任务建立了两个模型,即softmax回归模型和深度神经网络模型。每个模型都以两种方式训练,使用联邦学习作为一种新的分布式机器学习方法,并使用集中式学习,在HAR数据集上使用三种不同的客户端数据分布、非iid数据、均匀分布数据和倾斜数据。其次,我们评估了使用联邦学习训练的HAR模型、softmax回归模型和DNN模型的性能和通信成本,并与使用集中式学习训练的模型进行了比较;我们已经证明,联邦学习允许以与集中式学习相当的可接受的准确性为HAR构建模型,同时保留数据隐私,并显著降低更简单模型的通信成本。最后,我们研究了来自错误客户端的损坏数据对联邦学习性能的影响,并提出了一种检测和拒绝错误客户端的联邦学习算法,该算法使用联邦学习提高了人类活动识别模型的性能。

本文的其余部分结构如下。第二节介绍了研究背景。第三节介绍了HAR的模型:软最大回归模型和DNN模型。第四节介绍了实验和评估设置,包括本研究中使用的数据集、工具和框架、联邦学习算法和评估指标。第五节给出了实验结果。第六节讨论了相关工作。我们在第七节中总结并强调我们今后的工作。

  1. 背景

HAR分类器C的分类任务是基于一组人体传感器S来预测不同的人体活动,通常S由三轴加速度计和/或陀螺仪传感器组成,分别称为Ax, Ay, Az和Gx, Gy, Gz。除了加速度计和陀螺仪之外,磁场传感器也可以使用,但它们不太常见。加速度计是测量加速度的硬件单元,通常单位是s m2,而陀螺仪以rad为单位测量给定设备(例如手机)的旋转。几乎所有现代智能手机和智能手表都内置了加速计和陀螺仪。传感器用于不同的用例,陀螺仪用于执行屏幕旋转,加速度计用于计算步数或增强现实应用。

在深度学习成为HAR任务的最先进技术之前,人类活动识别领域的研究人员使用各种类型的手工特征来训练HAR分类器。特征工程是一个重要的过程,在很大程度上依赖于目标分类任务。一般来说,大多数基于传感器数据手工制作的特征分为三个不同的类别:时域特征、频域特征和时频分析。在深度模型出现之前,广泛的“经典”机器学习模型被用于训练HAR分类器:无监督方法,如k-means,概率方法,如朴素贝叶斯,支持向量机(SVM),感知器和其他[8]。

与手工制作的特征和经典的机器学习模型相比,深度学习利用了拥有大量数据和深度非线性模型的优势。当使用深度模型时,可以简单地省略特征提取过程。在大多数情况下,原始加窗传感器数据直接馈送到分类器。长短期记忆递归神经网络(LTSM RNN), cnn或两者模型的组合是目前HAR的主要方法[3],[9],[10]。图1总结了HAR分类器的训练和推断。该图没有涵盖使用HAR分类器的实际方面,例如如何收集数据、如何将模型分发给最终用户或如何标记数据。首先,从带有加速度计和陀螺仪的移动设备上收集传感器数据,其次,根据C的模型选择,使用加窗数据进行特征提取或直接输入到分类器进行训练。在预测时,使用相同的窗口长度收集数据,然后,再次取决于为HAR分类器选择的模型,提取特征或将原始窗口数据输入预测目标标签的C,例如行走。

A.联邦学习

在联邦学习中,学习任务是由产生训练数据的参与设备组成的联邦完成的,而不是将所有训练数据集中在服务器或云中。初始算法由[6]提出,重点是使用SGD进行训练,并使用不同的神经网络建模,特别是dnn, cnn或rnn。联邦学习算法的主要目标是学习一个每个客户端在第r轮有自己的本地数据集Dr k,一个本地模型Hr k,并执行一次或多次SGD迭代。在客户端执行了几次SGD迭代之后,它将下一个本地模型hrk +1发送到拥有全局模型的服务器。使用全局模型的同步更新。当所有客户端都完成了SGD的几个阶段后,服务器收集所有本地模型并更新全局模型Mr+1。作者使用两种不同的方法评估全局更新,联邦SGD(其中客户机只更新一次本地模型)和联邦平均(其中客户机多次更新H)。联邦平均在达到目标精度所需的通信轮数方面优于联邦SGD,并使用以下公式[6]计算:

其中hrk +1是局部模型的局部更新,gk是使用反向传播计算的梯度,Mr+1是下一个全局模型,η是学习率,n是所有数据点的和,nk是局部数据点的数量。与使用集中式方法训练分类器相比,联邦学习算法有几个优点。最大的优势之一是客户端产生的敏感数据保存在客户端设备上。这允许使用敏感的客户端数据(如url、密码或键盘敲击)来训练模型。此外,如果数据不能记录到中央服务器,它可以降低通信成本。两种数据分布将联邦学习与集中式或分布式优化区分开来:非iid数据和不平衡数据。算法本身试图适应非iid和不平衡的数据,通过局部模型训练的数据点的数量加权每个局部模型,公式1中的nk n。联邦学习的另一个方面是同步更新,在同步更新中,速度慢、没有响应或离线的客户端会影响学习。

[6]提出的联邦学习算法表明,使用联邦平均的通信成本可以比联邦SGD降低10-100倍。Konen et al.[11]提出了一些进一步降低通信成本的技术。作者提出了两种在与中央服务器通信之前更新本地客户端模型的方法:结构化更新和草图更新。使用结构化更新,客户端将原始本地模型Hr k映射到低维空间。使用草图更新,客户端通过使用(例如,概率量化)压缩Hr k。通过使用cnn和lstm,作者表明与原始的联邦学习算法相比,通信成本可以降低两个数量级。

  1. 模型

在本研究中,我们建立了两个不同的模型,DNN和softmax回归模型。我们使用DNN模型,而不是最先进的模型,如cnn或rnn,因为两个主要原因:实现的技术限制,联邦客户端的计算和通信成本。与DNN相比,CNN模型包含更多参数,这是因为在前馈层之前,CNN架构中使用了卷积内核,用于提取特征。RNN模型与DNN或softmax回归模型相比计算成本更高,反向传播算法计算多层误差比反向传播算法计算成本更高。

在设计模型时考虑了三个方面:(1)由于客户端计算能力有限,每个模型的参数数量必须较少;(2)参数的数量也会影响联邦学习中服务器和客户端之间传输的信息量。(3)我们的目标不是在HAR任务上实现最佳精度,而是表明我们可以实现与集中式模型相似的精度,而数据保存在客户端上,而不是收集大量数据并训练集中式分类器。因此,在集中训练中,我们对不同的参数执行网格搜索[12],其中我们寻求超参数的最佳组合,如架构,学习率和批处理大小。对于softmax回归,我们通过产生多项式特征来探索模型中不同数量的系数,对于DNN,我们探索每一层中不同数量的隐藏层和神经元。这两个模型都使用小批量SGD对数据集中80%的智能手机数据进行训练,并形成我们的基线:HAR模型使用在所有可用数据上训练的集中式方法进行训练。然后在数据集的20%测试数据上评估基线模型的性能。

  1. 评估

A、数据集

本项目使用[13]生成的异构人类活动识别数据集。在这项研究中,作者展示了来自不同智能手机和智能手表的传感器数据的异质性。作者声称,当一个HAR分类器被部署到多个移动设备上时,与研究中报告的结果相比,它的表现通常明显更差。这是由于各种传感器硬件、操作系统和不同的移动机型。该数据集包含以下人类活动:骑自行车、坐、站、走、上楼梯、下楼梯和null。当活动缺少基本真值注释时使用Null。在我们的实验中,没有标签的传感器数据将从数据集中删除。数据集在不同的活动以及每个用户执行的活动之间具有均匀的分布。这些数据是由9位数据生产者记录的,他们携带了8款不同的安卓智能手机和2款安卓智能手表。数据收集的速度是移动传感器所能提供的最快的,采样频率在50Hz到200Hz之间。在产生传感器数据时,智能手机被挂在腰上,智能手表戴在两只手臂上。

B.数据准备

我们从异构人类活动识别数据集中构造特征数据集D来训练softmax回归和DNN模型。在D中,我们从数据集中每个用户的加窗加速度计和陀螺仪值中提取统计特征。我们在3秒内应用50%重叠的滑动窗口,并从每个窗口提取平均值、标准差、最大值和最小值特征。由于数据是从不同的智能手机上收集的,采样率不同,因此在每个用户的数据集上,数据被预处理为固定的65Hz采样率。具体来说,如果一个3秒的窗口包含的数据点比一个65Hz采样的窗口(200次测量)更多,我们从窗口中均匀随机地绘制点。如果窗口包含较少的数据点,我们使用插值来填充缺失值,以达到65Hz采样频率。我们计算加速度计和陀螺仪的幅度,并从中提取与我们从Ax, Ay, Az, Gx, Gy, Gz中所做的相同的统计特征。用于训练模型的结果数据集有32个特征。

我们用来自D的离群数据模拟客户端,并研究它如何影响联邦学习。假设D包含9个用户,我们通过从每个真实用户特征的分位数中随机取统一点来模拟最多9个错误用户。使用了两个不同的范围,从中得出随机观察结果,第一个范围是真实用户特征的1%到5%分位数之间,第二个范围是相同特征的95%到99%分位数之间。我们为一个用户数据集的所有特征执行这个过程,并分配与真实用户数据集相同的标签。因此,为错误客户端生成的结果数据集包含数据级别上的噪声,因为数据是在真实用户数据集分布的尾部生成的,以及活动(标签)级别上的噪声,因为数据是独立于每个活动生成的。

C.数据分区和分布

在集中学习中,我们将D分为80%的训练数据和20%的测试数据,并将它们分别称为全局训练数据集和全局测试数据集。全局测试数据用于集中训练和联邦学习,以研究准确性。采用全局列车数据集进行收敛性研究。对于在联邦学习中在客户端上分布D,我们使用了三种不同的方法:不平衡和非iid,均匀分布和倾斜。

为了模拟联邦学习中客户端的不平衡和非iid分布,我们根据数据集中的每个用户对数据进行分组,并在联邦学习中分成3个不同的生成客户端。由于每个用户执行6个活动,并且每个用户的活动传感器数据是均匀分布的,因此在联邦学习中,我们通过从每个用户获取2个活动并将其分配给一个客户端来为客户端生成病态的非iid数据。因此,联邦学习中的每个客户端将从一个用户获得2个不同的活动。在此之后,我们在每个客户端上选择一个活动以减少50%的数据点,以实现不平衡的数据。在统一分布式数据分区中,我们简单地按用户对数据进行分组,并让联邦学习中的每个客户端从数据集中的一个用户获取数据。为了研究具有倾斜分布的客户端上的本地性能,我们从所有数据中统一划分数据数据集中的用户到联邦客户端,期望有一个用户,我们只对其进行一个活动。为了研究带有损坏数据的客户端如何影响联邦学习,我们在联邦学习中对来自真实用户的数据进行统一分区,然后在每个实验中为每个用户添加一个错误客户端,直到我们达到与真实客户端相同数量的错误客户端。每个本地数据集分为90%的训练数据和10%的测试数据。在每个客户端的训练数据中,我们排除了与全局测试数据集相同的数据点。

D.使用Spark、Dataproc和TensorFlow进行联邦学习

我们使用Apache Spark和Dataproc在MapReduce算法上构建了HAR联邦学习算法的原型实现。原型由一个主节点和几个客户端工作节点组成。主节点负责联邦学习算法的整个工作流程,并将训练任务委托给客户端工作者。每个训练任务都是所选模型、DNN或softmax回归的TensorFlow图,并在每个客户端的传感器本地数据集上执行。主节点将每个本地训练数据集分配给每个客户端工作者。一旦客户端工作人员获得数据集,联邦学习算法就会启动。每个worker将使用TensorFlow在本地数据集上训练其本地模型若干个epoch,更新本地模型并将模型发送回主节点。当所有客户端执行e个epoch时,主节点更新全局模型并再次将其发送给客户端工作者。这个过程在r个沟通回合中继续进行。算法1定义了使用Spark、Dataproc和TensorFlow的联邦学习训练的整个实现。第3-5行在每个客户机worker上执行,对应于Apache Spark中的一个映射操作。算法的其余部分在主节点上执行,其中collect是来自Spark的操作,train是TensorFlow训练过程。为了模拟移动硬件,我们选择Dataproc上可用的最小实例作为worker, 1-standard-1, 1个虚拟CPU 2.0 GHz和3.75 GB RAM。我们选择1-high - mem-8作为主节点,它有8个2.6 GHz的虚拟cpu和52 GB的内存。此外,我们在Spark配置中将worker内存限制在1gb,每个worker每个CPU只有一个线程。在计算资源和内存方面,这种硬件设置可以接近今天的现代智能手机。

E.联邦学习中错误客户端的拒绝

为了解决联邦学习中错误客户端的问题,提出了一种基于联邦学习中每个客户端的测试精度的拒绝算法。经过一系列的通信回合,或所谓的截断回合,我们使用每个客户端的本地数据集评估所有的本地模型。然后,使用每个本地测试数据集上的测试精度和精度阈值t,我们拒绝测试精度低于阈值的客户端。对于选择t,我们调查正常客户端上的本地测试精度,并将其与错误客户端上的本地测试精度进行比较。

算法2描述了针对错误客户端的HAR计费的联邦学习算法。函数拒绝迭代从客户端接收到的所有本地测试精度,并在主节点上执行。当到达截止轮时,第8-10行从所有本地模型的联邦平均中删除被认为是错误的客户端。

F.评估指标

为了评估所提出的方法,我们跟踪了三个不同的指标,最小化目标函数的值,通常称为损失值或成本值,测试数据的准确性和联邦学习中的数据上传。对于训练DNN,“是观察值和预测标签之间的交叉熵,而对于训练softmax回归”是一个逻辑损失函数。准确度指标是正确预测和观测总数之间的一个分数。

对于我们的基线模型,我们在训练期间观察平均测试集的准确性。我们将其与使用联邦学习训练的模型的收敛性和测试精度进行对比,以了解目标函数何时收敛,以及使用联邦学习可以达到什么样的精度。我们检查了联邦学习中损失函数的陡度和通信轮数的测试精度。我们假设一次通信是客户端将本地模型发送到全局服务器并接收更新后的模型。对于联邦学习,损失函数的值将在分布在客户端的训练数据上计算,在生成新的全局模型后使用全局模型。联邦学习中的精度度量将使用相同的方法计算,但使用全局测试数据集。我们指出,我们在联邦学习中使用的全局列车和测试数据集与基线模型训练中使用的数据集相同,但在联邦学习中,全局列车数据集分布在各个客户端。为了研究联邦学习的通信效率,我们以兆字节为单位跟踪每个客户端上传数据的损失和测试准确性,并将其与每个客户端本地数据集的大小进行比较。从每个联邦客户端上传的数据可以乘以2,以便了解在客户端和中央服务器之间的一个通信回合中上传本地模型和下载新的全局模型时传输了多少数据。

5、结果

在本节中,我们将介绍使用联邦学习完成HAR任务的结果。我们比较了中央服务器上的集中式SGD训练,其中所有传感器数据都可用于联邦学习,并在联邦学习中跨客户端进行三种不同的数据分布。我们根据具有倾斜分布和错误客户端的性能来评估HAR的联邦学习。我们还介绍了联邦学习的通信和计算成本。

A.集中SGD培训

对于在所有数据上使用SGD训练的模型和联邦学习之间的比较,我们将我们的基线作为表现最好的集中式模型。使用平均验证精度,我们确定了在不同参数的网格搜索中发现的每种类型的前5个模型。对于softmax回归,我们通过3个参数执行网格搜索:多项式特征的度(通过特征交叉向模型添加更多参数),学习率和小批量大小。对于DNN,我们通过中隐藏层数来寻找每一层的结构和神经元,学习率和小批量大小。图2描述了在网格搜索中找到的各类型5个最佳模型的测试精度及相应参数。每种类型的每个模型表现相似,测试精度没有任何较大的提升。性能最好的DNN模型由2个隐藏层和每层100个神经元组成,共有24006个参数。对于软最大回归模型,多项式特征交叉并没有提高模型的精度,反而使模型发散。因此,前5个回归模型只使用数据集中的原始特征,并包含198个参数。通过在训练两个最佳模型时使用早期停止,DNN的最佳测试精度为93%,softmax回归为83%。

图2所示。用不同参数的网格搜索,找到了5种不同类型的最佳集中模型。其中η为学习率,b为小批量大小,l为DNN的隐层数和每层中的神经元数,例如l =(100,100)为2个隐层的网络,每个隐层有100个神经元。

B.面向HAR的联邦学习

使用统一的和非iid数据分布,我们研究了当联邦客户端上的数据基于移动设备的使用情况时,联邦学习是如何执行的。图3显示了为HAR分类训练的DNN和softmax回归模型的收敛性和测试精度。我们观察到联邦学习可以与集中式学习训练的模型竞争。联邦学习可以被看作是两个不同目标函数F(M)的优化,F(M)旨在通过联邦平均所有局部模型Hk和fk(H)来构建一个全局模型M, fk(H)旨在通过SGD对给定客户端上的局部数据进行优化。当我们试图优化非iid和不平衡数据分布的局部模型时,fk(H)是F(M)的一个很差的近似值,因为客户的数据不能代表整个分布。这种数据分布可以与联邦学习中跨客户端均匀分布的数据进行比较,其中优化fk(H)可以被视为优化F(M)。这可以从我们在研究过程中得到的结果中观察到,在一个更现实的场景中,非iid和客户之间的数据分布不平衡,显示了87%的准确率,而集中SGD训练的准确率为93%,见表i。另一方面,观察图3中DNN测试精度的趋势线,我们可以看到它仍然有一个积极的趋势,这假设意味着如果我们训练更多的交流轮,我们可以提高联邦学习模型的准确性,无论是非iid还是统一数据分布。这意味着需要将更多的数据发送到中央服务器,同时联邦学习客户端的移动设备也需要更多的计算能力。在客户端之间统一分布数据的情况下,集中式SGD和联邦学习之间的差异甚至不太显著,但是这种情况在现实世界的应用程序中不太常见,因为每个联邦客户端上的数据可能倾向于特定的人类活动。

图3:DNN HAR分类器使用联邦学习在参与的客户端中使用两种不同的数据分布进行训练。灰色线表示使用DNN模型获得的最佳集中精度。

表1:在客户端不同数据分布上训练的最佳性能联邦平均模型概述。

联邦学习是针对数据对隐私敏感且由于通信成本而难以从众多移动客户端收集数据的问题而提出的。在训练HAR分类器时,联邦学习的好处是以什么代价来的?在这项研究中,我们应用特征工程从给定的数据集中为HAR生成统计特征,而在最先进的模型中,如DeepSense模型,由更多观测组成的原始传感器数据直接用于训练集中分类器。为了在b = 100和e = 1的不平衡和非iid数据的联邦学习中使用DNN模型实现最佳测试精度,我们需要多达1000轮通信,这意味着每个客户端上的本地数据集和与全球服务器的模型交换的1000个epoch,而集中式SGD模型中只需要7个epoch的训练。此外,观察表I的结果,我们看到,在这种特定情况下,使用更复杂的模型作为DNN,需要发送更多两个数量级的包含本地模型的数据(因此在客户端引起更高的计算成本),以实现较高的精度,与用于生成本地模型的本地数据集的大小相比。然而,模型权重并不直接取决于现有的原始数据,而是取决于我们正在从数据中学习和提取的用户行为现象的复杂性。因此,在广泛应用的情况下,如图像或语音识别,预计本地数据集的大小将比HAR使用的数据集大得多。另一方面,如表1所示,不太复杂的模型(如softmax回归)可以显著节省联邦学习中的通信成本。因此,对于大多数现实世界的应用程序来说,使用不太复杂的模型可能是一种可行的解决方案,因为在HAR中观察到的用户行为现象通常足够简单,可以用相对简单的模型捕获。

当我们比较本研究中使用的不同模型时,我们看到了一种权衡,一种是不太复杂的模型,它需要更少的计算资源和数据上传,但产生的全局模型精度较低,另一种是更复杂的模型,它需要更多的计算和通信资源。这种权衡表明,在使用不太复杂的模型时,联邦学习需要更少的通信和计算资源,但代价是准确性较低。

C.倾斜分布客户的研究

在这个实验中,我们研究了全局模型如何适合数据分布偏向于一个活动的客户端。我们选择一个客户机只执行一个活动,而其他客户机则执行均匀分布在它们之间的所有活动。由于数据集包含9个客户端,我们分别选择每个客户端具有倾斜分布,并使用1个倾斜分布的客户端和8个数据均匀分布的客户端进行联合训练。

表II中给出的结果表明,新的全局Mr+1并不总是具有倾斜分布的客户端的最佳选择,但它显然取决于所执行的活动,而不是联邦学习算法。表中的每一行都显示了一个实验,其中我们让一个客户机只有一个活动,而其他8个客户机拥有所有活动。本文给出了实验中使用的标签在向标签倾斜分布的客户端和所有其他客户端的测试精度,以及正常客户端和倾斜分布客户端的平均测试精度。总体而言,倾斜分布的客户端与数据均匀分布的客户端具有相似的平均检验精度。具体而言,步行、上楼梯和下楼梯活动对部分正常患者的准确率低于50%,对偏向上楼梯分布的患者的准确率为30%。然而,对于其他活动,如坐或站,在倾斜分布客户端上的平均局部测试精度往往高于均匀分布客户端上的平均局部测试精度。这个表格证明,即使对于分布统一、标签全的客户来说,有些活动也比其他活动更难预测。在标签分布均匀的情况下,行走、上楼和下楼等活动至少有2个客户的准确率低于50%,而静坐或站立等活动更容易预测,准确率总在70%以上。我们认为,这是因为静态活动,如坐或站,比其他活动更容易预测。

表2:研究联邦学习期间正常客户端每个标签的本地测试准确性,使用DNN模型的客户端分布向单个活动倾斜。

结果表明,在从中央服务器接收到新的全局模型Mr+1后直接使用,与在局部训练后使用下一个生成的局部模型相比,具有较低的局部测试精度。这是因为当客户端开始针对本地数据分布进行优化时,它可以实现更高的本地测试精度。具体来说,即使使用简单的模型作为softmax回归,在学习一个阶段后,在生成下一个局部模型时,也可以观察到非常高的局部测试精度。这表明联邦学习可以用来构建更多的个性化模型,而不是优化全局模型。例如,如果新接收到的全局模型Mr+1在局部测试精度方面比经过局部训练后新生成的局部模型Hr k +1表现得非常差,则可以在客户端应用与算法2类似的拒绝算法,拒绝新接收到的全局模型Mr+1,只优化其局部模型。这允许为具有不同于整个联邦客户端集合的数据分布的客户端构建更好的本地模型,例如执行独特活动的客户端。实际上,我们可以说,如果使用本地模型Hk的客户端k的本地测试精度在给定阈值t时远高于使用Mr+1的测试精度,那么新的全局模型Mr+1可以被拒绝,k可以使用其本地数据来优化其本地模型Hk。

D.错误的客户端对联邦学习的影响

由于在联邦学习中,数据分布在许多客户端上,我们认为具有外围数据的客户端是算法的一个开放问题。观察表III的结果,我们看到,在对HAR的DNN模型进行300轮训练后,错误客户端和真实客户端的分数为1会使平均测试精度从0.82降低到0.73。通过使用所提出的算法2明确识别错误的客户端拒绝,我们能够在错误客户端和真实客户端为1的情况下获得更好的平均检验精度,而没有任何错误客户端。显然,当我们使用最早的截止轮(如25轮)时,我们得到了更好的结果。过早地拒绝潜在的错误客户端也可能导致问题:正常的客户端需要几轮才能达到超过截止阈值的精度。

6、相关工作

Ramakrishnan等人[14]提出了一种用于训练HAR分类器的云学习,该分类器内置于糖尿病患者的上下文感知应用程序中。这项工作证明,在移动设备上集成HAR分类器的关键挑战是设备上可用的资源,如电池、通信带宽和计算资源。作者使用隐马尔可夫模型来识别Android应用程序上的人类活动。该模型使用从移动设备收集的带窗三轴加速度计数据的统计特征进行训练。根据设备电池电量不同,采用不同的采样频率采集加速度计传感器数据。作者提出的另一个特性是基于马尔可夫决策过程(MDP)将训练智能卸载到云端。考虑到设备上可用的资源(CPU、内存、存储、通信),MDP根据这些因素建立最佳卸载策略模型。当识别被转移到云端时,只要有可能,设备就会通过Wi-Fi将传感器数据发送到云环境中。当一个活动在一个集群上被识别时,它被输入胰岛素剂量推荐引擎。整个系统的目标是在24小时内电池预算为15%,通信带宽为5%的情况下,在HAR任务上实现90%的分类准确率。由于Android 2上的一个漏洞,作者无法证明目标是否实现。与我们的工作目标相比,这篇论文是我们找到的最接近的。还有一个区别是显著的,因为论文没有提到加速度计数据是敏感数据,应该相应处理。Smith等人[15]建立在[6]提出的原始联邦学习算法的基础上。这项工作展示了联邦学习中的一些统计和系统设计挑战,例如非iid数据或离散者,可以使用联邦多任务学习来解决。多任务联邦学习的核心思想是根据每个设备上的本地数据集拟合单独的模型(每个任务一个),同时仍然保留所有本地模型之间的结构,即全局模型。作者证明了这种方法非常适合处理联邦设置的统计挑战。除此之外,还有算法考虑同步联邦学习中的系统挑战。该解决方案允许部分解决局部任务,即中断训练局部模型的迭代,如果一个节点被认为是一个离散者。算法在不同的数据集上进行了评估,其中包括UCI人类活动识别数据集[16]。在多任务学习中,数据集中传感器数据的每个生产者都被建模为单独的任务。数据被随机划分为75%的训练集和25%的测试集,然后比较三种(多任务局部/全局和集中式)SVM分类器。在HAR任务上,多任务全局模型显著优于全局和局部联邦学习方法。Shokri和Shmatikov[17]提出了一种分布式协作深度学习的方法,在使用SGD训练分类器时,将一组选定的参数和梯度发送到中央服务器。这种方法适用于任何类型的神经网络,并在不牺牲结果模型的准确性的情况下保护参与者训练数据的隐私。使用这种方法,作者提出了一种分布式协作训练算法,其中每个学习者在其数据上本地训练一个模型,然后与中央服务器异步交换参数和梯度的子集。与[17]相比,[6]中提出的联邦学习方法使用了所有参数和同步更新。

7、结论及未来工作

我们深入研究了联邦学习在人类活动识别任务中的适用性。联邦学习使培训无需将隐私敏感的原始数据发送到中央服务器。我们表明,针对HAR的联邦学习在各种工作负载下都足够健壮,并且生成的模型具有与集中式学习相当的可接受的准确性。在我们的合成和实验中在真实世界的数据集上,联邦学习的准确率高达89%,而集中式学习的准确率高达93%,代价是具有大量参数的复杂模型(如dnn)的通信成本更高。HAR的较简单模型,如softmax回归,允许减少联邦学习的通信成本,同时仍能实现高达80%的准确率,而集中式学习的准确率为83%。因此,低复杂度模型应用于通信敏感的应用程序,而高复杂度模型应用于要求较高精度的应用程序。如[11]中所提出的,通过应用压缩算法可以进一步降低联邦学习的通信成本。我们发现了客户端数据损坏的一个重要问题,并提出了一种联邦学习算法,该算法可以识别和拒绝错误客户端,同时达到接近联邦学习的精度,没有错误客户端。

A、未来工作

虽然在这项工作中进行的相对小规模的实验显示了联邦学习对HAR任务的适用性的良好结果,但我们未来的工作包括使用现实工作负载运行更大规模的实验,我们预计,这将进一步证实联邦学习对HAR任务的可行性。例如,本研究的下一步是在具有许多移动用户的移动应用程序中实现HAR的联邦学习算法,例如可以预测用户当前活动的健身应用程序。通过在应用程序上训练和集成联邦模型,可以跟踪更广泛的指标,以评估联邦学习作为一种训练方法。该应用程序将允许基准测试指标,如设备上的电池使用情况进行训练,使用用户交互测量分类器的性能,通信问题和离散者的影响,以及我们在本研究中考虑的其他指标,如收敛性,数据上传和本地测试数据的准确性。联邦学习算法可以进行更深入的研究。该算法通过反向传播和SGD训练神经网络,然后结合局部模型进行联邦平均。比较不同的梯度下降优化算法(如Adagrad, Adadelta, Adam, Momentum, RMSProp)或使用简单学习率退火计划[18]的普通SGD,这将是一个有趣的研究。Adam或Adadelta等优化器为学习目标的每个参数(在我们的例子中是神经网络权重矩阵)提供自适应学习率,可以潜在地加速每个客户端上本地训练的收敛,并降低联邦学习的成本,如通信和计算轮。然而,自适应学习率优化器使用backprop存储关于计算梯度的不同参数,并在每个更新步骤中使用这些信息来生成新的更新规则。这可能与联邦平均方法相冲突,因为参数将在每个本地客户端的训练中计算多次,而集中式训练的参数将在训练过程中更新。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值