大家好,这一篇文章算是深度学习这一个开始
其实说深度学习,之前或多或少之前也学过一些,比如像经常在TensorFlow用的CNN卷积神经网络和RNN递归神经网络以及LSTM等,再有就是现在学术界比较热的GAN也多少了解过一些.但是一直没有深入进去学习,以及读一些相关文章.
再加上自己一直感兴趣的NLP领域,比如Google用的LSTM(RNN)处理翻译已经获得了不错的结果.更加促进让我走进深度学习的世界.
话不多说,直接正文
一:基本理论学习
1:传统的神经网络基础
这一部分着重学习一下传统的神经网络架构,在跌宕起伏七十余年的神经网络历史中,有过这么多次的大起大落,了解历史有利于我们以史为鉴,更加理性思考.就跟马毅老师说过:没看过近几十年的论文,你是做不出好的学问的.所以,这一步,必须.
传统部分了解:
单层感知机,线性神经网络,BP神经网络,Hopfield神经网络,径向基神经网络,PCA和SVM神经网络.
2:深入理解神经网络
这一部分将会有很大的门槛,对自己也是一个很大的挑战,我认为上一部分的BP神经网络是一个难关,另外这一部分的玻尔兹曼机也是一个很大的挑战(真的看着书睡着过),这一部分必须要坚持,花费大量时间保障质量.
深入部分理解:
自编码器,稀疏自编码器,玻尔兹曼机,受限玻尔兹曼机,递归神经网络,自组织竞争神经网络.
3:进入深度学习世界
我一直觉得如果到了这个部分,能够学懂受限玻尔兹曼机和BP神经网络,学习深度学习应该会比较轻松,这里我觉得就应该多重视理论和实践结合.多写写代码是有好处的,特别我们大部分人工作之后都不大可能去研究岗,写好代码才是关键.
深度学习部分:
深度置信网络,卷积神经网络,深度残差网络,递归神经网络
二:基本理论应用
这一部分我想在理论学习完成后,能够把传统的神经网络模型和深度学习模型都能够用代码实现一遍,并且我们学习的是深度学习方面,我们应该着重于神经网络应用,希望可以结合神经网络做一个简单的自然语言处理的小应用.
这里用的语言也可能是MATLAB或者是Python.因为MATLAB的一些神经网络包很好用,做小型的神经网络很方便,如果牵扯到复杂,使用TensorFlow肯定是更好的选择.
三:推荐的书籍
这几本书籍也是我老师推荐给我,我自己也在阅读,也希望大家可以一起学习
1:神经网络与机器学习(就是看他睡着的..)
链接:https://pan.baidu.com/s/1NDBH6ah_km70NklDPMmhRQ密码:0iij
2:人工神经网络理论,设计及应用
这本书别看很薄,但是都是精华,很多书说了一大堆的东西,这本书很简单的就可以讲透彻
链接:https://pan.baidu.com/s/1mjfLRAKwDmBLb9UrVvy0sQ密码:5w7o
3:神经网络设计
链接:https://pan.baidu.com/s/1wIZEKWrRbwm-ktRAAP3LFw密码:zkoa
最后,大家一起努力吧,在最好的时刻做出最有意义的事.
PS:以后初步计划是每周更新一篇或者两篇,深度学习一篇,自然语言处理一篇.频率不敢固定,这主要取决于我的学习情况,很多东西我没学明白就胡乱给别人说,耽误自己,也误导了别人,不过也难免纰漏,还请大家多多指正!