項目描述
NLP 領域常見任務的實現,包括新詞發現、以及基於pytorch的詞向量、中文文本分類、實體識別、文本生成、句子相似度判斷、三元組抽取、預訓練模型等。
依賴
python 3.7
pytorch 1.8.0
torchtext 0.9.1
optuna 2.6.0
transformers 3.0.2
目錄
0. 新詞發現算法
1. 詞向量
- 1-1. Word2Vec(Skip-gram)
- 1-2. Glove
2. 文本分類(每個模型內部使用optuna進行調參)
- 2-1. TextCNN
- 2-2. FastText
- 2-3. TextRCNN
- 2-4. TextRNN_Att
- 2-5. DPCNN
- 2-6. XGBoost
- 2-7. Distill_& fine tune Bert
- 2-8. Pattern-Exploiting-Training 利用MLM做文本分類
- 2-9. R-Drop
數據集(data文件夾): 二分類輿情數據集,劃分如下:
| 數據集 | 數據量 |
|---|
| 訓練集 | 56700 |
| 驗證集 | 7000 |
| 測試集 | 6300 |
3. 實體識別NER
- 3-1. Bert-MRC
- 3-2. Bert-CRF
- 3-3. Bert-Label-Semantics
- 3-4. Bert-MLM
4. 文本摘要生成
1). 生成式
- 4-1. Seq2seq 模型
- 4-2. Seq2seq 模型+注意力機制
- 4-3. Transformer 模型
- 4-4. GPT 摘要生成
- 4-5. Bert-seq2seq
2). 抽取式
- 4-6. Bert-extractive-summarizer
5. 句子相似度判別
6. 多標籤分類
- 6-1. MultiLabel-Classification
7. 三元組抽取
8. 預訓練模型(ELECTRA + SimCSE)
- 8-1. Pretrained-Language-Model
9. 提示學習
10. PaperwithCode
該文件夾記錄一些paper及其所對應的模型代碼:
- 10.1. Co-Interactive-Transformer
- 10.2. Lattice_LSTM
11. QA
該文件夾內記錄機器學習/深度學習一些知識點的簡單總結。