百度PaddlePaddle + NLP 聽課筆記(一)

本系列分享貼主要是對課程上的內容的一些總結和重要內容的記錄,受限於csdn的帖子分類,歸於原創,但是主要內容均來源於百度PaddlePaddle課程鏈接. 更多具體的內容和資源,請移步百度paddlepaddle平臺進行學習.

 

# 主要學習課程:

[百度架構師手把手教深度學習](https://aistudio.baidu.com/aistudio/education/group/info/888)

## 第一堂課程:

[4-1 自然語言處理綜述](https://aistudio.baidu.com/aistudio/projectdetail/286390)

 

## 本次課程重點:

 

1. 自然語言處理(Natural Language Processing,簡稱NLP)被譽爲人工智能皇冠上的明珠,是計算機科學和人工智能領域的一個重要方向。

2. NLP 的起源和歷史, 用來說明對自然語言妥當處理往往決定了戰爭的勝利或是政權的更迭。

2.1 16世紀的英國大陸,英格蘭和蘇格蘭 政權之爭 , 破解自然語言的密碼獲得政權之爭的勝利.

2.2 1950年二戰,破解納粹德國的恩尼格瑪密碼成爲盟軍對抗納粹的重要戰場。

從1956年,自然語言的研究就被分爲了以語言學爲基礎的符號主義學派,以及以概率統計爲基礎的連接主義學派。

# NLP的主要發展時期

1. 符號主義時期

在自然語言處理髮展的興起階段,大量的研究工作都聚焦從語言學角度,分析自然語言的詞法、句法等結構信息,並通過總結這些結構之間的規則,達到處理和使用自然語言的目的。這一時期的代表人物就是喬姆斯基和他提出的“生成式文法”。

2. 連接主義時期

1980年,由於計算機技術的發展和算力的提升,個人計算機可以處理更加複雜的計算任務,自然語言處理研究得以復甦,研究人員開始使用統計機器學習方法處理自然語言任務。

3. 深度學習時期

從2006年深度神經網絡反向傳播算法的提出開始,伴隨着互聯網的爆炸式發展和計算機(特別是GPU)算力的進一步提高,人們不再依賴語言學知識和有限的標註數據,自然語言處理領域邁入了深度學習時代。

# 自然語言處理技術面臨的挑戰

1. 語言學角度

自然語言數量多、形態各異,理解自然語言對人來說本身也是一件複雜的事情,如同義詞、情感傾向、歧義性、長文本處理、語言慣性表達等。

2. 計算角度

自然語言技術的發展除了受語言學的制約外,在計算角度也天然存在侷限。顧名思義,計算機是計算的機器,現有的計算機都以浮點數爲輸入和輸出,擅長執行加減乘除類計算。自然語言本身並不是浮點數,計算機爲了能存儲和顯示自然語言,需要把自然語言中的字符轉換爲一個固定長度(或者變長)的二進制編碼

 

# 自然語言處理的常見任務

自然語言處理是是非常複雜的領域,是人工智能中最爲困難的問題之一,常見的任務如 圖9 所示:

  • 詞和短語級任務:包括切詞、詞性標註、命名實體識別(如“蘋果很好喫”和“蘋果很偉大”中的“蘋果”哪個是蘋果公司?)、同義詞計算(如“好喫”的同義詞是什麼?)等以詞爲研究對象的任務。
  • 句子和段落級任務:包括文本傾向性分析(如客戶說:“你們公司的產品真好用!”是在誇讚還是在諷刺?)、文本相似度計算(如“我坐高鐵去廣州”和“我坐火車去廣州”是一個意思嗎?)等以句子爲研究對象的任務。
  • 對話和篇章級任務:包括機器閱讀理解(如使用醫藥說明書回答患者的諮詢問題)、對話系統(如打造一個24小時在線的AI話務員)等複雜的自然語言處理系統等。
  • 自然語言生成:如機器翻譯(如“我愛飛槳”的英文是什麼?)、機器寫作(以AI爲題目寫一首詩)等自然語言生成任務。

 

# 使用飛槳探索自然語言處理

接下來,讓我們一起探索幾個經典的自然語言處理任務,包括:

  • 計算詞語之間的關係(如同義詞):word2vec
  • 理解一個自然語言句子:文本分類和相似度計算
  • 計算機寫一首詩:自然語言生成-seq2seq模型

一般來說,使用飛槳完成自然語言處理任務時,都可以遵守一個相似的套路,包括:

  1. 準備數據:準備所需要的數據,將數據處理成神經網絡可以計算的形式。
  2. 定義網絡:使用飛槳定義出神經網絡的結構,包括輸入層,中間層(又叫隱層)和輸出層,特別的,還需要定義好神經網絡的損失函數和優化器,便於網絡訓練。
  3. 訓練網絡:將準備好的數據逐個送入神經網絡中,進行訓練,並在訓練中觀察網絡是否正常收斂。
  4. 評估網絡:把訓練好的網絡保存起來,並使用測試集測試網絡的效果,並根據測試效果反覆迭代。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章