前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >TensorFlow插件介绍

TensorFlow插件介绍

作者头像
云水木石
发布2019-07-30 18:49:24
3.7K0
发布2019-07-30 18:49:24
举报

AIDog的改造仍在进行中,抽空翻译一篇TensorFlow的文档。本文翻译自TensorFlow官方文档:Introducing TensorFlow Addons,原文链接:https://medium.com/tensorflow/introducing-tensorflow-addons-6131a50a3dcf

什么是SIG插件?

随着TensorFlow 2.0的推出,我们创建了一个名为TensorFlow Addons的新别殊兴趣小组(Special Interest Group, SIG)。该小组管理符合既定API模式的贡献代码库,但实现了核心TensorFlow中没有的新功能。比如,这些新功能可以是来自已发表论文中的新算法或数据预处理和过滤所缺少的功能。请前往Github查看该项目:

https://github.com/tensorflow/addons

作为社区管理的SIG,Addons使用户能够以可持续的方式为TensorFlow生态系统引入新的扩展。代码库遵循模块化方法,子包和子模块由指定的社区成员维护。截至到目前,这些子包包括:

  • tfa.activations
  • tfa.callbacks
  • tfa.image
  • tfa.layers
  • tfa.losses
  • tfa.metrics
  • tfa.optimizers
  • tfa.rnn
  • tfa.seq2seq
  • tfa.text

TensorFlow Addons社区的另一个目标是通过Google Colab笔记本提供所有功能的文档和示例。这将不仅有助于新开发人员和机器学习爱好者了解功能,还将为他们提供最佳实践方法和实施示例。

TensorFlow Addons使用四个平台进行组织和沟通:

  • GitHub用于代码协作和问题管理
  • 使用邮件列表进行一般公告和讨论
  • Gitter在社区和贡献者之间进行快速沟通
  • 每月视频会议进行战略讨论
从tf.contrib移出

该项目的目标可能听起来很熟悉,而且Addons确实是tf.contrib(它已被移出中央TensorFlow代码库)的大部分着手点。在过去几年中,由于文档的原因,tf.contrib中的许多代码变得陈旧,无法维护,复杂且难以使用。tf.contrib中创建了许多自定义API,这使得将这些功能集成到代码中变得更加困难。通过将最相关的算法移动到TensorFlow-Addons并清理它们,您在tf.contrib中使用的大部分代码也将在插件中提供。此外,许多新功能已经成为TF-Addons的一部分,并且还有更多计划。

如何安装

TensorFlow Addons为macOS和Linux提供了一个pip包,计划在未来支持Windows和Anaconda。当前请尝试使用tensorflow-2.0的最新版本:

pip install tensorflow-addons

要在Python代码中使用TensorFlow-addons,您只需导入包:

import tensorflow as tf
import tensorflow_addons as tfa
代码库的可持续性

为了确保TensorFlow插件不会变成陈旧的代码,引入了子包和子模块维护者来管理代码库的各个部分。这些维护者具有以下职责:

  • 定期查看和弃用旧的和未使用的代码
  • 管理TensorFlow Core的毕业生候选人
  • 确保API符合性和测试/代码质量
  • 管理问题列表
  • review更改提交

有关代理维护者系统细节的更多信息可以在最近通过的关于Addons可持续性的RFC中找到:

https://github.com/tensorflow/community/blob/master/rfcs/20190308-addons-proxy-maintainership.md

我们希望引入维护者和定期审查来保持该代码库的质量,使TensorFlow插件在未来几年成为TensorFlow生态系统中众所周知且可用的部分。

如何贡献

为TensorFlow Addons做出贡献是一种很好的方式,让您熟悉ML领域的最新进展,以及熟悉TF2最佳实践的方法。

新贡献者的一个良好开端是阅读TensorFlow Addons GitHub代码库中的CONTRIBUTING.md文档。本文档介绍了审阅过程、编码风格以及如何设置开发环境。熟悉了此代码库的一般结构后,您可以查看问题列表(issues)部分并选择您想要处理的问题。标记为帮助的问题和优先需要解决的问题是一个很好的起点。我们还鼓励使用Google Colab提供示例和最佳实践。

请在开始工作之前对相应问题发表评论或打开新问题,以避免多次贡献或与路线图不一致的工作。之后,只需fork Addons代码库,实现代码并在完成后打开pull请求。其中一个维护者将检查您的更改,并在完成后将它们合并到主分支中。

TFA示例

了解如何将插件与核心TensorFlow无缝集成: https://github.com/tensorflow/addons/blob/master/examples/losses_triplet.ipynb

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-07-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云水木石 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是SIG插件?
  • 从tf.contrib移出
  • 如何安装
  • 代码库的可持续性
  • 如何贡献
  • TFA示例
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档