我的机器学习入门之路(中)——深度学习(自然语言处理)

欢迎关注~


继上一篇《我的机器学习入门之路(上)——传统机器学习》,这一篇博客主要记录深度学习(主要是自然语言处理)这一块内容的学习过程。以下均将自然语言处理简称NLP。
这一块内容的学习路线分为三部分:明确NLP的研究问题及传统的方法有哪些、深度学习(NLP)基础及深度学习框架的使用、NLP的深入学习。

一、明确NLP的研究问题及传统的方法有哪些
不像机器学习中研究的问题一般都是直接的分类或回归,在NLP中,有比较多样的分析,如分词、依存句法分析等。所以可以先看看一本书《python自然语言处理》。这本书可以比较快速地过一遍。

二、深度学习(NLP)基础及深度学习框架的使用
开门见山,深度学习入门资源推荐:黄海广博士主编的《DeepLearning.ai深度学习笔记》,由于版权关系,大家可以自行搜索。
原因:就如很多学习机器学习的人都人手一本西瓜书,我看很多学习深度学习的人都人手一本《深度学习》(那本花书),我也去看了那本花书,感觉不太适合我。《DeepLearning.ai深度学习笔记》这份笔记讲得非常通俗易懂,但又不失一定的深度,很适合作为深度学习的入门教材,总共七百多页,几天就能学完了,从神经网络基础,到CNN,计算机视觉中的深度学习,再到序列模型,NLP的很多问题,都有讲解,是相对全面的。
在有了深度学习的基础知识之后,就可以学习一些开源的深度学习框架的使用了,我选的是TensorFlow和PyTorch。
深度学习框架PyTorch书籍推荐:陈云的《深度学习框架PyTorch:入门与实践》,这本书写得比较接地气,也有相应的实战代码(GitHub上可下载)。所以边看这本书,边自己做做书上的项目,就能很快入门pytorch了。
深度学习框架TensorFlow书籍推荐:黄文坚的《TensorFlow实战》。

一些我收藏的资源:
1、TensorFlow相关
TensorFlow在Windows 10 64位下的安装:https://blog.csdn.net/u010099080/article/details/53418159
WIN10安装TENSORFLOW(GPU版本)详解:https://zhuanlan.zhihu.com/p/37086409
TensorFlow指定GPU进行训练:https://blog.csdn.net/u010238520/article/details/76165736
TensorFlow获取可用GPU设备:https://blog.csdn.net/weixin_35653315/article/details/71403386
TensorFlow自动求导原理:https://blog.csdn.net/qq_25094489/article/details/79390484
『深度长文』Tensorflow代码解析(一):https://zhuanlan.zhihu.com/p/25646408

2、PyTorch相关
新手如何入门pytorch?:https://www.zhihu.com/question/55720139
PyTorch中文文档:https://pytorch.apachecn.org/#/
PyTorch上搭建简单神经网络实现回归和分类的示例:https://blog.csdn.net/quincylk/article/details/86183752
PyTorch使用tensorboardX:https://zhuanlan.zhihu.com/p/35675109
PyTorch的远程可视化神器visdom:https://zhuanlan.zhihu.com/p/34692106

三、NLP的深入学习
首先推荐一个非常好的资源:斯坦福CS224n课程(在YouTube上可以找到课程视频)
还有一个对应的笔记资源:码农场网站上的CS224n课程对应的笔记:http://www.hankcs.com/nlp/cs224n-introduction-to-nlp-and-deep-learning.html
我的学习方法是:按照授课顺序,先看码农场网站上的中文笔记,理解这一次课教授的内容,然后看斯坦福CS224n的课程视频(用倍速看,会比较省时间)。
这样一整个课程下来,就可以说是入门NLP了。

下面是我收藏的一些资料链接
词向量相关:
1、word2vec
CS224n笔记2 词的向量表示:word2vec:http://www.hankcs.com/nlp/word-vector-representations-word2vec.html
word2vec原理推导与代码分析:http://www.hankcs.com/nlp/word2vec.html
word2vec模型原理与实现:https://www.cnblogs.com/Finley/p/6043769.html
word2vec源码解析:https://blog.csdn.net/google19890102/article/details/51887344
Word2vec和Doc2vec原理理解:https://blog.csdn.net/mpk_no1/article/details/72458003

2、Glove
理解GloVe模型:https://blog.csdn.net/coderTC/article/details/73864097
Glove详解:http://www.fanyeong.com/2018/02/19/glove-in-detail/

3、FastText
fastText原理及实践:https://zhuanlan.zhihu.com/p/32965521

4、Doc2vec
Doc2vec原理及实践:https://blog.csdn.net/john_xyz/article/details/79208564

5、Sentence Embedding
CS224n研究热点一:Sentence Embedding:http://www.hankcs.com/nlp/cs224n-sentence-embeddings.html

接下来是一些NLP模型的原理及相应深度学习框架函数的资料链接。
1、RNN
RNN 的梯度消失问题:https://zhuanlan.zhihu.com/p/44163528
RNN梯度消失和爆炸的原因:https://zhuanlan.zhihu.com/p/28687529

2、LSTM
人人都能看懂的LSTM:https://zhuanlan.zhihu.com/p/32085405
LSTM如何解决梯度消失问题:https://zhuanlan.zhihu.com/p/28749444
在Pytorch下搭建BiLSTM:https://www.jianshu.com/p/b9ad6b26e690
聊一聊PyTorch中LSTM的输出格式:https://zhuanlan.zhihu.com/p/39191116

3、GRU
人人都能看懂的GRU:https://zhuanlan.zhihu.com/p/32481747

4、TextCNN
TextCnn原理及实践:https://blog.csdn.net/John_xyz/article/details/79210088
基于Text-CNN模型的中文文本分类实战:https://www.imooc.com/article/40868

5、Seq2seq
玩转Keras之seq2seq自动生成标题:https://spaces.ac.cn/archives/5861/comment-page-1
TensorFlow文本摘要生成:https://www.ctolib.com/topics-113328.html

6、Attention
深度学习中的注意力模型:https://zhuanlan.zhihu.com/p/37601161
注意力机制在NLP中的应用:https://www.cnblogs.com/robert-dlut/p/5952032.html
自然语言处理中的Attention Model:是什么及为什么:https://blog.csdn.net/malefactor/article/details/50550211
BahdanauAttention与LuongAttention注意力机制简介:https://blog.csdn.net/u010960155/article/details/82853632

7、Transformer
图解Transformer:https://blog.csdn.net/qq_41664845/article/details/84969266

8、Elmo、GPT
看相应论文,然后自己搜搜讲解的博客吧,我累了,没收藏

9、Bert
谷歌BERT模型深度解析:https://blog.csdn.net/qq_39521554/article/details/83062188
为什么BERT有3个嵌入层,它们都是如何实现的:https://www.cnblogs.com/d0main/p/10447853.html
如何使用BERT实现中文的文本分类(附代码):https://blog.csdn.net/Real_Brilliant/article/details/84880528
从Word Embedding到Bert模型:https://zhuanlan.zhihu.com/p/49271699

10、ERNIE
中文任务全面超越BERT:百度正式发布NLP预训练模型ERNIE:https://zhuanlan.zhihu.com/p/59436589

11、HMM
隐马尔可夫(HMM)、前/后向算法、Viterbi算法 再次总结:https://blog.csdn.net/xueyingxue001/article/details/52396494
隐马尔可夫模型(HMM) - 1 - 基本概念:https://blog.csdn.net/xueyingxue001/article/details/51435728
隐马尔可夫模型(HMM) - 2 - 概率计算方法:https://blog.csdn.net/xueyingxue001/article/details/51435752
隐马尔科夫模型HMM(四)维特比算法解码隐藏状态序列:https://www.cnblogs.com/pinard/p/6991852.html

12、CRF
如何轻松愉快地理解条件随机场(CRF)?:https://www.jianshu.com/p/55755fc649b1
概率图模型学习笔记:HMM、MEMM、CRF:https://blog.csdn.net/Scotfield_msn/article/details/79195517
pytorch lstm crf 代碼理解:https://www.twblogs.net/a/5b7c1a1c2b71770a43d955a5
通俗理解BiLSTM-CRF命名实体识别模型中的CRF层:https://www.cnblogs.com/createMoMo/p/7529885.html

13、LDA
通俗理解LDA主题模型:https://blog.csdn.net/v_july_v/article/details/41209515

14、TF-IDF
生动理解TF-IDF算法:https://zhuanlan.zhihu.com/p/31197209

下面是其它的NLP或深度学习相关的资料的一些链接。
1、Batch Normalization
什么是批标准化 (Batch Normalization):https://zhuanlan.zhihu.com/p/24810318
Batch Normalization 学习笔记:https://blog.csdn.net/hjimce/article/details/50866313
详解深度学习中的Normalization,BN/LN/WN:https://zhuanlan.zhihu.com/p/33173246

2、TimeDistributed
keras中TimeDistributed的用法:https://blog.csdn.net/u012193416/article/details/79477220
如何在长短期记忆(LSTM)网络中利用TimeDistributed层:https://python.freelycode.com/contribution/detail/889

3、中文分词
中文分词:原理及分词算法:https://blog.csdn.net/DianaCody/article/details/40950169
自然语言处理基础-中文分词:https://ilewseu.github.io/2018/06/16/%E4%B8%AD%E6%96%87%E5%88%86%E8%AF%8D/
文本挖掘的分词原理:https://www.cnblogs.com/pinard/p/6677078.html
从自然语言处理角度看 HMM 和 CRF:https://www.jianshu.com/p/59490ffe7f7c

4、文本(清洗)处理
文本清洗+文本分类:https://www.jianshu.com/p/a72b6a0cf895
通常的文本清理流程:https://www.zhihu.com/question/268849350
文本挖掘之特征选择(python 实现):https://cloud.tencent.com/developer/article/1061371

5、NLP比赛、实战
第二届搜狐内容识别算法大赛第一名分享:https://blog.csdn.net/qq_34695147/article/details/81006059
知乎看山杯夺冠记:https://zhuanlan.zhihu.com/p/28923961
文本分类实战(一)—— word2vec预训练词向量:https://www.cnblogs.com/jiangxinyang/p/10207273.html

6、NLP教程
一个不错的系列教程:https://www.jianshu.com/p/b87e01374a65

暂时先总结到这吧,内容实在有点多,很难面面俱到。
最后,NLP的这些模型都是发表在相应会议上的,有时间一定要去看看相对应的论文,这里就不一一罗列了。





#算法工程师##学习路径##自然语言处理#
全部评论
收藏了,感谢楼主!
点赞 回复
分享
发布于 2019-11-15 22:41
哈哈哈哈,还行
点赞 回复
分享
发布于 2019-11-15 23:04
OPPO
校招火热招聘中
官网直投
哇 点赞!
点赞 回复
分享
发布于 2019-12-06 12:17
你这些都学过一遍???就六个月都学了一遍??TQL
点赞 回复
分享
发布于 2019-12-20 16:41
Lz总结的好棒!
点赞 回复
分享
发布于 2019-12-21 10:33

相关推荐

点赞 评论 收藏
转发
10 166 评论
分享
牛客网
牛客企业服务