用户登录
用户注册

分享至

tensorflow tflearn

  • 作者: 樱花落22770968
  • 来源: 51数据库
  • 2020-10-05
首先它们都是把神经网络抽象成不同的Layer,以便用户自定义网络。

Keras
优点:Theano时代就推出了,使用者较多,有个人维护的中文文档,虽然更新很慢。纯scikit-learn式编程,隐藏了数据流的细节,数据流没有叙述的很清楚,到目前为止,并没有理解keras的时间数据输入方式...
缺点:运行TensorFlow时很慢,拓展性差(国外测评说是因为 Keras 最开始只是为了 Theano 而开发的,TensorFlow发布后才写支持TensorFlow的代码,所以为了兼容牺牲了效率)。不适合科研单位和企业,换句话说毕业以后要重新学另外一个框架..... 复杂的情况会出现error,这时候调试只能靠运气了。。

TensorLayer
优点:对学术界的优势是灵活性很强,甚至可以很简单地实现动态网络结构(Neural Modular Network).... 对工业界的优势是运行速度快。教程很强大,还包含了 Google TensorFlow 官网的模块化实现。同时提供scikit-learn式的API,和专业级的API,适合新手到老手过渡。
缺点:刚刚推出(16年8月份)使用者少,但我发现中文使用者不少,有很多微信群、qq群可以交流,有可能和TL官方推出中文文档有关。

Tflearn
优点:不像Keras那样兼容两种后端,所以效率比 Keras 快,但根据国外测评还是比 TensorLayer慢一些。
缺点:维护不好,作者居然在github issues那里说 “有时间再实现 seq2seq”,我晕... 有对话为证Seq2Seq Machine Translation · Issue #120 · tflearn/tflearn · GitHub

国外对 TensorLayer 和 Keras 比较的结论基本是企业界和学术界使用 TensorLayer+TensorFlow 搭配,学生使用Keras(若未来想从事机器学习的工作,我个人建议还是好好看下TensorFlow吧)。

个人观点:学习 TensorFlow 是一个大趋势,题主提到的库都是基于 TensorFlow 开发的,选择一个库非常关键。若想熟练掌握深度学习,不妨先学习下 TensorFlow 本身
软件
前端设计
程序设计
Java相关