Due to the pervasive diffusion of personal mobile and IoT devices, many ``smart environments'' (e.g., smart cities and smart factories) will be, among others, generators of huge amounts of data. Currently, this is typically achieved through centralised cloud-based data analytics services. However, according to many studies, this approach may present significant issues from the standpoint of data ownership, and even wireless network capacity. One possibility to cope with these shortcomings is to move data analytics closer to where data is generated. In this paper, we tackle this issue by proposing and analyzing a distributed learning framework, whereby data analytics are performed at the edge of the network, i.e., on locations very close to where data is generated. Specifically, in our framework, partial data analytics are performed directly on the nodes that generate the data, or on nodes close by (e.g., some of the data generators can take this role on behalf of subsets of other nodes nearby). Then, nodes exchange partial models and refine them accordingly. Our framework is general enough to host different analytics services. In the specific case analysed in the paper, we focus on a learning task, considering two distributed learning algorithms. Using an activity recognition and a pattern recognition task, both on reference datasets, we compare the two learning algorithms between each other and with a central cloud solution (i.e., one that has access to the complete datasets). Our results show that using distributed machine learning techniques, it is possible to drastically reduce the network overhead, while obtaining performance comparable to the cloud solution in terms of learning accuracy. The analysis also shows when each distributed learning approach is preferable, based on the specific distribution of the data on the nodes.
翻译:由于个人移动和 IoT 设备的广泛扩散, 许多“ 智能环境” (如智能城市和智能工厂) 将产生大量数据。 目前, 这通常是通过基于云的中央数据分析服务实现的。 但是, 根据许多研究, 这种方法可能从数据所有权的角度, 甚至无线网络能力, 产生重大问题。 应对这些缺陷的一种可能性是将数据分析器移近生成数据的地点。 在本文中, 我们通过提出和分析分布式学习框架来解决这一问题, 使数据分析器在网络边缘即极接近数据生成地点进行。 目前, 这通常是通过集中的云基数据分析服务实现的。 具体地说, 在我们框架内, 部分数据分析器直接在生成数据的节点上进行, 或者在接近的节点上( 例如, 某些数据生成器可以代表其他节点生成的子 ) 。 然后, 节点交换部分模型并相应地加以完善。 我们的框架非常笼统地将数据分析结果在网络的边缘进行, 也就是在数据生成数据的极近地点进行数据分析时 。 具体的数据分析过程中, 分析过程中, 正在分析 学习一种特定数据 分析 两种 学习, 分析 两种 分析 分析 分析 两种 两种 分析 两种 分析 分析 分析 两种 分析 分析 分析 两种 分析 两种 分析 分析 两种 分析 分析 两种 分析 分析 分析 两种 分析 两种 两种 分析 分析 两种 分析 分析 分析 分析 分析 分析 两种 分析 两种 分析 分析 两种 分析 分析 分析 分析 分析 分析 分析 分析 两种 分析 分析 分析 分析 分析 分析 分析 分析 分析 分析 分析 两种 分析 分析 分析 分析 分析 分析 分析 分析 分析 分析 分析 分析 分析 分析 分析 两种 分析 分析 分析 分析 分析 分析 分析 分析 分析 分析 分析 分析 两种 分析 分析 分析 分析 分析 分析 分析 分析 分析 分析 分析 分析 两种 分析 分析 分析 分析 分析 分析 分析 两种 分析 分析 分析 分析 分析 分析 两种 两种 两种 分析 分析