概述
自然語言處理(NLP)的正式定義:是一個使用計算機(jī)科學(xué)、人工智能(AI)和形式語言學(xué)概念來分析自然語言的研究領(lǐng)域。不太正式的定義表明:它是一組工具,用于從自然語言源(如web頁面和文本文檔)獲取有意義和有用的信息。
NLP工具的實現(xiàn)一般是基于機(jī)器學(xué)習(xí)與深度學(xué)習(xí)、其它算法(Lucene Core);基于前兩者的實現(xiàn)是比較流行且持續(xù)在探索演進(jìn)。
NLP任務(wù)概述
NLP需要一組任務(wù)的組合,如下列舉所示:
分詞
文本可以分解為許多不同類型的元素,如單詞、句子和段落(稱為詞或詞項),并可選地對這些詞執(zhí)行附加處理;這種額外的處理可以包括詞干提取、詞元化(也稱為詞形還原)、停用詞刪除、同義詞擴(kuò)展和文本轉(zhuǎn)換為小寫。而分詞一般都是基于各種分詞器;比如Lucene、基于機(jī)器學(xué)習(xí)與深度學(xué)習(xí)的框架。
文本斷句
文本斷句也可以理解為文本識別。即識別句子(即斷句);此項功能是有用的,原因有很多。一些NLP任務(wù),如詞性標(biāo)注和實體提取,是針對單個句子的。對話式的應(yīng)用程序還需要識別單獨的句子。為了使這些過程正確工作,必須正確地確定句子邊界。
將文本分割成語句也稱為語句邊界消歧(Sentence Boundary Disambiguation,SBD)。文本斷句的常用方法包括使用一組規(guī)則或訓(xùn)練一個模型來檢測它們。
特征工程
即用特征表示文本。特征工程在NLP應(yīng)用開發(fā)中起著至關(guān)重要的作用,這對于機(jī)器學(xué)習(xí)非常重要,特別是在基于預(yù)測的模型中。它是利用領(lǐng)域知識將原始數(shù)據(jù)轉(zhuǎn)換成特征的過程,從而使機(jī)器學(xué)習(xí)算法能夠工作。特征使我們能夠更集中地查看原始數(shù)據(jù)。一旦確定了特征,就進(jìn)行特征選擇以減少數(shù)據(jù)的維數(shù)。常用的框架及算法:
- n-gram
- 詞嵌入
- Glove
- word2Vec
- 降維
- 主成分分析
- t-SNE
命名實體識別
識別人和事物的過程稱為命名實體識別(NER)。實體(諸如人物和地點等)與具有名稱的類別相關(guān)聯(lián),而這些名稱識別了它們是什么。
NER過程涉及兩個任務(wù):
- 實體檢測
- 實體分類
檢測是指在文本中找到實體的位置。一旦找到它,確定被發(fā)現(xiàn)的實體是什么類型非常重要。這兩個任務(wù)完成后,其結(jié)果可以用來解決其他任務(wù),如搜索和確定文本的含義。例如,任務(wù)可能包括從電影或書評識別名字,并幫助找到可能感興趣的其他電影或書籍。提取位置信息有助于對附近的服務(wù)提供參考。
詞性標(biāo)注
標(biāo)注是將描述分配給詞項或部分文本的過程。此描述稱為標(biāo)簽。詞性標(biāo)注是將詞性標(biāo)簽分配給詞項的過程。這個過程是檢測詞性的核心。
一般的標(biāo)注過程包括標(biāo)記文本、確定可能的標(biāo)簽和解決歧義標(biāo)簽。算法用于進(jìn)行詞性標(biāo)識(標(biāo)注)。一般有兩種方法。
- 基于規(guī)則:基于規(guī)則的標(biāo)注器使用一組規(guī)則、單詞詞典和可能的標(biāo)簽。當(dāng)一個單詞有多個標(biāo)簽時可以使用這些規(guī)則。規(guī)則通常使用單詞的上下文來選擇標(biāo)簽。
- 基于隨機(jī)域:基于隨機(jī)域的標(biāo)注器要么是基于馬爾可夫模型,要么是基于線索的,使用決策樹或最大熵。馬爾可夫模型是有限狀態(tài)機(jī),其中每個狀態(tài)都有兩個概率分布。其目的是為句子找到最優(yōu)的標(biāo)簽序列。還可以使用隱馬爾可夫模型(Hidden Markov Model,HMM)。在這些模型中,狀態(tài)轉(zhuǎn)換是不可見的。
對句子進(jìn)行適當(dāng)?shù)臉?biāo)注可以提高后續(xù)處理任務(wù)的質(zhì)量,可用于許多后續(xù)任務(wù),如問題分析、文本情感分析等。
分類
分類涉及為文本或文檔中找到的信息分配標(biāo)簽。當(dāng)過程發(fā)生時,這些標(biāo)簽可能已知,也可能未知。當(dāng)標(biāo)簽已知時,這個過程稱為分類。當(dāng)標(biāo)簽未知時,該過程稱為聚集。
文本分類用于多種目的:垃圾郵件檢測、著作權(quán)歸屬、情感分析、年齡和性別識別、確定文檔的主題、語言識別等。
有兩種基本的文本分類技術(shù):
- 基于規(guī)則的分類
- 有監(jiān)督的機(jī)器學(xué)習(xí)
基于規(guī)則的分類使用單詞和其他屬性的組合,這些屬性是根據(jù)專家精心設(shè)計的規(guī)則組織起來的。這些方法非常有效,但是創(chuàng)建它們是一個非常耗時的過程。有監(jiān)督的機(jī)器學(xué)習(xí)(Supervised machine learning,SML)采用一組帶注釋的訓(xùn)練文檔來創(chuàng)建模型。該模型通常稱為分類器。有許多不同的機(jī)器學(xué)習(xí)技術(shù),包括樸素貝葉斯、支持向量機(jī)(Support Vector Machine,SVM)和k近鄰算法等。
關(guān)系提取
關(guān)系提取是標(biāo)識文本中存在的關(guān)系的過程。
實體之間(例如句子的主語和它的賓語、其他實體,或者它的行為之間)存在各種關(guān)系。我們可能還想確定關(guān)系并以結(jié)構(gòu)化的形式呈現(xiàn)它們。我們可以使用這些信息來顯示結(jié)果,以供人們立即使用,或者格式化關(guān)系,以便更好地將它們用于后續(xù)任務(wù)。
提取的關(guān)系可以用于多種目的,包括:
- 建立知識庫
- 創(chuàng)建目錄
- 產(chǎn)品搜索
- 專利分析
- 股票分析
- 情報分析
有許多可用的技術(shù)來提取關(guān)系??煞譃槿缦聨追N:文章來源:http://www.zghlxwxcb.cn/news/detail-628913.html
- 手工方式
- 監(jiān)督方法
- 半監(jiān)督方法或無監(jiān)督方法
- 引導(dǎo)方法
- 遠(yuǎn)程監(jiān)督方法
- 無監(jiān)督的方法
參考
《Java自然語言處理(原書第2版)》文章來源地址http://www.zghlxwxcb.cn/news/detail-628913.html
到了這里,關(guān)于聊聊自然語言處理NLP的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!