AI產(chǎn)品經(jīng)理需了解的技術(shù)知識(shí):自然語(yǔ)言理解技術(shù)NLU
本文章主要介紹了NLU技術(shù)的算法包括詞法分析、句法分析、語(yǔ)義分析,有助于PM了解技術(shù)實(shí)現(xiàn)邊界,產(chǎn)品快捷高效的落地~
自然語(yǔ)言理解技術(shù)(NLU)是人機(jī)對(duì)話產(chǎn)品中的重要一環(huán),是指機(jī)器能夠執(zhí)行人類所期望的某些語(yǔ)言功能,換句話說(shuō)就是人與機(jī)器交流的橋梁。
語(yǔ)言理解主要包括以下方面內(nèi)容:
- 能夠理解句子的正確次序規(guī)則和概念,又能理解不含規(guī)則的句子;
- 知道詞的確切含義、形式、詞類及構(gòu)詞法;
- 了解詞的語(yǔ)義分類、詞的多義性、詞的歧義性;
- 指定和不定特性及所有特性;
- 問(wèn)題領(lǐng)域的結(jié)構(gòu)知識(shí)和實(shí)踐概念;
- 語(yǔ)言的語(yǔ)氣信息和韻律表現(xiàn);
- 有關(guān)語(yǔ)言表達(dá)形式的文字知識(shí);
- 論域的背景知識(shí)。
語(yǔ)言理解通常分為三個(gè)層次:詞法分析、句法分析、語(yǔ)義分析。
詞法分析
詞法分析是自然語(yǔ)言處理的技術(shù)基礎(chǔ),也是自然語(yǔ)言理解過(guò)程的第一層,因此詞法分析的性能直接影響到后面句法和語(yǔ)義分析的成果。主要包括自動(dòng)分詞、詞性標(biāo)注、中文命名實(shí)體標(biāo)注三方面內(nèi)容。
1. 自動(dòng)分詞
現(xiàn)有分詞的算法分為三大類:基于詞典的分詞方法、基于統(tǒng)計(jì)的分詞方法、基于理解的分詞方法。
當(dāng)前主流的方法還是基于詞典進(jìn)行分詞,主要包括正向最大匹配、逆向最大匹配、雙向最大匹配。原理是按照既定的規(guī)則順序,將目標(biāo)字符串依次與詞典匹配,匹配成功就取出該詞,直到整個(gè)字符串全部匹配,如在詞典中匹配到,就取出單字。
case:字串“召開(kāi)大學(xué)生運(yùn)動(dòng)會(huì)”,分別通過(guò)三種分詞算法進(jìn)行切分:
(1)正向最大匹配
第一輪取詞
第1次:“召開(kāi)大學(xué)生運(yùn)動(dòng)會(huì)”掃描詞典,無(wú)匹配
第2次:“召開(kāi)大學(xué)生運(yùn)動(dòng)”掃描詞典,無(wú)匹配
第3次:“召開(kāi)大學(xué)生運(yùn)”掃描詞典,無(wú)匹配
第4次:“召開(kāi)大學(xué)生”掃描詞典,無(wú)匹配
….
第7次:“召開(kāi)”掃描詞典,匹配
第二輪取詞
第1次:“大學(xué)生運(yùn)動(dòng)會(huì)”掃描詞典,無(wú)匹配
第2次:“大學(xué)生運(yùn)動(dòng)”掃描詞典,無(wú)匹配
…..
第4次:“大學(xué)生”掃描詞典,無(wú)匹配
第5次:“大學(xué)”掃描詞典,匹配
分詞結(jié)果:召開(kāi)/大學(xué)/生/運(yùn)動(dòng)/會(huì)
(2)逆向最大匹配
第一輪取詞:
第1次:“召開(kāi)大學(xué)生運(yùn)動(dòng)會(huì)”掃描詞典,無(wú)匹配
第2次:“開(kāi)大學(xué)生運(yùn)動(dòng)會(huì)”掃描詞典,無(wú)匹配
….
第8次:“會(huì)”
第二輪取詞:
第1次:“召開(kāi)大學(xué)生運(yùn)動(dòng)”掃描詞典,無(wú)匹配
第2次:“開(kāi)大學(xué)生運(yùn)動(dòng)”掃描詞典,無(wú)匹配
…
第6次:“運(yùn)動(dòng)”掃描詞典,匹配
分詞結(jié)果:召開(kāi)/大/學(xué)生/運(yùn)動(dòng)/會(huì)
(3)雙向最大匹配
將正向最大匹配和逆向最大匹配算法得到的結(jié)果進(jìn)行比較,從而確定正確的分詞方法。
選擇的依據(jù)如下:
- 大顆粒度詞越多越好;
- 非詞典詞越少越好;
- 單字詞越少越好。
2. 詞性標(biāo)注
詞性標(biāo)注是對(duì)分詞結(jié)果中的每個(gè)單詞標(biāo)注一個(gè)正確的詞性,例如:每個(gè)詞是名詞、動(dòng)詞還是形容詞等。漢語(yǔ)中,詞性標(biāo)注筆記哦啊簡(jiǎn)單,因?yàn)榇蠖嘣~語(yǔ)只有一個(gè)詞性,或者出現(xiàn)頻次最高的詞性遠(yuǎn)遠(yuǎn)高于第二位的詞性。
因此在詞性標(biāo)注時(shí),一般先針對(duì)已存在的詞庫(kù)進(jìn)行統(tǒng)計(jì)學(xué)處理,建立詞性標(biāo)注模型,進(jìn)而通過(guò)概率判斷每個(gè)詞的詞性。
3. 中文命名實(shí)體
命名實(shí)體就是獎(jiǎng)文本中的元素分成預(yù)先定義的類,例如:人名、地名、時(shí)間、百分比等。它的技術(shù)方法主要分為基于規(guī)則和詞典、基于統(tǒng)計(jì)、二者結(jié)合的方法。
基于規(guī)則和詞典的方法,大多是由語(yǔ)言學(xué)專家構(gòu)造規(guī)則模板然后進(jìn)行匹配。這個(gè)時(shí)候,詞典和知識(shí)庫(kù)的創(chuàng)建會(huì)直接影響命名實(shí)體的準(zhǔn)確率。
舉個(gè)簡(jiǎn)單規(guī)則的例子:人名=【姓氏】+【名字】,那么分別建立“姓氏”、“名字”庫(kù),如字串命中,則識(shí)別出包含人名實(shí)體。
基于統(tǒng)計(jì)的方法,主要是通過(guò)對(duì)訓(xùn)練語(yǔ)料所包含的語(yǔ)言信息進(jìn)行統(tǒng)計(jì)和分析,從許年語(yǔ)料中挖掘出特征。因此這種方法對(duì)語(yǔ)料庫(kù)的依賴比較大,而用來(lái)建設(shè)和評(píng)估命名實(shí)體識(shí)別系統(tǒng)的大規(guī)模通用語(yǔ)料庫(kù)又比較少。
句法分析
句法分析的目標(biāo)是自動(dòng)推導(dǎo)出句子的句法結(jié)構(gòu),實(shí)現(xiàn)這個(gè)目標(biāo)首先要確定語(yǔ)法體系,不同的語(yǔ)法體系會(huì)產(chǎn)生不同的句法結(jié)構(gòu)。常見(jiàn)語(yǔ)法體系有短語(yǔ)結(jié)構(gòu)語(yǔ)法、依存關(guān)系語(yǔ)法。
依存關(guān)系語(yǔ)法
同樣分為基于規(guī)則和基于統(tǒng)計(jì)的兩種方法,基本自然語(yǔ)言的技術(shù)中,很多都是基于“詞典/規(guī)則”+“統(tǒng)計(jì)”的方法。
(1)基于規(guī)則的方法
- 優(yōu)點(diǎn)在于:可以最大限度的接近自然語(yǔ)言的句法習(xí)慣、表達(dá)方式靈活多樣,可以最大限度的表達(dá)研究人員的思想;
- 缺點(diǎn)在于:規(guī)則刻畫(huà)的知識(shí)粒度難以確定,無(wú)法確保規(guī)則的一致性,獲取規(guī)則同樣是一個(gè)繁瑣的過(guò)程。
(2)基于統(tǒng)計(jì)的方法
目前是句法分析的主流技術(shù),確定語(yǔ)法體系后,需要按照語(yǔ)法體系人工標(biāo)注句子的語(yǔ)法結(jié)構(gòu),將其作為訓(xùn)練的語(yǔ)料。因此語(yǔ)料庫(kù)的建設(shè)是非常關(guān)鍵的。
語(yǔ)義分析
語(yǔ)義分析就是指分析話語(yǔ)中所包含的含義,根本目的是理解自然語(yǔ)言。分為詞匯級(jí)語(yǔ)義分析、句子級(jí)語(yǔ)義分析、段落/篇章級(jí)語(yǔ)義分析,即分別理解詞語(yǔ)、句子、段落的意義。
這部分在我的工作中相對(duì)前兩部分應(yīng)用的較少一些,因此沒(méi)有過(guò)多的進(jìn)行學(xué)習(xí)了解。
理解NLU技術(shù)的基本原理和算法可以在PM優(yōu)化產(chǎn)品時(shí)起到很大的幫助,使我在產(chǎn)品設(shè)計(jì)時(shí),可以提前了解技術(shù)邊界,在和研發(fā)溝通時(shí),效率也更高。
本文由 @豬不會(huì)飛 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載
題圖來(lái)自Unsplash,基于CC0協(xié)議
大神,可否加個(gè)微信。最近在鉆研NLP,CV方面的知識(shí);向您學(xué)習(xí)一下;