2023自然語言處理導論_第1頁
2023自然語言處理導論_第2頁
2023自然語言處理導論_第3頁
2023自然語言處理導論_第4頁
2023自然語言處理導論_第5頁
已閱讀5頁,還剩699頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

自然語言處理導論第一章

緒論1自然語言處理的基本概念21.1自然語言處理的基本范式1.2本書的內容安排1.3目錄

Contents 自然語言處理的基本概念31.1自然語言處理的基本范式1.2本書的內容安排1.3目錄

Contents 自然語言處理簡史自然語言處理的主要研究內容自然語言處理的主要難點1.1什么是自然語言處理?自然語言處理(Natural

Language

Processing,NLP)旨在探索實現人與計算機之間用自然語言進行有效交流的理論與方法。4---吳立德《大規模文本處理》能夠理解自然語言的意義---

自然語言理解(Natural

Language Understanding,NLU)以自然語言文本來表達給定的意圖、思想等---

自然語言生成(Natural

Language

Generation,NLG)語言是人類與其他動物最重要的區別邏輯思維以語言的形式表達知識以文字的形式記錄和傳播如果人工智能想要獲取知識,就必須懂得理解人類使用的不太精確、可能有歧義、混亂的語言。1.1語言是人類與其他動物最重要的區別5自然語言處理的研究歷史可以追溯到1947

年1947年

Warren

Weaver

提出了利用計算機翻譯人類語言的可能1949年發布《Translation》(翻譯)備忘錄1950年

Alan

Turing

發表《ComputingMachineryand

Intelligence》1954年

Georgetown

University與IBM

合作的機器翻譯演示系統將60

多個俄語句子翻譯成了英文1.1.1自然語言處理的研究歷史悠久620世紀50年代末到60年代的初創期、20世紀70年代到80年代的理性主義時代、20世紀90年代到21世紀初的經驗主義時代以及2006年至今的深度學習時代。1.1.1自然語言處理的研究歷史悠久圖

1.1

自然語言處理簡史時間線7符號學派和隨機學派Noam Chomsky為代表的符號學派提出了形式語言理論,基于1957年發表的《Syntactic Structures》(句法結構)介紹了生成語法的概念,并提出了一種特定的生成語法稱為轉換語法。開啟了使用數學方法研究語言的先河。隨機學派則是以

1959

Bledsoe

和Browning

將貝葉斯方法(

Bayesianmethod)應用于字符識別問題為代表。試圖通過貝葉斯方法來解決自然語言處理中的問題。計算語言學(Computational

Linguistics)概念也被正式,1962年ACL成立,1965年第一屆國際計算語言學大會(The

International

Conference

on

Computational

Linguistics,COLING)1.1.120世紀50年代末到60年代的初創期8基于邏輯的范式、基于規則的范式和隨機范式1970年Colmerauer等人使用邏輯方法研制Q系統語言的先河1972年SHRDLU系統使用規則范式模擬了一個玩具積木世界80年代初隱馬爾可夫模型等模型應用于詞性標注、姓名檢索等1.1.120世紀70年代到80年代的理性主義時代9基于機器學習和數據驅動1989年機器翻譯任務中引入語料庫方法樸素貝葉斯、K

近鄰、支撐向量機、最大熵模型、神經網絡、條件隨機場、感知機等方法1.1.120世紀90年代到21世紀初的經驗主義時代10深度神經網絡+向量表示2006年基于深度信念網絡(Deep

Belief

Networks,

DBN)方法2011年《Natural

languageprocessing

(almost)from

scratch》2014

Seq2Seq(序列到序列)的模型在機器翻譯任務上取得了非常好的效果,并且完全不依賴任何人工特征循環神經網絡、長短時記憶網絡、遞歸神經網絡、卷積神經網絡、圖神經網絡等1.1.12006年至今的深度學習時代11超大規模語言模型2018年上下文相關的文本表示方法ELMoBERT、GPT、XLNet、ERNIE等預訓練微調范式GPT3、Palm等超大規模語言模型1.1.12018年至今大模型12自然語言處理的研究內容十分龐雜整體:基礎算法研究和應用技術研究語言單位角度:字、詞、短語、句子、段落以及篇章等不同粒度語言學研究角度:形態學、語法學、語義學、語用學等不同層面機器學習方法層面:有監督、無監督、半監督、強化學習等自然語言處理研究與機器學習和語言學研究交織在一起,使得自然語言處理的研究內容涉及范圍廣,學科交叉度大。1.1.2自然語言處理的主要研究內容1314層次詞匯短語句子篇章粒度語料庫形態語法語義應用詞形分析詞性標注句法分析篇章分析情感分析文本摘要機器翻譯知識圖譜智能問答語義分析信息抽取詞義消歧語言模型自然語言生成圖

1.2

自然語言處理主要研究內容1.1.2自然語言處理的主要研究內容自然語言處理難的根本原因:自然語言在各個層面都廣泛存在的各種各樣的歧義性自然語言文本從形式上是由字符(包括中文漢字、英文字母、符號)組成的字符串由字母或者漢字可以組成詞,由詞可以組成詞組,由詞組可以組成句子,進而組成段落、篇章無論哪種粒度的語言單元,還是從一個層級向上一個層級轉變中都存在歧義和多義現象形式上一樣的字符串,可以理解為不同的詞串、詞組串,并有不同的意義Joseph

F.

Kess

和Ronald

A.Hoppe

甚至還提出了“語言無處不歧義”

理論1.1.3自然語言處理的主要難點151.1.3自然語言處理的主要難點—語音歧義16語音歧義(Phonetic Ambiguity)主要體現在口語中,是由于語言中同音異義詞(Homophone

)、爆破音不完全、重音位置不明確等原因造成的。漢語中只有413

個不同的音(節),如果結合聲調的變化組合,也僅有

1277

個音(節),但是漢字則多達數萬個英語中連讀、爆破音、重音位置等造成的語音異義也非常常見例如: 請問您貴姓? 免貴姓

zhangchéng

shì:城市、程式、成事、城事Please

hand

me

the

flower.

請把花遞給我。Please

hand

me

the

flour.

請把面粉遞給我。1.1.3自然語言處理的主要難點—詞語切分歧義詞語切分歧義(Word Segmentation Ambiguity)是由字符組成詞語時的歧義現象。英語等印歐語系的語言來說,絕大部分單詞之間都由空格或標點分割漢語、日語等語言來說,單詞之間通常沒有分隔符。例如:

語言學是一門基礎學科。這門語言學起來很困難。南京市長江大橋17詞義歧義(WordSense

Ambiguity)是指詞語具有相同形式但是不同意義。例如:

“打”字在《現代漢語詞典(第七版)》中,有兩個讀音“dá”和“d?!?,分別作為量詞、動詞和介詞,在作為動詞時“打”字有

24

個意項打dǎ

動詞:用手或器具撞擊物體:~

|~鼓器皿、蛋類等因撞擊而破碎:碗~

了|

雞飛蛋~毆打;攻打:~

|~

援發生與人交涉的行為:~

官司

|~

交道汲??;盛取:~

|~

醬油1.1.3自然語言處理的主要難點—詞義歧義18結構歧義(Structural Ambiguity)是由詞組成詞組或者句子時,由于其組成的詞或詞組間可能存在不同的語法或語義關系而出現的(潛在)歧義現象?!癡P+

+

+NP”

型歧義結構沒有分隔符例如:

反對|

的|

是|

少數人“VP+N1+

+N2”

型歧義結構例如:

咬死了|獵人|

|

狗“

N1+

+N2+

+N3”

型歧義結構例如:桌子|

和|

椅子|

|

腿1.1.3自然語言處理的主要難點—結構歧義19指代歧義(Demonstrative Ambiguity)是指代詞(如我,你,他等)和代詞詞組(如“那件事”,“這一點”等)所指的事件可能存在歧義例如:

猴子吃了香蕉,因為它餓了。猴子吃了香蕉,因為它熟透了。省略歧義(Ellipsis

Ambiguity)是指自然語言中由于省略所產生的歧義例如:縣政府同意鄉政府報告。1.1.3自然語言處理的主要難點—指代和省略歧義20語用歧義(Pragmatic

Ambiguity)是指由于上下文、說話人屬性、場景等語用方面的原因造成的歧義。一句話在不同的場合、由不同的人說、不同的語境,都可能產生不同的理解例如:

女子致電男友:地鐵站見。如果你到了我還沒到,你就等著吧。如果我到了你還沒到,你就等著吧!!自然語言并不是一成不變的,而是在動態發展中,存在大量未知語言現象。新詞匯、新含義、新用法、新句型等層出不窮例如:

新詞匯:雙碳、雙減、絕絕子、社恐、元宇宙新含義:躺平、打工人、凡爾賽、青蛙、潛水、蓋樓新用法:走召弓雖、YYDS、回憶殺、求擴列、orz1.1.3自然語言處理的主要難點—語用歧義21自然語言處理的基本概念221.1自然語言處理的基本范式1.2本書的內容安排1.3目錄

Contents 基于規則的方法、基于機器學習的方法基于深度學習的方法基于大模型的方法自然語言處理的發展經歷了從理性主義到經驗主義,再到深度學習三大歷史階段基于規則的方法、基于機器學習的方法以及基于深度學習的方法三種范式三種范式基本對應了自然語言處理的不同發展階段的重點需要特別說明的是:雖然以上三種范式來源于自然語言處理的不同發展階段,有明顯的發展先后順序在大部分自然語言處理任務的標準評測集合中基于深度學習的方法都好于基于機器學習的方法,更優于基于規則的方法很多但是,這三種范式各有利弊,在實際應用中需要根據任務的特點、計算量、可控制性以及可解釋性等具體情況進行選擇1.2自然語言處理的基本范式23在機器學習和深度學習范式下,甚至對模型預測目標進行微小修正,通常都需要對模型進行重新訓練對模型預測目標進行微小修正,通常都需要對模型進行重新訓練。對于未知任務的零樣本學習(Zero-shot

Learning)能力很少在上述范式中進行討論和研究。隨著ChatGPT的發布,大模型所展現出來的文本生成能力以及對未知任務的泛化能力使得未來的自然語言處理的研究范式很可能會發生非常大的變化。1.2自然語言處理的基本范式241.2.1基于規則的方法通過詞匯、形式文法等制定的規則引入語言學知識,從而完成相應的自然語言處理任務數據構建規則庫人工圖

1.3

基于規則的自然語言處理算法基本流程規則構建規則引擎數據規則使用效果評價效果評價錯誤發現25對于機器翻譯任務可以構造如下規則庫:IF

源語言主語

=

THEN

英語譯文主語

=IIF

英語譯文主語

=ITHEN

英語譯文

be

動詞為

am/wasIF

源語言

=

蘋果

AND

沒有修飾量詞

THEN

英語譯文

=apples基于規則的方法從某種程度上可以說是在試圖模擬人類完成某個任務時的思維過程優點:直觀、可解釋、不依賴大規模數據。利用規則所表達出來的語言知識具有一定的可讀性,不同的人之間可以相互理解。缺點:覆蓋率差、大規模規則構建代價大、難度高等1.2.1基于規則的方法26271.2.2基于機器學習的方法圖

1.4 基于機器學習的自然語言處理算法基本流程將自然語言處理任務轉化為某種分類任務分為四個步驟:數據構建、數據預處理、特征構建以及模型學習:數據構建階段主要工作是針對任務的要求構建訓練語料,也稱為語料庫(Corpus)數據預處理階段主要工作是利用自然語言處理基礎算法對原始輸入,從詞匯、句法、結構、語義等層面進行處理,為特征構建提供基礎。特征構建階段主要工作是針對不同任務從原始輸入、詞性標注、句法分析、語義分析等結果和數據中提取對于機器學習模型有用的特征。模型學習階段主要工作是根據任務,選擇合適的機器學習模型,確定學習準則,采用相應的優化算法,利用語料庫訓練模型參數。1.2.2基于機器學習的方法28以人工特征構建為核心,針對所需的信息利用自然語言處理基礎算法對原始數據進行預處理,并需要選擇合適的機器學習模型,確定學習準則,以及采用相應的優化算法整個流程中需要人工參與和選擇的環節非常多,從特征設計到模型,再到優化方法以及超參數,并且這些選擇非常依賴經驗,缺乏有效的理論支持對于復雜的自然語言處理任務需要在數據預處理階段引入很多不同的模塊,這些模塊之間需要單獨優化,其目標并不一定與任務總體目標一致,多模塊的級聯會造成錯誤傳播1.2.2基于機器學習的方法291.2.3基于深度學習的方法圖

1.5 基于深度學習的自然語言處理算法基本流程將特征學習和預測模型融合,通過優化算法使得模型自動地學習出好的特征表示,并基于此進行結果預測30基于深度學習方法的流程簡化很多,通常僅包含數據構建、數據預處理和模型學習三個部分在數據預處理方面也大幅度簡化,僅包含非常少量的模塊通過多層的特征轉換,將原始數據轉換為更抽象的表示。這些學習到的表示可以在一定程度上完全代替人工設計的特征,這個過程也叫做表示學習(Represen-tation

Learning)首先利用自監督任務對模型進行預訓練,通過海量的語料學習到更為通用的語言表示,然后根據下游任務對預訓練網絡進行調整。這種預訓練范式在幾乎所有自然語言處理任務上都表現非常出色1.2.3基于深度學習的方法311.2.4基于大模型的方法圖

1.6 基于大模型的自然語言處理算法基本流程將大量各類型自然語言處理任務,統一為生成式自然語言理解框架大規模語言模型構建通用能力注入特定任務使互聯網圖書百科閱讀理解情感分析信息抽取分類3233ChatGPT 所展現出來的通用任務理解能力和未知任務泛化能力,使得未來自然語言處理的研究范式可能進一步發生變化在大規模語言模型構建階段,通過大量的文本內容,訓練模型長文本的建模能力,使得模型具有語言生成能力,并使得模型獲得隱式的世界知識在通用能力注入階段,利用包括閱讀理解、情感分析、信息抽取等現有任務的標注數據,結合人工設計的指令詞對模型進行多任務訓練,從而使得模型具有很好的任務泛化能力特定任務使用階段則變得非常簡單,由于模型具備了通用任務能力,只需要根據任務需求設計任務指令,將任務中所需處理的文本內容與指令結合,然后就可以利用大模型得到所需結果1.2.4基于大模型學習的方法自然語言處理的基本概念341.1自然語言處理的基本范式1.2本書的內容安排1.3目錄

Contents 1.2.3基于深度學習的方法圖

1.7 本書章節安排3536本章總結自然語言處理(Natural Language Processing,NLP)是計算機科學領域和人工智能領域的重要研究方向之一,旨在探索實現人與計算機之間用自然語言進行有效交流的理論與方法。它融合了語言學、計算機科學、機器學習、數學、認知心理學等多學科內容,涉及從字、詞、短語到句子、段落、篇章的多種語言單位,以及處理、理解、生成等不同層面的知識點,研究內容涉及的知識點多且復雜。自

20

世紀

90

年代以來,自然語言處理發展迅猛,各類任務和算法和研究范式層出不窮,在搜索引擎、醫療、金融、教育、司法等眾多領域展示出重要作用。自然語言處理導論第二章

詞匯分析1語言中的詞匯22.1詞語規范化2.2中文分詞2.3目錄

Contents 詞性標注2.4語言中的詞匯32.1詞語規范化2.2中文分詞2.3目錄

Contents 詞性標注2.4詞的形態學詞的詞性2.1什么是詞?詞(word)是形式和意義相結合的單位,也是語言中能夠獨立運用的最小單位。掌握一個詞匯意味著知道其讀音和語義4例如:英文單詞``cat''具有的語義是``貓'',讀音為``/k?t/''自然語言處理算法中詞通常也是基本單元詞的處理也是自然語言處理中重要的底層任務,是句法分析、文本分類、語言模型等任務的基礎。2.1語言中的詞匯詞(word)通常是由語素(Morpheme)構成。語素又稱詞素,是語言中意義的最小單元。語素與詞不同,語素不能夠獨立運用而詞可以。只包含一個語素的詞語稱為簡單詞(Simple

word)包含多個語素的詞稱為復雜詞(Complex

word)例如:“電燈”,包含

“電”

“燈”

兩個語素根據詞在語言中的用途的不同,詞還可以被劃分為實義詞和功能詞實義詞包含事物、行為、屬性和觀念等概念。功能詞則是指沒有清楚詞匯意義或與之有關的明顯概念的詞。52.1.1詞的形態學雖然單詞的形式和意義之間的關系本質上是任意的,但是由于社會的約定俗成,詞的形式具有服從于某種規則的內在結構。研究單詞的內部結構和其構成方式的學科稱為形態學(Morphology),

又稱構詞學。6詞是由一個或多個語素構成,語素主要分成兩類:

詞根(Lemma)和詞綴(Affix)。詞根也稱為原形或字典形,是指能在字典中查的到的語素,通常是一個詞最主要的語素。詞綴是其他附著在原形上的語素,幫助在原形基礎上衍生出新詞,包含前綴、中綴、后綴等。2.1.1詞的形態學例如:英語單詞unhappy中,happy

為原形,-un為前綴邦托克語單詞fumikas(是強壯的)中,fikas(強壯)為原形,-um-為中綴俄語單詞

barabanshchik(鼓手)中,baraban(鼓)為原形,-shchik為后綴有些語言的單詞通常只包含一個或者兩個語素,但是有一些語言的單詞則包含多達十個以上的語素。漢語中每個單詞的語素都很少,也不會根據性、數、格、人稱等發生形態變化。72.1.1英語中常見詞形變換82.1.2詞的詞性詞性(Part of Speech,POS)也稱詞類,是根據詞在句子中扮演的語法角色以及與周圍詞的關系對詞的分類。9例如:表示事物的名字(“鋼琴”),地點(“上?!保┩ǔ1粴w為名詞而表示動作(“踢”),狀態(“存在”)的詞被歸為動詞詞可以分為實義詞(Content

Words)和功能詞(Function

Words)實義詞表達具體的意義。由于實義詞可以不斷地增加,因此這類詞又被稱作開類詞

(Openclass

words)。實義詞主要包含名詞、動詞、形容詞等。功能詞則主要是為了滿足語法功能需求。由于功能詞相對比較穩定,一個語言中通常很少增加新的功能詞,因此功能詞又被稱作閉類詞

(Close

Class

Words)2.1.2詞的詞性名詞(Noun)是表示人、物、地點以及抽象概念的一類詞。10例如:1)專有名詞:Shanghai(上海)New

York(紐約)2)類名詞:city(城市)bird(鳥)3)集體名詞:family(家庭)army(軍隊)4)物質名詞:water(水)light(光)5)抽象名詞:music(音樂)honesty(誠實)2.1.2詞的詞性動詞(Verb)是表示動作或狀態的一類詞,是英語中最復雜的一類詞。11例如:1)Boysflykites.(男孩們放風箏)2)不及物動詞:Birdsfly.(鳥會飛)3)連系動詞:The

rose

smells

sweet.

(玫瑰花香)4)助動詞:I

may

have

meet

him

before.(我以前應該見過他)5)限定動詞:John

readspapers

everyday.

(約翰每天都讀論文)6)不限定動詞:I

hope

to

see

you

this

morning.(我希望早上見到你)7)短語動詞:Tom

calledupGeorge.(湯姆給喬治打了電話)2.1.2詞的詞性形容詞(Adjective)是用來描寫或修飾名詞的一類詞。12例如:簡單形容詞:由一個單詞構成

good(好的)long(長的)由現在分詞構成

interesting(令人感興趣的)由過去分詞構成

learned(博學的)復合形容詞:duty-free(免稅的)hand-made(手工制作的)3)限制性形容詞:anItaliandish(一道意大利菜)4)描述性形容詞:a

delicious

Italian

dish

(一道美味的意大利菜)2.1.2詞的詞性副詞(Adverb)是用來修飾動詞、形容詞、其他副詞以及全句的詞。13例如:1)簡單副詞:just(剛剛)only(僅僅)2)復合副詞:somehow(不知怎地)somewhere(在某處)3)派生副詞:interesting

‘→‘

interestingly

(有趣地)4)方式副詞:quickly(迅速)awkwardly(笨拙地)5)方向副詞:outside(外面)inside(里面)6)時間副詞:recently(最近)always(總是)7)強調副詞:very(很)fairly(相當)2.1.2詞的詞性數詞(Numeral)是表示數目多少或者先后順序的一類詞。14例如:1)基數詞:one(1)nineteen(19)2)序數詞:first(第一)fiftieth(第五十)2.1.2詞的詞性代詞(Pronoun)是代替名詞以及起名詞作用的短語、子句和句子的一類詞。例如:人稱代詞:主格:I,you,he,

she,it,we,

they賓格:me,you,

him,her,it,us,them物主代詞:形容詞性物主代詞:my,your,

his,her,

its,our,

their名詞性物主代詞:mine,yours,his,hers,its,ours,theirs

3)自身代詞:myself,

yourself,

himself,

herself,

itself,

ourselves,

yourselves,themselves,oneself4)相互代詞:eachother,oneanother5)指示代詞:this,

that,

these,

those6)疑問代詞:who,

whom,

whose,

which,

what關系代詞:who,

whom,whose,

which,that,

as不定代詞:some,

something,

somebody,

someone,

any,

anything,anybody,

anyone,

no,nothing,nobody,no

one152.1.2詞的詞性冠詞(Article)是置于名詞之前,說明名詞所指的人或事物的一種功能詞。冠詞不能夠離開名詞而獨立存在。英語中冠詞有三種冠詞:定冠詞(Definite

article)“the”、不定冠詞(Indefinite

article)“a/an”和零冠詞(Zero

article)。162.1.2詞的詞性介詞(Preposition)又稱前置詞,是用于表示名詞或相當于名詞的詞語與句中其它詞語的關系的一類詞。介詞在句子中不單獨作為任何句子成分。介詞后面的名詞或者相當于名詞的詞語叫做介詞賓語,與介詞共同組合成介詞短語。17例如:1)簡單介詞:at,in,of,since2)復合介詞:as

for,

as

to,

out

of3)二重介詞:from

under,

from

behind4)短語介詞:according

to,

because

of5)分詞介詞:including,

regarding2.1.2詞的詞性連詞(Conjunction)是連接單詞、短語、從句或句子的一類詞。在句子中也不單獨作為句子成分。18例如:簡單連詞:and,

or,

but,

if關聯連詞:both

...

and,

not

only

...

but

also3)分詞連詞:supposing,considering4)短語連詞:as

if,

as

longas,

in

order

that5)并列連詞:and,or,but,for6)從屬連詞:that,

whether,

when,

becaus2.1.2詞的詞性感嘆詞(Interjection)是用來表示喜怒哀樂等情緒或情感的一類詞。感嘆詞也沒有實際意義,也不能在句子中構成任何句子成分,但是與全句有關聯。例如:‘Oh‘,

it’s

you.

啊,是你‘Ah‘,how

pitiful!呀,多可惜192.1.2詞的詞性在語言學研究中,對于詞性劃分的標準、依據甚至目的等都存在大量分歧。到目前為止,還沒有一個被廣泛認可的統一劃分標準。20在不同的語料集中所采用的劃分粒度和標記符號也都不盡相同。英語賓州樹庫(Penn

TreeBank)使用了48

種不同的詞性漢語賓州樹庫(Chinese

Penn

Treebank)中漢語詞性被劃分為

33

類布朗語料庫(Brown

Corpus)中則使用了具有87個詞性2.2詞語規范化詞語規范化(Word

Normalization)任務是將單詞或詞形轉化為標準形式,針對有多種形式的單詞使用一種單一的形式進行表示。在對自然語言文本進行分析前,通常需要對文本進行規范化的處理。文本的規范化處理主要包含句子切分、詞語切分、詞語規范化等步驟。由于絕大部分語言的句子結束符數量有限,符號歧義性相對容易處理,因此句子切分通過詞典結合模板或者有監督分類方法都可以達到較高的準確率。21語言中的詞匯222.1詞語規范化2.2中文分詞2.3目錄

Contents 詞性標注2.4詞語切分詞形還原詞干提取2.2.1詞語切分對于絕大部分的印歐語系語言來說,詞語之間通常由分隔符區分開來。英語是印歐語系(Indo-European languages)的典型代表,英語句子中絕大部分單詞之間都由空格或標點分割。漢語為代表的漢藏語系(Sino-Tibetan

languages)的語言中,單詞之間通常沒有分隔符。因此在對文本進行分析前,通常需要將句子切分為單詞序列,稱之為詞語切分(Word

Tokenization)。輸入:

Let's

first

understand

what's

NLP.輸出:

Let?'s?first?understand?what?'s?NLP?.232.2.1詞語切分英語句子中絕大部分的單詞可以通過空格和標點符號為分隔符進行識別,但是還是存在一些例外情況24日期(02/18/2022),數字(562,000),連字符例如:縮寫(Prof.),(upper-case)等。需要特別注意的是,上例中Let's被切分為

Let?'s詞形(Token)指的是在一個特定文檔中的某個能夠表達語義含義的字符序列。大部分情況下詞形和單詞沒有區別,但對于某些場景和算法有必要對單詞和詞形進行區分。2.2.1詞語切分在英語中,一些特殊的符號和數字也需要完整的保留到一起。比如數字( 67.20)、時間(22:37)、微博話題標簽(#北京2022年冬奧會#)、Email地址(cs_nlp@)等。在特定的應用中有時也會將 Hong Kong,Head, Shoulders, Knees andToes劃分為一個詞形通常情況下針對英語等印歐語系語言的詞語切分任務可以采用基于有限狀態自動機(Finite

State

Automata)融合正則表達式的方法完成。252.2.2詞形還原詞形還原(Lemmatization)是將詞的各種變化形式還原其詞根的過程。通過詞形還原可以實現詞語的規范化,單詞的不同變化形式統一為詞根。例如:原始輸入句:They

are

working

on

interesting

tasks詞形還原后:theybework

on

interesting

task詞形分析是將一個詞分解成為語素的過程。對于英語來說,構造包含所有絕大多數詞形的詞典能夠有效地支撐許多應用場景。262.2.2詞形還原對于某些語言(特別是土耳其語、阿拉伯語等黏著語系的語言)枚舉所有詞的詞形變換則是不可能的272.2.3詞干提取詞干提取

(Stemming)是詞形分析的簡化版本,其目標是將具有詞形變化(通常是屈折或派生)的詞語還原為其詞干(Word

Stem)28與詞形分析不同,詞干提取并不要求還原的詞干一定與其語言學詞根完全一致,只需要將相關的單詞映射為統一的詞干。例如:詞干提取算法

Porter

Stemmerargue,

argued,

argues,

arguing,

以及

argus

都轉換為

argu.2.2.3詞干提取最簡單的詞干提取算法可以通過查詢詞表的方法獲得另外一種方法是后綴剝離(Suffix-stripping),通過定義一組規則,將特定的后綴從詞形中刪除29例如:如果單詞以ed

結尾,

則刪除ed如果單詞以ing

結尾,

則刪除ing如果單詞以ly結尾,

則刪除ly但是無法處理特殊變形(如:ran,took

等)2.2.3詞干提取后綴替代(Suffix

Substitution)算法將單詞后綴替換為另外一個后綴。30例如:如果單詞以’ational’結尾,則替換為’ate’(relational→

relate)如果單詞以’ing’

結尾,

則替換為’ε’(working

work)如果單詞以’zzes’

結尾,

則替換為’Z’(quizzes

quiz)語言中的詞匯2.1詞語規范化2.2中文分詞2.3目錄

Contents 31詞性標注2.4中文分詞概述基于最大匹配的中文分詞基于線性鏈條件隨機場的中文分詞基于感知器的中文分詞基于雙向長短期記憶網絡的中文分詞中文分詞評價方法中文分詞語料庫以英語為代表的印歐語系中詞之間通常有分隔符(空格等)來區分,詞可以比較容易地從句子中分割得到。以漢語為代表的漢藏語系,

以及以阿拉伯語為代表的閃-

含語系(Semito-Hamitic languages)中卻不包含明顯的詞之間的分隔符,而是由一串連續的字符構成。因此,針對漢語等語言的處理算法通常首先需要進行詞語切分。2.3中文分詞32中文分詞(Chinese

Word

Segmentation,CWS)是指將連續字序列轉換為對應的詞序列的過程,也可以看做在輸入的序列中添加空格或其他邊界標記的過程。2.3.1中文分詞概述例如:復旦大學是中國人自主創辦的第一所高等院校分詞結果:復旦大學

|是|中國人

|自主|創辦|的

|

第一|所

|高等|院校由于漢語中語素絕大部分是單個漢字,很多情況下單獨使用時也是詞語,不單獨使用時又是構詞成分,這使得漢語構詞具有很大的靈活性和很強的組詞能力。332.3.1中文分詞概述正是因為漢語的這些特點,中文分詞任務面臨了巨大的挑戰主要困難來自以下三個方面:分詞規范、歧義切分和未登錄詞識別。漢語中對詞的具體界定目前還沒有定論。1992 年國家標準局頒布的《信息處理用現代漢語分詞規范》中大部分規定都是通過舉例和定性描述來體現。例如:“二字或三字詞,以及結合緊密、使用穩定的二字或三字詞組,一律為分詞單位。”如何定量計算?34北京大學計算語言學研究所《北京大學語料庫加工規范》2.3.1中文分詞概述352.3.1中文分詞概述由于漢語構詞方式的靈活性,使得同一個漢語句子很可能產生多個不同的分詞結果,這些不同的分詞結果也被稱為切分歧義。例如:南京市長江大橋切分方式

1:南京市

|

長江大橋切分方式

2:南京

|

市長

|

江大橋362.3.1中文分詞概述交集型切分歧義是指漢字串

AJB

中,AJ、JB

都可以分別組成詞匯,則漢字串

AJB

被稱為交集型切分歧義,此時漢字串

J

稱作交集串。交集型切分歧義也被稱為偶發歧義,當兩個有交集的詞“偶然”

的相鄰出現時這樣的歧義才會發生。例如:乒乓球拍賣完了。切分方式1:乒乓|

|

拍賣|

|了

|。切分方式2:乒乓|

球拍

|賣|

|了

|。372.3.1中文分詞概述組合型切分歧義是指如果漢字串

AB

滿足

A,B,AB

同時為詞,則漢字串

AB

被稱為組合型切分歧義。組合性切分歧義也稱為固有歧義,指的是詞固有的屬性,不依賴于“偶然”

發生的上下文。例如:他馬上過來。切分方式

1:他|

馬上

|過來|。切分方式

2:他|

|

上|

過來

|。382.3.1中文分詞概述真歧義是指如果漢字串

ABC

滿足多種切分方式下語法和語義均沒有問題,

只有通過上下文環境才能給出正確的切分結果,則漢字串

ABC

被稱為真歧義。例如:白天鵝在水里游泳。切分方式1:白天

|

|在

|

|里

|

游泳

|

。切分方式

2:白天鵝

|在

|水|

|

游泳

|

。39未登錄詞(Out

Of

Vocabulary,OOV)又稱生詞(UnknownWords),是指在訓練語料中沒有出現或者詞典當中沒有,但是在測試數據中出現的詞?;谠~典的分詞方法所指的未登錄詞是指所依賴的詞典中沒有的單詞。對于完全基于統計機器學的方法,未登錄詞是指訓練語料中沒有出現的單詞。對于融合詞典特征的統計機器學習方法,未登錄詞是指訓練語料和詞典中均未出現的詞。2.3.1中文分詞概述4041漢語具有很強的靈活性,未登錄詞的類型也十分復雜,可以粗略地將漢語文本中常見的未登錄詞分為以下類型:新出現的普通詞匯:語言的使用會隨著時代的變化而演化出新的詞,這個過程在互聯網環境中顯得更為快速。例如:

下載,給力,點贊,人艱不拆等。命名實體

(Named

Entity):人名、地名、機構名等;專業名詞:出現在專業領域的詞語

(例如:

偶氮二甲酸二乙酯,胞質溶膠)?其他專有名詞:新出現的產品名、電影名、書籍名等。2.3.1中文分詞概述宗成慶教授在新聞領域的語料也進行了分詞錯誤分析,結果發現未登錄詞造成的分詞錯誤超過

98%最大匹配(Maximum

Matching)分詞算法主要包含前向最大匹配,后向最大匹配以及雙向最大匹配等三類。這些算法試圖根據給定的詞典,利用貪心搜索策略找到分詞方案。2.3.2基于最大匹配的中文分詞42將分詞過程轉換為對字的分類問題2.3.3基于線性鏈條件隨機場的中文分詞對于輸入句子中的每一個字

ci,根據它在分詞結果中的位置賦予不同的標簽開始(B)、中間(I)、結尾(E)以及單獨成詞(S)例如:輸入句子:他是研究生物化學的一位科學家。分詞結果:他|是

|

研究

|生物化學

|

|

|

|

科學家

|。對應標記:他/S

是/S

研/B

究/E

生/B

物/I

化/I

學/E

的/S

一/B

位/E

科/B

學/I

家/E

。/S4344條件隨機場(Conditional

Random

Field,CRF)試圖對多個變量在給定觀測值后的條件概率進行建模。x

={xl,x2,

...,

xn}

為觀測序列,y

={yl,

y2,

.

..,

yn}為對應的標記序列,條件隨機場的目標是構建條件概率模型

P

(y|x)。2.3.3基于線性鏈條件隨機場的中文分詞圖

2.1

線性鏈條件隨機場結構圖45條件隨機場使用勢函數和圖結構上的團來定義條件概率

P

(y|x)。給定觀測序列

x,線性鏈式條件隨機場主要包含兩種關于標記變量的團:單個標記變量

yi

和相鄰的標記變量

yi?1,yi。選用指數勢函數并引入特征函數(Feature

Function)。2.3.3基于線性鏈條件隨機場的中文分詞tj(x,

yi,

yi?1,

i)是轉移特征函數(Transition

feature

function),用于刻畫相鄰標記之間的相關關系觀測序列對它們的影響;s(x,

yi,

i)

是狀態特征函數(Status

featurefunction),用于刻畫觀測序列對標記變量的影響;2.3.3基于線性鏈條件隨機場的中文分詞針對中文分詞任務,典型的轉移特征如下:典型的狀態特征如下:表示第

i個觀測值為“復”時,相應的標記

yi

yi?1

很可能分別為

B

E表示第

i個觀測值為“上”時,相應的標記

yi

很可能為

B。462.3.3基于線性鏈條件隨機場的中文分詞針對中文分詞問題,可以使用模板的方式從當前字的上下文中構建。表2.3列出了中文分詞任務常用的模板。其中

T(c) 表示字符

c的類型,包括阿拉伯數字、中文數字、標點符號、英文字母等?;谔卣髂0搴陀柧氄Z料,可以自動生成轉移特征以及狀態特征。472.3.4基于感知器的中文分詞中文分詞可以定義為將連續字序列轉換為對應的詞序列的過程。x

=

{c1,

c2,.

..

,

cn}

表示輸入字序列, y={w1,

w2,.

.

.,

wm}

表示輸出詞序列F(x)

表示最優分詞結果中文分詞可以形式化地表達為:GEN(x)

代表對于每一個輸入句子

x

可能的所有候選輸出,SCORE(y)

為針對分詞結果y的評分函數。將每一個分詞后的單詞序列

y

定義為一個特征向量

Φ(x,

y)482.3.4基于感知器的中文分詞將中文分詞任務轉化為上述問題后,需要解決如下三個問題:492.3.4基于感知器的中文分詞使用集束搜索(Beam

Search)算法進行解碼,在每一步解碼過程中,從上一步解碼的所有候選集中選取前

K

個得分最高的結果繼續解碼502.3.4基于感知器的中文分詞對訓練語料中每一個句子,根據現有模型參數進行解碼得到分詞結果,與正確答案進行比對,如果結果錯誤則更新參數

α512.3.4基于感知器的中文分詞基于感知器的方法可以使用詞作為特征,而基于線性鏈條件隨機場的方法只能使用字作為特征52532.3.5基于雙向長短期記憶網絡的中文分詞方法將分詞過程轉換為對字的分類問題圖

2.3基于

BiLSTM+CRF

的神經網絡分詞模型框架2.3.5基于雙向長短期記憶網絡的中文分詞方法542.3.6中文分詞評價552.3.7中文分詞語料庫56語言中的詞匯572.1詞語規范化2.2中文分詞2.3目錄

Contents 詞性標注2.4基于規則的詞性標注基于隱馬爾可夫模型的詞性標注基于卷積神經網絡的詞性標注詞性標注評價方法詞性標注語料庫詞性是詞語的基本屬性,根據其在句子中所扮演的語法角色以及與周圍詞的關系進行分類。詞性標注(Part-of-speech

Tagging,POS

Tagging)是指在給定的語境中確定句子中各詞的詞性詞性標注的主要難點在于歧義性,即一個詞可能在不同的上下文中具有不同的詞性。兼類詞多為常用詞,而且越是常用詞,其用法就越多北京大學計算語言學研究院

200

萬字語料庫統計,發現兼類詞所占比例僅有

11%,但是出現的次數卻達到了

47%Brown

語料庫的統計也發現超過

80%

的詞通常只有一個詞性還沒有一個被廣泛認可的統一詞性劃分標準,在不同的語料集中所采用的劃分粒度和標記符號也都不盡相同2.4詞性標注582.4詞性標注59602.4.1基于規則的詞性標注利用詞典和搭配規則針對詞語和上下文進行分析,從而得到句子中每個詞語詞性Brill

Tagger在

Brown

語料庫上僅使用

71

個規則就得到接近

95%

的分析準確率初始化:對于詞典中包含的詞語,根據詞語最常使用的詞性設置初始值;對于詞典中沒有的單詞根據詞性分析結果設置初始值(例如:以大寫字母開頭的設置為專有名詞)。規則轉換:根據補丁規則對初始標注進行轉換,補丁規則包含以下三類:如果某單詞詞性為

a,并且其所在上下文為

C,那么將其詞性轉換為

b;如果某單詞詞性為

a,并且其具有詞匯屬性

P,那么將其詞性轉換為

b;如果某單詞詞性為

a,并且其周邊范圍

R

內有一個詞匯具有屬性

P,那么將其詞性轉換為

b;例如:補丁規則“NN

VB

PREV-TAG

TO”表示,如果一個單詞被標注為了

NN(名詞),并且它前面的單詞標注為了

TO(不定式“to”),那么將這個單詞的詞性轉換為

VB(動詞)。2.4.2基于隱馬爾可夫模型的詞性標注隱馬爾可夫模型(Hidden

Markov

Model,HMM)又稱隱馬爾科夫模型,是馬爾可夫過程擴充而來的一種隨機過程。在自然語言處理眾多序列標注任務中也得到了廣泛應用并取得了非常好的效果。隱馬爾可夫模型可用如下

5

個參數定義:612.4.2基于隱馬爾可夫模型的詞性標注關于問題

1,問題

2

以及問題

3

的求解方法可以參閱李航博士《統計學習方法(第二版)》第

10章622.4.2基于隱馬爾可夫模型的詞性標注N

為詞性數,S

=

{s1,

s2,...,

sN

}

為詞性表,M

為單詞數,V

={v1,

v2,

...vM

}為單詞詞表。給定一個由

T

個單詞組成的句子

W=

w1,

w2,...,

wT

,即相當于觀測序列

O

=

{o1,o2,

...,

oT

}。狀態序列

Q

={q1,

q2,

...,

qT

}

則表示輸入句子中單詞對應的詞性。63長句子和未登錄詞問題實際應用中需要解決問題642.4.3基于卷積神經網絡的詞性標注輸入句FeatureKText Thecatsat

o

n them

apFeature11 2!1

!

1 !

1N!

K!K!

K1 2 N查表 LTW

1LTW

K卷積 paddin

gpaddin

gM1

x線性變換H

ard

Tanh變換隨時間步最大值m

ax

(·)M2

?Textdn

1hu

n

1hu

n

2hu

表查詢(Lookup

Table)將單詞通過表查詢轉換為詞性向量表示給定的任意一句包含T

個單詞的句子除了單詞本身之外,還可以提供一些其他特征表查詢層輸出線性變換3

?Mn

3=#

tagshu

652.4.3基于卷積神經網絡的詞性標注輸入句FeatureKText Thecatsat

o

n them

apFeature11 2!1

!

1 !

1N!

K!K!

K1 2 Npaddin

gpaddin

gM1

x線性變換H

ard

Tanh變換隨時間步最大值m

ax

(·)M2

?Text查表 LTW

1dLTW

K卷積 n

1hu

n

1hu

n

2hu

卷積層(Convolutional

Layer)根據所設置的窗口大小

dwin,將每個單詞周邊的單詞拼接起來構成具wrd

win有d d 維度的向量第l

層的第t

列向量可以根據如下公式非線性變化線性變換3

?Mn

3=#

tagshu

2.4.3基于卷積神經網絡的詞性標注輸入句FeatureKText Thecatsat

o

n them

apFeature11 2!1

!

1 !

1N!

K!K!

K1 2 Npaddin

gpaddin

gM1

x線性變換H

ard

Tanh變換線性變換隨時間步最大值m

ax

(·)M2

?Text查表 LTW

1dLTW

K卷積 n

1hu

n

1hu

n

2hu

池化層(Pooling

Layer)隨時間推移最大化(Max

Over

Time)線性變換分類階段3

?M66n

3=#

tagshu

句子級別對數似然方法(Sentence-Level

Log-Likelihood)2.4.4詞性標注評價方法672.4.5詞性標注語料庫6869本章小結詞匯是語言知識中的重要環節,詞是語言運用的基本單位,自然語言處理算法中詞通常也是基本單元。因此,詞的處理也是自然語言處理中重要的底層任務,其分析效果對后續任務有很大影響,長期以來都是自然語言處理研究的重點。本章中介紹了中文分詞和詞性標注任務,這兩個任務都是典型的序列標注任務,除了基于詞典的中文分詞算法之外,本章中介紹的其他算法都采用有監督分類算法。自然語言處理導論第三章

句法分析1句法概述23.1成分句法分析3.2依存句法分析3.3目錄

Contents 句法分析語料庫3.4成分語法理論概述依存語法理論概述句法概述33.1成分句法分析3.2依存句法分析3.3目錄

Contents 句法分析語料庫3.43.1什么是句法?句法(Syntax)就是研究自然語言中不同成分組成句子的方式以及支配句子結構并決定句子是否成立的規則。4任何人類語言都具備構造無限數量句子的能力可以通過增加形容詞、副詞、關系小句、介詞短語等方法把任意的句子進一步地創造。無法將一種語言按照詞典的方式把所有句子存儲起來通過語言學研究發現,句子并非詞語的隨意組合,而是由按照一定規則結合起來的離散單位組成3.1句法概述句法是現代語言學研究中的重要課題,有大量的句法理論(SyntacticTheory)相關研究。語法(Grammar)就是指自然語言中句子、短語以及詞等語法單位的語法結構與語法意義的規律。根據語法就可以判斷不同成分組成句子的方式以及決定句子是否成立。狹義的語法學研究基本等同于句法學。語言學家自19世紀50年代以來,構建了大量表達明確并且形式化的語法理論,對自然語言句法分析提供了理論支撐。語法理論在構建時,一個重要的問題是該理論是基于成分關系還是基于依存關系。53.1.1成分語法理論概述Noam

Chomsky于1957年發表的《Syntactic

Structures》奠定了成分語法的基礎成分(Constituent)又稱短語結構,是指一個句子內部的結構成分。成分可以獨立存在,或者可以用代詞替代,又或者可以在句子中的不同位置移動。例如:他正在寫一本小說。“一本小說”是一個成分63.1.1成分語法理論概述根據不同成分之間是否可以進行相互替代而不會影響句子語法正確性,可以進一步地將成分進行分類,

某一類短語就屬于一個句法范疇7(SyntacticCategory)。比如“一本小說”、“一所大學”等都屬于一個句法范疇:名詞短語(NonePhrase,NP)。句法范疇不僅僅包含名詞短語(NP)、動詞短語(VP)、介詞短語(PP)等短語范疇,也包含名詞(N)、動詞(V)、形容詞(Adj)等詞匯范疇。除此之外還包含功能范疇(包括冠詞、助動詞等)。3.1.1成分語法理論概述句法范疇之間不是完全對等的,而是具有層級關系。8例如:一個句子可以由一個名詞短語和一個動詞短語組成,一個名詞短語可以由一個限定詞和一個名詞組成,一個動詞短語又可以由一個動詞和一個名詞短語組成。短語結構規則(Phrase

Structure

Rules)又稱改寫規則或重寫規則,對句法范疇間的關系進行形式化描述。通常可以用X →

Y Z W …表示,其中X表示短語名稱,→

表示改寫為,Y Z W…定義了短語X的結構,如果YZW是短語,則還需要構造出它們的規則。3.1.1成分語法理論概述例如:(1)S?>NPVP(2)NP?>Det

N(3)VP?>V

NP成分語法就是由句法范疇以及短語結構規則定義的語法。由于短語結構規則具有遞歸性,可以使短語和句子無限循環組合。這也說明了語言的創造性和無限性。93.1.1成分語法理論概述由于成分語法局限于表層結構分析,不能徹底解決句法和語義問題,因此存在非連續成分、結構歧義等問題。103.1.2依存語法理論概述Lucien

Tesnière 1959

年發表的《Eléments

de

syntaxe

structurale》奠定了句法依存關系研究的基礎11在基于依存關系的語法中,句子中的每個成分對應句法結構中的唯一一個節點。兩個成分之間的依存關系是二元的非對稱關系,具有方向性,一個成分是中心語,另一個成分依附于中心語存在,關系從中心語成分指向依存成分。中心成分稱為中心詞或支配者(Governor,Regent,Head)依存成分也稱為修飾詞或從屬者(Modifier,Subordinate,Dependency)3.1.2依存語法理論概述兩個單詞之間是否存在依存關系?單詞之間誰處于支配地位?誰處于從屬地位?建立這些詞與詞之間關系的依據是什么?配價(Valency)理論是其中最為經典的論著之一,價是詞語的一個屬性,表示某個詞語與其他詞語結合的能力。配價模式(Valency

pattern)

則是描述了某一個具有特定意義的詞的出現語境,以及當一個詞出現在一個特定的模式下時,還有哪些詞語會出現在這個模式下及其語義角色。123.1.2依存語法理論概述詞語間的依存關系還可以根據語法關系定義為不同的類型,Carroll等人將依存關系細分為了20種,并給出了關系之間的層級結構。Marneffe等人在上述工作的基礎上對依存關系進行了進一步的細化,定義了48種依存關系,主要分為論元依存關系和修飾語依存關系兩大類。133.1.2依存語法理論概述依存語法中根據依存成分與中心語或姐妹成分在語序上的關系,可以分為符合投射性原則和違反投射性原則兩類。14基于上下文無關文法的成分句法分析基于概率上下文無關文法的成分句法分析成分句法分析評價方法句法概述153.1成分句法分析3.2依存句法分析3.3目錄

Contents 句法分析語料庫3.43.2成分句法分析成分句法分析(Constituency

Parsing)是對給定句子根據成分語法中制定的規則構建其所對應的結構樹的過程。通??梢杂肵

YZ

W

表示,

與數學系統中的上下文無關文法(Context-

Free

Grammar,CFG)組成非常類似163.2成分句法分析對一個句子進行句法分析的過程

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論