六月份學習計劃

上個月看知乎的時候,復旦大學邱教授發布的一個NLP初學者入門項目,包括NLP四大任務類型:分類、序列標注、文本匹配、文本生成。
https://github.com/FudanNLP/nlp-beginner
當時看了一下,發現似乎有點難,需要從numpy開始造輪子,然后慢慢轉到深度學習,每個項目大概兩周時間。剛好我的課程已經結束了,接下來要做的就是文獻綜述和編程學習。自己的編碼能力依舊不行,所以還是從頭再來一遍吧。
一共五個項目,對應的是《神經網絡與深度學習》這本書,里面有ppt和相應的練習資源。涉及到的章節主要是2、3、6、7、11、15。我會閱讀章節內容,完成課后習題,閱讀參考論文,然后實現相應任務,看起來好頭疼啊……
目前來看,唯一走對的路就是選擇了pytorch……
六月份希望能夠完成前三個任務……

任務說明頁內容(https://github.com/FudanNLP/nlp-beginner

任務一:基于機器學習的文本分類

實現基于logistic/softmax regression的文本分類

  1. 參考

    1. 文本分類
    2. 神經網絡與深度學習》 第2/3章
  2. 數據集:Classify the sentiment of sentences from the Rotten Tomatoes dataset

  3. 實現要求:NumPy

  4. 需要了解的知識點:

    1. 文本特征表示:Bag-of-Word,N-gram
    2. 分類器:logistic/softmax regression,損失函數、(隨機)梯度下降、特征選擇
    3. 數據集:訓練集/驗證集/測試集的劃分
  5. 實驗:

    1. 分析不同的特征、損失函數、學習率對最終分類性能的影響
    2. shuffle 、batch、mini-batch
  6. 時間:兩周

任務二:基于深度學習的文本分類

熟悉Pytorch,用Pytorch重寫《任務一》,實現CNN、RNN的文本分類;

  1. 參考

    1. https://pytorch.org/
    2. Convolutional Neural Networks for Sentence Classification https://arxiv.org/abs/1408.5882
    3. https://machinelearningmastery.com/sequence-classification-lstm-recurrent-neural-networks-python-keras/
  2. word embedding 的方式初始化

  3. 隨機embedding的初始化方式

  4. 用glove 預訓練的embedding進行初始化 https://nlp.stanford.edu/projects/glove/

  5. 知識點:

    1. CNN/RNN的特征抽取
    2. 詞嵌入
    3. Dropout
  6. 時間:兩周

任務三:基于注意力機制的文本匹配

輸入兩個句子判斷,判斷它們之間的關系。參考ESIM(可以只用LSTM,忽略Tree-LSTM),用雙向的注意力機制實現。

  1. 參考
    1. 神經網絡與深度學習》 第7章
    2. Reasoning about Entailment with Neural Attention https://arxiv.org/pdf/1509.06664v1.pdf
    3. Enhanced LSTM for Natural Language Inference https://arxiv.org/pdf/1609.06038v3.pdf
  2. 數據集:https://nlp.stanford.edu/projects/snli/
  3. 實現要求:Pytorch
  4. 知識點:
    1. 注意力機制
    2. token2token attetnion
  5. 時間:兩周

任務四:基于LSTM+CRF的序列標注

用LSTM+CRF來訓練序列標注模型:以Named Entity Recognition為例。

  1. 參考
    1. 神經網絡與深度學習》 第6、11章
    2. https://arxiv.org/pdf/1603.01354.pdf
    3. https://arxiv.org/pdf/1603.01360.pdf
  2. 數據集:CONLL 2003,https://www.clips.uantwerpen.be/conll2003/ner/
  3. 實現要求:Pytorch
  4. 知識點:
    1. 評價指標:precision、recall、F1
    2. 無向圖模型、CRF
  5. 時間:兩周

任務五:基于神經網絡的語言模型

用LSTM、GRU來訓練字符級的語言模型,計算困惑度

  1. 參考
    1. 神經網絡與深度學習》 第6、15章
  2. 數據集:poetryFromTang.txt
  3. 實現要求:Pytorch
  4. 知識點:
    1. 語言模型:困惑度等
    2. 文本生成
  5. 時間:兩周
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容