用于多用戶多語言通信的系統(tǒng)和方法
【技術領域】
[0001] 本發(fā)明一般地涉及通信,并且尤其涉及包括多用戶和多語言的全球通信。
【背景技術】
[0002] 在基于機器的語言翻譯(下文中稱作"機器翻譯")出現(xiàn)之前,兩種語言之間的翻 譯僅能夠通過學習過這兩種語言的人的介入和解釋才能實現(xiàn)。相反地,典型的翻譯機器基 于對上下文以及語法的統(tǒng)計分析或隨機分析來運行,通常無需人為介入或解釋。
[0003] 典型的機器翻譯通常容易出錯,尤其是在待翻譯的文本的上下文極少的情況中。 上下文極少的文本通常出現(xiàn)在采用簡短的句子結(jié)構(gòu)的會話中。另外,機器翻譯在簡稱、縮 寫、昵稱、口語化詞語/短語、專有名詞、以及通用名詞方面通常存在困難,這些方面也通常 出現(xiàn)在會話文本中。
【發(fā)明內(nèi)容】
[0004] 本文中描述的各種實施方式提供涉及在多用戶之間的多語言通信的系統(tǒng)和方法, 其中這些用戶可能位于兩個或更多的客戶端系統(tǒng)。由實施方式所促進的通信模式可包括基 于互聯(lián)網(wǎng)的聊天(例如,蘋!4i?iMessage、Windows必Live Messenger等)、電子郵件 (例如,嵌入式論壇消息、雅虎郵箱?、RFC 5322等)、基于文本的移動電話通信(例如, SMS消息或MMS消息)、在線論壇的帖子(例如,基于網(wǎng)絡的愛好論壇的帖子)、以及在線社 會媒體服務的帖子(例如,Twitter?、Facebook?等)。例如,系統(tǒng)和方法可實施多語言、 多用戶聊天系統(tǒng)。
[0005] 對于一些實施方式,提供的方法包括:識別第一語言和第二語言;從第一聊天客 戶端的第一方接收以第一語言的初始消息,其中第一方以第一語言通信;以及從數(shù)據(jù)存儲 器中查詢以第二語言的第一對應消息,其中第一對應消息基于以第一語言的初始消息。如 果數(shù)據(jù)存儲器包括第一對應消息,則該方法幫助將該對應消息發(fā)送至在第二聊天客戶端系 統(tǒng)的第二方,其中第二方以第二語言通信。根據(jù)該實施方式,初始消息可包括文本、表情符 號、基于ascii的圖片、或者適于或常見于通過網(wǎng)絡發(fā)送的人可讀的消息的其它內(nèi)容。另 外,初始消息可以是在聊天客戶端系統(tǒng)之間通信的更大的消息的一部分(例如,初始消息 是多句消息中的一句)。
[0006] 如果數(shù)據(jù)存儲器不包括第一對應消息,則該方法利用轉(zhuǎn)換引擎嘗試將初始消息的 至少一部分轉(zhuǎn)換至以第一語言的轉(zhuǎn)換后的消息。該方法然后可使用該轉(zhuǎn)換后的消息從數(shù)據(jù) 存儲器中查詢以第二語言的第二對應消息,其中第二對應消息基于該轉(zhuǎn)換后的消息。
[0007] 對于某些實施方式,該系統(tǒng)或方法可嘗試在查詢數(shù)據(jù)存儲器(從該數(shù)據(jù)存儲器中 查詢基于轉(zhuǎn)換后的消息的第二對應消息)之前使用一系列轉(zhuǎn)換操作轉(zhuǎn)換初始消息。可替代 的,在一些實施方式中,該系統(tǒng)或方法可迭代地執(zhí)行轉(zhuǎn)換和查詢,其中:使用可用的轉(zhuǎn)換操 作的子集來轉(zhuǎn)換初始消息;基于得到的轉(zhuǎn)換后的消息從數(shù)據(jù)存儲器中查詢第二對應消息; 以及如果沒有識別出第二對應消息,則執(zhí)行另外的轉(zhuǎn)換和查詢的迭代(例如,使用可用的 轉(zhuǎn)換操作的另外的子集進一步轉(zhuǎn)換得到的轉(zhuǎn)換后的消息,以及基于該得到的轉(zhuǎn)換后的消息 從數(shù)據(jù)存儲器中查詢第二對應消息)。在一些這種實施方式中,應用于每個迭代中的轉(zhuǎn)換操 作的子集可應用于初始消息或可應用于最新得到的轉(zhuǎn)換后的消息。
[0008] 最終,該方法可幫助將初始消息或轉(zhuǎn)換后的消息翻譯至以第二語言的對應消息。 在一些實施方式中,當數(shù)據(jù)存儲器中不存在初始消息的第一對應消息以及轉(zhuǎn)換引擎不轉(zhuǎn)換 初始消息的至少一部分時,初始消息可被翻譯至該對應消息。另外,在各種實施方式中,當 有以下條件時轉(zhuǎn)換后的消息可被翻譯至該對應消息,這些條件如:初始消息的第一對應消 息不在數(shù)據(jù)存儲器中;轉(zhuǎn)換引擎產(chǎn)生包括初始消息的至少一部分的轉(zhuǎn)換的轉(zhuǎn)換后的消息; 以及數(shù)據(jù)存儲器不包括該轉(zhuǎn)換后的消息的第二對應消息。
[0009] 根據(jù)該實施方式,轉(zhuǎn)換初始消息的一部分可包括:識別在初始消息中的聊天用語 詞語或短語(例如,"L0L"、"gr8t")以及用非聊天用語詞語或短語替代該聊天用語詞語或 短語;對初始消息的該部分執(zhí)行拼寫檢查;或者識別初始消息的該部分中的簡寫以及用對 應于(例如,代表)該簡寫的詞語或短語替代該簡寫(例如,用"California"替代"CA"或 者用 "be right back" 替代 "brb")。
[0010] 另外,轉(zhuǎn)換初始消息的一部分可包括:識別初始消息的該部分中的縮寫以及用對 應于(例如,代表)該縮寫(例如,"USA")的詞語或短語替代該縮寫;或者識別初始消息的 該部分中的口語化詞語或短語以及用代表該口語化詞語或短語的詞語或短語替代該口語 化詞語或短語。此外,轉(zhuǎn)換初始消息的一部分可包括識別初始消息的該部分中的粗俗的詞 語或短語以及用非粗俗的詞語或短語(例如,代表該粗鄙的詞語或短語的詞語或短語)替 代該粗鄙的詞語或短語,或者去除該粗俗的詞語或短語
[0011] 對于一些實施方式,轉(zhuǎn)換初始消息的一部分包括標記初始消息的不翻譯的部分。 例如,當初始消息的特定部分包括專有名詞、通用名詞、昵稱、簡寫、或縮寫時,該方法可標 記該特定部分使得在后續(xù)操作中不翻譯該部分。
[0012] 某些實施方式提供包括配置為執(zhí)行本文中描述的各種操作的各種部件的系統(tǒng)。類 似地,某些實施方式提供包括計算機指令代碼的計算機程序產(chǎn)品,該計算機指令代碼配置 為引發(fā)計算機系統(tǒng)執(zhí)行本文中描述的各種操作。
[0013] 通過參照附圖的以下詳細描述,各種實施方式的其它特征及方面將變得顯而易 見,這些描述以示例的方式示出了這些實施方式的特征。
【附圖說明】
[0014] 參照以下附圖具體描述各種實施方式。附圖僅用于說明的目的,并且僅描述了一 些實施方式。這些附圖不應理解為對實施方式的寬度、范圍或適用性的限制。
[0015] 圖1是示出了根據(jù)各種實施方式的利用多語言通信系統(tǒng)的示例性的環(huán)境的框圖。
[0016] 圖2是示出了根據(jù)各種實施方式的示例性的通信轉(zhuǎn)換和翻譯系統(tǒng)的框圖。
[0017] 圖3是示出了根據(jù)各種實施方式的示例性的轉(zhuǎn)換模塊的框圖。
[0018] 圖4是示出了根據(jù)各種實施方式的示例性的聊天客戶端系統(tǒng)的框圖。
[0019] 圖5是示出了根據(jù)各種實施方式的多語言通信的示例性的方法的流程圖。
[0020] 圖6是示出了根據(jù)各種實施方式的轉(zhuǎn)換通信的示例性的方法的流程圖。
[0021] 圖7是示出了根據(jù)各種實施方式的在聊天客戶端系統(tǒng)之間的示例性的多語言聊 天會話的圖表。
[0022] 圖8是示出了根據(jù)各種實施方式的示例性的多語言通信方法的操作的流程圖。
[0023] 圖9是示出了根據(jù)各種實施方式的示例性的多語言通信方法的操作的流程圖。
[0024] 圖10是示出了根據(jù)各種實施方式的示例性的多語言通信方法的操作的流程圖。
[0025] 圖11是示出了根據(jù)各種實施方式的示例性的多語言通信方法的操作的流程圖。
[0026] 圖12是示出了可用于各種實施方式的實施例中的示例性的數(shù)字化設備的框圖。
【具體實施方式】
[0027] 本文中描述的各種實施方式涉及并便于多語言通信。一些實施方式的系統(tǒng)和方法 可實現(xiàn)經(jīng)由不同的通信模式的多語言通信,這些不同的通信模式例如:基于互聯(lián)網(wǎng)的聊天 (例如,蘋果?iMessage、Windows'? Live Messenger等)、電子郵件(例如,嵌入式論 壇消息、雅虎⑧^^卩箱、RFC 5322等)、基于文本的移動電話通信(例如,SMS消息或MMS消 息)、在線論壇的帖子(例如,基于網(wǎng)絡的愛好論壇的帖子)、在線社會媒體服務的帖子(例 如,Twitter?、Facebook?等)等。某些實施方式也可用于翻譯過去發(fā)生的通信或會話 的抄本(例如,沉積累積抄本或聊天歷史)。各種實施方式可實施在兩種或更多語言之間 翻譯文本(例如,口頭的)的通信系統(tǒng)和方法,同時處理/調(diào)節(jié)文本中的一個或多個下列項 目:專業(yè)/領域術語(例如,聊天用語)、簡寫、縮寫、專有名詞、通用名詞、昵稱、口語化詞語 或短語、以及粗鄙的粗俗的詞語或短語。例如,本文中描述的一些系統(tǒng)和方法可與通常具有 以不同語種聊天的用戶的聊天系統(tǒng)一起使用,諸如在大規(guī)模多玩家在線(MMO)游戲中使用 的聊天系統(tǒng)。通過某些實施方式,兩個或更多用戶之間的聊天對話可以被清楚地翻譯,并以 每個用戶各自的本國語言或選擇的語言呈現(xiàn)至每個用戶。另外,相較于僅通過傳統(tǒng)翻譯系 統(tǒng)的其他方式,通過使用多層/多模塊轉(zhuǎn)換過程,某些實施方式可助于在兩個或更多用戶 之間的通信的更快的翻譯(例如,以其各自的本國語言)(例如,以大約毫秒的速度翻譯)。
[0028] 根據(jù)一些實施方式,系統(tǒng)或方法可執(zhí)行從第一語言(如英語)的聊天用語到第二 語言(如法語)的聊天用語的翻譯。在另一實施例中,系統(tǒng)或方法可在嘗試將第一語言(例 如,英語)的聊天用語翻譯至第二語言(例如,法語)之前,執(zhí)行從第一語言(例如,英語) 的聊天用語到第一語言(例如,英語)的正式用語的轉(zhuǎn)換。一些實施方式可通過首先查詢 數(shù)據(jù)存儲器(例如,翻譯緩存)來實現(xiàn)這種文本翻譯,該數(shù)據(jù)存儲器可包括由操作員手動輸 入的翻譯或基于由翻譯系統(tǒng)先前執(zhí)行的翻譯(例如,由實施方式執(zhí)行的歷史的翻譯)。實 施方式可嘗試轉(zhuǎn)換文本的一個或多個部分(例如,處理文本中的一個或多個下列項目:聊 天用語、縮寫、簡寫、專有名詞、通用名詞、口語、以及粗語)以使其適于精確的文本翻譯。例 如,某些實施方式可轉(zhuǎn)換給定的文本以解釋跨越不同的語言的(當前或過去的)慣用語言 的使用。實施方式可在轉(zhuǎn)換了文本的該部分之后再次嘗試查詢數(shù)據(jù)存儲器。如果該翻譯查 找的再次嘗試失敗,則實施方式可嘗試使用機器翻譯服務(例如,諸如谷歌翻譯第三方的 云翻譯服務)翻譯該(可以是轉(zhuǎn)換后的)文本。
[0029] 實施方式可嘗試將翻譯的正式文本的片段轉(zhuǎn)換至新的語言中的聊天用語以進一 步完善最終產(chǎn)生的文本的翻譯。因此,某些實施方式助于第一語言(例如,英語)的聊天用 語到第二語言(例如,俄語、法語、西班牙語、漢語、北印度語等)的聊天用語之間聊天翻譯。
[0030] 一些實施方式可幫助減少或避免對機器翻譯的使用需求(從而減少與機器翻譯 相關的時間、成本和其他費用(overhead)),并且可助于對上下文極少或包括短句結(jié)構(gòu)的文 本的精確翻譯。當機器翻譯由第三方服務促進或在安全網(wǎng)絡連接(例如,安全套接層(SSL) 連接)上時,由某些實施方式所避免的成本或費用將會是顯著的。
[0031] 在本文中所理解的是,"轉(zhuǎn)換"指將第一語言的第一文本片段處理成第一語言的第 二文本片段。所得的第二文本片段在本文中也可稱作"轉(zhuǎn)換后的文本"。"翻譯"應理解為 將第一語言的文本片段轉(zhuǎn)變至第二語言的對應的文本片段。
[0032] 同樣,在本文中理解的是,"轉(zhuǎn)換后的翻譯"指已根據(jù)本文描述的實施方式轉(zhuǎn)換(例 如,從第一語言的聊天用語文本轉(zhuǎn)換至第一語言的正式文本)的文本片段的翻譯(從第一 語言至第二語言)。"未轉(zhuǎn)換的翻譯"應理解為指在文本片段根據(jù)本文描述的實施方式轉(zhuǎn)換 之前的該文本片段的翻譯(從第一語言至第二語言)。
[0033] 各種實施方式可實施不同的轉(zhuǎn)換/翻譯策略,其中某些策略能很好地適用于特定 的翻譯應用。例如,對于特定的聊天系統(tǒng)應用,所實施的轉(zhuǎn)換策略可包括以所列的順序應用 以下一組轉(zhuǎn)換相關的模塊:聊天用語模塊、縮寫模塊、專有名詞模塊、通用名詞模塊、口語模 塊、拼寫檢查模塊、簡寫模塊、以及粗語模塊。一般地,所采用的轉(zhuǎn)換/翻譯策略確定了執(zhí)行 哪個轉(zhuǎn)換操作、在整個翻譯過程中何時執(zhí)行轉(zhuǎn)換操作(例如,在機器翻譯之前或之后執(zhí)行 轉(zhuǎn)換)、或者以怎樣的順序執(zhí)行轉(zhuǎn)換操作(例如,轉(zhuǎn)換操作的優(yōu)先序或優(yōu)先級)。轉(zhuǎn)換/翻 譯策略也可確定預植入數(shù)據(jù)存儲器的翻譯(例如,翻譯可存儲在翻譯緩存中以提高整體處 理的速度)以及在整個翻譯過程中何時使用翻譯緩存。對于某些實施方式,可基于實施方 式所使用的環(huán)境條件動態(tài)地確定所采用的轉(zhuǎn)換/翻譯策略。例如,當聊天系統(tǒng)正在承受比 通常更大的用戶負荷時,轉(zhuǎn)換/翻譯策略可切換至減輕聊天系統(tǒng)的處理負擔的策略(例如, 更依賴于機器翻譯而不是數(shù)據(jù)存儲器)。
[0034] 圖1是示出了根據(jù)各種實施方式的利用多語言系統(tǒng)的示例性環(huán)境100的框圖。如 圖1所示,示例性環(huán)境100包括客戶端102-1至102-N(以下均稱作客戶端102)、聊天服務 器108、以及翻譯服務器110。通過計算機網(wǎng)絡106,該客戶端102、聊天服務器108、以及翻 譯服務器110中的每個均可以可通信地彼此聯(lián)接。根據(jù)一些實施方式,可使用一個或多個 局域通信網(wǎng)絡或廣域通信網(wǎng)絡(例如互聯(lián)網(wǎng)、WiFi網(wǎng)絡、WiMax網(wǎng)絡、私人網(wǎng)絡、公共網(wǎng)絡 等)實施或促進計算機網(wǎng)絡106。根據(jù)該實施方式,與計算機網(wǎng)絡106連接的一些或全部通 信可使用加密(例如,安全套接層(SSL))以保護在示例性環(huán)境100所示的各種實體之間傳 輸?shù)男畔ⅰ?br>[0035] 可使用一個或多個數(shù)字化設備實施客戶端102、聊天服務器108、以及翻譯服務 器110中的每個,該數(shù)字化設備可類似于隨后參照圖12討論的數(shù)字化設備。例如,客戶端 102-1可以是能夠接收用戶輸入(例如,配置為用戶交互)、能夠提供便于與一個或多個其 它客戶端(例如,客戶端102-2至102-N中的任意一個)通信的客戶端用戶界面、以及能夠 通過計算機網(wǎng)絡106與聊天服務器108通信的任意形式的計算機設備。這種計算機設備可 包括移動電話、平板計算機設備、膝上計算機、臺式計算機、個人數(shù)字助理、便攜式游戲機、 有線游戲機、精簡型客戶端、機頂盒、便攜式多媒體播放器、或本領域技術人員所公知的任 何其它類型的可訪問網(wǎng)絡的用戶設備。此外,聊天服務器108和翻譯服務器110中的一個 或多個可包括一個或多個服務器,該服務器可運行于一個或多個云服務上(例如,系統(tǒng)即 服務(SaaS)、平臺即服務(PaaS)、或基礎結(jié)構(gòu)即服務(IaaS))或使用該一個或多個云服務 實施。
[0036] 客戶端102可配置為與聊天服務器108可通信地連接,聊天服務器108提供或以 其它方式便于客戶端102之間的聊天會話。客戶端102-1至102-N中的每個可包括聊天客 戶端系統(tǒng)(分別是104-1至104-N),該聊天客戶端系統(tǒng)使得客戶端102中的每個的用戶能 夠通過聊天服務器108訪問聊天會話。另外,根據(jù)該實施方式,聊天客戶端系統(tǒng)104-1至 104-N(以下均稱作"聊天客戶端系統(tǒng)104")中的每個可作為單獨的聊天應用實施、可作為 嵌入在非聊天應用(例如,視頻游戲)中的聊天特征實施、或者可通過可經(jīng)由網(wǎng)頁瀏覽器在 客戶端訪問的聊天服務實施。本領域技術人員應理解,對于一些實施方式,聊天客戶端系統(tǒng) 104彼此之間可以是非異構(gòu)性的,但仍能夠彼此之間建立聊天會話。聊天客戶端系統(tǒng)104能 夠從其各自的用戶接收以用戶選擇的(例如,基于用戶設置或喜好)語言(以及對應的字 符集)聊天輸入(例如,聊天消息),以及將該聊天輸入發(fā)送至聊天服務器108以轉(zhuǎn)發(fā)至另 一個用戶(例如,在另一個聊天客戶端系統(tǒng)的另一個用戶)。聊天客戶端系統(tǒng)104也能夠從 聊天服務器108 (例如,從在另一個聊天客戶端系統(tǒng)的另一個用戶)接收聊天輸出(例如, 聊天會話對話),以及將該接收到的聊天輸出以用戶(例如,基于用戶設置或喜好)選擇的 語言(以及對應的字符集)顯示出來。
[0037] 通過一些實施方式的使用,隨著對話在聊天客戶端系統(tǒng)104之間傳遞,聊天對話 的翻譯對于用戶可以是易懂的。因此,對于一些實施方式,呈現(xiàn)在給定聊天客戶端系統(tǒng)104 上的全部聊天對話可以是該給定聊天客戶端系統(tǒng)104的用戶的本國語言或由該用戶選擇 的語言,而不管在參與同一聊天對話的其它客戶端系統(tǒng)104上的用戶正在使用什么語言。 例如,當在聊天客戶端系統(tǒng)104-1上的用戶與在聊天客戶端系統(tǒng)104-2上的用戶正在參與 同一個聊天對話(即,在同一聊天會話中)時,在聊天客戶端系統(tǒng)104-1上的用戶可能選擇 用英語輸入和接收聊天對話,而在聊天客戶端系統(tǒng)104-2上的用戶可能選擇用俄語輸入和 接收聊天對話。雖然在客戶端系統(tǒng)104-1和104-2上的用戶將看到同樣的聊天內(nèi)容,然而 該聊天對話將以用戶各自選擇的語言呈現(xiàn)出來。
[0038] 如圖所示,聊天服務器108可包括:聊天主機系統(tǒng)112,配置為建立和/或便于聊 天客戶端系統(tǒng)104之間的聊天會話;以及通信