潜藏情境诞生于AIoT众多挑战之中的云(固定数据集,数据标注花费大,难以涵盖所有边端可能面对的所有数据分布)-边(质量不一,作用不同,处于不同数据分布下的动态流式数据,data stream)数据异构问题,本质上即Non.IID问题(云-边数据之间非独立,或者非同分布)。在现实生活中,数据一般是相互独立的,且同一设备上获取数据的独立性(如视频的连续帧之间可能存在一定的相关性)也可以通过local shuffling来实现。所以,云-边数据异构一般讨论的是“非同分布”。综上,云-边数据Non.IID通俗一点来讲,即云端训练使用的数据分布不足以代表边端实际推理“所遇见”的数据分布,这导致边端性能下降,低于云端“预期”。
² 为什么会低于“预期”?
深度学习模型的精度取决于三个要素——a. 模型Units的简单性、b.表征能力representative power,以及c. 数据质量。我们要从已有的数据(经验)中总结出规律来对未知数据做决策,如果获取训练数据是不具有总体代表性的,那规律就会总结得不好或是错误,因为这些规律是由个例推算的,不具有推广的效果(模型鲁棒性、泛化性差)。因此,IID数据,说明我们用来训练的样本点具有较好的总体代表性,或者说数据质量好;但数据IID的假设在实际场景(AIoT场景下)很难成立,云端训练的样本点很难较好地代表边端推理将要面对的样本,造成了数据质量的鸿沟,也就导致了模型精度的“不合预期”。
从解决方案的角度来讲,应对云-边数据Non.IID,也就是应对云端训练和边端推理之间的“dataset shift”。了解Non.IID或者dataset shift的分类,将有助于后续采用哪些技术来解决它们。
首先,用数学来定义一个有监督判别式机器学习任务:P(X)输入空间的边缘概率分布,P(y)输出空间的标签分布,以及表示该机器学习任务的条件概率分布P(y|X)或P(X|y)。当上述三者之一发生了变化(等价于联合分布P(X,y)发生了变化),我们就认为其发生了数据集偏移(dataset shift)。
根据分布偏移的类型可以将将其分为三种:
① 协变量偏移:指输入空间分布P(X)发生变化,但决策边界或者说假设空间并没有发生变化,即Ps(y|X)=Pt(y|X)
② 先验概率偏移:指输出空间分布P(y)发生变化,但决策边界或者说假设空间并没有发生变化,即Ps(y|X)=Pt(y|X)
③ 概念偏移:指决策边界或者说假设空间发生变化,即Ps(y|X)≠Pt(y|X)
参考文献:
[1] Li Q, Diao Y, Chen Q, et al. Federated learning on non-iid data silos: An experimental study[J]. arXiv preprint arXiv:2102.02079, 2021.
[2] Kairouz P, McMahan H B, Avent B, et al. Advances and open problems in federated learning[J]. arXiv preprint arXiv:1912.04977, 2019.
[3] Hsu T M H, Qi H, Brown M. Federated visual classification with real-world data distribution[C]//Computer Vision–ECCV 2020: 16th European Conference, Glasgow, UK, August 23–28, 2020, Proceedings, Part X 16. Springer International Publishing, 2020: 76-92.
[4] Dataset shift in machine learning[M]. Mit Press, 2008.
[5] Moreno-Torres J G, Raeder T, Alaiz-Rodríguez R, et al. A unifying view on dataset shift in classification[J]. Pattern recognition, 2012, 45(1): 521-530.
[6] Lu J, Liu A, Dong F, et al. Learning under concept drift: A review[J]. IEEE Transactions on Knowledge and Data Engineering, 2018, 31(12): 2346-2363.
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!