国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

文本幽默識別綜述:從數(shù)據(jù)到方法

2022-05-09 10:59呂歡歡馬宏偉楊東強(qiáng)
關(guān)鍵詞:語料庫笑話語義

呂歡歡,馬宏偉,王 璐,楊東強(qiáng)

(山東建筑大學(xué) 計算機(jī)科學(xué)與技術(shù)學(xué)院 ,濟(jì)南 250101)

1 幽默計算相關(guān)概述

社交媒體的快速發(fā)展產(chǎn)生了大量用戶生成的言論,這為幽默的可計算性奠定了基礎(chǔ)[1].幽默計算旨在賦予計算機(jī)學(xué)習(xí)人類語言行為認(rèn)知模式的能力,以使計算機(jī)理解并產(chǎn)生幽默新穎的表達(dá).幽默計算研究涵蓋幽默識別和幽默生成兩個子領(lǐng)域,幽默生成不僅要求計算機(jī)“讀”懂幽默,更要求計算機(jī)會表達(dá)幽默,因此,需要在幽默識別的基礎(chǔ)上探索更復(fù)雜的計算模式.基于幽默計算的人工智能研究可以被應(yīng)用于多種場景,包括聊天機(jī)器人、機(jī)器翻譯、兒童教育軟件等.對于人機(jī)對話系統(tǒng),幽默計算可以幫助計算機(jī)產(chǎn)生更自然詼諧的表達(dá).電商平臺利用幽默計算,可以深入挖掘用戶評論背后隱含的真正情感含義,針對用戶做出更精準(zhǔn)的推薦.幽默計算還應(yīng)用于社交平臺中,通過分析用戶發(fā)表的意見,可以挖掘其背后隱含的幽默,輔助判斷輿情趨勢.另外,幽默計算可以應(yīng)用在機(jī)器翻譯中,例如中文歇后語的英文翻譯等.

由于幽默的主觀性及對語境和文化背景的依賴性,使計算機(jī)理解幽默并非易事,但幽默理論的探索以及基于機(jī)器學(xué)習(xí)的幽默計算研究表明,計算機(jī)仍可以完成一些簡單的幽默識別任務(wù),該領(lǐng)域目前處于初步研究階段.幽默識別的早期研究主要是基于幽默理論進(jìn)行特征工程設(shè)計,使用支持向量機(jī)、樸素貝葉斯、隨機(jī)森林等傳統(tǒng)機(jī)器學(xué)習(xí)算法進(jìn)行幽默二元分類(即識別是否幽默).Yang等人[2]基于幽默理論,從不一致性、模糊性、個人風(fēng)格和語音的聲調(diào)韻律方面設(shè)計幽默特征,使用隨機(jī)森林分類器進(jìn)行二元幽默分類.Mihalcea和Strapparava[3,4]為幽默二元分類任務(wù)創(chuàng)建了一個單語笑話語料庫16000 One-Liners,定義了一組基于幽默理論的啟發(fā)式特征(例如頭韻、反義詞等),利用支持向量機(jī)和樸素貝葉斯分類器進(jìn)行幽默分類.除了幽默二元分類任務(wù),相關(guān)研究也陸續(xù)提出了關(guān)于幽默識別的各種下游任務(wù).例如,基于細(xì)粒度的幽默程度評級任務(wù),幽默錨點的識別(即自動學(xué)習(xí)引起幽默的關(guān)鍵語義單元),幽默語料庫的構(gòu)建等.使用基于數(shù)據(jù)驅(qū)動的方法進(jìn)行幽默識別,幽默語料庫的創(chuàng)建是基礎(chǔ)且關(guān)鍵的工作.

幽默本質(zhì)上是人類所能感知的一種特殊的隱式情感,但其產(chǎn)生機(jī)制和表達(dá)方式比一般情感更復(fù)雜.幽默識別與文本分類、情感分析任務(wù)既有區(qū)別又有聯(lián)系.從語法和語義角度看,幽默分為形式幽默(例如排比、押韻、對偶等)和內(nèi)容幽默(例如關(guān)鍵詞幽默、上下文幽默等),這是幽默識別任務(wù)相較于一般文本分類任務(wù)的獨特性.從語料角度看,三者相關(guān)語料庫的標(biāo)注具有較大差異.文本分類語料的標(biāo)簽多種多樣,而幽默識別標(biāo)簽主要表示是否幽默、幽默程度以及幽默類型,例如諷刺、雙關(guān)語等.從應(yīng)用場景看,文本分類涵蓋了多種場景,例如新聞分類、情感分類等,而幽默識別主要可作為機(jī)器翻譯、幽默生成、人機(jī)對話系統(tǒng)的基礎(chǔ)任務(wù),更適合應(yīng)用于社交媒體的用戶言論數(shù)據(jù)的分析中,是一種具有更細(xì)粒度的研究方向.目前大部分關(guān)于幽默計算的研究聚焦于幽默識別,因此本文著重對幽默識別相關(guān)研究進(jìn)行了總結(jié).目前,幽默識別研究的主要工作集中在兩方面:幽默語料庫的創(chuàng)建和基于機(jī)器學(xué)習(xí)的幽默識別方法的探索.

本文的組織結(jié)構(gòu)如下.首先系統(tǒng)介紹幽默理論研究及幽默特征提取,然后圍繞從數(shù)據(jù)到方法介紹幽默語料庫構(gòu)建、基于傳統(tǒng)機(jī)器學(xué)習(xí)的幽默識別方法、基于深度學(xué)習(xí)的幽默識別方法,最后對幽默識別研究進(jìn)行總結(jié)與展望.

2 幽默相關(guān)理論及特征提取

2.1 幽默相關(guān)理論

目前,幽默計算依賴于幽默理論的支撐.“幽默”一詞源于英語的“humor”,意思是心血來潮、反復(fù)無常,后來演變成了“搞笑”的意思.盡管從詞源上幽默是舶來品,但其存在是跨文化的,不同的文明形態(tài)下的幽默是普遍存在的,差異可能在于所謂“笑點”的不同.

幽默是一種特殊的語義表達(dá),幽默的理解通常需要在字面含義的基礎(chǔ)上探索更深層次的語義內(nèi)涵.大量心理學(xué)、語言學(xué)、哲學(xué)等領(lǐng)域的學(xué)者對幽默成因進(jìn)行了研究,從古希臘亞里士多德時期至今,誕生了上百種幽默理論.其中,具有代表性的是“優(yōu)越論”、 “寬慰論”、“乖訛論”三大幽默理論[5,6].“優(yōu)越論”認(rèn)為笑聲產(chǎn)生自一種優(yōu)于他人的感受.優(yōu)越論雖然很好地詮釋了幽默使人發(fā)笑的背后原因,但對于一些幽默表達(dá)無法給出合理解釋,這是優(yōu)越論的局限性.“寬慰論”認(rèn)為笑聲是緩解壓力、釋放壓抑神經(jīng)的一種途徑,可以解釋為什么當(dāng)人們談?wù)撘恍┟舾性掝}時會引起笑聲.“乖訛論”也稱為“不一致性理論”,“乖”和“訛”是兩個不協(xié)調(diào)的對立面,不協(xié)調(diào)會使人意外,而意外可能會導(dǎo)致驚喜或發(fā)笑.例如,“有錢的人怕別人知道他有錢,沒錢的人怕別人知道他沒錢.”Reskin[7]提出了一種由“乖訛論”延伸出的幽默語義腳本理論(Semantic Script-based Theory of Humor,SSTH).SSTH認(rèn)為笑聲源于處于一個語篇內(nèi)兼容的兩個腳本之間的對立,笑話結(jié)構(gòu)被拆解成“主體(set-up)”和“妙語(punchline)”兩部分,主體包含多個可能的解釋,只有一個解釋是明顯理解的,而幽默產(chǎn)生自其他隱含意義的解釋妙語.Attardo和Raskin[8]提出的言語幽默一般理論(General Theory of Verbal Humor,GTVH)擴(kuò)展了SSTH的可解釋性和描述性,除了情景對立外,強(qiáng)調(diào)了影響幽默的其他因素,認(rèn)為言語幽默包括六種幽默元素:幽默語言、敘述策略、對象、情景、邏輯機(jī)制、對立.SSTH強(qiáng)調(diào)語義對立關(guān)系,而GTVH除此之外另包括語用、聲調(diào)韻律等語言學(xué)方面的因素考量.近年來,幽默本體語義理論(Ontological Semantic Theory of Humor,OSTH)[9]也是在“乖訛論”基礎(chǔ)上發(fā)展起來的,是一種將詞語激活腳本的過程形式化的通用模型,使腳本具有更加統(tǒng)一的表達(dá)形式和明確的內(nèi)部結(jié)構(gòu).

2.2 幽默特征提取

幽默是一種特殊的隱式情感,其表達(dá)通常通過語言、表情、肢體動作等方式含蓄表達(dá),這也決定了幽默計算任務(wù)相較于常規(guī)情感分析任務(wù)或文本分類任務(wù)的特殊性.對大量相關(guān)研究的調(diào)查發(fā)現(xiàn),目前幽默特征的設(shè)計及表示直接對幽默識別的結(jié)果產(chǎn)生重大影響.幽默計算的特征設(shè)計可歸納為以下幾類:基于語言學(xué)的特征、基于幽默理論的特征、基于幽默結(jié)構(gòu)和類型的特征及基于內(nèi)容和上下文的特征,如圖1所示.

圖1 幽默計算特征分類Fig.1 Humor computation features classification

基于語言學(xué)的特征涵蓋了語音、語義、語法特征,例如頭韻、押韻、諧音、反義、歧義、語義距離、語義熵、詞性及數(shù)量等.基于幽默理論的特征主要是根據(jù)經(jīng)典的“寬慰論”、“優(yōu)越論”、“乖訛論”及其衍生出的SSTH等幽默理論來設(shè)計,涉及范圍廣泛.例如,情感極性特征,情感關(guān)聯(lián)特征,不一致性特征等.基于幽默結(jié)構(gòu)和文體類型的特征,Cattle和Ma[10]認(rèn)為幽默文本可拆解為“鋪墊”和“笑點”兩部分,單獨針對“鋪墊”和“笑點”設(shè)計特征以及設(shè)計能反映二者語義關(guān)聯(lián)的特征,能極大提升幽默計算的表現(xiàn).幽默有多種類型,例如諷刺、雙關(guān)、俚語、文字游戲等,每種文體的幽默成因不同,因此泛化性能強(qiáng)的計算模型離不開針對各種幽默文體設(shè)計的特征.例如,句長特征、標(biāo)點符號特征、轉(zhuǎn)折詞特征等.基于內(nèi)容和上下文的特征,例如N-gram特征等,得益于深度神經(jīng)網(wǎng)絡(luò)的超強(qiáng)抽象能力,主要是基于神經(jīng)網(wǎng)絡(luò)和大規(guī)模模型的預(yù)訓(xùn)練表示進(jìn)行獲取,例如Bi-LSTM、GPT、BERT模型等.

3 幽默識別語料庫

目前幽默識別研究仍處于起步階段,現(xiàn)有的高質(zhì)量公開數(shù)據(jù)集并不多.基于數(shù)據(jù)驅(qū)動的幽默識別方法需要大規(guī)模、高質(zhì)量的幽默語料庫,特別是帶有人工標(biāo)注的幽默語料庫.本部分詳細(xì)介紹一些公開、常用的幽默計算語料庫.

3.1 英文語料庫

3.1.1 16000 One-Liners

Mihalcea和Strapparava[3,4,11]使用10條英語單句幽默笑話作為隨機(jī)種子和關(guān)鍵字,查詢包含笑話的網(wǎng)頁,最終收集了16,000條笑話.為了驗證語料庫的有效性,從中隨機(jī)抽取了200條進(jìn)行人工標(biāo)注,其中只有9%被認(rèn)為是噪聲(即非笑話文本).除此之外,使用相似的文本特征,例如文本長度等,從路透社新聞標(biāo)題、諺語(Proverb)、英國國家語料庫(BNC)句子以及開放思維常識語料庫(OMCS)中選擇非幽默文本,與16,000條笑話文本共同組成幽默二元分類數(shù)據(jù)集.目前16000 One-Liners已成為幽默二元分類任務(wù)的常用數(shù)據(jù)集.本文將該數(shù)據(jù)集簡寫為“16000OL”.

3.1.2 Pun of The Day

Pun of The Day語料庫的2423條幽默正樣本是Yang等人[2]從“Pun of the Day”雙關(guān)語網(wǎng)站中收集的.雙關(guān)語是一種文字游戲類型,它利用一個術(shù)語或類似術(shù)語的多重含義,以達(dá)到預(yù)期幽默或修辭效果.為了執(zhí)行幽默分類任務(wù),該數(shù)據(jù)集的2403條負(fù)樣本收集自AP News、New York Times、Yahoo! Answer、Proverb等網(wǎng)站.為了消除正負(fù)樣本領(lǐng)域不同帶來的分類性能偏差,限制負(fù)樣本中的詞語都包含在正樣本詞典中,并使用相似的文本特征(例如句子長度等)收集負(fù)樣本.句子的平均長度為10~30個單詞.目前該數(shù)據(jù)集已經(jīng)被廣泛用于許多幽默二元分類研究中.Cattle和Ma[12]基于數(shù)據(jù)集16000 One-Liners和Pun of The Day驗證了其設(shè)計的幽默特征的有效性.本文將該數(shù)據(jù)集簡寫為“PoTD”.

3.1.3 Twitter Humor Corpus

16000OL的幽默實例是靜態(tài)不變的,并且所有實例類型是固定的單語笑話.而在社交網(wǎng)絡(luò)中,用戶產(chǎn)生了大量更加生動的幽默文本.從這些動態(tài)數(shù)據(jù)來源中研究識別幽默是一個值得研究的方向.Zhang和Liu[13]為了識別Twitter推文中的幽默,使用Twitter API收集了2000條幽默推文.雖然這些推文的源標(biāo)簽都是幽默的,但為了縮小源標(biāo)簽和用戶真實標(biāo)注之間的差異,對推文進(jìn)行了人工標(biāo)注,去除144條重復(fù)推文后得到了1267條幽默推文和589條非幽默推文.之后,從1267條幽默推文中隨機(jī)抽取1000條作為正樣例.同時使用Twitter API收集1500條非幽默推文和帶有幽默標(biāo)簽的非幽默推文中隨機(jī)選取1000條作為負(fù)樣例,并從網(wǎng)站textfiles.com收集了1000條非推文的幽默的短笑話實例.并限制該數(shù)據(jù)集的所有樣本長度均不超過140個字符.綜上,該數(shù)據(jù)集共包含3個子集:1000條幽默推文,1000條非幽默推文,1000條非推文幽默笑話.本文將該數(shù)據(jù)集簡稱為“Twitter Humor Corpus”.

3.1.4 Humicroedit

Humicroedit語料庫包含兩部分:1) Hossain等人[14]從Reddit(reddit.com)社區(qū)收集的熱門新聞原始標(biāo)題,2) 使用Amazon Mechanical Turk眾包平臺對原始標(biāo)題進(jìn)行微編輯使其具有趣味性評分的幽默版本,最終得到15,095條經(jīng)過編輯的新聞標(biāo)題和其對應(yīng)的幽默等級評分.該數(shù)據(jù)集包括兩個子集:subtask-1和subtask-2.subtask-1用于評估新聞標(biāo)題趣味性的回歸任務(wù),subtask-2用于預(yù)測同一標(biāo)題的兩個編輯版本中哪個版本更有趣.每個子集包括訓(xùn)練、驗證、測試集,以及train-funlines.csv文件,該文件是從FunLines比賽中額外收集的訓(xùn)練集數(shù)據(jù).該數(shù)據(jù)集的統(tǒng)計信息如表1所示.由于該數(shù)據(jù)集中樣本的幽默是經(jīng)過添加或替換一個名詞或動詞得到的,所以不僅可用于幽默評級回歸任務(wù),還可應(yīng)用于幽默錨點識別任務(wù)和自動幽默生成任務(wù).

表1 Humicroedit語料庫統(tǒng)計信息Table 1 Statistical information of Humicroedit

3.1.5 Short Jokes

Short Jokes是來自于Kaggle項目的一個開放數(shù)據(jù)庫.包含了231,657個短笑話,不限制笑話類型,長度從10到200個字符不等,每個樣本包含笑話文本和唯一ID.文獻(xiàn)[15]采用Short Jokes作為幽默正樣本,另外爬取了相同規(guī)模的WMT16英語新聞作為負(fù)樣本,用于幽默二元分類任務(wù)中.

3.1.6 The rJokes Dataset

Weller和Seppi[16]為了緩解英文幽默檢測缺乏大規(guī)模語料庫的困境,收集了一個包括573,335個笑話的幽默文本語料庫.每個笑話實例都被標(biāo)注了代表笑話程度的標(biāo)簽(0~11,分值越高代表幽默程度越高),笑話的平均長度為239.78個字符,語料來自于Reddit r/Jokes子社區(qū).樣本字段包括了笑話文本和妙語、笑話幽默程度標(biāo)簽以及笑話發(fā)布日期.

3.1.7 SemEval-2021 Task 7

幽默具有高度主觀性,年齡、性別、經(jīng)濟(jì)水平、社會地位等因素均會對幽默的感知產(chǎn)生影響.因此,SemEval 2021 Task 7數(shù)據(jù)集的標(biāo)注者年齡介于17歲-80歲年齡段之間,代表了不同性別、政治立場、收入水平等.該任務(wù)要求標(biāo)注給定的文本是否幽默,以及如果是幽默文本,在1~5評分區(qū)間內(nèi)標(biāo)注文本的幽默等級,標(biāo)注文本是否具有攻擊性以及攻擊性程度.因為一個用戶認(rèn)為是幽默的文本可能對另一個用戶來說具有攻擊性.

3.1.8 UR_FUNNY

目前多模態(tài)數(shù)據(jù)分析已成為自然語言處理領(lǐng)域的研究熱點.由于幽默常在人們面對面的社交活動中出現(xiàn),伴隨手勢、聲音韻律的語言常使幽默表達(dá)更加豐富.Hasan等人[17]創(chuàng)建了一個用于幽默識別任務(wù)的多模態(tài)數(shù)據(jù)集UR_FUNNY.不同于傳統(tǒng)的幽默二分類任務(wù),該數(shù)據(jù)集可用于笑點檢測,即檢測給定序列是否會在笑點之后引發(fā)笑聲.UR_FUNNY的數(shù)據(jù)來源于TED演講視頻,TED演講不僅涵蓋了不同主題和類型的幽默,且演講者也具有不同的文化背景.另外,該數(shù)據(jù)集與傳統(tǒng)數(shù)據(jù)集的負(fù)樣本采樣方式有所不同,傳統(tǒng)數(shù)據(jù)集的負(fù)樣本大部分來自于新聞門戶網(wǎng)站,比如New York Times、Yahoo! Answer等.而該數(shù)據(jù)集為了不引入主題偏差,負(fù)樣本與正樣本來自于同一視頻片段.該數(shù)據(jù)集的統(tǒng)計信息如表2所示.

3.2 非英文語料庫

現(xiàn)有幽默數(shù)據(jù)集大部分是英文數(shù)據(jù)集并且數(shù)據(jù)集規(guī)模相對較小,不能反應(yīng)幽默的廣泛性,而幽默的表達(dá)會因語種不同而存在差異.因此,為研究不同語言中的幽默識別方法,有研究者構(gòu)建了一些非英文幽默語料庫.

3.2.1 FUN

Blinov等人[18]在Stierlitz數(shù)據(jù)集[19]的基礎(chǔ)上收集構(gòu)造了一個俄語短文本幽默語料庫FUN,數(shù)據(jù)來源于各種在線網(wǎng)站,以保證數(shù)據(jù)的多樣性和代表性.該數(shù)據(jù)集包含超過300,000條短文本,其中大概一半是幽默樣本,并且人工標(biāo)注了1877條樣例來證明語料庫構(gòu)建方法的可靠性.為了驗證數(shù)據(jù)的有效性和多樣性,計算FUN數(shù)據(jù)集中的笑話和非笑話文本的KL散度,結(jié)果表明擴(kuò)展后的FUN數(shù)據(jù)集相對Stierlitz數(shù)據(jù)集更具有多樣性.

3.2.2 HAHA Dataset

HAHA數(shù)據(jù)集是用于西班牙語幽默計算的文本語料庫.Castro等人[20]在2016年建立了第一個西班牙語推文幽默計算語料庫,但是該數(shù)據(jù)集存在以下問題:1)每個樣本的標(biāo)注者較少,且標(biāo)注者之間的意見一致性較低;2)幽默和非幽默樣本的來源種類有限.為了解決上述問題,Castro等人[21]建立了一個眾包標(biāo)注的西班牙語幽默語料庫,其中每條樣本被標(biāo)注了是否是幽默文本,以及幽默程度評級得分(1-5).該語料庫共包含27,282條推文和117,800條標(biāo)注,每條推文具有4個注釋,且具有高度的一致性.然而,文獻(xiàn)[21]創(chuàng)建的語料庫仍然存在問題,包含較多的重復(fù)推文以及存在類別不平衡問題.Chiruzzo等人[22]在以上基礎(chǔ)上構(gòu)建并發(fā)布了HAHA-2019幽默語料庫,在收集更多推文的同時刪除了重復(fù)推文,并將數(shù)據(jù)集和標(biāo)注合并,同時要求標(biāo)注者在標(biāo)注幽默標(biāo)簽時判斷該推文是否具有攻擊性.讓標(biāo)注者標(biāo)注推文是否具有攻擊性的目的有兩個,一是收集帶有攻擊性標(biāo)簽的推文,以分析幽默屬性和攻擊性之間的聯(lián)系;二是明確標(biāo)注過程,若推文是具有攻擊性的,則該推文被標(biāo)注為非幽默的.該數(shù)據(jù)集已經(jīng)用于由IberLEF主辦的HAHA 2019比賽中.

3.2.3 CCL數(shù)據(jù)集

中國計算語言學(xué)大會(China Computational Linguistics,CCL)近兩年發(fā)布了一些關(guān)于幽默計算的任務(wù).CCL-2019“小牛杯”中文幽默計算發(fā)布了2個子任務(wù):生成幽默識別和中文幽默等級劃分.其數(shù)據(jù)集共分為兩個子集,分別對應(yīng)于兩個子任務(wù).子任務(wù)1要求識別計算機(jī)生成的幽默,是二元分類任務(wù).共有21,552個樣本,數(shù)據(jù)字段包括幽默文本ID、幽默文本內(nèi)容、幽默文本類型.子任務(wù)2為中文幽默等級劃分,分別用標(biāo)簽“1”、“3”、“5”表示文本的幽默遞增程度.子任務(wù)2的數(shù)據(jù)集包含21,885個樣本.CCL-2020“小牛杯”中文幽默計算發(fā)布了情景喜劇笑點識別任務(wù),任務(wù)數(shù)據(jù)集來源于《老友記》(英文名:Friends)和《我愛我家》兩種不同語言的情景喜劇,一段對話包含多句對白,每句對白被標(biāo)注幽默標(biāo)簽“0”(非幽默)或“1”(幽默笑點).其中,英文數(shù)據(jù)集包含約700段對話、10,000句對白,中文數(shù)據(jù)集包含約500段對話、18,000句對白.CCL-2021“小牛杯”幽默計算發(fā)布了圖文多模態(tài)幽默識別任務(wù),基于Meme(以圖文組合方式形成幽默)數(shù)據(jù)集,子任務(wù)1要求對給定的2個Meme進(jìn)行幽默程度比較,子任務(wù)2是Meme幽默等級劃分,每個Meme被標(biāo)注“強(qiáng)幽默”、“普通幽默”、“弱幽默”3種標(biāo)簽之一.

目前,大部分幽默語料庫只是笑話、幽默片段、雙關(guān)語或俏皮話等與非幽默文本的集合.為了更深入理解文本中引起幽默的元素,以及幽默產(chǎn)生的影響,智能人機(jī)交互系統(tǒng)除了具有區(qū)別笑話和非笑話的能力,笑話結(jié)構(gòu)和幽默意圖是計算機(jī)理解幽默的必要知識.任璐等[23]對笑話語料庫構(gòu)建所需的幽默理論基礎(chǔ)及標(biāo)注分析工作進(jìn)行總結(jié),收集了涵蓋故事、新聞、諺語/歇后語、微博4種不同體裁、不同來源、不同場景的33,025條笑話.Tseng等人[24]構(gòu)建了一個具有人工標(biāo)注幽默技巧、意圖和幽默度的笑話語料庫.該語料庫包含3365個笑話,每個笑話被標(biāo)注五級幽默程度,8個幽默技巧,以及六維幽默意圖.Zhang等人[25]創(chuàng)建了一個含有9123條樣本并標(biāo)注了關(guān)系、幽默發(fā)生場景、幽默類型、幽默等級、觸發(fā)幽默的關(guān)鍵詞以及數(shù)據(jù)來源的幽默分析數(shù)據(jù)庫,不僅可以用于幽默分類任務(wù),還可用于幽默錨點識別、幽默生成等任務(wù).表3給出一些幽默語料庫的正負(fù)樣本統(tǒng)計信息.

表3 幽默語料庫正負(fù)樣本統(tǒng)計Table 3 Positive and negative samples′ statistical information of some humorous corpura

4 模型與方法

在幽默識別模型與方法方面,一些研究人員致力于提高傳統(tǒng)機(jī)器學(xué)習(xí)算法的表現(xiàn)并將其用于幽默識別;一部分研究人員嘗試改進(jìn)經(jīng)典的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),例如循環(huán)神經(jīng)網(wǎng)絡(luò)、卷積神經(jīng)網(wǎng)絡(luò),來學(xué)習(xí)更好的幽默語義表示;最近,許多研究人員集中于使用預(yù)訓(xùn)練模型,例如Glove、BERT等,來更好地執(zhí)行幽默識別任務(wù).

4.1 基于傳統(tǒng)機(jī)器學(xué)習(xí)的幽默識別

識別幽默通常需要語境、常識以及文化背景等經(jīng)驗知識的綜合理解,精準(zhǔn)識別文本中的幽默仍然具有挑戰(zhàn)性.早期的幽默識別研究中,大部分方法是基于語言學(xué)特征,使用傳統(tǒng)機(jī)器學(xué)習(xí)方法進(jìn)行二元分類,即判斷給定的文本是否幽默.傳統(tǒng)機(jī)器學(xué)習(xí)方法進(jìn)行幽默識別的流程如圖2所示.

圖2 基于傳統(tǒng)機(jī)器學(xué)習(xí)的幽默識別流程Fig.2 Humor recognition procedure based on traditiaonl machine learning

Mihalcea和Strapparava[4]定義了一組基于幽默理論的啟發(fā)式特征,例如頭韻、反義詞、成人俚語等,同時學(xué)習(xí)基于文本內(nèi)容的特征,然后利用支持向量機(jī)和樸素貝葉斯算法進(jìn)行幽默識別.在16000OL數(shù)據(jù)集上的實驗結(jié)果表明,頭韻在單句笑話幽默中是一個重要因素,而單獨使用成人俚語特征效果僅比隨機(jī)預(yù)測稍有提高.主要原因之一是缺少專門的成人俚語詞典資源,并且成人俚語一般比較敏感,在幽默文本中出現(xiàn)的頻率不高.實驗分別使用4種不同文體的負(fù)樣本,結(jié)果相差較大,使用BNC語料庫的效果最差的原因在于BNC中文本風(fēng)格多樣,僅使用頭韻、反義詞、成人俚語特征并不能將幽默文本與其他文本區(qū)分開,而單句笑話使用傳統(tǒng)機(jī)器學(xué)習(xí)算法無法學(xué)習(xí)更多的上下文信息.該研究為幽默二元分類提供了j重要的數(shù)據(jù)支持,不足之處是尚未給出能更好挖掘幽默的特征.

Yang等人[2]基于幽默理論,從不一致性、模糊性、個人風(fēng)格和語音的聲調(diào)韻律4個方面定義幽默特征,并與word2vec[26]相結(jié)合,使用隨機(jī)森林訓(xùn)練幽默文本分類器,執(zhí)行幽默二元分類任務(wù).實驗結(jié)果表明,這些人工設(shè)計的特征結(jié)合word2vec取得的效果優(yōu)于單獨使用word2vec或語言模型的效果,說明將幽默語言學(xué)特征與詞嵌入相結(jié)合能夠取得比較好的效果.除此之外,他們還提出了一種識別幽默錨點的方法.幽默錨點的識別可以進(jìn)一步提高幽默分類的性能,特別是對于幽默的細(xì)粒度分類任務(wù).因此,未來可將幽默錨點識別作為輔助任務(wù),與幽默分類進(jìn)行聯(lián)合學(xué)習(xí),進(jìn)一步提高幽默分類的性能.目前,該研究成果已成為幽默二元分類任務(wù)的重要基線.

Cattle和Ma[12]結(jié)合統(tǒng)計學(xué)習(xí)方法特征的良好解釋性和神經(jīng)網(wǎng)絡(luò)方法自動表征學(xué)習(xí)的優(yōu)勢,設(shè)計了基于詞語間關(guān)聯(lián)的語義特征,自動進(jìn)行笑話語義和結(jié)構(gòu)特征學(xué)習(xí),并將幽默錨點的提取任務(wù)整合到幽默分類過程中.使用隨機(jī)森林分類器的實驗結(jié)果表明,在PoTD和16000OL數(shù)據(jù)集上的實驗結(jié)果表明,單詞關(guān)聯(lián)特征比word2vec[26]相似度特征對于幽默識別任務(wù)更有用.Liu等人[27]認(rèn)為幽默是一種文體,與句法結(jié)構(gòu)相關(guān),幽默文本和非幽默文本具有一些不同分布的句法結(jié)構(gòu).基于此,設(shè)計了3種類型的句法結(jié)構(gòu)特征:結(jié)構(gòu)元素統(tǒng)計特征、句子的構(gòu)成規(guī)則特征、元素間依賴關(guān)系特征.以Yang等人[2]的研究為基線,使用隨機(jī)森林分類器,在數(shù)據(jù)集16000 OL上F1值提高了7.2%.這表明,句法結(jié)構(gòu)特征可以顯著彌補基于幽默理論的特征的不足.句法結(jié)構(gòu)特征之所以能夠在幽默識別任務(wù)中發(fā)揮重要作用,一方面是因為幽默文本用詞簡單但句法結(jié)構(gòu)復(fù)雜,同時幽默文本是生動而具體的,多出現(xiàn)于人們?nèi)粘υ捴?

Castro等人[20]的研究是首次挖掘西班牙語幽默的工作,收集了來自Twitter幽默賬戶的西班牙語幽默文本語料,建立多項貝葉斯結(jié)合詞袋的模型作為基線,比較了SVM、DT、GNB、MNB以及KNN的實驗結(jié)果.其中,SVM取得了最佳效果,F(xiàn)1值達(dá)到75.5%,準(zhǔn)確率為83.6%.根據(jù)“優(yōu)越論”和“寬慰論”,幽默文本中應(yīng)該普遍存在情感信息來表達(dá)情感對比或情緒變化.Liu和Zhang[28]認(rèn)為建模篇章級的情感關(guān)聯(lián)特征比簡單統(tǒng)計情感詞的特征對于幽默識別任務(wù)來說更有效.他們定義了3種情感關(guān)聯(lián)關(guān)系:情感沖突、情感轉(zhuǎn)換、語篇關(guān)系,使用隨機(jī)森林作為分類器.實驗結(jié)果表明,結(jié)合語篇關(guān)系的情感關(guān)聯(lián)特征相對于情感詞數(shù)量是更有效的特征.未來可以將情感極性預(yù)測作為輔助任務(wù),幫助提高幽默識別的效果.樊小超等[29]從不一致性、模糊性、情感特性、語音特性和句法結(jié)構(gòu)特性5個維度構(gòu)建了30多種幽默特征,并對比使用不同分類器的效果,在數(shù)據(jù)集16000OL和PoTD上的實驗結(jié)果表明,基于不同維度設(shè)計合理充足的特征能有效表達(dá)幽默信息.

由于短文本包含的上下文信息較少,因此基于上下文內(nèi)容的特征有時并不能有效表達(dá)幽默,并且語言的多樣性也增加了幽默識別的難度.基于傳統(tǒng)機(jī)器學(xué)習(xí)的幽默識別方法的研究重點在于如何設(shè)計特征以能夠捕獲幽默含義,該類方法結(jié)合詞嵌入能有效提升效果.基于傳統(tǒng)機(jī)器學(xué)習(xí)的方法建立一個表現(xiàn)優(yōu)秀的幽默識別模型,不僅需要研究者對幽默理論和幽默語言學(xué)有深入了解,而且需要大量的外部知識和文化背景.幽默識別特征工程工作的困難繁雜是制約傳統(tǒng)機(jī)器學(xué)習(xí)方法幽默識別性能的一個重要因素,大部分幽默特征的設(shè)計并不是系統(tǒng)地從幽默理論中衍生出來的.

4.2 基于深度學(xué)習(xí)的幽默識別

雖然傳統(tǒng)機(jī)器學(xué)習(xí)模型簡單高效,但其面臨的一個主要問題是文本表示的高維度高稀疏問題,特征表達(dá)能力弱.隨著云計算和大數(shù)據(jù)技術(shù)日益成熟,計算機(jī)算力和存儲容量有了大幅度提高,深度學(xué)習(xí)時代迅速到來.幽默識別任務(wù)可以使用深度學(xué)習(xí)模型,利用海量數(shù)據(jù)進(jìn)行端到端的訓(xùn)練,無需人工干預(yù)特征的選擇過程.深度學(xué)習(xí)方法的工作重點是模型的構(gòu)建和調(diào)參.基于深度學(xué)習(xí)的技術(shù)使用大規(guī)模數(shù)據(jù)訓(xùn)練幽默計算模型,可以完成不同類型的幽默識別任務(wù).基于深度學(xué)習(xí)的幽默識別主要流程圖如圖3所示.

圖3 基于深度學(xué)習(xí)的幽默識別流程Fig.3 Humor recognition framework based on deep learning

4.2.1 基于卷積神經(jīng)網(wǎng)絡(luò)的方法

卷積神經(jīng)網(wǎng)絡(luò)[30](Convolutional Neural Network,CNN)不僅是計算機(jī)視覺領(lǐng)域的核心技術(shù),在自然語言處理領(lǐng)域也取得了重要進(jìn)展.卷積神經(jīng)網(wǎng)絡(luò)包括一維卷積神經(jīng)網(wǎng)絡(luò),二維卷積神經(jīng)網(wǎng)絡(luò)和三維卷積神經(jīng)網(wǎng)絡(luò).其中,一維卷積神經(jīng)網(wǎng)絡(luò)主要用于序列類型數(shù)據(jù)的處理,二維卷積神經(jīng)網(wǎng)絡(luò)常應(yīng)用于圖像、文本數(shù)據(jù)的處理,三維卷積神經(jīng)網(wǎng)絡(luò)主要應(yīng)用于視頻數(shù)據(jù)的處理.若將文本看作一維序列數(shù)據(jù),使用循環(huán)神經(jīng)網(wǎng)絡(luò)來表征文本比較自然.若將文本看作一維圖像,則可以使用一維卷積神經(jīng)網(wǎng)絡(luò)捕捉上下文的詞間關(guān)聯(lián).CNN提取文本特征的基本原理,CNN網(wǎng)絡(luò)的輸入為文本的詞嵌入向量,輸入會經(jīng)過不同的卷積和池化層,每層卷積可使用不同的卷積核進(jìn)行計算,以此學(xué)習(xí)文本更豐富的特征.

將CNN應(yīng)用于文本分析的開創(chuàng)性研究是Yoon Kim提出的TextCNN[31].TextCNN主要使用了一維卷積層和時序最大池化層,該模型對文本表示執(zhí)行整行卷積操作,保證了單詞的語義完整性.Chen和Lee[32]彌補了CNN應(yīng)用于幽默識別缺乏嚴(yán)格實驗對比的缺陷,同時探索了CNN網(wǎng)絡(luò)提高幽默識別性能的重要技術(shù),比如改進(jìn)CNN網(wǎng)絡(luò)結(jié)構(gòu),提高網(wǎng)絡(luò)學(xué)習(xí)幽默特征的能力.該研究收集了一個開放的在線演講語料庫TED Talks,來識別TED演講中的幽默.該語料庫的正樣本和負(fù)樣本都來源于演講對話,這盡可能減小了由于數(shù)據(jù)主題不同而產(chǎn)生的效果偏差.在PoTD數(shù)據(jù)集上的實驗結(jié)果表明,基于CNN的幽默識別模型相對于傳統(tǒng)基于語言知識的模型具有極大優(yōu)勢,但在TED Talk上的準(zhǔn)確率和F1的值均低于PoTD上的結(jié)果.可能原因是PoTD中的樣本長度較短,CNN能夠更好學(xué)習(xí)短文本的語義表示.

Chen和Soo[15]提出了一種CNN結(jié)合高速公路網(wǎng)絡(luò)(Highway Network)[33]的幽默識別模型,降低網(wǎng)絡(luò)規(guī)模以提高訓(xùn)練速度,緩解了隨著網(wǎng)絡(luò)深度增加模型訓(xùn)練困難的問題.高速公路網(wǎng)絡(luò)使用門控單元來調(diào)節(jié)通過網(wǎng)絡(luò)的信息流.該模型依次由詞嵌入層、卷積池化層、高速公路網(wǎng)絡(luò)層和全連接層構(gòu)成.在數(shù)據(jù)集16000OL、PoTD、Short Jokes、PPT Jokes上進(jìn)行了大量實驗,F(xiàn)1的值分別高達(dá)0.903、0.901、0.924、0.943.這表明該網(wǎng)絡(luò)模型不僅可以學(xué)習(xí)單句笑話、雙關(guān)語以及短文本等不同類型的幽默含義,還可以實現(xiàn)多語言的幽默識別.但其仍難以識別更微妙的幽默,模型結(jié)構(gòu)還有較大的改進(jìn)空間.由于CNN可以自動學(xué)習(xí)文本適用于當(dāng)前任務(wù)的表示特征,這使它可以在不同語言的分類任務(wù)上取得很好的性能.Winters和Delobelle[34]在基于負(fù)樣本生成方法構(gòu)建的荷蘭語幽默識別數(shù)據(jù)集上,使用卷積神經(jīng)網(wǎng)絡(luò)、長短期記憶網(wǎng)絡(luò)等不同模型比較驗證識別來自不同領(lǐng)域幽默文本的能力,其中CNN識別諺語的表現(xiàn)良好.

CNN雖然可以表示文本、視頻等時間或序列數(shù)據(jù),但無法對位置信息進(jìn)行建模.幽默與語境存在較大的依賴關(guān)系,未來可在CNN模型中加入位置或序列信息,進(jìn)一步表達(dá)引起幽默的不一致性、歧義性.目前將CNN用于幽默識別任務(wù)中的改進(jìn)方面主要體現(xiàn)在不斷往CNN架構(gòu)中加入新的幽默特征,其實質(zhì)還是手工設(shè)計特征的另一種表現(xiàn)形式.

4.2.2 基于循環(huán)神經(jīng)網(wǎng)絡(luò)的方法

CNN雖然可以成功識別一些短文本序列特定類型的幽默,然而在理解更長序列文本中的的微妙幽默方面存在不足,并且CNN的輸入和輸出長度都是相對確定的.當(dāng)訓(xùn)練樣本是連續(xù)的長度不一的文字序列時,很難將其拆分為一個個獨立的樣本來單獨訓(xùn)練CNN.而循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)對于處理序列數(shù)據(jù)十分有效.RNN可以將任意長度的序列數(shù)據(jù)轉(zhuǎn)換為數(shù)值向量.幾種典型的RNN結(jié)構(gòu)包括長短期記憶網(wǎng)絡(luò)(Long Short-Term Memory,LSTM)[35]、門控循環(huán)神經(jīng)網(wǎng)絡(luò)(Gated Recurrent Unit,GRU)[36]以及變體.LSTM已經(jīng)被廣泛用于語音識別、語言建模、情感分析及文本預(yù)測等任務(wù),其使用門控機(jī)制控制記憶過程,可以極大程度緩解傳統(tǒng)RNN在訓(xùn)練過程中存在的梯度消失和梯度爆炸問題,可以學(xué)習(xí)詞語、句子或段落之間的長距離依賴關(guān)系.LSTM具有龐大的參數(shù)矩陣,計算代價較高.2014年Cho等人提出的GRU,效果與LSTM相當(dāng),但參數(shù)更少,更易于訓(xùn)練.

Bueno等人[37]提出了一種語言學(xué)特征與注意力機(jī)制相結(jié)合的循環(huán)神經(jīng)網(wǎng)絡(luò)模型用于幽默識別,設(shè)計了語音聲調(diào)韻律特征、語言內(nèi)容和結(jié)構(gòu)特征、情感特征,將融合這些特征的詞嵌入輸入循環(huán)神經(jīng)網(wǎng)絡(luò).實驗結(jié)果表明,語言學(xué)特征與深層分布式語義表示相結(jié)合能進(jìn)一步提高幽默文本識別的效果,但是該模型無法有效降低幽默程度預(yù)測回歸任務(wù)的均方根誤差RMSE.可能的原因之一是這些人工設(shè)計的語言學(xué)特征對于文本的有趣性質(zhì)失效,得到的語義向量表示與實際的有趣語義差異較大.Bertero和Fung[38]綜合了CNN和LSTM對日常情境中的幽默識別問題進(jìn)行研究,目標(biāo)是在一個自發(fā)的對話情景中預(yù)測何時會引發(fā)觀眾的笑聲.采用的語料庫來自于情景喜劇“生活大爆炸”(英文名:The Big Bang Theory),將劇本分為多個語篇,每個語篇包含多段對話.使用CNN為對話進(jìn)行編碼,編碼特征包括獨熱編碼和word2vec特征等,使用LSTM編碼對話的上下文序列信息,并結(jié)合語言學(xué)統(tǒng)計特征,例如情感、詞性特征等,用于幽默笑聲的最終預(yù)測.實驗結(jié)果表明,與條件隨機(jī)場基線相比,效果得到大幅度提升.該研究設(shè)計的幽默特征比較詳細(xì),涉及了結(jié)構(gòu)、詞、情感、笑點位置等多個方面.

Garain[39]構(gòu)建了一種基于雙向LSTM(BiLSTM)的網(wǎng)絡(luò)結(jié)構(gòu)用于HAHA比賽中的幽默分類和幽默評級任務(wù).數(shù)據(jù)樣本來源于比賽發(fā)布的推文數(shù)據(jù)集.經(jīng)過初步數(shù)據(jù)清洗,對其進(jìn)行手工特征設(shè)計,例如情感詞的數(shù)量和特殊標(biāo)點符號的數(shù)量,與經(jīng)過獨熱編碼的特征向量結(jié)合,共同輸入到BiLSTM網(wǎng)絡(luò).同時,為了解決訓(xùn)練數(shù)據(jù)的標(biāo)簽類別傾斜帶來的高準(zhǔn)確率問題,設(shè)計訓(xùn)練停止條件并將類標(biāo)簽權(quán)重引入訓(xùn)練過程中.該研究的實驗結(jié)果表明,BiLSTM可以很好地學(xué)習(xí)上下文幽默信息,但F1值不高.可能的原因一是訓(xùn)練數(shù)據(jù)規(guī)模不大,而網(wǎng)絡(luò)參數(shù)規(guī)模較大,二是特征設(shè)計與學(xué)習(xí)不充分.未來可在此基礎(chǔ)上引入領(lǐng)域知識.Sane等人[40]為了解決英語-印地語雙語混合推文上的幽默分類問題,提出了將CNN、BiLSTM、BiLSTM結(jié)合注意力機(jī)制的深度學(xué)習(xí)模型學(xué)習(xí)雙語的幽默語義表達(dá),其中BiLSTM結(jié)合注意力機(jī)制模型取得了最好的效果,準(zhǔn)確度達(dá)到73.6%.他們提出的深度學(xué)習(xí)模型結(jié)構(gòu)簡單,僅運用了簡單粗粒度的注意力機(jī)制,未來使用更復(fù)雜精細(xì)的注意力機(jī)制預(yù)計可能會進(jìn)一步提升效果.

Fan等人[41]構(gòu)建了詞對(word pair)間內(nèi)部注意力網(wǎng)絡(luò)和句子間外部注意力的BiLSTM網(wǎng)絡(luò),分別計算可能導(dǎo)致幽默的單句的詞語對最大語義沖突和句間詞語多重含義的貢獻(xiàn)度.在PoTD和16000OL上的實驗結(jié)果表明,結(jié)合內(nèi)部注意和外部注意的神經(jīng)網(wǎng)絡(luò)可以較好地表達(dá)詞間的復(fù)雜關(guān)系以識別幽默.然而,實驗數(shù)據(jù)的幽默類型相對單一,并且能否很好識別較長文本中的幽默還未可知.

未來可在識別更長文本中的幽默或識別更多類型的幽默方向開展工作.Li[42]等人為研究俚語和表情符號對中文細(xì)粒度情感分析效果的影響,構(gòu)建了包含576個中文常見的俚語詞典和包含109個微博表情符號的詞典,并將這兩種詞典應(yīng)用于基于注意力機(jī)制的BiLSTM神經(jīng)網(wǎng)絡(luò).實驗結(jié)果顯示,俚語和表情符號作為幽默情感表達(dá)中的重要元素,可以很大程度上提高中文情感預(yù)測的表現(xiàn).該研究的不足在于其俚語詞典和表情符號詞典是基于特定社交媒體和數(shù)據(jù)構(gòu)建的,領(lǐng)域遷移和泛化能力相對較差,且隨著社交網(wǎng)絡(luò)的不斷發(fā)展,網(wǎng)絡(luò)新詞和新的表情符號也會不斷涌現(xiàn),詞典的更新維護(hù)較困難.Ren等人[43]設(shè)計了一種幽默識別與雙關(guān)語檢測進(jìn)行聯(lián)合學(xué)習(xí)的多任務(wù)學(xué)習(xí)框架,使用Bi-LSTM編碼句子表示,使用注意力機(jī)制獲得詞語的不同權(quán)重,共享幽默和雙關(guān)語的共同特征,與單個任務(wù)的私有特征進(jìn)行融合,實驗結(jié)果驗證了多任務(wù)學(xué)習(xí)和注意力機(jī)制在幽默識別和雙關(guān)語識別任務(wù)上的有效性.

由于幽默常出現(xiàn)于人們面對面的社交活動中,伴隨手勢、聲音韻律的語言通常會使幽默表達(dá)更加豐富.因此,文本結(jié)合聽覺、視覺信息進(jìn)行幽默識別近期受到了更多的關(guān)注.Hasan等人[17]在其構(gòu)建的多模態(tài)幽默數(shù)據(jù)集UR_FUNNY上進(jìn)行笑點檢測,即檢測給定文本是否會在笑點觸發(fā)后立即引起笑聲.他們分別對不同模態(tài)數(shù)據(jù)(文本、聲音、畫面)進(jìn)行特征提取,然后在記憶融合網(wǎng)絡(luò)結(jié)構(gòu)基礎(chǔ)上,提出了一種 上下文記憶融合網(wǎng)絡(luò)(C-MFN模型),提取上下文多模態(tài)幽默信息.實驗結(jié)果表明,C-MFN在UR-FUNNY上的準(zhǔn)確率達(dá)到65.23%,而人類在UR-FUNNY上的準(zhǔn)確率為82.5%,這說明多模態(tài)數(shù)據(jù)的幽默識別還有較大的進(jìn)步空間.同時說明笑點和語境對于幽默識別非常重要.

卷積神經(jīng)網(wǎng)絡(luò)需要開發(fā)者確定精確的模型結(jié)構(gòu)并且超參數(shù)調(diào)節(jié)過程十分耗時,而循環(huán)神經(jīng)網(wǎng)絡(luò)能夠便捷地實現(xiàn)多層網(wǎng)絡(luò)堆疊,例如BiLSTM或多層GRU等,且超參數(shù)數(shù)量不多.對于雙關(guān)語、單句笑話等短文本類型的幽默識別,卷積神經(jīng)網(wǎng)絡(luò)比較適合獲取短文本的幽默語義表示,而循環(huán)神經(jīng)網(wǎng)絡(luò)適用于對話型幽默文本識別任務(wù)中.因此,可探究CNN-RNN網(wǎng)絡(luò)的組合方法進(jìn)行幽默語義挖掘.例如,楊勇等人[44]詳細(xì)設(shè)計了語音、字形以及語義等語言學(xué)特征,并與層次注意力機(jī)制相結(jié)合進(jìn)行幽默識別,使用CNN提取語音特征、BiGRU提取字形和語義特征,采取層次注意力機(jī)制整合這3種特征,以獲得不同特征對幽默表達(dá)的貢獻(xiàn)度.Ren等人[45]將幽默語言學(xué)理論與深度學(xué)習(xí)方法相結(jié)合,使用CNN、Bi-LSTM結(jié)合注意力機(jī)制提取語音、詞匯語義、語法及上下文語義特征,同時使用注意力機(jī)制獲得不同特征的重要程度,該方法在基于幽默本質(zhì)的前提下提取抽象深層特征,結(jié)果表明該方法能有效識別雙關(guān)語、單語笑話等類型中的幽默.

4.2.3 基于預(yù)訓(xùn)練詞嵌入的方法

目前神經(jīng)網(wǎng)絡(luò)在訓(xùn)練時,一般基于反向傳播(Back Propagetion,BP)[46]算法.訓(xùn)練時先對網(wǎng)絡(luò)參數(shù)進(jìn)行隨機(jī)初始化,再利用梯度下降等優(yōu)化算法不斷優(yōu)化模型參數(shù).而預(yù)訓(xùn)練的思想是,模型參數(shù)不再是隨機(jī)初始化的,而是先進(jìn)行預(yù)訓(xùn)練,得到一套模型參數(shù),然后用這套參數(shù)對模型進(jìn)行初始化,再基于特定任務(wù)和數(shù)據(jù)繼續(xù)進(jìn)行模型訓(xùn)練.

BERT[47]是一種基于Transformer[48]的雙向編碼器,使用掩碼語言模型(Masked Language Model,MLM)和下一個句子預(yù)測(Next Sentence Prediction,NSP)雙任務(wù)訓(xùn)練模型,充分描述字符級、詞級、句子級以及句間關(guān)系特征.相比于循環(huán)神經(jīng)網(wǎng)絡(luò),可大幅度降低訓(xùn)練時間.RoBERTa[49]在BERT的基礎(chǔ)上進(jìn)一步訓(xùn)練,取消了NSP預(yù)訓(xùn)練任務(wù),改進(jìn)了訓(xùn)練方法,使用更大規(guī)模的數(shù)據(jù)進(jìn)行訓(xùn)練,進(jìn)一步增強(qiáng)了模型的泛化能力,其GLUE基準(zhǔn)測試結(jié)果優(yōu)于BERT.ALBERT[50]為了減少BERT及其相關(guān)模型的訓(xùn)練時間,使用剪枝、蒸餾等技術(shù)減小網(wǎng)絡(luò)規(guī)模,但是模型的性能有所下降.為了緩解上述問題,Sanh 等人提出了DistilBERT[51]模型,使用知識蒸餾方法壓縮原生BERT模型,在保留BERT的95%性能基礎(chǔ)上,將模型參數(shù)規(guī)模減少原生BERT的一半.而He等人[52]提出的DeBERTa模型為解決BERT模型預(yù)訓(xùn)練和精調(diào)的不匹配問題,引入一種增強(qiáng)型掩碼解碼器,同時進(jìn)一步增加了序列的相對位置信息,使用解耦注意力機(jī)制.

目前,幽默識別研究的關(guān)注焦點轉(zhuǎn)移至基于預(yù)訓(xùn)練模型的方法上.Weller等人[53]從Reddit網(wǎng)站收集了一個幽默數(shù)據(jù)集,首次提出基于Transformer的幽默識別方法.在Short Jokes、PoTD和其從Reddit爬取的數(shù)據(jù)集上的實驗結(jié)果表明,相較于單獨使用CNN和RNN等方法的效果有了大幅度提高.該研究一是針對于大部分Reddit用戶認(rèn)可的幽默類型,這表明未來可以從特定人群中學(xué)習(xí)幽默表達(dá);二是將笑話的笑點與鋪墊分開,重點關(guān)注笑點在幽默表達(dá)中的作用.Mahurkar和Patil[54]使用BERT及其衍生模型RoBERTa、ALBERT及DistilBERT對SemEval-2020 Task 7新聞短文本幽默評分問題進(jìn)行研究.在Humicroedit和FunLines數(shù)據(jù)集上的實驗結(jié)果表明,BERT及其衍生模型經(jīng)過微調(diào)便可以很好適應(yīng)幽默評分任務(wù),可以將注意力集中在新聞標(biāo)題中經(jīng)過編輯的部分.使用跨數(shù)據(jù)集交叉驗證的實驗結(jié)果表明BERT在不同數(shù)據(jù)集之間的泛化能力較強(qiáng),這進(jìn)一步說明注意力機(jī)制在幽默檢測中具有良好的應(yīng)用前景.為了從語言學(xué)角度更好理解幽默,Wang等人[55]認(rèn)為“鋪墊”和“妙語”是笑話的核心.一般認(rèn)為,笑話的“鋪墊”和“妙語”之間存在語義沖突,但是由于笑話一般是短文本,理解幽默需要豐富的先驗知識,因此將預(yù)訓(xùn)練模型應(yīng)用于幽默檢測是合適的.他們提出一種用于幽默檢測任務(wù)的數(shù)據(jù)增強(qiáng)方法,同時提出一種衡量句子對之間差異性的方法,最后將幽默類別預(yù)測與句子間差異預(yù)測結(jié)合,共同用于幽默檢測.該模型建立在Multilingual_BERT的基礎(chǔ)上,因此可以檢測漢語、俄語、西班牙語等中的幽默.實驗結(jié)果表明,在3種語言上,F(xiàn)1值與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)模型相比提高了4%-6%,這說明了該方法檢測多語言幽默的有效性.

Guo等人[56]研究了文本幽默性和用戶偏好之間的相關(guān)性,不僅提出了一種使用用戶偏好因子為SemEval-2020 Task 7數(shù)據(jù)集生成隱式幽默標(biāo)簽的方法,同時提出了一種基于BERT的聯(lián)邦學(xué)習(xí)模型,能夠同時考慮文本幽默分?jǐn)?shù)和幽默標(biāo)簽來預(yù)測不同用戶的個性化幽默表達(dá).Ballapuram[57]在孿生Transformer基礎(chǔ)上構(gòu)建了雙輸入孿生BERT網(wǎng)絡(luò),利用語言模型進(jìn)行微調(diào),結(jié)合局部注意力和全局注意力機(jī)制完成了SemEval-2020 Task 7發(fā)布的兩個幽默識別子任務(wù).該研究的實驗結(jié)果表明關(guān)鍵詞結(jié)合其上下文的語義向量能很好地識別語境中的幽默.Ismailov[58]提出一種基于模型集成的方法,將經(jīng)過微調(diào)的多語言BERT模型與基于TF-IDF的樸素貝葉斯模型集成用于幽默二元分類任務(wù),將BERT模型與LightGBM(Light Gradient Boosting Machine)模型集成用于幽默評級任務(wù).同時,為了解決過擬合問題,采用不同網(wǎng)絡(luò)層不同學(xué)習(xí)率的策略,使用無監(jiān)督學(xué)習(xí)對BERT模型進(jìn)行微調(diào),分類任務(wù)F1的值為0.821,評級任務(wù)的F1值為0.736.Farzin等人[59]提出一種基于預(yù)訓(xùn)練模型ULMFiT[60]的微調(diào)方法,用于HAHA-2019比賽的幽默識別任務(wù).為了避免預(yù)訓(xùn)練網(wǎng)絡(luò)參數(shù)規(guī)模過大導(dǎo)致過擬合現(xiàn)象,收集了475,143條推文完成語言模型的預(yù)訓(xùn)練,結(jié)合標(biāo)簽平滑技術(shù)逐步解凍預(yù)訓(xùn)練網(wǎng)絡(luò),使用交叉驗證和隨機(jī)種子初始化,在微調(diào)過程中選擇最佳模型,最佳模型F1的值為80.99%.Xie等人[61]使用SemEval-2021 Task 7數(shù)據(jù)集微調(diào)DeBERTa模型,在幽默二元分類、幽默程度評分等任務(wù)中取得了良好性能.Hasan等人[62]為了研究多模態(tài)數(shù)據(jù)中的幽默,使用預(yù)訓(xùn)練模型ALBERT獲得文本表示,使用Transformer編碼器獲得聲音、圖像的特征表示,同時引入基于幽默理論的特征作為知識源嵌入,設(shè)計多模態(tài)特征融合層獲得模態(tài)的統(tǒng)一表示,在數(shù)據(jù)集UR-FUNNY上的實驗結(jié)果表明該方法能大幅度提高多模態(tài)幽默識別的表現(xiàn).

目前,預(yù)訓(xùn)練語言模型的通用范式是:1)基于大規(guī)模文本,預(yù)訓(xùn)練得出通用語言表示;2)通過微調(diào),將學(xué)習(xí)到的通用知識遷移到不同的下游任務(wù)中.在微調(diào)過程中,每種預(yù)訓(xùn)練模型在不同任務(wù)中的用法不同.預(yù)訓(xùn)練模型結(jié)構(gòu)和訓(xùn)練方法不斷創(chuàng)新,從單語言到多語言,從單一模態(tài)到多模態(tài),為自然語言處理技術(shù)進(jìn)入“工業(yè)化”時代奠定了堅實基礎(chǔ).深度神經(jīng)網(wǎng)絡(luò)由多個隱藏層組成,具有更高的復(fù)雜度,并且可以在非結(jié)構(gòu)化數(shù)據(jù)上進(jìn)行訓(xùn)練,直接從輸入中學(xué)習(xí)特征表示,無需太多的人工干預(yù)和先驗知識.但是,深度學(xué)習(xí)技術(shù)是一種數(shù)據(jù)驅(qū)動方法,通常需要大量數(shù)據(jù)才能實現(xiàn)高性能.目前在幽默識別領(lǐng)域,大規(guī)模高質(zhì)量的幽默語料庫仍然是一個亟待解決的問題.盡管基于注意力機(jī)制可以為一些單詞間的語義帶來可解釋性,但與淺層模型進(jìn)行比較并不足以解釋其原因和工作方式,它目前實質(zhì)上仍然是一種“黑箱”模型.

自然語言處理領(lǐng)域的一些國內(nèi)和國際比賽推動著幽默計算領(lǐng)域的發(fā)展.新的幽默計算任務(wù)、幽默計算語料庫以及模型方法被陸續(xù)發(fā)布.本節(jié)介紹目前關(guān)于幽默識別任務(wù)的一些主要比賽.SemEval-2017 Task 6(#HashtagWars)[63]重點是對一個電視節(jié)目的推文的趣味性進(jìn)行排名,#HashtagWars數(shù)據(jù)集自電視節(jié)目“@midnight”,共有12,000條推文,每條推文被標(biāo)注了滿分為3分的幽默分?jǐn)?shù).SemEval-2017 Task 7[64]關(guān)注雙關(guān)語的自動檢測、定位和解釋,SemEval-2018 Task 3[65]對推文中的諷刺現(xiàn)象進(jìn)行檢測.SemEval-2020 Task 7[66]的目標(biāo)是確定機(jī)器如何理解文本經(jīng)過短編輯后產(chǎn)生的幽默感.SemEval-2021 Task 7主要預(yù)測文本是否幽默以及文本的幽默程度,同時預(yù)測文本的冒犯程度(0-5).數(shù)據(jù)標(biāo)注來自18-70歲不同的年齡段人群,該任務(wù)是第一個將幽默和攻擊性結(jié)合的任務(wù).HAHA大賽檢測并評價西班牙語中的幽默[67].中文幽默計算比賽主要來自中國計算語言學(xué)大會(CCL)舉辦的“小牛杯”中文幽默計算比賽(見本文3.2.3節(jié)).

4.3 不同幽默識別方法對比分析

表4給出了一些重要幽默識別方法的性能比較.可以看出,基于預(yù)訓(xùn)練模型的方法在幽默二元分類任務(wù)上取得了較好效果,但對于幽默程度評級任務(wù)、笑點檢測任務(wù)等還有很大的提升空間.分析這些主流方法可以預(yù)測基于預(yù)訓(xùn)練模型的方法結(jié)合設(shè)計合理的幽默特征可以進(jìn)一步提高任務(wù)性能.表5從核心思想、適用情景、優(yōu)勢及局限性等維度對不同類別幽默識別方法進(jìn)行了對比分析.

表4 幽默識別相關(guān)研究方法對比Table 4 Comparison of some researche of humor recognition

表5 不同類別幽默識別方法對比分析Table 5 Comparison of different types of humor recognition methods

5 結(jié) 論

幽默是人類交流中自然而又重要的組成部分.從認(rèn)知學(xué)角度來看,幽默是以隱喻來代替字面含義以強(qiáng)調(diào)思想和感情的載體.但從計算語言學(xué)角度看,幽默識別具有挑戰(zhàn)性,語言計算模型本質(zhì)上并不具備人類判斷和傳達(dá)幽默的先驗知識.因此,需要探索不同特征、模型、方法來使計算機(jī)識別和生成幽默.未來幽默識別領(lǐng)域要解決的重要問題:1)語料庫的構(gòu)建問題.由于目前幽默識別的研究主要集中在基于數(shù)據(jù)驅(qū)動的深度學(xué)習(xí)方法上,大規(guī)模高質(zhì)量的幽默語料庫的構(gòu)建仍然是一個復(fù)雜昂貴而繁瑣的問題.這不只包括單一模態(tài)語料庫的創(chuàng)建,多模態(tài)語料庫的構(gòu)建將會更有意義;2)如何使計算機(jī)學(xué)習(xí)幽默背后的本質(zhì)原理以及深層語義,例如探索結(jié)合知識庫和知識圖譜的文本學(xué)習(xí)深度網(wǎng)絡(luò)模型;3)多模態(tài)數(shù)據(jù)的幽默識別、多語言幽默識別以及跨主題的幽默識別研究將是未來的研究重點.最后,在幽默識別研究的基礎(chǔ)上繼續(xù)探索幽默生成領(lǐng)域是一個有趣的方向.

猜你喜歡
語料庫笑話語義
基于語料庫翻譯學(xué)的廣告翻譯平行語料庫問題研究
運用語料庫輔助高中英語寫作
幽默笑話
漢語依憑介詞的語義范疇
幽默小笑話
笑話兩則
語料庫與譯者培養(yǎng)探索
笑話六則等
若尔盖县| 将乐县| 阿巴嘎旗| 石楼县| 景宁| 镇坪县| 普定县| 汾西县| 自贡市| 运城市| 万源市| 平顺县| 驻马店市| 印江| 如皋市| 九江市| 双鸭山市| 平度市| 乐平市| 濉溪县| 铅山县| 三门县| 保德县| 宜兰县| 沅陵县| 文化| 嵩明县| 凤阳县| 民丰县| 普兰县| 胶州市| 达孜县| 虎林市| 封丘县| 广汉市| 彭阳县| 宿松县| 繁昌县| 永嘉县| 黄骅市| 札达县|