資訊生產的門檻,確實越來越低了;可要寫出「快準狠」的稿子,也真的越來越難了。內容生產的坑有千千萬,這其中,要數讓用戶怒點負反饋、狂扣編輯雞腿的「錯別字」最讓人頭疼。
為了揪出惱人的「錯別字」,鵝廠的寫稿機器人Dreamwriter再拓展能力項,想用AI算法加持採編小夥伴的工作。本期全媒派(ID:quanmeipai)採訪了項目幕後團隊,探秘這套AI糾錯算法究竟如何治癒編輯部「手癌」。
AI算法進行中文糾錯,到底有多牛?
想讓計算機進行中文糾錯,可不像人類在語文考試中火眼金睛用筆「捉蟲」那麼簡單。
從拼寫檢查說起:英文領域如何應用
點擊播放 GIF 0.0M
你應該對微軟Word文檔的紅綠波浪線不陌生,它就是最常見的拼寫檢查應用之一。1993年,微軟的Word 6.0上線自動拼寫更正的功能,到今天已經有25年的歷史。可以說,在英文拼寫檢查領域,人們的實踐早就取得了不錯的成績,無論是搜索工具還是文檔處理軟體,英文錯誤的識別總是又快又準的。
細究英文的拼寫錯誤,大致可以分為兩類:
一類是英文單詞拼寫不合法(Non-Word Errors),造成錯誤的「詞」在詞典裡沒有對應的單詞(Word),比如把artificial拼成artificel;
還有一類是單詞拼寫合法,但在語境中錯誤(Real-Word Errors),比如把be interested in寫成be interest in。與拼寫不合法相比,這類錯誤更難被糾正。
前者一般使用上下文無關(Context-Independent Methods)的方法解決,後者則通常使用上下文相關(Context-Dependent Methods)的方法識別。
#視頻:算法如何識別拼寫錯誤?來源:NBC
中文糾錯有多複雜?
在中文領域,糾錯仍然是一道險關,因為很多中文的錯誤情況並不會在英文語境中發生。這是因為,英文是輸入單個字母,組成詞彙和句子,沒有「輸入法」的概念,最小處理單元是一個「單詞」;而對於中文而言,我們依賴輸入法來打字,而計算機顯示的漢字字形都是預先設置好的,不會存在字形「無中生有」的情況,因此糾錯處理單元針對的中文「詞」,相當於英語的「詞組(Phrase)」。
中文語境出現的錯誤,錯法往往千奇百怪:有輸入法聯想錯誤導致輸入其他同音詞,由此出現的搭配不當;有發音不準導致拼音輸錯;還有形近字、幾乎約定俗成的錯字等等,很難有成熟的規律一網打盡。漢語的表達主觀且多樣,如果沒有海量語料來訓練模型,則試驗很難取得成效。
因此,可以說,漢語的「捉蟲」難度要大大高於英語。
鵝廠勘誤算法能力全透視
從今年春節後啟動,到六月份在騰訊新聞CMS系統全量上線、實現新聞各資訊品類全覆蓋,Dreamwriter的勘誤算法能力可謂歷盡了九九八十一難。這是騰訊新聞自研的人工智慧算法模型,收錄權威字典資料作為基礎儲備,並利用強大的深度學習算法,通過編輯反饋自我提升、根據上下文語義解析自我修正,實現錯別字的勘誤和糾正。
CMS反饋界面
從技術到產品,項目組投入大量精力不斷判錯、糾錯,進而優化模型,才實現了現階段較為成熟、理想的效果。
在模型雛形階段,因為不斷報錯,團隊成員也對試驗方向是否正確產生了懷疑。市面上幾乎沒有可參考競品,這條路就得獨立摸索。
核心攻堅點:根據上下文,判別搭配錯誤
在項目開發過程中,最難突破的是對上下文語法及搭配錯誤的判別,這需要經過數以億計的數據語料去訓練模型。只有不斷調試,機器才能夠對新聞的語法表達建立概念。
相較於傳統糾錯,該方法以最先進的AI算法為核心,通過海量語料對深度學習模型進行訓練,使模型能夠對多方面錯誤進行校正。
核心算法以深度學習為基礎,構建多個不同的模型,每個模型都從獨有的方面理解語義。模型通過語料進行學習,對語義的理解將深入到字和詞。算法核心技術將多種深度學習模型進行融合,多模型共同決策。當語句中出現錯誤,模型會發現該錯誤與上下文的匹配程度較低,因而觸發報警,並給出正確的寫法。
「比如我們判斷字寫對還是寫錯,其實基本的思路是寫錯的情況出現得比較少,出現的概率低。有些情況比較簡單,像高考常考的那一類,錯法很常見,比如說『彬彬有禮』寫成『杉杉』,這類問題用目前常見的錯別字算法都可以解決。」項目技術人員解釋道,「而我們這套算法的亮點,主要是通過判斷上下文語境,來識別搭配錯誤。我們會利用前後兩個詞,來預測中間這個詞出現的概率。如果說中間這個詞出現的概率非常低,跟它相近的一些詞出現的概率比較高,我們就認為它很有可能是寫錯了的。」
「還有一些非常規的錯誤,我們也能識別出來。比如上次報了一個『飛機率落』的case,把『摔』的提手旁漏了,這個錯法很罕見,但機器也識別出來了。」
技術人員還舉了一些例子,比如:
《這就是鐵甲》鄭爽成鐵甲女超能手,成功在經理人中脫引->脫穎而出
一群羅威納犬寶寶打架,場面感忍->感人無法控自->控制
你有一封信:失憶男字->男子尋找不存在的女孩,沒想到真找到了!
真·機器學習
這套算法能力的開發過程還有一個特點,就是自始至終沒有使用人工來進行智能數據標註。
技術人員介紹道:「一般來說,做這種糾錯算法需要很多人來進行數據標註,告訴機器它是什麼、不是什麼,都需要人工去標註,這是非常耗費人力的。我們這次沒有用人工標註,直接讓機器拿語料學習。」
算法能力迭代ing
目前,這套糾錯算法已能識別多種類型,包括同音字、近義字、易錯字及上下文語境搭配錯誤,識別準確率達90%以上,應用於騰訊新聞圖文、視頻等場景。此外,它還擁有「舉一反三」的超強大腦,不僅可以識別錯誤,還可以通過快速記錄對錯誤的反饋和幹預,自我迭代,將算法能力調試得更加精準。
現在,這套算法還在不斷的學習進化。在信息爆炸的今天,新聞的更新速度異常迅速,「神馬」、「菊外人」等新名詞層出不窮,算法也可以通過語料的積累,快速實現對這類熱門新詞的覆蓋。
未來展望:更多能力+開放合作
目前,團隊希望繼續優化模型,拔高整體水平;另外要做好通用能力,將算法以工具的形式來服務更多受眾。
算法能力項拓展
現有的算法能力雖然相當了不起,但對於漏字、多字和更複雜的病句卻暫時無能為力。技術人員坦言,這也是未來努力突破的一個方向。比如「我正在在看書」和「我正在書」,前者多了一個「在」字,後者漏了動詞「看」字,看似簡單的錯誤,如何通過AI來「查漏補缺」,是亟待攻克的難題。
除了糾錯本身,團隊還有更大的野心。產品經理介紹道,「糾錯只是目前算法能力的一個方向,更多的技術也在陸續開放中,希望能夠賦能更多合作夥伴。」
開放合作,解放「手癌」
「我們做這個算法能力的初衷是,不僅能夠應用於騰訊新聞『捉蟲』,還能惠及更多媒體從業者,幫助大家高效勘誤、少犯錯。」該項目的產品經理介紹道,「雖然這個能力的實現是很漫長且需要不斷更新的過程,但是為了能給予用戶純淨清朗的文字環境,我們認為還是很有意義的。」
現在,團隊正在著手搭建可供對外使用的應用展示平臺,十分歡迎更多有這類需求的媒體和個人,來使用鵝廠的算法工具,希望一來可以幫助大家發現並解決工作中存在的問題,二來通過吸收更多真實的「養料」,幫助AI更聰明更智能,未來識別更精準。
談及AI,人們往往聞之色變,唯恐因其入侵取代了自己的位置。而作為內容生產者的我們,完全可以合理利用AI,去負擔那些產出投入比低的工作,降低內容管理中的風險。在技術迅速變革的大潮之中,聰明地利用技術,加強人類不可替代的核心能力,才是媒體人減輕工作焦慮感的至上法則。
其他參考資料:
· Who Made That Autocorrect?
作者:Daniel Engber 來源:The New York Times Magazine
· Chinese Spell Checking Based on Noisy Channel Model
作者:Hsun-wen Chiu, Jian-cheng Wu, Jason S. Chang
· A New Benchmark and Evaluation Schema for Chinese Typo Detection andCorrection?
作者:Dingmin Wang, Gabriel PuiCheong Fung,
Maxime Debosschere, Shichao Dong, Jia Zhu, Kam-Fai Wong