




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
信息抽取的概念和任務(wù)信息抽取的方法和技術(shù)基于規(guī)則的方法有監(jiān)督學(xué)習(xí)方法無(wú)監(jiān)督學(xué)習(xí)方法半監(jiān)督學(xué)習(xí)方法1第5章信息抽取主要內(nèi)容:學(xué)習(xí)目標(biāo):(1)掌握信息抽取的基本概念,理解其在自然語(yǔ)言處理中的作用并認(rèn)識(shí)其重要性。(2)熟悉信息抽取的主要任務(wù),如實(shí)體識(shí)別、關(guān)系抽取和事件抽取等。(3)了解信息抽取的4種主要方法:基于規(guī)則、有監(jiān)督學(xué)習(xí)、無(wú)監(jiān)督學(xué)習(xí)和半監(jiān)督學(xué)習(xí),并掌握它們的原理和適用場(chǎng)景。(4)能夠運(yùn)用所學(xué)方法和技術(shù)解決簡(jiǎn)單的信息抽取任務(wù),如從文本中抽取關(guān)鍵信息或構(gòu)建實(shí)體關(guān)系圖。(5)培養(yǎng)對(duì)信息抽取技術(shù)的興趣,關(guān)注其最新發(fā)展和應(yīng)用趨勢(shì)。
5.1信息抽取的概念和任務(wù)信息抽取是一種自動(dòng)化過(guò)程,旨在從非結(jié)構(gòu)化或半結(jié)構(gòu)化的文本數(shù)據(jù)中,精準(zhǔn)地抽取出預(yù)先定義好的信息或結(jié)構(gòu)化的知識(shí)。例如,對(duì)于一則新聞報(bào)道,信息抽取技術(shù)能夠迅速識(shí)別并抽取出事件的關(guān)鍵信息,包括事件發(fā)生的時(shí)間、地點(diǎn)和涉及的人物等。同樣,對(duì)于一組論文,信息抽取也可以高效地提煉出作者、所屬的機(jī)構(gòu)及論文的關(guān)鍵詞等重要信息。通過(guò)信息抽取技術(shù),能夠更快速地了解文本數(shù)據(jù)的主要內(nèi)容和結(jié)構(gòu),進(jìn)而更深入地理解并有效利用這些數(shù)據(jù)。
5.1.1信息抽取的相關(guān)概念1.信息信息的定義比較抽象,在日常生活中常會(huì)提到某件事的信息量多少,但難以準(zhǔn)確量化信息的確切數(shù)量。通常而言,信息可以被理解為對(duì)事物的描述或表達(dá),它代表著人們對(duì)客觀世界的認(rèn)識(shí)與理解。在自然語(yǔ)言處理的語(yǔ)境下,信息特指對(duì)某個(gè)事件或事物的描述中所蘊(yùn)含的知識(shí)量。例如,在機(jī)器翻譯中,源語(yǔ)言文本中的信息需要精準(zhǔn)地轉(zhuǎn)化為目標(biāo)語(yǔ)言文本中的對(duì)應(yīng)信息;而在文本分類任務(wù)中,則需要從文本中提煉出有用的信息,以便對(duì)文本進(jìn)行準(zhǔn)確的分類。通過(guò)這樣的過(guò)程,可以更好地理解并利用文本中所蘊(yùn)含的信息。
2.信息熵
信息熵是衡量一個(gè)數(shù)據(jù)集不確定性或隨機(jī)性的指標(biāo)。信息熵的概念最初由著名科學(xué)家香農(nóng)(C.E.Shannon)在20世紀(jì)40年代提出,他借鑒了熱力學(xué)的概念,將信息中去除冗余后所剩余的平均信息量命名為“信息熵”。這一度量提供了量化信息不確定性的方法,并通過(guò)具體的數(shù)學(xué)表達(dá)式,如式(5.1)所示,來(lái)精確計(jì)算信息熵H(x)。
其中,P()x表示事件x出現(xiàn)的概率。當(dāng)P
0或1時(shí),H(x)
0,即隨機(jī)變量是完全確定的。當(dāng)P
0.5時(shí),H(x)
1,即隨機(jī)變量的不確定性是最大的。信息熵具有如下3條性質(zhì)。(1)單調(diào)性。信息熵越小,信息量越大;反之,信息熵越大,信息量越小。(2)非負(fù)性。信息熵的值大于等于零。(3)可加性。多個(gè)事件發(fā)生總的信息熵等于各個(gè)事件的信息熵之和;信息熵不能相減。例5.1假設(shè)有一個(gè)包含3種不同結(jié)果(A、B、C)的數(shù)據(jù)集,每個(gè)結(jié)果出現(xiàn)的概率分別為0.5、0.3和0.2。則信息熵為H(x)=
[0.5
log2(0.5)+0.3
log2(0.3)+0.2
log2(0.2)]
=
(
0.5
0.52109
0.46439)=1.48548所以,這個(gè)數(shù)據(jù)集的信息熵為1.48548。
3.霍夫曼編碼
霍夫曼編碼,亦稱為哈夫曼編碼,是一種廣泛應(yīng)用于數(shù)據(jù)壓縮領(lǐng)域的可變長(zhǎng)編碼技術(shù)。這一編碼方法由大衛(wèi)·A.霍夫曼(DavidA.Huffman)在1952年首次提出,其核心思想是依據(jù)字符出現(xiàn)的概率來(lái)構(gòu)建一種異字頭平均長(zhǎng)度最短的編碼方式。通過(guò)霍夫曼編碼,可以實(shí)現(xiàn)對(duì)數(shù)據(jù)的高效壓縮,進(jìn)而節(jié)省存儲(chǔ)空間并提升數(shù)據(jù)傳輸效率。
具體來(lái)說(shuō),霍夫曼編碼的步驟如下。(1)構(gòu)建一個(gè)優(yōu)先隊(duì)列,其中包含所有字符及其對(duì)應(yīng)的出現(xiàn)頻率。(2)不斷從隊(duì)列中選取兩個(gè)頻率最小的節(jié)點(diǎn),將它們合并成一個(gè)新的節(jié)點(diǎn),新節(jié)點(diǎn)的頻率即為這兩個(gè)節(jié)點(diǎn)頻率之和;重復(fù)這一過(guò)程,直至隊(duì)列中只剩下一個(gè)節(jié)點(diǎn),這個(gè)節(jié)點(diǎn)即為霍夫曼樹(shù)的根節(jié)點(diǎn)。(3)將每個(gè)字符與霍夫曼樹(shù)中從根節(jié)點(diǎn)到該字符的路徑進(jìn)行映射,這條路徑上的每條邊都代表一個(gè)特定的編碼方向,這些方向組合起來(lái)就構(gòu)成了該字符的霍夫曼編碼。通過(guò)這樣的方式,就實(shí)現(xiàn)了對(duì)字符的高效編碼,從而實(shí)現(xiàn)了數(shù)據(jù)的壓縮。
例5.2運(yùn)行如下代碼,可以得到“我喜歡自然語(yǔ)言處理這門課程”的霍夫曼編碼
importheapqfromcollectionsimportdefaultdict,Counterdefcalculate_frequencies(text): freq=Counter(text) returnfreqdefbuild_huffman_tree(freq): priority_queue=[[weight,[char,""]]forchar,weightinfreq.items()]
heapq.heapify(priority_queue) whilelen(priority_queue)>1: lo=heapq.heappop(priority_queue)
hi=heapq.heappop(priority_queue) forpairinlo[1:]:pair[1]='0'+pair[1] forpairinhi[1:]:pair[1]='1'+pair[1] heapq.heappush(priority_queue,[lo[0]+hi[0]]+lo[1:]+hi[1:]) huffman_tree=priority_queue[0]
returnhuffman_treedefhuffman_encoding(text):
freq=calculate_frequencies(text) huffman_tree=build_huffman_tree(freq)
huffman_codes={pair[0]:pair[1]forpairinhuffman_tree[1:]} returnhuffman_codestext="我喜歡自然語(yǔ)言處理這門課程。"
huffman_codes=huffman_encoding(text)forchar,codeinhuffman_codes.items():print(f"{char}:{code}")
在這個(gè)例子中,首先計(jì)算文本中每個(gè)字符的頻率;然后基于這些頻率構(gòu)建一個(gè)霍夫曼樹(shù);最后創(chuàng)建一個(gè)字典,將每個(gè)字符映射到其在霍夫曼樹(shù)中的路徑編碼,生成了每個(gè)字符的霍夫曼編碼字符串。在實(shí)際應(yīng)用中,可能需要將霍夫曼編碼轉(zhuǎn)換為二進(jìn)制格式以便存儲(chǔ)和傳輸。
4.互信息
互信息是度量?jī)蓚€(gè)隨機(jī)變量之間相互依賴程度的一種方法,被廣泛應(yīng)用于各種領(lǐng)域。它是信息論中的一個(gè)重要概念,用于衡量?jī)蓚€(gè)隨機(jī)變量之間的相關(guān)性或依賴性?;バ畔⒌挠?jì)算公式如下:I(X,Y)=H(X)-H(X|Y),其中I(X,Y)表示隨機(jī)變量X和Y的互信息,H(X)和H(Y)分別表示隨機(jī)變量X和Y的信息熵,H(X|Y)則表示在已知隨機(jī)變量Y的條件下隨機(jī)變量X的條件熵?;バ畔⒂?jì)算的韋恩圖如圖5.1所示。
在圖5.1中,左邊的圓圈是X的信息熵H(X),右邊的圓圈是Y的信息熵H(Y),并集是聯(lián)合分布的信息熵H(X,Y),差集是條件熵H(X|Y)或H(Y|X),交集為互信息I(X,Y)?;バ畔⒃酱?,意味著兩個(gè)隨機(jī)變量之間的關(guān)聯(lián)越密切。
例5.3假設(shè)有兩個(gè)事件X和Y,其中X={今天下雨},Y={今天陰天}。設(shè)定p(X)
0.6為下雨的概率,p(Y)
0.7為陰天的概率,p(X,Y)
0.2為既下雨又陰天的概率。計(jì)算X和Y互信息的過(guò)程如下:
互信息可以進(jìn)一步分為平均互信息和平方互信息,具有豐富的物理含義和應(yīng)用。例如,在特征選擇中,可以利用互信息度量特征與目標(biāo)之間的關(guān)系,去除無(wú)關(guān)緊要或冗余的特征,從而提高模型的性能。
5.1.2信息抽取的任務(wù)信息抽取任務(wù)致力于根據(jù)預(yù)設(shè)的抽取要求,自動(dòng)從非結(jié)構(gòu)化文本中提煉出結(jié)構(gòu)化的信息。這一過(guò)程涵蓋了多個(gè)子任務(wù):實(shí)體識(shí)別,標(biāo)識(shí)文本中的特定實(shí)體;關(guān)系抽取,識(shí)別并抽取實(shí)體間的關(guān)聯(lián)關(guān)系;事件抽取,抽取文本中描述的事件及其相關(guān)元素;屬性抽取,從文本中挖掘?qū)嶓w的屬性信息;情感分析,分析文本表達(dá)的情感傾向;文本分類,對(duì)文本內(nèi)容進(jìn)行分類;關(guān)鍵詞抽取,抽取文本中的核心詞匯。這些子任務(wù)共同構(gòu)成了信息抽取的完整框架,有助于更有效地從非結(jié)構(gòu)化文本中獲取有價(jià)值的信息。
1.實(shí)體識(shí)別實(shí)體識(shí)別(EntityRecognition)是信息抽取任務(wù)中的一個(gè)重要子任務(wù),旨在從文本中自動(dòng)識(shí)別并標(biāo)注出具有特定意義的實(shí)體。這些實(shí)體可以是人名、地名、組織名、產(chǎn)品名等,也可以是抽象的概念或術(shù)語(yǔ)。實(shí)體識(shí)別技術(shù)能夠快速準(zhǔn)確地定位并了解文本中的關(guān)鍵信息,為后續(xù)的信息處理和利用提供基礎(chǔ)。在實(shí)際應(yīng)用中,實(shí)體識(shí)別技術(shù)廣泛應(yīng)用于多個(gè)領(lǐng)域。例如,在新聞報(bào)道中,實(shí)體識(shí)別可以快速識(shí)別出涉及的人物、地點(diǎn)和事件;在電商領(lǐng)域,實(shí)體識(shí)別可以用于識(shí)別商品名稱、品牌、類別等信息,為推薦系統(tǒng)和搜索引擎提供優(yōu)化;在醫(yī)療領(lǐng)域,實(shí)體識(shí)別可以輔助醫(yī)生從病歷中抽取關(guān)鍵信息,提高診斷效率和準(zhǔn)確性。實(shí)體識(shí)別是信息抽取的基礎(chǔ)任務(wù)之一,其目的是將文本中的非結(jié)構(gòu)化信息轉(zhuǎn)化為結(jié)構(gòu)化信息,更好地理解和利用文本數(shù)據(jù),為各個(gè)領(lǐng)域的應(yīng)用提供有力支持。
2.關(guān)系抽取關(guān)系抽?。≧elationExtraction)是從自然語(yǔ)言文本中抽取實(shí)體及其之間關(guān)系的信息技術(shù),是信息檢索、智能問(wèn)答、智能對(duì)話等人工智能應(yīng)用的重要基礎(chǔ)。關(guān)系抽取的主要任務(wù)是,給定一段句子文本,抽取句子中的兩個(gè)實(shí)體及實(shí)體之間的關(guān)系,以構(gòu)成一個(gè)三元組(s,p,o),其中s為subject表示主實(shí)體,p為predicate表示兩實(shí)體間的關(guān)系,o為object表示客實(shí)體。例如,在句子“華為公司總部位于廣東省深圳市”中,關(guān)系抽取可以識(shí)別出“華為公司”和“廣東省深圳市”之間的“總部所在地”關(guān)系。關(guān)系抽取可以更好地理解文本中的信息。關(guān)系抽取在各種應(yīng)用中發(fā)揮著重要作用。在知識(shí)圖譜構(gòu)建中,關(guān)系抽取有助于自動(dòng)構(gòu)建和擴(kuò)展圖譜,提高知識(shí)發(fā)現(xiàn)和推理的效率;在情感分析中,關(guān)系抽取可以識(shí)別文本中的情感關(guān)系,有助于情感挖掘和推理;在文本摘要中,關(guān)系抽取可以自動(dòng)生成文本摘要,提高信息檢索和傳播效率;在問(wèn)答系統(tǒng)中,關(guān)系抽取有助于回答自然語(yǔ)言問(wèn)題,提高問(wèn)答系統(tǒng)的準(zhǔn)確性和效率。
3.事件抽取事件抽?。‥ventExtraction)是自然語(yǔ)言處理領(lǐng)域中的一項(xiàng)重要任務(wù),旨在從非結(jié)構(gòu)化文本中自動(dòng)識(shí)別和抽取與事件相關(guān)的信息。事件通常包含觸發(fā)詞、事件類型、事件論元等元素,觸發(fā)詞指引發(fā)事件的詞或短語(yǔ),事件類型描述事件的性質(zhì),而事件論元?jiǎng)t提供了事件的參與者、時(shí)間、地點(diǎn)等詳細(xì)信息。例如,在句子“北京時(shí)間2024年4月8日上午10時(shí)33分,張三和李四舉辦了婚禮”中,事件抽取系統(tǒng)從文本中識(shí)別出了“婚禮”這一事件類型,并找到了觸發(fā)該事件的動(dòng)詞“舉辦”。同時(shí),系統(tǒng)還確定了婚禮的主體是張三和李四,婚禮的時(shí)間是在北京時(shí)間2024年4月8日上午10時(shí)33分。在實(shí)現(xiàn)事件抽取的過(guò)程中,通常需要先進(jìn)行文本預(yù)處理,包括分詞、詞性標(biāo)注等步驟。然后,利用命名實(shí)體識(shí)別技術(shù)來(lái)識(shí)別文本中的實(shí)體,為后續(xù)的事件抽取提供基礎(chǔ)。接下來(lái),通過(guò)事件觸發(fā)詞識(shí)別和事件類型分類來(lái)確定事件的存在和類型。最后,通過(guò)事件論元識(shí)別來(lái)抽取事件的詳細(xì)信息,完成整個(gè)事件抽取過(guò)程。
4.屬性抽取屬性抽?。ˋttributeExtraction)是從不同信息源中采集特定實(shí)體屬性信息的過(guò)程。它旨在從原始的非結(jié)構(gòu)化和半結(jié)構(gòu)化數(shù)據(jù)中獲取實(shí)體的屬性信息,這些信息對(duì)于理解和描述實(shí)體至關(guān)重要。在屬性抽取的過(guò)程中,實(shí)體的屬性被視作實(shí)體與屬性值之間的一種名詞性關(guān)系,從而將屬性抽取任務(wù)轉(zhuǎn)化為關(guān)系抽取任務(wù)。一種常見(jiàn)的方法是基于百科類網(wǎng)站的半結(jié)構(gòu)化數(shù)據(jù),通過(guò)自動(dòng)抽取生成訓(xùn)練語(yǔ)料,用于訓(xùn)練實(shí)體屬性標(biāo)注模型,然后將此模型應(yīng)用于非結(jié)構(gòu)化數(shù)據(jù)的實(shí)體屬性抽取。此外,數(shù)據(jù)挖掘方法也被用于直接從文本中挖掘?qū)嶓w屬性和屬性值之間的關(guān)系模式,以實(shí)現(xiàn)對(duì)屬性名和屬性值在文本中的定位。
例如,對(duì)文本“華為Mate50智能手機(jī),采用6.7英寸OLED曲面屏,搭載第一代驍龍8+4G處理器,擁有8GB運(yùn)行內(nèi)存和256GB機(jī)身內(nèi)存。其后置攝像頭為5000萬(wàn)像素超光變攝像頭+1300萬(wàn)像素超廣角攝像頭+800萬(wàn)像素長(zhǎng)焦攝像頭,支持5G網(wǎng)絡(luò),電池容量為4460mAh,支持66W有線快充和50W無(wú)線快充。手機(jī)顏色有昆侖霞光、昆侖破曉、冰霜銀、曜金黑、流光紫可選?!边M(jìn)行屬性抽取。屬性抽取結(jié)果如下。
在這個(gè)例子中,屬性抽取系統(tǒng)從商品描述文本中識(shí)別并抽取出了華為Mate50智能手機(jī)的各種屬性信息。這些屬性包括商品的基本規(guī)格(屏幕尺寸、處理器型號(hào)等)、硬件配置(如運(yùn)行內(nèi)存、機(jī)身內(nèi)存等)、攝像頭配置、網(wǎng)絡(luò)支持、電池、充電方式,以及可選的顏色等。通過(guò)屬性抽取,電商平臺(tái)可以方便地展示商品的詳細(xì)信息,幫助消費(fèi)者了解商品的特點(diǎn)和性能,從而做出更明智的購(gòu)買決策。同時(shí),這些屬性信息也可以用于商品推薦、比價(jià)、評(píng)價(jià)分析等多個(gè)方面,提升電商平臺(tái)的運(yùn)營(yíng)效率并優(yōu)化用戶體驗(yàn)。
5.情感分析情感分析(SentimentAnalysis)是指從文本數(shù)據(jù)中自動(dòng)識(shí)別出作者的情感傾向,如積極、消極或中立。情感分析可以了解人們對(duì)某個(gè)主題或產(chǎn)品的看法,從而做出更好的決策。其廣泛應(yīng)用于社交媒體監(jiān)控、產(chǎn)品評(píng)論分析、電影評(píng)論打分等多個(gè)領(lǐng)域。情感分析是一個(gè)不斷發(fā)展的領(lǐng)域,隨著技術(shù)的進(jìn)步和數(shù)據(jù)的積累,情感分析的準(zhǔn)確性不斷提高,應(yīng)用范圍不斷擴(kuò)大。
6.文本分類文本分類(TextClassification)是指將文本數(shù)據(jù)自動(dòng)歸類到預(yù)定義的類別中。例如,在過(guò)濾垃圾郵件時(shí),可以將郵件分為垃圾郵件和非垃圾郵件兩類。文本分類是許多自然語(yǔ)言處理任務(wù)的基礎(chǔ),如情感分析、主題建模等。文本分類是一個(gè)重要的自然語(yǔ)言處理任務(wù),隨著深度學(xué)習(xí)技術(shù)的發(fā)展,文本分類的準(zhǔn)確性和效率不斷提高,為實(shí)際應(yīng)用提供了有力支持。
7.關(guān)鍵詞抽取關(guān)鍵詞抽取(KeywordExtraction)是指從文本中自動(dòng)識(shí)別并抽取出最重要的詞匯或短語(yǔ),這些詞匯或短語(yǔ)能夠概括文本的主要內(nèi)容或主題。關(guān)鍵詞抽取在多個(gè)領(lǐng)域都有廣泛的應(yīng)用,如搜索引擎優(yōu)化、文檔摘要生成和社交媒體分析等。信息抽取不僅是自然語(yǔ)言處理的核心組成部分,也是許多實(shí)際應(yīng)用的關(guān)鍵技術(shù)。例如,在醫(yī)療領(lǐng)域,信息抽取技術(shù)可以用于從臨床文檔中抽取病人的重要信息,以便醫(yī)生做出更準(zhǔn)確的診斷。
5.2信息抽取的方法和技術(shù)隨著互聯(lián)網(wǎng)技術(shù)的廣泛普及和持續(xù)進(jìn)步,大量的數(shù)據(jù)得以生成、儲(chǔ)存與分享。這些數(shù)據(jù)中潛藏著豐富的信息與知識(shí),而信息抽取技術(shù)正是為了精準(zhǔn)地提煉出這些數(shù)據(jù)中的關(guān)鍵或有價(jià)值的信息。當(dāng)前,信息抽取的主要方法包括基于規(guī)則的方法、有監(jiān)督學(xué)習(xí)方法、無(wú)監(jiān)督學(xué)習(xí)方法和半監(jiān)督學(xué)習(xí)方法等,這些方法各具特色,可根據(jù)實(shí)際應(yīng)用場(chǎng)景靈活選擇。
5.2.1基于規(guī)則的方法基于規(guī)則的方法(Rule-basedMethods)通過(guò)預(yù)先編寫(xiě)一系列明確的規(guī)則來(lái)從文本中抽取信息,這些規(guī)則可以表現(xiàn)為正則表達(dá)式、語(yǔ)法規(guī)則或?qū)<抑R(shí)等。這種方法在處理結(jié)構(gòu)化程度較高的文本(表格、列表等)時(shí),通常能展現(xiàn)出良好的效果。然而,它的不足之處在于規(guī)則需要人工編寫(xiě),這既耗時(shí)又可能引入主觀偏見(jiàn)。此外,面對(duì)復(fù)雜的語(yǔ)言結(jié)構(gòu)和深層次的語(yǔ)義關(guān)系,基于規(guī)則的方法往往難以應(yīng)對(duì),其抽取的準(zhǔn)確度和效率可能會(huì)受到較大影響。
正則表達(dá)式正則表達(dá)式,也被稱為規(guī)則表達(dá)式(RegularExpression,在代碼中常簡(jiǎn)寫(xiě)為regex、regexp或RE),是一種強(qiáng)大的文本處理工具。它是由普通字符(如a到z之間的字母)和特殊字符(稱為“元字符”)組成的模式,用于描述、匹配和操作文本模式。正則表達(dá)式的主要功能是在文本中查找、替換、抽取和驗(yàn)證特定的模式。例如,要判斷一個(gè)文檔中是否包含“自然語(yǔ)言處理”,就需要?jiǎng)?chuàng)建一個(gè)匹配“自然語(yǔ)言處理”的正則表達(dá)式,然后通過(guò)該正則表達(dá)式判斷過(guò)濾。1.元字符表正則表達(dá)式中的元字符如表5.1所示。
2.Re模塊re模塊提供compile()、findall()、search()、match()、split()、replace()、sub()等函數(shù)用于實(shí)現(xiàn)正則表達(dá)式的相關(guān)功能,如表5.2所示。
1)compile()函數(shù)功能:編譯一個(gè)正則表達(dá)式語(yǔ)句,并返回編譯后的正則表達(dá)式對(duì)象。格式:pile(string[,flags])說(shuō)明:string為要匹配的字符串;flags為標(biāo)志位,用于控制正則表達(dá)式的匹配方式,如是否區(qū)分大小寫(xiě)。2)findall()函數(shù)功能:用于匹配所有符合規(guī)律的內(nèi)容,返回包含結(jié)果的列表。格式:re.findall(pattern,string[,flags])說(shuō)明:pattern為匹配的正則表達(dá)式。
3)search()函數(shù)功能:用于匹配并抽取第一個(gè)符合規(guī)則的內(nèi)容,返回一個(gè)正則表達(dá)式對(duì)象。格式:re.search(pattern,string[,flags])示例:4)match()函數(shù)功能:從字符串的開(kāi)頭開(kāi)始匹配一個(gè)模式,如果匹配成功,則返回成功的對(duì)象,否則返回None。格式:pile(pattern,string[,flags])示例:需要注意的是,這里的span()與start()是與特定編程語(yǔ)言相關(guān)的函數(shù),并非所有的自然語(yǔ)言處理工具或框架都支持這一功能。具體的使用方法和含義可能會(huì)因不同的編程語(yǔ)言和庫(kù)而有所差異。5)replace()函數(shù)功能:用于執(zhí)行查找并替換的操作,將正則表達(dá)式匹配到的子串,用字符串替換。格式:re.replace(regexp,replacement)示例:
6)split()函數(shù)功能:用于分隔字符串,用給定的正則表達(dá)式進(jìn)行分隔,分隔后返回結(jié)果列表。格式:re.split(pattern,string[,maxsplit,flags])示例:7)sub()函數(shù)功能:使用re替換字符串中每個(gè)匹配的子串,返回替換后的字符串。格式:re.sub(regexp,string)示例:
此外,正則表達(dá)式在不同的編程語(yǔ)言中有不同的應(yīng)用。例如,在JavaScript中,正則表達(dá)式被作為對(duì)象處理,這些模式被用于regexp的exec和test方法,以及String的match、matchAll、replace、search和split方法。而在處理空白行、HTML標(biāo)記或者首尾空白字符等問(wèn)題時(shí),常常需要用到一些具體的正則表達(dá)式??偟膩?lái)說(shuō),正則表達(dá)式提供了一種靈活且強(qiáng)大的方式來(lái)處理和分析文本數(shù)據(jù)。
語(yǔ)法規(guī)則語(yǔ)法規(guī)則,即語(yǔ)言中自然形成并普遍遵循的習(xí)慣與規(guī)律,是人們?cè)谌粘=涣髦胁豢苫蛉钡幕A(chǔ)。這些規(guī)則并非語(yǔ)言學(xué)家主觀創(chuàng)造或隨意規(guī)定的,而是基于人們長(zhǎng)期的語(yǔ)言實(shí)踐和經(jīng)驗(yàn)總結(jié)而得出的客觀存在。語(yǔ)法規(guī)則的存在,確保了語(yǔ)言的規(guī)范性和一致性,使得人們?cè)诮涣鲿r(shí)能夠更為流暢地傳達(dá)自己的意圖。了解和掌握語(yǔ)法規(guī)則對(duì)于提升個(gè)人的語(yǔ)言素養(yǎng)至關(guān)重要。它不僅能夠在寫(xiě)作時(shí)構(gòu)建清晰、準(zhǔn)確的句子,在閱讀時(shí)理解文本的深層含義,還使表達(dá)更為得體、精確。因此,語(yǔ)法規(guī)則的學(xué)習(xí)和運(yùn)用是提升語(yǔ)言能力的必經(jīng)之路。語(yǔ)法規(guī)則是語(yǔ)言中的基本規(guī)范,包括組合規(guī)則和聚合規(guī)則兩個(gè)重要的方面。組合規(guī)則關(guān)注于詞語(yǔ)和句子成分如何組合成完整的句子,而聚合規(guī)則涉及詞語(yǔ)的分類和替換。兩者共同構(gòu)成了語(yǔ)法規(guī)則的基礎(chǔ),在語(yǔ)言學(xué)習(xí)中提供了重要的幫助和指導(dǎo)。
1.組合規(guī)則組合規(guī)則是指語(yǔ)言中的各個(gè)單位,如詞、短語(yǔ)等,按照特定的順序和方式相互結(jié)合以形成完整句子的規(guī)則。這些規(guī)則是實(shí)際存在的,而且在日常言語(yǔ)交流中發(fā)揮著至關(guān)重要的作用。組合規(guī)則主要包括以下兩個(gè)方面。(1)語(yǔ)素組合成詞的規(guī)則:語(yǔ)素是語(yǔ)言中最小的意義單位,如漢語(yǔ)中的“人”“山”等。這些語(yǔ)素通過(guò)一定的組合方式構(gòu)成詞,如“人民”“山水”等。這種將語(yǔ)素組合成詞的規(guī)則稱為構(gòu)詞法。(2)詞組合成句子的規(guī)則:詞是語(yǔ)言中具有獨(dú)立意義的基本單位,如漢語(yǔ)中的“學(xué)習(xí)”“認(rèn)真”等。這些詞通過(guò)一定的組合方式構(gòu)成句子,如“我認(rèn)真學(xué)習(xí)”。這種將詞組合成句子的規(guī)則稱為句法。組合規(guī)則與詞的變化規(guī)則合在一起,統(tǒng)稱為詞法。詞法研究的是詞的形成、變化和用法等方面的問(wèn)題。
2.聚合規(guī)則聚合規(guī)則是指語(yǔ)法單位的分類和變化規(guī)則。這種規(guī)則是潛在的,儲(chǔ)存于人們的大腦里。潛存在大腦中的聚合是從大量的言語(yǔ)實(shí)踐中歸納出來(lái)的。說(shuō)話時(shí),組合規(guī)則提出要求,聚合規(guī)則提供可能的選擇。從聚合中選出的單位可以對(duì)組合的各個(gè)位置上可能出現(xiàn)的詞進(jìn)行替換,從而創(chuàng)造出新的句子。聚合規(guī)則主要研究的是語(yǔ)法單位的類別、關(guān)系和變化等方面的問(wèn)題。例如,英語(yǔ)中的名詞可以分為可數(shù)名詞和不可數(shù)名詞,動(dòng)詞可以分為及物動(dòng)詞和不及物動(dòng)詞等。這些類別之間存在一定的關(guān)系,如可數(shù)名詞和不可數(shù)名詞在數(shù)量上的對(duì)立關(guān)系、及物動(dòng)詞和不及物動(dòng)詞在賓語(yǔ)方面的對(duì)立關(guān)系等??傊?,語(yǔ)法規(guī)則是語(yǔ)言組織和表達(dá)的基本規(guī)律,它包括組合規(guī)則和聚合規(guī)則兩個(gè)方面。組合規(guī)則是現(xiàn)實(shí)的,存在于言語(yǔ)交流中;聚合規(guī)則是潛在的,儲(chǔ)存于人們的大腦里。掌握語(yǔ)法規(guī)則,有助于更好地理解和運(yùn)用語(yǔ)言。
例5.4假設(shè)有以下句子:“IlikeNLPverymuch”;"Isawawhitecat"在這個(gè)例子中,名詞短語(yǔ)是由形容詞、名詞或代詞組成的短語(yǔ)。例如,NLP和cat是名詞??梢允褂肞ython實(shí)現(xiàn)一個(gè)簡(jiǎn)單的名詞短語(yǔ)抽取器,如下所示。
這個(gè)簡(jiǎn)單的實(shí)現(xiàn)使用了NLTK(NaturalLanguageToolkit)庫(kù)來(lái)進(jìn)行詞性標(biāo)注和分詞。通過(guò)遍歷標(biāo)注后的單詞,可以抽取出名詞短語(yǔ)。請(qǐng)注意,這個(gè)實(shí)現(xiàn)僅適用于英文文本,對(duì)于其他語(yǔ)言可能需要進(jìn)行相應(yīng)的調(diào)整。
專家知識(shí)庫(kù)專家知識(shí)庫(kù)是專家系統(tǒng)的核心之一,其主要功能是存儲(chǔ)和管理專家系統(tǒng)中的知識(shí)。書(shū)本專家知識(shí)庫(kù)是專家系統(tǒng)的核心之一,其主要功能是存儲(chǔ)和管理專家系統(tǒng)中的知識(shí),包括來(lái)自書(shū)本上的知識(shí)和各領(lǐng)域?qū)<以陂L(zhǎng)期的工作實(shí)踐中所獲得的經(jīng)驗(yàn)知識(shí)等。在專家群體中,這些知識(shí)也可以被稱為常識(shí)。這樣的知識(shí)是非正式的,需要形式化,如人機(jī)界面。專家系統(tǒng)是一個(gè)智能計(jì)算機(jī)程序系統(tǒng),其內(nèi)部含有大量某個(gè)領(lǐng)域?qū)<宜降闹R(shí)與經(jīng)驗(yàn),它能夠應(yīng)用人工智能技術(shù)和計(jì)算機(jī)技術(shù)。根據(jù)系統(tǒng)中的知識(shí)與經(jīng)驗(yàn),專家系統(tǒng)進(jìn)行推理和判斷,模擬人類專家的決策過(guò)程,以便解決那些需要人類專家處理的復(fù)雜問(wèn)題。在自然語(yǔ)言處理中,專家知識(shí)庫(kù)的應(yīng)用十分廣泛。例如,WordNet就是一個(gè)著名的英語(yǔ)詞匯知識(shí)庫(kù),其中包含大量同義詞集、反義詞集、名詞短語(yǔ)等信息,這些信息對(duì)于自然語(yǔ)言處理中的文本分類、情感分析等任務(wù)有著重要的作用。除了WordNet,還有一些其他語(yǔ)言知識(shí)庫(kù),如FrameNet、PropBank等,它們也都為自然語(yǔ)言處理提供了重要的支持。對(duì)于一個(gè)專家知識(shí)庫(kù),通常包含如下幾個(gè)部分。
1.問(wèn)題定義必須清晰地界定專家系統(tǒng)所要解決的核心問(wèn)題,這涵蓋了問(wèn)題涉及的領(lǐng)域、期望達(dá)成的目標(biāo),以及限制條件等。以醫(yī)療診斷專家系統(tǒng)為例,其主要目的是協(xié)助醫(yī)生解決在疾病診斷過(guò)程中遇到的一系列難題,比如如何依據(jù)病人的臨床表現(xiàn)和各項(xiàng)檢查結(jié)果,做出正確的診斷等。2.知識(shí)獲取專家系統(tǒng)的基石在于知識(shí),因此,需要通過(guò)多樣化的渠道來(lái)獲取相關(guān)知識(shí)。這些渠道可以包括查閱文獻(xiàn)資料、進(jìn)行專家深度訪談及分析實(shí)際案例等。在收集知識(shí)的過(guò)程中,需要特別關(guān)注知識(shí)的質(zhì)量與準(zhǔn)確性,以確保系統(tǒng)決策的正確性。以醫(yī)療診斷專家系統(tǒng)為例,它需要從醫(yī)學(xué)書(shū)籍、期刊及專業(yè)醫(yī)生那里,獲取關(guān)于疾病的定義、癥狀描述及診斷標(biāo)準(zhǔn)等核心知識(shí)。3.知識(shí)表示將獲取到的知識(shí)以合適的形式表示出來(lái),以便計(jì)算機(jī)能夠理解和處理。常見(jiàn)的知識(shí)表示方法有規(guī)則、框架和語(yǔ)義網(wǎng)絡(luò)等。在選擇表示方法時(shí),需要綜合考慮其適用性、可擴(kuò)展性及與推理機(jī)制的兼容性。以醫(yī)療診斷專家系統(tǒng)為例,可以將每種疾病視作一個(gè)類別,而癥狀與診斷標(biāo)準(zhǔn)則作為該類別的屬性與方法進(jìn)行表示。4.推理機(jī)制設(shè)計(jì)推理機(jī)制是專家系統(tǒng)的核心組成部分,它決定了專家系統(tǒng)解決問(wèn)題的能力。推理機(jī)制的設(shè)計(jì)需要考慮問(wèn)題的復(fù)雜性、知識(shí)的結(jié)構(gòu)特點(diǎn)及推理的效率等因素。常用的推理機(jī)制包括前向推理、后向推理和模糊推理等。例如,在醫(yī)療診斷專家系統(tǒng)中,如果采用前向推理,則可以根據(jù)病人的癥狀和檢查結(jié)果,依次應(yīng)用各個(gè)診斷規(guī)則,直到找到匹配的疾病為止。
5.用戶界面設(shè)計(jì)用戶界面是專家系統(tǒng)與用戶之間溝通的橋梁,其設(shè)計(jì)應(yīng)簡(jiǎn)潔直觀、易于操作。用戶界面的設(shè)計(jì)需要考慮用戶需求和使用習(xí)慣等因素,以便提供良好的用戶體驗(yàn)。例如,在醫(yī)療診斷專家系統(tǒng)中,用戶可以通過(guò)界面輸入病人的癥狀和檢查結(jié)果,系統(tǒng)則輸出相應(yīng)的診斷結(jié)果。6.系統(tǒng)集成測(cè)試完成系統(tǒng)構(gòu)建后,需要對(duì)整個(gè)專家系統(tǒng)進(jìn)行集成測(cè)試,以確保其穩(wěn)定性和可靠性。測(cè)試過(guò)程中,需要模擬各種可能出現(xiàn)的情況與場(chǎng)景,發(fā)現(xiàn)并修復(fù)潛在的問(wèn)題與漏洞。7.部署和維護(hù)將專家系統(tǒng)部署到實(shí)際環(huán)境中后,還需要持續(xù)進(jìn)行維護(hù)工作,包括更新知識(shí)庫(kù)、優(yōu)化算法和修復(fù)漏洞等。同時(shí),還應(yīng)定期對(duì)系統(tǒng)進(jìn)行評(píng)估與改進(jìn),以提升其性能與效果,確保系統(tǒng)能夠持續(xù)為用戶提供準(zhǔn)確、高效的決策支持。
例5.5下面是一個(gè)醫(yī)療診斷專家系統(tǒng)的示例。
在這個(gè)例子中,定義了一個(gè)Disease類來(lái)表示疾病,包含疾病名稱、癥狀和診斷標(biāo)準(zhǔn)。然后定義了一個(gè)ExpertSystem類來(lái)表示專家系統(tǒng),包含一個(gè)疾病列表和一個(gè)診斷方法。在診斷方法中,遍歷疾病列表,判斷用戶輸入的癥狀是否包含在疾病的癥狀列表中,如果包含則返回對(duì)應(yīng)的診斷結(jié)果。
5.2.2有監(jiān)督學(xué)習(xí)方法有監(jiān)督學(xué)習(xí)方法(SupervisedLearningMethods)是指通過(guò)訓(xùn)練一個(gè)分類器或回歸模型來(lái)從文本中抽取信息。這些方法需要大量的標(biāo)注數(shù)據(jù)作為訓(xùn)練集,以便模型能夠?qū)W習(xí)到從輸入到輸出的映射關(guān)系。常見(jiàn)的有監(jiān)督學(xué)習(xí)方法包括最大熵分類器、支持向量機(jī)、決策樹(shù)、隨機(jī)森林和邏輯回歸等。有監(jiān)督學(xué)習(xí)方法的優(yōu)點(diǎn)是性能較高,但缺點(diǎn)是需要大量的標(biāo)注數(shù)據(jù)和計(jì)算資源。這里主要對(duì)決策樹(shù)與邏輯回歸進(jìn)行詳細(xì)描述。
決策樹(shù)決策樹(shù)(DecisionTree)是一種常見(jiàn)的分類方法,其表現(xiàn)形式類似流程圖的樹(shù)結(jié)構(gòu),采用自頂向下的遞歸方式,決策樹(shù)的內(nèi)部節(jié)點(diǎn)進(jìn)行屬性值的比較并根據(jù)不同的屬性值判斷從該節(jié)點(diǎn)向下的分支,在決策樹(shù)的葉節(jié)點(diǎn)得到結(jié)論。因此,從決策樹(shù)的根節(jié)點(diǎn)到葉節(jié)點(diǎn)的一條路徑對(duì)應(yīng)一條合取規(guī)則,整棵決策樹(shù)對(duì)應(yīng)一組析取表達(dá)式規(guī)則。在決策樹(shù)的基本算法中,有3種情形會(huì)導(dǎo)致遞歸返回。(1)當(dāng)前節(jié)點(diǎn)包含的樣本全屬于同一類別,無(wú)須劃分。(2)當(dāng)前屬性集為空,或所有樣本在所有屬性上取值相同,無(wú)法劃分。(3)當(dāng)前節(jié)點(diǎn)包含的樣本集為空集,不能劃分。在第(2)種情形下,將當(dāng)前節(jié)點(diǎn)標(biāo)記為葉節(jié)點(diǎn),并將其類別設(shè)定為該節(jié)點(diǎn)所含樣本最多的類別;在第(3)種情形下,也將當(dāng)前節(jié)點(diǎn)標(biāo)記為葉節(jié)點(diǎn),但將其類別設(shè)定為其父節(jié)點(diǎn)所含樣本最多的類別。目前有多種決策樹(shù)的方法,如ID3、C4.5、CN2、SLIQ和SPRINT等,本節(jié)主要詳細(xì)介紹ID3與C4.5。
1.決策樹(shù)分類算法決策樹(shù)分類算法包含兩個(gè)步驟:決策樹(shù)生成算法和決策樹(shù)修剪算法。第1步,決策樹(shù)生成算法。決策樹(shù)構(gòu)造的輸入是一組帶有類別標(biāo)記的例子,構(gòu)造的結(jié)果是一棵二叉樹(shù)或多叉樹(shù)。其中,樹(shù)的每個(gè)內(nèi)部節(jié)點(diǎn)代表對(duì)一個(gè)屬性的測(cè)試,其分支就代表測(cè)試的每個(gè)結(jié)果,而樹(shù)的每個(gè)葉節(jié)點(diǎn)就代表一個(gè)類別。樹(shù)的最高層節(jié)點(diǎn)就是根節(jié)點(diǎn)。構(gòu)造好的決策樹(shù)的關(guān)鍵在于如何選擇好的屬性進(jìn)行樹(shù)的拓展。研究結(jié)果表明,一般情況下或具有較大概率地說(shuō),樹(shù)越小則樹(shù)的預(yù)測(cè)能力越強(qiáng)。第2步,決策樹(shù)修剪算法。剪枝是一種解決噪聲問(wèn)題的基本技術(shù),同時(shí)它也能使決策樹(shù)得到簡(jiǎn)化而變得更容易理解。有兩種基本的剪枝策略:預(yù)剪枝與后剪枝。
(1)預(yù)剪枝(Pre-Pruning):在生成樹(shù)的同時(shí)決定是繼續(xù)對(duì)不純的訓(xùn)練子集進(jìn)行劃分還是停止。(2)后剪枝(Post-Pruning):一種擬合+化簡(jiǎn)(Fitting-and-Simplifying)的兩階段方法。首先生成與訓(xùn)練數(shù)據(jù)完全擬合的一棵決策樹(shù),然后從樹(shù)的葉子開(kāi)始剪枝,逐步向根的方向剪。剪枝時(shí)要用到一個(gè)測(cè)試數(shù)據(jù)集,如果存在某個(gè)葉子剪去后能使得在測(cè)試集上的準(zhǔn)確度或其他測(cè)度不降低,則剪去該葉子,否則停止。理論上講,后剪枝好于預(yù)剪枝,但計(jì)算很復(fù)雜。在剪枝過(guò)程中,通常需要涉及一些統(tǒng)計(jì)參數(shù)或閾值。同時(shí)還要防止過(guò)分剪枝(Over-Pruning)帶來(lái)的副作用。
2.ID3算法ID3算法是昆蘭(RossQuinlan)提出的一個(gè)著名決策樹(shù)生成方法。(1)決策樹(shù)中每個(gè)內(nèi)部節(jié)點(diǎn)對(duì)應(yīng)一個(gè)非類別屬性,樹(shù)枝代表這個(gè)屬性的值。一個(gè)葉節(jié)點(diǎn)代表從樹(shù)根到葉節(jié)點(diǎn)之間的路徑對(duì)應(yīng)的記錄所屬的類別屬性值。(2)每個(gè)內(nèi)部節(jié)點(diǎn)都將與屬性中具有最大信息量的非類別屬性相關(guān)聯(lián)。(3)采用信息增益來(lái)選擇能夠最好地將樣本分類的屬性。一般用熵來(lái)衡量一個(gè)內(nèi)部節(jié)點(diǎn)的信息量。設(shè)S是s個(gè)數(shù)據(jù)樣本的集合,定義m個(gè)不同類Ci(i=1,2,…,m),設(shè)si是Ci類中的樣本數(shù)。對(duì)給定的樣本S所期望的信息值如式(5.2)所示:
3.ID3算法性能分析ID3算法是以一種從簡(jiǎn)單到復(fù)雜的爬山算法遍歷整個(gè)假設(shè)空間,從一棵空的樹(shù)開(kāi)始,逐步考慮更加復(fù)雜的假設(shè),目的是搜索到一個(gè)正確分類訓(xùn)練數(shù)據(jù)的決策樹(shù)。信息增益度量是引導(dǎo)這種爬山搜索的評(píng)估函數(shù)。分析ID3算法的優(yōu)缺點(diǎn)。ID3算法的優(yōu)點(diǎn)具體如下。(1)假設(shè)空間包含所有決策樹(shù),搜索的是現(xiàn)有屬性有限離散值函數(shù)的完整空間,避免了搜索不完整空間的風(fēng)險(xiǎn)。(2)穩(wěn)定性好,噪聲點(diǎn)對(duì)決策樹(shù)沒(méi)有影響。
(3)可以訓(xùn)練缺少屬性值的樣本。ID3算法的缺點(diǎn)具體如下。(1)從計(jì)算過(guò)程可以看到,ID3算法只能處理離散值的屬性。首先,要預(yù)測(cè)的目標(biāo)屬性必須是離散的;其次,樹(shù)的決策節(jié)點(diǎn)的屬性也必須是離散的。(2)信息增益度量存在一個(gè)內(nèi)在偏置,它偏袒具有較多值的屬性。例如,如果有一個(gè)屬性為日期,那么將有大量取值,這個(gè)屬性可能會(huì)有非常高的信息增益。假如它被選作樹(shù)的根節(jié)點(diǎn)的決策屬性則可能形成一棵非常寬的樹(shù),這棵樹(shù)可以理想地分類訓(xùn)練數(shù)據(jù),但是對(duì)于測(cè)試數(shù)據(jù)的分類性能可能會(huì)相當(dāng)差。(3)沒(méi)有考慮缺失值的樣本。(4)沒(méi)有考慮過(guò)擬合情況。ID3算法增長(zhǎng)了樹(shù)的每個(gè)分支的深度,直到恰好能對(duì)訓(xùn)練樣例完美地分類。當(dāng)數(shù)據(jù)中有噪聲或訓(xùn)練樣例的數(shù)量太少時(shí),產(chǎn)生的樹(shù)會(huì)過(guò)度擬合訓(xùn)練樣例。(5)劃分過(guò)程可能會(huì)由于子集規(guī)模過(guò)小而造成統(tǒng)計(jì)特征因不充分而停止。
4.C4.5算法C4.5算法是機(jī)器學(xué)習(xí)算法中的一個(gè)分類決策樹(shù)算法,由澳大利亞悉尼大學(xué)RossQuinlan教授在1993年基于ID3算法改進(jìn)。其目標(biāo)是監(jiān)督學(xué)習(xí)。也就是找到一個(gè)從屬性值到類別的映射關(guān)系,并且可以通過(guò)這個(gè)映射,將新的類別未知的實(shí)體進(jìn)行分類。C4.5算法既能處理非離散的數(shù)據(jù),也能處理不完整的數(shù)據(jù),與ID算法相比,具有如下特點(diǎn)。(1)引入了信息增益比例的概念。(2)合并具有連續(xù)屬性的值。(3)可以處理具有缺少屬性值的訓(xùn)練樣本。(4)使用不同的修剪技術(shù)以避免樹(shù)的過(guò)度擬合。(5)利用K折交叉驗(yàn)證。(6)具有規(guī)則的生成方法等。信息增益比例是在信息增益概念基礎(chǔ)上發(fā)展起來(lái)的,一個(gè)屬性的信息增益比例根據(jù)式(5.5)計(jì)算得到:
對(duì)于連續(xù)屬性值,C4.5算法的處理過(guò)程如下。
(1)根據(jù)屬性的值,對(duì)數(shù)據(jù)集進(jìn)行排序。(2)用不同的閾值將數(shù)據(jù)集動(dòng)態(tài)地進(jìn)行劃分。(3)當(dāng)輸出改變時(shí)確定一個(gè)閾值。(4)取兩個(gè)實(shí)際值的中點(diǎn)作為一個(gè)閾值。(5)取兩個(gè)劃分,所有樣本都在這兩個(gè)劃分中。(6)得到所有可能的閾值、增益及增益比。(7)每個(gè)屬性會(huì)變?yōu)槿蓚€(gè)值,即小于閾值或大于等于閾值。簡(jiǎn)單地說(shuō),針對(duì)屬性有連續(xù)數(shù)值的情況,則在訓(xùn)練集中可以按升序方式排列。如果屬性A共有n種取值,則對(duì)每個(gè)取值vj(j=1,2,…,n),將所有的記錄進(jìn)行劃分,一部分小于vj
,另一部分大于或等于vj
。針對(duì)每個(gè)vj計(jì)算劃分對(duì)應(yīng)的增益比例,選擇增益最大的劃分對(duì)屬性A進(jìn)行離散化。在C4.5算法處理的樣本中,可以含有未知屬性值,其處理方法是用最常用的值替代或者將最常用的值分在同一類中。具體采用概率的方法,依據(jù)屬性已知的值,對(duì)屬性和每個(gè)值賦予一個(gè)概率,取得這些概率,這些概率依賴該屬性已知的值。規(guī)則的產(chǎn)生:一旦樹(shù)被建立,就可以把樹(shù)轉(zhuǎn)換為if-then規(guī)則。規(guī)則存儲(chǔ)于一個(gè)二維數(shù)組中,每行代表樹(shù)中的一個(gè)規(guī)則,即從根到葉之間的一個(gè)路徑。表中的每列存放著樹(shù)中的節(jié)點(diǎn)。
例5.6以鳶尾花數(shù)據(jù)集為例,進(jìn)行決策樹(shù)分類,執(zhí)行代碼如下。
在這個(gè)例子中,將數(shù)據(jù)集劃分為訓(xùn)練集和測(cè)試集,然后創(chuàng)建一個(gè)決策樹(shù)分類器,并使用訓(xùn)練集對(duì)其進(jìn)行訓(xùn)練。最后,使用測(cè)試集對(duì)模型進(jìn)行評(píng)估,計(jì)算準(zhǔn)確率。
邏輯回歸邏輯回歸,也稱為邏輯回歸分析,是一種廣義的線性回歸分析模型,其核心在于在線性回歸的基礎(chǔ)上融入了邏輯函數(shù)。具體而言,邏輯回歸以線性回歸模型的輸出作為Sigmoid函數(shù)的輸入,從而實(shí)現(xiàn)對(duì)結(jié)果的轉(zhuǎn)換。這一過(guò)程實(shí)際上是將線性回歸的輸出值映射至(0,1)區(qū)間,從而使得邏輯回歸的輸出結(jié)果可以被解讀為某個(gè)事件發(fā)生的概率。這種映射功能主要得益于Sigmoid函數(shù)的特性,其表達(dá)式如式(5.6)所示:
(x)
1/(1
exp(
x))(5.6)這一函數(shù)使得邏輯回歸在處理分類問(wèn)題時(shí)具備了出色的性能。其中,函數(shù)
(x)的定義域?yàn)?-∞,∞),值域?yàn)閇0,1],x
軸在0點(diǎn)的結(jié)果是0.5。當(dāng)x
的值足夠大時(shí),可以將其視為0或1兩類問(wèn)題,大于0.5是1類問(wèn)題,反之是0類問(wèn)題,而如果剛好是0.5,則可以劃分至0類或1類。對(duì)于0-1型變量,y=1的概率分布公式定義如下:P(y=1)=p(5.7)y=0的概率分布公式定義如下:P(y=0)=1-p(5.8)離散型隨機(jī)變量期望值公式如下:E(y)=1
p+0(1-p)=p(5.9)在疾病自動(dòng)診斷或經(jīng)濟(jì)預(yù)測(cè)等領(lǐng)域中,邏輯回歸可以根據(jù)給定的自變量數(shù)據(jù)集來(lái)估計(jì)某一事件(如疾病發(fā)生或經(jīng)濟(jì)增長(zhǎng))的發(fā)生概率。
例5.7以鳶尾花數(shù)據(jù)集為例,運(yùn)用邏輯回歸進(jìn)行分類,執(zhí)行如下代碼。
在這個(gè)例子中,將數(shù)據(jù)集劃分為訓(xùn)練集和測(cè)試集,然后創(chuàng)建一個(gè)邏輯回歸模型,并使用訓(xùn)練集對(duì)其進(jìn)行訓(xùn)練。最后,使用測(cè)試集對(duì)模型進(jìn)行評(píng)估,計(jì)算準(zhǔn)確率。有監(jiān)督學(xué)習(xí)方法是機(jī)器學(xué)習(xí)中的一種重要學(xué)習(xí)方式,依賴標(biāo)記好的訓(xùn)練數(shù)據(jù)來(lái)推斷功能,即通過(guò)一組已知類別的樣本調(diào)整分類器的參數(shù),以達(dá)到所要求的性能。
5.2.3無(wú)監(jiān)督學(xué)習(xí)無(wú)監(jiān)督學(xué)習(xí)方法(UnsupervisedLearningMethods)在自然語(yǔ)言處理領(lǐng)域中展現(xiàn)出其強(qiáng)大的技術(shù)實(shí)力,通過(guò)該技術(shù)訓(xùn)練得到的模型被稱為預(yù)訓(xùn)練模型。無(wú)監(jiān)督學(xué)習(xí)主要涵蓋兩大類:淺層無(wú)監(jiān)督學(xué)習(xí)和深層無(wú)監(jiān)督學(xué)習(xí)。這兩類學(xué)習(xí)方法各具特色,為自然語(yǔ)言處理提供了豐富的技術(shù)手段。
淺層無(wú)監(jiān)督預(yù)訓(xùn)練模型維數(shù)災(zāi)難是自然語(yǔ)言處理和其他學(xué)習(xí)領(lǐng)域面臨的一大挑戰(zhàn),它指的是在高維空間中,隨著維度的增加,所需的樣本數(shù)量和計(jì)算量會(huì)急劇上升,呈現(xiàn)出指數(shù)級(jí)的增長(zhǎng)。尤其在語(yǔ)言建模等任務(wù)中,這種挑戰(zhàn)尤為明顯。例如,當(dāng)試圖對(duì)大量離散隨機(jī)變量(如句子中的單詞或數(shù)據(jù)挖掘中的離散特征)的聯(lián)合分布進(jìn)行建模時(shí),維數(shù)災(zāi)難會(huì)導(dǎo)致計(jì)算變得異常復(fù)雜,同時(shí)內(nèi)存需求也會(huì)迅速膨脹。以一個(gè)包含10000個(gè)單詞的詞匯表為例,如果使用One-Hot編碼對(duì)這些單詞進(jìn)行離散表示,那么需要構(gòu)建一個(gè)10000
10000的矩陣。然而,One-Hot編碼矩陣中存在大量的零值,這意味著大部分內(nèi)存空間被浪費(fèi)了。為了解決維數(shù)災(zāi)難帶來(lái)的問(wèn)題,研究人員開(kāi)始采用低維向量空間來(lái)表示單詞,從而降低了運(yùn)算資源的消耗。這也為無(wú)監(jiān)督預(yù)訓(xùn)練模型的設(shè)想奠定了基礎(chǔ)。隨著深度學(xué)習(xí)技術(shù)的不斷進(jìn)步,眾多方法被提出用以解決維數(shù)災(zāi)難問(wèn)題。其中,詞嵌入技術(shù)便是其中的佼佼者。它能夠?qū)⒚總€(gè)單詞映射到一個(gè)低維向量空間中,這些向量不僅能夠有效捕捉單詞間的語(yǔ)義關(guān)系,還大幅減少了內(nèi)存占用和計(jì)算復(fù)雜度。目前,Word2Vec、GloVe和FastText等詞嵌入技術(shù)已被廣泛應(yīng)用,并在前面的章節(jié)中進(jìn)行了詳細(xì)介紹,此處不再贅述。
深層無(wú)監(jiān)督預(yù)訓(xùn)練模型深層無(wú)監(jiān)督預(yù)訓(xùn)練模型在深度學(xué)習(xí)中占據(jù)重要地位,它采用無(wú)監(jiān)督學(xué)習(xí)方式預(yù)先訓(xùn)練模型,再結(jié)合少量標(biāo)注數(shù)據(jù)進(jìn)行微調(diào),以應(yīng)對(duì)復(fù)雜的學(xué)習(xí)任務(wù)。該模型的核心思想在于,通過(guò)無(wú)標(biāo)簽數(shù)據(jù)學(xué)習(xí)有用的特征表示,進(jìn)而服務(wù)于具體的下游任務(wù)。這不僅有助于解決深度網(wǎng)絡(luò)訓(xùn)練中的梯度消失問(wèn)題,還能在沒(méi)有大量標(biāo)注數(shù)據(jù)的情況下,充分利用未標(biāo)注數(shù)據(jù)。深層無(wú)監(jiān)督預(yù)訓(xùn)練模型在無(wú)監(jiān)督環(huán)境下學(xué)習(xí)數(shù)據(jù)的內(nèi)在結(jié)構(gòu)和特征,為深度網(wǎng)絡(luò)提供了優(yōu)良的初始狀態(tài),進(jìn)而在后續(xù)的有監(jiān)督學(xué)習(xí)中展現(xiàn)出更出色的性能。正因如此,它在深度學(xué)習(xí)領(lǐng)域中得到了廣泛應(yīng)用,特別是在自然語(yǔ)言處理和計(jì)算機(jī)視覺(jué)等任務(wù)中。在本節(jié)中,將重點(diǎn)介紹BERT模型。通過(guò)在大規(guī)模文本數(shù)據(jù)上進(jìn)行無(wú)監(jiān)督預(yù)訓(xùn)練,BERT能夠捕捉雙向上下文信息,生成深度的語(yǔ)言表征。這些表征可靈活應(yīng)用于各種下游任務(wù),如情感分析、命名實(shí)體識(shí)別和問(wèn)題回答等。BERT模型結(jié)構(gòu)主要由兩部分構(gòu)成:嵌入層和Transformer編碼器。嵌入層負(fù)責(zé)將輸入的詞向量映射到模型的隱藏層中,每個(gè)詞都被轉(zhuǎn)換為一個(gè)固定維度的向量。而Transformer編碼器作為BERT模型的核心,由多個(gè)相同的層堆疊而成。每層均包含自注意力機(jī)制和前饋神經(jīng)網(wǎng)絡(luò)兩個(gè)子層。Transformer的內(nèi)部結(jié)構(gòu)基于AshishVaswani等人提出的自注意力層和層歸一化的堆疊,這種結(jié)構(gòu)使得BERT模型能夠高效處理語(yǔ)言信息,捕捉詞與詞之間的復(fù)雜關(guān)系。Transformer結(jié)構(gòu)圖如圖5.2所示。編碼器由一堆結(jié)構(gòu)相同的編碼組件構(gòu)成,解碼器由一堆結(jié)構(gòu)相同的解碼組件構(gòu)成。BERT模型的訓(xùn)練主要分為兩個(gè)階段。(1)預(yù)訓(xùn)練:在大量無(wú)標(biāo)簽文本上進(jìn)行,目標(biāo)是學(xué)習(xí)到一個(gè)通用的語(yǔ)言表示。這個(gè)過(guò)程通常使用MaskedLanguageModel(MLM)或NextSentencePrediction(NSP)兩種任務(wù)。(2)微調(diào):在具體的下游任務(wù)上進(jìn)行,如分類、命名實(shí)體識(shí)別等。這個(gè)階段需要有標(biāo)注的數(shù)據(jù),并且模型會(huì)使用這些數(shù)據(jù)來(lái)微調(diào)預(yù)訓(xùn)練好的參數(shù)。例5.8以"Thisisanexamplesentence."為例,運(yùn)用BERT模型進(jìn)行分類。
BERT模型能夠捕捉到深層次的上下文信息,因此在很多任務(wù)上都達(dá)到了非常好的效果。BERT模型的預(yù)訓(xùn)練過(guò)程可以在大量無(wú)標(biāo)簽數(shù)據(jù)上進(jìn)行,這使得它在數(shù)據(jù)稀疏的場(chǎng)景下也能表現(xiàn)出色。面臨的挑戰(zhàn)主要體現(xiàn)在:BERT模型的規(guī)模非常大,需要大量的計(jì)算資源和時(shí)間進(jìn)行訓(xùn)練;BERT模型的理解能力主要依賴預(yù)訓(xùn)練階段的任務(wù),如果預(yù)訓(xùn)練任務(wù)和實(shí)際任務(wù)不匹配,可能會(huì)影響模型的性能。
5.2.4半監(jiān)督學(xué)習(xí)半監(jiān)督學(xué)習(xí)方法(Semi-SupervisedLearningMethods)是指在有限的標(biāo)注數(shù)據(jù)和大量未標(biāo)注數(shù)據(jù)的情況下,通過(guò)結(jié)合有監(jiān)督學(xué)習(xí)和無(wú)監(jiān)督學(xué)習(xí)的技術(shù)來(lái)提高信息抽取的性能。常見(jiàn)的半監(jiān)督學(xué)習(xí)方法包括半監(jiān)督支持向量機(jī)、圖半監(jiān)督學(xué)習(xí)等。半監(jiān)督學(xué)習(xí)方法的優(yōu)點(diǎn)是可以充分利用未標(biāo)注數(shù)據(jù),降低對(duì)標(biāo)注數(shù)據(jù)的依賴,但缺點(diǎn)是需要設(shè)計(jì)合適的算法來(lái)平衡有監(jiān)督和無(wú)監(jiān)督部分的貢獻(xiàn)。
半監(jiān)督支持向量機(jī)半監(jiān)督支持向量機(jī)(Semi-SupervisedSupportVectorMachines,S3VM)是支持向量機(jī)的一種擴(kuò)展,它結(jié)合了有標(biāo)簽數(shù)據(jù)和無(wú)標(biāo)簽數(shù)據(jù)來(lái)提高分類器的性能。這種算法主要用于處理具有大量未標(biāo)記數(shù)據(jù)和少量標(biāo)記數(shù)據(jù)的問(wèn)題。半監(jiān)督支持向量機(jī)的核心思想是:在標(biāo)記數(shù)據(jù)有限的情況下,通過(guò)充分整合大量未標(biāo)記數(shù)據(jù)中的信息來(lái)提升學(xué)習(xí)性能。傳統(tǒng)的監(jiān)督學(xué)習(xí)中,支持向量機(jī)是一種不錯(cuò)的分類工具,它通過(guò)尋找能最大化不同類別數(shù)據(jù)點(diǎn)間隔的超平面,來(lái)實(shí)現(xiàn)對(duì)數(shù)據(jù)的精確劃分。而在半監(jiān)督學(xué)習(xí)的框架下,半監(jiān)督支持向量機(jī)不僅充分利用有標(biāo)記樣本的已知信息,還深入挖掘未標(biāo)記樣本中潛在的有用信息,進(jìn)而實(shí)現(xiàn)更為精準(zhǔn)和高效的學(xué)習(xí)。半監(jiān)督支持向量機(jī)的目標(biāo)是找到一個(gè)既能將有標(biāo)記的兩類樣本分開(kāi),又能穿過(guò)數(shù)據(jù)低密度區(qū)域的超平面,以此來(lái)利用未標(biāo)記數(shù)據(jù)中的分布信息。這種方法的一個(gè)關(guān)鍵假設(shè)是,數(shù)據(jù)的結(jié)構(gòu)可以通過(guò)未標(biāo)記樣本來(lái)揭示,從而幫助模型更好地理解數(shù)據(jù)的邊界。在半監(jiān)督支持向量機(jī)中最為知名的算法是TSVM(TransductiveSupportVectorMachine)。與標(biāo)準(zhǔn)的支持向量機(jī)一樣,TSVM也是一種解決二分類問(wèn)題的學(xué)習(xí)算法。在標(biāo)記數(shù)據(jù)稀缺的情境下,TSVM能夠利用大量未標(biāo)記數(shù)據(jù)來(lái)優(yōu)化學(xué)習(xí)性能。在模型訓(xùn)練過(guò)程中,TSVM不僅依賴有標(biāo)簽的數(shù)據(jù),還積極探索未標(biāo)簽數(shù)據(jù)中的潛在信息,以更精準(zhǔn)地劃分?jǐn)?shù)據(jù)空間。TSVM的核心目標(biāo)是找到一個(gè)超平面,這個(gè)超平面不僅能夠?qū)⒁褬?biāo)記的兩類樣本有效分開(kāi),還能夠穿越數(shù)據(jù)的低密度區(qū)域,充分利用未標(biāo)記數(shù)據(jù)中的分布信息。該方法的一個(gè)關(guān)鍵前提是,未標(biāo)記樣本能夠揭示數(shù)據(jù)的內(nèi)在結(jié)構(gòu),進(jìn)而協(xié)助模型更精確地把握數(shù)據(jù)的邊界。至于具體的算法流程,TSVM首先會(huì)利用有標(biāo)簽的數(shù)據(jù)進(jìn)行初步分類學(xué)習(xí),然后結(jié)合未標(biāo)簽數(shù)據(jù)中的信息對(duì)超平面進(jìn)行微調(diào),通過(guò)迭代優(yōu)化,最終得到一個(gè)既符合已標(biāo)記數(shù)據(jù)分布,又能反映未標(biāo)記數(shù)據(jù)潛在結(jié)構(gòu)的超平面。
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年工程維修培訓(xùn)試題及答案
- 軟件升級(jí)和更新協(xié)議
- 2025年合同終止勞動(dòng)合同的規(guī)定與條件
- 吊車租賃損壞賠償協(xié)議
- 2025年感染管理規(guī)范試題及答案
- 2025物流貨物運(yùn)輸合同范本
- 2025年鄉(xiāng)鎮(zhèn)退役軍人服務(wù)站專職人員招聘面試預(yù)測(cè)題及答案
- 智能化綠化養(yǎng)護(hù)協(xié)議
- 智能家居設(shè)備市場(chǎng)占有率表
- 地球節(jié)能一小時(shí)繪畫(huà)課件
- JJF 2025-2023高動(dòng)態(tài)精密離心機(jī)校準(zhǔn)規(guī)范
- 2023年航空職業(yè)技能鑒定考試-候機(jī)樓服務(wù)技能考試題庫(kù)(含答案)
- 醫(yī)院腹腔鏡手術(shù)知情同意書(shū)
- p型半導(dǎo)體和n型半導(dǎo)體課件
- GB/T 748-2005抗硫酸鹽硅酸鹽水泥
- GB/T 28287-2012足部防護(hù)鞋防滑性測(cè)試方法
- 走好群眾路線-做好群眾工作(黃相懷)課件
- 混凝土結(jié)構(gòu)設(shè)計(jì)原理教學(xué)教案
- 民間文學(xué)(全套課件)
- 專升本00465心理衛(wèi)生與心理輔導(dǎo)歷年試題題庫(kù)(考試必備)
- 既有重載鐵路無(wú)縫線路改造及運(yùn)維技術(shù)探索
評(píng)論
0/150
提交評(píng)論