XXXHUA / NLP_From_Zero_to_One

主要是实现nlp常用网络以及结果比较,各模型的优劣势,如:FastText,TextCNN,TextRNN,TextRCNN,BiLSTM,Seq2seq,BERT,Transformer,ELMo以及Attention机制等等。

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

主要是使用当下比较流行的深度学习框架进行NLP简单代码的编写

模型 论文地址 代码复现地址 时间
词袋模型 论文地址 代码 2003
Word2Vec 论文地址 代码 2006
GloVe 论文地址 代码 2006
NNLM 论文地址 代码 2006
TextCNN 论文地址 代码 2006
TextRCNN 论文地址 代码 2006
Seq2Seq 论文地址 代码 2006
Seq2Seq+Attention 论文地址 代码 2006
Transformer 论文地址 代码 2006
Bert 论文地址 代码 2006
FastText 论文地址 代码 2006
BiLSTM+Attention 论文地址 代码 2006
Attention+LSTM_FCN 论文地址 代码 2006
HAN 论文地址 代码 2006

主流框架:

  1.tensorflow1.8.0  ---谷歌开源深度学习框架
  2.keras
  3.pytorch      ---Facebook开源的深度学习框架

使用的第三方库:

 1.tensorflow
 2.numpy,sklearn,pandas,matplotlib
 3.keras

数据集:

*数据集:搜狗实验室的数据集

主要通过以下模型学习nlp:

1.NNLM --2003

*参考论文:A neural probabilistic language model
*实现代码
image

2.Word2Vec


1.CBOW
2.skip-grams

3.FastText --2016


*[参考论文:]
*实现代码
*分级softmaximage
*FatText内部结构image
*FastText网络结构image

4.TextCNN --2014

*参考论文:Convolutional Neural Networks for Sentence Classification
*实现代码
image

5.TextRNN

6.TextRCNN

7.TextLSTM

8.BiLSTM

9.BiLSTM+Attention

10.Seq2Seq

11.Seq2Seq+Attention

12.Transformer

  • The Transformer - model architectureimage
  • (left) Scaled Dot-Product Attention. (right) Multi-Head Attention consists of several attention layers running in parallelimage

13.BERT

14.HAN(分层注意力网络)

每个py文件主要是包含:

  • 数据预处理
  • 模型搭建
  • 模型训练
  • 模型保存

持续更新中,欢迎fork和关注

参考资料

About

主要是实现nlp常用网络以及结果比较,各模型的优劣势,如:FastText,TextCNN,TextRNN,TextRCNN,BiLSTM,Seq2seq,BERT,Transformer,ELMo以及Attention机制等等。


Languages

Language:Python 100.0%