zoukankan      html  css  js  c++  java
  • 如何比较Keras, TensorLayer, TFLearn ?——如果只是想玩玩深度学习,想快速上手 -- Keras 如果工作中需要解决内部问题,想快速见效果 -- TFLearn 或者 Tensorlayer 如果正式发布的产品和业务,自己设计网络模型,需要持续开发和维护 -- Tensorlayer

    转自:https://www.zhihu.com/question/50030898/answer/235137938

    如何比较Keras, TensorLayer, TFLearn ?



    这三个库主要比的是API设计水平,不得不说原始的 Tensorflow API的确反人类,我承认它的完善、表达能力强,性能好,但是接口设计对人类非常不友好。

    这就给了做高层抽象API封装的生存空间,Keras Tensorlayer TFLearn 是目前比较成熟的几个库。

    做个比喻,Tensorflow就像当年的 Win32 API,功能强大但是难以使用,随便做点小事情就要写很多代码,我清楚记得我写个显示空白窗口的程序就要40来行。

    Tensorlayer比较像 WTL,把一些繁琐的代码封装成更容易使用的接口,但是仍然保留了对底层API调用的能力,抽象的层次不高,仍然可以看到底层的 数据结构和网络结构。比如 可以看到 Session和Placeholder等。

    TFLearn比较像 MFC,抽象的层次更高,创造了自己的一套子语法,代码可读性更好,屏蔽了底层难以理解的东西。

    Keras比较像 Qt,很高的抽象层次,甚至跨越了多个深度学习框架,完全看不到底层的细节了,甚至某些情况需要触碰底层的对象和数据反而非常麻烦。

    不同的抽象层次带来不同的学习难度,适应不同的需求。

    基本建议:

    如果只是想玩玩深度学习,想快速上手 -- Keras

    如果工作中需要解决内部问题,想快速见效果 -- TFLearn 或者 Tensorlayer

    如果正式发布的产品和业务,自己设计网络模型,需要持续开发和维护 -- Tensorlayer

    以上只是个人建议,具体情况因人而异。

  • 相关阅读:
    Android开发历程_8(Tween Animation的2种属性设置方法)
    Kinect+OpenNI学习笔记之1(开发环境的建立)
    Android开发历程_12(Handler的使用)
    Qt学习之路_11(简易多文档编辑器)
    特征点检测学习_1(sift算法)
    Android开发历程_9(Frame Animation的使用)
    Qt学习之路_13(简易俄罗斯方块)
    总结系列_12(XML使用总结,续...)
    Android开发历程_11(AnimationListener的使用方法)
    Android开发历程_18(XML文件解析)
  • 原文地址:https://www.cnblogs.com/bonelee/p/7903615.html
Copyright © 2011-2022 走看看