深度学习如何入门?
具体的入门方式取决于您已经掌握的知识。
要理解并应用深度学习,必须先掌握线性代数、微积分和统计学,还应当具备编程及机器学习的知识。
就Deeplearning4j而言,您应当熟悉Java语言,并且熟练掌握IDE工具IntelliJ。
以下是相关学习资源的列表。本页中的段落大致按学习的顺序排列。
免费的机器学习和深度学习网络课程
- Coursera上的机器学习课程,Andrew Ng主讲
- Coursera上的神经网络课程,Geoff Hinton主讲
- MIT人工智能导论,Patrick Winston主讲(供希望了解人工智能概况的用户参考。)
- 斯坦福卷积神经网络课程,Andrej Karpathy主讲(供希望了解图像识别的用户参考。)
数学
- Andrew Ng的六节线性代数复习课
- 可汗学院的线性代数课程
- 机器学习中的线性代数;Patrick van der Smagt主讲
- CMU的线性代数回顾
- 《机器学习中的数学》
- 《沉浸式线性代数教程》
- 《概率论速查手册》
- 线性代数读物精选
- 马尔可夫链解析
- 《机器学习中的马尔可夫链蒙特卡洛算法导论》
编程
如果您还未掌握如何编程,建议您不要从Java语言开始学习。Python和Ruby的反馈速度快,学习这两种语言更容易掌握编程的基本理念。
- 《笨办法学Python》
- 《Learn to Program (Ruby)》
- 命令行入门教程
- 命令行补充教程
- Vim教程与基础知识(Vim是一种基于命令行的编辑器。)
- 计算机科学导论(哈佛edX课程CS50)
- 《计算机基本原理浅析》
如果您希望跳过Java语言,直接开始使用深度学习,我们推荐Theano和建立在其基础上的各类Python框架,包括Keras和Lasagne。
Java
掌握了编程的基础知识后,下一个需要攻克的目标是Java语言——世界上使用最广泛的编程语言,Hadoop也是用Java编写开发的。
Deeplearning4j
具备上述知识后,我们建议您通过示例来学习Deeplearning4j。
完成指南中的设置步骤并理解这一API之后,您就可以进行完全安装了。
其他资源
目前有关于深度学习的知识大都发表在学术论文中。
此页中列出了一些相关论文。
任何具体课程所教授的内容都是有限的,但互联网可以提供的知识是无限的。大部分数学和编程问题都可以通过谷歌搜索或搜索Stackoverflow和Math Stackexchange等网站来解决。