科技实验室▲你的深度学习进阶路径,谷歌大脑开源Trax代码库
谷歌大脑开源Trax代码库 , 你的深度学习进阶路径

文章图片
机器之心Pro
1582785422机器之心报道
参与:思
感觉深度学习建模只不过调库与堆叠层级?你需要谷歌大脑维护的这条路径Trax , 从头实现深度学习模型 。
从最开始介绍卷积、循环神经网络原理 , 到后来展示各种最前沿的算法与论文 , 机器之心与读者共同探索着机器学习 。 我们会发现 , 现在读者对那些著名的深度学习模型已经非常熟悉了 , 经常也会推导或复现它们 。
而对于最前沿的一些实现 , 包括Transformer或其它强化学习 , 我们通常都需要看原作者开源的代码 , 或者阅读大厂的复现 。 出于速度等方面的考虑 , 这些实现通常会显得比较「隐晦」 , 理解起来不是那么直白 。 这个时候 , 你就需要谷歌大脑维护的Trax , 它是ML开发者进阶高级DL模型的路径 。
Trax是一个开源项目 , 它的目的在于帮助我们挖掘并理解高一阶的深度学习模型 。 谷歌大脑表示 , 该项目希望Trax代码做到非常整洁与直观 , 并同时令Reformer这类高阶深度学习达到最好的效果 。
项目地址:https://github.com/google/trax
什么是Trax
简单来说 , Trax就是一个代码库 , 它有点类似于一个极简的深度学习框架 。 只不过Trax关注什么样的代码能让读者更好地理解模型 , 而不只是关注加速与优化 。
Trax代码及其组织方式希望让我们从头理解深度学习 , 而不只是简单地调库 。 整个项目从最基础的数学部分开始 , 然后向上依次构建层级运算、模型运算 , 以及有监督与强化学习训练任务 。
因为是进阶深度学习高级建模 , Trax还囊括了最前沿的研究结果 , 例如在ICLR2020上做演讲报告的Reformer 。 如下展示的是该项目的代码文件结构:
【科技实验室▲你的深度学习进阶路径,谷歌大脑开源Trax代码库】如果要从头理解并进阶深度学习 , 那么Trax代码主要可以分为以下6部分:
math/:最基本的数学运算 , 以及通过JAX和TensorFlow加速运算性能的方法 , 尤其是在GPU/TPU上;layers/:搭建神经网络的所有层级构建块;models/:包含所有基础模型 , 例如MLP、ResNet和Transformer , 还包含一些前沿DL模型;optimizers/:包含深度学习所需要的最优化器;supervised/:包含执行监督学习的各种有用模块 , 以及整体的训练工具;rl/:包含谷歌大脑在强化学习上的一些研究工作;每一个文件夹下都有对应的实现 , 例如在Layers中 , 所有神经网络层级都继承自最基础的Layer类 , 实现这个类花了700行代码 。 而后新的层级在继承它后只要实现以下两个方法就行:
通过900行代码(包括Err处理) , 基础的Layer类能完成其它所有处理 , 包括初始化与调用等 。
使用Trax
我们可以将Trax作为Python脚本库或者JupyterNotebook的基础 , 也可以作为命令行工具执行 。 Trax包含很多深度学习模型 , 并且绑定了大量深度学习数据集 , 包括Tensor2Tensor和TensorFlow采用的数据集 。 同时 , 如果我们在CPU、GPU或TPU上运行这些模型 , 也不需要改变 。
如果读者想要了解如何快速将Trax作为一个库来使用 , 那么可以看看如下Colab上的入门示例 。 它介绍了如何生成样本数据 , 并连接到Trax中的Transformer模型 。 在训练或推断时 , 我们可以选择GPU , 也可以选择8核心的免费TPU 。
入门简介地址:
https://colab.research.google.com/github/google/trax/blob/master/trax/intro.ipynb
如果要在命令行中使用Trax , 那么带上参数就可以了 , 例如模型类型、学习率等超参 。 谷歌大脑团队建议我们可以看看gin-config , 例如训练一个最简单的MNIST分类模型 , 可以看看mlp_mnist.gin , 然后如下运行就行了:
推荐阅读
- 「定焦爱科技」3拯救低电量焦虑症,超大电池搭配超快闪充,续航出色的iQOO
- #科技小李#小屏爱好者嗨起来,4.7寸新iPhone确认四月发布,价格是大亮点!,原创
- 中国网科技@撤出液晶面板生产,三星将关闭两座工厂
- #即科技#107国赞同票作废!,想“加入”联合国?中国使用一票否决
- 【腾讯科技】全球应用市场第一季度大爆发:花费达234亿美元创纪录 时长增20%
- 即科技■决定权掌握在中国手,?联合国五常将变六常?此国获美俄一致力挺
- [笔记本电脑]乙辰科技正式发布首款WiFi6新品:北斗II号分布式无线路由器
- 『极速聊科技』目前仅剩10余人,暴风集团:员工持续大量流失
- 【科技生活快报】普京:已与欧佩克和美国就石油价格下跌问题进行讨论
- 「科技小数据」消费信贷的客户呈现出年轻化的趋势,新消费崛起
