0. 前言
之前的课程里介绍了自然语言处理当中的一些问题,以及设计出来的一些相应的算法。research 的东西还是落地到工程应用上比较有价值,之前也手撸过一些 toy project,不过这些实现要用在工程中,总是有那么些虚的,毕竟稳定性和效率未必能够保证。所幸的是,深度学习热度持续升温的大环境下,各种大神和各家大厂也陆续造福民众,开源了一些深度学习框架,在这些开源框架的基础上去搭建和实现自己想要的深度学习网络结构就简单和稳定得多了。
有时候选择多了也是麻烦,对框架感兴趣的同学可以查看 深度学习框架对比维基百科 中对 12 个开源的 package 比对。这里简单提几个最常见和可能会用到的深度学习开源框架的特点。
caffe 提供了很便捷的神经网络搭建和命令行工具,加之 model zoo 里面大量预训练好的模型(主要是图像相关的) 可以做 fine-tuning,因此使用在图像相关的研究和应用上非常方便。
Theano 以及搭建于其之上的 Keras 和 Lasagne 似乎颇受 research 派系同学的偏爱,自动求导是它的优势之一。
MXnet 对显存的利用率高,并且支持 C++, Python, Julia, Matlab, JavaScript, Go, R, Scala 这么多种语言,编写起来也比较简易。
Torch 是 facebook 用的深度学习 package,定义新网络层比较简单,不过 Lua 倒不算大家熟知的编程语言。
Tensorflow 是 Google 提供资金研发的,比较全,支持分布式,同时有 Google 这样的亲爹在,我猜资源倾斜也是迟早的事情。
今天的重点自然是 Tensorflow,其他的框架也都很好,大家可以自行尝试。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论