7
本文作者: 柏蓉 | 2015-10-09 17:17 |
像上圖那樣的輸入法笑話,相信不少人在日常生活中都會遇到。其結(jié)果是帶來不同程度的傷害值,輕則弄巧成拙貽笑大方,重則……沒有上限。其實,隨著人們花費在手機上的時間越來越多,輸入法的準確也變得越來越重要。
今天,第三方輸入法“大牌”SwiftKey在其官網(wǎng)博客上很興奮地向大家介紹其最新并具有突破性的產(chǎn)品——采用人工神經(jīng)網(wǎng)絡(luò)的輸入法SwiftKey Neural。不過,目前只是Alpha測試版,安卓4.4以上的用戶可以到這里下載SwiftKey Neural Alpha進行體驗。
SwiftKey表示,SwiftKey Neural只是探索神經(jīng)網(wǎng)絡(luò)模型(neural model)的第一步,他們的愿景通過輸入法全面了解用戶,并根據(jù)用戶的語氣語調(diào)等預(yù)測整段回復(fù)而不是下一個字。說的恐怖一點就是模仿你來回應(yīng)對方。
在博客中,SwiftKey表示SwiftKey Neural是全球首個采用人工神經(jīng)網(wǎng)絡(luò)技術(shù)的手機輸入法,而且相比于目前主流的N-gram語言模型輸入法技術(shù),新的輸入法預(yù)測更為準確,并更懂用戶。因為SwiftKey Neural的神經(jīng)網(wǎng)絡(luò)模型會像人腦一樣理解輸入的詞句,并通過上下文的語境預(yù)測出用戶從未輸入的詞句。這與SwiftKey過去所采用的N-gram為詞語的出現(xiàn)概率賦予權(quán)重有很大不同。
具體來說,N-gram模型基于一種假設(shè),即第n個詞的出現(xiàn)只與前面N-1個詞相關(guān),與其它不相關(guān)。而整句的概率就是各個詞出現(xiàn)概率的乘積。這些概率可以從語料庫中統(tǒng)計,也會根據(jù)個人打字的數(shù)據(jù)來實現(xiàn)記錄。比如說,“我待會去_____(公司0.1,飯?zhí)?.07,廁所0.05……)”。這時候,輸入法會優(yōu)先彈出概率比較大的“公司”。這種方式有一種很嚴重的缺陷,不能理解每個詞語的意思,只能“重復(fù)”過往已經(jīng)出現(xiàn)過的語序。比如,在“我今晚開會,晚飯不__”這句話中,N-gram模型會根據(jù)個人詞句使用概率彈出“行,要,吃……”。但是,以人的思考模式,這兩小口對話的應(yīng)該是“晚飯不做了”。 而SwiftKey Neural輸入法正式想要達到后者這般效果——理解對話語境。
SwiftKey Neural實現(xiàn)對詞語的理解是通過賦予編碼。如上圖,通過大量數(shù)據(jù)訓(xùn)練的神經(jīng)網(wǎng)絡(luò)模型給“Meet you at the”四個字進行編碼,從而“理解”這些單詞間的關(guān)系,最后再預(yù)測下一個字的編碼。當然,這種做法需要巨量的運算資源。為此,SwiftKey也做了相應(yīng)的準備。SwiftKey表示,目前已經(jīng)在大型服務(wù)器上部署好這應(yīng)用。
有業(yè)內(nèi)人士向雷鋒網(wǎng)表示,SwiftKey Neural所采用的神經(jīng)網(wǎng)絡(luò)技術(shù)在25年前就流行了,有很多預(yù)測法都在運用這種技術(shù)尤其是工業(yè)應(yīng)用,因為它比較簡單,預(yù)測速度快。不過,這種技術(shù)有一種很大的缺陷,其優(yōu)化速度和優(yōu)化能力差,造成技術(shù)不穩(wěn)定。
在雷鋒網(wǎng)編輯看來,無論是N-gram模型還是神經(jīng)網(wǎng)絡(luò)模型,SwiftKey所尋找的不過是一個最佳的預(yù)測參數(shù)。還有一點很重要,如果各位讀者對這個問題感興趣,歡迎給雷鋒網(wǎng)留言,我們一起探討?。?/strong>
最后附上N-gram模型和神經(jīng)網(wǎng)絡(luò)模型的圖解:
via:swiftkey
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。