目錄
自然語言處理髮展及應用
注:本篇博客爲文獻學習筆記
參考文獻:自然語言處理髮展及應用綜述_趙京勝
Summary
總結了自然語言處理的概念、發展歷史、研究方法、基礎研究的四個層次、應用領域、預測與展望。
(其中詳細講了文本抽取和自動文摘,我對於這兩個沒有深入研究,只是進行了簡單的瞭解。)
概念
定義
自然語言處理(Natural Lan-guage Processing,NLP)是將人類交流溝通所用的語言經過處理轉化爲機器所能理解的機器語言,是一種研究語言能力的模型和算法框架,是語言學和計算機科學的交叉學科。
流程
- 自然語言理解(Natural language Un-derstanding ,NLU),NLU 主要是理解文本的含義,具體到每個單詞和結構都需要被理解;
- 自然語言生成(Natural language Generation,NLG),NLG 與理解相反,分三個階段
- 確定目標
- 通過評估情況和可用的交際資源來計劃如何實現目標
- 並將計劃形成爲文本
- 有點不太理解是怎麼生成的
發展歷史
四個階段:
- 1956 年以前的萌芽期
- 1936 年 A.M.Turing 發明了“圖靈機”
- 後來 Kleene 又在這種模型之上提出了有限自動機和正則表達式。
- 1957-1970 年是快速發展期
- 1956 年,Chomsky 提出了上下文無關語法
- 快速發展期,上下文無關語法的提出使得該領域的研究分爲了基於規則的符號派和基於概率的隨機派
- 1971-1993 年是低谷發展期
- 70 年代的語音識別算法研製成功,隱馬爾科夫模型(Hidden Markov Model,HMM)提出並得到了廣泛應用[1]
- 1994 年到如今是復甦融合期
- 首先是概率方法的大規模應用;
- 其次是計算機的速度和存儲量的大幅度提高,促使該領域的物質基礎得到了改善;
- 最後是網絡技術的發展帶來的強大推動力。
研究方法
中文信息處理主要是對字、詞、段落或篇章進行處理。
- 基於規則的方法
- 前者是人工根據語言相關的規則對文本進行處理;
- 基於統計的方法
- 後者則是通過大規模的數據庫分析數據,從而實現對自然語言的處理。
>自然語言處理流程(部分不太理解)
- 獲取預料
- 對語料進行預處理
- 語料清理
- 分詞
- 詞性標註
- 去停用詞
- 特徵化(向量化)
- 把分詞後的字和詞表示成計算機可計算的類型向量),這樣有助於較好的表達不同詞之間的相似關係。
- 模型訓練
- 有監督、半監督和無監督學習模型
- 訓練模型時可能會出現過擬合和欠擬合的狀況
- 過擬合
- 學習到了噪聲的數據特徵
- 解決過擬合的方法主要有增加正則化項從而增大數據的訓練量
- 不太理解
- 欠擬合
- 是不能較好的擬合數據
- 解決欠擬合則要減少正則化項,增加其他特徵項處理數據
- 不太理解
- 對效果進行評價
- 評測指標有準確率(Precision)、召回率 (Recall)、F 值 (F-Measure)等
- 準確率(Precision)
- 準確率是衡量檢索系統的查準率
- 召回率 (Recall)
- 召回率是衡量檢索系統的查全率
- F 值 (F-Measure)
- 綜合準確率和召回率用於反映整體的指標,當 F 值較高時則說明試驗方法有效
- 不太理解準確率和召回率
基礎研究的四個層面
>1. 詞法分析
- 詞法分析主要包括分詞、詞性標註、命名實體識別和詞義消歧。詞性和詞義標註是詞法分析的主要任務。在中文自然語言處理的分詞模塊中,詞法分析是最核心的一部分,只有做好分詞工作,剩下的工作才能順利進行。
- 詞性是詞彙最基本的語法屬性,使用詞性標註便於判定每個詞的語法範疇。
- 詞義標註、詞義消歧主要解決多語境下的詞義問題,因爲在多語境下一個詞可能會擁有很多含義,但在固定情境下意思往往是確定的。
- 命名實體識別的主要任務是識別文本中具有特定意義的詞語如人名、地名等,併爲其添加標註,是自然語言處理的一個重要工具。
- 詞法分析的實現主要通過基於規則、基於統計、基於機器學習的方法。
>2. 句法分析
句法分析的主要任務是爲了確定句子中各組成成分之間的關係,也就是其句法結構,技術實現上主要分爲修辭結構分析和依存關係分析,功能上可分爲完全句法分析和局部句法分析。
-
修辭結構分析
-
依存關係分析
- 依存句法也稱從屬關係語法。一個依存關係可分爲核心詞和依存詞[6]
- 核心詞是一個句子的根節點,一個句子只有一個,它負責支配句子中的其他詞,核心詞一般與依存詞之間存在着一定的關係,如主謂關係、動賓關係和並列關係等。
-
完全句法分析
- 完全句法分析是要通過一套完整的分析過程獲得一個句子的句法樹
- Chomsky 形式文法是極爲重要的理論,根據重寫規則分爲 4 級[5]
- 0 型文法(無約束文法)
- 1 型文法(上下文有關文法)
- 2 型文法(上下文無關文法)
- 3 型文法(正則文法)
- 這 4 種文法統稱爲短語結構語法
-
局部句法分析
- 局部分析也叫淺層分析,僅獲得局部成分的語法。
- 淺層句法分析可分爲兩個子任務
- 識別和分析語塊
- 分析語塊之間的依附關係
>3. 語義分析
對於不同的語言單位,語義分析有着不同的意義。
- 在詞的層面上,語義分析指詞義消歧;
- 在句的層面上指語義角色標註;
- 在篇章的層面上指共指消解[7]。
語義分析是目前 NLP研究的重點方向。
>4. 語用分析
語用分析主要是把文本中的描述和現實相對應,形成動態的表意結構。
語用分析有四大要素:發話者、受話者、話語內容和語境。
- 前兩者指語言的發出者和接受者;
- 話語內容指發話者用語言符號表達的具體內容;
- 語境指言語行爲發生時所處的環境,主要有上下文語境、現場語境、交際語境和背景知識語境。
- 語用分析還是不太理解用來幹嘛的,分析對話文本嗎
應用領域
> 信息檢索(IR)
有兩方面的任務[8]
- 存儲海量信息
- 根據用戶需求快速查找相關信息
> 文本分類
是根據一套分類規則對文本進行自動分類的過程
>情感分析
是一種通過判斷文本情感極性去表徵文檔的技術
> 機器翻譯
是通過計算機將一種語言翻譯到其他語言
> 社會計算
是採用互聯網、大數據和機器學習等技術來研究社會問題,並尋找出一種合適的方法去解決問題。
>1. 信息抽取
信息抽取是將嵌入在文本中的非結構化信息提取並轉換爲結構化數據的過程,從自然語言構成的語料中提取出命名實體之間的關係,是一種基於命名實體識別更深層次的研究[9]
。
信息抽取的主要方法…
信息抽取的主要工作…
>2. 自動文摘
自動文摘是利用計算機按照某一規則自動地對文本信息進行提取、集合成簡短摘要的一種信息壓縮技術,旨在實現兩個目標
- 使語言的簡短
- 保留重要信息[16]
自動文摘的分類…
自動文摘生成方法…
預測和展望
>難點
理解語言不能光靠邏輯,還要有強大的知識庫,需要有這些支撐才能更好的處理數據並對文本進行進一步的理解和分析
>發展趨勢
- 可能從人工構建知識到自動構建知識,人們可以利用一些顯性知識構建一種方法,挖掘語言成分之間的關係,這樣就避免了人工的繁瑣和耗時
- 文本理解: 在文本的理解和推理層面可以由淺及深,完成對文本的深層次理解
- 哈爾濱工業大學劉挺教授在第三屆中國人工智能大會上提到:可以使閱讀理解作爲一個深入探索自然語言理解的平臺
- Google 已經推出了這樣的測試機,也就是說讓計算機理解一篇文章,接下來人類對計算機進行提問,觀察計算機的回答能力完成測試。
- 未來自然語言處理的發展趨勢是 NLP 許多領域的深度結合,從而爲各相關行業創造價值。銀行、電器和醫學等領域對自然語言處理的需要都在日益提高, NLP+ 與各行業的結合越緊密,專業化的服務趨勢就會越來越強