|
編者按:在《如何讓人工智能學(xué)會用數(shù)據(jù)說話》一文中,我們曾經(jīng)為大家介紹過結(jié)構(gòu)化數(shù)據(jù)到文本生成的技術(shù)方法、商業(yè)應(yīng)用以及相關(guān)數(shù)據(jù)集等方面內(nèi)容。今天,我們邀請微軟亞洲研究院知識計算組的研究員解讀該領(lǐng)域中有關(guān)數(shù)據(jù)到文本生成的近期論文。 數(shù)據(jù)到文本生成任務(wù)以結(jié)構(gòu)化數(shù)據(jù)(例如一個商品的屬性列表或一場比賽的統(tǒng)計數(shù)據(jù))作為輸入,旨在自動生成流暢的、貼近事實的文本以描述輸入數(shù)據(jù)。數(shù)據(jù)到文本生成的主流方法包括基于規(guī)則和模板的方法以及基于神經(jīng)網(wǎng)絡(luò)的方法。 現(xiàn)階段,基于規(guī)則和模板的方法仍然是相關(guān)應(yīng)用中最主流的做法,因為這類方法具備明顯的可解釋性與可控制性,更容易確保所輸出文本內(nèi)容的正確性。然而,這種方法也存在局限性——優(yōu)質(zhì)模板的抽取離不開人工特征工程或者規(guī)則干預(yù);生成的內(nèi)容在多樣性、流暢度以及連貫性方面往往會存在問題。 與之相反,基于神經(jīng)網(wǎng)絡(luò)的模型主要依靠數(shù)據(jù)驅(qū)動,不需要太多人工干預(yù),也很容易產(chǎn)生豐富又流暢的文字描述,但使用者往往無法直接操控內(nèi)容生成,難以確保所輸出的文本內(nèi)容同輸入數(shù)據(jù)中的信息吻合,所以目前在真實場景下目前并不具備足夠的實用價值。由于神經(jīng)網(wǎng)絡(luò)表示學(xué)習近年來的火熱,以及神經(jīng)網(wǎng)絡(luò)文本生成模型存在明顯的不足和改進空間,近期學(xué)術(shù)研究中探索神經(jīng)網(wǎng)絡(luò)生成模型的工作相對更多。 數(shù)據(jù)到文本生成任務(wù)在不同場景設(shè)定下的進展和挑戰(zhàn)不盡相同,近兩年也有很多工作試圖從不同角度開展研究。在本文中,我們將帶大家一起選讀若干近期相關(guān)研究工作。這些工作的研究動機相對明確,直接嘗試應(yīng)對當前方法所面臨的重要挑戰(zhàn),為后續(xù)進一步研究提供了一些可行的方向或角度。 Challenges in Data-to-document Generation 由Sasha Rush領(lǐng)銜的哈佛大學(xué)自然語言處理研究組是近年來研究神經(jīng)網(wǎng)絡(luò)文本生成模型最活躍的團隊之一。該團隊在EMNLP 2017上發(fā)表了題為Challenges in Data-to-document Generation的工作(Wiseman et al., 2017),包含了作者對神經(jīng)網(wǎng)絡(luò)數(shù)據(jù)到文本生成模型的階段性總結(jié)與反思。作者采集了大量NBA籃球比賽統(tǒng)計數(shù)據(jù)以及對應(yīng)的文字戰(zhàn)報,以此發(fā)布了新的數(shù)據(jù)集RotoWire。與《如何讓人工智能學(xué)會用數(shù)據(jù)說話》一文中介紹過的維基百科傳記數(shù)據(jù)集WikiBio以及下文會提及的E2E NLG Challenge評測數(shù)據(jù)集相比,RotoWire中的輸入數(shù)據(jù)更豐富,文本長度更長,通常每篇描述包含5-7句話;并且文字中直接提及或通過不同措辭蘊含的部分信息,需要從具體的數(shù)值、時間等信息推斷得出,無法從輸入的表格數(shù)據(jù)中直接獲取。例如,輸入數(shù)據(jù)中并沒有直接標示比賽的獲勝球隊,只列出了交戰(zhàn)雙方比分,而文字內(nèi)諸如“亞特蘭大老鷹隊以103-95擊敗邁阿密熱隊”中的“擊敗”一詞,需要生成模型能夠準確捕捉“比分更高的球隊勝出”這樣的對應(yīng)關(guān)系,對當前高度依賴連續(xù)向量表示的神經(jīng)網(wǎng)絡(luò)方法而言頗具挑戰(zhàn)。 作者在該數(shù)據(jù)集上進行的實驗表明,常見神經(jīng)網(wǎng)絡(luò)文本生成模型所輸出的文本雖然看似流暢,但往往存在多種邏輯錯誤,比如混淆了不同信息的輸出位置、無中生有(hallucination,即模型在所生成的文本中“自行腦補”了輸入數(shù)據(jù)中并沒有蘊含的信息)等等,詳見圖1。這些問題在進行長文本生成時顯得更為嚴重,導(dǎo)致模型輸出的準確度遠不如基于模板的文本生成系統(tǒng)。 圖1 神經(jīng)網(wǎng)絡(luò)生成模型輸出示例,藍色/紅色部分分別表示同輸入數(shù)據(jù)吻合/不吻合的內(nèi)容(圖片來自Wiseman et al., 2017 ) 論文中也指出,常用的自動化評測指標(如BLEU)并不足以評測文本生成的質(zhì)量。這些指標側(cè)重于評測文本的流暢性,但忽視了文本的語義和邏輯信息。自動指標的局限性其實近年也在自然語言生成領(lǐng)域被反復(fù)提及,有大量工作指出它們同人工評價的統(tǒng)計相關(guān)性其實很低(如Novikova et al., 2017、Chaganty et al., 2018、Reiter, 2018等)。在這種情況下,一方面有針對性地設(shè)計人工評測不可或缺,另一方面也需要其它更合理的自動指標來作輔助。因此,作者也給出了一種抽取式評價(extractive evaluation)方法,從生成的文本中抽取事實并與輸入數(shù)據(jù)進行比對,在一定程度上可以彌補傳統(tǒng)自動化評測指標(如BLEU)的不足。 A Deep Ensemble Model with Slot Alignment for Sequence-to-Sequence Natural Language Generation 自然語言生成領(lǐng)域近年最著名的公開評測當屬E2E NLG Challenge。該評測于2017年啟動,在2018年上半年公布了評測結(jié)果,并在自然語言生成專業(yè)會議INLG 2018上進行了總結(jié) (Du?ek et al., 2018; 2019)。該評測收集了上萬條配對的餐館描述及語義表示數(shù)據(jù)(如圖2所示)。參賽系統(tǒng)需要將給定的語義表示(meaning representation, MR),即不同的屬性與值,用自然語言(natural language, NL)描述出來。評測數(shù)據(jù)集側(cè)重于反映諸如開放詞表、語義控制、表達多樣性等幾種數(shù)據(jù)到文本生成任務(wù)的挑戰(zhàn)。 E2E NLG Challenge 鏈接:http://www.macs./InteractionLab/E2E/ 圖2 E2E評測任務(wù)數(shù)據(jù)示例(本例來自評測官網(wǎng)) E2E NLG Challenge評測最終的獲勝系統(tǒng)為加州大學(xué)圣克魯斯分校研究團隊的Slug2Slug系統(tǒng),該系統(tǒng)在自動評測和人工評測中均取得較好的成績。該團隊將系統(tǒng)描述以論文A Deep Ensemble Model with Slot Alignment for Sequence-to-Sequence Natural Language Generation發(fā)表在NAACL 2018 (Juraska et al., 2018)。在這篇論文中,作者提出一個集成(ensemble)的神經(jīng)文本生成框架,其中參與集成的個體模型均為常用的序列到序列(sequence-to-sequence)模型。其編碼器部分采用了最為常用的LSTM-RNN或CNN。而在每個模型解碼輸出多條候選文本后,系統(tǒng)還對這些候選文本進行重排序,排序時考慮了文本中所提及事實與輸入數(shù)據(jù)的匹配情況。本文在方法上的核心貢獻是作者自行構(gòu)建的一套啟發(fā)式的屬性槽對齊器(slot aligner),用來剔除訓(xùn)練數(shù)據(jù)中一些沒有被對應(yīng)文本所提及的屬性值,在一定程度上實現(xiàn)了數(shù)據(jù)去噪;作者還根據(jù)候選文本同數(shù)據(jù)屬性槽的對齊結(jié)果設(shè)計了重排序準則。實驗表明,系統(tǒng)雖然無法在所有自動評測指標中均取得領(lǐng)先,但可以使得模型在各個指標上都更加穩(wěn)定、輸出錯誤更少的文本。 由于面向E2E評測,作者也在文中總結(jié)了不少實用技巧,對準備上手相關(guān)任務(wù)的讀者而言值得參考。比如,在預(yù)處理時的去詞匯化(delexicalization)操作中,作者不僅簡單地進行匹配和替換,還在替換時保留了更多的上下文信息(如單復(fù)數(shù)、時態(tài)等和銜接等信息)。另外,論文還討論了文本生成中數(shù)據(jù)增廣(data augmentation)的實用做法,以及為了獲得更自然的生成文本對訓(xùn)練數(shù)據(jù)進行選擇的嘗試。 本文的核心操作是建立結(jié)構(gòu)化數(shù)據(jù)同文本信息的對齊。除了直接根據(jù)領(lǐng)域知識設(shè)計啟發(fā)式對齊方法以外,也有同期的其它工作試圖在規(guī)模更大、干擾更多的Wikibio維基百科數(shù)據(jù)集上實現(xiàn)自動對齊(Perez-Beltrachini and Lapata, 2018)。類似多示例學(xué)習(multiple-instance learning)的思想,原理上可以將與文本共現(xiàn)的屬性集視作弱監(jiān)督標記來導(dǎo)出對齊信息。 End-to-End Content and Plan Selection for Data-to-Text Generation 這篇論文是哈佛大學(xué)自然語言處理組發(fā)表在INLG 2018的工作(Gehrmann et al., 2018)。文中提出的方法在經(jīng)典序列到序列模型的基礎(chǔ)上,引入多個解碼器,并通過隱變量因子來指定最終文本是由哪個解碼器所生成。這樣做的原因是,在文本生成中,同一個意圖往往有多種表達方法,只使用單個解碼器很難對多種不同的表達方式進行擬合。而通過設(shè)置多個子模型,可以讓每個子模型只負責擬合特定表達風格的數(shù)據(jù),從而改進學(xué)習效果。 值得一提的是,該論文所采用的基礎(chǔ)模型整合了常用的注意力(attention)機制、拷貝(copy)機制、覆蓋(coverage)機制和文本長度控制等,是一個較為先進和完備的基礎(chǔ)模型。另外,該論文也在 E2E NLG Challenge 數(shù)據(jù)集上對這些主要組件的影響進行了實驗評測。 Learning Neural Templates for Text Generation 雖然端到端(end-to-end)的方法在數(shù)據(jù)到文本生成上取得了一定的成果,但其不可解釋性和不可控性一直廣為詬病。因此,近期也出現(xiàn)了一些將端到端方法和傳統(tǒng)基于規(guī)則和模板的方法進行融合的模型。哈佛大學(xué)自然語言處理組的EMNLP 2018論文Learning Neural Templates for Text Generation就是其中較有代表性的工作之一 (Wiseman et al., 2018)。為了學(xué)習抽取和使用模板,作者采用適合片段建模的隱半馬爾可夫模型(hidden semi-markov model, HSMM)對文本進行建模,并用神經(jīng)網(wǎng)絡(luò)實現(xiàn)其中所有概率項的參數(shù)化。在完成模型訓(xùn)練后,可以利用Viterbi算法推斷出隱狀態(tài)序列,并將其獲取為模板,因此可以很方便地對模板進行控制并利用模板引導(dǎo)下一步的文本生成。在E2E NLG Challenge數(shù)據(jù)和WikiBio數(shù)據(jù)上的實驗結(jié)果表明,該方法可以取得和端到端神經(jīng)模型可比的性能,但是更具可解釋性和可控性。 同期也有其它工作嘗試先產(chǎn)生模板、再填寫屬性值的過程(Li and Wan, 2018)。借助邊際損失函數(shù)拉大正確填充結(jié)果與錯誤填充結(jié)果的模型打分差距,可以在一定程度上緩解輸出文本語義不正確的問題。 Operation-guided Neural Networks for High Fidelity Data-To-Text Generation 這篇論文(Nie et al., 2018)是微軟亞洲研究院知識計算組對改進神經(jīng)模型生成文本正確性的一個嘗試。在前文中我們也提過,很多時候訓(xùn)練數(shù)據(jù)中,文本和結(jié)構(gòu)化數(shù)據(jù)無法一一對齊,這對結(jié)構(gòu)化數(shù)據(jù)到文本生成提出很大的挑戰(zhàn)。例如句子 “Hawks edges the Heat with 95-94”,其中隊名Hawks、Heat和比分95、94均可以直接從輸入數(shù)據(jù)中獲取,而描述比賽結(jié)果的edges (“險勝”)是基于兩隊比分極其接近的事實而得出,現(xiàn)實中的結(jié)構(gòu)化數(shù)據(jù)往往不會直接包含此類細粒度事實。進一步調(diào)研發(fā)現(xiàn),在本論文收集的ESPN dataset數(shù)據(jù)集、前文所述RotoWire數(shù)據(jù)集以及維基百科人物數(shù)據(jù)集WikiBio的文本中,分別有29.1%、11.7%和7.4%的事實雖然不能從輸入數(shù)據(jù)中直接獲取,但可以通過對輸入數(shù)據(jù)進行運算而獲得?;谶@些觀察,論文提出了基于運算指引的神經(jīng)文本生成模型。具體來說,該模型預(yù)先執(zhí)行好若干種預(yù)定義的運算操作,在進行文本生成時,解碼器從輸入數(shù)據(jù)和運行結(jié)果中利用門限(gating)機制動態(tài)采用所使用的信息來源。另外,為了緩解數(shù)值數(shù)據(jù)的稀疏性問題,文中還將運算結(jié)果中的數(shù)值進行自動分段處理,使得模型更容易建立運算結(jié)果同詞匯選擇的聯(lián)系。 論文還發(fā)布了ESPN數(shù)據(jù)集,該數(shù)據(jù)集包含2006-2017年1.5萬場NBA比賽的結(jié)果和對應(yīng)的新聞標題。與RotoWire相比,該數(shù)據(jù)集文本長度更短,且文本中僅有約8.2%的內(nèi)容沒有蘊含在輸入數(shù)據(jù)信息內(nèi) (既無法從輸入數(shù)據(jù)直接獲取,也無法通過其他操作推斷得到的部分)。 Learning Latent Semantic Annotations for Grounding Natural Language to Structured Data 這篇論文 (Qin et al., 2018)是微軟亞洲研究院知識計算組在EMNLP 2018會議發(fā)表的另一篇相關(guān)工作,出發(fā)點與前一篇論文類似,但側(cè)重于細粒度顯式建立起文本與輸入數(shù)據(jù)之間的關(guān)系,從而得到可解釋、可控制的模型。不同詞匯或者短語的使用同輸入數(shù)據(jù)里不同部分的信息有關(guān),詞匯有時會直接取自數(shù)據(jù)中的字符串,有時則會因為屬性變量或者數(shù)值變量的不同取值而產(chǎn)生變化。由于對數(shù)值的表達在一定程度上涉及常識獲取與推理,關(guān)于這一部分的研究其實相當貧乏。 文中將建立對應(yīng)關(guān)系的過程用序列標注的方式來實現(xiàn),如圖3所示。整個方法框架將表征詞匯語義的標注視為隱變量,建立隱半馬爾可夫模型(HSMM)進行學(xué)習與推斷。模型中對于字符串變量、屬性變量、數(shù)值變量等不同類型之間的對應(yīng)關(guān)系分別采用了不同的概率模型來建模,而無法對應(yīng)到輸入數(shù)據(jù)的文字則統(tǒng)一標注為特定的空標記(NULL)。同經(jīng)典機器翻譯方法中的統(tǒng)計對齊模型類似,最終的對齊結(jié)果中很容易出現(xiàn)“垃圾收集”(garbage collection)效應(yīng),在文中的任務(wù)設(shè)定下表現(xiàn)為:有部分本應(yīng)打上空標記(NULL)的文字會被對應(yīng)到幾乎不被提及的數(shù)據(jù)單元上。為緩解這一問題,可以利用后驗正則化(posterior regularization)技術(shù),從統(tǒng)計上約束空標記的比例使之不低于特定值,最后能夠使得對齊結(jié)果得到大幅改善。 圖3 自動推斷文本中各部分詞匯同輸入數(shù)據(jù)項的對應(yīng)關(guān)系 模型推斷得到的概率可以用來為特定的數(shù)據(jù)信息獲取多樣的詞匯表達,而對齊結(jié)果本身也可以據(jù)此為自然語言生成提供豐富的規(guī)則和模板。這樣,在保證了可解釋性以及可控性的基礎(chǔ)上,整個框架可以自動從平行數(shù)據(jù)中獲取豐富的文字表達模式。 數(shù)據(jù)到文本生成任務(wù)在近幾年得到了廣泛關(guān)注,整個領(lǐng)域也在可控性、正確性、多樣性等問題上取得了一些進展。不過,這些問題目前還沒有得到完全徹底的解決,在基于神經(jīng)網(wǎng)絡(luò)的文本生成模型中尤其如此,這一現(xiàn)狀也為后續(xù)的相關(guān)研究工作留出了巨大的前進空間。在目前的工程實踐中,尤其是對于正確性和可控性要求比較高的場景,我們?nèi)匀唤ㄗh采用基于模板或規(guī)則的方法,而模板與規(guī)則也可以由系統(tǒng)性的從平行數(shù)據(jù)中獲取得到。文本生成是讓計算機從能聽會看到能言善道的必要技術(shù)之一。在生成模型的設(shè)計、訓(xùn)練語料的構(gòu)建、評價方法的創(chuàng)新、應(yīng)用場景的適配等等議題都有很大的研究發(fā)展空間。作者也希望借由此文啟發(fā)更多的研究人員關(guān)注和投入這個領(lǐng)域,一起為數(shù)據(jù)到文本生成后續(xù)的技術(shù)發(fā)展貢獻力量。 參考文獻 · Chaganty, et al. 'The price of debiasing automatic metrics in natural language evalaution' · Du?ek, et al. 'Findings of the E2E NLG challenge' · Du?ek, et al. 'Evaluating the State-of-the-Art of End-to-End Natural Language Generation: The E2E NLG Challenge' · Gehrmann, et al. 'End-to-End Content and Plan Selection for Data-to-Text Generation' · Juraska, et al. 'A Deep Ensemble Model with Slot Alignment for Sequence-to-Sequence Natural Language Generation' · Li, Liunian, et al. 'Point Precisely: Towards Ensuring the Precision of Data in Generated Texts Using Delayed Copy Mechanism' · Nie, Feng, et al. 'Operation-guided Neural Networks for High Fidelity Data-To-Text Generation' · Novikova, et al. 'Why We Need New Evaluation Metrics for NLG' · Perez-Beltrachini, Laura, and Mirella Lapata. 'Bootstrapping Generators from Noisy Data' · Qin, Guanghui, et al. 'Learning Latent Semantic Annotations for Grounding Natural Language to Structured Data' · Reiter, et al. 'A Structured Review of the Validity of BLEU' · Wiseman, et al. 'Challenges in Data-to-Document Generation' · Wiseman, et al. 'Learning Neural Templates for Text Generation' 掃描下方二維碼或點擊閱讀原文,即可下載文中提到的所有論文。 作者簡介 王錦鵬,微軟亞洲研究院知識計算組研究員,主要從事多模態(tài)知識挖掘、自然語言處理等領(lǐng)域的研究工作。至今為止,他在相關(guān)領(lǐng)域的頂級會議上已發(fā)表10余篇論文,并擔任ACL、AAAI等國際會議的評審委員。 姚金戈,微軟亞洲研究院知識計算組副研究員,目前主要致力于探索自然語言理解與生成中的若干重要問題以及在工程實踐中的應(yīng)用與適配。 知識計算組簡介 知識計算組致力于通過知識發(fā)現(xiàn)、數(shù)據(jù)挖掘與計算來理解和服務(wù)這個世界。研究組聚集了包括數(shù)據(jù)挖掘與計算、機器學(xué)習、自然語言處理、信息檢索和社會計算等領(lǐng)域的多學(xué)科研究員,主要從事如下研究方向:實體鏈接、搜索和知識挖掘與計算,基于結(jié)構(gòu)化數(shù)據(jù)的文本生成,服務(wù)于真實世界的語義計算框架應(yīng)用,基于大規(guī)模行為數(shù)據(jù)的用戶理解。十年來,該組成員的研究成果對微軟的重要產(chǎn)品產(chǎn)生了影響,包括必應(yīng)搜索、微軟學(xué)術(shù)搜索、微軟認知服務(wù)、微軟Office等。 知識計算組現(xiàn)招聘實習生,工作內(nèi)容涉及機器學(xué)習、自然語言處理和計算機視覺等領(lǐng)域,工程和研究均可,根據(jù)個人興趣和能力確定工作內(nèi)容。要求編程能力較強;有一定的溝通能力,有責任心;對機器學(xué)習、自然語言處理、人工智能有熱情和興趣;高質(zhì)量的完成工作;半年以上實習期。 感興趣的同學(xué)可下載并填寫申請表(申請表鏈接:http://www./zh-cn/jobs/interns/internship_application_form.xlsx),并將其與完整的中英文簡歷(PDF/Word/Txt/Html形式)一同發(fā)送至:MSRAih@microsoft.com 感謝你關(guān)注“微軟研究院AI頭條”,我們期待你的留言和投稿,共建交流平臺。來稿請寄:msraai@microsoft.com。 |
|
|