特許第6653301号(P6653301)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ エム・ゼット・アイ・ピィ・ホールディングス・リミテッド・ライアビリティ・カンパニーの特許一覧

特許6653301マルチユーザ多言語通信のためのシステムおよび方法
<>
  • 特許6653301-マルチユーザ多言語通信のためのシステムおよび方法 図000003
  • 特許6653301-マルチユーザ多言語通信のためのシステムおよび方法 図000004
  • 特許6653301-マルチユーザ多言語通信のためのシステムおよび方法 図000005
  • 特許6653301-マルチユーザ多言語通信のためのシステムおよび方法 図000006
  • 特許6653301-マルチユーザ多言語通信のためのシステムおよび方法 図000007
  • 特許6653301-マルチユーザ多言語通信のためのシステムおよび方法 図000008
  • 特許6653301-マルチユーザ多言語通信のためのシステムおよび方法 図000009
  • 特許6653301-マルチユーザ多言語通信のためのシステムおよび方法 図000010
  • 特許6653301-マルチユーザ多言語通信のためのシステムおよび方法 図000011
  • 特許6653301-マルチユーザ多言語通信のためのシステムおよび方法 図000012
  • 特許6653301-マルチユーザ多言語通信のためのシステムおよび方法 図000013
  • 特許6653301-マルチユーザ多言語通信のためのシステムおよび方法 図000014
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6653301
(24)【登録日】2020年1月29日
(45)【発行日】2020年2月26日
(54)【発明の名称】マルチユーザ多言語通信のためのシステムおよび方法
(51)【国際特許分類】
   G06F 40/47 20200101AFI20200217BHJP
   G06F 40/258 20200101ALI20200217BHJP
   G06F 40/274 20200101ALI20200217BHJP
   G06F 40/151 20200101ALI20200217BHJP
   G06F 40/58 20200101ALI20200217BHJP
   G06F 40/232 20200101ALI20200217BHJP
   G06F 13/00 20060101ALI20200217BHJP
【FI】
   G06F17/28 636
   G06F17/27 650
   G06F17/27 665
   G06F17/22 664
   G06F17/28 690
   G06F17/27 630
   G06F13/00 650B
   G06F13/00 540T
【請求項の数】20
【外国語出願】
【全頁数】40
(21)【出願番号】特願2017-195070(P2017-195070)
(22)【出願日】2017年10月5日
(62)【分割の表示】特願2015-557182(P2015-557182)の分割
【原出願日】2014年2月10日
(65)【公開番号】特開2018-41474(P2018-41474A)
(43)【公開日】2018年3月15日
【審査請求日】2017年11月1日
(31)【優先権主張番号】13/763,565
(32)【優先日】2013年2月8日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】518230843
【氏名又は名称】エム・ゼット・アイ・ピィ・ホールディングス・リミテッド・ライアビリティ・カンパニー
【氏名又は名称原語表記】MZ IP HOLDINGS, LLC
(74)【代理人】
【識別番号】110001195
【氏名又は名称】特許業務法人深見特許事務所
(72)【発明者】
【氏名】レイドン,ガブリエル
(72)【発明者】
【氏名】オルシーニ,フランソワ
(72)【発明者】
【氏名】ボッジャ,ニキル
(72)【発明者】
【氏名】カルル,シャイレン
【審査官】 小林 義晴
(56)【参考文献】
【文献】 特表2003−529845(JP,A)
【文献】 特開2010−129057(JP,A)
【文献】 特開2006−277103(JP,A)
【文献】 米国特許出願公開第2004/0267527(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 17/28
G06F 13/00
G06F 17/22
G06F 17/27
(57)【特許請求の範囲】
【請求項1】
1つ以上のコンピュータプロセッサを使用する方法であって、
チャットシステムから第1の言語での第1のメッセージを受信することと、
データストアが第2の言語での第1の対応するメッセージを含んでいないと決定することとを含み、
前記第1の対応するメッセージは、前記第1のメッセージの翻訳を含んでおり、
それに基づき、さらに、
変換モジュールのシーケンスにおける第1の変換モジュールに前記第1のメッセージを提供することを含み、
前記シーケンスにおける各その後の変換モジュールは、前記シーケンスにおける直前の変換モジュールの出力を入力として受け付けるとともに、それぞれの変換されたメッセージを出力として提供するように構成されており、
前記シーケンスにおける少なくとも1つの変換モジュールは、前記少なくとも1つの変換モジュールの出力の少なくとも一部分を、前記シーケンスにおけるその後の変換モジュールによって変換されるべきでないものとして識別するように構成されており、
前記シーケンスにおける最終の変換モジュールの出力は、前記第1の言語での変換されたメッセージを含んでおり、
さらに、
前記第2の言語での第2の対応するメッセージについて前記データストアに照会することを含み、
前記第2の対応するメッセージは、前記変換されたメッセージの翻訳を含む、方法。
【請求項2】
前記データストアが前記第2の対応するメッセージを含んでいない場合、前記変換されたメッセージは、前記第2の言語での第3の対応するメッセージに翻訳される、請求項1に記載の方法。
【請求項3】
前記変換モジュールが前記第1のメッセージの少なくとも一部分を変換しない場合、前記第1のメッセージは、前記第2の言語での第3の対応するメッセージに翻訳される、請求項1に記載の方法。
【請求項4】
1つ以上の変換モジュールは、(i)前記第1のメッセージにおけるチャット用語の単語または句を識別し、(ii)前記チャット用語の単語または句を、チャット用語でない単語または句で置換するように構成される、請求項1に記載の方法。
【請求項5】
1つ以上の変換モジュールは、前記第1のメッセージに対してスペルチェックを行なうように構成される、請求項1に記載の方法。
【請求項6】
1つ以上の変換モジュールは、(i)前記第1のメッセージにおける略語を識別し、(ii)前記略語を、前記略語に対応する単語または句で置換するように構成される、請求項1に記載の方法。
【請求項7】
1つ以上の変換モジュールは、(i)前記第1のメッセージにおける頭字語を識別し、(ii)前記頭字語を、前記頭字語に対応する単語または句で置換するように構成される、請求項1に記載の方法。
【請求項8】
1つ以上の変換モジュールは、(i)前記第1のメッセージにおける口語的な単語または句を識別し、(ii)前記口語的な単語または句を、前記口語的な単語または句を表わす非口語的な単語または句で置換するように構成される、請求項1に記載の方法。
【請求項9】
1つ以上の変換モジュールは、(i)前記第1のメッセージにおける卑罵的な単語もしくは句を識別し、(ii)前記卑罵的な単語もしくは句を、卑罵的でない単語もしくは句で置換するか、または前記卑罵的な単語もしくは句を除去するように構成される、請求項1に記載の方法。
【請求項10】
前記第1のメッセージは、テキスト、顔文字、および、より大きなメッセージの一部のうちの1つを含む、請求項1に記載の方法。
【請求項11】
システムであって、
1つ以上のコンピュータプロセッサを含み、
前記1つ以上のコンピュータプロセッサは、
チャットシステムから第1の言語での第1のメッセージを受信することと、
データストアが第2の言語での第1の対応するメッセージを含んでいないと決定することとを含む動作を行なうようにプログラムされており、
前記第1の対応するメッセージは、前記第1のメッセージの翻訳を含んでおり、
それに基づき、さらに、
変換モジュールのシーケンスにおける第1の変換モジュールに前記第1のメッセージを提供することを含む動作を行なうようにプログラムされており、
前記シーケンスにおける各その後の変換モジュールは、前記シーケンスにおける直前の変換モジュールの出力を入力として受け付けるとともに、それぞれの変換されたメッセージを出力として提供するように構成されており、
前記シーケンスにおける少なくとも1つの変換モジュールは、前記少なくとも1つの変換モジュールの出力の少なくとも一部分を、前記シーケンスにおけるその後の変換モジュールによって変換されるべきでないものとして識別するように構成されており、
前記シーケンスにおける最終の変換モジュールの出力は、前記第1の言語での変換されたメッセージを含んでおり、
さらに、
前記第2の言語での第2の対応するメッセージについて前記データストアに照会することを含む動作を行なうようにプログラムされており、
前記第2の対応するメッセージは、前記変換されたメッセージの翻訳を含む、システム。
【請求項12】
前記データストアが前記第2の対応するメッセージを含んでいない場合、前記変換されたメッセージは、前記第2の言語での第3の対応するメッセージに翻訳される、請求項11に記載のシステム。
【請求項13】
前記変換モジュールが前記第1のメッセージの少なくとも一部分を変換しない場合、前記第1のメッセージは、前記第2の言語での第3の対応するメッセージに翻訳される、請求項11に記載のシステム。
【請求項14】
1つ以上の変換モジュールは、(i)前記第1のメッセージにおけるチャット用語の単語または句を識別し、(ii)前記チャット用語の単語または句を、チャット用語でない単語または句で置換するように構成される、請求項11に記載のシステム。
【請求項15】
1つ以上の変換モジュールは、前記第1のメッセージに対してスペルチェックを行なうように構成される、請求項11に記載のシステム。
【請求項16】
1つ以上の変換モジュールは、(i)前記第1のメッセージにおける略語を識別し、(ii)前記略語を、前記略語に対応する単語または句で置換するように構成される、請求項11に記載のシステム。
【請求項17】
1つ以上の変換モジュールは、(i)前記第1のメッセージにおける頭字語を識別し、(ii)前記頭字語を、前記頭字語に対応する単語または句で置換するように構成される、請求項11に記載のシステム。
【請求項18】
1つ以上の変換モジュールは、(i)前記第1のメッセージにおける口語的な単語または句を識別し、(ii)前記口語的な単語または句を、前記口語的な単語または句を表わす非口語的な単語または句で置換するように構成される、請求項11に記載のシステム。
【請求項19】
1つ以上の変換モジュールは、(i)前記第1のメッセージにおける卑罵的な単語もしくは句を識別し、(ii)前記卑罵的な単語もしくは句を、卑罵的でない単語もしくは句で置換するか、または前記卑罵的な単語もしくは句を除去するように構成される、請求項11に記載のシステム。
【請求項20】
物品であって、
命令を格納する一時的でないコンピュータ読取可能媒体を含み、
前記命令は、1つ以上のコンピュータプロセッサによって実行されると、前記コンピュータプロセッサに、
チャットシステムから第1の言語での第1のメッセージを受信することと、
データストアが第2の言語での第1の対応するメッセージを含んでいないと決定することとを含む動作を行わせ、
前記第1の対応するメッセージは、前記第1のメッセージの翻訳を含んでおり、
それに基づき、さらに、
変換モジュールのシーケンスにおける第1の変換モジュールに前記第1のメッセージを提供することを含む動作を行わせ、
前記シーケンスにおける各その後の変換モジュールは、前記シーケンスにおける直前の変換モジュールの出力を入力として受け付けるとともに、それぞれの変換されたメッセージを出力として提供するように構成されており、
前記シーケンスにおける少なくとも1つの変換モジュールは、前記少なくとも1つの変換モジュールの出力の少なくとも一部分を、前記シーケンスにおけるその後の変換モジュールによって変換されるべきでないものとして識別するように構成されており、
前記シーケンスにおける最終の変換モジュールの出力は、前記第1の言語での変換されたメッセージを含んでおり、
さらに、
前記第2の言語での第2の対応するメッセージについて前記データストアに照会することを含む動作を行わせ、
前記第2の対応するメッセージは、前記変換されたメッセージの翻訳を含む、物品。
【発明の詳細な説明】
【背景技術】
【0001】
背景
1.技術分野
本発明は、概して通信、より特定的には複数ユーザおよび複数言語を含む世界中での通信に関する。
【0002】
2.関連する技術の説明
機械ベースの言語翻訳(以下「機械翻訳」)の出現前は、2言語間の翻訳は、両方の言語の教育を受けた人間による介入または通訳によってのみ可能であった。対照的に、典型的な機械翻訳機は、通常は人間の介入/通訳の必要なしに、コンテキストおよび文法の統計的/確率的解析に基づいて動作する。
【0003】
典型的な機械翻訳は、多くの場合、特に翻訳されるべきテキストが最小のコンテキストを有する場合、エラーを起こしがちである。最小のコンテキストを有するテキストは、簡潔な文章構造を採用する会話に見られることが多い。加えて、機械翻訳は、略語、頭字語、縮小形、口語的な単語/句、固有名詞、および普通名詞が問題になることが多い。これらは一般に会話型テキストにも見られる。
【発明の概要】
【課題を解決するための手段】
【0004】
概要
本明細書に記載される様々な実施形態は、場合によっては2つ以上のクライアントシステムにいる複数ユーザ間の多言語通信に関連するシステムおよび方法を提供する。実施形態によって円滑化される通信のモードは、インターネットベースのチャット(たとえばApple(登録商標)iMessage(登録商標)、Windows(登録商標)Live Messenger等)、電子メール(たとえば組込みフォーラムメッセージング、Yahoo(登録商標)メール、RFC 5322等)、テキストベースの携帯電話通信(たとえばSMSメッセージまたはMMSメッセ
ージ)、オンラインフォーラムへの投稿(たとえばウェブベースの趣味フォーラムへの投稿)、およびオンラインソーシャルメディアサービス(たとえばTwitter(登録商標)、Facebook(登録商標)等)への投稿を含み得る。たとえば、システムおよび方法は、多言
語マルチユーザチャットシステムを実現し得る。
【0005】
いくつかの実施形態について、提供される方法は、第1の言語と第2の言語とを識別することと、第1の言語で通信する第1のチャットクライアントシステムにおける第1の人間から、第1の言語での初期メッセージを受信することと、第1の言語での初期メッセージに基づく、第2の言語での第1の対応するメッセージについてデータストアに照会することとを含む。データストアが第1の対応するメッセージを含む場合、当該方法は、第2の言語で通信する第2のチャットクライアントシステムにおける第2の人間に対応するメッセージを送信することを支援する。実施形態に応じて、初期メッセージは、テキスト、顔文字、ASCIIベースアート、またはネットワーク上で送信される人間によって読取り可
能なメッセージに好適であるかもしくは慣例的な他のコンテンツを含み得る。加えて、初期メッセージは、チャットクライアントシステム間で通信されているより大きなメッセージの一部であり得る(たとえば初期メッセージはマルチセンテンスメッセージ中の一文である)。
【0006】
データストアが第1の対応するメッセージを含まない場合、当該方法は、変換エンジンを利用して、初期メッセージの少なくとも一部分を第1の言語での変換されたメッセージ
に変換することを試み得る。変換されたメッセージを用いて、当該方法は、変換されたメッセージに基づく、第2の言語での第2の対応するメッセージについてデータストアに照会し得る。
【0007】
ある実施形態について、当該システムまたは方法は、変換されたメッセージに基づく第2の対応するメッセージについてデータストアに照会する前に、一連の変換動作を用いて初期メッセージを変換することを試み得る。代替的に、いくつかの実施形態では、当該システムまたは方法は、変換および照会を反復して行なってもよく、それにより初期メッセージは、利用可能な変換動作のサブセットを用いて変換され、結果として得られる変換されたメッセージに基づく第2の対応するメッセージについてデータストアが照会され、第2の対応するメッセージが識別されない場合は、変換および照会の別の反復が行なわれる(たとえば、結果として得られる変換されたメッセージが、利用可能な変換動作の別のサブセットを用いてさらに変換され、結果として得られる変換されたメッセージに基づく第2の対応するメッセージについてデータストアが照会される)。いくつかのそのような実施形態では、各反復において適用される変換動作のサブセットが、初期メッセージに適用されてもよいし、または結果として得られる最新の変換されたメッセージに適用されてもよい。
【0008】
最終的に、当該方法は、初期メッセージまたは変換されたメッセージを第2の言語での対応するメッセージに翻訳することを支援し得る。いくつかの実施形態では、初期メッセージについての第1の対応するメッセージがデータストアになく、変換エンジンが初期メッセージの少なくとも一部分を変換しない時、初期メッセージは対応するメッセージに翻訳され得る。加えて、様々な実施形態では、初期メッセージについての第1の対応するメッセージがデータストアにない時、変換エンジンが初期メッセージの少なくとも一部分の変換を含む変換されたメッセージをもたらす時、および変換されたメッセージについて第2の対応するメッセージをデータストアが含まない時、変換されたメッセージは対応するメッセージに翻訳され得る。
【0009】
実施形態に応じて、初期メッセージの一部分を変換することは、初期メッセージ中のチャット用語の単語もしくは句(たとえば”lol”,”gr8t”)を識別し、チャット用語の
単語もしくは句をチャット用語でない単語もしくは句で置換すること、初期メッセージの一部分に対してスペルチェックを行なうこと、または初期メッセージの一部分における略語を識別し、略語を略語に対応する(たとえば略語によって表される)単語もしくは句で(たとえば”CA”を”California”で、または”brb”を”be right back”で)置換することを含み得る。
【0010】
その上、初期メッセージの一部分を変換することは、初期メッセージの一部分における頭字語を識別し、頭字語を頭字語(たとえば”USA”)に対応する(たとえば頭字語によ
って表される)単語もしくは句で置換すること、または初期メッセージの一部分の口語的な単語もしくは句を識別し、口語的な単語もしくは句を口語的な単語もしくは句を表わす単語もしくは句で置換することを含み得る。さらに、初期メッセージの一部分を変換することは、初期メッセージの一部分における卑罵的な単語もしくは句を識別し、卑罵的な単語もしくは句を(たとえば卑罵的な単語もしくは句を表す)卑罵的でない単語もしくは句で置換すること、または初期メッセージから卑罵的な単語もしくは句を除去することを含み得る。
【0011】
いくつかの実施形態について、初期メッセージの一部分を変換することは、翻訳されないよう初期メッセージの一部分にフラグを立てることを含む。たとえば、初期メッセージのある部分は、固有名詞、普通名詞、縮小形、略語、または頭字語を含み、当該方法は、後続の動作で翻訳されないように、当該ある部分にフラグを立て得る。
【0012】
ある実施形態は、本明細書に記載される様々な動作を行なうように構成された様々なコンポーネントを含むシステムを提供する。同様に、ある実施形態は、本明細書に記載される様々な動作をコンピュータシステムに行なわせるように構成されたコンピュータ命令コードを含むコンピュータプログラムプロダクトを提供する。
【0013】
様々な実施形態の他の特徴および局面は、添付図面に関連して読まれると、以下の詳細な説明から明らかとなるであろう。添付図面は、例として、そのような実施形態の特徴を例示する。
【0014】
図面の簡単な説明
様々な実施形態が以下の図を参照して詳細に説明される。図面は例示のみを目的として提供され、いくつかの実施形態を描写するにすぎない。これらの図面は、実施形態の幅、範囲または適用可能性を限定するものとは見なされるべきではない。
【図面の簡単な説明】
【0015】
図1】様々な実施形態に係る多言語通信システムを利用した典型的な環境を例示するブロック図である。
図2】様々な実施形態に係る典型的な通信変換および翻訳システムを例示するブロック図である。
図3】様々な実施形態に係る典型的な変換モジュールを例示するブロック図である。
図4】様々な実施形態に係る典型的なチャットクライアントシステムを例示するブロック図である。
図5】様々な実施形態に係る多言語通信の典型的な方法を例示するフローチャートである。
図6】様々な実施形態に係る通信を変換する典型的な方法を例示するフローチャートである。
図7】様々な実施形態に係るチャットクライアントシステム間の典型的な多言語チャットセッションを例示する図である。
図8】様々な実施形態に係る典型的な多言語通信方法の動作を例示するフローチャートである。
図9】様々な実施形態に係る典型的な多言語通信方法の動作を例示するフローチャートである。
図10】様々な実施形態に係る典型的な多言語通信方法の動作を例示するフローチャートである。
図11】様々な実施形態に係る典型的な多言語通信方法の動作を例示するフローチャートである。
図12】様々な実施形態の実施に利用することができる典型的なデジタル装置を例示するブロック図である。
【発明を実施するための形態】
【0016】
詳細な説明
本明細書に記載される様々な実施形態は、多言語通信に関連し、多言語通信を円滑化する。いくつかの実施形態のシステムおよび方法は、たとえばインターネットベースのチャット(たとえばApple(登録商標)iMessage(登録商標)、Windows(登録商標)Live Messenger等)、電子メール(たとえば組込みフォーラムメッセージング、Yahoo(登録商標
)メール、RFC 5322等)、テキストベースの携帯電話通信(たとえばSMSメッセージまたはMMSメッセージ)、オンラインフォーラムへの投稿(たとえばウェブベースの趣味フォーラムへの投稿)、オンラインソーシャルメディアサービスへの投稿(たとえばTwit
ter(登録商標)、Facebook(登録商標)等)などを含む異なるモードの通信による多言
語通信を可能にし得る。ある実施形態は、過去に行なわれた通信または会話のトランスクリプト(たとえば堆積トランスクリプトまたはチャット履歴)を翻訳するためにも使用され得る。様々な実施形態は、テキスト中の、特殊化された/ドメイン関連の専門用語(たとえばチャット用語)、略語、頭字語、固有名詞、普通名詞、縮小形、口語的な単語または句、および卑罵的な単語または句のうちの1つ以上に対処/対応しつつ、(たとえば話し言葉の)2つ以上の言語間でテキストを翻訳する通信システムおよび方法を実現し得る。たとえば、本明細書に記載されるいくつかのシステムおよび方法は、異なる外国語でチャットするユーザを有する傾向があるマッシブマルチプレーヤーオンライン(MMO)ゲームで用いられるものなどのチャットシステムに関連して利用され得る。ある実施形態によって、2人以上のユーザ間のチャットダイアログは介在が意識されないように翻訳され、それぞれの母国語または選択言語で各ユーザに提示されることができる。加えて、多層/多モジュール変換処理の使用によって、ある実施形態は、従来の翻訳システムのみによって他の方法で可能である(たとえば数マイクロ秒での翻訳)よりも速い、2人以上のユーザ間の(たとえばそれぞれの母国語での)通信の翻訳を円滑化し得る。
【0017】
いくつかの実施形態によれば、システムまたは方法は、英語などの第1の言語でのチャット用語から、フランス語などの第2の言語でのチャット用語への翻訳を行ない得る。別の例では、システムまたは方法は、第2の言語(たとえばフランス語)への翻訳を試みる前に、第1の言語(たとえば英語)でのチャット用語から第1の言語(たとえば英語)での正式な言い方への翻訳を行ない得る。いくつかの実施形態は、人間のオペレータによって手作業で入力された翻訳、または翻訳システムによってあらかじめ行なわれたものに基づく翻訳(たとえば一実施形態によって行なわれる履歴翻訳)を含み得るデータストア(たとえば翻訳キャッシュ)にまず照会することによって、そのようなテキスト翻訳を実現し得る。実施形態は、正確なテキスト翻訳により好適となるように、テキストの1つ以上の部分を変換する(たとえば、テキスト内の、チャット用語、頭字語、略語、固有名詞、普通名詞、口語、および卑罵語のうちの1つ以上を処理する)ことを試み得る。たとえば、ある実施形態は、所与のテキストを変換して、異なる言語にわたる(現在または過去の)慣用語使用を説明し得る。実施形態は、テキストの一部分の変換後にデータストアに照会することを再び試み得る。この翻訳ルックアップ再試行が失敗した場合、実施形態は、機械翻訳サービス(たとえばGoogle(登録商標)翻訳などの第三者のクラウドベースの翻訳サービス)を用いて、(変換済みであり得る)テキストを翻訳することを試み得る。
【0018】
実施形態は、翻訳された1つの正式なテキストを新たな言語でのチャット用語に変換(たとえばフランス語の正式な言い方をフランス語のチャット用語に変換)して、最終的に生成されるテキストの翻訳をさらに改良することを試み得る。したがって、ある実施形態は、第1の言語(たとえば英語)でのチャット用語と第2の言語(たとえばロシア語、フランス語、スペイン語、中国語、ヒンディー語等)でのチャット用語との間のチャット翻訳を円滑化する。
【0019】
いくつかの実施形態は、機械翻訳を用いる必要性を低下させるかまたは回避する(ことにより機械翻訳に伴う時間、費用、および他の諸経費を減少させる)のに役立ち得、最小のコンテキストを有するかまたは短文構造を含むテキストの正確な翻訳を円滑化し得る。第三者のサービスによって、またはセキュアネットワーク接続(たとえばセキュアソケットレイヤー[SSL]接続)によって機械翻訳が円滑化される場合、ある実施形態によって回避される費用または諸経費は大幅となり得る。
【0020】
本明細書において理解されるように、「変換」とは、第1の言語での第1のテキストセグメントを操作して、第1の言語での第2のテキストセグメントを形成することを意味する。結果として得られる第2のテキストセグメントは、本明細書においては「変換された
テキスト」とも称され得る。「翻訳」とは、第1の言語でのテキストセグメントを、第2の言語での対応するテキストセグメントに転換することを意味するものと理解されるであろう。
【0021】
また本明細書において理解されるように、「変換された翻訳」とは、本明細書に記載される実施形態に従ってすでに変換されている(たとえば第1の言語でのチャット用語のテキストから第1の言語での正式なテキストに変換されている)テキストセグメントの(第1の言語から第2の言語への)翻訳を意味する。「変換されていない翻訳」とは、本明細書に記載される実施形態に従ってテキストセグメントが変換される前のテキストセグメントの(第1の言語から第2の言語への)翻訳を意味するものと理解されるであろう。
【0022】
様々な実施形態は、異なる変換/翻訳手順を実現してもよく、ある手順は、特定の翻訳アプリケーションによく適している。たとえば、特定のチャットシステムアプリケーションについて、実現される変換手順は、次の変換関連モジュールの組:チャット用語モジュール、頭字語モジュール、固有名詞モジュール、普通名詞モジュール、口語モジュール、スペルチェックモジュール、略語モジュール、および卑罵語モジュールを、挙げられた順に適用することを含み得る。概して、採用される変換/翻訳手順は、どの変換動作が行なわれるか、翻訳処理全体においていつ変換動作が行なわれる(たとえば変換が機械翻訳の前または後に行なわれる)か、またはどんな順序で変換動作が行なわれるか(たとえば変換動作の優先度または優先順位)を決定する。変換/翻訳手順は、どんな翻訳がデータストアにあらかじめポピュレートされているか(たとえば翻訳を翻訳「キャッシュ」に格納して処理全体を高速化することができる)、および翻訳処理全体のいつ翻訳キャッシュが利用されるかも決定し得る。ある実施形態について、採用される変換/翻訳手順は、実施形態が用いられる環境の状態に基づいてダイナミックに決定され得る。たとえば、チャットシステムのユーザの負担が通常よりも重い場合、変換/翻訳手順は、チャットシステムの処理負担を減少させるものに切替わり得る(たとえばデータストアにではなく、より機械翻訳に依存する)。
【0023】
図1は、様々な実施形態に係る多言語システムを利用した典型的な環境100を例示するブロック図である。図1に示されるように、典型的な環境100は、クライアント102−1から102−N(以下「クライアント102」と総称する)、チャットサーバ108、および翻訳サーバ110を含み、その各々は、コンピュータネットワーク106によって互いに通信可能に結合され得る。いくつかの実施形態に従って、コンピュータネットワーク106は、インターネット、WiFi(登録商標)ネットワーク、WiMax(登録商標)
ネットワーク、私設網、公衆網などといった1つ以上のローカルまたは広域通信ネットワークを用いて実装または円滑化され得る。実施形態に応じて、コンピュータネットワーク106との通信接続の一部またはすべては、暗号化(たとえばセキュアーソケットレイヤー[SSL])を利用して、典型的な環境100に示される様々なエンティティ間で転送されている情報を安全にし得る。
【0024】
クライアント102、チャットサーバ108および翻訳サーバ110の各々は、後で図12を参照して述べるデジタル装置と同様であり得る1つ以上のデジタル装置を用いて実装され得る。たとえば、クライアント102−1は、(たとえばユーザの対話のために構成された)ユーザ入力を受信することが可能であり、一人以上の他のクライアント(たとえばクライアント102−2から102−Nのうちのいずれか)との通信を円滑化するクライアントユーザインターフェイスを提供することが可能であり、かつコンピュータネットワーク106を介してチャットサーバ108と通信することが可能ないずれかの形態の計算装置であり得る。そのような計算装置は、携帯電話、タブレット計算装置、ラップトップ、デスクトップコンピュータ、携帯情報端末、ポータブルゲームユニット、有線ゲームユニット、シンクライアント、セットトップボックス、ポータブルマルチメディアプレ
ーヤー、または当業者に知られているいずれかの他の種類のネットワークアクセス可能なユーザ装置を含み得る。さらに、チャットサーバ108および翻訳サーバ110の1つ以上は、1つ以上のクラウドベースサービス(たとえばSystem-as-a-Service[SaaS]、Platform-as-a-Service[PaaS]またはInfrastructure-as-a-Service[IaaS])上で動作し
得るか、または1つ以上のクラウドベースサービスを用いて実装され得る1つ以上のサーバで構成され得る。
【0025】
クライアント102は、クライアント102間のチャットセッションを提供するかまたは他の方法で円滑化するチャットサーバ108に通信可能に接続するように構成され得る。クライアント102−1から102−Nの各々は、クライアント102の各々におけるユーザがチャットサーバ108を介してチャットセッションにアクセスすることを可能にするチャットクライアントシステム(それぞれ104−1から104−N)を含み得る。加えて、実施形態に応じて、チャットクライアントシステム104−1から104−N(以下「チャットクライアントシステム104」と総称する)の各々は、スタンドアロンのチャットアプリケーションとして、チャットではないアプリケーション(たとえばビデオゲーム)に組込まれたチャット機能として、またはクライアントにおいてウェブブラウザを介してアクセス可能なチャットサービスにより、実装され得る。当業者は、いくつかの実施形態について、チャットクライアントシステム104は互いに関してヘテロジニアスではない場合があり、それでもなおそれらの間のチャットセッションを確立することが可能であることを認識するであろう。チャットクライアントシステム104は、ユーザによって(たとえばユーザの設定または嗜好に基づいて)選択された言語(および対応する文字セット)でのそれぞれのユーザからのチャット入力(たとえばチャットメッセージ)を受信し、別のユーザ(たとえば別のチャットクライアントシステムにおける別のユーザ)に中継されるようにチャット入力をチャットサーバ108に送信することが可能であり得る。チャットクライアントシステム104は、チャットサーバ108からの(たとえば別のチャットクライアントシステムにおける別のユーザからの)チャット出力(たとえばチャットセッションダイアログ)を受信し、受信したチャット出力をユーザによって(たとえばユーザの設定または嗜好に基づいて)選択された言語(および対応する文字セット)で表示することも可能であり得る。
【0026】
いくつかの実施形態の使用によって、ダイアログがチャットクライアントシステム104間で渡される際、チャットダイアログの翻訳はユーザにとってトランスペアレントであり得る。したがって、いくつかの実施形態について、所与のチャットクライアントシステム104において提示されたすべてのチャットダイアログは、同じチャットダイアログに寄稿している他のチャットクライアントシステム104においてユーザによってどの言語かに関係なく、その所与のチャットクライアントシステム104におけるユーザに固有の(またはユーザによって選択された)言語であり得る。たとえば、チャットクライアントシステム104−1におけるユーザとチャットクライアントシステム104−2におけるユーザとが同じチャットダイアログに寄稿している(つまり、同じチャットセッションに関与している)場合、チャットクライアントシステム104−1におけるユーザは、チャットダイアログを英語で入力し受信することを選択していてもよく、一方チャットクライアントシステム104−2におけるユーザは、チャットダイアログをロシア語で入力し受信することを選択していてもよい。クライアントシステム104−1および104−2におけるユーザは同じチャットコンテンツを見ることになるが、チャットダイアログは、彼らのそれぞれ選択した言語で提示されることになる。
【0027】
図示されるように、チャットサーバ108は、チャットクライアントシステム104間のチャットセッションを確立および/または円滑化するように構成されたチャットホストシステム112と、本明細書に記載される様々なシステムおよび方法に従って変換および/または翻訳動作を行なうように構成された通信変換および翻訳(CTT)システム11
4とを含み得る。いくつかの実施形態について、チャットクライアントシステム104は、チャットホストシステム112を介して互いにチャットセッションを確立し得る。チャットホストシステム104は、チャットクライアントシステム104間のチャットダイアログのトランスペアレントな翻訳を円滑化する際に、CTTシステム114の機能を利用し得る。当業者は、いくつかの実施形態について、チャットホストシステム112およびCTTシステム114は別個のサーバの一部であってもよく、チャットホストシステム112を動作させるエンティティはCTTシステム114を動作させるエンティティとは異なっていてもよいことを認識するであろう。たとえば、チャットホストシステム112は、CTTシステム114のサービスを利用する第三者のチャットホストシステムであってもよい。
【0028】
また図示されるように、翻訳サーバ110は、機械テキスト翻訳のリクエストを受信し、そのリクエストに応えるように構成された翻訳モジュール116を含み得る。いくつかの実施形態に従って、CTTシステム114は、テキストの機械翻訳を行なう際に翻訳モジュール116の動作/サービスを利用し得る。CTTシステム114は、1つ以上の翻訳アプリケーションプログラミングインターフェイス(API)を用いて、翻訳モジュール116によって提供されるサービスへのアクセス権を取得し得る。実施形態に応じて、翻訳モジュール116(およびそれが属するサーバ110)は、機械翻訳サービスを無料または有料で提供し得るGoogle(登録商標)などの第三者によって動作され得る。翻訳モジュール116はCTTシステム114とは別個のサーバ上で動作するコンポーネントとして示されているが、当業者は、いくつかの実施形態について、翻訳モジュール116はCTTシステム114と同じサーバ上で動作してもよく、かつ/またはCTTシステム114の統合コンポーネントであってもよいことを認識するであろう。
【0029】
図2は、様々な実施形態に係る典型的な通信変換および翻訳システム114を例示するブロック図である。図示されるように、CTTシステム114は、通信変換および翻訳(CTT)制御モジュール202、通信変換および翻訳(CTT)通信モジュール204、言語モジュール206、変換モジュール208、翻訳データストア210、ならびに翻訳アプリケーションプログラミングインターフェイス(API)モジュール212を含み得る。CTT制御モジュール202は、CTTシステム114が本明細書に記載されるいくつかのシステムおよび方法に従って変換または翻訳動作を行なう際に、CTTシステム114内の様々な動作の性能を制御および/または調整するように構成され得る。いくつかの実施形態について、CTT制御モジュール202は、CTT通信モジュール204、言語モジュール206、変換モジュール208、翻訳データストア210、および翻訳APIモジュール212などのCTTシステム114の他のコンポーネントの動作を制御し得る。
【0030】
CTT通信モジュール204は、CTTシステム114と、チャットサーバ108および/または翻訳サーバ110などの、CTTシステム114外のシステムおよびコンポーネントとの間の通信を円滑化するように構成され得る。したがって、CTT通信モジュール204を介して、CTTシステム114は、CTTシステム114によって変換または翻訳されるべき(1つ以上のチャットメッセージを含む)チャットダイアログを受信し得、CTTシステム114に起因する翻訳されたチャットダイアログを出力し得る。
【0031】
言語モジュール206は、CTTシステム114によって受信されたチャットダイアログに関連して用いられている1つ以上の言語を識別するように構成され得る。いくつかの実施形態について、言語モジュール206は、受信されたチャットダイアログのコンテンツの解析によって言語を識別し、かつ/または受信されたチャットダイアログに関与しているそれぞれのチャットクライアントシステム(たとえばチャットクライアントシステム104)から言語嗜好/設定情報を取得し得る。
【0032】
変換モジュール208は、本明細書に記載されるいくつかのシステムおよび方法に従って、CTTシステム114によって受信された(1つ以上のチャットメッセージを含む)チャットダイアログに対して変換動作を行なうように構成され得る。いくつかの実施形態に従って、変換モジュール208によって行なわれる変換動作は、限定はしないが、チャット用語、頭字語、略語、固有名詞、普通名詞、口語、および卑罵語に関連するものを含み得る。変換モジュール208の追加的な詳細を図3で述べる。
【0033】
翻訳データストア210は、あらかじめ翻訳されたテキストを格納し、その後、本明細書に記載されるいくつかのシステムおよび方法に従ってCTTシステム114が変換された翻訳および変換されていない翻訳を行なう際に、あらかじめ翻訳されたテキストをCTTシステム114に提供するように構成され得る。本明細書に記載されるように、翻訳データストア210は、CTTシステム114によってあらかじめ行なわれる翻訳のためのキャッシュとして動作してもよく、かつ/または人間のオペレータによって(たとえば翻訳トレーニングシステムを介して)手作業で入力され格納された翻訳を格納してもよい。いくつかの実施形態について、あるチャットコンテキストに関してCTTシステム114の性能を高速化することになる翻訳を翻訳データストア210にポピュレートしてもよい。たとえば、CTTシステム114がMMOゲームに関連付けられたチャットシステムと共に利用される場合、具体的にMMOゲームに関連する(変換された、および変換されていない)翻訳を翻訳データストア210に(たとえばCTTシステム114のオペレータによって)ポピュレートしてもよい。ある実施形態について、変換モジュール208によって用いられるテキストを変換する多層/多モジュール手法は、本来複雑になりがちな、MMOゲームにおけるチャットテキストに対処するのに特によく適している。
【0034】
実施形態に応じて、データストア210は、変換されていない翻訳(たとえば<正式な英語>”you”→<正式なフランス語>”vous”)、変換された翻訳(たとえば<英語の
チャット用語>”u”→<正式なフランス語>”vous”)のいずれか、または両方を格納し得る。いくつかの実施形態について、翻訳データストア210は、対応するチャットメッセージがハッシュ値/タグを用いて識別され得るように翻訳を格納し得る。たとえば、英語の当初のメッセージについてのスペイン語翻訳を格納するために、スペイン語翻訳を英語のメッセージのハッシュ値に基づいて格納してもよく、それによりスペイン語の翻訳を英語のメッセージのハッシュ値を用いて後で捜し出し、取得することが可能となる。当業者は、いくつかの実施形態について、翻訳データストア210は2つの特定言語間の翻訳のために別個のデータストアを含み得ることを認識するであろう。したがって、英語とフランス語との間でチャットメッセージが変換/翻訳されている時、翻訳データストア210に関連する動作のために、対応するデータ英語−フランス語データストアが利用され得る。
【0035】
翻訳APIモジュール212は、(たとえば翻訳サーバ110の翻訳モジュール116によって)CTTシステム114外に設けられた機械翻訳サービスへのアクセス権をCTTシステム114に提供するように構成され得る。本明細書に記載されるように、翻訳データストア210に翻訳がない時、CTTシステム114によって翻訳APIモジュール212が利用され得る。
【0036】
図3は、様々な実施形態に係る典型的な変換モジュール208を例示するブロック図である。図示されるように、変換モジュール208は、チャット用語モジュール302、頭字語モジュール304、固有名詞モジュール306、普通名詞モジュール308、口語モジュール310、スペルチェックモジュール312、略語モジュール314、および/または卑罵語モジュール316を含み得る。いくつかの実施形態によれば、動作中に、変換モジュール208は、チャットメッセージを全体的にまたは部分的に処理し得る(たとえ
ばメッセージをトークンまたは論理部分に分け、次いでそれらのトークン/部分を処理する)。いくつかの実施形態では、変換モジュール208の様々なモジュールが並行して呼び出され得る。
【0037】
チャット用語モジュール302は、チャット専門用語(つまりチャット用語)と関連付けられたチャットメッセージ中の1つ以上の単語または句を識別するように構成されてもよく、さらに、識別された単語または句について、置換(たとえば対応する正式な/つまりチャット用語でない)単語または句を提案するように構成されてもよい。いくつかの実施形態では、チャット用語モジュール302は、(たとえば翻訳モジュール116による)後続の機械翻訳中にスキップされるかまたは他の方法で無視されるように、識別されたチャット用語の単語または句にフラグを立て得る。加えて、いくつかの実施形態では、人間のオペレータ(たとえばCTTシステム114の管理者)による後のレビューおよび処置のために、識別されたチャット用語の単語または句にフラグが立てられてもよい。チャット用語の単語もしくは句、および/またはその対応する(正式な)単語もしくは句を識別するために、いくつかの実施形態は、チャット用語の単語もしくは句、ならびに/またはチャット用語の単語もしくは句とそれらの対応する単語および句とのマッピングを含む(たとえばデータストア上に格納された)データセットを利用してもよい。データセットは、トレーニングもしくは学習システムとして構成されてもよいし、(たとえばCTTシステム114の管理者によって「組織内で」手作業で収集される)専有のものであってもよいし、市販されていてもよいし、または公に利用可能なインターネット知識ベースから得られてもよい。たとえば、チャット用語モジュール302は、その機能において統計的機械翻訳を採用し得る。いくつかの実施形態について、採用された統計的機械翻訳は、コンテキスト情報を保護しかつ/またはそうでなければ非文法的な文章に文法を追加する変換から抽出された対訳テキストを用いて、かつ/または句レベルの対を用いて、トレーニングされ得る。チャット用語モジュール302からの結果は、無視されるようにチャット用語モジュール302によってフラグが立てられたチャット用語の単語もしくは句、提案された置換、またはチャット用語モジュール302によって(たとえば識別されたチャット用語の単語もしくは句の代わりに)メッセージに挿入されたチャット用語でない単語もしくは句を含み得る。実施形態に応じて、チャット用語モジュール302に起因するメッセージは、さらなる処理のために(変換モジュール208内の)別の変換モジュールに提供されてもよいし、またはチャット用語モジュール302によって変換されたメッセージがデータストア210内にあるかどうか判断するために、提案された置換がCTT制御モジュール202に提供されてもよい。
【0038】
頭字語モジュール304は、チャットメッセージ中の1つ以上の頭字語を識別するように構成されてもよく、さらに、頭字語と対応する(たとえば頭字語によって表される)置換単語または句を提案するように構成されてもよい。いくつかの実施形態では、頭字語モジュール304は、(たとえば翻訳モジュール116による)後続の機械翻訳中にスキップされるかまたは他の方法で無視されるように、識別された頭字語にフラグを立て得る。加えて、いくつかの実施形態では、人間のオペレータ(たとえばCTTシステム114の管理者)による後のレビューおよび処置のために、識別された頭字語にフラグが立てられ得る。頭字語および/またはその対応する単語もしくは句を識別するために、いくつかの実施形態は、頭字語、ならびに/または頭字語とそれらの対応する単語および句とのマッピングを含む(たとえばデータストア上に格納された)データセットを利用し得る。データセットは、トレーニングもしくは学習システムとして構成されてもよいし、(たとえばCTTシステム114の管理者によって「組織内で」手作業で収集される)専有のものであってもよいし、市販されていてもよいし、または公に利用可能なインターネット知識ベースから得られてもよい。頭字語モジュール304からの結果は、無視されるように頭字語モジュール304によってフラグが立てられた頭字語、提案された置換、または頭字語モジュール304によって(たとえば識別された頭字語の代わりに)メッセージに挿入さ
れた単語もしくは句を含み得る。実施形態に応じて、頭字語モジュール304に起因するメッセージは、さらなる処理のために(変換モジュール208内の)別の変換モジュールに提供されてもよいし、または頭字語モジュール304によって変換されたメッセージがデータストア210内にあるかどうか判断するために、提案された置換がCTT制御モジュール202に提供されてもよい。
【0039】
固有名詞モジュール306は、チャットメッセージ中の1つ以上の固有名詞を識別するように構成されてもよく、さらに、固有名詞と対応する(たとえば固有名詞によって表される)置換単語または句を提案するように構成されてもよい。いくつかの実施形態では、固有名詞モジュール306は、(たとえば翻訳モジュール116による)後続の機械翻訳中にスキップされるかまたは他の方法で無視されるように、識別された固有名詞にフラグを立て得る。加えて、いくつかの実施形態では、人間のオペレータ(たとえばCTTシステム114の管理者)による後のレビューおよび処置のために、識別された固有名詞にフラグが立てられ得る。固有名詞および/またはその対応する単語もしくは句を識別するために、いくつかの実施形態は、固有名詞(たとえばDisneyland(登録商標)などの周知の固有名詞または個人の通称)、ならびに/または固有名詞とそれらの対応する単語および句とのマッピングを含む(たとえばデータストア上に格納された)データセットを利用し得る。データセットは、トレーニングもしくは学習システムとして構成されてもよいし、(たとえばCTTシステム114の管理者によって「組織内で」手作業で収集される)専有のものであってもよいし、市販されていてもよいし、または公に利用可能なインターネット知識ベースから得られてもよい。固有名詞モジュール306からの結果は、無視されるように固有名詞モジュール306によってフラグが立てられた固有名詞、提案された置換、または固有名詞モジュール306によって(たとえば識別された固有名詞の代わりに)メッセージに挿入された単語もしくは句を含み得る。実施形態に応じて、固有名詞モジュール306に起因するメッセージは、さらなる処理のために(変換モジュール208内の)別の変換モジュールに提供されてもよいし、または固有名詞モジュール306によって変換されたメッセージがデータストア210内にあるかどうか判断するために、提案された置換がCTT制御モジュール202に提供されてもよい。
【0040】
普通名詞モジュール308は、チャットメッセージ中の1つ以上の普通名詞を識別するように構成されてもよく、さらに、普通名詞と対応する(たとえば普通名詞によって表される)置換単語または句を提案するように構成されてもよい。いくつかの実施形態では、普通名詞モジュール308は、(たとえば翻訳モジュール116による)後続の機械翻訳中にスキップされるかまたは他の方法で無視されるように、識別された普通名詞にフラグを立て得る。加えて、いくつかの実施形態では、人間のオペレータ(たとえばCTTシステム114の管理者)による後のレビューおよび処置のために、識別された普通名詞にフラグが立てられ得る。普通名詞および/またはその対応する単語もしくは句を識別するために、いくつかの実施形態は、普通名詞、ならびに/または普通名詞とそれらの対応する単語および句とのマッピングを含む(たとえばデータストア上に格納された)データセットを利用し得る。データセットは、トレーニングもしくは学習システムとして構成されてもよいし、(たとえばCTTシステム114の管理者によって「組織内で」手作業で収集される)専有のものであってもよいし、市販されていてもよいし、または公に利用可能なインターネット知識ベースから得られてもよい。普通名詞モジュール308からの結果は、無視されるように普通名詞モジュール308によってフラグが立てられた普通名詞、提案された置換、または普通名詞モジュール308によって(たとえば識別された普通名詞の代わりに)メッセージに挿入された単語もしくは句を含み得る。実施形態に応じて、普通名詞モジュール308に起因するメッセージは、さらなる処理のために(変換モジュール208内の)別の変換モジュールに提供されてもよいし、または普通名詞モジュール308によって変換されたメッセージがデータストア210内にあるかどうか判断するために、提案された置換がCTT制御モジュール202に提供されてもよい。
【0041】
口語モジュール310は、チャットメッセージ中の1つ以上の口語的な単語または句を識別するように構成されてもよく、さらに、識別された単語または句のための置換(たとえば対応する正式な/つまり非口語的な)単語または句を提案するように構成されてもよい。いくつかの実施形態では、口語モジュール310は、(たとえば翻訳モジュール116による)後続の機械翻訳中にスキップされるかまたは他の方法で無視されるように、識別された口語的な単語または句にフラグを立て得る。加えて、いくつかの実施形態では、人間のオペレータ(たとえばCTTシステム114の管理者)による後のレビューおよび処置のために、識別された口語的な単語または句にフラグが立てられ得る。口語的な単語もしくは句および/またはその対応する(正式な)単語もしくは句を識別するために、いくつかの実施形態は、口語的な単語もしくは句、ならびに/または口語的な単語もしくは句とそれらの対応する単語および句とのマッピングを含む(たとえばデータストア上に格納された)データセットを利用し得る。データセットは、トレーニングもしくは学習システムとして構成されてもよいし、(たとえばCTTシステム114の管理者によって「組織内で」手作業で収集される)専有のものであってもよいし、市販されていてもよいし、または公に利用可能なインターネット知識ベースから得られてもよい。口語モジュール310からの結果は、無視されるように口語モジュール310によってフラグが立てられた口語的な単語もしくは句、提案された置換、または口語モジュール310によって(たとえば識別された口語的な単語または句の代わりに)メッセージに挿入された非口語的な単語もしくは句を含み得る。実施形態に応じて、口語モジュール310に起因するメッセージがさらなる処理のために(変換モジュール208内の)別の変換モジュールに提供されてもよいし、または口語モジュール310によって変換されたメッセージがデータストア210内にあるかどうか判断するために、提案された置換がCTT制御モジュール202に提供されてもよい。
【0042】
スペルチェックモジュール312は、チャットメッセージ中の1つ以上のミススペルされた単語または句を識別するように構成されてもよく、さらに、識別された単語または句のための置換(たとえば訂正された)単語または句を提案するように構成されてもよい。たとえば、スペルチェックモジュール312は、単語または句を、提案された置換単語または句に自動的に訂正するように構成されてもよい。いくつかの実施形態では、スペルチェックモジュール312は、(たとえば翻訳モジュール116による)後続の機械翻訳中にスキップされるかまたは他の方法で無視されるように、識別されたミススペルされた単語または句にフラグを立て得る。加えて、いくつかの実施形態では、人間のオペレータ(たとえばCTTシステム114の管理者)による後のレビューおよび処置のために、識別されたミススペルされた単語または句にフラグが立てられ得る。ミススペルされた単語もしくは句および/またはその対応する(訂正された)単語もしくは句を識別するために、いくつかの実施形態は、ミススペルされた単語もしくは句、ならびに/またはミススペルされた単語もしくは句とそれらの対応する単語および句とのマッピングを含む(たとえばデータストア上に格納された)データセットを利用し得る。データセットは、トレーニングもしくは学習システムとして構成されてもよいし、(たとえばCTTシステム114の管理者によって「組織内で」手作業で収集される)専有のものであってもよいし、市販されていてもよいし、または公に利用可能なインターネット知識ベースから得られてもよい。スペルチェックモジュール312からの結果は、無視されるようにスペルチェックモジュール312によってフラグが立てられたミススペルされた単語または句、提案された置換、またはスペルチェックモジュール312によって(たとえばミススペルされた単語または句の代わりに)メッセージに挿入された訂正された単語もしくは句を含み得る。実施形態に応じて、スペルチェックモジュール312に起因するメッセージがさらなる処理のために(変換モジュール208内の)別の変換モジュールに提供されてもよいし、またはスペルチェックモジュール312によって変換されたメッセージがデータストア210内にあるかどうか判断するために、提案された置換がCTT制御モジュール202に提供さ
れてもよい。
【0043】
略語モジュール314は、チャットメッセージ中の1つ以上の略語を識別するように構成されてもよく、さらに、略語と対応する(たとえば略語によって表される)置換単語または句を提案するように構成されてもよい。いくつかの実施形態では、略語モジュール314は、(たとえば翻訳モジュール116による)後続の機械翻訳中にスキップされるかまたは他の方法で無視されるように、識別された略語にフラグを立て得る。加えて、いくつかの実施形態では、人間のオペレータ(たとえばCTTシステム114の管理者)による後のレビューおよび処置のために、識別された略語にフラグが立てられ得る。略語および/またはその対応する単語もしくは句を識別するために、いくつかの実施形態は、略語、ならびに/または略語とそれらの対応する単語および句とのマッピングを含む(たとえばデータストア上に格納された)データセットを利用し得る。データセットは、トレーニングもしくは学習システムとして構成されてもよいし、(たとえばCTTシステム114の管理者によって「組織内で」手作業で収集される)専有のものであってもよいし、市販されていてもよいし、または公に利用可能なインターネット知識ベースから得られてもよい。略語モジュール314からの結果は、無視されるように略語モジュール314によってフラグが立てられた略語、提案された置換、または略語モジュール314によって(たとえば識別された略語の代わりに)メッセージに挿入された単語もしくは句を含み得る。実施形態に応じて、略語モジュール314に起因するメッセージがさらなる処理のために(変換モジュール208内の)別の変換モジュールに提供されてもよいし、または略語モジュール314によって変換されたメッセージがデータストア210内にあるかどうか判断するために、提案された置換がCTT制御モジュール202に提供されてもよい。
【0044】
卑罵語モジュール316は、チャットメッセージ中の1つ以上の卑罵的な単語または句(以下「卑罵語」と称する)を識別するように構成されてもよく、さらに、卑罵語に対応する置換単語または句(たとえば適切な代替語)(たとえばトーンダウンした婉曲表現)を提案するように構成されてもよい。いくつかの実施形態では、卑罵語モジュール316は、(たとえば翻訳モジュール116による)後続の機械翻訳中にスキップされるかまたは他の方法で無視されるように、識別された卑罵語にフラグを立て得る。加えて、いくつかの実施形態では、人間のオペレータ(たとえばCTTシステム114の管理者)による後のレビューおよび処置のために、卑罵語にフラグが立てられ得る。卑罵語および/またはその対応する単語もしくは句を識別するために、いくつかの実施形態は、卑罵語、ならびに/または卑罵語とそれらの対応する単語および句とのマッピングを含む(たとえばデータストア上に格納された)データセットを利用し得る。データセットは、トレーニングもしくは学習システムとして構成されてもよいし、(たとえばCTTシステム114の管理者によって「組織内で」手作業で収集される)専有のものであってもよいし、市販されていてもよいし、または公に利用可能なインターネット知識ベースから得られてもよい。卑罵語モジュール316からの結果は、無視されるように卑罵語モジュール316によってフラグが立てられた卑罵語、提案された置換、または卑罵語モジュール316によって(たとえば識別された卑罵語の代わりに)メッセージに挿入された単語もしくは句を含み得る。実施形態に応じて、卑罵語モジュール316に起因するメッセージがさらなる処理のために(変換モジュール208内の)別の変換モジュールに提供されてもよいし、または卑罵語モジュール316によって変換されたメッセージがデータストア210内にあるかどうか判断するために、提案された置換がCTT制御モジュール202に提供されてもよい。
【0045】
いくつかの実施形態について、変換モジュール208のうちの1つ以上の様々なモジュールは、フラグが立てられている部分の前および/または後に所定の文字を挿入することによって、チャットメッセージ中の1つ以上の部分にフラグを立て得る。たとえば、チャット用語モジュール302がチャットメッセージの一部分の単語”LOL”にフラグを立て
る場合、チャット用語モジュール302は、所定の文字(”_”)をその単語の前および/または後に挿入して(たとえば”_LOL_”)、フラグが立てられた部分は翻訳モジュ
ール116によって無視されるべきであることを示し得る。
【0046】
いくつかの実施形態について、変換モジュール208は初期メッセージに対して2つ以上の変換動作を並行して行なってもよく、それに応答して、2つ以上の変換動作の各々が別個の応答を戻してもよく、そこから変換モジュール208は、次いで、さらなる処理のために(たとえば動作514で用いられるために)1つの変換されたメッセージを選択し得る。実施形態に応じて、各応答は、フラグが立てられたテキスト部分、提案された置換、または初期メッセージに挿入された単語もしくは句を含み得る。その後、選択された変換されたメッセージは選択の優先順位に従ってもよい。選択の優先順位は、どの変換されたメッセージが、どの先例に従ってさらなる処理に選択されるかを決定することができる。いくつかの実施形態では、優先順位選択は、翻訳データストア210)における後続のルックアップまたは後続の機械翻訳に好適な変換されたメッセージを、どの変換動作が生成する可能性が最も高いかに従ってもよい。加えて、いくつかの実施形態では、選択の優先順位は、どの変換動作が最も正式な変換されたメッセージを生成するかに従ってもよい。選択の優先順位は、実施形態によって選択される変換/翻訳手順に依存してもよい。
【0047】
以下は、変換モジュール208が様々な実施形態に従ってチャットメッセージの一部分をどのように処理し得るかについての例を示す。示されるように、変換モジュール208は、トークンまたはプロキシマルトークン(proximal tokens)に基づいてチャットメッ
セージを処理してもよく、一旦変換が行なわれると、特定のトークンに対する処理を中止してもよい。
【0048】
【表1】
【0049】
図4は、様々な実施形態に係る典型的なチャットクライアントシステム104を例示するブロック図である。図示されるように、チャットクライアントシステム104は、チャットクライアントコントローラ402、チャットクライアント通信モジュール404、およびチャットクライアントグラフィカルユーザインターフェイス(GUI)モジュール406を含み得る。チャットクライアント制御モジュール402は、チャットクライアントシステム104がチャット関連動作(たとえばチャットサーバ108との通信チャットダイアログ)を行なう際に、チャットクライアントシステム104内の様々な動作の性能を制御および/または調整するように構成され得る。いくつかの実施形態について、チャットクライアント制御モジュール402は、たとえばチャットクライアント通信モジュール404およびチャットクライアントGUIモジュール406などを含む、チャットクライアントシステム104の他のコンポーネントの動作を制御してもよい。
【0050】
チャットクライアント通信モジュール404は、チャットクライアントシステム104と、チャットサーバ108などのチャットクライアントシステム104外のシステムおよびコンポーネントとの間の通信を円滑化するように構成され得る。したがって、チャットクライアントモジュール404により、チャットクライアントシステム104は、チャットクライアントシステム104において提示されるべきチャットダイアログを(たとえばチャットクライアントGUIモジュール406を介して)チャットサーバ108から受信してもよく、チャットクライアントシステム104において(たとえばチャットクライアントGUIモジュール406を介して)ユーザから受信したチャットダイアログをチャットサーバに送信してもよい。
【0051】
チャットクライアントGUIモジュール406は、他のチャットクライアントシステムとのチャットセッションへの図形入力/出力アクセス権をチャットクライアントシステム104におけるユーザに提供するように構成され得る。したがって、いくつかの実施形態について、チャットクライアントGUIモジュール406は、クライアント102によってユーザ対話を受信するように適合されたクライアントGUIをクライアント102におけるユーザに提示し得る。いくつかの実施形態について、チャットクライアントGUIモジュール406は、チャットダイアログを(たとえばそれらがチャットサーバ108から受信されると)、(たとえばユーザの言語嗜好/設定に従った)彼らの選択言語でユーザに提示するように構成され得る。加えて、チャットクライアントGUIモジュール406は、ユーザの選択の(たとえばユーザの言語嗜好/設定に従った)言語でユーザからチャット入力を受信するように構成され得る。本明細書に記載されるように、チャットクライアントシステム104においてチャットダイアログを提示し受信するのに用いられる言語は、別のチャットクライアントシステムにおいてチャットダイアログを提示し受信するのに用いられる言語とは異なっていてもよい。チャットクライアントGUIモジュール406に関して、図7を参照してさらに述べる。
【0052】
図5は、様々な実施形態に係る多言語通信のための典型的な方法500を例示するフローチャートである。下記のように、いくつかの実施形態について、方法500によって例示される方法は、チャットクライアントシステム104−1、チャットクライアントシステム104−2、(たとえばチャットサーバ108の)CTTシステム114、および(たとえば翻訳サーバ110の)翻訳モジュール116に関連した動作を行ない得る。
【0053】
方法500は動作502において開始し得、(CTTシステム114の)言語モジュール204が、第1のチャットクライアントシステム(たとえば104−1)においてユーザによって用いられている第1の言語と、第2のチャットクライアントシステム(たとえば104−2)においてユーザによって用いられている第2の言語とを識別し得る。いくつかの実施形態によれば、言語モジュール204は、それぞれのチャットクライアントシ
ステム104から言語嗜好/設定を取得することによって、第1の言語と第2の言語とを識別し得る。
【0054】
動作504において、(CTTシステム114の)CTT通信モジュール204が第1の言語での初期メッセージを受信し得る。いくつかの実施形態では、CTT通信モジュール204は、チャットホストシステム112から初期メッセージを受信してもよく、チャットホストシステム112は、チャットクライアントシステム(たとえば104−1)から初期メッセージを受信していてもよい。
【0055】
動作506において、(CTTシステム114の)CTT制御モジュール202は、初期メッセージに対応する、第2の言語での対応するメッセージについて翻訳データストア210に照会し得る。動作508において、CTT制御モジュール202は、対応するメッセージが翻訳データストア210に見つけられるかどうか判断し得る。1つ存在する場合、動作510において、CTT通信モジュール204は、対応するメッセージを第2のチャットクライアントシステム(たとえばチャットクライアントシステム104−2)に送信することを支援し得る。いくつかの実施形態では、対応するメッセージは、チャットホストシステム112に送信され得る。チャットホストシステム112は、対応するメッセージを第2のチャットクライアントシステム(たとえば104−2)に中継し得る。次いで方法500は終了し得る。
【0056】
対応するメッセージが翻訳データストア210に存在しない場合、動作512において、変換モジュール208は、初期メッセージの少なくとも一部分を第1の言語での変換されたメッセージに変換することを試み得る。本明細書に記載されるように、変換モジュール208に起因するメッセージは、変換されてもよいし、(たとえば変換モジュール208の変換動作が初期メッセージに適用されない時は)元のままであってもよい。いくつかの実施形態について、変換モジュール208は、初期メッセージに対して2つ以上の変換動作を並行して行なってもよく、それに応答して、2つ以上の変換動作の各々が別個の応答を戻してもよく、そこから変換モジュール208は次いで、さらなる処理のために(たとえば動作514で用いられるために)1つの変換されたメッセージを選択し得る。実施形態に応じて、各応答は、フラグが立てられたテキスト部分、提案された置換、または初期メッセージに挿入された単語もしくは句を含み得る。その後、選択された変換されたメッセージは選択の優先順位に従ってもよい。選択の優先順位は、どの変換されたメッセージが、どの先例に従ってさらなる処理に選択されるかを決定することができる。いくつかの実施形態では、優先順位選択は、翻訳データストア210)における後続のルックアップまたは後続の機械翻訳に好適な変換されたメッセージを、どの変換動作が生成する可能性が最も高いかに従ってもよい。加えて、いくつかの実施形態では、選択の優先順位は、どの変換動作が最も正式な変換されたメッセージを生成するかに従ってもよい。選択の優先順位は、実施形態によって選択される変換/翻訳手順に依存してもよい。
【0057】
動作514において、変換モジュール208がメッセージを変換したと想定すると、(CTTシステム114の)CTT制御モジュール202は、変換されたメッセージに対応する、第2の言語での対応するメッセージについて翻訳データストア210に照会し得る。動作516において、CTT制御モジュール202は、対応するメッセージが翻訳データストア210に見つけられるかどうか判断し得る。1つ存在する場合、動作518において、CTT通信モジュール204は、対応するメッセージを第2のチャットクライアントシステム(たとえばチャットクライアントシステム104−2)に送信することを支援し得る。いくつかの実施形態では、対応するメッセージは、チャットホストシステム112に送信され得る。チャットホストシステム112は次いで、対応するメッセージを第2のチャットクライアントシステム(たとえば104−2)に中継し得る。次いで方法500は終了し得る。
【0058】
いくつかの実施形態について、対応するメッセージが依然として翻訳データストア210に存在しない場合、動作520において、CTT制御モジュール202は、まだ行なわれていないチャットメッセージに対して行なうべき変換モジュール208のいずれかの追加的な変換動作があるかどうか判断し得る。
【0059】
追加的な変換動作が存在する場合、方法500は動作512に戻り、追加的な変換動作を行なう。実施形態に応じて、追加的な変換動作は、変換モジュール208によって初期メッセージに対してすでに行なわれたものとは異なる変換動作を適用することを含んでもよいし、行なわれた同じ変換動作を英語のチャットメッセージの異なる部分に適用することを含んでもよいし、またはそれらの何らかの組合せを含んでもよい。たとえば、動作512の第1の実行中に、変換モジュール208がチャット用語に関連した動作を初期メッセージに適用(して第1の変換されたメッセージを作成)した場合、動作512の第2の実行中に、変換モジュール208は、略語に関連した動作を第2の変換されたメッセージに適用し得る。動作512の後続の実行に続いて、方法500は動作514および516に進んでもよく、そこでCTT制御モジュール202は、結果として得られた最新の変換されたメッセージに対応する第2の言語での対応するメッセージについて再度翻訳データストア210に照会してもよく、CTT制御モジュール202は、対応するメッセージが翻訳データストア210に見つけられるかどうか判断し得る。このように反復して変換および照会動作を行なうことによって、ある実施形態は、利用可能なすべての変換動作を行なうことになる前に対応するメッセージを見つけることが可能であり得る。当業者は、ある実施形態について、変換および照会動作が連続して行なわれてもよく、照会操作(たとえば動作514)は、変換モジュール208によって提供されるすべての利用可能な変換動作がチャットメッセージに対して行なわれた後でのみ行なわれることを認識するであろう。
【0060】
対応するメッセージが翻訳データストア210に存在せず、(変換モジュール208の)追加的な変換動作が存在しない場合、動作522において(翻訳APIモジュール212を介して)、翻訳モジュール116は、初期メッセージまたは変換されたメッセージを第2の言語での対応するメッセージに翻訳することを支援し得る。その後、動作524において、CTT通信モジュール204は、対応するメッセージを第2のチャットクライアントシステム(たとえばチャットクライアントシステム104−2)に送信することを支援し得る。いくつかの実施形態によれば、対応するメッセージは、チャットホストシステム112に送信され得る。チャットホストシステム112は次いで、対応するメッセージを第2のチャットクライアントシステム(たとえば104−2)に中継し得る。次いで方法500は終了し得る。
【0061】
ある実施形態について、変換モジュール208は、対応するメッセージがチャットホストシステム112に送信される前に、対応するメッセージを第2の言語に変換するために利用され得る。本明細書に記載されるように、第2のチャットクライアントシステム(たとえば104−2)におけるユーザのために翻訳をさらに改良するために、対応するメッセージにさらなる変換処理を行ってもよい。たとえば、初期メッセージが第1の言語(たとえば英語)のチャット用語を含んでいる場合、追加的な変換処理は、第2の言語でのチャット用語を可能な範囲で追加することができる。
【0062】
上記の方法のステップはある順序で表され、記載され得るが、当業者は、ステップが行なわれる順序は実施形態間で変動し得ることを認識するであろう。加えて、当業者は、方法500に関して上記したコンポーネントは当該方法で使用されるコンポーネントの例にすぎず、いくつかの実施形態については他のコンポーネントもいくつかの実施形態において利用され得ることを認識するであろう。
【0063】
図6は、様々な実施形態に係る通信を変換するための典型的な方法600を例示するフローチャートである。下記のように、いくつかの実施形態について、方法600は、(たとえばCTTシステム114の)変換モジュール208に関連した動作を行ない得る。
【0064】
方法は動作602において開始し得、変換処理のために変換モジュール208によって初期メッセージが受信される。いくつかの実施形態に基づいて、変換モジュール208は、翻訳データストア210内のメッセージの識別に失敗した後であって、かつ場合によっては第三者または専有の翻訳処理(たとえば、クラウドベースサービスとして提供され得る翻訳モジュール116)によって初期メッセージが機械翻訳される前の変換のために、初期メッセージを受信し得る。本明細書に記載されるように、特にテキストが最小のコンテキスト、簡潔な文章構造、特殊化された/ドメイン関連の専門用語(たとえばインターネットベースのチャットのためのチャット用語)、略語、頭字語、口語、固有名詞、普通名詞、卑罵語、またはそれらの何らかの組合せを含む場合に、テキスト翻訳を円滑化するかまたは他の方法で向上させるために、様々な実施形態において変換モジュール208が使用され得る。変換モジュール208の動作を活用し得るテキスト翻訳は、限定はしないが、会話(たとえばトランスクリプト)、オフラインまたはオンラインのインターネットベースのチャット(たとえばインスタントメッセージング)、および携帯電話メッセージング(たとえばSMSまたはMMS)から生じるテキストの翻訳を含み得る。
【0065】
動作604において、チャット用語モジュール302は、チャット専門用語(つまりチャット用語)と関連付けられた初期メッセージ中の1つ以上の単語または句を識別してもよく、さらに、識別された単語または句のための置換(たとえば対応する正式な/つまりチャット用語でない)単語または句を提案してもよい。いくつかの実施形態では、チャット用語モジュール302は、(たとえば翻訳モジュール116による)後続の機械翻訳中にスキップされるかまたは他の方法で無視されるように、識別されたチャット用語の単語または句にフラグを立て得る。加えて、いくつかの実施形態では、人間のオペレータ(たとえばCTTシステム114の管理者)による後のレビューおよび処置のために、識別されたチャット用語の単語または句にフラグが立てられ得る。チャット用語の単語もしくは句および/またはその対応する(正式な)単語もしくは句を識別するために、いくつかの実施形態は、チャット用語の単語もしくは句、ならびに/またはチャット用語の単語もしくは句とそれらの対応する単語および句とのマッピングを含む(たとえばデータストア上に格納された)データセットを利用し得る。データセットは、トレーニングもしくは学習システムとして構成されてもよいし、(たとえばCTTシステム114の管理者によって「組織内で」手作業で収集される)専有のものであってもよいし、市販されていてもよいし、または公に利用可能なインターネット知識ベースから得られてもよい。動作604に起因するメッセージ(以下「第1の中間メッセージ」)は、無視されるようにチャット用語モジュール302によってフラグが立てられたチャット用語の単語もしくは句、提案された置換、またはチャット用語モジュール302によって(たとえば識別されたチャット用語の単語または句の代わりに)初期メッセージに挿入されたチャット用語でない単語もしくは句を含み得る。いくつかの例では、第1の中間メッセージは、(たとえばチャット用語モジュール302によって置換が行なわれない時は)初期メッセージと同じであり得る。実施形態に応じて、チャット用語モジュール302に起因する第1の中間メッセージがさらなる処理のために(変換モジュール208内の)別の変換モジュールに提供されてもよいし、またはチャット用語モジュール302によって変換されたメッセージがデータストア210内にあるかどうか判断するために、提案された置換がCTT制御モジュール202に提供されてもよい。動作604に続いて、第1の中間メッセージは、処理のために変換モジュール208の次の動作(たとえば動作606)に提供され得る。
【0066】
動作606において、頭字語モジュール304は、チャットメッセージ中の1つ以上の
頭字語を識別してもよく、さらに、頭字語に対応する(たとえば頭字語によって表される)置換単語または句を提案してもよい。いくつかの実施形態では、頭字語モジュール304は、(たとえば翻訳モジュール116による)後続の機械翻訳中にスキップされるかまたは他の方法で無視されるように、識別された頭字語にフラグを立て得る。加えて、いくつかの実施形態では、人間のオペレータ(たとえばCTTシステム114の管理者)による後のレビューおよび処置のために、識別された頭字語にフラグが立てられ得る。頭字語および/またはその対応する単語もしくは句を識別するために、いくつかの実施形態は、頭字語、ならびに/または頭字語とそれらの対応する単語および句とのマッピングを含む(たとえばデータストア上に格納された)データセットを利用し得る。データセットは、トレーニングもしくは学習システムとして構成されてもよいし、(たとえばCTTシステム114の管理者によって「組織内で」手作業で収集される)専有のものであってもよいし、市販されていてもよいし、または公に利用可能なインターネット知識ベースから得られてもよい。動作606に起因するメッセージ(以下「第2の中間メッセージ」)は、無視されるように頭字語モジュール304によってフラグが立てられた頭字語、提案された置換、または頭字語モジュール304によって(たとえば識別された頭字語の代わりに)メッセージに挿入された単語もしくは句を含み得る。いくつかの例では、第2の中間メッセージは、(たとえば頭字語モジュール304によって置換が行なわれない時は)第1の中間メッセージと同じであり得る。実施形態に応じて、頭字語モジュール304に起因する第2の中間メッセージがさらなる処理のために(変換モジュール208内の)別の変換モジュールに提供されてもよいし、または頭字語モジュール304によって変換されたメッセージがデータストア210内にあるかどうか判断するために、提案された置換がCTT制御モジュール202に提供されてもよい。動作606に続いて、第2の中間メッセージは、処理のために変換モジュール208の次の動作(たとえば動作608)に提供され得る。
【0067】
動作608において、固有名詞モジュール306は、チャットメッセージ中の1つ以上の固有名詞を識別してもよく、さらに、固有名詞に対応する(たとえば固有名詞によって表される)置換単語または句を提案してもよい。いくつかの実施形態では、固有名詞モジュール306は、(たとえば翻訳モジュール116による)後続の機械翻訳中にスキップされるかまたは他の方法で無視されるように、識別された固有名詞にフラグを立て得る。加えて、いくつかの実施形態では、人間のオペレータ(たとえばCTTシステム114の管理者)による後のレビューおよび処置のために、識別された固有名詞にフラグが立てられ得る。固有名詞および/またはその対応する単語もしくは句を識別するために、いくつかの実施形態は、固有名詞(たとえばDisneyland(登録商標)などの周知の固有名詞または個人の通称)、ならびに/または固有名詞とそれらの対応する単語および句とのマッピングを含む(たとえばデータストア上に格納された)データセットを利用し得る。データセットは、トレーニングもしくは学習システムとして構成されてもよいし、(たとえばCTTシステム114の管理者によって「組織内で」手作業で収集される)専有のものであってもよいし、市販されていてもよいし、または公に利用可能なインターネット知識ベースから得られてもよい。動作608に起因するメッセージ(以下「第3の中間メッセージ」)は、無視されるように固有名詞モジュール306によってフラグが立てられた固有名詞、提案された置換、または固有名詞モジュール306によって(たとえば識別された固有名詞の代わりに)メッセージに挿入された単語もしくは句を含み得る。いくつかの例では、第3の中間メッセージは、(たとえば固有名詞モジュール306によって置換が行なわれない時は)第2の中間メッセージと同じであり得る。実施形態に応じて、固有名詞モジュール306に起因する第3の中間メッセージは、さらなる処理のために(変換モジュール208内の)別の変換モジュールに提供されてもよいし、または固有名詞モジュール306によって変換されたメッセージがデータストア210内にあるかどうか判断するために、提案された置換がCTT制御モジュール202に提供されてもよい。動作608に続いて、第3の中間メッセージは、処理のために変換モジュール208の次の動作(たと
えば動作610)に提供され得る。
【0068】
動作610において、普通名詞モジュール308は、チャットメッセージ中の1つ以上の普通名詞を識別してもよく、さらに、普通名詞に対応する(たとえば普通名詞によって表される)置換単語または句を提案してもよい。いくつかの実施形態では、普通名詞モジュール308は、(たとえば翻訳モジュール116による)後続の機械翻訳中にスキップされるかまたは他の方法で無視されるように、識別された普通名詞にフラグを立て得る。加えて、いくつかの実施形態では、人間のオペレータ(たとえばCTTシステム114の管理者)による後のレビューおよび処置のために、識別された普通名詞にフラグが立てられ得る。普通名詞および/またはその対応する単語もしくは句を識別するために、いくつかの実施形態は、普通名詞、ならびに/または普通名詞とそれらの対応する単語および句とのマッピングを含む(たとえばデータストア上に格納された)データセットを利用し得る。データセットは、トレーニングもしくは学習システムとして構成されてもよいし、(たとえばCTTシステム114の管理者によって「組織内で」手作業で収集される)専有のものであってもよいし、市販されていてもよいし、または公に利用可能なインターネット知識ベースから得られてもよい。動作610に起因するメッセージ(以下「第4の中間メッセージ」)は、無視されるように普通名詞モジュール308によってフラグが立てられた普通名詞、提案された置換、または普通名詞モジュール308によって(たとえば識別された普通名詞の代わりに)メッセージに挿入された単語もしくは句を含み得る。いくつかの例では、第4の中間メッセージは、(たとえば普通名詞モジュール308によって置換が行なわれない時は)第3の中間メッセージと同じであり得る。実施形態に応じて、普通名詞モジュール308に起因する第4の中間メッセージは、さらなる処理のために(変換モジュール208内の)別の変換モジュールに提供されてもよいし、または普通名詞モジュール308によって変換されたメッセージがデータストア210内にあるかどうか判断するために、提案された置換がCTT制御モジュール202に提供されてもよい。動作610に続いて、第4の中間メッセージは、処理のために変換モジュール208の次の動作(たとえば動作612)に提供され得る。
【0069】
動作612において、口語モジュール310は、チャットメッセージ中の1つ以上の口語的な単語または句を識別してもよく、さらに、識別された単語または句のための置換(たとえば対応する正式な/つまり非口語的な)単語または句を提案してもよい。いくつかの実施形態では、口語モジュール310は、(たとえば翻訳モジュール116による)後続の機械翻訳中にスキップされるかまたは他の方法で無視されるように、識別された口語的な単語または句にフラグを立て得る。加えて、いくつかの実施形態では、人間のオペレータ(たとえばCTTシステム114の管理者)による後のレビューおよび処置のために、識別された口語的な単語または句にフラグが立てられ得る。口語的な単語もしくは句および/またはその対応する(正式な)単語もしくは句を識別するために、いくつかの実施形態は、口語的な単語もしくは句、ならびに/または口語的な単語もしくは句とそれらの対応する単語および句とのマッピングを含む(たとえばデータストア上に格納された)データセットを利用し得る。データセットは、トレーニングもしくは学習システムとして構成されてもよいし、(たとえばCTTシステム114の管理者によって「組織内で」手作業で収集される)専有のものであってもよいし、市販されていてもよいし、または公に利用可能なインターネット知識ベースから得られてもよい。動作612に起因するメッセージ(以下「第5の中間メッセージ」)は、無視されるように口語モジュール310によってフラグが立てられた口語的な単語もしくは句、提案された置換、または口語モジュール310によって(たとえば識別された口語的な単語もしくは句の代わりに)メッセージに挿入された非口語的な単語もしくは句を含み得る。いくつかの例では、第5の中間メッセージは、(たとえば口語名詞モジュール310によって置換が行なわれない時は)第4の中間メッセージと同じであり得る。実施形態に応じて、口語モジュール310に起因する第5の中間メッセージがさらなる処理のために(変換モジュール208内の)別の変換モ
ジュールに提供されてもよいし、または口語モジュール310によって変換されたメッセージがデータストア210内にあるかどうか判断するために、提案された置換がCTT制御モジュール202に提供されてもよい。動作612に続いて、第5の中間メッセージは、処理のために変換モジュール208の次の動作(たとえば動作614)に提供され得る。
【0070】
動作614において、スペルチェックモジュール312は、チャットメッセージ中の1つ以上のミススペルされた単語または句を識別してもよく、さらに、識別された単語または句のための置換(たとえば訂正された)単語または句を提案してもよい。たとえば、スペルチェックモジュール312は、提案された置換単語または句によって単語または句を自動的に訂正し得る。いくつかの実施形態では、スペルチェックモジュール312は、(たとえば翻訳モジュール116による)後続の機械翻訳中にスキップされるかまたは他の方法で無視されるように、識別されたミススペルされた単語または句にフラグを立て得る。加えて、いくつかの実施形態では、人間のオペレータ(たとえばCTTシステム114の管理者)による後のレビューおよび処置のために、識別されたミススペルされた単語または句にフラグが立てられ得る。ミススペルされた単語もしくは句および/またはその対応する(訂正された)単語もしくは句を識別するために、いくつかの実施形態は、ミススペルされた単語もしくは句、ならびに/またはミススペルされた単語もしくは句とそれらの対応する単語および句とのマッピングを含む(たとえばデータストア上に格納された)データセットを利用し得る。データセットは、トレーニングもしくは学習システムとして構成されてもよいし、(たとえばCTTシステム114の管理者によって「組織内で」手作業で収集される)専有のものであってもよいし、市販されていてもよいし、または公に利用可能なインターネット知識ベースから得られてもよい。動作614に起因するメッセージ(以下「第6の中間メッセージ」)は、無視されるようにスペルチェックモジュール312によってフラグが立てられたミススペルされた単語もしくは句、提案された置換、またはスペルチェックモジュール312によって(たとえばミススペルされた単語もしくは句の代わりに)メッセージに挿入された訂正された単語もしくは句を含み得る。いくつかの例では、第6の中間メッセージは、(たとえばスペルチェックモジュール312によって置換が行なわれない時は)第5の中間メッセージと同じであり得る。実施形態に応じて、スペルチェックモジュール312に起因する第6の中間メッセージは、さらなる処理のために(変換モジュール208内の)別の変換モジュールに提供されてもよいし、またはスペルチェックモジュール312によって変換されたメッセージがデータストア210内にあるかどうか判断するために、提案された置換がCTT制御モジュール202に提供されてもよい。動作614に続いて、第6の中間メッセージは、処理のために変換モジュール208の次の動作(たとえば動作616)に提供され得る。
【0071】
動作616において、略語モジュール314は、チャットメッセージ中の1つ以上の略語を識別してもよく、さらに、略語に対応する(たとえば略語によって表される)置換単語または句を提案してもよい。いくつかの実施形態では、略語モジュール314は、(たとえば翻訳モジュール116による)後続の機械翻訳中にスキップされるかまたは他の方法で無視されるように、識別された略語にフラグを立て得る。加えて、いくつかの実施形態では、人間のオペレータ(たとえばCTTシステム114の管理者)による後のレビューおよび処置のために、識別された略語にフラグが立てられ得る。略語および/またはその対応する単語もしくは句を識別するために、いくつかの実施形態は、略語、ならびに/または略語とそれらの対応する単語および句とのマッピングを含む(たとえばデータストア上に格納された)データセットを利用し得る。データセットは、トレーニングもしくは学習システムとして構成されてもよいし、(たとえばCTTシステム114の管理者によって「組織内で」手作業で収集される)専有のものであってもよいし、市販されていてもよいし、または公に利用可能なインターネット知識ベースから得られてもよい。動作616に起因するメッセージ(以下「第7の中間メッセージ」)は、無視されるように略語モ
ジュール314によってフラグが立てられた略語、提案された置換、または略語モジュール314によって(たとえば識別された略語の代わりに)メッセージに挿入された単語もしくは句を含み得る。いくつかの例では、第7の中間メッセージは、(たとえば略語モジュール314によって置換が行なわれない時は)第6の中間メッセージと同じであり得る。実施形態に応じて、略語モジュール314に起因する第7の中間メッセージがさらなる処理のために(変換モジュール208内の)別の変換モジュールに提供されてもよいし、または略語モジュール314によって変換されたメッセージがデータストア210内にあるかどうか判断するために、提案された置換がCTT制御モジュール202に提供されてもよい。動作616に続いて、第7の中間メッセージは、処理のために変換モジュール208の次の動作(たとえば動作618)に提供され得る。
【0072】
動作618において、卑罵語モジュール316は、チャットメッセージ中の1つ以上の卑罵的な単語または句(以下「卑罵語」と称する)を識別してもよく、さらに、卑罵語に
対応する置換単語または句(たとえば適切な代替語)(たとえばトーンダウンした婉曲表現)を提案してもよい。いくつかの実施形態では、卑罵語モジュール316は、(たとえば翻訳モジュール116による)後続の機械翻訳中にスキップされるかまたは他の方法で無視されるように、識別された卑罵語にフラグを立て得る。加えて、いくつかの実施形態では、人間のオペレータ(たとえばCTTシステム114の管理者)による後のレビューおよび処置のために、卑罵語にフラグが立てられ得る。卑罵語および/またはその対応する単語もしくは句を識別するために、いくつかの実施形態は、卑罵語、ならびに/または卑罵語とそれらの対応する単語および句とのマッピングを含む(たとえばデータストア上に格納された)データセットを利用し得る。データセットは、トレーニングもしくは学習システムとして構成されてもよいし、(たとえばCTTシステム114の管理者によって「組織内で」手作業で収集される)専有のものであってもよいし、市販されていてもよいし、または公に利用可能なインターネット知識ベースから得られてもよい。動作618に起因するメッセージ(以下「第8の中間メッセージ」)は、無視されるように卑罵語モジュール316によってフラグが立てられた卑罵語、提案された置換、または卑罵語モジュール316によって(たとえば識別された卑罵語の代わりに)メッセージに挿入された単語もしくは句を含み得る。いくつかの例では、第8の中間メッセージは、(たとえば卑罵語モジュール316によって置換が行なわれない時は)第7の中間メッセージと同じであり得る。実施形態に応じて、卑罵語モジュール316に起因する第8の中間メッセージがさらなる処理のために(変換モジュール208内の)別の変換モジュールに提供されてもよいし、または卑罵語モジュール316によって変換されたメッセージがデータストア210内にあるかどうか判断するために、提案された置換がCTT制御モジュール202に提供されてもよい。動作618に続いて、第8の中間メッセージは、処理のために変換モジュール208の次の動作に提供され得る。次いで方法600は終了し得る。
【0073】
いくつかの実施形態に従って、変換モジュール208に最終的に起因するメッセージ(たとえば動作618に起因する第8の中間メッセージ)は、対応するメッセージについて翻訳データストア210に照会するためにその後用いられてもよい。対応するメッセージは、結果として得られるメッセージについての翻訳として機能することができる。当業者は、いくつかの例では、変換モジュール208に起因するメッセージ(たとえば翻訳データストア210への照会のためにその後用いられるメッセージ)は、初期メッセージに変換が適用されていない(たとえば、いずれの変換も適用されることなく初期メッセージが動作604〜618を通過した)場合には、(たとえば動作602において)受信された初期メッセージと同じであり得ることを認識するであろう。
【0074】
当業者は、様々な実施形態が図示よりも多くの動作または少ない動作を行なってもよく、図示したものとは異なる動作を行なってもよく、異なる順序で動作を行なってもよいことも認識するであろう。概して、行なわれる変換動作の種類、およびそれらが行なわれる
順序は、実施形態によって採用される変換手順に依存し得る。ここに注記されるように、様々な実施形態は、それぞれの変換を実現する際に異なる変換/翻訳手順を実現し得る。ある手順は、特定の翻訳アプリケーションまたは翻訳コンテキストによく適している。採用される変換/翻訳手順は、どの変換動作が行なわれるか、その変換動作がいつ行なわれるか、またはどの順序でその変換動作が行なわれるかを決定し得る。変換/翻訳手順は、どんな翻訳が翻訳データストアにポピュレートされるか、変換/翻訳処理全体のうちいつ翻訳データストアが利用されるかを決定し得る。
【0075】
いくつかの実施形態について、方法600における動作に起因する中間メッセージは、方法600における後続の動作に起因するメッセージに対して影響力および/またはカスケード効果を有し得る。加えて、いくつかの実施形態について、チャットメッセージが方法600によって処理される時、方法が終了する前に、フローチャート600の各動作がチャットメッセージに対して行なわれ得る。代替的に、いくつかの実施形態について、フローチャート600の方法は、(たとえば、少なくとも1つの動作がチャットメッセージの変換に帰着した後で)図示されている動作のサブセットのみの性能によって早期に終了し得る。いくつかの実施形態によれば、フローチャート500の各動作の実行後、結果として得られた最新の変換されたメッセージに基づく所望の言語での対応するメッセージについての翻訳データストア210への照会が続き得る。対応するメッセージが識別された場合、フローチャート500の方法は早期に終了し得る。
【0076】
様々な実施形態について、方法600は、動作604〜612を並行して行ない得る。たとえば、CTT制御モジュール202は、初期メッセージに対して2つ以上の動作604〜612を並行して行い、それらの2つ以上の動作の各々から別個の応答を受信し得る。各応答は、フラグが立てられたテキスト部分、提案された置換、または初期メッセージに挿入された単語もしくは句を含み得る。その後、CTT制御モジュール202は、場合によっては(たとえば、さらなる処理のために、かつどんな先例に従って、どの変換されたメッセージが選択されるかを決定することができる)選択の優先順位に従って、後続の処理(たとえば翻訳データストア210への照会、または翻訳モジュール116による翻訳)のために、受信した応答のうち1つを選択し得る。
【0077】
たとえば、方法600中に、CTT制御モジュール202は、初期メッセージに対して、チャット用語処理を識別するための動作604、普通名詞処理のための動作610、および略語処理のための動作616を行い得る。それに応答して、動作604はチャット用語について変換された初期メッセージを戻し得る。動作610は元のままの初期メッセージを戻し得る。動作616は、略語について変換された初期メッセージを戻し得る。その後、選択の優先順位に基づいて、CTT制御モジュール202は、動作616から戻された変換されたメッセージをさらなる処理のために選択し得る。
【0078】
ある実施形態について、方法600の様々な動作を行なうことに対して時間制限が実施される。時間制限は、時間制限が切れる前に応答/結果が受信されなければ、方法600の変換動作に実行を停止させ得る。その際、様々な実施形態は、ある変換動作が翻訳/翻訳処理全体を不必要に妨害しないことを保証し得る。
【0079】
上記の方法のステップはある順序で表され、記載され得るが、当業者は、ステップが行なわれる順序は実施形態間で変動し得ることを認識するであろう。加えて、当業者は、フローチャート600の方法に関して上記したコンポーネントは当該方法で使用され得るコンポーネントの例にすぎず、いくつかの実施形態については、他のコンポーネントもいくつかの実施形態において利用され得ることを認識するであろう。
【0080】
図7は、様々な実施形態に係る、チャットクライアントシステム104(たとえば10
4−1および104−2)間での典型的な多言語チャットセッションを例示する図700である。図示されるように、チャットクライアントシステム104−1は、チャットクライアントGUIモジュール406−1を含み得る。チャットクライアントシステム104−2は、チャットクライアントGUIモジュール406−2を含み得る。本明細書に記載されるように、チャットクライアントGUIモジュール406−1および406−2の各々は、それらの間で共有されるチャットセッションへの図形入力/出力アクセス権を、チャットクライアントシステム104−1および104−2におけるユーザにそれぞれ提供するように構成され得る。いくつかの実施形態について、チャットクライアントGUIモジュール406−1および406−2は、送受信されたチャットダイアログに関するユーザ対話を受信するように適合されたクライアントGUIを、それぞれのユーザに提示し得る。
【0081】
図7において双方向矢印によって表される)チャットダイアログ712がチャットクライアントシステム104−1および104−2の間で渡されると、チャットクライアントGUIモジュール406−1および406−2は、それぞれのチャットクライアントシステム104−1または104−2におけるユーザによって(暗示的にまたは明示的に)選択された言語でチャットダイアログ712を提示し得る。図示されるように、チャットクライアントGUIモジュール406−1は、チャットダイアログ712を第1の言語(たとえば英語)で出力領域708に提示し、かつ第1の言語でのチャット入力を第2の領域710において受信するように構成されたチャットダイアログボックス702を含み得る。チャットクライアントGUIモジュール406−2は、チャットダイアログ712を第2の言語(たとえばフランス語)で出力領域720に提示し、かつ第2の言語でのチャット入力を第2の領域722において受信するように構成されたチャットダイアログボックス714を含み得る。いくつかの実施形態について、チャットダイアログ712がダイアログボックス702および714に提示される時、チャットダイアログ712においてチャットメッセージを入力するユーザと関連付けられたユーザ名(たとえばユーザオンライン識別子)の提示を含み得る。
【0082】
図7の例示された実施形態では、チャットクライアントシステム104−1について選択された言語は英語であり、チャットクライアントシステム104−2について選択された言語はフランス語である。したがって、チャットメッセージ704(”LOL”)および
706(”Who u laughin at?”)がチャットクライアントGUIモジュール406−1
のダイアログボックス702に英語で提示される一方、それぞれ対応するチャットメッセージ716(”MDR”)および718(”Qui te fair rire?”)がチャットクライアントGUIモジュール406−2のダイアログボックス714にフランス語で提示される。チャットメッセージ704,706,716,および718の翻訳は、本明細書に記載される様々なシステムおよび方法によって円滑化され得る。チャットメッセージ704,706,716,および718と同様のメッセージの翻訳に関して、図8図10を参照してさらに述べる。
【0083】
図8は、様々な実施形態に係る典型的な多言語通信方法800の動作を例示するフローチャートである。下記のように、いくつかの実施形態について、方法800は、チャットクライアントシステム104−1、チャットクライアントシステム104−2、および(たとえばチャットサーバ108の)CTTシステム114に関連した動作を行ない得る。特に、図8は、いくつかの実施形態に係る、テキスト”LOL”を含む英語のチャットメッ
セージの、フランス語のチャットメッセージへの翻訳を例示する。そのような状況は、第1のチャットクライアントシステム104−1においてユーザによって用いられている言語が英語であり、第2のチャットクライアントシステム104−2においてユーザによって用いられている言語がフランス語である場合に生じ得る。いくつかの実施形態によれば、CTTシステム114は、チャットクライアントシステム104−1および104−2についてこれらの言語選択/嗜好を自動的に検出し得る。
【0084】
図示されるように、動作802において、第1のチャットクライアントシステム104−1は、第2のチャットクライアントシステム104−2への(たとえばチャットホストシステム112を介した)伝送のために英語のメッセージを送信し得る。英語のメッセージは、翻訳処理のために、CTTシステム114のCTT制御モジュール202に送られ得る。
【0085】
動作804において、CTT制御モジュール202は、英語のチャットメッセージ(”LOL”)に対応し、かつあらかじめフランス語に翻訳されているチャットメッセージにつ
いて翻訳データストア210に照会し得る。それに応答して、動作806において、翻訳データストア210は、英語のチャットメッセージ(”LOL”)に対応した、対応するフ
ランス語のメッセージ(”MDR”)をCTT制御モジュール202に戻し得る。その後、
動作808において、CTT制御モジュール202は、対応するフランス語のチャットメッセージ(”MDR”)を第2のチャットクライアントシステム104−2に伝送すること
を支援し得る(たとえばCTTシステム114は、チャットホストシステム112への伝送のために、対応するフランス語のチャットメッセージを送信する)。
【0086】
図9は、様々な実施形態に係る典型的な多言語通信方法900の動作を例示するフローチャートである。下記のように、いくつかの実施形態について、フローチャート900に
よって例示される方法は、チャットクライアントシステム104−1、チャットクライアントシステム104−2、(たとえばチャットサーバ108の)CTTシステム114、および(たとえば翻訳サーバ110の)翻訳モジュール116に関連した動作を行ない得る。特に、図9は、いくつかの実施形態に係る、テキスト”LOL”を含む英語のチャット メッセージの、フランス語の相当するチャットメッセージへの翻訳を例示する。図8の例示された実施形態とは異なり、図9は、(たとえばCTTシステム114の)変換モジュール208および翻訳モジュール116の使用を例示する。
【0087】
図示されるように、動作902において、第1のチャットクライアントシステム104−1は、フランス語を話すユーザを有する第2のチャットクライアントシステム104−2への(たとえばチャットホストシステム112を介した)伝送のために、英語のチャットメッセージを送信し得る。英語のチャットメッセージは、翻訳処理のためにCTTシステム114のCTT制御モジュール202に送られ得る。
【0088】
動作904において、CTT制御モジュール202は、英語のチャットメッセージ(”LOL”)に対応するフランス語の相当するチャットメッセージについて翻訳データストア
210に照会し得る。それに応答して、動作906において、翻訳データストア210は、照会の失敗をCTT制御モジュール202に戻して、英語のチャットメッセージ(”LOL”)について対応するフランス語のチャットメッセージを翻訳データストア210が有
していないことを示してもよい。そのような場合、動作908において、CTT制御モジュール202は、ある実施形態に係る変換処理のために、変換モジュール208に英語のチャットメッセージを送信し得る。本明細書に記載されるように、変換モジュール208は、チャットメッセージをさらなる翻訳処理により好適なメッセージに変換するように構成された複数の変換関連モジュール932を含み得る。
【0089】
動作910において、変換モジュール208のチャット用語モジュール302は、英語のチャットメッセージ(”LOL”)を変換された英語のチャットメッセージ(”laugh out
loud”)に変換し得、さらなる処理のために、変換された英語のチャットメッセージを
CTT制御モジュール202に戻し得る。当業者は、いくつかの実施形態について、変換された英語のチャットメッセージがCTT制御モジュール202に戻される前に、変換モ
ジュール208の追加モジュールによって英語のチャットメッセージが処理され得ることを認識するであろう。
【0090】
動作912において、CTT制御モジュール202は、変換された英語のチャットメッセージ(”laugh out loud”)に対応するフランス語の相当するチャットメッセージについて翻訳データストア210に照会し得る。それに応答して、動作914において、翻訳データストア210は、照会の失敗をCTT制御モジュール202に戻して、変換された英語のチャットメッセージ(”laugh out loud”)について対応するフランス語のチャットメッセージを翻訳データストア210が有していないことを示してもよい。そのような場合、動作916において、CTT制御モジュール202は、ある実施形態に係る機械翻訳処理のために、翻訳モジュール116に変換された英語のチャットメッセージを送信し得る。
【0091】
動作918において、翻訳モジュール116は、変換された英語のチャットメッセージに対応する機械翻訳されたフランス語のチャットメッセージ(”mort de rire”)を戻し得る。結果として得られる機械翻訳されたフランス語のチャットメッセージ(”mort de rire”)は、英語のチャット用語チャットメッセージ(”LOL”)の変換された翻訳の一
例である。
【0092】
動作920において、CTT制御モジュール202は、ある実施形態に係る機械翻訳されたフランス語のチャットメッセージのさらなる変換処理のために、機械翻訳されたフランス語のチャットメッセージ(”mort de rire”)を変換モジュール208に送信し得る。ここに注記されるように、フランス語の翻訳をさらに改良するためのさらなる変換処理のために、機械翻訳されたテキストが送信され得る。たとえば、当初の英語のチャットメッセージが英語のチャット用語を含んでいた場合、追加的な変換処理は可能な範囲でフランス語のチャット用語を追加することができる。したがって、動作922において、変換モジュール208のチャット用語モジュール302は、機械翻訳されたフランス語のチャットメッセージ(”mort de rire”)を変換されたフランス語のチャットメッセージ(”MDR”)に変換してもよく、変換されたフランス語のチャットメッセージをさらなる処理
のためにCTT制御モジュール202に戻してもよい。
【0093】
最終的に、動作924において、CTT制御モジュール202は、対応するフランス語のチャットメッセージ(”MDR”)を第2のチャットクライアントシステム104−2に
伝送することを支援し得る(たとえばCTTシステム114は、伝送のために、対応するフランス語のチャットメッセージをチャットホストシステム112に送信する)。加えて、動作926において、CTT制御モジュール202は、当初の英語のチャットメッセージ(”LOL”)と翻訳されたフランス語のチャットメッセージ(”MDR”)との間の変換された翻訳の翻訳マッピングを翻訳データストア210に格納し得る。一旦マッピングが翻訳データストア210に格納されると、たとえば図8に例示されるように、将来の翻訳を高速化するために翻訳エントリを格納するのに用いられ得る。ここに注記されるように、翻訳データストア210は、変換された翻訳および変換されていない翻訳のマッピングを格納し得る。
【0094】
いくつかの実施形態について、CTT制御モジュール202は、方法900の動作中に判断された相当する(変換された、および変換されていない)翻訳マッピングも格納し得る。ある実施形態について、翻訳マッピングは、当初は翻訳データストア210になかったチャットメッセージ(たとえば動作904について示されたチャットメッセージ、および動作912について示されたチャットメッセージ)と、翻訳データストア210のルックアップ後に続く動作中に判断された対応するメッセージとの間のものであり得る(たとえば、変換モジュール208および/または翻訳モジュール116を介した、結果を戻さ
ない翻訳データストア210に対する照会と、照会後に判断された対応するチャットメッセージとの間のマッピング)。
【0095】
たとえば、図9に示されるように、CTT制御モジュール202は、当初の英語のチャットメッセージ(動作904における”LOL”、および動作912における変換された英
語のチャットメッセージ(”laugh out loud”)(両方とも翻訳データストア210からCTT制御モジュール202が(それぞれ動作906および914において)結果を受信しないことになる))について、翻訳データストア210に照会する。しかし、動作916において、CTT制御モジュール202は、変換された英語のメッセージ(”laugh out loud”)を機械翻訳のために機械翻訳モジュール116に最終的に送信し、それに応答して、動作918において機械翻訳されたフランス語のチャットメッセージ(”mort de rire”)を受信する。したがって、動作928において、CTT制御モジュール202は、当初の英語のチャットメッセージ(”LOL”)と機械翻訳されたフランス語のチャット
メッセージ(”mort de rire”)との間の変換された翻訳の翻訳マッピングを翻訳データストア210に格納し得る。同様に、動作930において、CTT制御モジュール202は、変換された英語のチャットメッセージ(”laugh out loud”)と機械翻訳されたフランス語のチャットメッセージ(”mort de rire”)との間の変換された翻訳の翻訳マッピングを翻訳データストア210に格納し得る。その際、方法900が次に当初の英語のチャットメッセージ(”LOL”)または変換された英語のチャットメッセージ(”laugh out
loud”)について翻訳データストア210に照会すると、翻訳データストア210は、
対応する変換された翻訳を提供することになる。
【0096】
図10は、様々な実施形態に係る典型的な多言語通信方法1000の動作を例示するフローチャートである。下記のように、いくつかの実施形態について、方法1000は、チャットクライアントシステム104−1、チャットクライアントシステム104−2、(たとえばチャットサーバ108の)CTTシステム114、および(たとえば翻訳サーバ110の)翻訳モジュール116に関連した動作を行ない得る。特に、図10は、いくつかの実施形態に係る、テキスト”Who u laughin at?”を含む英語のチャットメッセージ
の、フランス語のチャットメッセージへの翻訳を例示する。
【0097】
図示されるように、動作1002において、第1のチャットクライアントシステム104−1は、第2のチャットクライアントシステム104−2への(たとえばチャットホストシステム112を介した)伝送のために英語のチャットメッセージを送信し得る。英語のチャットメッセージは、翻訳処理のためにCTTシステム114のCTT制御モジュール202に送られ得る。
【0098】
動作1004において、CTT制御モジュール202は、英語のチャットメッセージ(Who u laughin at?)に対応するフランス語の相当するチャットメッセージについて翻訳
データストア210に照会し得る。それに応答して、動作1006において、翻訳データストア210は、照会の失敗をCTT制御モジュール202に戻して、英語のチャットメッセージ(Who u laughin at?)について対応するフランス語のチャットメッセージを翻
訳データストア210が有していないことを示してもよい。そのような場合、動作1008において、CTT制御モジュール202は、ある実施形態に係る変換処理のために、英語のチャットメッセージを変換モジュール208に送信し得る。本明細書に記載されるように、変換モジュール208は、チャットメッセージをさらなる翻訳処理により好適なメッセージに変換するように構成された複数の変換関連モジュール1036を含んでもよい。
【0099】
動作1010において、変換モジュール208のチャット用語モジュール302は、英語のチャットメッセージ(Who u laughin at?)を変換された英語のチャットメッセージ
(Who you laughin at?)に変換し、変換された英語のチャットメッセージを、スペルチ
ェックモジュール312などの、さらなる処理のための変換モジュール208の追加モジュールに渡してもよい。
【0100】
本明細書において述べたように、チャット用語モジュール302を含む変換モジュール208の様々なモジュールは、チャットメッセージ中の1つ以上の単語または句を識別し、かつ識別された単語または句のための置換単語または句を提案するように構成され得る。したがって当業者は、いくつかの実施形態について、変換モジュール208のモジュールによって行なわれた/提案された変換は、チャットメッセージの単語から句への変換または句から句への変換を伴い得ることを認識するであろう。たとえば、動作1010において、チャット用語モジュール302は、場合によっては変換中に”who u”という句を
”who are you”に置換すること/置換を提案する(その後、”laughin”という単語を”laughing”に置換する/置換を提案する)ことによって、英語のチャットメッセージ(”Who u laughin at?”)を、変換された英語のチャットメッセージ(”Who are you laughing at?”)に代替的に変換し得る。その際、チャット用語モジュール302などの変換
モジュール208の様々なモジュールは、場合によっては変換モジュール208中の別個のモジュールが文法の向上を実現する必要性をなくしつつ、それぞれの変換に対する文法的な向上をもたらし得る。
【0101】
いくつかの実施形態について、変換された英語のチャットメッセージが変換モジュール208の追加モジュールに渡される前に、チャット用語モジュール302は、変換された英語のチャットメッセージを動作1010においてCTT制御モジュール202に渡し得る。次に、CTT制御モジュール202は、変換された英語のチャットメッセージ(”Who you laughin at?”)に対応するフランス語の相当するチャットメッセージについて(
動作1012において)翻訳データストア210に照会し得る。それに応答して、動作1014において、翻訳データストア210は、照会の失敗をCTT制御モジュール202に戻して、変換された英語のチャットメッセージ(”Who you laughin at?”)について
対応するフランス語のチャットメッセージを翻訳データストア210が有していないことを示してもよい。
【0102】
動作1016において、スペルチェックモジュール312は、変換された英語のチャットメッセージ(”Who you laughin at?”)に対して動作1018においてスペルチェッ
ク処理を行ない得る。スペルチェック処理中に、スペルチェックモジュール312は、変換された英語のチャットメッセージを訂正された英語のチャットメッセージ(”Who you laughing at?”)に訂正してもよく、訂正された英語のチャットメッセージをCTT制御モジュール202に戻してもよい。当業者は、いくつかの実施形態について、訂正された英語のチャットメッセージは、変換された英語のチャットメッセージがCTT制御モジュール202に戻される前に、変換モジュール208の追加モジュールによって処理され得ることを認識するであろう。
【0103】
動作1020において、CTT制御モジュール202は、訂正された英語のチャットメッセージ(”Who you laughing at?”)に対応するフランス語の相当するチャットメッセージについて翻訳データストア210に照会し得る。それに応答して、動作1022において、翻訳データストア210は、照会の失敗をCTT制御モジュール202に戻して、訂正された英語のチャットメッセージ(”Who you laughing at?”)について対応するフランス語のチャットメッセージを翻訳データストア210が有していないことを示してもよい。そのような場合、動作1024において、CTT制御モジュール202は、ある実施形態に係る機械翻訳処理のために、訂正された英語のチャットメッセージを翻訳モジュール116に送信し得る。
【0104】
動作1026において、翻訳モジュール116は、訂正された英語のチャットメッセージに対応する機械翻訳されたフランス語のチャットメッセージ(”Qui te fait rire?”
)を戻し得る。動作1028において、CTT制御モジュール202は、ある実施形態に係る機械翻訳されたフランス語のチャットメッセージのさらなる変換処理のために、機械翻訳されたフランス語のチャットメッセージ(”Qui te fait rire?”)を変換モジュー
ル208に送信し得る。
【0105】
ここに注記されるように、機械翻訳されたテキストは、テキストの翻訳をさらに改良するためのさらなる変換処理のために送信され得る。たとえば、当初の英語のチャットメッセージが英語のチャット用語を含んでいた場合、追加的な変換処理は可能な範囲でフランス語のチャット用語を追加することができる。動作1030において、変換モジュール208は、変更されていない機械翻訳されたフランス語のチャットメッセージ(”Qui te fait rire?”)をさらなる処理のためにCTT制御モジュール202に戻し得る(たとえ
ば変換モジュール208のモジュールが機械翻訳されたフランス語のチャットメッセージにいずれの変更も適用しない場合)。
【0106】
動作1032において、CTT制御モジュール202は、機械翻訳されたフランス語のチャットメッセージ(”Qui te fait rire?”)を第2のチャットクライアントシステム
104−2に伝送することを支援し得る(たとえばCTTシステム114は、伝送のために、対応するフランス語のチャットメッセージをチャットホストシステム112に送信する)。加えて、動作1034において、CTT制御モジュール202は、当初の英語のチャットメッセージ(”Who u laughin at?”)と翻訳されたフランス語のチャットメッセ
ージ(”Qui te fait rire?”)との間の翻訳マッピングを翻訳データストア210に格
納し得る。本明細書に記載されるように、追加的な動作(図示せず)において、CTT制御モジュール202は、翻訳データストア210に対するあらかじめ失敗した照会とそれらの照会後に判断された対応するメッセージとに基づく相当する翻訳マッピングも翻訳データストア210に格納し得る。(たとえば図9の動作928および930と同様)。
【0107】
いくつかの実施形態によれば、変換モジュール208によって行なわれる変換動作は、ある変換動作を並行して行なうことを含み、ある変換動作を連続して行ない得る。変換動作が並列にかつ連続して行なわれる順序は、様々な実施形態間で変動し得る。本明細書に記載されるように、変換動作が並行して行なわれる場合、いくつかの実施形態は、さらなる処理のためにどの変換されたメッセージがどの先例に従って選択されるかを決定する選択の優先順位を採用し得る。
【0108】
図11は、様々な実施形態に係る典型的な多言語通信方法1100の動作を例示するフローチャートである。下記のように、いくつかの実施形態について、方法1100は、チャットクライアントシステム104−1、チャットクライアントシステム104−2、(たとえばチャットサーバ108の)CTTシステム114、および(たとえば翻訳サーバ110の)翻訳モジュール116に関連した動作を行ない得る。特に、図11は、いくつかの実施形態に係る、並行な変換動作による”Who u laughin at?”というテキストを含
む英語のチャットメッセージの、フランス語のチャットメッセージへの翻訳を例示する。
【0109】
図示されるように、動作1102において、第1のチャットクライアントシステム104−1は、第2のチャットクライアントシステム104−2への(たとえばチャットホストシステム112を介した)伝送のために英語のチャットメッセージを送信し得る。英語のチャットメッセージは、翻訳処理のためにCTTシステム114のCTT制御モジュール202に送られ得る。
【0110】
動作1104において、CTT制御モジュール202は、英語のチャットメッセージ(
”Who u laughin at?”)に対応するフランス語の相当するチャットメッセージについて
翻訳データストア210に照会し得る。それに応答して、動作1106において、翻訳データストア210は、照会の失敗をCTT制御モジュール202に戻して、英語のチャットメッセージ(”Who u laughin at?”)について対応するフランス語のチャットメッセ
ージを翻訳データストア210が有していないことを示してもよい。
【0111】
そのような場合、CTT制御モジュール202は、ある実施形態に係る英語のチャットメッセージを、変換処理のために変換モジュール208に送信し得る。本明細書に記載されるように、変換モジュール208は、チャットメッセージをさらなる翻訳処理により好適なメッセージに変換するように構成された複数の変換関連モジュール1130を含み得る。図11に示されるように、動作1108中に、CTT制御モジュール202は、英語のチャットメッセージ(”Who u laughin at?”)を変換モジュール208の2つ以上の
変換関連モジュール1130に並行して送信し得る。加えて、動作1108中に、CTT制御モジュール202は、変換関連モジュール1130からの結果を並行して受信し、変換結果に基づいて翻訳データストア210に照会を並行して送信し得る。
【0112】
したがって、動作1110aにおいて、CTT制御モジュール202は、英語のチャットメッセージ(”Who u laughin at?”)を変換処理のためにチャット用語モジュール3
02に送信し得る。並行して、動作1110bにおいて、CTT制御モジュール202は、英語のチャットメッセージ(”Who u laughin at?”)を変換処理のためにスペルチェ
ックモジュール312に送信し得る。その後、CTT制御モジュール202は、動作1112aにおいて第1の変換された英語のチャットメッセージ(”Who you laughin at?”
)をチャット用語モジュール302から受信し得る一方、動作1112bにおいて、CTT制御モジュール202は、第2の変換された英語のチャットメッセージ(”Who u laughin at?”)をスペルチェックモジュール312から受信し得る。それぞれの変換処理時
間に依存して、チャット用語モジュール302、スペルチェックモジュール312および他の変換関連モジュール1130は、連続して、または互いに並行してCTT制御モジュール202に応答し得る。
【0113】
その後、動作1114aにおいて、CTT制御モジュール202は、第1の変換された英語のチャットメッセージ(”Who you laughin at?”)に対応するフランス語の相当す
るチャットメッセージについて翻訳データストア210に照会し得る。動作1114bにおいて、CTT制御モジュール202は、第2の変換された英語のチャットメッセージ(”Who u laughing at?”)に対応するフランス語の相当するチャットメッセージについて翻訳データストア210に照会し得る。いくつかの実施形態について、動作1114aおよび1114b中に、CTT制御モジュール202は、連続してまたは並行して翻訳データストア210に照会し得る。いくつかの実施形態では、照会のタイミングは、変換モジュール208の変換関連モジュール1130がいつそれぞれの応答を戻すかに依存し得る。図11に示されるように、翻訳データストア210は、動作1116aおよび1116bにおいて、照会について照会失敗(たとえば<失敗>)を戻し得る。
【0114】
最終的に、CTT制御モジュール202は、並行動作1108に起因する2つ以上のメッセージから、1つの変換されたメッセージをさらなる処理のために選択し得る。変換関連モジュール1130のうち1つのみが変換されたメッセージをもたらす場合、CTT制御モジュール202は、その特定の変換されたメッセージをさらなる処理のために選択し得る。ここに注記されるように、CTT制御モジュール202は、選択の優先順位に基づいて変換されたメッセージを選択し得る。選択の優先順位は、実施形態によって選択された変換/翻訳手順に従って決定され得る。いくつかの実施形態について、選択の優先順位は、変換されたメッセージが最も正式なコンテンツを有するか、変換されたメッセージが最多の変換を有するか、または変換されたメッセージが機械翻訳に好適な変換されたメッ
セージを生成する可能性が高いことで知られる変換関連モジュールに起因するかどうかに基づき得る。
【0115】
変換されたメッセージが選択されると、動作1118において、CTT制御モジュール202は、ある実施形態に係る機械翻訳処理のために、変換された英語のチャットメッセージを翻訳モジュール116に送信し得る。たとえば、図11に示されるように、CTT制御モジュール202は、翻訳モジュール116に送信するために、チャット用語モジュール302によって生成された第1の変換された英語のチャットメッセージ(”Who you laughin at?”)を選択し得る。
【0116】
動作1120において、翻訳モジュール116は、(ミススペルされた単語“laughin
”を含むにもかかわらず)第1の変換された英語のチャットメッセージに対応する機械翻訳されたフランス語のチャットメッセージ(”Qui te fait rire?”)を戻し得る。動作
1122において、CTT制御モジュール202は、ある実施形態に係る機械翻訳されたフランス語のチャットメッセージのさらなる変換処理のために、機械翻訳されたフランス語のチャットメッセージ(”Qui te fait rire?”)を変換モジュール208に送信し得
る。
【0117】
ここに注記されるように、機械翻訳されたテキストは、テキストの翻訳をさらに改良するためのさらなる変換処理のために送信され得る。たとえば、当初の英語のチャットメッセージが英語のチャット用語を含んでいた場合、追加的な変換処理は可能な範囲でフランス語のチャット用語を追加することができる。動作1124において、変換モジュール208は、変更されていない機械翻訳されたフランス語のチャットメッセージ(”Qui te fait rire?”)をさらなる処理のためにCTT制御モジュール202に戻し得る(たとえ
ば、変換モジュール208のモジュールが機械翻訳されたフランス語のチャットメッセージにいずれの変更も適用しない場合)。
【0118】
動作1126において、CTT制御モジュール202は、機械翻訳されたフランス語のチャットメッセージ(”Qui te fait rire?”)を第2のチャットクライアントシステム
104−2に伝送することを支援し得る(たとえばCTTシステム114は、伝送のために、対応するフランス語のチャットメッセージをチャットホストシステム112に送信する)。加えて、動作1128において、CTT制御モジュール202は、当初の英語のチャットメッセージ(”Who u laughin at?”)と翻訳されたフランス語のチャットメッセ
ージ(”Qui te fait rire?”)との間の翻訳マッピングを翻訳データストア210に格
納し得る。本明細書に記載されるように、追加的な動作(図示せず)において、CTT制御モジュール202は、翻訳データストア210に対するあらかじめ失敗した照会とそれらの照会後に判断された対応するメッセージとに基づく相当する翻訳マッピングも翻訳データストア210に格納し得る(たとえば図9の動作928および930と同様)。
【0119】
いくつかの実施形態について、変換動作は、ハイブリッドな連続/並行配置で行なわれてもよく、それによっていくつかの変換動作が並行して行なわれ、他の変換動作が連続して行なわれる。たとえば、図11に示されるように、英語のチャットメッセージ(”Who u laughin at?”)が動作1110aおよび1110bにおいてチャット用語モジュール
302およびスペルチェックモジュール312に並行して送信される。その後、結果として得られた変換されたメッセージのうち一方が(たとえば選択の優先順位に基づいて)選択されると、変換モジュール208の他の変換関連モジュール1130(たとえば頭字語モジュール304、固有名詞モジュール306および普通名詞モジュール308)は、選択された変換されたメッセージに対して並行して動作し得る。
【0120】
図12は、典型的なデジタル装置1200のブロック図である。デジタル装置1200
は、バス1214に通信可能に結合されたプロセッサ1202、メモリシステム1204、格納システム1206、通信ネットワークインターフェイス1208、I/Oインターフェイス1210、およびディスプレイインターフェイス1212を含む。プロセッサ1202は、実行可能命令(たとえばプログラム)を実行するように構成される。いくつかの実施形態では、プロセッサ1202は、実行可能命令を処理することができる回路系またはいずれかのプロセッサを含む。
【0121】
メモリシステム1204は、データを格納するように構成されたいずれかのメモリである。メモリシステム1204のいくつかの例は、RAMまたはROMなどの記憶デバイスである。メモリシステム1204は、ramキャッシュを含むことができる。様々な実施形態において、データがメモリシステム1204内に格納される。メモリシステム1204内のデータは、クリアされても、最終的に格納システム1206に移動されてもよい。
【0122】
格納システム1206は、データを検索し格納するように構成されたいずれかの記憶装置である。格納システム1206のいくつかの例は、フラッシュドライブ、ハードドライブ、光ドライブ、および/または磁気テープである。いくつかの実施形態において、デジタル装置1200は、RAMの形態のメモリシステム1204と、フラッシュデータの形態の格納システム1206とを含む。メモリシステム1204および格納システム1206の両方は、プロセッサ1202を含むコンピュータプロセッサによって実行可能な命令またはプログラムを格納し得るコンピュータ読取り可能な媒体を含む。
【0123】
通信ネットワークインターフェイス(com.ネットワークインターフェイス)1208は、リンク1216を介してネットワーク(たとえばコンピュータネットワーク106)に結合されることができる。通信ネットワークインターフェイス1208は、たとえばイーサネット(登録商標)接続、直列接続、並列接続、またはATA接続による通信をサポートし得る。通信ネットワークインターフェイス1208は、無線通信(たとえば802.11 a/b/g/n, WiMax(登録商標))もサポートし得る。通信ネットワークインターフェイ
ス1208が多くの有線および無線規格をサポートすることができることは当業者にとって明らかであろう。
【0124】
任意の入出力(I/O)インターフェイス1210は、ユーザからの入力を受信し、データを出力するいずれかの装置である。任意のディスプレイインターフェイス1212は、グラフィックスおよびデータをディスプレイに出力するように構成されたいずれかの装置である。一例では、ディスプレイインターフェイス1212はグラフィックスアダプタである。
【0125】
デジタル装置1200のハードウェア要素が図12に表されたものに限定されないことが当業者によって認識されるであろう。デジタル装置1200は、図示されたものより多いかまたは少ないハードウェア要素を含んでもよい。さらに、ハードウェア要素は機能を共有し、それでもなお、本明細書に記載される様々な実施形態内にあり得る。一例では、符号化および/または復号がプロセッサ1202および/またはGPU(つまりNvidia(登録商標))上に配置されたコプロセサによって行なわれ得る。
【0126】
上記の機能およびコンポーネントは、コンピュータ読取り可能な媒体などの記録媒体上に格納される命令で構成されることができる。命令はプロセッサによって検索され、実行されることができる。命令のいくつかの例は、ソフトウェア、プログラムコード、およびファームウェアである。記録媒体のいくつかの例は、メモリ装置、テープ、ディスク、集積回路、およびサーバである。命令は、プロセッサによって実行されると、いくつかの実施形態と一致して動作するようプロセッサを導くように動作可能である。当業者は、命令、プロセッサおよび記録媒体を熟知している。
【0127】
様々な実施形態は、例として本明細書に記載される。様々な変更がなされてもよく、本明細書に提示された発明のより広い範囲から逸脱することなく他の実施形態を用いることができることは当業者にとって明らかであろう。典型的な実施形態に対するこれらおよび他の変形例は、本発明によって包含されるように意図される。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12