當前位置:
首頁 > 最新 > 機器人寫稿的技術原理及實現方法

機器人寫稿的技術原理及實現方法

今年8月8日21時19分,四川阿壩州九寨溝縣發生了7.0級地震。第一時間發布消息的,是中國地震台網一款公測的「地震信息播報機器人」。這篇題為「四川阿壩州九寨溝縣發生7.0級地震」的消息約540字,配發了5張圖片,內容包括速報參數、震中地形、熱力人口、周邊村鎮、周邊縣區、歷史地震、震中簡介、震中天氣8個方面,由機器自動編寫,用時25秒。此後一系列餘震消息,自動編寫速度最快的僅用時5秒。

儘管,國外早有應用於地震新聞自動生成和發布的同類產品,2014年3月17日,美國洛杉磯發生4.4級地震,洛杉磯時報就曾使用Quakebot機器人,花3分鐘寫了一條地震新聞,但現在,國內的互聯網用戶直觀感受到了機器人在快速報道地震災後情況上較為明顯的優勢。

這條內容經由「中國地震台網」微信公眾號推送,迅速刷爆微信朋友圈,也再次引發了寫稿機器人將在多大程度上影響新聞編輯室的討論。

而從人工智慧學術界和產業界的角度來說,討論寫稿機器人,首先應該從討論驅動機器人寫稿的核心技術自然語言處理(Natural Language Processing,簡稱NLP)開始。對於技術背景和實現方法的理解,能讓新聞從業者進一步明晰寫稿機器人的發展現狀,正確看待當下的應用價值及未來的開發潛力。

機器人寫稿的技術背景

機器人寫稿,背後的核心技術是自然語言處理,同時涉及數據挖掘、機器學習、搜索技術、知識圖譜等多項人工智慧技術。

自然語言處理是指機器理解並解釋人類寫作、說話方式的能力。目標是讓計算機/機器在理解語言上像人類一樣智能,最終能彌補人類交流(自然語言)和計算機理解(機器語言)之間的差距。

NLP研究發展到現在,基本經歷了三個階段。

計算機剛剛發明之後,人們就開始了自然語言處理的研究。那時的NLP研究都是基於規則的,就是研究人員想一些處理規則,然後計算機按照人設置的規則去處理文本。但是在應用中,很快發現許多現實世界的複雜問題並不是人想出一些規則就能解決的。

1990年,第13屆國際計算語言學會議在芬蘭赫爾辛基舉行,當時的主題是「處理大規模真實文本的理論、方法與工具」,學術界的重心已經開始轉向大規模真實文本,傳統的僅僅基於規則的自然語言處理顯然力不從心了。此後,NLP技術的主流是基於統計的自然語言處理,廣泛應用於機器翻譯、語音識別、拼音輸入、圖像文字識別、拼寫糾錯、查找錯別字和搜索引擎等。

而從2008年至今這不到10年間,在圖像識別和語音識別領域的成果激勵下,學術界開始逐漸引入深度學習來做NLP研究,並在機器翻譯、問答系統、閱讀理解等領域取得一定成功。

隨著NLP、深度學習以及大數據等技術的長足發展並開始在工業應用上大放異彩,處於快速轉型期的新聞行業,也對這些技術在新聞生產領域的應用展開了積極的想像。寫稿機器人,正是技術發展和行業變革催生的一股潮流。

機器人寫稿的三種實現方法

NLP的機制涉及兩個流程:自然語言理解(Natural Language Understanding,簡稱NLU)和自然語言生成((Natural Language Generation,簡稱NLG)。

現有的寫稿機器人,或者廣義來說,就是一個自然語言生成系統,主要有模板式、抽取式和生成式這三種技術方向。

1.模板式

模板式是目前應用最成熟、也是最容易理解的一種實現方法。

當前模板式的機器人寫稿方法,主要是通過利用優化演算法,智能選擇不同的模板組合進行新聞生成。具體的實現過程包括:基於輸入的知識點與模板庫進行候選模板檢索;利用優化演算法進行智能模板篩選,確定最終真正使用的模板;基於篩選得到的模板進行新聞文本生成。地震寫稿機器人、騰訊的DreamWriter等,都是這一類典型產品。

以DreamWriter為例,這是騰訊技術團隊開發的自動化新聞寫稿機器人,它能根據演算法在第一時間內自動生成新聞稿件,對新聞事件主題進行實時分析和研判,結合一系列的資料庫和機器學習演算法等技術,在較短時間內為用戶傳送重要的新聞資訊,幫助用戶快速解讀內容。

DreamWriter生產一篇完整的新聞,主要由五個步驟組成:建設內容資料庫,基於資料庫的機器學習,基於具體主題進行寫作,以及最後的內容審核和渠道分發。

首先,研發人員需要為 DreamWriter構建一個內容豐富、具有海量新聞數據的資料庫,比如每個賽季完整的歐洲主流足球聯賽的全套數據,從球員、球隊、賽事安排、比賽進程、環境因素、球員之間的對抗數據等等各個細分維度,對數據進行歸類、整理,形成一個龐大而又精準的數據倉庫,這個龐大的內容數據倉庫就成為了機器人自動生成足球新聞報道的原料倉庫。

在完成資料庫建設的基礎上,相關的大數據技術團隊就會基於數據分析和演算法設計,對於數據倉庫中每一項數據所對應的寫作模板進行學習和理解。基於模板的機器人寫稿學習過程如下圖所示:

比如報道一個足球賽事,DreamWriter這類機器人就會在前期的學習過程中,去理解球員比賽過程中的具體動作,包含了射門、撲救、鏟球、傳球以及犯規等動作,DreamWriter會將這些動作名詞進行隨意組合,同時結合足球比賽的規則特點,變成一整套足球賽事內容表述。

由於隨意的組合,內容會出現嚴重的差錯,因此DreamWriter會基於數據倉庫中的文本內容進行大量的訓練學習,最終使得DreamWriter的寫作水平能夠接近甚至達到標準新聞寫作的水平。

在實現短文本的內容生成後,DreamWriter會基於新聞的整體報道主題,比如體育或者財經,來生成一個特定的新聞內容框架,在內容框架下,DreamWriter會生成相應的文本內容,形成一篇報道。

DreamWriter目前的主要功能仍局限於體育財經類的資訊,由於這類內容報道結構相對固定,對DreamWriter來說,寫作難度並不大,但面對類似突發性新聞等比較難以預期的新聞,DreamWriter的表現水平就有待提升了。

2.抽取式

在新聞信息領域,利用機器人從海量的已有文本素材中抽取重要信息,進行「二次創作」,也是一種較為常見的自動寫稿方法。

當前,一個典型的抽取式自然語言生成場景是,基於抽取式的文本自動摘要生成。它是能夠幫助用戶短時間內從海量數據當中抽取重要信息內容的有效途徑,也是在新聞搜索、個性化推薦等場景下,從原始文本內容中快速抽取重要信息,生成核心摘要內容的重要方法。

自動文摘生成主要由三個步驟構成,如下圖所示:

圖中的文本分析過程是對原文本進行分析處理,識別冗餘信息;文本內容的選取和泛化過程是從文檔中辨認出重要信息,通過摘錄或概括的方法壓縮文本,或者通過計算分析的方法形成文摘表示;文摘的轉換和生成過程實現對原文內容的重組或者根據文本內部位置表示信息來生成文摘,確保文摘的連貫性。

基於抽取式的自動文本摘要技術應用最廣的領域在於新聞。

新聞信息的過載,讓人們迫切希望有這麼一個工具可以幫助自己用最短的時間了解最多的最有用的新聞,而很多新聞為了嘩眾取寵,故意將標題起得特別吸引眼球,但卻名不副實,因此就有了Yahoo公司的Summly產品(一款新聞摘要App)。另外,新聞搜索引擎也是應用之一。

以百度搜索頁中關於中國隊對陣卡達的世界盃預選賽新聞報道為例,可以簡單說明基於抽取式的自動文本摘要技術如何幫助用戶節省瀏覽新聞耗費的時間。

中卡預選賽之前百度搜索頁中的報道情況。

當用戶通過關鍵詞搜索「中國對戰卡達 世界盃」相關內容時,在頁面的新聞推薦列表中,每條新聞的標題下會有一個對應的簡短內容摘要呈現給用戶。此時用戶通過瀏覽摘要的內容,就能大致了解整篇新聞的主要內容,並且幫助用戶能在第一時間對多篇新聞內容進行篩選。其中摘要的內容必須保證和全文的相關性,同時也要保證新穎性,儘可能減少冗餘信息。在生成這些摘要文本的背後,是有一整套機器學習演算法和深度學習技術在支撐。

首先,搜索系統根據用戶意圖從新聞庫中搜索出所有有關中國與卡達世界盃預選賽的新聞,並且進行預處理,包括分詞和分句的處理,即將文本分成一個詞的集合以及句子的集合。

接下來基於一系列演算法實現對於句子的重要性排序,其中典型的有基於圖排序和基於特徵的排序演算法。圖排序演算法會構建一個圖網路模型,文檔的每句話都看作是圖網路中的一個節點,句子之間的相似度作為節點之間的邊權值,句子之間的相似度計算公式如下:

利用PageRank原理來迭代傳播權重計算各句子的得分,作為生成短摘要的重要參數,圖模型公式如下所示:

基於特徵的演算法主要是會考慮到句子的相關特徵,例如句子長度、句子位置、關鍵詞得分、是否包含標題詞等等,通過TextTeaser演算法得出句子的重要性得分。比如中卡之戰新聞的短摘要中,可以看到摘要裡面的內容都是跟新聞主題保持緊密相關性,沒有其他冗餘信息摻雜。

在求得句子的相關性基礎上,通過引入一個懲罰因子,將句子的新穎性作為參考因素加入到最終的排序當中。最終得到的結果一般是相關性排序後的前N句話,為了保證可讀性,需要按照原文中的順序,將排序之後的句子按原文順序輸出,在一定程度上保證語義上的連貫性。

目前,這一模式在一些新聞編輯室中也已有所應用。比如微軟(亞洲)互聯網工程院的人工智慧產品小冰入駐錢江晚報「浙江24小時」客戶端,變身機器人記者,其中一項職能就是基於微軟必應搜索引擎,利用全網大數據和公開的社交平台數據,生產包含一張圖片、一個標題、一段梗概、兩個觀點的「新聞卡片」。

3.生成式

以上兩種技術在新聞資訊領域的應用,已相對常見。而生成式,在現階段尚無典型的產品。

生成式自然語言生成,主要指通過序列的深度學習和增強學習技術,機器可以根據現有文本生成模型,比如說機器人會把資料庫里某些更新的信息用自然語言的形式寫成報道。當然,這種報道不需要特別深入的調查,也不需要去了解各個事件背後的關係,理論上這是可以由機器來做的。

當前比較熱門的AI生成文本的場景有:例如,用莎士比亞的作品來做訓練,模型就能生成類似莎士比亞的句子;利用汪峰的歌詞做訓練,模型也能生成類似歌詞的句子來;或者是自動生成新聞標題等等。這類產品很多都是引入了一些深度學習模型,像Seq2Seq+Attention模型等,基於大量文本集進行學習,然後自動生成一些比較接近於人類日常表達方式的文本。

Seq2Seq模型基於輸入序列,預測未知輸出序列。模型由兩部分構成,一個編碼階段的」Encoder」和一個解碼階段的」Decoder」。如下圖的簡單結構所示,Encoder的RNN每次輸入一個字元代表的embedding向量,如依次輸入A、B、C 及終止標誌,將輸入序列編碼成一個固定長度的向量;之後解碼階段的RNN神經網路會一個一個字元地解碼,如預測為X, 之後在訓練階段會強制將前一步解碼的輸出作為下一步解碼的輸入,如X會作為下一步預測Y時的輸入。Seq2Seq模型如下所示:

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 傳媒評論 的精彩文章:

把典型人物報道做成融媒體「連續劇」——90後女教師陳瑩麗事迹采寫心得
移動互聯時代新聞門戶網站的價值與定位
Instagram網站創建者凱文·斯特羅姆:創造矽谷傳奇

TAG:傳媒評論 |