作家
登录

深度学习真的可以零基础入门吗?

作者: 来源: 2017-09-18 13:16:20 阅读 我要评论

51CTO诚邀您9月23号和秒拍/国美/美团云专家一路聊智能CDN的优化之路,抓紧时光哦!


深度进修真的可以零基本入门吗?

有人如是问

  1. 深度进修——我该大年夜哪里开端呢?
  2. TensorFlow 是如今最风行的吧?
  3. 我据说 Caffe 很常用,但会不会太难了?

TensorFlow

对于那些据说过深度进修但还没有太过专门深刻的仁攀来说,TensorFlow 是他们最爱好的深度进修框架,但在这里我要澄清一些事实。

在 TensorFlow 的官网上,它被定义为「一个用于机械智能的开源软件库」,但我认为应当这么定义:TensorFlow 是一个应用数据流图(data flow graphs)进行数值计算的开源软件库。在这里,他们没有将 TensorFlow 包含在「深度进修框架」范围内,而是和 Theano 一路被包含在「图编译器(graph compilers)」类别中。

到今朝为止,很多我知道也很风行的框架和库我还没有效过,我不克不及给出更多具体的细节。

Theano

Theano 是最老牌和最稳定的库之一。据我所知,深度进修库的开端不是 Caffe 就是 Theano。

和 TensorFlow 类似,Theano 是一个比教逑点的库。也是以它并不合适深度进修,而更合适数值计算优化。它支撑主动的函数梯度计算,带有 Python 接口并集成了 Numpy,这使得它大年夜一开端就成为了通用深度进修范畴最常应用的库之一。

Keras

诚实说,在此之前我并没有很存眷 mxnet。然则当亚马逊 AWS 宣布选择 mxnet 作为其深度进修 AMI 的库时触发我开端存眷 mxnet。我必须去懂得一下。后来我获知亚马逊把 mxnet 列为其深度进修的参考库并传播鼓吹其巨大年夜的横向扩大才能。我感到到这琅绫擎有一些新的改变产生并且我必须深刻懂得。这也是为什愦我们 2017 的 BEEVA 的技巧测试名单里有 mnxet 的原因。

「You have just found Keras.」

膳绫擎这句话是你打开文档页面时看到的第一句话。在起步时就已经有了足够的深度进修常识,但我没有时光本身手动编写功能,也没有时光摸索和进修一个新的库(截止时光不到 2 个月,而我还有课要上)。然后我发清楚明了 Keras。

在停止了 Udacity 的 Deep Learning 课程(https://www.udacity.com/course/deep-learning–ud730)之后,我的感到是TensorFlow 是一个异常好的框架,然则却异常低层。应用 TensorFlow 须要编写大年夜量的代码,你必须一遍又一遍地从新创造轮子。并且我并不是独一一个这么想的人。

我真的很爱好 Keras,因为它的句法是相当了了的,它的文档也异常好(尽管相对较新),并且它支撑我已经控制的说话 Python。它的应用异常简单轻松;我们也能很直不雅地懂得它的指令、函数和每个模块之间的链接方法。

Lasagne

Lasagne 是一个工作在 Theano 之上的库。它的任务是简化一点深度进修算法之下的复杂计算,同时也供给了一个加倍友爱的接口(也是 Python 的)。这是一个老牌的看维并且很长时光以来它都是一个扩大才能很强的对象;但在我看来,它的成长速度赶不上 Keras。它们的实用范畴都差不多,但 Keras 有更好的文档、也更完全。

Caffe

Caffe 不只是最老牌的框架之一,而是老牌中的老牌。

在我看来,Caffe 有异常好的特点,但也有一些小缺点。起先的时刻它并不是一个通用框架,而仅仅存眷计算机视觉,但它具有异常好的通用性。在我们实验室的实验中,CaffeNet 架构的练习时光在 Caffe 中比在 Keras 中(应用了 Theano 后端)少 5 倍。Caffe 的缺点是它不敷灵活。如不雅你想给它来一点新改变,那你就须要应用 C++ 和 CUDA 编程,不过你也可以应用 Python 或 Matlab 接口进行一些小改变。

Caffe 的文档异常穷困。你须要花大年夜量时光检查代码才能懂得它(Xavier 初始化有什么竽暌姑?Glorot 是什么?)

Caffe 的最大年夜缺点之一是它的安装。它须要解决大年夜量的依附包……我曾经安装过 Caffe 两次,真正苦楚至极。

但要清跋扈,Caffe 并不是一无可取。在投入了临盆的计算机视觉体系的对象上,Caffe 是无可争议的引导者。它异常稳健异常快速。我的建议是:用 Keras 进行实验和测试,然后迁徙到 Caffe 中进行临盆。

DSSTNE

DSSTNE 的发音同 Destiny,是一个酷劲实足的框架却老是被忽视。为什么?除去其他的身分不谈,原因在于这个框架不具有普适性,不是为一般常见义务所设计的。DSSTNE 框架只做一件事——推荐体系,但把这件事做到了极致。既不是为研究而设计,也不是为测试 idea 而设计(来源其官方网站的宣传语),DSSTNE 框架是为量产而设计。

我们已在 BEEVA 上做一些实验测试了,今朝我已经感到到这是一个运行异常快的对象并且可以或许获得异常好的运行结不雅(平均精确率均值——mAP 很高)。为了达到这一速度,DSSTNE 框架用 GPU 运行,这也是它的弊病之一:不合于篇平分析的其他框架或者库,这个框架不支撑应用者随便在 CPU 和 GPU 中切换,而这可能会对有些测验测验有效,但我们在 DSSTNE 里做如许的测验测验时是不被框架所许可的。

还想解释一点,这个框架对编程才能没有请求。DSSTNE 框架经由过程其终端的敕令行来履行相干操作。

Torch

在这个世界上天天如有很多战斗,然则一个优良的「勇士」(西班牙语「Guerrero」)必须熟知哪些战斗是须要去参加作战的,哪些是可以选择不介入的。

Torch 是一个很有名的框架,因巨擘 Facebook 的人工智能研究所用的框架是 Torch,并且在被谷歌收购之前 DeepMind 也是用的 Torch(收购之后 DeepMind 转向了 TensorFlow)。Torch 的编程说话是 Lua,这就是我刚才所谈的「战斗」的具体所指。在今朝深度进修编程说话绝大年夜部分以 Python 实现为主的大年夜趋势下,一个以 Lua 为编程说话的框架的最大年夜劣势莫过于此。我大年夜未竽暌姑应用过这个说话,如不雅我想应用 Torch 这个对象,毫无疑问我须要先进修 Lua 说话然后才能应用 Torch。这固然是一个合理的过程,但就我小我情况来说,我偏向于用 Python、Matlab 或者 C++的实现。


  推荐阅读

  Python开发者2017应该关注的7个类库

最开端的时刻是由 AWS Lambda 带来了无办事架构。而 Zappa 则被认为是改进了的 Python web 应用安排的法度榜样。 Rich Jones 是 Zappa 的重要作者,并且是 Gun.io 的 CTO,他在一次查访中说道:“我信赖无办事>>>详细阅读


本文标题:深度学习真的可以零基础入门吗?

地址:http://www.17bianji.com/lsqh/37481.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)