下一章:cs224n學習筆記L2:word vectors and word senses
一、課堂內容
- 課程介紹
- 人類語言及詞義
- word2vec介紹
- word2vec目標函數梯度
- 優化方法基礎
- 詞向量概覽
二、課程介紹
主要介紹cs224n的教學團隊時間安排、課堂資源等。
2.1 課堂資源
- 課程網頁(課件資源):http://cs224n.stanford.edu、http://www.staford.edu/class/cs224n
2.2 教學目標
- 理解現代深度學習方法,深入介紹nlp常用的RNN、Atention等
- 瞭解自然語言理解及生成的難點
- 理解並能使用pytorch構建NLP處理的系統:詞義理解(word meaning)、依賴解析、機器翻譯、問答系統。
2.3 新加入內容
- 字模型、transformer、safety/fairness、多任務學習
- 五次單週課後作業,作業內容包括新知識點:使用attention實現NMT、CovNets、subword modeling。
2.4 作業說明
- HW1,一個IPython Notebook 文件
- HW2,純Python代碼,使用numpy庫完成
- HW3,pytorch簡介
- HW4 and HW5,pytorch-gpu
- 期末作業:默認爲SQuAD 問答.
三、課堂內容
3.1 語言學及詞彙
- 自然語言存在歧義、一詞多義、語境等不確定因素的影響
- 詞的離散向量表示:將詞作爲離散符號:onehot,詞表示的向量正交,無法獲得詞之間的相似度。
- 詞嵌入:使用詞向量來表達。
3.2 詞向量
- 優化問題:對於包含T個詞的文本,使用大小爲m的窗口,給定窗口中心詞,有似然函數
- 目標函數是似然函數的平均負對數:
- 的計算方式:
- 對文本1-T中的每個詞,設置兩個向量,當爲中心詞時使用, 爲context詞時使用。
- 若c爲中心詞,o爲被預測的context, 有,(V=vocabulary, 即語料中的所有詞彙)這是一個特殊的softmax函數(softmax:將任意一組數值映射爲概率)
這頁PPT真是滿滿的精華呀。
課後作業
課後作業我使用網上公開的中文詞向量,替換了課程的英文西向量。中文使用matplotlib畫圖時會無法正常顯示,原因是matplotlib默認字體不支持中文,需要設置使用的字體,方法如下:
# 打印plt字體庫,找到支持中文的字體
# from matplotlib import font_manager
# font_manager.fontManager.ttflist
plt.rcParams['font.sans-serif'] = ['Songti SC'] # 用來正常顯示中文標籤
display_pca_scatterplot(model, ['咖啡', '茶', '啤酒', '紅酒', '噴射', '冠軍', '水',
'漢堡包', '披薩', '舒適', '狗', '馬', '貓', '胡蘿蔔',
'考拉', '狐狸', '猴子', '測驗', '狼', '法國', '德國',
'飢餓', '澳大利亞', '中國', '作業', '任務', '考試', '測試',
'班級', '學校', '大學', '高校', '學院'])