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+
作者