1. 程式人生 > >【NLP】cs224n課程筆記

【NLP】cs224n課程筆記

一、前言

自然語言是人類智慧的結晶,自然語言處理是人工智慧中最為困難的問題之一,而對自然語言處理的研究也是充滿魅力和挑戰的。 通過經典的斯坦福cs224n教程,讓我們一起和自然語言處理共舞!也希望大家能夠在NLP領域有所成就!


二、先修知識(學習的過程中可以遇到問題後再複習)

瞭解python基礎知識瞭解高等數學、概率論、線性代數知識瞭解基礎機器學習演算法:梯度下降、線性迴歸、邏輯迴歸、Softmax、SVM、PAC(先修課程斯坦福cs229 或者周志華西瓜書)具有英語4級水平(深度學習學習材料、論文基本都是英文,一定要閱讀英文原文,進步和提高的速度會加快!!!!)以上知識要求內容可在最下方的知識工具中查詢


三、每週學習時間安排

每週具體學習時間劃分為4個部分:

1部分安排週一到週二2部分安排在週四到週五3部分安排在週日4部分作業是本週任何時候空餘時間週日晚上提交作業執行截圖週三、週六休息_




(以下的部分連結在手機端無法正常顯示,請複製連結到電腦瀏覽器開啟)




課程資料:


課程主頁: https://web.stanford.edu/class/cs224n /

中文筆記: http://www.hankcs.com/nlp/cs224n-introduction-to-nlp-and-deep-learning.html

http://www.hankcs.com/tag/cs224n/

課程視訊: https://www.bilibili.com/video/av30326868/?spm_id_from=333 .788.videocard.0

實驗環境推薦使用Linux或者Mac系統,以下環境搭建方法皆適用:

· Docker環境配置: 

https://github.com/ufoym/deepo

· 本地環境配置: https://github.com/learning511/cs224n-learning-camp/blob/master/environment.md

註冊一個github賬號:github.com

後續釋出的一些project和exercise會在這個github下:

 https://github.com/learning511/cs224n-learning-camp

重要的一些資源:

深度學習斯坦福教程: http://deeplearning.stanford.edu/wiki/index.php/UFLDL教程

廖雪峰python3教程: 
https://www.liaoxuefeng.com/article/001432619295115c918a094d8954bd493037b03d27bf9a9000


github教程: https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

莫煩機器學習教程: http://morvanzhou.github.io/tutorials /

深度學習經典論文: https://github.com/floodsung/Deep-Learning-Papers-Reading-Roadmap

斯坦福cs229程式碼(機器學習演算法python徒手實現): https://github.com/nsoojin/coursera-ml-py

本人部落格: https://blog.csdn.net/dukuku5038/article/details/82253966

知識工具

為了讓大家逐漸適應英文閱讀,複習材料我們有中英兩個版本,但是推薦大家讀英文

數學工具

斯坦福資料:

線性代數(連結地址: http://web.stanford.edu/class/cs224n/readings/cs229-linalg.pdf )概率論(連結地址: http://101.96.10.44/web.stanford.edu/class/cs224n/readings/cs229-prob.pdf )凸函式優化(連結地址: http://101.96.10.43/web.stanford.edu/class/cs224n/readings/cs229-cvxopt.pdf )隨機梯度下降演算法(連結地址: http://cs231n.github.io/optimization-1 /)

中文資料:

機器學習中的數學基本知識(連結地址: https://www.cnblogs.com/steven-yang/p/6348112.html )統計學習方法(連結地址: http://vdisk.weibo.com/s/vfFpMc1YgPOr )大學數學課本(從故紙堆裡翻出來_

程式設計工具

斯坦福資料:

Python複習(連結地址: http://web.stanford.edu/class/cs224n/lectures/python-review.pdf )TensorFlow教程(連結地址: https://github.com/open-source-for-science/TensorFlow-Course#why-use-tensorflow )

中文資料:

廖雪峰python3教程(連結地址: https://www.liaoxuefeng.com/article/001432619295115c918a094d8954bd493037b03d27bf9a9000 )莫煩TensorFlow教程(連結地址: https://morvanzhou.github.io/tutorials/machine-learning/tensorflow /)

作業參考答案:http://www.hankcs.com/nlp/cs224n-assignment-1.html
達觀杯:https://github.com/MLjian/TextClassificationImplement

第一週

四、分節學習內容

第1部分學習任務:

(1)觀看自然語言處理課學習緒論,瞭解深度學習的概括和應用案例以及訓練營後續的一些學習安排

學習時長:10/23—10/28

緒論視訊地址: https://m.weike.fm/lecture/10194068

(2)自然語言處理和深度學習簡介,觀看課件lecture01、視訊1、學習筆記

學習時長:10/23

課件: lecture01(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/lecture-notes/cs224n-2017-lecture1.pdf )觀看視訊1(連結地址: https://www.bilibili.com/video/av30326868/?spm_id_from=333 .788.videocard.0)學習筆記:自然語言處理與深度學習簡介(連結地址: http://www.hankcs.com/nlp/cs224n-introduction-to-nlp-and-deep-learning.html )


第4部分作業:Assignment 1.1-1.2(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/Assignmnet.md )

1.1 Softmax 演算法1.2 Neural Network Basics 神經網路基礎實現

完成時間:本週任何空餘時間

作業截止提交時間:10/28號之前

作業提交方式:在訓練營中打卡提交作業執行截圖

四、分節學習內容
第3部分學習任務:
(1)觀看自然語言處理課學習緒論,瞭解深度學習的概括和應用案例以及訓練營後續的一些學習安排
學習時長:10/23—10/28
緒論視訊地址: https://m.weike.fm/lecture/10194068
(2)論文導讀:一個簡單但很難超越的Sentence Embedding基線方法
學習時長:10/28
論文原文: paper(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/paper/A Simple but Tough-to-beat Baseline for Sentence Embeddings.pdf
論文分析: highlight(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/paper/highlight/cs224n-2017-lecture1-highlight.pdf
論文筆記:Sentence Embedding(連結地址: http://www.hankcs.com/nlp/cs224n-sentence-embeddings.html
(3)觀看達觀杯NLP演算法大賽報名指導PDF和入門指導視訊
學習時長:10/25—11/4
零基礎1小時完成一場AI比賽
達觀杯文字智慧挑戰賽入門指導(視訊在下方,如果不清楚也可以去荔枝微課看 https://m.weike.fm/lecture/10195400 ,密碼是011220)

02零基礎1小時完成一場AI比賽.pdf
2018.10.22

03 達觀杯文字智慧挑戰賽.mp4 2018.10.22
第4部分作業:Assignment 1.1-1.2(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/Assignmnet.md
1.1 Softmax 演算法
1.2 Neural Network Basics 神經網路基礎實現
完成時間:本週任何空餘時間
作業截止提交時間:10/28號之前
作業提交方式:傳送到訓練營公共郵箱(具體操作方法已私發給各位同學,還不清楚的請私聊小享)

第二週

四、分節學習內容
第1部分學習任務:
(1)高階詞向量表示:word2vec 2,觀看課件lecture03、視訊3、學習筆記
學習時長:10/29—10/30
課件: lecture03(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/lecture-notes/cs224n-2017-lecture3.pdf
觀看視訊3(連結地址: https://www.bilibili.com/video/av30326868/?p=3
學習筆記:word2vec 2(連結地址: http://www.hankcs.com/nlp/cs224n-advanced-word-vector-representations.html
(2)觀看達觀杯NLP演算法大賽報名指導PDF和入門指導視訊
學習時長:10/25—11/4
零基礎1小時完成一場AI比賽
達觀杯文字智慧挑戰賽入門指導(視訊在下方,如果不清楚也可以去荔枝微課看 https://m.weike.fm/lecture/10195400 ,密碼是011220)

02零基礎1小時完成一場AI比賽.pdf
2018.10.22

03 達觀杯文字智慧挑戰賽.mp4 2018.10.22
第4部分作業:Assignment 1.3-1.4(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/Assignmnet.md
1.3 word2vec 實現
1.4 Sentiment Analysis 情緒分析
完成時間:本週任何空餘時間
作業截止提交時間:11/4號之前
作業提交方式:傳送到訓練營公共郵箱(具體操作方法已私發給各位同學,還不清楚的請私聊小享)

四、分節學習內容
第2部分學習任務:
(1)Word Window分類與神經網路,觀看課件lecture04、視訊4、學習筆記
學習時長:11/1—11/2
課件: lecture04(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/lecture-notes/cs224n-2017-lecture4.pdf
觀看視訊4(連結地址: https://www.bilibili.com/video/av30326868/?p=4
學習筆記:Word Window分類與神經網路(連結地址: http://www.hankcs.com/nlp/cs224n-word-window-classification-and-neural-networks.html
(2)觀看達觀杯NLP演算法大賽報名指導PDF和入門指導視訊
學習時長:10/25—11/4
零基礎1小時完成一場AI比賽
達觀杯文字智慧挑戰賽入門指導(視訊在下方,如果不清楚也可以去荔枝微課看 https://m.weike.fm/lecture/10195400 ,密碼是011220)

02零基礎1小時完成一場AI比賽.pdf
2018.10.22

03 達觀杯文字智慧挑戰賽.mp4 2018.10.22
第4部分作業:Assignment 1.3-1.4(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/Assignmnet.md
1.3 word2vec 實現
1.4 Sentiment Analysis 情緒分析
完成時間:本週任何空餘時間
作業截止提交時間:11/4號之前
作業提交方式:傳送到訓練營公共郵箱(具體操作方法已私發給各位同學,還不清楚的請私聊小享)

第三週

二、分節學習內容
第1部分學習任務:
(1)反向傳播與專案指導:Backpropagation and Project Advice,觀看課件lecture05、視訊5、學習筆記
學習時長:11/12—11/13
課件: lecture05(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/lecture-notes/cs224n-2017-lecture5.pdf
觀看視訊5(連結地址: https://www.bilibili.com/video/av30326868/?p=5
學習筆記:反向傳播與專案指導(連結地址: http://www.hankcs.com/nlp/cs224n-backpropagation-and-project-advice.html
第4部分作業:Assignment 2.2(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/Assignmnet.md
Neural Transition-Based Dependency Parsing 基於神經網路的依賴分析
完成時間:本週任何空餘時間
作業截止提交時間:11/18號之前
作業提交方式:傳送到訓練營公共郵箱(具體操作方法已私發給各位同學,還不清楚的請私聊小享)

二、分節學習內容
第3部分學習內容
(1)論文導讀:高效文字分類
學習時長:11/18
論文原文: paper(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/paper/Bag of Tricks for Efficient Text Classification.pdf
論文分析: highlight(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/paper/highlight/cs224n-2017-lecture3-highlight.pdf
論文筆記:高效文字分類(連結地址: http://www.hankcs.com/nlp/cs224n-bag-of-tricks-for-efficient-text-classification.html
第4部分作業:Assignment 2.2(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/Assignmnet.md
Neural Transition-Based Dependency Parsing 基於神經網路的依賴分析
完成時間:本週任何空餘時間
作業截止提交時間:11/18號之前
作業提交方式:傳送到訓練營公共郵箱(具體操作方法已私發給各位同學,還不清楚的請私聊小享)

第四周

覽器開啟)

二、分節學習內容
第1部分學習任務:
(1)TensorFlow入門,觀看課件lecture07、視訊、學習筆記
學習時長:11/19—11/20
課件: lecture07(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/lecture-notes/cs224n-2017-lecture7-tensorflow.pdf
觀看視訊7(連結地址: https://www.bilibili.com/video/av30326868/?p=7
學習筆記:TensorFlow(連結地址: http://www.hankcs.com/nlp/cs224n-tensorflow.html
(2)觀看達觀杯NLP演算法大賽進階指導視訊
學習時長:11/19—12/2
達觀杯文字智慧挑戰賽進階指導(視訊在下方,如果不清楚也可以去荔枝微課看 https://m.weike.fm/lecture/10726829 ,密碼是011220)


04達觀杯之文字分類任務解析與程式碼使用(進階指導).mp4 2018.11.18
第4部分作業:Assignment 2.1,2.2(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/Assignmnet.md
2.1Tensorflow Softmax 基於TensorFlow的softmax分類
2.2 Neural Transition-Based Dependency Parsing 基於神經網路的依賴分析

二、分節學習內容
第3部分學習任務:
(1)論文導讀:詞嵌入對傳統方法的啟發
學習時長:11/25
論文原文: paper(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/paper/Impoving distributional similarly with lessons learned from word embeddings.pdf
論文分析: highlight(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/paper/highlight/cs224n-2017-lecture4-highlight.pdf
論文筆記:詞嵌入對傳統方法的啟發(連結地址: http://www.hankcs.com/nlp/cs224n-improve-word-embeddings.html
(2)觀看達觀杯NLP演算法大賽進階指導視訊
學習時長:11/19—12/2
達觀杯文字智慧挑戰賽進階指導(視訊在下方,如果不清楚也可以去荔枝微課看 https://m.weike.fm/lecture/10726829 ,密碼是011220)

04達觀杯之文字分類任務解析與程式碼使用(進階指導).mp4 2018.11.18
第4部分作業:Assignment 2.1,2.2(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/Assignmnet.md
2.1Tensorflow Softmax 基於TensorFlow的softmax分類
2.2 Neural Transition-Based Dependency Parsing 基於神經網路的依賴分析

第五週

二、分節學習內容

第1部分學習任務:

(1)高階LSTM及GRU:LSTM and GRU,觀看課件lecture09、視訊、學習筆記

學習時長:11/26—11/27

課件: lecture09(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/lecture-notes/cs224n-2017-lecture9.pdf )觀看視訊9(連結地址: https://www.bilibili.com/video/av30326868/?p=9 )學習筆記:高階LSTM及GRU(連結地址: http://www.hankcs.com/nlp/cs224n-mt-lstm-gru.html )

(2)觀看達觀杯NLP演算法大賽進階指導視訊

學習時長:11/19—12/2

達觀杯文字智慧挑戰賽進階指導(視訊在下方,如果不清楚也可以去荔枝微課看 https://m.weike.fm/lecture/10726829 ,密碼是011220)

 

04達觀杯之文字分類任務解析與程式碼使用(進階指導).mp4

2018.11.18

第4部分作業:Assignment 2.3(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/Assignmnet.md )

Recurrent Neural Networks: Language Modeling 迴圈神經網路語言建模

完成時間:本週任何空餘時間

作業截止提交時間:12/2號之前

作業提交方式:傳送到訓練營公共郵箱(具

腦瀏覽器開啟)


二、分節學習內容

第3部分學習任務:

(1)論文導讀:基於轉移的神經網路句法分析的結構化訓練

學習時長:12/2

論文原文: paper(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/paper/Structured Training for Neural Network Transition-Based Parsing.pdf )論文分析: highlight(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/paper/highlight/cs224n-2017-lecture6-highlight.pdf )論文筆記:基於神經網路句法分析的結構化訓練(連結地址: http://www.hankcs.com/nlp/cs224n-syntaxnet.html )

(2)觀看達觀杯NLP演算法大賽進階指導視訊

學習時長:11/19—12/2

達觀杯文字智慧挑戰賽進階指導(視訊在下方,如果不清楚也可以去荔枝微課看 https://m.weike.fm/lecture/10726829 ,密碼是011220)

 

04達觀杯之文字分類任務解析與程式碼使用(進階指導).mp4

2018.11.18

第4部分作業:Assignment 2.3(連結地址: https://github.com/learning511/cs224n-learning-camp/blob/master/Assignmnet.md )

Recurrent Neural Networks: Language Modeling 迴圈神經網路語言建模

完成時間:本週任何空餘時間

作業截止提交時間:12/2號之前

作業提交方式:傳送到訓練營公共郵箱(具體操作方法已私發給各位同學,還不清楚的請私聊小享)