开发者社区> 虎说八道> 正文

新工具——TensorLayer:管理深度学习发展的复杂性

简介: 本文介绍了一种新基于TensorFlow的python库——TensorLayer,它能够有效的帮助开发者管理好自己的深度学习网络。并且它还提供了很多功能强悍的API,帮助开发者更好的完成任务。
+关注继续查看
更多深度文章,请关注:https://yq.aliyun.com/cloud

对于深度学习开发者来说,深度学习系统变得越来越复杂。以至于我们需要使用轻量级的工具从头到尾来管理流程,为了将更多的连续学习内置到神经网络中,这就要求我们建立可以迭代增强的更有弹性的数据集以及更多的动态模型。

深度学习开发人员必须花费大量的时间来整合神经网络的组件,管理模型生命周期,组织数据和调整系统并行度等等。随着使用新的培训样本后,人类对于神经网络模型的见解,更新模型和跟踪其变化的能力就变得非常必要了。为此伦敦帝国理工学院的一个团队开发了一个python库来管理跨学科开发人员项目的复杂迭代过程。

为了更好地管理开发过程,该团队开发了一个通用的Python库——TensorLayer。这个库集成了很多开发过程中包括的方法,其中包括(操作、模型生命周期、并行计算、失败)都以模块化进行抽象。这些模块包括以下功能:用于管理神经网络层、用于管理模型和其生命周期、用于管理数据集、最后是解决容错的工作流模块。而TensorFlow是培训和推理的核心平台,它为MongoDB提供了存储空间。这些API的使用可以在文末链接中查看,正是由于这些API的存在,TensorLayer才会如此的强大。

3601c981327055a722f76f39b4698ee115dcb003

深度学习的开发人员可以借助TensorLayer的功能编写了多媒体应用程序。这些功能包括提供和导入层实现,构建神经网络,管理模型生命周期,创建在线或离线数据集,以及编写训练计划。这些功能分为四个模块:层,网络,数据集和工作流。

该团队表示,虽然像Keras和TFLearn这样的工具现在很有用,但它们并不像网络那样可以随网络的扩张变得更复杂甚至无限制的迭代。它们提供了必要的抽象,以降低使用工具的门槛,但又掩盖了很多底层的算法。虽然对开发者有好处,但是相对来说底层技术就变得难以调整和修改,而底层技术的修改和调整,这在解决许多现实世界的问题上是非常必要的。

与Keras和TFLearn相比,TensorLayer不仅提供了高级抽象,而且提供了包括数据预处理、训练、训练后处理,以及服务模块和数据库管理在内的端到端工作流程,这些是开发者建立一个完整模型所需要的全部过程。

TensorLayer倡导更灵活且可组合的范式:神经网络库可以与本机引擎交换使用。这允许开发者轻松地利用预建模块,而且不会影响可见性。这种非侵入性也使得与其他TF的包装器如TF-Slim和Keras合并成为了可能。并且开发小组认为,灵活性不会影响性能。

该小组在文档中中强调了许多应用,其中还提供了有关每个模块、整体架构和当前开发的详细信息。应用包括生成对抗网络、深层加强学习、最终用户环境中的超参数调优。自去年GitHub发布以来,TensorLayer已经被用于多模式研究、图像转换和医疗信号处理。

TensorLayer正处于积极的发展阶段,而且从开放社区获得了许多贡献。它已被伦敦帝国理工学院,卡内基梅隆大学,斯坦福大学,清华大学,加州大学洛杉矶分校等大学研究人员广泛使用,还包括谷歌,微软,阿里巴巴,腾讯,ReFULE4,彭博等许多工程师。

TensorLayer安装:

TensorLayer需要一些预安装库, TensorFlow  numpy  matplotlib 对于 GPU 加速,需要安装 CUDA  cuDNN

如果你遇到麻烦,可以查看 TensorFlow 安装手册 ,它包含了在不同系统中安装 TensorFlow 的步骤。

如需了解更多关于TensorFlow 的相关功能,请点击:TensorLayer 中文文档

本文由北邮@爱可可-爱生活老师推荐,@阿里云云栖社区组织翻译。

文章原标题《Managing Deep Learning Development Complexity

作者:Nicole Hemsoth 译者:袁虎 审阅:阿福

文章为简译,更为详细的内容,请查看原文

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
浅析图数据库 Nebula Graph 数据导入工具——Spark Writer
本文主要讲解 Nebula Graph 基于 Spark 的分布式数据导入工具—— Spark Writer,它基于 DataFrame 实现,能够将多种数据源中的数据转化为图的点和边批量导入到图数据库中
399 0
网络管理工具提供的软件包和相关配置文件_学习笔记
时间:2017.12.09作者:李强参考:man,info,magedu讲义,万能的internet实验环境:CentOS 6.9与CentOS7.4声明:以下英文纯属个人翻译,英文B级,欢迎纠正,以下内容纯属个人理解,并没有对错,只是参考,盗版不纠,才能有限,希望不误人子弟为好。
655 0
Supervisor管理进程
Supervisor管理进程 转载 2016年04月14日 18:26:45 标签: supervisord 28344 Supervisor重新加载配置启动新的进程 liaojie 发布于 1年前,共有 0 条评论 一、添加好配置文件后 二、更新新的配置...
761 0
装机人员工具 - imsoft.cnblogs
链接:http://pan.baidu.com/s/1i3kgpAP 密码:4uzr
573 0
+关注
51
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载