一个开源框架,用于在分布式数据上执行机器学习和其他计算。
项目描述
TensorFlow Federated
TensorFlow Federated (TFF) 是一个开源框架,用于在分布式数据上执行机器学习和其他计算。TFF的开发旨在促进对联邦学习(FL)的开放研究和实验,这是一种机器学习方法,其中共享的全局模型在许多参与客户端之间进行训练,这些客户端保留其本地训练数据。例如,FL已用于训练移动键盘预测模型,而无需将敏感的打字数据上传到服务器。
TFF使开发者能够使用包含的联邦学习算法与他们的模型和数据一起使用,并可以尝试新算法。TFF提供的构建块还可以用于实现非学习计算,例如对分布式数据的聚合分析。
TFF的接口分为两层
-
联邦学习 (FL) API
tff.learning
层提供了一套高级接口,允许开发人员将联邦训练和评估的实现应用于现有的 TensorFlow 模型。 -
联邦核心 (FC) API 系统的核心是一组低级接口,通过在强类型函数式编程环境中将 TensorFlow 与分布式通信操作符结合,简洁地表达新的联邦算法。这一层也构成了我们构建
tff.learning
的基础。
TFF 允许开发人员声明式地表达联邦计算,以便它们可以被部署到不同的运行环境。TFF 内部包含了一个单机模拟运行时环境,用于实验。请访问教程并亲自尝试!
安装
请参阅安装文档,了解如何以软件包的形式安装 TensorFlow Federated 或从源代码构建 TensorFlow Federated。
入门
请参阅入门文档,了解如何使用 TensorFlow Federated。
贡献
根据您的兴趣,有多种贡献方式。
-
如果您对开发新的联邦学习算法感兴趣,最佳开始方式是研究
tff.learning
中联邦平均和评估的实现,并考虑对现有实现(或替代方法)的扩展。如果您有一个新算法的提案,我们建议您在research
目录中启动您的项目,并包括一个 colab 笔记本来展示新功能。您还可能希望在自己的仓库中开发新的算法。我们乐于在 tensorflow.org/federated 上展示使用 TFF 的学术出版物和/或仓库。
-
如果您对应用联邦学习感兴趣,考虑贡献教程、新的联邦数据集或其他人可以用于实验和测试的示例模型,或者编写其他人可以用于设置模拟的辅助类。
-
如果您想帮助我们改进开发人员体验,最佳开始方式是研究
tff.learning
API 背后的实现,并思考如何使代码更简洁。您可以贡献基于 FC API 的辅助类或建议对 FC API 本身的扩展。 -
如果您想帮助我们开发模拟和更多领域的运行时基础设施,请等待未来的版本,我们将介绍用于贡献模拟基础设施的接口和指南。
请务必审查贡献指南,了解如何贡献。
问题
请使用 GitHub issues 跟踪请求和错误。
问题
请通过 Stack Overflow 使用 tensorflow-federated 标签提出问题。
项目详情
哈希值 for tensorflow_federated-0.87.0-py3-none-manylinux_2_31_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7d6f66b4afb5fdf94fc790fd4610b9e216b2f124a2643d7852ed44e5ed218c56 |
|
MD5 | f5fe1e2d7da5086c1541bc1f2f381d18 |
|
BLAKE2b-256 | 38cff6b553b38d66282c8b89d4fa9fed719f9a022330c54923933ed2e7c7c3f9 |