TWI470451B - 通用語言輸入 - Google Patents
通用語言輸入 Download PDFInfo
- Publication number
- TWI470451B TWI470451B TW98105149A TW98105149A TWI470451B TW I470451 B TWI470451 B TW I470451B TW 98105149 A TW98105149 A TW 98105149A TW 98105149 A TW98105149 A TW 98105149A TW I470451 B TWI470451 B TW I470451B
- Authority
- TW
- Taiwan
- Prior art keywords
- application
- input
- computing system
- interface
- user
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3337—Translation of the query language, e.g. Chinese to English
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/58—Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Machine Translation (AREA)
- User Interface Of Digital Computer (AREA)
Description
本說明書係關於語言輸入方法。
語言輸入方法允許使用者使用一輸入方法編輯器(IME)提供語言輸入。該IME係允許使用一輸入方法之一種語言輸入方法應用程式。一輸入方法允許一使用者使用以一來源語言之一鍵盤(例如QWERTY鍵盤)提供一目標語言之輸入(例如一非拉丁語言)。該IME將目標語言之表意文字映射至來源語言鍵盤上的鍵(例如根據該映射,按下以一輸入語言之一特定鍵或鍵組合產生一對應的以目標語言之表意文字。)然而,習知IME僅取代映射字元;其並未轉譯該輸入(例如解譯以一來源語言之輸入文字之一意義並以一目標語言提供具有一實質相同之意義的轉譯文字)。
若一使用者願意提供一來源語言之輸入並將該輸入轉譯成一目標語言,則該使用者通常使用一分離的辭典或轉譯應用程式。使用者將以來源語言之輸入提供至該辭典或轉譯應用程式。接著,使用者從辭典或轉譯應用程式複製轉譯輸入(例如轉譯成目標語言之輸入)並將該轉譯之輸入貼在一所需位置中。此外,若使用者想轉譯文字之分離部分(例如鍵入一聊天談話之不同線),則該使用者通常提供文字之每一部分至該辭典或轉譯應用程式。接著,使用者將從該辭典或轉譯應用程式中複製轉譯之文字的每一部分並將其粘貼在一所需位置中(例如一聊天介面中)。
提供用於通用語言輸入,尤其用於轉譯輸入之包括電腦程式產品的系統、方法及裝置。一般而言,在一態樣中提供一種方法。該方法包括使用一第一應用程式或作業系統組件以偵測至一第二應用程式之一應用程式介面的使用者輸入。該方法亦包括,當在該應用程式介面中偵測到輸入時,自動使用該第一應用程式以提供該輸入之一或多個轉譯,其包括發送該輸入至一轉譯模型,自該轉譯模型接收轉譯輸入,及發送該轉譯輸入至該第二應用程式之該應用程式介面。此態樣之其他具體實施例包括系統、裝置及電腦程式產品。
該態樣之實施方案可包括以下一或多個特徵。偵測使用者輸入可包括應用一攔截(hook)至一介面,其中該介面可操作以與一作業系統及一或多個應用程式通信,並監視至該介面之呼叫。該等呼叫可包括系統呼叫或應用程式介面呼叫。該第一應用程式或作業系統組件可包括一輸入方法編輯器。提供該輸入之一或多個轉譯可包括在一使用者介面中呈現該一或多個轉譯,並將一選定的轉譯複製至一文字瀏覽器或編輯器中。該選定轉譯可藉由該一或多個轉譯之一使用者選擇識別。該轉譯模型可位於一遠端轉譯伺服器處。該第一應用程式可使用一更新伺服器更新。該轉譯模型可使用一可選擇語言模型。
此說明書中所說明之標的之特定具體實施例可實施以實現下列優點之一或多個者。一通用語言輸入方法編輯器允許一使用者在不實行轉譯之應用程式(即需要使用一分離應用程式來實行該等轉譯之應用程式)中自動轉譯輸入文字,藉此節約使用者時間及鍵擊。該通用語言輸入方法編輯器可使用一遠端轉譯伺服器及一更新伺服器,其允許更多的轉譯覆蓋(例如存取在一區域轉譯模型中不可用之額外語言、字及詞語)。此外,由於可將一轉譯模型之組件遠端儲存,故使用一轉譯伺服器減少一輸入方法編輯器之記憶體大小。
附圖及以下說明中提出本說明書所述標的之一或多個具體實施例之細節。從說明內容、圖式及申請專利範圍將會明白該標的之其他特徵、態樣及優點。
圖1係包括接收之轉譯輸入155(例如至應用程式介面100之一使用者輸入之一或多個轉譯)的一應用程式介面100之一範例螢幕快照。該應用程式介面100可為(例如)一文字瀏覽器或編輯器(例如聊天應用程式、文書處理器、電子郵件應用程式或網路瀏覽器)。在一些實施方案中,應用程式介面100包括一顯示區域110、一使用者輸入區域120及一轉譯視窗130。轉譯視窗130包括一搜索領域140(「搜索」意味「search」)及一轉譯輸入區域150。
例如,該應用程式介面100表示一聊天用戶端應用程式(例如Google Talk)之一聊天視窗。顯示區域110顯示聊天參與者的聊天內容(例如根據輸入時間表示聊天參與者之間之對話的文字表示線)。使用者輸入區域120允許一使用者瀏覽、輸入及編輯欲用作聊天內容之文字。使用者輸入區域120包括欲轉譯之範例輸入125(例如「hello」)。在一些實施方案中,可將欲轉譯之輸入加底線(例如範例輸入125「hello
」),以指示使用者可藉由來自轉譯輸入155之一轉譯取代該輸入。
在一些實施方案中,該使用者在使用者輸入區域120中提供欲轉譯之輸入125。一通用語言輸入方法編輯器可偵測該輸入並自動提供該輸入之一或多個轉譯,如圖2至4中所述。例如,該通用語言輸入方法編輯器可偵測「hello」為輸入,並在搜索領域140中自動呈現欲轉譯之輸入125,並允許該使用者繼續提供欲轉譯之輸入145。該通用語言輸入方法編輯器在轉譯輸入區域150中自動提供轉譯輸入155。在一些實施方案中,例如,當存在轉譯一給定輸入之多個方式時,該通用語言輸入方法編輯器提供一個以上可能的轉譯。例如,轉譯輸入155包括一第一轉譯「你好」及一第二轉譯「嗨」,其兩者皆為英文字「hello」之中文轉譯。
在一些實施方案中,該通用語言輸入方法編輯器作為一背景程序運行。例如,當可操作以使用一輸入方法編輯器之一應用程式運行時,該通用語言輸入方法編輯器可作為一背景程序運行。如另一範例,當該作業系統開機時,該通用語言輸入方法編輯器作為一背景程序啟用。特定言之,該轉譯視窗可自動呈現在具有使用輸入方法之應用程式的一使用者介面中。在一些實施方案中,一使用者直接在搜索領域140中提供輸入用於轉譯。
在一些實施方案中,由使用者手動起始並操縱該通用語言輸入方法編輯器。例如,使用者可啟用該通用語言輸入方法編輯器作為一背景程序。特定言之,該通用語言輸入方法編輯器可回應一使用者觸發(例如鍵盤捷徑鍵及在一觸發按鈕上滑鼠點擊)以打開一轉譯視窗。在一些實施方案中,顯示控制160允許一使用者根據其偏好設定隱藏或呈現轉譯視窗。
圖2顯示用於當偵測到輸入時將該輸入轉譯至一應用程式介面內之一範例電腦系統200之一概念方塊圖。該電腦系統200包括一使用者介面202及軟體204。使用者201可透過該使用者介面202接取電腦系統200。軟體204包括應用程式205、一通用語言輸入方法編輯器206及一作業系統(OS)207。作業系統207係可在軟體204(例如應用程式205及通用語言輸入方法編輯器206)與使用者201之間提供使用者介面202的一件特定軟體。
該通用語言輸入方法編輯器206包括一轉譯模型209及一或多個語言模型210。或者,可將該轉譯模型209與通用語言輸入方法編輯器206分離。亦可將一或多個語言模型210與通用語言輸入方法編輯器206分離。例如,該等模型可作為分離的軟體組件包含在軟體(例如軟體204)中,或該等模型可遠距離定位(例如該等模型可位於遠端轉譯伺服器212處)。語言模型210可進一步包含辭典(例如Goole辭典)。軟體204亦包含一攔截模組208。該攔截模組208可(例如)截取至特定應用程式205之輸入並將該截取之輸入發送至通用語言輸入方法編輯器206。在一些實施方案中,該攔截模組208係通用語言輸入方法編輯器206之一組件。當偵測到輸入時,系統200可將輸入轉譯至一應用程式介面內,如圖3中所述。
在一些實施方案中,通用語言輸入方法編輯器206使用一更新伺服器211用於更新。該更新伺服器211可與電腦系統200通信以更新軟體204。例如,電腦系統200可使用一匯出的應用程式介面(API)管理器以與一最新的應用程式通信。一最新的應用程式從更新伺服器211下載更新並將該等更新(例如用於該等語言模型之新詞語)匯入至通用語言輸入方法編輯器206中。特定言之,將匯入之詞語添加至一或多個語言模型210中的辭典中。
此外,該更新伺服器211可用於下載或安裝通用語言輸入方法編輯器206,包括轉譯模型(例如轉譯模型209)、語言模型210及攔截模組208。更新伺服器211亦可用於更新該等組件之每一者。例如,一使用者可下載對應於額外的目標語言之額外的語言模型。
在一些實施方案中,通用語言輸入方法編輯器206使用一轉譯伺服器(例如遠端轉譯伺服器212)以對所接收之輸入提供轉譯。例如,轉譯伺服器212可與電腦系統200通信以發送轉譯輸入至通用語言輸入方法編輯器206。
例如,通用語言輸入方法編輯器206可使用一匯出的API管理器以與轉譯伺服器212通信。轉譯伺服器212包括一轉譯模型及用於將以一來源語言之輸入轉譯成一或多個目標語言之一或多個語言模型。在一些實施方案中,若區域轉譯模型(例如轉譯模型209)不能實行一特定轉譯(例如轉譯模型209之一辭典不包括一特定字或詞語,或轉譯模型209不包括適當的語言模型),則該通用語言輸入方法編輯器206使用轉譯伺服器212。
圖3顯示用於當偵測到輸入時將該輸入轉譯至一應用程式介面內之一範例程序300。為方便起見,將結合實行該轉譯之一系統說明當偵測到輸入時,將該輸入轉譯至一應用程式介面內。該系統使用310一第一應用程式(例如圖2之通用語言輸入方法編輯器206)或作業系統組件(例如攔截模組208)以偵測至一第二應用程式之一應用程式介面(例如圖1之應用程式介面100)的使用者輸入。
該攔截模組可包含在軟體(例如軟體204)中。在一些實施方案中,該攔截模組可為該通用語言輸入方法編輯器之部分。在一些實施方案中,該攔截模組係安裝在作業系統中之一組件。該通用語言輸入方法編輯器可使用該攔截模組以偵測至一第二應用程式之一應用程式介面之使用者輸入。
應用攔截模組(例如攔截模組208)以攔截住可與作業系統(例如作業系統207)及一或多個應用程式(例如應用程式205及通用語言輸入方法編輯器206)通信之一介面。一攔截可允許使用者或程式能夠監視至該介面之呼叫。特定言之,該攔截模組可監視至該介面之系統呼叫或API呼叫(例如藉由一事件處理常式(handler)所接收之鍵盤事件,例如Windows訊息處理常式)。
該攔截模組可截取該輸入並重新引導該輸入至一不同的軟體組件(例如通用語言輸入方法編輯器206)。例如,該攔截登錄其自己的位址作為用於該事件之處理常式,且允許該系統在偵測到輸入時,發送320該輸入至一轉譯模型(例如轉譯模型209)。該轉譯模型使用一或多個語言模型以將該輸入轉譯成轉譯輸入。在一些實施方案中,如圖2中所述,該系統發送320該輸入至用於轉譯之轉譯伺服器212。
在一些實施方案中,該輸入包括從一剪貼簿(clipboard)複製之內容。例如,若使用者自一內容源(例如一網頁)複製輸入「hello」至一應用程式介面(例如應用程式介面100)中,則該系統使用該第一應用程式或作業系統組件以偵測複製至該應用程式介面中之該輸入「hello」。在一些實施方案中,該輸入包括自一遠端來源之傳入輸入(例如表示來自其他聊天參與者之聊天對話的傳入文字,及表示來自網頁之資料的傳入文字)。
在一些實施方案中,該第一應用程式或作業系統組件截取至第二應用程式(例如一聊天用戶端應用程式)之應用程式介面之特定的結構元件(例如圖1之使用者輸入區域120)之使用者輸入。例如,攔截模組208截取在使用者輸入區域120中提供之使用者輸入。或者,攔截模組208不截取提供至(例如)用於聊天用戶端應用程式之一幫助特徵的一搜索領域之的使用者輸入。
在一些實施方案中,在偵測到輸入後,通用語言輸入方法編輯器206自動識別該輸入為欲轉譯之輸入。此外,通用語言輸入方法編輯器206可指示一使用者可轉譯該輸入。例如,通用語言輸入方法編輯器206可使用一視覺提示(例如醒目標示該輸入或將該輸入加底線)作為一指標。
用於轉譯輸入之一範例技術係統計機器轉譯。給定一來源語言之一特定輸入,統計機器轉譯試圖識別以一目標語言之一最可能之轉譯。例如,當將一句子從法文轉譯成英文時,統計機器轉譯識別給定為法語句子之最可能的英語句子。此最大可能性之轉譯可寫成:
其描述所有可能的句子中的英文句子e,其提供P(e|f)之最高值。此外,貝氏定律(Bayers Rule)提供下式:
使用貝氏定律,此最可能的句子可重寫成:
因此,最可能的e(即最可能的英文轉譯)係最大化e出現之可能性及e轉譯成f之可能性(即一給定之英文句子轉譯成法文句子之可能性)的產品的句子。
另一範例技術識別具有大於一特定臨限量之用於P(e|f)之一值的所有可能的轉譯。此技術允許該系統提供包括該輸入之一或多個轉譯的轉譯輸入。
在一些實施方案中,一使用者選擇該一或多個語言模型210中之一或多個。例如,若使用者想將一第一語言(例如一英文字「hello」)之輸入轉譯成一第二語言(例如一中文詞語「你好」),則該使用者將選擇該第二語言,藉此選擇對應於該第二語言之一語言模型(例如一中文語言模型)。如另一範例,若使用者想將一第一語言(例如一英文字「hello」)之輸入轉譯成一第三語言(例如一西班牙字「hola」),則該使用者將選擇該第三語言,藉此選擇對應於該第三語言之一語言模型(例如一西班牙語言模型)。
在一些實施方案中,系統自動選擇該一或多個語言模型210中之一或多個。例如,通用語言輸入方法編輯器206可包括一內容識別模組。該背景識別模組可識別在第二應用程式中之使用者輸入之背景(例如在一網頁聊天中其他聊天參與者所使用之語言,或與一網址或電子郵件接收者相關聯之一地理區域)。例如,若其他聊天參與者用中文聊天,使用者訪問一中文網站(例如www.google.cn),或使用者發送一電子郵件至一中文電子郵件位址(例如example@gmail.cn),則通用語言輸入方法編輯器206可從可選擇語言模型中自動選擇一中文語言模型。
在一些實施方案中,該轉譯輸入包括用一或多個語言之一或多個轉譯。例如,使用者或系統可選擇欲藉由該轉譯模型使用之兩個或兩個以上的語言模型。或者,該系統可自動選擇欲藉由該轉譯模型使用之兩個或兩個以上的語言模型。特定言之,若一網路聊天中之一聊天參與者鍵打西班牙文,另一聊天參與者鍵打中文,且該使用者提供輸入「hello」,則可選擇一西班牙語模型及一中文模型,且可將轉譯輸入(例如「hola」、「嗨」及「你好」)發送至第二應用程式之應用程式介面(例如圖1之應用程式介面100之轉譯輸入區域150)。
該系統從一轉譯模型(例如轉譯模型209;或特定言之如圖2中所述之情形,在遠端轉譯伺服器212處之一轉譯模型)接收330轉譯輸入,並將轉譯輸入發送340至第二應用程式之應用程式介面(例如一或多個應用程式205之一應用程式介面)。例如,該攔截模組藉由呼叫原始處理常式(例如Windows訊息處理常式)未登錄該攔截,該呼叫包括發送轉譯輸入至原始處理常式,該原始處理常式發送340該轉譯輸入至第二應用程式之應用程式介面。
在一些實施方案中,系統在一使用者介面(例如使用者介面202)中呈現350轉譯輸入供選擇。該轉譯輸入可包括欲轉譯輸入的一或多個轉譯。在一些實施方案中,該使用者選擇在該使用者介面中呈現的該一或多個轉譯中之一者作為一選定轉譯。在一些實施方案中,根據其稱為一正確轉譯的可能性在使用者介面中呈現該一或多個轉譯(例如以正確轉譯的可能性遞減之順序以一數位清單形式呈現)。成為正確轉譯之可能性可依據(例如)上下文(先前轉譯輸入)。在一些實施方案中,根據在串列資料中出現之轉譯之一頻率,在該使用者介面中呈現該一或多個轉譯。
在一些實施方案中,轉譯模型209自動選擇該一或多個轉譯中之一作為一選定轉譯。例如,一或多個語言模型210可包括辭典,其進一步包括在串列資料中出現的字或詞語之相對頻率。轉譯模型209可自動選擇最可能出現之轉譯(例如使用統計機器轉譯)作為選定轉譯。
該系統將一選定轉譯複製360至第二應用程式之一文字瀏覽器或編輯器中,並繼續監視370額外的使用者輸入。若該系統偵測到額外的使用者輸入(步驟370之「Yes」分支),則該系統實行步驟(包括320、330、340),視需要包括350、360及370。否則該程序便結束380。
在一些實施方案中,該攔截模組登錄該攔截,直至一使用者退出該第二應用程式或該第二應用程式不再受使用者關注(例如使用者轉移關注至一第三應用程式,或使用者最小化在一圖形使用者介面中之第二應用程式)。在一些實施方案中,該攔截模組登錄該攔截,直至使用者手動停用(例如退出)第一應用程式。此外,在一些實施方案中,當使第二應用程式再次受使用者關注時,或若使用者重新起始該第二應用程式,該攔截模組自動重新攔截住能與作業系統及一或多個應用程式通信之介面。
例如,一使用者初始提供英文字元「water」作為輸入。當系統偵測到該輸入時,將該輸入發送至轉譯模型。從該轉譯模型接收意味「water」之中文字元「水」作為轉譯輸出,並將其發送至第二應用程式之應用程式介面,此外,當使用者繼續提供輸入,英文字元「water」輸出之原始順序變成英文字元「waterfall」之一順序。當系統偵測到該輸入時(例如鍵入的每一字元),則將該輸入發送至轉譯模型用於轉譯。例如,在使用者鍵打最後字元「1」後,系統可自動發送「瀑布」(其意指「waterfall」)至第二應用程式之應用程式介面。在一些實施方案中,通用語言輸入方法編輯器206提供預測的轉譯。例如,在使用者鍵打字元「f」後,系統可自動發送「瀑布」、「水禽」(其意指「waterfowl」)及「海濱」(其意指「waterfront」)至第二應用程式之應用程式介面。在使用者鍵打字元「a」後,系統自動發送「瀑布」。
如在圖1及2中所示,例如,一使用者在應用程式介面100(例如Google Talk用戶端應用程式介面或其他聊天或傳訊應用程式介面)中鍵打「hello」。在運行一Windows作業系統之一電腦系統中,將包括輸入「hello」之一鍵盤事件發送至一Win32 API。特定言之,該Windows訊息處理常式可處理該鍵盤事件。然而,通用語言輸入方法編輯器206可使用攔截模組208以攔截住Win32 API,截取該輸入,並將該輸入發送至轉譯模型209。
轉譯模型209使用一或多個語言模型之一(例如一中文轉譯模型)以轉譯該輸入,並將轉譯輸入發送至Windows訊息處理常式。該Windows訊息處理常式將該轉譯輸入發送至應用程式介面100。視需要,通用語言輸入方法編輯器206可在使用者介面中呈現該轉譯輸入(例如包括轉譯輸入155之轉譯視窗130)用於使用者選擇。
該系統接著將一選定轉譯(例如中文詞語「你好」或中文字「嗨」)複製至一文字瀏覽器或編輯器(例如使用者輸入區域120)中。例如,可將「你好」複製至使用者輸入區域120中以取代「hello
」。或者,可將「嗨」複製至使用者輸入區域120中以取代「hello
」。通用語言輸入方法編輯器206可繼續監視370額外的使用者輸入(例如在使用者輸入區域120中提供的額外輸入)。
圖4係一一般電腦系統400之一示意圖。該系統400可用於實踐結合一通用語言輸入方法編輯器206所述之操作。系統400可包括一處理器410、一記憶體420、一儲存器件430,及輸入/輸出器件440。使用一系統匯流排450將各組件410、420、430及440互連。處理器410能夠處理用於在系統400內執行的指令。此類執行之指令可實施(例如))通用語言輸入方法編輯器206之一或多個組件。在一實施方案中,該處理器410係一單一執行緒系統。在另一實施方案中,處理器410係一多執行緒處理器。處理器410能夠處理儲存於記憶體420內或儲存器件430上之指令,以便將一使用者介面(例如使用者介面202)之圖形資訊顯示於輸入/輸出器件440上。
記憶體420係在系統400內儲存資訊之一電腦可讀取媒體(例如揮發或非揮發)。記憶體420可儲存(例如)通用語言輸入方法編輯器206。儲存器件430能夠提供系統400之持久儲存器。儲存器件430可為一軟碟器件、一硬碟器件、一光碟器件,或一磁帶器件,或其他合適的持久儲存構件。該輸入/輸出器件440提供該系統400之輸入/輸出操作。在一實施方案中,該輸入/輸出器件440包含一鍵盤及/或指標器件。在另一實施方案中,輸入/輸出器件440包括用於顯示圖形使用者介面之一顯示單元。
該輸入/輸出器件440可提供用於一通用語言輸入方法編輯器206之輸入/輸出操作。通用語言輸入方法編輯器206可偵測使用者輸入並將轉譯輸入發送至應用程式,例如聊天應用程式(例如聊天視窗100)、文字編輯器或瀏覽器應用程式(例如文書處理器、電子郵件應用程式或網頁瀏覽器)、轉譯應用程式或能使用轉譯輸入之其他應用程式(例如包括聊天特徵之遊戲應用程式)。該通用語言輸入方法編輯器206包括諸如一轉譯模型209及一或多個語言模型210之組件。通用語言輸入方法編輯器206亦可使用用於更新及轉譯之伺服器。此類組件之範例包括一更新伺服器211及一轉譯伺服器212。可將此類組件209、210、211及212存留在儲存器件430、記憶體420中,或可在一網路連接上獲得,以提出一些範例。
本說明書所述之標的及功能操作之具體實施例可以係實施於數位電子電路中或電腦軟體、韌體或硬體(包括本說明書所揭示之結構及其結構等效物)中或其一或多個組合中。本說明書所述標的之具體實施例可以係實施為一或多個電腦程式產品,即編碼於一有形程式載體上以供資料處理裝置執行或用以控制資料處理裝置的操作之電腦程式指令之一或多個模組。該有形程式載體可以係一所傳播的信號或一電腦可讀取媒體。所傳播的信號係一人工產生的信號(例如,一由機器產生的信號)、光學或電磁信號,其係產生用以編碼用於向合適的接收器裝置傳輸以由一電腦來執行之資訊。該電腦可讀取媒體可為一機器可讀取儲存器件、一機器可讀取儲存基板、一記憶體器件、一使機器可讀取傳播信號作用之事項的組成物,或其一或多個之組合。
術語「資料處理裝置」涵蓋用以處理資料的所有裝置、器件及機器,舉例而言,包括可程式化處理器、電腦或多個處理器或電腦。除硬體外,該裝置還可包括針對所討論的電腦程式產生一執行環境的碼,例如組成處理器韌體、一協定堆疊、一資料庫管理系統、一作業系統或其一或多者之一組合的碼。
電腦程式(亦稱為程式、軟體、軟體應用程式、指令碼或碼)可以係寫為任何形式的程式化語言,包括編譯或解譯語言或者說明性或程序性語言,而且其可以係部署為任何形式,包括作為一獨立程式或作為一模組、組件、副常式或其他適合用於一計算環境的單元。一電腦程式不一定對應於在一檔案系統中之一檔案。一程式可儲存在一保持其他程式或資料(如一或多個儲存在標記語言文件中之指令碼)之檔案的一部分中,在專用於討論中之程式的單一檔案中,或在多個協同檔案(如,儲存一或多個模組、副程式,或碼之部分的檔案)中。一電腦程式可經部署成在一電腦或在位於一地點或橫跨多個地點而分散並藉由一通信網路互連的多個電腦上執行。
可藉由執行一或多個電腦程式以由對輸入資料進行操作及產生輸出來實行功能之一或多個可程式化處理器來實行本說明書所述之程序及邏輯流程。程序及邏輯流程亦可藉由(且裝置亦可實施為)專用邏輯電路執行,例如FPGA(場可程式化閘極陣列)或ASIC(應用特定積體電路)。
適用於執行一電腦程式之處理器包括(舉例而言)通用與專用微處理器兩者以及任何類型的數位電腦之任一或任何多個處理器。一般而言,一處理器將接收來自一唯讀記憶體或一隨機存取記憶體或兩者之指令及資料。一電腦之關鍵元件係一用以實行指令的處理器以及一或多個用以儲存指令與資料的記憶體器件。一般而言,一電腦亦將包括用於儲存資料之一或多個大量儲存器件(如磁性、磁光碟或光碟),或該電腦或可操作地耦合以從一或多個大量儲存器件接收資料或傳送資料至一或多個大量儲存器件或兩者。但是,電腦不必具有此類器件。此外,一電腦可以係嵌入另一器件(例如,一行動電話、一個人數位助理(PDA)、一行動音訊或視訊播放器、一遊戲主控台、一全球定位系統(GPS)接收器,等等)中。
適用於儲存電腦程式指令及資料之電腦可讀取媒體包括所有形式的非揮發性記憶體、媒體及記憶體器件,包括(舉例而言)半導體記憶體器件(如EPROM、EEPROM)及快閃記憶體器件;磁碟(如內部硬碟或可移除式碟片);磁光碟;及CD-ROM與DVD-ROM碟片。該處理器及該記憶體可以專用邏輯電路作為補充,或可以係併入專用邏輯電路中。
為提供與一使用者的互動,本說明書所述標的之具體實施例可以係實施於具有用以向該使用者顯示資訊之一顯示器件(例如,一CRT(陰極射線管)或LCD(液晶顯示器)監視器)以及一鍵盤及使用者可藉以向該電腦提供輸入的指標器件(例如,一滑鼠或軌跡球)的電腦上。還可使用其他類型的器件來提供與一使用者的互動;例如,向該使用者提供的回授可以係任何形式的感測回授,例如視覺回授、聽覺回授或觸覺回授;而來自該使用者的輸入可以係接收為任何形式,包括聲學、語音或觸覺輸入。
本說明書所述標的之具體實施例可以係實施於一計算系統中,該計算系統包括一後端組件(例如作為一資料伺服器),或包括一中間軟體組件(例如,一應用程式伺服器),或包括一前端組件(例如具有一圖形使用者介面或一網頁瀏覽器之一用戶端電腦,使用者可透過該圖形使用者介面或該網頁瀏覽器與本說明書所述標的之一實施方案互動),或包括此類後端、中間軟體或前端組件之一或多者之任何組合。該系統之組件可以係藉由數位資料通信(例如,一通信網路)的任何形式或媒體而互連。通信網路之範例包括一區域網路(「LAN」)與一諸如網際網路之類的廣域網路(「WAN」)。
該計算系統可包括用戶端與伺服器。一用戶端及伺服器一般係彼此遠離而且一般透過一通信網路來相互作用。用戶端與伺服器之關係憑藉運行於各別電腦上並且彼此具有一主從關係之電腦程式而出現。
儘管本說明書包含許多特定實施細節,但此等細節不應解釋為對任何發明或對可主張標的之範疇的限制,而應解釋為對特定發明之特定具體實施例可能特有的特徵之說明。本說明書中以分離的具體實施例為背景所說明之特定特徵還可以係組合實施於一單一的具體實施例中。相反,以一單一具體實施例為背景來說明之各種特徵還可以係分別或以任何合適的子組合實施於多個具體實施例中。此外,儘管上面可將各特徵說明為在特定組合中作用而且甚至最初係如此主張,但來自一所主張的組合之一或多個特徵在某些情況下可以係與該組合分離,而所主張的組合可以係關於一次組合或一次組合之變化。
同樣,儘管圖中以一特定順序來繪示各操作,但此不應理解為需要以所示的特定順序或以順序次序來實行此類操作,或實行所有圖解操作,來獲得所需結果。在特定情況下,多任務及平行處理可能有利。此外,上述具體實施例中的各種系統組件之分離不應理解為在所有具體實施例中皆需要此類分離,而應理解所說明的程式組件及系統一般可以係一起整合於一單一的軟體產品中或封裝成多個軟體產品。
已說明本說明書所述標的之特定具體實施例。其他具體實施例屬於隨附申請專利範圍之範疇內。例如,申請專利範圍中所述之動作可以係一不同順序來實行而仍然獲得所需結果。作為一範例,附圖所繪示之程序不一定需要所示之特定順序或順序次序來獲得所需結果。在特定情況實施方案中,多任務及平行處理可能有利。
100...應用程式介面/聊天視窗
110...顯示區域
120...使用者輸入區域
125...輸入
130...轉譯視窗
140...搜索領域
145...輸入
150...轉譯輸入區域
155...轉譯輸入
160...顯示控制
200...電腦系統
201...使用者
202...使用者介面
204...軟體
205...應用程式
206...通用語言輸入方法編輯器
207...作業系統
208...攔截模組
209...轉譯模型
210...語言模型
211...更新伺服器
212...轉譯伺服器
400...電腦系統
410...處理器
420...記憶體
430...儲存器件
440...輸入/輸出器件
450...系統匯流排
圖1係包括接收之轉譯輸入的一應用程式介面之一範例螢幕快照。
圖2顯示當偵測到輸入時用於將輸入轉譯至一應用程式介面內之一範例電腦系統之一概念方塊圖。
圖3顯示當偵測到輸入時用於將輸入轉譯至一應用程式介面內之一範例程序。
圖4係一一般電腦系統之一示意圖。
(無元件符號說明)
Claims (23)
- 一種由計算機執行的方法,其包括:在一包含一個或多個處理器之計算系統中,決定一使用者是否已提供輸入給在該計算系統端執行之一第一應用程式之一應用程式介面,該輸入係屬於一種來源語言;在該計算系統端截取到該第一應用程式之該應用程式介面之該輸入,該截取係藉由:施加一攔截(hook)於在該計算系統端之該第一應用程式與一作業系統之間之一介面,其中該攔截登錄其自己的位址作為用於一事件之一處理常式,使用該攔截以監控在該第一應用程式與該作業系統之間的該介面之呼叫,及使用該攔截以截取到該介面之一呼叫,該呼叫對應於該第一應用程式之該應用程式介面之該輸入;在該計算系統端將該輸入重新導向給在該計算系統端執行之一第二應用程式之一應用程式介面,該第二應用程式係不同於該第一應用程式;在該計算系統端使用該第二應用程式產生一個或多個該輸入的可能翻譯,該輸入的一個或多個可能翻譯的每一者都係屬於一目標語言,該目標語言係不同於該來源語言;在該計算系統端決定該輸入的該一個或多個可能翻譯之中的一者以獲得一已翻譯的輸入;及 在該計算系統端提供該已翻譯的輸入給該第一應用程式之該應用程式介面,其中截取到該第一應用程式之該應用程式介面之該輸入進一步包含:(i)當該使用者手動停用該第二應用程式時或當該第二應用程式不再受該使用者關注時,藉由呼叫該事件之一原始處理常式以未登錄(unregister)該攔截之該位址作為用於該事件之該處理常式,及發送已翻譯之該輸入至該事件之該原始處理常式,其中該事件之該原始處理常式係經組態以傳輸已翻譯之該輸入至該第二應用程式之該應用程式介面,及(ii)當該第二應用程式係再次受該使用者關注時或當該使用者重新起始該第二應用程式時,使用該攔截以重新攔截該介面。
- 如請求項1之由計算機執行的方法,進一步包含當該計算系統開機時,在該計算系統端載入該第二應用程式。
- 如請求項1之由計算機執行的方法,進一步包含在該計算系統端載入該第二應用程式以回應該使用者之一請求,該請求係經由該計算系統的一使用者介面輸入的。
- 如請求項1之由計算機執行的方法,其中該第二應用程式執行於比該第一應用程式較低的協定層上。
- 如請求項4之由計算機執行的方法,其中該呼叫係一系統呼叫和一應用程式編程介面(API)呼叫其中之一。
- 如請求項1之由計算機執行的方法,其中使用該第二應 用程式產生該一個或多個可能的翻譯進一步包含,在該計算系統端使用一語言模型對該一個或多個可能的翻譯中的每一個產生一可能性分數,每一個可能性分數都象徵一特定的可能翻譯係該輸入從該來源語言到該目標語言的一適合翻譯之一可能性。
- 如請求項6之由計算機執行的方法,其中使用該語言模型對該一個或多個可能翻譯中的每一者產生該可能性分數進一步包含:從該計算系統端傳送該輸入到一遠端伺服器,該遠端伺服器包含該語言模型;及在該計算系統端接收來自該遠端伺服器之該一個或多個可能的翻譯及其相應的可能性分數。
- 如請求項6之由計算機執行的方法,其中決定該輸入的該一個或多個可能翻譯中的該者進一步包含在該計算系統端從該一個或多個可能翻譯中選擇比該一個或多個可能翻譯中的其餘翻譯具有一較高可能性分數之一者,以獲得該已翻譯的輸入。
- 如請求項1之由計算機執行的方法,其中決定該輸入的該一個或多個可能翻譯中的該者,進一步包含經由使用者在該計算系統端接收該輸入之該一個或多個可能翻譯中的該者之一選擇,以獲得該已翻譯的輸入。
- 如請求項1之由計算機執行的方法,其進一步包含在該計算系統端之一顯示器上顯示該第一應用程式之一應用程式介面中該已翻譯的輸入。
- 如請求項10之方法,其中該第一應用程式係一用以傳送訊息或瀏覽網路之輸入方法編輯器(IME),及其中該已翻譯的輸入係顯示於該第一應用程式中的該應用程式介面中一傳送訊息輸入區、一搜尋輸入區、以及一網址(URL)的輸入區其中之一。
- 一種計算系統包括一個或多個處理器以及一使用者介面,該一個或多個處理器經組態以執行一種方法如下:決定一使用者是否已藉由該使用者介面提供輸入給在該計算系統端執行之一第一應用程式之一應用程式介面,該輸入係屬於一種來源語言;截取到該第一應用程式之該應用程式介面之該輸入,該截取係藉由:施加一攔截於在該計算系統端之一作業系統與該第一應用程式之間之一介面,其中該攔截登錄其自己的位址作為用於一事件之一處理常式,使用該攔截以監控在該第一應用程式與該作業系統之間的該介面之呼叫,及使用該攔截以截取到該介面之一呼叫,該呼叫對應於該第一應用程式之該輸入;將該輸入重新導向至在該計算系統端執行之一第二應用程式之一應用程式介面,該第二應用程式係不同於該第一應用程式;使用該第二應用程式產生該輸入的一個或多個可能翻譯,該輸入的該一個或多個可能翻譯中之每一者係屬於 一目標語言,該目標語言係不同於該來源語言;決定該一個或多個可能翻譯之一者以獲得一已翻譯的輸入;及提供該已翻譯的輸入到該第一應用程式之該應用程式介面,其中截取到該第一應用程式之該應用程式介面之該輸入進一步包含:(i)當該使用者手動停用該第二應用程式時或當該第二應用程式不再受該使用者關注時,藉由呼叫該事件之一原始處理常式以未登錄該攔截之該位址作為用於該事件之該處理常式,及發送已翻譯之該輸入至該事件之該原始處理常式,其中該事件之該原始處理常式係經組態以傳輸已翻譯之該輸入至該第二應用程式之該應用程式介面,及(ii)當該第二應用程式係再次受該使用者關注時或當該使用者重新起始該第二應用程式時,使用該攔截以重新攔截該介面。
- 如請求項12之計算系統,其中該方法進一步包含當該計算系統開機時載入該第二應用程式。
- 如請求項12之計算系統,其中該方法包含載入該第二應用程式以回應該使用者之一請求,該請求係經由該計算系統之該使用者介面輸入的。
- 如請求項12之計算系統,其中該第二應用程式執行於比該第一應用程式較低的協定層上。
- 如請求項15之計算系統,其中該呼叫係一系統呼叫和一應用程式編程介面(API)呼叫其中之一。
- 如請求項12之計算系統,其中使用該第二應用程式產生該一個或多個可能的翻譯進一步包含:使用一語言模型對該一個或多個可能的翻譯中的每一個產生一可能性分數,每一個可能性分數都象徵一特定的可能翻譯係從來源語言到目標語言的該輸入之一適合翻譯之一可能性。
- 如請求項17之計算系統,使用該語言模型對該一個或多個可能翻譯中的每一者產生該可能性分數進一步包含:傳送該輸入到一遠端伺服器,該遠端伺服器包含該語言模型;及接收來自該遠端伺服器之該一個或多個可能的翻譯及其相應的可能性分數。
- 如請求項17之計算系統,其中決定該輸入的該一個或多個可能翻譯中的該者以獲得該已翻譯之輸入進一步包含從該一個或多個可能翻譯中選擇比該一個或多個可能翻譯中的其餘可能翻譯具有一較高可能性分數之一者,以獲得該已翻譯的輸入。
- 如請求項12之計算系統,其中決定該輸入的該一個或多個可能翻譯中的該一者進一步包含經由使用者接收該輸入之該一個或多個可能翻譯中的該者之一選擇,以獲得該已翻譯的輸入。
- 如請求項12之計算系統,其中該方法進一步包含經由該計算系統端之一顯示器上顯示該第一應用程式之一應用 程式介面中該已翻譯的輸入。:
- 如請求項21之計算系統,其中該第一應用程式係一用以傳送訊息或瀏覽網路之輸入方法編輯器(IME),及其中該已翻譯的輸入係顯示於該第一應用程式中的該應用程式介面中一傳送訊息輸入區、一搜尋輸入區、以及一網址(URL)輸入區其中之一。
- 一種由計算機執行的方法,其包括:在包含一個或多個處理器之一計算系統端施加一攔截於一介面,該介面係位於在該計算系統上執行之一第一應用程式以及在該計算系統上執行之一作業系統之間,其中該攔截登錄其自己的位址作為用於一事件之一處理常式;在包含一個或多個處理器之該計算系統端決定一使用者是否已提供輸入給該第一應用程式之一應用程式介面,該輸入係屬於一種來源語言,該第一應用程式係一非語言翻譯應用程式;在該計算系統端使用該攔截,以經由監控在該第一應用程式及該作業系統之間的該介面決定一應用程式編程介面(API)呼叫,該API呼叫指出將給該第一應用程式之該輸入翻譯成一目標語言之請求,該目標語言係不同於該來源語言;在該計算系統端使用該攔截截取該API呼叫;在該計算系統端將該輸入重新導向至在該計算系統上執行之一第二應用程式之一應用程式介面,該第二應用 程式係一語言翻譯應用程式,該第二應用程式執行於比該第一應用程式較低的協定層上;在該計算系統端使用該第二應用程式產生該輸入的一個或多個可能翻譯,該輸入的該一個或多個可能翻譯中的每一者都係屬於該目標語言;在該計算系統端決定該輸入的該一個或多個可能翻譯之一者以獲得一已翻譯的輸入;以及在該計算系統提供該已翻譯的輸入給該第一應用程式之該應用程式介面,其中截取到該第一應用程式之該應用程式介面之該輸入進一步包含:(i)當該使用者手動停用該第二應用程式時或當該第二應用程式不再受該使用者關注時,藉由呼叫該事件之一原始處理常式以未登錄該攔截之該位址作為用於該事件之該處理常式,及發送已翻譯之該輸入至該事件之該原始處理常式,其中該事件之該原始處理常式係經組態以傳輸已翻譯之該輸入至該第二應用程式之該應用程式介面,及(ii)當該第二應用程式係再次受該使用者關注時或當該使用者重新起始該第二應用程式時,使用該攔截以重新攔截該介面。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/033,697 US8473276B2 (en) | 2008-02-19 | 2008-02-19 | Universal language input |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200947237A TW200947237A (en) | 2009-11-16 |
TWI470451B true TWI470451B (zh) | 2015-01-21 |
Family
ID=40933963
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW98105149A TWI470451B (zh) | 2008-02-19 | 2009-02-18 | 通用語言輸入 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8473276B2 (zh) |
EP (1) | EP2252944B1 (zh) |
KR (1) | KR101554295B1 (zh) |
CN (1) | CN102007493B (zh) |
TW (1) | TWI470451B (zh) |
WO (1) | WO2009108504A2 (zh) |
Families Citing this family (78)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2008193B1 (en) | 2006-04-05 | 2012-11-28 | Canyon IP Holdings LLC | Hosted voice recognition system for wireless devices |
US8510109B2 (en) | 2007-08-22 | 2013-08-13 | Canyon Ip Holdings Llc | Continuous speech transcription performance indication |
US8352264B2 (en) | 2008-03-19 | 2013-01-08 | Canyon IP Holdings, LLC | Corrective feedback loop for automated speech recognition |
US9973450B2 (en) | 2007-09-17 | 2018-05-15 | Amazon Technologies, Inc. | Methods and systems for dynamically updating web service profile information by parsing transcribed message strings |
US9053489B2 (en) | 2007-08-22 | 2015-06-09 | Canyon Ip Holdings Llc | Facilitating presentation of ads relating to words of a message |
US8296377B1 (en) | 2007-08-22 | 2012-10-23 | Canyon IP Holdings, LLC. | Facilitating presentation by mobile device of additional content for a word or phrase upon utterance thereof |
EP2120130A1 (en) * | 2008-05-11 | 2009-11-18 | Research in Motion Limited | Mobile electronic device and associated method enabling identification of previously entered data for transliteration of an input |
US20100082330A1 (en) * | 2008-09-29 | 2010-04-01 | Yahoo! Inc. | Multi-lingual maps |
US9824071B2 (en) * | 2008-12-03 | 2017-11-21 | Microsoft Technology Licensing, Llc | Viewing messages and message attachments in different languages |
US9323854B2 (en) * | 2008-12-19 | 2016-04-26 | Intel Corporation | Method, apparatus and system for location assisted translation |
JP2010176543A (ja) * | 2009-01-30 | 2010-08-12 | Toshiba Corp | 翻訳装置、方法、及びプログラム |
GB0917753D0 (en) | 2009-10-09 | 2009-11-25 | Touchtype Ltd | System and method for inputting text into electronic devices |
US9189472B2 (en) | 2009-03-30 | 2015-11-17 | Touchtype Limited | System and method for inputting text into small screen devices |
US9424246B2 (en) | 2009-03-30 | 2016-08-23 | Touchtype Ltd. | System and method for inputting text into electronic devices |
US10191654B2 (en) | 2009-03-30 | 2019-01-29 | Touchtype Limited | System and method for inputting text into electronic devices |
GB0905457D0 (en) * | 2009-03-30 | 2009-05-13 | Touchtype Ltd | System and method for inputting text into electronic devices |
EP2452252A1 (en) * | 2009-07-09 | 2012-05-16 | Eliyahu Mashiah | Content sensitive system and method for automatic input language selection |
US20110087962A1 (en) * | 2009-10-14 | 2011-04-14 | Qualcomm Incorporated | Method and apparatus for the automatic predictive selection of input methods for web browsers |
US8682640B2 (en) * | 2009-11-25 | 2014-03-25 | International Business Machines Corporation | Self-configuring language translation device |
KR101301536B1 (ko) * | 2009-12-11 | 2013-09-04 | 한국전자통신연구원 | 외국어 작문 서비스 방법 및 시스템 |
US11416214B2 (en) | 2009-12-23 | 2022-08-16 | Google Llc | Multi-modal input on an electronic device |
EP4318463A3 (en) * | 2009-12-23 | 2024-02-28 | Google LLC | Multi-modal input on an electronic device |
US20110184723A1 (en) * | 2010-01-25 | 2011-07-28 | Microsoft Corporation | Phonetic suggestion engine |
WO2011136768A1 (en) * | 2010-04-29 | 2011-11-03 | Hewlett-Packard Development Company, L.P. | Processing content in a plurality of languages |
US8380487B2 (en) * | 2010-06-21 | 2013-02-19 | International Business Machines Corporation | Language translation of selected content in a web conference |
CN102339280A (zh) * | 2010-07-27 | 2012-02-01 | 英业达股份有限公司 | 翻译词汇的显示系统及其显示方法 |
US8463592B2 (en) | 2010-07-27 | 2013-06-11 | International Business Machines Corporation | Mode supporting multiple language input for entering text |
US9400585B2 (en) * | 2010-10-05 | 2016-07-26 | Citrix Systems, Inc. | Display management for native user experiences |
WO2012082005A1 (en) * | 2010-12-13 | 2012-06-21 | Google Inc. | Remotely updated toolbar language translation service |
US8352245B1 (en) | 2010-12-30 | 2013-01-08 | Google Inc. | Adjusting language models |
US8296142B2 (en) | 2011-01-21 | 2012-10-23 | Google Inc. | Speech recognition using dock context |
US9015030B2 (en) * | 2011-04-15 | 2015-04-21 | International Business Machines Corporation | Translating prompt and user input |
CN102789451B (zh) * | 2011-05-16 | 2015-06-03 | 北京百度网讯科技有限公司 | 一种个性化的机器翻译系统、方法及训练翻译模型的方法 |
EP2783300A4 (en) * | 2011-11-25 | 2015-12-23 | Google Inc | PROVISION OF TRANSLATION SUPPORT IN THE LOCALIZATION OF APPLICATIONS |
US9348479B2 (en) | 2011-12-08 | 2016-05-24 | Microsoft Technology Licensing, Llc | Sentiment aware user interface customization |
US9378290B2 (en) * | 2011-12-20 | 2016-06-28 | Microsoft Technology Licensing, Llc | Scenario-adaptive input method editor |
US9436291B2 (en) * | 2012-04-13 | 2016-09-06 | Texas Instruments Incorporated | Method, system and computer program product for operating a keyboard |
CN110488991A (zh) | 2012-06-25 | 2019-11-22 | 微软技术许可有限责任公司 | 输入法编辑器应用平台 |
US20150106702A1 (en) * | 2012-06-29 | 2015-04-16 | Microsoft Corporation | Cross-Lingual Input Method Editor |
JP6066265B2 (ja) * | 2012-07-31 | 2017-01-25 | 株式会社リコー | 画像表示装置 |
US8959109B2 (en) | 2012-08-06 | 2015-02-17 | Microsoft Corporation | Business intelligent in-document suggestions |
KR101911999B1 (ko) | 2012-08-30 | 2018-10-25 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | 피처 기반 후보 선택 기법 |
WO2014108208A1 (en) * | 2013-01-11 | 2014-07-17 | Qatar Foundation | System and method of machine translation |
CN103279264A (zh) * | 2013-05-03 | 2013-09-04 | 富泰华工业(深圳)有限公司 | 电子装置及其输入操作管理方法 |
US9430465B2 (en) * | 2013-05-13 | 2016-08-30 | Facebook, Inc. | Hybrid, offline/online speech translation system |
CN104298491B (zh) * | 2013-07-18 | 2019-10-08 | 腾讯科技(深圳)有限公司 | 消息处理方法及装置 |
WO2015018055A1 (en) * | 2013-08-09 | 2015-02-12 | Microsoft Corporation | Input method editor providing language assistance |
US9842592B2 (en) | 2014-02-12 | 2017-12-12 | Google Inc. | Language models using non-linguistic context |
US9412365B2 (en) | 2014-03-24 | 2016-08-09 | Google Inc. | Enhanced maximum entropy models |
US9740687B2 (en) | 2014-06-11 | 2017-08-22 | Facebook, Inc. | Classifying languages for objects and entities |
US9864744B2 (en) | 2014-12-03 | 2018-01-09 | Facebook, Inc. | Mining multi-lingual data |
US10067936B2 (en) | 2014-12-30 | 2018-09-04 | Facebook, Inc. | Machine translation output reranking |
US9830386B2 (en) | 2014-12-30 | 2017-11-28 | Facebook, Inc. | Determining trending topics in social media |
US9830404B2 (en) | 2014-12-30 | 2017-11-28 | Facebook, Inc. | Analyzing language dependency structures |
US9787529B1 (en) * | 2015-01-16 | 2017-10-10 | Juniper Networks, Inc. | Systems and methods for tunneling socket calls across operating systems |
US9477652B2 (en) | 2015-02-13 | 2016-10-25 | Facebook, Inc. | Machine learning dialect identification |
US10134394B2 (en) | 2015-03-20 | 2018-11-20 | Google Llc | Speech recognition using log-linear model |
US9734142B2 (en) * | 2015-09-22 | 2017-08-15 | Facebook, Inc. | Universal translation |
US10133738B2 (en) | 2015-12-14 | 2018-11-20 | Facebook, Inc. | Translation confidence scores |
US9734143B2 (en) | 2015-12-17 | 2017-08-15 | Facebook, Inc. | Multi-media context language processing |
US10002125B2 (en) | 2015-12-28 | 2018-06-19 | Facebook, Inc. | Language model personalization |
US9805029B2 (en) | 2015-12-28 | 2017-10-31 | Facebook, Inc. | Predicting future translations |
US9747283B2 (en) | 2015-12-28 | 2017-08-29 | Facebook, Inc. | Predicting future translations |
US9978367B2 (en) | 2016-03-16 | 2018-05-22 | Google Llc | Determining dialog states for language models |
GB201610984D0 (en) | 2016-06-23 | 2016-08-10 | Microsoft Technology Licensing Llc | Suppression of input images |
US10902215B1 (en) | 2016-06-30 | 2021-01-26 | Facebook, Inc. | Social hash for language models |
US10902221B1 (en) | 2016-06-30 | 2021-01-26 | Facebook, Inc. | Social hash for language models |
US10832664B2 (en) | 2016-08-19 | 2020-11-10 | Google Llc | Automated speech recognition using language models that selectively use domain-specific model components |
US10180935B2 (en) | 2016-12-30 | 2019-01-15 | Facebook, Inc. | Identifying multiple languages in a content item |
US10311860B2 (en) | 2017-02-14 | 2019-06-04 | Google Llc | Language model biasing system |
CN107179837B (zh) * | 2017-05-11 | 2020-11-06 | 北京小米移动软件有限公司 | 输入方法及装置 |
CN109598001A (zh) * | 2017-09-30 | 2019-04-09 | 阿里巴巴集团控股有限公司 | 一种信息显示方法、装置及设备 |
US10380249B2 (en) | 2017-10-02 | 2019-08-13 | Facebook, Inc. | Predicting future trending topics |
CN109040428A (zh) * | 2018-07-03 | 2018-12-18 | 深圳天珑无线科技有限公司 | 一种信息处理交互方法、通讯设备及计算机存储介质 |
CN109739664B (zh) * | 2018-12-29 | 2021-05-18 | 联想(北京)有限公司 | 信息处理方法、装置、电子设备和介质 |
CN109979461B (zh) * | 2019-03-15 | 2022-02-25 | 科大讯飞股份有限公司 | 一种语音翻译方法及装置 |
US11842165B2 (en) * | 2019-08-28 | 2023-12-12 | Adobe Inc. | Context-based image tag translation |
US20230229869A1 (en) * | 2022-01-20 | 2023-07-20 | Vmware, Inc. | Local input method for remote desktops |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5392386A (en) * | 1994-02-03 | 1995-02-21 | Inter Hi-Tec Ag | Method and apparatus for adding functionality to computer programs executing under graphical user interfaces |
US20030233222A1 (en) * | 2002-03-26 | 2003-12-18 | Radu Soricut | Statistical translation using a large monolingual corpus |
TW200515175A (en) * | 2003-10-24 | 2005-05-01 | Microsoft Corp | Programming interface for a computer platform |
TW200625157A (en) * | 2004-12-29 | 2006-07-16 | Delta Electronics Inc | Interactive entertainment center |
US7318020B1 (en) * | 2003-10-08 | 2008-01-08 | Microsoft Corporation | Methods and systems for external localization |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1995017729A1 (en) * | 1993-12-22 | 1995-06-29 | Taligent, Inc. | Input methods framework |
US5974372A (en) * | 1996-02-12 | 1999-10-26 | Dst Systems, Inc. | Graphical user interface (GUI) language translator |
US6092036A (en) * | 1998-06-02 | 2000-07-18 | Davox Corporation | Multi-lingual data processing system and system and method for translating text used in computer software utilizing an embedded translator |
JP2003529845A (ja) * | 2000-03-31 | 2003-10-07 | アミカイ・インコーポレイテッド | ネットワーク経由の多言語翻訳を提供する方法と装置 |
CN1391180A (zh) * | 2001-06-11 | 2003-01-15 | 国际商业机器公司 | 外语写作辅助方法和辅助工具 |
CN1421804A (zh) | 2001-11-30 | 2003-06-04 | 英业达股份有限公司 | 不同语言的词汇处理系统与方法 |
US7383542B2 (en) * | 2003-06-20 | 2008-06-03 | Microsoft Corporation | Adaptive machine translation service |
US7539619B1 (en) * | 2003-09-05 | 2009-05-26 | Spoken Translation Ind. | Speech-enabled language translation system and method enabling interactive user supervision of translation and speech recognition accuracy |
DE10348920A1 (de) | 2003-10-21 | 2005-05-25 | Bayer Materialscience Ag | Computersystem und Verfahren zur mehrsprachigen assoziativen Suche |
US7983897B2 (en) * | 2007-02-14 | 2011-07-19 | Google Inc. | Machine translation feedback |
CN101072168B (zh) | 2007-06-22 | 2011-11-02 | 腾讯科技(深圳)有限公司 | 一种多语言即时通讯终端及其系统和方法 |
-
2008
- 2008-02-19 US US12/033,697 patent/US8473276B2/en active Active
-
2009
- 2009-02-11 CN CN200980113212.8A patent/CN102007493B/zh active Active
- 2009-02-11 EP EP09715783.8A patent/EP2252944B1/en active Active
- 2009-02-11 KR KR1020107018453A patent/KR101554295B1/ko active IP Right Grant
- 2009-02-11 WO PCT/US2009/033834 patent/WO2009108504A2/en active Application Filing
- 2009-02-18 TW TW98105149A patent/TWI470451B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5392386A (en) * | 1994-02-03 | 1995-02-21 | Inter Hi-Tec Ag | Method and apparatus for adding functionality to computer programs executing under graphical user interfaces |
US20030233222A1 (en) * | 2002-03-26 | 2003-12-18 | Radu Soricut | Statistical translation using a large monolingual corpus |
US7318020B1 (en) * | 2003-10-08 | 2008-01-08 | Microsoft Corporation | Methods and systems for external localization |
TW200515175A (en) * | 2003-10-24 | 2005-05-01 | Microsoft Corp | Programming interface for a computer platform |
TW200625157A (en) * | 2004-12-29 | 2006-07-16 | Delta Electronics Inc | Interactive entertainment center |
Also Published As
Publication number | Publication date |
---|---|
US20090210214A1 (en) | 2009-08-20 |
KR101554295B1 (ko) | 2015-09-18 |
CN102007493B (zh) | 2014-09-03 |
CN102007493A (zh) | 2011-04-06 |
EP2252944B1 (en) | 2014-08-27 |
WO2009108504A2 (en) | 2009-09-03 |
KR20100125257A (ko) | 2010-11-30 |
TW200947237A (en) | 2009-11-16 |
US8473276B2 (en) | 2013-06-25 |
WO2009108504A3 (en) | 2009-10-22 |
EP2252944A2 (en) | 2010-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI470451B (zh) | 通用語言輸入 | |
US20230336505A1 (en) | Initializing a conversation with an automated agent via selectable graphical element | |
US11726736B2 (en) | System to facilitate interaction during a collaborative screen sharing session | |
KR102033198B1 (ko) | 제스처 또는 터치를 통해 사용자 인터페이스를 제어하는 최적화 기법 | |
US9635138B2 (en) | Client-server input method editor architecture | |
US20180060312A1 (en) | Providing ideogram translation | |
US9009030B2 (en) | Method and system for facilitating text input | |
US9043300B2 (en) | Input method editor integration | |
KR20200011123A (ko) | 어플리케이션의 내용 분석을 통해 사용자 접근을 제어하는 방법 및 시스템 | |
GB2557400A (en) | Voice to text conversion based on third-party agent content | |
US11321153B1 (en) | Contextual copy and paste across multiple devices | |
KR20220127319A (ko) | 계산적으로 낭비되는 애플리케이션 실행 동작을 완화하기 위해 애플리케이션 콘텐츠에 기초하여 통지를 제공할지 여부 및/또는 시기를 결정 | |
US11935530B2 (en) | Multimodal responses | |
US12032874B2 (en) | Automated assistant performance of a non-assistant application operation(s) in response to a user input that can be limited to a parameter(s) | |
US20200075002A1 (en) | Multimodal responses | |
US11568869B2 (en) | Low latency automated identification of automated assistant function failure | |
JP2015141540A (ja) | 情報処理装置、文言関連付け提示システム及び情報処理プログラム | |
US8935343B2 (en) | Instant messaging network resource validation | |
US20240256533A1 (en) | Semantic parsing using embedding space representations of example natural language queries | |
US20210034946A1 (en) | Recognizing problems in productivity flow for productivity applications |