联合学习在传统机器学习方法中的应用

在大数据和分布式计算时代,传统的机器学习方法面临着一个重大挑战:当数据分散在多个设备或竖井中时,如何协同训练模型。这就是联合学习发挥作用的地方,它提供了一个很有前途的解决方案,将模型训练与直接访问原始训练数据脱钩。
联合学习最初旨在实现去中心化数据上的协作深度学习,其关键优势之一是其通信效率。这种相同的范式可以应用于传统的 ml 方法,如线性回归、 svm 、 k-means 聚类,以及基于树的方法,如随机森林和 boosting 。
开发传统 ml 方法的联合学习变体需要在几个层面上进行仔细考虑:
算法级别:您必须回答关键问题,例如客户端应该与服务器共享哪些信息,服务器应该如何聚合收集的信息,以及客户端应该如何处理从服务器接收的全局聚合模型更新。
实施级别:探索可用的 api 并利用它们来创建与算法公式一致的联邦管道是至关重要的。
值得注意的是联邦的和分布式的与深度学习相比,传统方法的机器学习可能不那么独特。对于某些算法和实现,这些术语可以是等效的。
图 1 。对基于联邦树的 xgboost
在图 1 中,每个客户端构建一个唯一的增强树,该树由服务器聚合为树的集合,然后重新分发给客户端进行进一步的训练。
要开始使用显示此方法的特定示例,请考虑k-means聚类示例。在这里,我们采用了mini-batch k-means聚类中定义的方案,并将每一轮联合学习公式化如下:
本地培训:从全局中心开始,每个客户端都用自己的数据训练一个本地的 minibatchkmeans 模型。
全局聚合:服务器收集集群中心,统计来自所有客户端的信息,通过将每个客户端的结果视为小批量来聚合这些信息,并更新全局中心和每个中心的计数。
对于中心初始化,在第一轮中,每个客户端使用 k-means ++方法生成其初始中心。然后,服务器收集所有初始中心,并执行一轮 k 均值以生成初始全局中心。
从制定到实施
将联邦范式应用于传统的机器学习方法虽然说起来容易,但做起来却很困难。nvidia 新发布的白皮书 《联合传统机器学习算法》 提供了许多详细的示例,以展示如何制定和实现这些算法。
我们展示了如何使用流行的库,如scikit-learn和xgboost,将联邦线性模型、k-means聚类、非线性svm、随机森林和xgboost应用于协作学习。
总之,联合机器学习为在去中心化数据上协同训练模型提供了一种令人信服的方法。虽然通信成本可能不再是传统机器学习算法的主要约束,但要充分利用联合学习的好处,仍然需要仔细制定和实施。

4GB 的进程虚拟地址空间被分成哪两部分?
国家重点节能低碳技术LED照明典型案例
在家中如何保证不触电呢
电阻的作用和工作原理 电阻发热的原理
瞄准高“研”值项目!河源市第二届创新创业大赛即将启动
联合学习在传统机器学习方法中的应用
AMD Versal系列CIPS IP核建立示例工程
物联网智慧杆云平台的功能优势
电池快充技术解析
面向NLP任务的迁移学习新模型ULMFit
7纳米制程!下一代移动平台即将来袭
如何检测电容器的好坏
海南电网圆满实现了全国首个智能电网示范省新三年建设计划
2000员工集体向车企讨薪!
怎么构建CPU这个非0即1的开关世界
09年半导体业全线飘绿 业内戏谑“半倒体”
直流固体继电器的制作
如何区分Info封装与CoWoS封装呢?
全方位测评奥迪A8L 55TFSI
iPhone9真的上市发售,你觉得售价多少比较合适呢?