華文網

DeepMind與牛津聯合授課並開放「全部」學習資料

圖:pixabay

作者:Phil Blunsom(牛津大學電腦科學系副教授)等人

「機器人圈」編譯:嗯~阿童木呀、多啦A亮

說明:該文章包含牛津大學2017春季提供的關於深度自然語言處理課程的幻燈片和課程說明。

這是一門關於自然語言處理的高級課程。自動處理自然語言輸入和產生語言輸出是通用人工智慧的關鍵組成部分。人類傳播中固有的模糊性和噪音使得傳統的符號AI技術無法表示和分析語言資料。最近基於神經網路的統計技術在自然語言處理方面取得了一系列顯著的成功,

在很大程度上引起了學界和學術界對此領域的濃厚興趣。

這是一門應用課程,側重於使用迴圈神經網路分析並生成語言和文本的最新進展。我們會介紹相關機器學習模型的數學定義,並推導出相關的優化演算法。該課程涵蓋了神經網路在NLP中的一系列應用,包括分析文本中的潛在維度,將語音轉錄為文本,語言翻譯和問題問答。這些主題分為三個高級主題,

使其成為一個過程,從理解用於序列語言建模的神經網路的使用,到瞭解它們作為用於轉導任務的條件語言模型的用途,最後是將這些技術與其他機制相結合形成的高級應用的方法。在整個課程中,還討論了在CPU和GPU硬體上這些模型的實際實現。

本課程由Phil Blunsom主講,並與DeepMind自然語言研究小組有著緊密合作。

講師

•Phil Blunsom(牛津大學和DeepMind)

•克裡斯•戴爾(卡內基梅隆大學和DeepMind)

•Edward Grefenstette(DeepMind)

•卡爾•莫里茨•赫爾曼(DeepMind)

•Andrew Senior(DeepMind)

•Wang Ling(DeepMind)

•Jeremy Appleyard(英偉達)

助教

•Yannis Assael

•Yishu Miao

•布倫丹•希林福德

•Jan Buys

時間表

實習

第1組:週一,9:00-11:00(第2-8周)

第2組:週五,16:00-18:00(第2-8周)

實踐1:word2vec

實踐2:文本分類

實踐3:用於文本分類和語言建模的迴圈神經網路

實踐4:自由實踐

講座

公開講座在星期二和星期四(除了第八周),16:00-18:00(Hilary Term週末1,3-8)在數學研究所的演講廳1號廳舉行。

講座材料

1.講座1a——介紹[Phil Blunsom]

本講座介紹課程,並強調了深度學習技術來學習語言處理的樂趣所在。

[幻燈片]

(https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%201a%20-%20Introduction.pdf)

[視頻]

(http://101.96.8.164/media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_1b_friends.mp4)

2.講座1b——深神經網路是我們的朋友[Wang Ling]

該講座修正了學生在開始本課程之前應該瞭解的基本機器學習概念。

[幻燈片]

(http://101.96.8.164/media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_1b_friends.mp4)

[視頻]

(http://101.96.8.164/media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_1b_friends.mp4)

3.講座2a——詞級語義學[Ed Grefenstette]

詞彙在語言中有著核心意義,表示和學習詞彙的意義是NLP中的一項基本任務,在本講座中,引入將單詞嵌入的概念使其作為一個實踐和可擴展的解決方案。

[幻燈片]

(https://github.com/oxford-cs-deepnlp2017/lectures/blob/master/Lecture%202a-%20Word%20Level%20Semantics.pdf)

[視頻]

(http://101.96.8.164/media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_2a_lexical_semantics.mp4)

閱讀

嵌入基礎知識

•Firth,John R《語言學理論的概要,1930-1955》(1957):1-32。(http://annabellelukin.edublogs.org/files/2013/08/Firth-JR-1962-A-Synopsis-of-Linguistic-Theory-wfihi5.pdf)

•Curran, James Richard《從分佈到語義相似》(2004年)。

(https://www.era.lib.ed.ac.uk/bitstream/handle/1842/563/IP030023.pdf?sequence=2&isAllowed=y)

•Collobert,Ronan等人《自然語言處理(幾乎)從零開始》機器學習研究學報12. Aug(2011):2493-2537。

(http://www.jmlr.org/papers/volume12/collobert11a/collobert11a.pdf)

•Mikolov,Tomas等人《單詞、短語及其組合的分散式表達》。神經資訊處理系統的進展, 2013。

(http://papers.nips.cc/paper/5021-distributed-representations-of-words-and-phrases-and-their-compositionality.pdf)

資料集和視覺化

•Finkelstein, Lev等人《在情境中搜索:概念的重新審視》,第十屆萬維網國際會議論文集。 ACM,2001。

(https://www.tugraz.at/institute/isds/thesis/cguetl_diss/literatur/Kapitel07/References/Finkelstein_et_al._2002/p116-finkelstein.pdf)

•Hill,Felix,Roi Reichart和Anna Korhonen《Simlex-999:用(真實的)相似度估計來評估語義模型》,計算語言學(2016)。

(http://www.aclweb.org/website/old_anthology/J/J15/J15-4004.pdf)

•Maaten,Laurens van der和Geoffrey Hinton《使用t-SNE視覺化資料》,機器學習研究雜誌9.Nov(2008):2579-2605。

(http://www.jmlr.org/papers/volume9/vandermaaten08a/vandermaaten08a.pdf)

博客帖子

•深度學習,NLP和表徵,Christopher Olah。

(http://colah.github.io/posts/2014-07-NLP-RNNs-Representations/)

•在Javascript,使用t-SNE來視覺化頂部Tweep,Andrej Karpathy

(http://karpathy.github.io/2014/07/02/visualizing-top-tweeps-with-t-sne-in-Javascript/)

進一步閱讀

•Hermann,Karl Moritz和Phil Blunsom《用於組合分散式語義的多語言模型》,arXiv preprint arXiv:1404.4641(2014)。

(https://arxiv.org/pdf/1404.4641.pdf)

•Levy,Omer和Yoav Goldberg。 《神經元詞彙嵌入作為隱式矩陣分解》,神經資訊處理系統的進展,2014年。

(http://101.96.8.165/u.cs.biu.ac.il/~nlp/wp-content/uploads/Neural-Word-Embeddings-as-Implicit-Matrix-Factorization-NIPS-2014.pdf)

•Levy,Omer,Yoav Goldberg和Ido Dagan《通過詞彙嵌入的經驗教訓改進分佈相似性》,計算語言學協會3(2015):211-225。

(https://www.transacl.org/ojs/index.php/tacl/article/view/570/124)

•Ling和Wang等人《用於語法問題的Word2Vec的兩個/太簡單的應用》,HLT-NAACL,2015年。

(https://www.aclweb.org/anthology/N/N15/N15-1142.pdf)

4.講座2b——實踐概述[Chris Dyer]

這個講座強調的是該課程的實踐部分。

[幻燈片]

(https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%202b%20-%20Overview%20of%20the%20Practicals.pdf)

[視頻]

(http://101.96.8.164/media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_2b_practicals.mp4)

5.講座3——語言建模和RNN第1部分[Phil Blunsom]

語言建模是許多NLP應用程式中非常實用的重要任務。本講座介紹了語言建模,包括傳統的基於n-gram的方法和更多的當代神經學方法。特別引入流行的迴圈神經網路(RNN)語言模型,並描述其基本的訓練和評估演算法。

[幻燈片]

(https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%203%20-%20Language%20Modelling%20and%20RNNs%20Part%201.pdf)

[視頻]

(http://101.96.8.165/media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_3_modelling_1.mp4)

閱讀

教科書

•深度學習,第10章(http://www.deeplearningbook.org/contents/rnn.html)

博客

•《迴圈神經網路的不合理有效性》,Andrej Karpathy。

(http://karpathy.github.io/2015/05/21/rnn-effectiveness/)

•《字元級語言模型的不合理有效性》,Yoav Goldberg。

(http://nbviewer.jupyter.org/gist/yoavg/d76121dfde2618422139)

•《解釋和說明迴圈神經網路的正交初始化》,Stephen Merity。

(http://smerity.com/articles/2016/orthogonal_init.html)

6.講座4 ——語言建模和RNN第2部分[Phil Blunsom]

本演講是對上一講的繼續補充,並考慮了產生一個有效實施RNN語言模型所涉及的一些問題。描述了梯度消失和爆炸的相關問題,並介紹了諸如長短期記憶網路(LSTM)的架構解決方案。

[幻燈片]

(https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%204%20-%20Language%20Modelling%20and%20RNNs%20Part%202.pdf)

[視頻]

(http://101.96.8.164/media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_4_modelling_2.mp4)

閱讀

教科書

•深度學習,第10章(http://www.deeplearningbook.org/contents/rnn.html)

消失梯度,LSTM等

•《關於訓練迴圈神經網路的難點》Pascanu等人,ICML 2013。

(http://101.96.8.165/jmlr.csail.mit.edu/proceedings/papers/v28/pascanu13.pdf)

•《長短期記憶網路》Hochreiter和Schmidhuber,Neural Computation 1997。

(http://dl.acm.org/citation.cfm?id=1246450)

•《用於統計機器翻譯的使用RNN編碼器的學習短語表徵》,Cho等人,EMNLP 2014。

(https://arxiv.org/abs/1406.1078)

•博客:理解LSTM網路,Christopher Olah。

(http://colah.github.io/posts/2015-08-Understanding-LSTMs/)

處理大詞彙

•《可擴展的分層分散式語言模型》,Mnih和Hinton,NIPS 2009。

(https://papers.nips.cc/paper/3583-a-scalable-hierarchical-distributed-language-model.pdf)

•《一種用於訓練神經概率語言模型的快速簡單演算法》,Mnih和Teh,ICML 2012。

(https://www.cs.toronto.edu/~amnih/papers/ncelm.pdf)

•《使用非常大的目標詞彙來進行神經機器翻譯》,Jean 等人,ACL 2015。

(http://www.aclweb.org/anthology/P15-1001)

•《探索語言模型的極限》,Jozefowicz等人,arXiv 2016。

(https://arxiv.org/abs/1602.02410)

•《GPU的高效softmax近似》,Grave等人,arXiv 2016。

(https://arxiv.org/abs/1609.04309)

•《在雜訊對比估計和負採樣中的注意事項》,Dyer,arXiv 2014。

(https://arxiv.org/abs/1410.8251)

•《機器翻譯中的語用神經語言建模》,Baltescu and Blunsom,,NAACL 2015

(http://www.aclweb.org/anthology/N15-1083)

正則化和dropout

•《dropout在迴圈神經網路中的理論基礎應用》,Gal和Ghahramani,NIPS 2016。

(https://arxiv.org/abs/1512.05287)

•博客:深度學習中的不確定性,Yarin Gal。

(http://mlg.eng.cam.ac.uk/yarin/blog_2248.html)

其他相關知識

•《迴圈 Highway Networks》 Zilly 等人,arXiv 2016。

(https://arxiv.org/abs/1607.03474)

•《迴圈神經網路的能力和可訓練性》Collins等人,arXiv 2016。

(https://arxiv.org/abs/1611.09913)

7.講座5 ——文本分類[Karl Moritz Hermann]

本節課討論了文本分類,從基本的分類器(如樸素貝葉斯分類器)開始,然後慢慢延伸到RNN和卷積網路。

[幻燈片]

(https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%205%20-%20Text%20Classification.pdf)

[視頻]

(http://101.96.8.164/media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_5_text_classification.mp4)

閱讀

•《用於文本分類的迴圈卷積神經網路》,Lai等人,AAAI 2015。

(http://www.aaai.org/ocs/index.php/AAAI/AAAI15/paper/download/9745/9552)

•《一個用於句子建模的卷積神經網路》,Kalchbrenner等人,ACL 2014。

(http://www.aclweb.org/anthology/P14-1062)

•《通過遞迴矩陣向量的語義組合》,Socher等EMNLP 2012。

(https://nlp.stanford.edu/pubs/SocherHuvalManningNg_EMNLP2012.pdf)

•博客:瞭解用於卷積神經網路,Denny Britz。

(http://www.wildml.com/2015/11/understanding-convolutional-neural-networks-for-nlp/)

•論文:組成語義學的分散式表徵,Hermann(2014)。

(https://arxiv.org/abs/1411.3146)

8、第6講——基於Nvidia GPU的深度NLP [Jeremy Appleyard]

本講座介紹了圖形處理單元(GPU)作為一種替代CPU執行的深度學習演算法。討論GPU的優缺點以及瞭解記憶體頻寬和計算對RNN的輸送量的影響的重要性。

[幻燈片]

https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%206%20-%20Nvidia%20RNNs%20and%20GPUs.pdf

[視頻]

http://media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_6_nvidia_gpus.mp4

閱讀

優化GPU上迴圈神經網路的性能 Appleyard等人,arXiv 2016。

(https://arxiv.org/abs/1604.01946)

Persistent RNN:基於晶片儲藏迴圈權重Diamos等人,ICML 2016

(http://jmlr.org/proceedings/papers/v48/diamos16.pdf)

GPU的高效softmax近似 Grave等人,arXiv 2016

https://arxiv.org/abs/1609.04309

9、講座7 ——條件語言模型[Chris Dyer]

在本講座中,我們將語言建模的概念擴展到先前的資訊中。通過調整輸入表示上的RNN語言模型,我們可以生成與內容相關的語言。這個很通用的方法,可以應用於將序列轉換成用於任務的新序列,例如翻譯和總結,或將圖像轉換成描述其內容的字幕。

[幻燈片]

https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%207%20-%20Conditional%20Language%20Modeling.pdf

[視頻]

http://media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_7_conditional_lang_mod.mp4

閱讀

迴圈連續翻譯模型 Kalchbrenner和Blunsom,EMNLP 2013

http://anthology.aclweb.org/D/D13/D13-1176.pdf

序列學習與神經網路 Sutskever等,NIPS 2014

https://arxiv.org/abs/1409.3215

多模態神經語言模型 Kiros等,ICML 2014

http://www.cs.toronto.edu/~rkiros/papers/mnlm2014.pdf

顯示和講述:神經圖像字幕生成器 Vinyals等人,CVPR 2015

https://arxiv.org/abs/1411.4555

10、講座8——注意力生成語言[Chris Dyer]

本講座介紹了深度神經網路中最重要和最有影響力的機制之一:注意力機制。注意力增強了能夠對輸入的特定部分進行調整的迴圈網路,並且是在機器翻譯和圖像字幕等任務中實現高性能的關鍵。

[幻燈片]<>

https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%208%20-%20Conditional%20Language%20Modeling%20with%20Attention.pdf

[視頻]

http://media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_8_conditional_lang_mod_att.mp4

閱讀

通過聯合學習以對準並翻譯的神經機器翻譯。Bahdanau等人,ICLR 2015

https://arxiv.org/abs/1409.0473

顯示,參與和講述:視覺注意力的神經圖像字幕生成。 Xu et 等人,ICML 2015

https://arxiv.org/pdf/1502.03044.pdf

將結構對準偏差納入注意力神經翻譯模型。 Cohn等人,NAACL 2016

http://www.aclweb.org/anthology/N16-1102

BLEU:機器翻譯自動評估方法。 Papineni等人,ACL 2002

http://www.aclweb.org/anthology/P02-1040.pdf

11、講座9——語音辨識(ASR)[Andrew Senior]

自動語音辨識(ASR)是將口語的原始音訊信號轉換為文本記錄的任務。這個講座涵蓋了ASR模型的歷史,從高斯混合到注意力增強RNN,語音的基本語言學以及經常使用的各種輸入和輸出表示。

[幻燈片]

https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%209%20-%20Speech%20Recognition.pdf

[視頻]

http://media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_9_speech_recognition.mp4

12、講座10——從文本到語音(TTS)[Andrew Senior]

本講座介紹了將書面語言轉換成口語(文本到語言)的演算法。TTS是ASR的逆向過程,但在應用的模型中有一些重要的區別。在這裡,我們回顧傳統的TTS模型,然後更多地介紹最近的神經元方法,如DeepMind的WaveNet模型。

[幻燈片]

https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%2010%20-%20Text%20to%20Speech.pdf

[視頻]

http://media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_10_text_speech.mp4

13、講座11——問答[Karl Moritz Hermann]

[幻燈片]

https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%2011%20-%20Question%20Answering.pdf

[視頻]

http://media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_11_question_answering.mp4

閱讀

教機器去閱讀並理解Hermann等人,NIPS 2015

http://papers.nips.cc/paper/5945-teaching-machines-to-read-and-comprehend

回答句選擇的深度學習Yu et等人,NIPS Deep Learning Workshop 2014

https://arxiv.org/abs/1412.1632

14、講座12——記憶[Ed Grefenstette]

[幻燈片]

https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%2012-%20Memory%20Lecture.pdf

[視頻]

http://media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_12_memory.mp4

閱讀

使用具有動態外部記憶的神經網路的混合計算。Graves et al., Nature 2016

http://www.nature.com/nature/journal/v538/n7626/abs/nature20101.html

具有神經注意力的蘊涵推理過程。 Rocktäschel等人,ICLR 2016

https://arxiv.org/abs/1509.06664

學習無界記憶轉化 Grefenstette等,NIPS 2015

http://papers.nips.cc/paper/5648-learning-to-transduce-with-unbounded-memory

端到端記憶網路 Sukhbaatar等,NIPS 2015

https://arxiv.org/abs/1503.08895

14、講座13——神經網路的語言知識

(幻燈片)

https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%2013%20-%20Linguistics.pdf

(視頻)

http://media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_13_linguistic_knowledge_neural.mp4

Piazza

我們將在課堂中使用Piazza以此促進課堂討論。而不是直接通過電子郵件發送問題,我鼓勵你在Piazza上發佈你的問題,由同學、導師和講師來回答。但請注意,本課程的所有講師都自願花費時間參加,並不總是能夠及時回復。

查找我們的課程頁面:https://piazza.com/ox.ac.uk/winter2017/dnlpht2017/home

評估

本課程的初步評估作業將在學期結束後發佈。這項作業所問的問題可以借鑒課程中討論的概念和模型,以及選定的研究出版物。問題的性質將包括分析模型的數學描述,並提出對這些模型的擴展、改進或評估。該作業還可能要求學生閱讀特定的研究出版物,並在課程背景下討論他們提出的演算法。在回答問題時,要求學生既要提出連貫的書面論證,也要使用適當的數學公式,並可能使用偽代碼來說明答案。

課程的實踐部分將以常見的方式進行評估。

致謝

如果沒有DeepMind、牛津大學電腦科學系、Nvidia大學的支持以及來自Microsoft Azure的GPU資源的慷慨捐贈,這個課程是不可能實現的。

arXiv preprint arXiv:1404.4641(2014)。

(https://arxiv.org/pdf/1404.4641.pdf)

•Levy,Omer和Yoav Goldberg。 《神經元詞彙嵌入作為隱式矩陣分解》,神經資訊處理系統的進展,2014年。

(http://101.96.8.165/u.cs.biu.ac.il/~nlp/wp-content/uploads/Neural-Word-Embeddings-as-Implicit-Matrix-Factorization-NIPS-2014.pdf)

•Levy,Omer,Yoav Goldberg和Ido Dagan《通過詞彙嵌入的經驗教訓改進分佈相似性》,計算語言學協會3(2015):211-225。

(https://www.transacl.org/ojs/index.php/tacl/article/view/570/124)

•Ling和Wang等人《用於語法問題的Word2Vec的兩個/太簡單的應用》,HLT-NAACL,2015年。

(https://www.aclweb.org/anthology/N/N15/N15-1142.pdf)

4.講座2b——實踐概述[Chris Dyer]

這個講座強調的是該課程的實踐部分。

[幻燈片]

(https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%202b%20-%20Overview%20of%20the%20Practicals.pdf)

[視頻]

(http://101.96.8.164/media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_2b_practicals.mp4)

5.講座3——語言建模和RNN第1部分[Phil Blunsom]

語言建模是許多NLP應用程式中非常實用的重要任務。本講座介紹了語言建模,包括傳統的基於n-gram的方法和更多的當代神經學方法。特別引入流行的迴圈神經網路(RNN)語言模型,並描述其基本的訓練和評估演算法。

[幻燈片]

(https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%203%20-%20Language%20Modelling%20and%20RNNs%20Part%201.pdf)

[視頻]

(http://101.96.8.165/media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_3_modelling_1.mp4)

閱讀

教科書

•深度學習,第10章(http://www.deeplearningbook.org/contents/rnn.html)

博客

•《迴圈神經網路的不合理有效性》,Andrej Karpathy。

(http://karpathy.github.io/2015/05/21/rnn-effectiveness/)

•《字元級語言模型的不合理有效性》,Yoav Goldberg。

(http://nbviewer.jupyter.org/gist/yoavg/d76121dfde2618422139)

•《解釋和說明迴圈神經網路的正交初始化》,Stephen Merity。

(http://smerity.com/articles/2016/orthogonal_init.html)

6.講座4 ——語言建模和RNN第2部分[Phil Blunsom]

本演講是對上一講的繼續補充,並考慮了產生一個有效實施RNN語言模型所涉及的一些問題。描述了梯度消失和爆炸的相關問題,並介紹了諸如長短期記憶網路(LSTM)的架構解決方案。

[幻燈片]

(https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%204%20-%20Language%20Modelling%20and%20RNNs%20Part%202.pdf)

[視頻]

(http://101.96.8.164/media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_4_modelling_2.mp4)

閱讀

教科書

•深度學習,第10章(http://www.deeplearningbook.org/contents/rnn.html)

消失梯度,LSTM等

•《關於訓練迴圈神經網路的難點》Pascanu等人,ICML 2013。

(http://101.96.8.165/jmlr.csail.mit.edu/proceedings/papers/v28/pascanu13.pdf)

•《長短期記憶網路》Hochreiter和Schmidhuber,Neural Computation 1997。

(http://dl.acm.org/citation.cfm?id=1246450)

•《用於統計機器翻譯的使用RNN編碼器的學習短語表徵》,Cho等人,EMNLP 2014。

(https://arxiv.org/abs/1406.1078)

•博客:理解LSTM網路,Christopher Olah。

(http://colah.github.io/posts/2015-08-Understanding-LSTMs/)

處理大詞彙

•《可擴展的分層分散式語言模型》,Mnih和Hinton,NIPS 2009。

(https://papers.nips.cc/paper/3583-a-scalable-hierarchical-distributed-language-model.pdf)

•《一種用於訓練神經概率語言模型的快速簡單演算法》,Mnih和Teh,ICML 2012。

(https://www.cs.toronto.edu/~amnih/papers/ncelm.pdf)

•《使用非常大的目標詞彙來進行神經機器翻譯》,Jean 等人,ACL 2015。

(http://www.aclweb.org/anthology/P15-1001)

•《探索語言模型的極限》,Jozefowicz等人,arXiv 2016。

(https://arxiv.org/abs/1602.02410)

•《GPU的高效softmax近似》,Grave等人,arXiv 2016。

(https://arxiv.org/abs/1609.04309)

•《在雜訊對比估計和負採樣中的注意事項》,Dyer,arXiv 2014。

(https://arxiv.org/abs/1410.8251)

•《機器翻譯中的語用神經語言建模》,Baltescu and Blunsom,,NAACL 2015

(http://www.aclweb.org/anthology/N15-1083)

正則化和dropout

•《dropout在迴圈神經網路中的理論基礎應用》,Gal和Ghahramani,NIPS 2016。

(https://arxiv.org/abs/1512.05287)

•博客:深度學習中的不確定性,Yarin Gal。

(http://mlg.eng.cam.ac.uk/yarin/blog_2248.html)

其他相關知識

•《迴圈 Highway Networks》 Zilly 等人,arXiv 2016。

(https://arxiv.org/abs/1607.03474)

•《迴圈神經網路的能力和可訓練性》Collins等人,arXiv 2016。

(https://arxiv.org/abs/1611.09913)

7.講座5 ——文本分類[Karl Moritz Hermann]

本節課討論了文本分類,從基本的分類器(如樸素貝葉斯分類器)開始,然後慢慢延伸到RNN和卷積網路。

[幻燈片]

(https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%205%20-%20Text%20Classification.pdf)

[視頻]

(http://101.96.8.164/media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_5_text_classification.mp4)

閱讀

•《用於文本分類的迴圈卷積神經網路》,Lai等人,AAAI 2015。

(http://www.aaai.org/ocs/index.php/AAAI/AAAI15/paper/download/9745/9552)

•《一個用於句子建模的卷積神經網路》,Kalchbrenner等人,ACL 2014。

(http://www.aclweb.org/anthology/P14-1062)

•《通過遞迴矩陣向量的語義組合》,Socher等EMNLP 2012。

(https://nlp.stanford.edu/pubs/SocherHuvalManningNg_EMNLP2012.pdf)

•博客:瞭解用於卷積神經網路,Denny Britz。

(http://www.wildml.com/2015/11/understanding-convolutional-neural-networks-for-nlp/)

•論文:組成語義學的分散式表徵,Hermann(2014)。

(https://arxiv.org/abs/1411.3146)

8、第6講——基於Nvidia GPU的深度NLP [Jeremy Appleyard]

本講座介紹了圖形處理單元(GPU)作為一種替代CPU執行的深度學習演算法。討論GPU的優缺點以及瞭解記憶體頻寬和計算對RNN的輸送量的影響的重要性。

[幻燈片]

https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%206%20-%20Nvidia%20RNNs%20and%20GPUs.pdf

[視頻]

http://media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_6_nvidia_gpus.mp4

閱讀

優化GPU上迴圈神經網路的性能 Appleyard等人,arXiv 2016。

(https://arxiv.org/abs/1604.01946)

Persistent RNN:基於晶片儲藏迴圈權重Diamos等人,ICML 2016

(http://jmlr.org/proceedings/papers/v48/diamos16.pdf)

GPU的高效softmax近似 Grave等人,arXiv 2016

https://arxiv.org/abs/1609.04309

9、講座7 ——條件語言模型[Chris Dyer]

在本講座中,我們將語言建模的概念擴展到先前的資訊中。通過調整輸入表示上的RNN語言模型,我們可以生成與內容相關的語言。這個很通用的方法,可以應用於將序列轉換成用於任務的新序列,例如翻譯和總結,或將圖像轉換成描述其內容的字幕。

[幻燈片]

https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%207%20-%20Conditional%20Language%20Modeling.pdf

[視頻]

http://media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_7_conditional_lang_mod.mp4

閱讀

迴圈連續翻譯模型 Kalchbrenner和Blunsom,EMNLP 2013

http://anthology.aclweb.org/D/D13/D13-1176.pdf

序列學習與神經網路 Sutskever等,NIPS 2014

https://arxiv.org/abs/1409.3215

多模態神經語言模型 Kiros等,ICML 2014

http://www.cs.toronto.edu/~rkiros/papers/mnlm2014.pdf

顯示和講述:神經圖像字幕生成器 Vinyals等人,CVPR 2015

https://arxiv.org/abs/1411.4555

10、講座8——注意力生成語言[Chris Dyer]

本講座介紹了深度神經網路中最重要和最有影響力的機制之一:注意力機制。注意力增強了能夠對輸入的特定部分進行調整的迴圈網路,並且是在機器翻譯和圖像字幕等任務中實現高性能的關鍵。

[幻燈片]<>

https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%208%20-%20Conditional%20Language%20Modeling%20with%20Attention.pdf

[視頻]

http://media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_8_conditional_lang_mod_att.mp4

閱讀

通過聯合學習以對準並翻譯的神經機器翻譯。Bahdanau等人,ICLR 2015

https://arxiv.org/abs/1409.0473

顯示,參與和講述:視覺注意力的神經圖像字幕生成。 Xu et 等人,ICML 2015

https://arxiv.org/pdf/1502.03044.pdf

將結構對準偏差納入注意力神經翻譯模型。 Cohn等人,NAACL 2016

http://www.aclweb.org/anthology/N16-1102

BLEU:機器翻譯自動評估方法。 Papineni等人,ACL 2002

http://www.aclweb.org/anthology/P02-1040.pdf

11、講座9——語音辨識(ASR)[Andrew Senior]

自動語音辨識(ASR)是將口語的原始音訊信號轉換為文本記錄的任務。這個講座涵蓋了ASR模型的歷史,從高斯混合到注意力增強RNN,語音的基本語言學以及經常使用的各種輸入和輸出表示。

[幻燈片]

https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%209%20-%20Speech%20Recognition.pdf

[視頻]

http://media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_9_speech_recognition.mp4

12、講座10——從文本到語音(TTS)[Andrew Senior]

本講座介紹了將書面語言轉換成口語(文本到語言)的演算法。TTS是ASR的逆向過程,但在應用的模型中有一些重要的區別。在這裡,我們回顧傳統的TTS模型,然後更多地介紹最近的神經元方法,如DeepMind的WaveNet模型。

[幻燈片]

https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%2010%20-%20Text%20to%20Speech.pdf

[視頻]

http://media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_10_text_speech.mp4

13、講座11——問答[Karl Moritz Hermann]

[幻燈片]

https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%2011%20-%20Question%20Answering.pdf

[視頻]

http://media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_11_question_answering.mp4

閱讀

教機器去閱讀並理解Hermann等人,NIPS 2015

http://papers.nips.cc/paper/5945-teaching-machines-to-read-and-comprehend

回答句選擇的深度學習Yu et等人,NIPS Deep Learning Workshop 2014

https://arxiv.org/abs/1412.1632

14、講座12——記憶[Ed Grefenstette]

[幻燈片]

https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%2012-%20Memory%20Lecture.pdf

[視頻]

http://media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_12_memory.mp4

閱讀

使用具有動態外部記憶的神經網路的混合計算。Graves et al., Nature 2016

http://www.nature.com/nature/journal/v538/n7626/abs/nature20101.html

具有神經注意力的蘊涵推理過程。 Rocktäschel等人,ICLR 2016

https://arxiv.org/abs/1509.06664

學習無界記憶轉化 Grefenstette等,NIPS 2015

http://papers.nips.cc/paper/5648-learning-to-transduce-with-unbounded-memory

端到端記憶網路 Sukhbaatar等,NIPS 2015

https://arxiv.org/abs/1503.08895

14、講座13——神經網路的語言知識

(幻燈片)

https://github.com/oxford-cs-deepnlp-2017/lectures/blob/master/Lecture%2013%20-%20Linguistics.pdf

(視頻)

http://media.podcasts.ox.ac.uk/comlab/deep_learning_NLP/2017-01_deep_NLP_13_linguistic_knowledge_neural.mp4

Piazza

我們將在課堂中使用Piazza以此促進課堂討論。而不是直接通過電子郵件發送問題,我鼓勵你在Piazza上發佈你的問題,由同學、導師和講師來回答。但請注意,本課程的所有講師都自願花費時間參加,並不總是能夠及時回復。

查找我們的課程頁面:https://piazza.com/ox.ac.uk/winter2017/dnlpht2017/home

評估

本課程的初步評估作業將在學期結束後發佈。這項作業所問的問題可以借鑒課程中討論的概念和模型,以及選定的研究出版物。問題的性質將包括分析模型的數學描述,並提出對這些模型的擴展、改進或評估。該作業還可能要求學生閱讀特定的研究出版物,並在課程背景下討論他們提出的演算法。在回答問題時,要求學生既要提出連貫的書面論證,也要使用適當的數學公式,並可能使用偽代碼來說明答案。

課程的實踐部分將以常見的方式進行評估。

致謝

如果沒有DeepMind、牛津大學電腦科學系、Nvidia大學的支持以及來自Microsoft Azure的GPU資源的慷慨捐贈,這個課程是不可能實現的。