NLP教程
nlp-tutorial是一个使用Pytorch研究NLP(自然语言处理)的教程。 NLP中的大多数模型都是用少于100行的代码实现的。(评论或空白行除外)
- [08-14-2020]旧的Tensorflow V1代码存档在存档文件夹中。对于初学者的可读性,仅支持Pytorch版本1.0或更高版本。
课程 - (示例目的)
1。基本嵌入模型
- 1-1。 NNLM(神经网络语言模型) -预测下一个单词
- 论文 - 神经概率语言模型(2003)
- colab -nnlm.ipynb
- 1-2。 Word2Vec(跳过) -嵌入单词并显示图形
- 纸 - 单词和短语的分布式表示及其组成性(2013)
- colab -word2vec.ipynb
- 1-3。 FastText(应用程序级别) -句子分类
- 纸 - 有效文本分类的技巧袋(2016年)
- colab -fasttext.ipynb
2。CNN(卷积神经网络)
- 2-1。 textcnn-二进制情感分类
- 纸 - 句子分类的卷积神经网络(2014年)
- textcnn.ipynb
3。RNN(循环神经网络)
- 3-1。 Textrnn-预测下一步
- 纸 - 时间发现结构(1990)
- colab -textrnn.ipynb
- 3-2。 TextLSTM-自动完成
- 纸 - 长期记忆(1997)
- colab -textlstm.ipynb
- 3-3。 bi -lstm-长句子中的下一个单词
4。注意机制
- 4-1。 seq2seq-更改字
- 纸 - 使用RNN编码器 - 统计机器翻译的decoder学习短语表示(2014)
- COLAB -SEQ2SEQ.IPYNB
- 4-2。 seq2seq引起注意 -翻译
- 纸 - 神经机器翻译通过共同学习对齐和翻译(2014)
- COLAB -SEQ2SEQ(注意).IPYNB
- 4-3。 BI -LSTM引起注意 -二元情绪分类
5。基于变压器的模型
- 5-1。变压器 -翻译
- 纸 - 您需要的全部注意(2017年)
- colab -transformer.ipynb,变压器(greedy_decoder).ipynb
- 5-2。 BERT-分类下一个句子并预测蒙版的令牌
- 论文-BERT:深层双向变压器的预训练以了解语言理解(2018年)
- colab -bert.ipynb
依赖性
- Python 3.5+
- Pytorch 1.0.0+
作者