Stanford CS224n 第一講:深度自然語言處理

第一節課主要是介紹了NLP(尤其是Deep NLP)的背景知識。
主要有一下幾點:

  1. 什麼是NLP?
  2. NLP的應用
  3. NLP的難點
  4. Machine Learning vs. Deep Learning

接下來,根據課程視頻+自己的理解,我將一一詳細介紹以上的4部分。

1. 什麼是NLP?
Natural language processing (NLP) 是 計算機科學+AI+語言學 的交叉產物;
它的目標是讓機器能夠處理或者明白自然語言(text/speech),從而讓機器完成對人類有用的服務。但是讓機器完全明白自然語言(即AI-complet)還是有困難的,在接下來的第三點中將對此做詳細介紹;
自然語言處理的處理層級包括以下四個部分:形態分析(Morphological analysis)、句法分析(Syntactic analysis)、語義分析(Semantic Interpretation)、 對話處理(Discourse Processing)
在這裏插入圖片描述

2. NLP的應用
NLP的一些應用包括:拼寫檢錯、關鍵字查找、NER(命名實體識別)、機器翻譯、文本分類、自動問答系統,還有一些爲其他AI任務服務的應用。
ps:本人在實驗室中主要做的是任務是從網頁上抽取學術信息(期刊的影響因子、ISSN號,簡介等;論文作者的郵箱、電話、頭像、機構等)的任務,有點類似於智能爬蟲,相當於NER的一個應用。項目鏈接:http://www.acheadline.com/ 歡迎下載使用。

3.NLP的難點
對於現實世界的知識的表示、學習和應用是複雜的;
人類語言存在歧義性,同一句話可以衍生出不同的意思;
對於人類語言的理解,很多時候依賴於說話時的 場景、常識以及上下文。
ps:個人覺得語言的歧義是一個比較大的問題。
下雨/天留客/天留/我不留
下雨天/留客天/留我不/留

4.Machine Learning vs. Deep Learning
在課程中Christopher Manning一直強調深度學習在NLP任務中以及其他機器學習任務中的重要性。我認爲最重要的一點是,傳統的機器學習方法需要花費大量的人力物力進行特徵工程,真正讓機器自動學習的過程只佔用了很少的時間;而深度學習在 一些任務中不需要進行特別多的特徵工程,甚至可以直接將raw data作爲輸入,深度學習模型會自動選擇較好的特徵對輸入進行表示,並且給出輸出。
ps:個人覺得深度學習模型雖好,但是它需要大量的數據和較好的硬件環境作支撐,才能取得較好的效果;而且深度學習模型在可解釋性上也沒有傳統的機器學習方法好。

第一次寫博客,以上內容皆來自於本人Stanford CS224n的學習筆記,如有錯誤,歡迎各路大神批評指正;
下一節課是單詞的向量化表示word2vec,未完待續…

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章