0
本文作者: 汪思穎 | 2018-07-28 23:35 |
雷鋒網(wǎng) AI 科技評(píng)論按:7 月 28 日,由中國(guó)中文信息學(xué)會(huì)和中國(guó)計(jì)算機(jī)學(xué)會(huì)聯(lián)合舉辦的第三屆語(yǔ)言與智能高峰論壇于北京語(yǔ)言大學(xué)舉辦,Naturali 奇點(diǎn)機(jī)智團(tuán)隊(duì)作為 2018 機(jī)器閱讀理解技術(shù)競(jìng)賽冠軍團(tuán)隊(duì),受邀參加本次活動(dòng)的「機(jī)器閱讀理解評(píng)測(cè)論壇及頒獎(jiǎng)儀式」,Naturali 聯(lián)合創(chuàng)始人兼 CTO、國(guó)際計(jì)算語(yǔ)言學(xué)協(xié)會(huì)會(huì)士(ACL Fellow)林德康作為代表進(jìn)行了 2018 閱讀理解技術(shù)競(jìng)賽系統(tǒng)報(bào)告。
機(jī)器閱讀理解任務(wù)一直是自然語(yǔ)言處理領(lǐng)域的重要問(wèn)題。2018 機(jī)器閱讀理解技術(shù)競(jìng)賽提供了一個(gè)基于真實(shí)場(chǎng)景的大規(guī)模中文閱讀理解百度數(shù)據(jù)集,共包含來(lái)自百度搜索的 30 萬(wàn)個(gè)來(lái)自真實(shí)用戶(hù)的問(wèn)題,對(duì)中文閱讀理解系統(tǒng)提出了很大的挑戰(zhàn)。Naturali 的系統(tǒng)在正式測(cè)試集上 ROUGE-L 和 BLEU-4 分別達(dá)到了 63.38 和 59.23,在 800 多支報(bào)名隊(duì)伍、105 支提交最終結(jié)果的隊(duì)伍中取得了第一名。
以下為 Naturali 奇點(diǎn)機(jī)智聯(lián)合創(chuàng)始人兼 CTO 林德康在現(xiàn)場(chǎng)分享的競(jìng)賽報(bào)告:
一、DuReader 閱讀理解數(shù)據(jù)集的特點(diǎn)
現(xiàn)在有很多閱讀理解問(wèn)答數(shù)據(jù)集,百度數(shù)據(jù)集算是中文閱讀理解數(shù)據(jù)集里最好的。百度數(shù)據(jù)集相比 Stanford 經(jīng)典數(shù)據(jù)集 SQuAD 更真實(shí)、更具挑戰(zhàn)性。SQuAD 是從維基百科的信息來(lái)源集成問(wèn)題,答案必定出現(xiàn)在文本里面,句法比較標(biāo)準(zhǔn)。而此次比賽的百度數(shù)據(jù)集都是用戶(hù)的真實(shí)提問(wèn),不僅包括事實(shí)性的問(wèn)題,還包括意見(jiàn)性的問(wèn)題,部分問(wèn)題在百度搜索里沒(méi)有標(biāo)準(zhǔn)答案,并且問(wèn)題的表達(dá)方式不一定很直接。
比如說(shuō)意見(jiàn)性問(wèn)題「iPhone X 好不好用」,或現(xiàn)象描述「響一聲就說(shuō)正在通話(huà)中」,這類(lèi)問(wèn)題回答起來(lái)難度更高。
二、競(jìng)賽題目實(shí)例
問(wèn)題:昆特牌什么時(shí)候公測(cè)
人工標(biāo)注答案:[‘時(shí)間為 6 月 6 日,暫定為期兩周,即 6 月 6 日-6 月 19 日。']
Naturali 答案: [‘巫師之昆特牌國(guó)服山丘試煉開(kāi)啟時(shí)間為 6 月 6 日,暫定為期兩周,即 6 月 6 日-6 月 19 日?!痌
參考文檔
['文章 閱讀','巫師之昆特牌山丘試煉?cǎi)R上開(kāi)啟了,帥編來(lái)告訴大家開(kāi)啟時(shí)間。','巫師之昆特牌國(guó)服山丘試煉開(kāi)啟時(shí)間為 6 月 6 日,暫定為期兩周,即 6 月 6 日-6 月 19 日。','參與過(guò)“青草試煉”的玩家將直接獲得本次測(cè)試的資格,無(wú)需激活碼。','國(guó)服公測(cè)時(shí)間暫未公布。','聲明:本文由入駐搜狐公眾平臺(tái)的作者撰寫(xiě),除搜狐官方賬號(hào)外,觀(guān)點(diǎn)僅代表作者本人,不代表搜狐立場(chǎng)。','一款專(zhuān)為游戲動(dòng)漫愛(ài)好者打造的 app 全面的資訊福利,熱門(mén)資訊圖鑒攻略應(yīng)有盡有。國(guó)內(nèi)外熱門(mén)手游推薦,精彩不容錯(cuò)過(guò)。','itmo 愛(ài)萌游戲-二次元游戲第一門(mén)戶(hù) itmo 愛(ài)萌游戲是國(guó)內(nèi)第一二次元游戲門(mén)戶(hù)網(wǎng)站,致力于打造全新型的手機(jī)游戲網(wǎng)站。']
['南方公園游戲在 U2 上放出了新的宣傳片昆特牌公測(cè)日期發(fā)布南方公園游戲這都從去年 4 月延到今年 10 月不過(guò)動(dòng)畫(huà) 21 季今年 9 月開(kāi)始播剛好可以銜接到游戲發(fā)售日期','反正昆特牌打了一下午電腦一盤(pán)沒(méi)贏我就放棄了','我巫師 3 二周目開(kāi)始玩昆特牌,畢竟一周目沒(méi)錢(qián),二周目也不繼承?,F(xiàn)在走到哪打到哪。','下周就公測(cè)?好突然,這么快','昆特盤(pán)看測(cè)試錄像,氪金也是厲害啊。。。這南方公園竟然跳票到這個(gè)時(shí)候。。','昆特牌國(guó)際服已經(jīng)激活就是看不懂挺期待南方公園的','期待 spOktoberfest! 另外希望昆特正式服早日上線(xiàn)','南方公園一聽(tīng)就是垃圾游戲,大家千萬(wàn)別買(mǎi)','應(yīng)用吧活動(dòng),去領(lǐng)取','活動(dòng)截止:2100-01-01','要不是川普贏了,也不至于這么跳票','昆特牌還沒(méi)公測(cè)啊,我都以為大家已經(jīng)玩了好久了','打牌才是正事 打牌打到十一月玩高清二戰(zhàn) 美滋滋’]
解析說(shuō)明:參考文檔是從搜索引擎得到的排名靠前結(jié)果的網(wǎng)頁(yè)全文,一個(gè)問(wèn)題會(huì)對(duì)應(yīng)多篇長(zhǎng)文檔;標(biāo)注答案是人工根據(jù)文檔總結(jié)撰寫(xiě)而成,一個(gè)問(wèn)題可能對(duì)應(yīng)多個(gè)答案,特別是對(duì)意見(jiàn)性的問(wèn)題來(lái)說(shuō),有多個(gè)答案是很常見(jiàn)的。從以上案例可見(jiàn),Naturali 閱讀理解系統(tǒng)給出的答案比人工答案甚至還要全面。
三、數(shù)據(jù)預(yù)處理
百度提供五個(gè)篇文章作為參考文檔。由于文章沒(méi)有長(zhǎng)度限制,我們根據(jù)關(guān)鍵詞密度,句子位置等信息將超過(guò) 500 詞的文章壓縮到 500 詞以?xún)?nèi)。
以下是我們數(shù)據(jù)預(yù)處理的具體方法:
如果標(biāo)題和各段內(nèi)容中間插入特殊分割符號(hào)連接在一起,沒(méi)有超過(guò)預(yù)設(shè)最大長(zhǎng)度,則將得到結(jié)果作為預(yù)處理的結(jié)果;
否則,我們計(jì)算各段落和問(wèn)題的 BLEU-4 分?jǐn)?shù),以衡量段落和問(wèn)題的相關(guān)性;
在分?jǐn)?shù)排名前 k 的段落中,選擇最早出現(xiàn)的段落;
選取標(biāo)題,這個(gè)段落以及下一個(gè)段落;
對(duì)于第 3 到第 10 個(gè)段落,選取每個(gè)段落的第一句話(huà);
將所有選取的內(nèi)容以特殊分隔符連接在一起,截取最前面不超過(guò)預(yù)設(shè)最大長(zhǎng)度的內(nèi)容,將得到的結(jié)果作為預(yù)處理的結(jié)果。
四、模型整體結(jié)構(gòu)
我們使用的模型整體結(jié)構(gòu),是經(jīng)典的端對(duì)端閱讀理解模型結(jié)構(gòu),分為四層:
第一層:特征表示層(Representation)
第二層:編碼層(Encoding)
第三層:匹配層(Matching)
第四層:答案片段抽取層(Answer Span Extraction)
下面我們對(duì)每一層進(jìn)行簡(jiǎn)單介紹。
第一層:特征表示層
首先,給定一個(gè)問(wèn)題的詞序列和篇章的詞序列,我們要對(duì)它進(jìn)行特征抽取,將它變成一個(gè)特征向量序列。
我們是在搜狗互聯(lián)網(wǎng)語(yǔ)料庫(kù)上進(jìn)行的預(yù)訓(xùn)練。這個(gè)數(shù)據(jù)集比百度數(shù)據(jù)集還要大好幾個(gè)量級(jí),所有中文網(wǎng)頁(yè)都在里,每一詞用什么向量表達(dá)就是在這里面訓(xùn)練的。
第二層:編碼層
得到問(wèn)題和篇章的向量特征表示序列后,我們分別進(jìn)行編碼。
第三層:匹配層
匹配層是模型比較核心的部分,我們利用注意力機(jī)制融合問(wèn)題和篇章信息。
經(jīng)過(guò)了幾種模型的測(cè)試,最后我們的系統(tǒng)里用到了 Match-LSTM、BiDAF、DCA 這三種集成模型,相比其他模型,這幾種模型效果接近,訓(xùn)練速度較快。在單一模型中我們運(yùn)用 BiDAF,在集成模型中則會(huì)運(yùn)用到不同的匹配層得到的結(jié)果進(jìn)行集成。
第四層:答案片段抽取層
最終,我們利用指針網(wǎng)絡(luò)進(jìn)行答案抽取。
根據(jù)百度數(shù)據(jù)集特點(diǎn),回答里面可能會(huì)包含多個(gè)答案,所以我們采用的是第二種利用多個(gè)參考答案的公式進(jìn)行計(jì)算,即在多個(gè)答案上損失的平均數(shù)作為損失函數(shù)。
● 常用損失函數(shù)
● 利用多個(gè)參考答案
五、最小風(fēng)險(xiǎn)訓(xùn)練
通常的 RC 系統(tǒng)是以提高標(biāo)準(zhǔn)答案概率作為訓(xùn)練的目標(biāo),但實(shí)際評(píng)測(cè)的標(biāo)準(zhǔn)是 ROUGE。最小風(fēng)險(xiǎn)訓(xùn)練是拿評(píng)測(cè)的標(biāo)準(zhǔn)作為訓(xùn)練的目標(biāo),需要對(duì)每個(gè)片段都計(jì)算損失函數(shù),所以?xún)?yōu)化的時(shí)間比較長(zhǎng)。我們的系統(tǒng)首先用最大似然估計(jì)訓(xùn)練得到初始模型,然后直接優(yōu)化 ROUGE 函數(shù),讓我們的 ROUGE 值達(dá)到最高。這里 delta(y_i, y_i*) 是候選答案 y_i 與標(biāo)準(zhǔn)答案 y_i* 在 ROUGE 函數(shù)上的差。
● 最小風(fēng)險(xiǎn)訓(xùn)練
● 以最大似然估計(jì)訓(xùn)練得到的模型初始化繼續(xù)訓(xùn)練
六、單一模型實(shí)驗(yàn)結(jié)果
我們的 ROUGE 分?jǐn)?shù)最終能夠遠(yuǎn)遠(yuǎn)超出基線(xiàn)系統(tǒng)分?jǐn)?shù),是通過(guò)篇章預(yù)處理、預(yù)訓(xùn)練詞向量、其他特征、多個(gè)答案、聯(lián)合訓(xùn)練、最小風(fēng)險(xiǎn)訓(xùn)練等方法綜合累計(jì)得來(lái)的。
七、集成模型
我們提交的數(shù)據(jù)是通過(guò)集成模型計(jì)算出來(lái)的,最終根據(jù)不同種模型(BiDAF, MatchLSTM, DCA)和不同參數(shù)(Dropout:0.1, 0.15, 0.2,聯(lián)合學(xué)習(xí)比率:4.0, 5.0)做成了一個(gè)集成模型,比單一模型的 ROUGE 分?jǐn)?shù)又高出了 1.5 個(gè)點(diǎn)。
八、總結(jié)及展望
我們本次競(jìng)賽用的是神經(jīng)網(wǎng)絡(luò)端到端的系統(tǒng),而我曾經(jīng)在谷歌做搜索問(wèn)答用的是模塊化的系統(tǒng)。模塊化系統(tǒng)會(huì)把問(wèn)題分成幾部分,首先識(shí)別答案類(lèi)型,再根據(jù)類(lèi)型和問(wèn)題、文本的匹配度去計(jì)算分?jǐn)?shù)。而神經(jīng)網(wǎng)絡(luò)系統(tǒng)把所有的步驟放到一個(gè)網(wǎng)絡(luò)里面,雖然沒(méi)有專(zhuān)門(mén)為不同的答案類(lèi)型建模,但是訓(xùn)練完成后仍然能夠覆蓋到不同問(wèn)題類(lèi)型,比如問(wèn)「什么時(shí)候......」,找的答案里就有日期。
相比模塊化系統(tǒng),神經(jīng)網(wǎng)絡(luò)端到端的系統(tǒng)代碼簡(jiǎn)單很多,并且每次改動(dòng)、優(yōu)化都是全局的優(yōu)化。然而模塊化系統(tǒng)的優(yōu)化,是優(yōu)化某一個(gè)模塊,模塊之間已經(jīng)適應(yīng)了各自的缺陷,其中一個(gè)模塊變好,其他模塊不一定隨之改善,使整個(gè)系統(tǒng)的優(yōu)化會(huì)變得比較困難。
目前有很多問(wèn)答系統(tǒng)已經(jīng)上線(xiàn)了,但是背后的實(shí)現(xiàn)還是模塊化的機(jī)制。很有可能神經(jīng)網(wǎng)絡(luò)系統(tǒng)現(xiàn)在的表現(xiàn)暫時(shí)還不及模塊化系統(tǒng),但到現(xiàn)階段它的準(zhǔn)確度已經(jīng)可以有一些應(yīng)用。比如我們做語(yǔ)音助手的時(shí)候,經(jīng)常將搜索作為一個(gè)「兜底」的功能。比如在智能客服應(yīng)用中,拿客服文檔做關(guān)鍵詞匹配,但用自動(dòng)閱讀理解就可以把閱讀理解系統(tǒng)當(dāng)做一個(gè)「兜底」,找到文檔以后便可以把更精簡(jiǎn)、準(zhǔn)確的答案找出來(lái)。
最后,如果有對(duì)我們的團(tuán)隊(duì)感興趣的同學(xué),歡迎投簡(jiǎn)歷到 jobs@naturali.io,期待你與我們一起,在 AI 語(yǔ)音交互這條路上共同前行。
謝謝大家。
附 Naturali 奇點(diǎn)機(jī)智簡(jiǎn)介:
Naturali 創(chuàng)立于 2014 年 11 月,目前已經(jīng)將業(yè)務(wù)聚焦在兩個(gè)方面:一個(gè)是 NI 開(kāi)放平臺(tái)——「零編碼、五分鐘 ,創(chuàng)造屬于你的語(yǔ)音技能」,為各類(lèi)硬件、APP 賦予 AI 語(yǔ)音交互能力。另一個(gè)是一款帶有學(xué)習(xí)功能的第三方語(yǔ)音助手 APP「布點(diǎn)語(yǔ)音」,已經(jīng)在各大安卓商店上線(xiàn),目前已經(jīng)可以覆蓋 300+APP,支持 12000+ 語(yǔ)音技能。
雷鋒網(wǎng)雷鋒網(wǎng)雷鋒網(wǎng)
雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。