該轉(zhuǎn)換器沿著從起始狀態(tài)(粗體1)到最終狀態(tài)(兩圈狀態(tài)0和1)的路徑編碼“I”,“I’ve”,“If”。 每個弧用一個輸入按鍵(“:”之前)和一個對應(yīng)的輸出字符(“:”之后)標(biāo)記,其中ε編碼空符號。 “I’ve”中的撇號可以省略。 用戶有時會跳過空格鍵。 為了說明這一點,轉(zhuǎn)換器中的單詞之間的過渡空格鍵是可選的。 ε和空格后弧允許存在多個單詞。
概率n元傳感器用于表示鍵盤的語言模型。 模型中的狀態(tài)代表一個(直到)n-1個字的上下文,并且離開該狀態(tài)的弧,將被標(biāo)記為一個后續(xù)字符以及跟隨該上下文的概率(由文本數(shù)據(jù)估計)。 這些與給出關(guān)鍵觸摸序列的可能性(滑動中的離散觸摸或連續(xù)手勢)的空間模型被組合并且用波束搜索進行探索。
通用FST原則,如流式傳輸,動態(tài)模型支持等,為構(gòu)建新的鍵盤解碼器帶來了很大的幫助,但還需要添加一些新的功能。 當(dāng)人們說話的時候,并不需要解碼器來完善你所說的話,或者猜測你會在后面說些什么來省下幾個音節(jié); 但是當(dāng)你輸入時,你會感受到詞語完成和預(yù)測的幫助。 此外,該團隊希望鍵盤可以提供無縫多語言支持,如下所示。
在Gboard上輸入三種語言
讓新的解碼器投入實際應(yīng)用是一項復(fù)雜的工作,但FST原則有很多好處。 例如,支持印地語等語言的音譯只是解碼器的簡單擴展。
音譯模型
在許多具有復(fù)雜腳本的語言中,已經(jīng)開發(fā)了羅馬化系統(tǒng),以將字符映射成拉丁字母,通常根據(jù)其發(fā)音。 例如,拼音“xièxiè”對應(yīng)漢字“謝謝”。 拼音鍵盤允許用戶在QWERTY布局上方便地輸入單詞,并將它們自動“翻譯”到目標(biāo)腳本中。 同樣,一個音譯印地語鍵盤允許用戶輸入“daanth”(牙齒)“????”。 而拼音確定是一個羅馬化系統(tǒng),印地語音譯則更模糊; 例如“daant”將是“????”的有效替代方案。
印地語的滑動字符轉(zhuǎn)換
正如從字母序列到單詞(詞典)的傳感器映射以及為單詞序列提供概率的加權(quán)語言模型自動化,該團隊為拉丁語按鍵序列和目標(biāo)腳本符號序列構(gòu)建了22種印度語的加權(quán)轉(zhuǎn)換器映射。 一些語言屬于多個書寫系統(tǒng)(例如Bodo可以寫在孟加拉文或梵文的腳本中),因此在音譯和本機布局之間,在短短幾個月內(nèi)就建立了57種新的輸入法。
FST解碼器的本質(zhì)性質(zhì)將支持完成所有的工作,預(yù)測,滑動打字和許多UI功能,無需額外的工作,從而使 Gboard能夠從一開始就向印度用戶提供豐富的體驗,一個更智能的鍵盤。
總而言之,最近的工作將解碼延遲降低了50%,將用戶手動更正的字數(shù)減少了10%以上,能夠為印度的22種官方語言提供音譯支持,并啟用了許多新功能。
雖然谷歌團隊希望這些最近的變化能夠改善用戶的打字體驗,但他們也同時認識到,在移動設(shè)備上打字的問題絕對不能算是解決了。 Gboard仍然會提出似乎不直觀或低效用的建議,并且手勢的解碼建議仍然可能為人類永遠不會選擇的詞語。 然而,該團隊的工作為強大的機器智能算法的轉(zhuǎn)變開辟了新的空間,谷歌正在積極探索為全球用戶提供更有用的工具和產(chǎn)品。
登陸|注冊歡迎登陸本站,認識更多朋友,獲得更多精彩內(nèi)容推薦!