深度學習和自然語言處理:介紹
0 回顧與展望
上個系列,小編系統地推送了Pandas庫的工程實踐應用,總結了Pandas能做的10件事,從數據結構和原理層面解釋Pandas的使用技巧,歡迎您閱讀這個系列。
接下來,小編將會系統地推送斯坦福大學Richard Socher教授的最新課程:深度學習和自然語言處理。
這門課程比較新,結合深度學習,神經網路,同時注重工程應用,比如應用Tensorflow解決自然語言處理領域的問題,使用的語言是Python,也是深度學習領域大家都在用的,所以強烈推薦大家與我一起學習Richard Socher大神的這門課及課程給出的參考資料。計算
Richard 的第一講是對自然語言處理的介紹,主要包括以下幾方面:
1) 自然語言處理是什麼?
2) 人類語言的本質
3) 理解語言的難點在哪裡?
4) Richard大神親抒自然語言處理目前的工程應用,各個領域的,激動中。
1 NLP是什麼
自然語言處理是計算機科學,人工智慧和語言學的交叉科學,旨在讓計算機去處理或理解自然語言,以便做一些有意義的事情。
理解和表達語言的意思是一件困難而值得探索的事。
精準的語言理解是AI的全部。
2 語言特點
人類語言大多是離散地,帶有符號表達,可以分類的,傳遞含義的系統。語言符號的分類可以為:聲音,手勢,書寫,圖像。
3 深度學習
經典標準的機器學習不同,深度學習會自動地學到好的特徵或表示,如圖所示,它會嘗試學到h1, h2, h3, h4(輸出層)這四個層的表達關係,輸入的x可以是:聲音,像素,字元,詞語。在這門課程中會介紹已經很好地解決了NLP問題的各種不同神經網路,而不會詳細的介紹神經網路的發展歷程,關於NN的發展歷史,請參考之前的推送:機器學習、深度學習乾貨分享。 深度學習是在2010年開始逐漸超越傳統的機器學習,是什麼使得DL超越了ML呢?
大數據技術的發展極大地促進了DL的發展;
更快的計算機,多核CPU/GPU的發展;
更好的演算法出現:包括,更易於學習的中間件的表達,高效的端到端的聯合系統學習,用上下文和任務間切換的學習方法,更好的正則化技術和最優化技術。
這些發展首先應用在了語音識別,圖像識別,然後是NLP。DL應用在語音識別是先例,代表性的論文:Context-DependentPre-trained DeepNeuralNetworksforLarge VocabularySpeechRecognition Dahletal.(2010) 後來應用在圖像處理上,代表性的論文:
ImageNetClassificationwithDeep ConvolutionalNeuralNetworksby Krizhevsky,Sutskever,&Hinton (2012),用於圖像識別:
4 NLP難點
表達具有複雜性,學習和使用語言知識,情景知識,上下文知識,幾乎所有我們能聽聞、觀察到的知識,解釋翻譯都得依賴於這些。
同時,人類的語言是模稜兩可的。
近期,自然語言處理已經取得的進展,大家可以參考之前的推送:
5 NLP的應用
1) 情感分析
接下來Richard 教授會講 RNNs, TreeRNNs用於情感分析。
2) 問答系統(QA)
DL基本不同於傳統的特徵工程表達,而是基於詞向量的深度學習框架。
3) 自動應答系統
典型的應用是谷歌的 Inbox APP,經典的神經語言模型的代表是RNN網路。
4) 機器翻譯
同樣,深度學習不同於傳統的翻譯技術,應用神經機器翻譯,輸入的句子(左下角)被映射為向量,輸出後的句子(右上角)為翻譯後的句子。這方面的重要論文參考:Sutskeveretal.2014,Bahdanauetal.2014,LuongandManning2016.
6 向量表達
NLP的所有層,都是用向量來進行表達,因此如何將詞語表示為如下所示的向量,Richard教授會在接下來帶領我們學習。
以上是本堂課的筆記,歡迎大家留言,這部分對NLP的應用介紹更詳細的資料,請參考:
2. 圖演算法(含樹)
3. 動態規劃
4. LeetCode
5. Python
6. 數據處理三劍客
7. 數學知識
8. 數據預處理
9. 機器學習演算法實例大全
10. 深度學習
11. Tensorflow
12. 自然語言處理
13. 上海沙龍
如果文章對您有幫助,歡迎點贊、轉發。你的支持=彼此的進步
演算法channel∣原創乾貨分享
TAG:演算法channel |