JP5122486B2 - 分散型モデルの符号化及び適応可能なスケーラブルアクセス処理 - Google Patents

分散型モデルの符号化及び適応可能なスケーラブルアクセス処理 Download PDF

Info

Publication number
JP5122486B2
JP5122486B2 JP2008555393A JP2008555393A JP5122486B2 JP 5122486 B2 JP5122486 B2 JP 5122486B2 JP 2008555393 A JP2008555393 A JP 2008555393A JP 2008555393 A JP2008555393 A JP 2008555393A JP 5122486 B2 JP5122486 B2 JP 5122486B2
Authority
JP
Japan
Prior art keywords
translation
server
language
segment
model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2008555393A
Other languages
English (en)
Other versions
JP2009527818A (ja
Inventor
フランツ・オフ
ジェフリー・ディーン
トルシュテン・ブランツ
アレキサンダー・フランツ
ジェイ・ポント
ペン・シュ
シャ−メイン・テ
ジェフリー・チン
イグナシオ・セイヤー
アントン・カーバー
ダニエル・ロザート
ジョン・ホーキンズ
カレル・ドリーセン
Original Assignee
グーグル・インコーポレーテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by グーグル・インコーポレーテッド filed Critical グーグル・インコーポレーテッド
Publication of JP2009527818A publication Critical patent/JP2009527818A/ja
Application granted granted Critical
Publication of JP5122486B2 publication Critical patent/JP5122486B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/58Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/44Statistical methods, e.g. probability models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/47Machine-assisted translation, e.g. using translation memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/49Data-driven translation using very large corpora, e.g. the web
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Probability & Statistics with Applications (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Machine Translation (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)

Description

本出願は、以下の特許文献1及び2の恩典を主張するものであり、また、これらの全開示を引用し参照する。
本出願明細書は、コンピュータ等の機械を用いて、機械翻訳等のタスク処理を行う機械処理に関する。
コンピュータ等の機械やコンピュータベースの機械が、様々な処理作業を自動化するために広く用いられている。機械がこれまで取り扱うのが困難だった幾つかの作業は、コンピュータ情報技術や通信技術の進歩により、次第に自動化されつつある。言語翻訳及び音声認識は、自動化されつつある機械処理作業の2つの例である。
一方の人間の言語、即ち、自然言語(起点自然言語)から他の自然言語(対象自然言語)への翻訳は、様々なやり方で行うことができる。人は、起点自然言語(例えば、中国語)の文章を、最初に、その中国語の文章を読んで理解し、そして、対応する文章を目標言語(例えば、英語)で書き下ろすことによって手作業で翻訳できる。そのような手作業での翻訳は、高い品質になる傾向があるが、高価で時間がかかることがある。機械翻訳は、コンピュータや他の機械を用いて、翻訳プロセスの一部又は全てを自動化し、翻訳コストを低減したり翻訳プロセスを迅速化したりする。規則ベースの機械翻訳及び統計的機械翻訳は、機械翻訳手法の2つの例である。機械翻訳システムは、簡単に使用できる。即ち、ユーザは、起点自然言語のデジタル文書を機械翻訳システムに送り、システムは、文書を処理して、対象自然言語の翻訳文書を生成する。機械翻訳は、次第に広範囲の用途に用いられている。例えば、資源は、機械翻訳を提供して異なる自然言語の情報に簡単にアクセスさせ得るインターネット等の多くのコンピュータネットワーク上で利用可能である。
機械翻訳システムの翻訳品質は、しかしながら、手作業での翻訳より低い場合があり、また、時として、機械翻訳された文章は、理解が困難であったり不可能であったりすることがある。統計的機械翻訳手法を含む様々な機械翻訳手法が、翻訳品質及び翻訳スピード等の機械翻訳の様々な側面を改善するために開発されてきている。
第60/774,790号、表題“分散モデルの符号化及び適応可能なスケーラブルアクセス処理”、2006年2月17日出願 第60/775,570号、表題“分散モデルの符号化及び適応可能なスケーラブルアクセス処理”、2006年2月21日出願
本明細書では、資源区画、複製、及び負荷分散を用いて、大きなモデルへのアクセス及びスケーラブルで適応可能な処理の提供を実現し得る分散型機械処理システム、手法、方法及び装置について述べる。様々な分散型機械処理システムは、機械翻訳システム、音声認識システム、スパム検出システム、光学文字認識システム、スペル訂正システム、エンティティ検出システム、情報抽出システム等を含み、ここに記載した手法に基づき構成し得る。
一態様において、ここに述べるシステムには、各々、データの集合体の区画を記憶しサービス提供するように動作可能なコンピュータデータサーバが含まれる。それぞれの区画は、データの集合体を共に構成し、それぞれの各区画は、データの集合体より小さい。このシステムには、更に、データサーバからデータを取得し、また、取得したデータを用いて、入力を処理し、出力を生成するように動作可能な処理サーバが含まれる。本システムは、各データサーバ用の1つ又は複数のレプリカデータサーバを含むように実現し得る。一実施例において、データの集合体は、目標言語の言語モデル用のデータである。言語モデルには、目標言語のnグラム(gram)及びnグラムの各々用の統計データが含まれる。nグラムには、Nが3より大きいNグラムを含み得る。処理サーバは、言語モデルからの取得データを用いて、入力内の起点言語の文章を目標言語に翻訳するように動作可能な翻訳サーバである。処理サーバは、例えば、言語モデルからの取得データを用いて、入力内の目標言語の人間の音声を目標言語の文章に翻訳するように動作可能な音声認識サーバ、言語モデルからの取得データを用いて、入力内の目標言語の語のスペルを修正するように動作可能なスペル訂正サーバ、又は言語モデルからの取得データを用いて、入力内の受信文書画像の文章を認識するように動作可能な光学文字認識サーバ等、様々な構成で実現し得る。
他の態様において、機械翻訳用のシステムには、機械翻訳資源サーバ及び少なくとも1つの翻訳サーバを含み得る。各機械翻訳資源サーバは、起点言語から目標言語への翻訳用の機械翻訳資源データの集合体の区画を記憶しサービス提供するように動作可能である。それぞれの区画は、機械翻訳資源データの集合体を共に構成し、各それぞれの区画は、機械翻訳資源データの集合体より小さい。翻訳サーバは、目標言語に翻訳される起点言語の原文を受信するように動作可能であり、また更に、機械翻訳資源サーバから機械翻訳資源データを取得し、取得した機械翻訳資源データを用いて、原文から目標言語に翻訳するように動作可能である。
他の態様において、機械翻訳用のシステムには、機械翻訳を実施して、起点言語と目標言語との間の翻訳用の翻訳モデルから翻訳モデルデータ及び目標言語用の言語モデルから言語モデルデータを取得するように動作可能な翻訳サーバを含み得る。翻訳サーバは、更に、取得した翻訳モデルデータ及び言語モデルデータを用いて、起点言語の文章を目標言語に翻訳するように動作可能である。翻訳サーバには、起点言語のセグメントを翻訳するために言語モデルデータ取得するための要求を記憶するように動作可能な要求待ち行列と、翻訳サーバによる要求により取得された言語モデルデータを記憶するように動作可能なセグメント翻訳サーバキャッシュと、が含まれる。
他の態様において、機械翻訳のための方法は、起点言語から目標言語への翻訳用の機械言語翻訳資源データの集合体を、機械言語翻訳資源データの集合体より各々小さい区画に分割し得る。区画は、異なるコンピュータサーバ上にそれぞれ記憶される。機械翻訳サーバは、異なるコンピュータサーバ上の機械言語翻訳資源データの集合体にアクセスして用い、起点言語から目標言語への翻訳を実施するように動作する。
他の態様において、起点言語と目標言語との間の翻訳用の翻訳モデル及び目標言語用の言語モデルを用いて、起点言語から目標言語への文章を機械翻訳するための方法について述べる。本方法には、翻訳モデルを異なるデータの区画に区画する段階であって、各翻訳モデル区画は、翻訳モデルより小さい段階と、翻訳モデル区画を異なる翻訳モデルサーバに記憶する段階と、言語モデルを異なるデータの言語モデル区画に区画する段階であって、言語モデル区画は、言語モデルより小さい段階と、言語モデル区画を異なる言語モデルサーバに記憶する段階と、翻訳モデル及び言語モデルを用いて、起点言語の文章を目標言語に翻訳するように各々動作可能な翻訳サーバの作業負荷を監視する段階と、起点言語から目標言語に翻訳される文章のセグメントを、作業負荷に基づき、翻訳サーバから1つ又は複数の選択された翻訳サーバに分散する段階と、各選択された翻訳サーバを動作させて、翻訳モデルサーバ及び言語モデルサーバにアクセスして、翻訳されるそれぞれの各セグメント用の所望の翻訳モデルデータ及び言語モデルデータを取り出す段階と、選択された翻訳サーバからの翻訳されたセグメントを編集して、翻訳文を生成する段階と、が含まれる。
他の態様において、コンピュータ実装された方法には、目標言語に翻訳される起点言語のクライアント文書を受信する段階と、クライアント文書をセグメントに分割して、各セグメントを翻訳する段階と、異なる言語モデルサーバの内の少なくとも1つにアクセスする段階と、を含み得る。異なる言語モデルサーバは、目標言語用の言語モデルを一括して記憶して、セグメントの1つの翻訳に関連する選択された言語モデルデータを検索する。各言語モデルサーバは、言語モデルの区画を記憶しサービス提供するように動作可能である。本方法には、更に、検索され選択された言語モデルデータを用いて、セグメントを目標言語に翻訳する段階が含まれる。
他の態様において、機械翻訳のための方法には、機械翻訳システムを用いて、起点言語の文章をクライアントから受信し、その文章を目標言語に翻訳する段階を含み得る。機械翻訳システムにおいて翻訳する段階には、文章の一部分を選択して、低翻訳品質で翻訳し、第一次の翻訳部分を生成し、その間、選択された部分を高翻訳品質で翻訳する段階と、第一次の翻訳部分をクライアントに配信し、その間、選択された部分を高翻訳品質で継続して翻訳する段階と、選択された部分が、高翻訳品質で第2の翻訳部分に翻訳された後、高翻訳品質の第2の翻訳部分をクライアントに配信して、第一次の翻訳部分を自動的に置き換える段階と、が含まれる。
他の態様において、機械翻訳のためのシステムには、言語モデルサーバ、翻訳モデルサーバ、及び翻訳サーバを含み得る。各言語モデルサーバは、目標言語用の言語モデルの区画を記憶しサービス提供するように動作可能である。それぞれの区画は、言語モデル全体を共に構成する。翻訳モデルサーバは、目標言語と起点言語との間の翻訳用の翻訳モデルを記憶しサービス提供するように動作可能である。翻訳サーバは、翻訳モデルサーバから翻訳モデルデータ及び言語モデルサーバから言語モデルデータを取得し、取得した翻訳モデルデータ及び言語モデルデータに基づき、起点言語の原文を目標言語に翻訳するように動作可能である。
他の態様において、機械翻訳のためのシステムには、翻訳サーバモジュール及び翻訳キャッシュを含み得る。翻訳サーバモジュールは、起点言語と目標言語との間の翻訳用の翻訳モデルから翻訳モデルデータ及び目標言語用の言語モデルから言語モデルデータを取得するように動作可能である。翻訳サーバモジュールは、更に、取得した翻訳モデルデータ及び言語モデルデータを用いて、起点言語の文章を目標言語に翻訳するように動作可能である。翻訳キャッシュは、選択された生起例及びセグメントの翻訳を記憶する。各セグメントには、起点言語から目標言語への生起例の組合せが含まれる。翻訳サーバモジュールは、翻訳されるセグメント用の適切な翻訳がないか翻訳キャッシュを調べて、適切な翻訳が存在する場合、セグメントを更に処理することなく、また、セグメントを翻訳するための翻訳モデルデータ及び言語モデルデータを取得することなく、適切な翻訳を取り込むように動作可能である。
他の態様において、機械翻訳システムを動作させるための方法には、起点言語から目標言語に翻訳される原文をセグメントに分割する段階と、選択された生起例と起点言語から目標言語への生起例の組合せを各々含むセグメントとの翻訳を記憶する翻訳キャッシュの各セグメントを調べる段階と、翻訳されるセグメント用の適切な翻訳が翻訳キャッシュにある場合、セグメントを更に処理することなく、セグメント用の適切な翻訳を用いる段階と、翻訳されるセグメント用の適切な翻訳が翻訳キャッシュにない場合、翻訳サーバを動作させて、起点言語と目標言語との間の翻訳用の翻訳モデル及び目標言語用の言語モデルにアクセスして、セグメントを翻訳するための所望の翻訳モデルデータ及び言語モデルデータを取得する段階と、翻訳サーバを動作させ、所望の翻訳モデルデータ及び言語モデルデータを用いてセグメントを翻訳する段階と、を含み得る。
更に他の態様において、機械翻訳用のセグメント翻訳装置には、起点言語と目標言語との間の翻訳用の翻訳モデル及び目標言語用の言語モデルを用いて、起点言語の1つ又は複数の生起例が含まれるセグメントを目標言語の翻訳セグメントに翻訳するように動作可能なデコーダを含み得る。セグメント翻訳サーバキャッシュは、この装置に含まれ、セグメントを翻訳するための言語モデルから取り込まれたデータを記憶し、また、記憶されたデータをデコーダに供給する。デコーダは、言語モデル全体の異なる区画をそれぞれ記憶する言語モデルサーバと通信を行って、セグメントの可能な翻訳のためのnグラムの各々に関する情報及び関連する統計データを要求するように動作可能である。
開示された及び他の実施形態は、1つ又は複数のコンピュータプログラムプロダクトとして、即ち、データ処理装置によって実行するための、また、その動作を制御するためのコンピュータ判読可能媒体上に符号化されたコンピュータプログラム命令の1つ又は複数のモジュールとして実現し得る。個々の実施形態は、1つ又は複数の利点、例えば、機械翻訳の品質強化、翻訳スピード改善、システムの拡張性、機械翻訳に対する大量の要求を取り扱うための容量を実現するように実装し得る。本システム、手法及び装置の1つ又は複数の実施形態の詳細については、添付図面及び以下の説明に記載する。本システム、手法及び装置に関連する他の特徴、態様、及び利点は、説明、図面、及び請求項から明らかになるであろう。
様々な図面における同様な参照番号及び呼称は、同様な要素を示す。
本明細書において述べる自動機械処理手法及びシステムは、大量の資源を操作して、処理性能、例えば、処理の品質やスピードを改善するように実現し得る。自動機械処理の例としては、機械翻訳、音声認識、スパム検出、光学文字認識、スペル訂正、エンティティ検出、及び情報抽出が挙げられる。本自動機械処理手法及びシステムは、更に、大量の自動処理要求に応じるのに充分な処理容量で実現し得る。これらの及び他の実施例の自動処理において、分散化設計は、このシステム資源又はシステム処理容量を実現するために用い得る
区画及び複製は、分散化設計を実現するために利用可能な手法の2つの例である。
区画では、自動処理システム内の特定の項目は、異なる機械、例えば、コンピュータに物理的に配置される異なる区画に分割又は区画される。各区画は、全項目より小さく、また、異なる区画は、幾つかの実施例では、互いに異なることがあり、他の実施例では、或る程度重複し得る。例えば、データを本来記憶するデータベースサーバ又は自動処理システムにおいて1つ又は複数の処理作業を本来実行する処理サーバは、区画される項目であってよい。区画によって、単一の機械の容量に制限されることなく、大きな項目をシステムに実現し得る。異なる区画は、異なる機械に置かれ、従って、別個にアクセスし得る。従って、有益な特徴の中でもとりわけ、区画は、高負荷を取り扱うために、また、拡張性及び信頼性を与えるために用い得る。区画のスケール及び他の特徴は、特定の自動処理システムにおける要件及び制約に応じて変わる。例えば、大きなデータベースは、単一の機械(例えば、データベースサーバ)に記憶するのは困難なことがある。あるいは、単一の高価な機械を用いて、大きなデータベースを記憶することは、経済的でないことがある。従って、大きなデータベースは、多数のデータベース区画に小さく分断することで、多数の各選択された機械が、各データベース区画を記憶するのに充分な記憶領域を有し得る。異なる機械は、ネットワーク化し、データベースにアクセスするクライアントに対して、“仮想の”単一のデータベースとして動作し得る。同様に、処理サーバもまた、異なる区画された処理サーバに区画し得るが、この場合、各区画された処理サーバは、元の処理サーバの処理機能の一部分を提供し、異なる区画された処理サーバは、ほとんど異なる処理機能を区画するように構成される。
複製は、分散化設計のためのもう1つの手法であり、区画とは異なる。複製では、そのようなシステム、例えば、データベースサーバ又は処理サーバ内における個々の項目は、コンピュータ等の1つ又は複数のレプリカ機械上に複製又は模造される。各レプリカは、機能及び他の態様が、複製される項目と実質的に同じであってよい。複製は、複製される項目の機能の利用可能性又は容量を高めるために、複製される項目の機能にアクセスする際の待ち時間又は遅延を低減するために、また、項目の機能の冗長性を提供するために用い得る。通常、単一の項目は、容量が限定されていることから、複製により、複製される項目の機能が、クライアントからの多数の要求に対して、例えば、そのような要求が同時になされた場合や異なる要求の処理及びサービス提供が時間的に重複する場合に、利用可能になる。複製の冗長性を備えたシステムでは、複製された項目用の1つの機械が故障した場合、その項目用の1つ又は複数の他の複製された機械が、故障した機械の置き換えに利用可能になり、従って、機械故障に起因するシステムへの影響が減少する。特に、複製のスケール及び他の特徴は、特定の自動処理システムにおける要件及び制約に応じて変わる。例えば、使用頻度の高いデータベースは、異なるデータベースサーバ上に複製し得る。他の例として、処理サーバは、互いに並列に動作し得る1つ又は複数のレプリカ処理サーバに複製し得る。区画と同様に、複製は、同じ処理サーバを複製する異なる機械をネットワーク化して、データベースにアクセスするクライアントに対して“仮想の”単一の処理サーバとして動作させ得ることから、システムにアクセスするクライアントに対して不可視であるように実現し得る。
複製設計は、実施時、負荷分散メカニズムを組み込み、複製用の異なる機械の作業負荷を監視したり、作業負荷に基づき、入ってくる作業負荷を管理したり、異なる機械に分散したりできる。この負荷分散メカニズムは、特定の自動処理システムの要件及び制約条件に応じて、異なる負荷分散方式で実現し得る。一例として、負荷分散メカニズムは、軽負荷で動作している複製された機械に新しい要求を送ることによって、システムの複製された部分の特定の機能又は情報の一部にアクセスする際の遅延を低減するように実現し得る。
負荷分散メカニズムは、上述したような互いに厳密にレプリカではない異なる機械の動作の管理に拡張し得る。例えば、異なる言語モデルを記憶するサーバも、負荷分散メカニズムによって管理し得る。他の例の場合、機械翻訳サーバ等の幾つかの処理サーバは、同じ機械翻訳方式を用いて、異なる言語翻訳資源に基づき動作することがあり、例えば、全てが、統計的機械翻訳(SMT)サーバである。或るSMTサーバは、低速で高品質翻訳を生成し得るが、他のものは、低品質の翻訳を高速で生成し得る。負荷分散メカニズムは、品質及びタイミング要件及び制約条件等の1つ又は複数の事項に基づき、クライアント文書の異なるセグメント又は異なるクライアント文書の翻訳作業を制御するために実現し得る。本例において、負荷分散メカニズムは、その名前は、依然として何らかの“負荷”分散動作を示唆するが、必ずしも異なる機械の作業負荷とは限らない何らかのもののバランスをとる。従って、本明細書に用いる用語「負荷分散」は、負荷を分散することに限定されない。むしろ、用語「負荷分散メカニズム」、「負荷分散装置」、「負荷分散モジュール」、及び「負荷分散サーバ」は、機械の動作及び条件、要求又は作業の性質、及びシステムの他の部分の動作及び条件に関連する或る事項を分散しつつ、一般的に、通信トラフィック、要求又は異なる機械における作業を管理し分散する分散メカニズムを示すために用いる。
幾つかの実施例において、負荷分散メカニズムは、負荷分散メカニズムとは異なる機能のために本来構成された機械に取り付けられた又はそれと通信状態にある構成要素として、又は、分散メカニズムが、幾つかの機械への高トラフィックを取り扱う可能性がある状況において個々の機械として、実現される。更に、本明細書の分散型機械処理用の区画及び複製は、必要に応じて、異なる機械による負荷分散メカニズムに適用でき、これにより、負荷分散メカニズムが、異なる機械に区画される又はそれらにおいて複製される。
区画、複製及び負荷分散は、特定のシステムの特定の要件及び制約条件又はそのシステムの動作もしくは条件に応じて、個別に又は組合せて、適応可能に、動的に、効率的に、故障に耐えられるように、また、スケーラブルなように、分散型機械処理を構築し、動作させ、また、管理するために用い得る。一例として、区画、複製、負荷分散メカニズム及び他のメカニズムに基づく分散型機械処理は、困難な、変化しやすい、及び動的なコンピュータネットワーク環境における自動処理の様々な問題に対処するように構成し実現し得る。更に、具体的には、本明細書における自動機械処理手法及びシステムは、機械翻訳、音声認識、スパム検出、光学文字認識、スペル訂正等の様々なオンラインの機械処理に用い得る。
分散型機械処理の以下の特定の実施例は、分散型機械処理における様々な手法、装置、設計、及び制御を示す自動機械処理の例として、機械翻訳を用いる。
幾つかの実施例において、分散型機械処理に基づく機械翻訳システムには、機械翻訳資源サーバ及び少なくとも1つの翻訳サーバが含まれる。各機械翻訳資源サーバは、起点自然言語から対象自然言語への翻訳用の機械翻訳資源データの集合体の区画を記憶しサービス提供するように動作可能である。それぞれの区画は、機械翻訳資源データの集合体を共に構成し、また、各それぞれの区画は、機械翻訳資源データの集合体全体より小さい。翻訳サーバは、目標言語に翻訳される起点言語の原文を受信するように動作可能であり、更に、機械翻訳資源サーバから機械翻訳資源データを取得するように動作可能である。そして、翻訳サーバは、取得した機械翻訳資源データを用いて、原文を目標言語に翻訳する。
そのような実施例の例として、図1は、分散型機械翻訳(DMT)システム100を示す。多数の翻訳フロントエンド110は、コンピュータサーバであってよいが、互いに論理的に並列に構成され、また、クライアント文書102を翻訳するためのクライアント要求を受信し、翻訳済み文書103をクライアント101に配信するために用いられる。クライアント101は、インターネット等のコンピュータネットワークを介してDMTシステム100に接続し得る。DMTシステム100には、翻訳資源サーバ140から翻訳資源データを取り込み、そして、取り込まれたデータを用いて、翻訳作業を実施するセグメント翻訳サーバ130が含まれる。負荷分散装置サーバ120は、セグメント翻訳サーバ130と翻訳フロントエンド110との間に接続され、翻訳フロントエンド110とセグメント翻訳サーバ130との間の交信及びトラフィックと、翻訳フロントエンド110及びセグメント翻訳サーバ130の動作と、を監視し、管理し、制御する。負荷分散装置サーバ120は、1つ又は複数のレプリカ負荷分散装置サーバ上に複製し得る。サーバ130、120及び110は、一括して、翻訳資源サーバ140及びそれらのレプリカ141上の翻訳資源データを用いることによって、クライアント文書102の翻訳を実施する翻訳サーバを形成する。
翻訳フロントエンド110は、互いのレプリカであり、互いに並列に動作する。セグメント翻訳サーバ130も、互いのレプリカであり、互いに並列に動作する。資源サーバ140は、翻訳作業を実施するための全翻訳資源データ及び他の資源の区画並びにセグメント翻訳サーバ130の情報を記憶する区画サーバである。図示した各資源サーバ140は、1つ又は複数のレプリカ資源サーバ141を有する。資源サーバ140における翻訳資源データ及び他の資源並びに情報には、1つ又は複数の異なる対象自然言語用の1つ又は複数の言語モデルと、1つ又は複数の異なる起点自然言語と1つ又は複数の異なる対象自然言語との間の翻訳用の1つ又は複数の翻訳モデルと、1つ又は複数の起点自然言語と1つ又は複数の対象自然言語との間の1つ又は複数の翻字辞書と、他の辞書と、を含み得る。セグメント翻訳サーバ130は、規則ベースMT及び統計的MTデコーダ等の同じ又は異なる機械翻訳復号方式を実行し得る。
動作中、各翻訳フロントエンド110は、システム100によって翻訳されるクライアント文書102を受信し、そして、システム100のバックエンドから翻訳済みクライアント文書103を受信した後、翻訳済みクライアント文書103をクライアント101に送る。クライアント文書102を受信すると、受信用翻訳フロントエンド110は、クライアント文書102を多数の小さいセグメントに分割するが、この場合、各セグメントには、1つ又は複数の生起例が含まれる。セグメントの1つの例は、パラグラフ内における文である。セグメントのコンテンツは、異なる実施例で変わり、数語から多数の文に及ぶことがある。翻訳フロントエンド110は、全てのセグメントを負荷分散装置120に送り、セグメント翻訳サーバ130に分散することができ、セグメント翻訳サーバ130は、割り当てられたセグメントを処理し、そして、1つ又は複数の資源サーバ140からの所望の翻訳資源データを用いることによって、その割り当てられたセグメントを翻訳する。そして、各翻訳済みセグメントは、負荷分散装置120を介して、元の要求側翻訳フロントエンド110に送り返される。全ての翻訳済みセグメントを受信した後、元の要求側翻訳フロントエンド110は、翻訳済みセグメントを翻訳済みクライアント文書103に組み立て、翻訳済みクライアント文書103をクライアント101に送る。幾つかの実施例では、翻訳フロントエンド110は、まず、システム100において、セグメントの適切な翻訳が入手可能かどうか判断し、また、そのセグメントを負荷分散装置120に送ることなく、その翻訳を翻訳済みセグメントとして検索し得る。この選択肢は、翻訳キャッシュを用いることによって実現可能であり、本明細書の後の章で詳細に述べる。
DMTシステム100は、各区画資源サーバ140用のレプリカサーバ141を有する。従って、負荷分散装置120と異なる追加の負荷分散メカニズムは、資源サーバ140及び141とセグメント翻訳サーバ130との間にバックエンド負荷分散メカニズムとして実装してよい。このバックエンド負荷分散メカニズムの幾つかの実施例において、各セグメント翻訳サーバ130には、そのセグメント翻訳サーバ130から資源サーバ140及び141への要求を制御し、管理し、分散するサーバの一部として、セグメント負荷分散装置を含み得る。全セグメント負荷分散装置が、バックエンド負荷分散メカニズムを共に構成する。各セグメント負荷分散装置は、幾つかの実施例において別個の機械であってよく、また、必要に応じて、複製又は区画し得る。
各負荷分散メカニズム、例えば、フロントエンド負荷分散装置120及びバックエンド負荷分散メカニズムには、その負荷分散メカニズムの動作に伴う様々な機械のアクティビティ、条件及び動作を監視するための監視メカニズムを含み得る。このことは、様々なやり方で実現し得る。例えば、通信プロトコルは、負荷分散メカニズムと監視下にある各機械との間において監視通信を提供するために用い得る。
図2は、図1の分散型機械翻訳システム100の一実施例200を示す。このシステム200は、統計的機械翻訳(SMT)手法を用いて、起点ー目標翻訳モデル及び目標言語モデルに基づき、起点自然言語から対象自然言語への翻訳を実施する。起点言語及び目標言語は、多くの翻訳アプリケーションにおける中国語及び英語等の2つの異なる自然言語であってよい。幾つかのアプリケーションにおいて、起点言語及び目標言語は、簡略中国語及び伝統的中国語等の、同じ自然言語の2つの異なる文書形式又は表現であってよい。コンピュータサーバ210は、目標言語モデルを記憶するために用いられ、コンピュータサーバ220は、起点ー目標翻訳モデルを記憶するために用いられる。幾つかの実施例では、単一の翻訳モデルサーバ210が、翻訳モデル全体を記憶しサービス提供するのに充分である。システム200におけるサーバ210及び220は、図1のシステム100における資源サーバ140及び141の例であり、翻訳及び言語モデルは、図1のシステム100における機械翻訳資源データの例である。SMTデコーダは、少なくとも幾つかのセグメント翻訳サーバ130に実現され、サーバ210及び220の翻訳及び言語モデルを用いて、各セグメントの翻訳を実施し得る。
このシステム200では、翻訳モデルには、起点言語と目標言語との間のマッピング情報と、各マッピングに関連する評点情報と、が含まれる。マッピング情報には、(1)起点言語の1つ又は複数の生起例と(2)目標言語の1つ又は複数の生起例との間の関係を含み得る。一実施例において、例えば、起点言語と目標言語との間のマッピング情報は、対象言語と起点言語間の全ての可能な対の言語文字列である。評点情報には、対象言語と起点言語間の言語文字列対の確率等、起点言語と目標言語との間の各マッピング用の統計データを含み得る。他の統計データは、評点情報の一部としても用い得る。言語モデルには、目標言語の可能な言語文字列の集合体と、各文字列用の対応する言語モデル評点情報と、が含まれる。文字列には、1つ又は複数の言語生起例が含まれる。生起例は、システムによって取り扱われる最小言語単位である。各文字列は、nグラムであり、これは、目標言語の一連のn生起例であるが、ここで、nは、正の整数である。様々な生起例化手法は、一言語の発音区別符号及び句読点、字(letter)、並びに文字を含む1つ又は複数の記号及び符号から生起例を構築するために用い得る。言語モデル評点情報には、言語モデルにおける各文字列又はnグラム用の統計データを含み得る。統計データには、目標言語文章のコーパスにおけるそれぞれの各nグラムのそれぞれの発生頻度に関する確率、平滑化確率、又は平滑化係数等の、目標言語文章のコーパスにおけるそれぞれの各nグラムのそれぞれの発生頻度に関連した情報を含み得る。言語モデル評点情報には、更に、統計データ以外の情報を含み得る。
動作中、セグメント翻訳サーバ130におけるSMTデコーダは、復号するセグメントを受信した後、最初に、サーバ220の翻訳モデルから必要な情報を検索し、そして、翻訳モデルからの情報に基づき、必要なデータを言語モデル210から要求する。SMTデコーダは、様々な構成の目標言語の生起例から全ての可能な翻訳に関する統計値を演算し、最良の翻訳を検索する。それぞれのセグメント翻訳サーバ130は、負荷分散装置120を介して、SMTデコーダから発信側翻訳フロントエンドサーバ110に翻訳出力を送る。
統計的機械翻訳(SMT)システムの翻訳品質は、一般的に、システムの翻訳モデル(TM)及び言語モデル(LM)のいずれか又は双方のサイズを大きくすることによって、改善し得る。従って、システム200は、部分的には、単一の機械における限定された記憶容量のために、実用的な実施例では、区画を必要とする大きな翻訳及び言語モデルを有し得る。一例として、英語用の大規模言語モデルは、約2千億語乃至8兆語から導出することができ、また、サイズが、約1テラバイト乃至4テラバイトである。大きなTMは、2億語以上の大きさのオーダであってよい。より多くの文書がオンラインで利用可能になるにつれて、LMは、サイズが、更に増大し得る。従って、区画は、分散型機械処理を用いて、高品質MTシステムへの効果的な手法を提供する。複製及び負荷分散は、大きな言語及び翻訳モデルに基づき、そのようなDMTシステム及び他のMTシステムにも用い得る。
言語モデルサーバ210には、言語モデルの異なる区画を記憶しサービス提供する多数の区画サーバが含まれる。(P+1)区画の例を図2に示すが、ここで、Pは、整数である。各区画サーバは、目標言語用の言語モデルの区画を記憶しサービス提供するように動作可能であり、また、これらの区画サーバ上のそれぞれの区画は、言語モデル全体を共に構成する。それぞれの各区画サーバには、区画基準を満足する言語モデルにおける全てのnグラムを含み得る。例えば、それぞれの各区画サーバは、所定の位置に共通の生起例を有する言語モデルにおける全てのnグラムが含まれる区画を記憶しサービス提供し得る。他の例の場合、各それぞれの区画サーバは、共通の生起例を有する言語モデルにおける全てのnグラムを記憶しサービス提供し得るが、共通の生起例は、各nグラムにおける所定の位置にあったり、又は、一連のn生起例における最後の2つの生起例であったりしてよい。nグラムにおける生起例は、目標言語の文字語又は目標言語の記号のいずれであってもよい。更に、各言語モデル区画は、図2に示すように、1つ又は複数の他のレプリカサーバ上に複製し得る。
同様に、翻訳モデルサーバ220には、翻訳モデルの異なる区画を記憶しサービス提供する多数の区画サーバが含まれる。(K+1)区画の例を図2に示すが、ここで、Kは、整数である。それぞれの区画サーバは、翻訳モデル全体を共に構成し、各それぞれの区画は、翻訳モデル全体より小さい。更に、各翻訳モデル区画は、図2に示すように、1つ又は複数の他のレプリカサーバ上に複製し得る。
図2は、更に、LM及びTMサーバ210及び220に加えて、他の翻訳資源及びデータ用の1つ又は複数のサーバ230を示す。この特徴は、システム200の様々な特性を更に改善するためのオプションの特徴であってよい。例えば、セグメント翻訳サーバ130の内の1つは、言語及び翻訳モデルに基づくSMT処理によるか否かに係らず、セグメントを翻訳するためのサーバ230における他の翻訳資源及びデータを用いるように構成し得る。図11A及び11Bに示した実施例は、1つのそのような例であり、この場合、他の資源及びデータを用いる翻訳は、言語及び翻訳モデルによるSMT処理での翻訳と組み合わせられる。他の翻訳資源及びデータ用の1つ又は複数のサーバ230の例としては、対象言語と起点言語間の翻字辞書サーバ、規則ベースの機械翻訳サーバ、規則ベースのアルゴリズムを実行して翻字データ及び起点言語から目標言語への翻訳を支援する他の資源を生成する翻字処理サーバが挙げられる。
システム200は、言語及び翻訳モデルを用いるMTシステムの一例である。このタイプのシステムには、言語モデルサーバ、翻訳モデルにサービス提供する少なくとも1つの翻訳モデルサーバ、及び目標言語に翻訳される起点言語の原文を受信するように動作可能な翻訳サーバを含み得る。各言語モデルサーバは、対象自然言語用の言語モデルの区画を記憶しサービス提供するように動作可能であり、また、それぞれの区画は、言語モデル全体を共に構成する。翻訳サーバは、機械翻訳を実施するように動作可能であり、翻訳モデルサーバから翻訳モデルデータを取得し、言語モデルサーバから言語モデルデータを取得する。
図2に示すこのタイプのシステムの具体的な例として、言語及び翻訳モデルを用いるMTシステムには、特定の目標言語用の言語モデルの異なる区画をそれぞれ記憶しサービス提供するように動作可能な言語モデルサーバ210を含み得る。それぞれの区画は、言語モデル全体を共に構成し、各それぞれの区画は、言語モデルの全体より小さい。1つ又は複数のレプリカ言語モデルサーバは、各言語モデルサーバ210用に含み得る。本システムには、更に、目標言語と起点言語との間の翻訳用の翻訳モデルの異なる区画をそれぞれ記憶しサービス提供するように動作可能な翻訳モデルサーバ220を含み得る。それぞれの区画は、翻訳モデル全体を共に構成し、各それぞれの区画は、翻訳モデルの全体より小さい。1つ又は複数のレプリカ翻訳モデルサーバは、各翻訳モデルサーバ220用に含み得る。翻訳フロントエンド110は、システム200に設けて、クライアントとインターフェイス接続が可能であり、各翻訳フロントエンド110は、原文をセグメントに分割するように動作可能である。本システムには、機械翻訳を実施し、翻訳モデルサーバ220及びレプリカ翻訳モデルサーバから翻訳モデルデータを取得し、言語モデルサーバ210及びレプリカ言語モデルサーバから言語モデルデータを取得するように各々動作可能なセグメント翻訳サーバ130を含み得る。更に、負荷分散モジュール120を含むことが可能であり、これは、セグメント翻訳サーバ130における翻訳負荷に基づき、翻訳用のセグメント翻訳サーバ130の1つ又は複数にセグメントを選択的に割り当てるように動作可能である。
図2のシステム200には、更に、目標言語と第2起点言語との間の自動翻訳を提供するための資源を含み得る。目標言語と第2起点言語との間の翻訳用の第2翻訳モデルのための1つ又は複数の翻訳モデルサーバをシステム200に含み得る。従って、多数の第2翻訳フロントエンドが含まれ、各々第2原文を第2起点言語のセグメントに分割するように動作可能であり、また多数の第2セグメント翻訳サーバが設けられ、各々第2起点言語の割り当てられたセグメントの機械翻訳を実施する。更に、第2負荷分散モジュールが含まれ、第2セグメント翻訳サーバにおける翻訳負荷に基づき、第2セグメント翻訳サーバの1つ又は複数にセグメントを翻訳のために割り当てる。目標言語モデルを記憶しサービス提供するための言語モデルサーバ210は、起点言語を翻訳するためのセグメント翻訳サーバ130及び第2起点言語を翻訳するための第2セグメント翻訳サーバによって共有し得る。
図1及び2の上記システムにおいて、翻訳される各セグメントは、セグメント翻訳サーバ130によってシステムのフロントエンド(翻訳フロントエンドサーバ110)からバックエンドに翻訳のために送られ、そして、バックエンドによって、フロントエンドに送り返される。このプロセスは、負荷分散装置120による処理と、セグメント翻訳サーバ130によるサーバ210及び220へのアクセスと、セグメント翻訳サーバ130による翻訳の実施と、フロントエンドサーバ110への翻訳済みセグメントの返送と、を伴う。このプロセスには、時間がかかり、システムの資源を用いる。頻繁に翻訳されるセグメントの場合、それぞれの翻訳は、そのようなセグメントをシステムのバックエンドにおいて翻訳するためのルーチンプロセスを回避できるように、翻訳フロントエンド110によってアクセス可能な翻訳キャッシュ等のメモリユニットに記憶し得る。動作中、クライアント文書102が、翻訳フロントエンド110においてセグメント化された後、翻訳フロントエンド110は、まず、翻訳キャッシュに記憶された翻訳を調べて、翻訳キャッシュに翻訳がないセグメントだけを翻訳のためにバックエンドに送る。翻訳キャッシュをこのように用いると、システム資源が空けられ、MTシステムのフロントエンドとバックエンドとの間のトラフィックが減少し、人気があるウェッブサイト用のMTシステム等、大量の翻訳要求に対処するMTシステムにとって有益であり得る。
図3A、3B及び3Cは、翻訳キャッシュの実施例の特徴を示す。翻訳キャッシュ310は、選択されたセグメントの翻訳を記憶し、更に、生起例、及びセグメントより小さく、生起例より大きい句等の生起例の文字列の翻訳を記憶し得る。図3Aは、図1又は2のシステムの翻訳フロントエンド110に接続され、またそれによって共有される翻訳キャッシュ310を示す。翻訳キャッシュ310における翻訳は、セグメント翻訳サーバにおけるルーチンの機械翻訳プロセスや負荷分散プロセスを経ることなく、セグメントに翻訳を提供するために用い得る。従って、翻訳キャッシュ310は、翻訳待ち時間を低減し、翻訳資源を解放し、翻訳プロセスを迅速化するように実現し得る。翻訳キャッシュ310は、言語モデル及び翻訳モデルサーバ等の資源と同様に、区画又は複製し得る。翻訳キャッシュ310は、人間の翻訳及び機械翻訳等の異なる範疇の翻訳を記憶し得る。
図3Bは、翻訳キャッシュ310において用い得るデータ構造を示す。1つ又は複数の起点言語ビン320が、起点言語のセグメント(S0、S1、S2等)を記憶し、また、1つ又は複数の目標言語ビン330が、目標言語の翻訳済みセグメント(T0、T1、T2等)を記憶する。起点言語のセグメント及び対応する目標言語の翻訳済みセグメントは、照合及びアクセスのためにリンクされる。翻訳キャッシュ310には、更に、記憶された翻訳の品質、翻訳のタイムスタンプ、翻訳が用いられた回数の計数値、翻訳が最後に用いられた時間などに関する情報等、キャッシュメモリーに入った各翻訳に関連する他の情報を含み得る。そのような情報は、特定の翻訳が、セグメントの翻訳に用いるのに適切な翻訳であるかどうか判断するために用い得る。翻訳キャッシュにおける品質情報は、例えば、所望の品質レベルを備えた適切な翻訳を選択するために用い得る。低品質であるが容易に利用可能な翻訳済みセグメントは、幾つかの用途において、後で高品質の翻訳で更新される第一次の翻訳を提供するために用い得る。翻訳キャッシュ310には、更に、文書において翻訳が出現する文脈に関する情報を含み得る。例えば、翻訳済みセグメントの文脈情報には、翻訳対象セグメントの両側に生起例、句、又はセグメントを含み得る。そのような文脈情報は、文脈内における翻訳のもっともらしい意味に基づき、特定の翻訳が適切な翻訳であるかどうかのシステムの判断を支援し得る。文脈情報には、更に、起点言語のセグメント用の文脈を含み得る。
図3Cは、翻訳キャッシュ310を動作させるための方法例を示す。この例は、動作を示す選択パラメータとして品質情報を用いる。1つ又は複数の他のパラメータ、例えば、文脈情報も、セグメント用の適切な翻訳を選択するために用い得る。翻訳フロントエンド110は、起点言語から目標言語に翻訳されるクライアント文書102を受信し、文書102の原文をセグメントに分割する(ステップ341)。次に、翻訳フロントエンド110は、翻訳キャッシュにある分割された各セグメントを調べて、翻訳が存在するかどうか判断する(ステップ342及び343)。翻訳キャッシュ310は、選択された生起例及びセグメントの起点言語から目標言語への翻訳を記憶する。翻訳キャッシュ310にある既存の翻訳の場合、翻訳フロントエンド110は、更に、翻訳の品質が充分であるかどうか判断する(ステップ344)。このことは、例えば、翻訳キャッシュ310に記憶された品質情報を用いることによって行い得る。翻訳されるセグメント用の適切な翻訳が、翻訳キャッシュ310にある場合、翻訳フロントエンド110は、そのセグメントを更に処理することなく、セグメント用の適切な翻訳を用いる(ステップ346)。翻訳されるセグメント用の適切な翻訳が翻訳キャッシュ310にない場合、そのセグメントは、更に処理され翻訳される(ステップ345)。この追加の処理は、例えば、セグメント翻訳サーバ130を用いて、起点言語と目標言語との間の翻訳用の翻訳モデルと、目標言語用の言語モデルとにアクセスし、セグメントを翻訳するための所望の翻訳モデルデータ及び言語モデルデータを取得し、所望の翻訳モデルデータ及び言語モデルデータを用いて、セグメントを翻訳することによって達成し得る。1つのセグメントを完了した後、翻訳フロントエンド110は、全ての分割されたセグメントが処理されるまで、次の処理されるセグメントに進む(ステップ347及び348)。
図4は、翻訳キャッシュ310の異なる実施例を示す。図3Aの設計とは異なり、図4の設計では、翻訳キャッシュ310は、負荷分散装置120と対話を行う。動作中、負荷分散装置120が、翻訳フロントエンド110からセグメントを翻訳のために受信した後、負荷分散装置120は、まず、翻訳キャッシュ310を照合して、各受信されたセグメント用の適切な既存の翻訳がないか調べ、その後、あらゆる受信されたセグメントをセグメント翻訳サーバ130に分散する。特定のセグメントに対して、適切な既存の翻訳が翻訳キャッシュ310にある場合、負荷分散装置120は、翻訳キャッシュ310からその既存の翻訳を取り込み、そのセグメントをセグメント翻訳サーバ130に翻訳のために送ることなく、それをそれぞれの発信元の翻訳フロントエンド110に送る。セグメント用の対応する翻訳が、翻訳キャッシュ310にない場合、負荷分散装置120は、セグメントを選択された翻訳サーバ130に翻訳のために送る。この負荷分散装置120の動作の態様は、各翻訳フロントエンド110の図3の動作と同様である。
キャッシュに記憶された翻訳済みセグメントを用いて、MTシステムにおける処理及び通信トラフィックを低減する概念は、セグメント翻訳サーバ130によるアクセスのために、MTシステムのバックエンドに拡張し得る。図5は、図1又は2のセグメント翻訳サーバ130によって共有されるセグメント翻訳サーバキャッシュ510の実施例を示す。翻訳されるセグメントを負荷分散装置120から受信すると、セグメント翻訳サーバ130は、まず、セグメント翻訳サーバキャッシュ510を照合して、セグメント用の既存の翻訳がないか調べる。適切な翻訳がセグメント翻訳サーバキャッシュ510に存在する場合、セグメント翻訳サーバ130は、セグメント翻訳サーバキャッシュ310からその翻訳を取り込み、それを負荷分散装置120に送り、負荷分散装置120は、それをそれぞれの発信元の翻訳フロントエンド110に送り、そして、先に進んで、次の翻訳されるセグメントを処理する。セグメント用の対応する翻訳が、セグメント翻訳サーバキャッシュ510にない場合、セグメント翻訳サーバ130は、先に進み、セグメントを翻訳する。
上記MTシステムのセグメント翻訳サーバ130には、起点言語と目標言語との間の翻訳用の翻訳モデル及び目標言語用の言語モデルを用いて、セグメントを翻訳するデコーダと、言語モデルから取り込まれたデータを記憶し、また、記憶されたデータをデコーダに供給するように動作可能なローカルキャッシュと、を含み得る。デコーダは、言語モデルサーバ210と通信を行い、セグメントの可能な翻訳用の各nグラムに関する情報と、関連する統計データと、を要求する。
図6は、翻訳デコーダ610、LM照合要求待ち行列620、及びローカルキャッシュ630を有するセグメント翻訳サーバ130の例を示す。本例のローカルキャッシュ630には、上位ローカルキャッシュ631及びオプションの下位キャッシュ632が含まれる。上位キャッシュ631及び下位キャッシュ632を用いると、LMサーバ210にアクセスすることなく、セグメント翻訳サーバ130が用いるための選択されたLMデータを記憶し得る。上位キャッシュ631は、セグメントの翻訳中に取得した選択済みLMデータを記憶して、現セグメントに必要な全てのnグラムが、セグメント翻訳サーバ130内において利用可能であるように構成し得る。
動作中、上位キャッシュ631は、記憶されたLMデータが、或る限界を越えて蓄積されないように、何らかの方法で空にしてよい。幾つかの実施例において、セグメント翻訳サーバ130は、上位キャッシュ631のコンテンツを定期的に削除する。この定期的な削除の具体的な例として、上位キャッシュ631は、セグメントが翻訳された後、削除し得る。他の実施例において、上位キャッシュ631に記憶されたLMデータは、“古い”と印を付けて、上位キャッシュ631が、言語モデルから取得された新しいLMデータを記憶するスペースが無くなりつつある場合、新しいセグメントを翻訳する際、そのような“古い”データが更に再使用されなければ、削除し得る。
下位キャッシュ632は、セグメント翻訳サーバ130におけるオプションの特徴として実現して、頻繁に用いられるLMデータを記憶し得る。一般的に、下位キャッシュ632のデータは、各セグメントの翻訳後、空にされず、上位キャッシュ631のデータより長い期間、保持される。従って、下位キャッシュ632のLMデータは、比較的に恒久的であり、上位キャッシュ631のLMデータは、比較的に暫定的である。
他の実施例では、単一のローカルキャッシュが用いられ、それぞれ、別個の上位キャッシュ及び下位キャッシュに対応する上位キャッシュ部及び下位キャッシュ部を有し得る。
LM照合要求待ち行列620は、セグメント処理中、言語モデルから選択されるLMデータに対するデコーダ610により生成される要求を一時的に記憶するために用い得る。そして、待ち行列に入った要求は、1つ又は複数のLMサーバ210に、例えば、先入れ先出し法で順次送出される。LM照合待ち行列620により、要求が、行われ、そして、異なる時間にLMサーバ210によってサービスが提供され、デコーダ610による待ち時間を低減し得る。また、要求を待ち行列に入れ、待ち行列に入れられた要求を一緒に送ると、LMサーバ210との交信に関係するオーバーヘッドを大幅に低減し得る。ローカルキャッシュ630及びLM照合要求待ち行列620は、連係して動作し、各セグメントを効率的に処理し得る。異なる手法を用いて、デコーダ610及び待ち行列620を動作することができる。2つの例について、以下に述べる。
一例において、デコーダ610は、ツーパス処理方式で動作する。まず、デコーダ610は、要求されたLMデータが受信される前に、言語モデルからの全てのLMデータを必要とすることなく、セグメントを処理する。ダミー照合モデルを用いると、要求されたLMデータを待つ間、デコーダ610は、セグメントを処理し得る。これが、処理の第1パスである。全ての要求されたLMデータが受信された後、デコーダ610は、受信されたLMデータを用いて、処理を終了させる。
他の例において、LMサーバ210への要求が対処される間、LMサーバ210の大規模言語モデルとは異なり粗く小規模の言語モデル又は他の翻訳資源、例えば、図2の資源サーバ230をデコーダ610によって用い得る。デコーダ610による処理は、粗いLMを用いて、第一次の翻訳結果を生成する。要求されたLMデータが、LMサーバ210から受信された後、デコーダ610は、先に進み、受信されたLMデータを用いることによって、第一次の翻訳結果を更新する。
上記2つの例の手法を実現する際、LMサーバ210へのデータ要求の送出に先立って、デコーダ610は、翻訳されるセグメントを前処理し、セグメント用の可能性の小さい翻訳を取り除いて、LMサーバ210に対して行われる要求の数を低減し、また、要求されたLMデータでの処理の量を低減する。前処理において、デコーダ610は、LMサーバ210における大規模言語モデルと異なる、又は、LMサーバ210より容易に利用可能である翻訳資源、例えば、粗く小規模の言語モデルを用いて、セグメントを処理し、第一次の結果、例えば、セグメント用の可能な限り最良の翻訳経路上において上限を生成する。次に、デコーダ610は、第一次の結果を用いて、上記2つの処理手法の内のいずれか1つを用いることによって、必要なLMデータに対する要求を生成し、全ての要求に対する応答が受信された後、セグメントの翻訳を完了する。
図7は、セグメント701の翻訳における図6のセグメント翻訳サーバ130の翻訳デコーダ610の1つの代表的な動作を示す。最初に、デコーダは、翻訳されるセグメントの翻訳に関連するTMデータ、例えば、目標言語の句又は敷衍語句の全ての可能な翻訳を要求し、TMサーバから取り込む(ステップ710)。敷衍語句は、前に用いられた句が与えられると可能な句の内の1つによって、候補翻訳を拡張する。要求されたTMデータが、検索されつつある間、デコーダは、何らかの初期値でLMモデルから各nグラムを調べるための値、例えば、ランダムな値又は一定の値を設定する。一例として、候補翻訳は、ゼロに設定し得る(ステップ720)。デコーダは、セグメントの一端から他端まで句反復を行って、最良の句を検索するが、この間、各セグメントにおける異なる可能な句を処理している時、LMが、多数回アクセスされる。各反復において、デコーダは、次のように、ツーパス処理を実施する。まず、現組の候補翻訳の全ての可能な敷衍語句が、演算され、また、可能な敷衍語句翻訳モデル評点が、それらの可能な敷衍語句に対して演算される(ステップ730)。可能な敷衍語句用の言語モデル評点は、まず、要求されたLMデータをLMサーバ210から受信する前に、利用可能な情報を用いて取得される(ステップ740)。例えば、ダミールックアップ表のnグラムに割り当てられた所定の値及び上位キャッシュ及び下位キャッシュを含むローカルキャッシュに記憶された言語モデル評点を用い得る(ステップ740)。これは、セグメント内における各句を処理する際の第1のパスである。次に、可能な句の取得言語評点が、LMサーバからの受信言語モデルデータを用いることによって更新される(ステップ750)。これは、各句を処理する際の第2のパスである。更新された評点に基づき、デコーダは、悪い評点の翻訳を除去し(ステップ760)、そして、更に、現セグメントの端に達したかかどうか判断する(ステップ770)。現セグメントが、処理対象の1つ又は複数の敷衍語句をまだ有する場合、デコーダは、上記プロセスを繰り返す。そうでない場合、デコーダは、セグメント用の最良の翻訳を抽出し、翻訳済みセグメント702を負荷分散装置120に送る。
図8は、要求されたLMデータがデコーダに利用可能になる前の図7における処理ステップ(ステップ740)の例を示す。翻訳されるセグメント用の翻訳モデルからの各可能な句又は敷衍語句の場合、まず、デコーダは、各可能な翻訳用の目標言語の何らかの可能なnグラム及び関連する統計データが上位キャッシュにあるか調べる(ステップ810及び820)。情報が、上位キャッシュにおいて入手可能である場合、デコーダは、情報を用いて翻訳を完了し、翻訳済みセグメントを生成する(ステップ830)。情報が、上位キャッシュにおいて入手可能でない場合、デコーダは、下位キャッシュを調べる(ステップ840及び850)。情報が下位キャッシュにある場合、デコーダは、この状態に印を付けて(ステップ860)、そして、次に進み、上位キャッシュ及び下位キャッシュ双方の情報を用いて、翻訳を完了する(ステップ830)。情報が、下位キャッシュにない場合、デコーダは、言語モデルからのデータに対する要求をLM照合要求待ち行列において行う(ステップ870)。受信されたLMデータは、上位キャッシュ及び下位キャッシュに置かれ(ステップ880)、翻訳が完了する(ステップ830)。
各セグメント翻訳時の句反復中、ツーパス処理(図7のステップ730、740及び750)は、システムの他の言語モデル資源を用いて、第一次の翻訳を実施し、そして、言語モデルを用いて、翻訳を更新し終了させ得る。そのような言語モデル資源の1つの例は、第2言語モデルであり、これは、例えば、言語モデルサーバ210に記憶された小規模の言語モデルである。
セグメント翻訳サーバ130(図6)は、他の構成で動作し得る。例えば、図9A及び9Bは、図6のシステムの他の動作を示し、この場合、言語モデルは、セグメントを翻訳するプロセスにおいて一度アクセスされ、また、セグメント翻訳サーバ130には、ローカルキャッシュ630の一部分として、上位キャッシュ631及び下位キャッシュ632双方が含まれる。
翻訳するセグメントを負荷分散装置120から受信した後、セグメント翻訳サーバ130は、サーバ220に記憶された翻訳モデルからのセグメント用の目標言語の全ての可能な翻訳を要求し取り込む(ステップ910)。翻訳モデルからの受信された可能な翻訳に基づき、セグメント翻訳サーバ130は、各可能な翻訳用の目標言語の全ての可能なnグラムと、言語モデルサーバ210に記憶された言語モデルからのセグメント用の関連統計データとに対する要求を生成する(ステップ920)。要求を言語モデルサーバ210に送るのに先立って、セグメント翻訳サーバ130は、まず、ローカルキャッシュ630を検索して、要求中に何らかの言語モデルデータが存在するかどうか確認し、そして、ローカルキャッシュ630が、データを有しない場合、生成された要求を言語モデルサーバ210に送る。まず、セグメント翻訳サーバ130は、上位キャッシュ631を照合して、各可能な翻訳用の目標言語の可能なnグラム及び関連する統計データがないか調べる(ステップ930)。セグメント翻訳サーバ130は、上位キャッシュ631を調べて、全ての可能なnグラムが存在するかどうか判断する(ステップ940)。そうであれば、セグメント翻訳サーバ130は、生成された要求を言語モデルサーバ210に送ることなく、セグメント用の翻訳を完了する(ステップ950)。
そうでない場合、セグメント翻訳サーバ130は、追加の処理を実施する(ステップ960A)。下位キャッシュ632は、セグメント翻訳サーバ130によって、言語モデルを備えた上位キャッシュ631に無いいずれかのnグラム用の言語モデルデータが検索される(ステップ961及び962)。1つの可能なnグラム及び統計データに対する要求情報が、下位キャッシュ631にある場合、セグメント翻訳サーバ130は、その特定のnグラムに対して、この存在をマークし、これにより、それぞれの生成された要求(ステップ920)は、言語モデルサーバ210に送出されない(ステップ963)。更に、初めに上位キャッシュ631にあったnグラムの場合、特定のnグラムに対する要求は、言語モデルサーバ210にも送出されない。セグメント翻訳サーバ130が、いずれかのキャッシュにおいてもnグラム用の情報を何も見つけられない場合、生成された要求は、LM照合待ち行列620に置かれ、言語モデルサーバ210に送出される(ステップ964)。言語モデルサーバ210から受信された言語モデルデータは、それぞれのnグラムの性質に依存して、キャッシュの内の1つに記憶される(ステップ965)。頻繁に用いられるnグラムの場合、その言語モデルデータは、下位キャッシュ632に保存し得る。現セグメントの翻訳に用いられるが、目標言語に頻繁に用いられそうもないnグラムの場合、受信されたデータは、上位キャッシュ631に記憶し得るが、上位キャッシュ631は、頻繁に空にされる。この時、全ての可能なnグラムに対するセグメント翻訳用の言語モデルデータは、ローカルキャッシュ630のどこかにある。従って、セグメント翻訳サーバ130は、言語モデルデータに基づき、そのセグメントの翻訳を完了する(ステップ950)。
図10は、上位キャッシュ631だけを有し、下位キャッシュ632が無いセグメント翻訳サーバ130の動作例を示す。初めの処理(ステップ1010乃至1040)は、たった今述べた初めの処理(ステップ910乃至940)と同様である。いずれかの可能なnグラム用の言語モデルデータが、上位キャッシュ631にない場合、そのnグラム用の生成された要求は、LM照合待ち行列620に置かれ、言語モデルサーバ210に送出される(ステップ1060)。言語モデルサーバ210から受信された言語モデルデータは、上位キャッシュ631に記憶される(ステップ1070)。生成された要求をLM照合要求待ち行列620に置き、また、受信された言語モデルデータを上位キャッシュ631に記憶する本プロセスは、言語モデル情報を最初に上位キャッシュ631に有しない全てのnグラムに対して実施される。全ての要求された言語モデルデータが受信された後、セグメント翻訳サーバ130は、言語モデルデータに基づき、そのセグメントの翻訳を完了する(ステップ1050)。
図11A及び11Bは、図6のシステムにおけるセグメント翻訳サーバの他の処理フロー例を示し、この場合、セグメント翻訳サーバ130は、他の利用可能な翻訳資源からの言語データを用いて、セグメントの翻訳を処理する一方で、待ち行列620にある待ち行列に入れられた要求が対処される。各セグメントを翻訳するために、セグメント翻訳サーバ130は、デコーダ610を用いて、TMサーバ220から、翻訳されるセグメントの翻訳に関連するTMデータ、例えば、目標言語の句又は敷衍語句の全ての可能な翻訳を要求し検索する(ステップ1110)。そして、セグメント翻訳サーバ130は、言語モデルからの目標言語の全ての可能なnグラムに対する各可能な翻訳及び関連する統計データの要求を生成する(ステップ1120)。セグメント翻訳サーバ130は、要求されたLMデータが、セグメント翻訳サーバ130にあるかどうか判断する(ステップ1130)。ある場合、セグメント翻訳サーバ130は、利用可能なLMデータを用いて翻訳を実施し、翻訳済みセグメントを生成する(ステップ1140)。情報がセグメント翻訳サーバ130にない場合、セグメント翻訳サーバ130は、各欠落しているnグラム及び統計データに対する要求をLM照合要求待ち行列620に置き(ステップ1150)、先に進み、翻訳を処理する一方で、要求に対する応答を待つ(ステップ1160)。この期間中、セグメント翻訳サーバ130は、他の利用可能な翻訳資源(例えば、資源サーバ230(図2))からの言語データを用いて、セグメントの翻訳を処理する(ステップ1161)。セグメント翻訳サーバ130は、全ての要求されたLMデータが利用可能になるまで、他の利用可能な翻訳資源からのデータで処理を継続する(ステップ1162)。全ての要求されたLMデータを受信した後、セグメント翻訳サーバ130は、LMサーバ210からの新しく利用可能なデータを用いて、他の資源を用いることによって最初に生成された処理結果を更新し、最終の翻訳を生成する(ステップ1163)。
自動機械翻訳の上述した様々な特徴の更なる詳細及び他の特徴を以下の章に提供する。
分散型言語モデルの記号化及びアクセス処理
本章では、文章及び文書を中国語等の1つの自然言語から英語等の他の自然言語に翻訳するためのMTシステムの態様について述べる。本例は、翻訳プロセス中に用いられる大規模言語モデルを如何に効率的に取り扱って、様々な言語の句の発生頻度に関する統計値を提供するかという問題に対処するために用い得る。翻訳の品質は、一般的に、システムが、nが3より大きいnグラム等の大規模言語モデルを利用することが可能である場合、改善できる。
翻訳プロセスの一部として、統計的翻訳システムは、様々な語、句、又は一続きの語がどの程度頻繁に目標言語において起こるということに関する情報を必要とする。この情報は、更に理解可能な目標言語翻訳を選択するために用いられる。言語モデル情報は、通常、大規模な訓練文書コーパスにおける一続きの語の発生頻度を演算することによって、収集される。一例として、そのようなデータの集合体が、以下の情報を生成し得る
(“is”、“the”、“only”、“person”)−>9234回の発生
(“is”、“the”、“only”、“person”、“that”)−>173回の発生
(“is”、“the”、“person”、“only”、“that”)−>1回の発生
ここで、左側の語の文字列は、ある様々な可能な一続きの語を表し、右側の数字は、訓練文書コーパスにおける発生数を表す。言語モデルデータの一般的な形式は、ある値にマッピングされる一連の語であってよく、この値は、いずれか任意のバイトシーケンスであってよく、また、幾つかの通常のMTシステムでは、整数又は浮動小数点式の値のいずれかであってよい。言語モデルは、nグラム言語モデルを用いることによって、全ての語シーケンスの情報を長さnまで維持するために用い得る。様々な機械翻訳システムが、それらの言語モデルにおいて、nの値が相対的に小さいnグラム、例えば、2グラム又は3グラム言語モデルを用い、これにより、それら言語モデルは、単一の機械に記憶する程充分に小さくできる。
ここに述べた機械翻訳手法は、機械翻訳システムにおける、及び自動音声認識システム等の大きな言語モデルを利点として用い得る他のシステムにおける極めて大規模な言語モデルに用い得る。1つの手法は、多数の機械にまたがる一組の分散言語モデルサーバ上において言語モデルデータを区画し、可能性として、言語モデル状態の各区画された部分の複製を備えることである。大規模言語モデルは、nが3より大きいnグラム(例えば、n=4、5、6等)を有し、また、機械翻訳の品質を高めるために用い得る。図1及び2は、そのようなシステムの例を示し、この場合、言語モデルには、nが3より大きい大規模nグラムを含み得る。動作中、1つ又は複数の翻訳サーバは、文章の特定の断片を起点言語から特定の目標言語に翻訳せよという要求を受信する。往々にして、要求は、単一文の細かさである。翻訳サーバは、言語モデルサーバから言語モデルデータの内の適切なものを検索する。実際の翻訳作業を実施するプロセス(例えば、図2のセグメント翻訳サーバ130)から言語モデルプロセス(例えば、図2のLMサーバ210)へのネットワーク遠隔手順呼(RPC)は、LMデータを要求し検索するために用い得る。
オフラインプロセスは、様々な(nグラム−>値)キー/値対をK個に分割した言語モデルデータ構造を構築するために用い得る。同じ又は同様な翻訳要求を取り扱う段階の一部として必要とされる可能性がある値を有するnグラムが、同じ区画に常駐するように、nグラムを区画することは、有用なことが多い。これにより、翻訳サーバによりアクセスが必要な独自の区画の数が最小化される傾向がある。このことを達成する1つの方法は、nグラムの最初又は最後のM語によって区画すること、例えば、nグラムの最後の2つの語によって区画することである。
各サーバ内において、区画内におけるnグラム値の照合は、効率的であるように構成すべきである。これは、翻訳が、各区画を毎秒数十万の照合のために用いる必要があり得るためである。同時に、言語モデルを保持するのに必要なメモリの総量が、低減されるように、言語モデルデータを簡潔に表すことは、有用である。このようにして、区画の数を低減でき、また、言語モデルを供給するのに必要な機械の数も低減できる。
nグラムデータを記号化するための1つの手法は、各語に固有の整数IDを割り当てることであり、この場合、使用頻度の高い語に小さい番号を割り当てる。このID割当ては、言語モデルの構築段階中に行う。以下の文書コーパスから訓練データについて考察する。
(“is”、“the”、“only”、“person”)−>9234回の発生
(“is”、“the”、“only”、“person”、“that”)−>173回の発生
(“is”、“the”、“person”、“only”、“that”)−>1回の発生
同じデータは、ID番号を用いて、以下の簡略化形式で表し得る。
13_3_53_1037−>9234
13_3_53_1037_73−>173
13_3_1037_53_73−>1
この場合、“13”は、語“is”のID番号、“3”は“the”、“53”は“only”、“1037”は“person”、及び“73”は“that”である。ID番号をこのように用いると、言語モデル用のデータのサイズが縮まり、効果は、極めて大きな言語モデルの場合、甚大になり得る。以下は、一連のnグラム及び順番が並び替えられた関連する値を示す一組のブロックにグループ化された言語モデル用のnグラムの例である。
1388>6[Bob]
1388_2−>5[Bob</S>]
1388_3−>3[Bob,]
1388_3_2−>6[Bob,</S>]
1388_3_4−>2[Bob,the]
1388_3_4_11−>3[Bob,the”]
13883_4_11_2454−>1[Bob,the”grand]
13883_4_11_7379−>1[Bob,the”Father]
13883_4_11_20940−>1[Bob”sailor]
13883_4_11_38117−>1[Bob,the”Dude]
13883_4_53−>3[Bob,themore]
13883_4_53_587−>1[Bob,themorelow]
この場合、左から右に、ID番号、発生数、及び対応する文章である。
幾つかの実施例において、言語モデルデータは、メモリのバッファに格納され、256の一意的語識別名が現れるまで、または、最大数のnグラム(例えば、最大1024nグラム)が、このブロックのデータ用に蓄積されるまで、ブロックに追加される。本フォーマットでは、256の一意的語IDまでを一組のローカルIDに0乃至255の範囲でマッピングする用語集を用いる。用語集は、任意の便利な方法を用いて記号化してよい。そして、実際のnグラムデータは、ローカルIDで記号化される。特定のnグラムを照合する場合、まず、所望の語IDをローカルIDに変換し、そして、適切な一連のローカルIDを高速走査して、正しい値を見つける。
ブロックにnグラムが与えられると、ブロックの全nグラムによって共有される共有接頭辞長を演算することができる。ブロック内において、全ての登録項目は、異なるnグラム長に分離され、ローカルIDで書き換えられる。言語モデルデータ用の実際のブロックフォーマットは、以下の通りである。
共有__接頭辞_サイズ:バイト
値長:バイト
用語集中の登録項目#:varint32
N語ID(用語集):N値
#登録項目表:ブロックにおける各々独自のnグラム長の繰り返し対
K:バイト
長さKの登録項目#:varint32
“0”:バイト(定数0は表の端を示す)
上記データブロックには、ブロックにおける異なる長さの各nグラム用の別個の部分が続く。ブロック用のKグラム部の各入力項目の場合、Pの共有接頭辞は、一連のK−Pバイトとして表され、Kグラムの後続の(K−P)ローカル語IDを表し、その後に、“値_長”バイトシーケンスとしての値が続く。
各ブロックには、ブロックに記憶された最後のnグラムの文字列表現であるキーが与えられる。ブロックコンテンツは、sstableにおける値として記号化され、このキーは、安定キーとして用いられる。これによって、その照合が保証される。一例は以下の通り。
共有接頭辞長:1
このブロックの値の長さ:1
Lex:1388_2_3_4_11_2454_7379_20940_38117_53_587
nwords:<1,1>
nwords:<2,2>
nwords:<3,2>
nwords:<4,2>
nwords:<5,5>
“0”
1グラム部:
[]:6
2グラム部:
[001]:5
[002]:3
3グラム部:
[002_001]:6
[002003]:2
4グラム部:
[002_003_004]:3
[002_003_009]:3
5グラム部:
[002_003_004_005]:1
[002_003_004_006]:1
[002_003_004_007]:1
[002_003_004_008]:1
[002_003_009_010]:1
機械翻訳に言語モデルを用いると、長いnグラムが見つけられない場合、短いnグラムを調べるためのシステムが必要なことが多い。短いnグラムは、後退及び平滑化に用い得る。短いnグラムは、nグラムの前端又は後端のいずれかの一端から語を剥ぎ取ることによって生成し得る。一例として、機械翻訳を要求するクライアントが、シーケンス“ABCDE”を要求することがあるが、ここで、各文字は、1つの語を表し、シーケンスの前からの剥ぎ取りを要求する。nグラム全体がサーバ上に見つからない場合、クライアントは、シーケンス“BCDE”が必要である。この短くなったシーケンスも見つからない場合、更に短いシーケンス“CDE”等が必要になる。最も短いシーケンスは、それより長いものが見つからない場合、“E”である。検索を効率的に行うために、nグラムは、それらの最後の語によって区画し得る。上記例において、“E”で終わる全てのnグラムは、同じ区画にグループ化し、同じ機械に記憶し得る。このように、短いnグラムへの後退は、異なるサーバへの新しい要求を行うことなく、1つの単一のサーバにおいて行い得る。
最後の語によって区画すると、区画が極めてバランスを欠いたものになり得る。バランスは、最後の2つの語又は更に長い一続きの長さSに基づき区画することによって改善し得る。短いnグラムが同じサーバ上にあることを保証するために、ユニグラム(unigram)(即ち、一続きの長さS−1であって、更に短い)を全ての区画上に複製し得る。全ての区画上への短いnグラムの複製に対する他の選択肢は、長さS−1又は更に短いnグラムが必要とされる場合、第2の要求を発行することである。
言語モデルのサイズは、大幅に低減することができ、また、区画は、或る登録項目を言語モデルから除去することによって、言語モデルの品質に対する影響を最小限に抑えて、更に均等なサイズにできる。1つの方法は、頻繁に用いられる短いnグラムで終わる長いnグラムを除去することである。一例として、“DE”が頻繁に用いられるバイグラム(bi―gram)であるとする。“DE”で終わる全4及び5グラムは、除去し得る(例えば、nグラム“ABCDE”)。そして、トリグラム(trigram)(例えば、“CDE”)だけを維持する。モデルは、“CDE”と共にフラグを記憶するか、又は或るnグラムが除去されていることを指摘する他の手段を用い得る。
言語モデルの幾つかの実施の例において、クライアントコードは、要求される特定のnグラム用の値を許容する単純なインターフェイスを用いる。内部的には、言語モデルデータを記憶するクライアントライブラリは、要求されたnグラムがどの区画に常駐するか決定し、そして、その区画に送られるnグラムに対する要求を待ち行列に入れる。待ち行列に入れられた要求の数が、しきい値を超過する場合、大きい照合要求は、その区画に対して責任を負っているサーバに送られる。ユーザレベルの“Wait()”動作が、クライアントによって用いられ、全ての保留中の照合を強制的に適切なサーバに送ることができる。本動作は、発呼者に戻る前に、それらが完了するまで待つ。
また、セグメント翻訳サーバ(ここに、クライアントライブラリが配置されている)は、グラム−>値マッピングの単純なハッシュテーブルベースのキャッシュを実現して、共通に必要なnグラムのために言語モデルサーバと通信する必要性を回避し得る。このキャッシュの一例は、下位キャッシュ632(図6)である。特定の翻訳反復によって必要とされる組のnグラム値を決定することは、困難な場合があることから、翻訳システムは、各反復を2つのパスとして実行するように構成し得る。第1のパスは、照合される各nグラム用の一定の値(又は値では全くない、又はランダムな値)を返すダミー言語モデルで実行されるが、言語モデルサーバとの照合を待ち行列にも入れて実際のnグラム値を取り出す。翻訳反復は、まず、ダミー言語モデルで実行され、そして“Wait()”が、呼び出され、全ての保留中の言語モデル照合が完了することを保証する。その時点において、全ての言語モデル値が、翻訳サーバそれ自体内において利用可能であり、従って、翻訳プロセスは、実際の言語モデルで再度実行され、分散された言語モデルからの値が、どの候補翻訳が、次の反復において検討する価値があるか決定するために用いられる。第2キャッシュ、例えば、上位キャッシュ631(図6)は、特定の文を翻訳するために要求された全てのnグラムを常時監視し、また、この文が処理される間、確率が入手可能であることを保証するために用い得る。翻訳機は、文の終わりを通知し、この時、上位キャッシュを空にし得る。
幾つかの実施例において、ダミー言語モデルは、単一のサーバ上の小規模非分散型言語モデルを粗いLMとして用いて、LMデータの供給を待つ期間中、翻訳を処理するか、又は、LMデータが要求される前に、翻訳を処理して、粗いLMを用いて、第一次の翻訳結果に基づき、要求を生成し得る。幾つかの実施例において、ダミー言語モデルは、例えば、最も高い確率を各語に対して記憶することによって、真の確率の代わりに、分散言語モデルに存在しその語を生成する確率に関する上限を返す。言語モデルへの効率的なアクセスを可能にするために、分散言語モデルからの要求された確率の数は、アクセス及び検索時間を低減するために小さく抑えられる。従って、翻訳検索プロセスの所定の時点において、或る仮定拡張には、言語モデル確率が必要であるが、言語モデル確率がXより小さいと、仮定拡張は、削られることをシステムが分かっている場合、実際に確率の上限を返すダミー言語モデルは、分散言語モデルに対する要求を削ることができる。
デコーダ反復当りのツーパス言語モデルアクセスは、異なる木目の細かさのレベルで実現して、異なる検索アーキテクチャに一体化し得る。例えば、ツーパスプロセスは、セグメントの翻訳当り一回起こり得る。場合によっては、1回目のパス時、文は、ダミー言語モデルで完全に翻訳されることがある。第1のパスは、不要部分が除かれた効率的な検索スペースの表現を生成し得る。そして、第2のパスは、分散言語モデルから要求された確率を用いて、検索スペースの表現を再評価する。他の例において、ツーパスプロセスは、セグメントの翻訳中、多数回実行し得る。有限の組の可能な敷衍語句を後ろに付加することで一組の仮定における各仮定を繰り返し拡張することによって、検索スペースを構成するデコーダの場合、ダミー要求は、一組の仮定が拡張される時はいつでも発行し得る。
区画されたシステムでは、異なる区画サーバは、異なる処理スピードを有し得る。異なる機械への言語モデル要求は、従って、異なる時点で戻し得る。セグメント翻訳サーバにおいて用いられるWait()動作は、最遅区画を待たなければならない。その最遅機械が、すぐに修正できない問題、例えば、停電やネットワーク問題を有する場合、待ち時間が、長引き容認できないことがある。この問題を取り扱う1つの方法は、Wait()のタイムアウトを有し、確率推定、例えば、ダミー言語モデル又は異なる小規模のメモリ内言語モデルによって割り当てられた確率を返すことである。この問題を緩和する他の方法は、区画用の初期のサーバのタイムアウトがあった後、異なるレプリカを用いて言語モデルデータを取得し得るように、同じ言語モデル区画を異なる機械に多数回複製することである。更に、要求は、その言語モデルの同じ区画の全ての異なるレプリカに同時に送り、また、翻訳のために最初に返されたデータを選択してよい。
翻訳サーバにおけるWait()呼は、同じセグメントを翻訳するための異なるサーバに対する要求の同期化を実現するために用い得る。待ち時間を低減する1つの方法は、言語モデル要求の異なる反復をインターリーブすることである。従って、全ての確率が返されるまで待つ代わりに、システムは、言語モデル確率なしで仮定を採点したり、又は、評点の推定値を用いたりしてよく、また、言語モデル確率が到着次第、仮定評点を更新してもよい。この動作モードでは、いずれかの各言語モデル確率要求は、検索仮定へのポインタを、それが必要な場合、格納しなければならないか、又は、各翻訳仮定が、欠落言語モデル確率へのポインタを有する。この変形例では、中間仮定評点は、通常、近似値である。厳密な評点を有する必要性がある時はいつでもWait()を発行し得る。
翻訳サーバ、例えば、セグメント翻訳サーバは、nグラム履歴を常時監視し、そして、追跡されたnグラムの異なる継続を評価するように構成し得る。例えば、履歴は、“ABCD”であってよく、そして、継続調査は、“ABCDE”、“ABCDF”等であってよい。言語モデルクライアントは、整数番号によってこれらの履歴を表し、文又は他の翻訳単位の始まりでそれらを数え上げ始める。個々の文の翻訳には、通常、全ての可能なnグラム(1020以上)と比較して、例えば、数千又は数百万の比較的少数の異なる履歴が必要であり、従って、この整数には、数バイトだけで充分である。この手法は、履歴の長さとは独立に翻訳機の動作を行うために用いることができ、また、履歴は長くなり得ることから、記憶スペースを節約できる。クライアントは、ハッシュ機能を用いて、整数と履歴との間をマッピングしたり、整数をnグラムのアレイへの索引として用いたり、又は、履歴を追跡する他の手段を用い得る。
適応可能な及びスケーラブルな方法での機械翻訳
インターネット上のユーザ等の多数のユーザがアクセス可能な翻訳システムは、異なる時間に変動する量の負荷を経験し得る。そのような変動は、例えば、変動する数の要求、困難さの程度が変動する要求、異なる言語対に対して割合が変動する要求等に起因し得る。この章では、システムにおけるこれらの及び他の変動に起因する変動する量の負荷を取り扱い、サービス品質の低下を低減する自動機械翻訳システムにおける特徴について述べる。
自動翻訳システムの容量を拡大するためには、システム用の根底にある翻訳技術は、翻訳スピードと翻訳品質とのトレードオフの異なる点において、作用できるべきであり、システム全体は、変動する負荷に適応可能であるべきである。例えば、システムは、遅い処理スピード(例えば、10語/秒)の高品質翻訳で、中程度の処理スピード(例えば、20語/sec)で中程度の翻訳品質で、又は速い処理スピード(例えば、100語/sec)で低品質の翻訳又は句対句もしくは語対語の注解で、翻訳するように構成し得る。高品質の翻訳を達成するために、翻訳サーバ又はエンジン(例えば、セグメント翻訳サーバ130(図2))は、多数の他のバックエンド、又は翻訳の過程でそれが用いる情報を提供するサーバを必要とすることがある。例としては、翻訳句辞書サーバ、言語モデルサーバ、翻字サーバ等が挙げられる。これらのバックエンド資源から情報を取得すると、或る量の時間がかかる。低品質の翻訳モードのいずれかでは、翻訳サーバは、これらのバックエンド資源の幾つかの使用を省き、低翻訳品質という代価を払って翻訳時間を低減し得る
例えば、翻訳サーバは、翻字資源を用いる段階を省き、そうでない場合、例えば、語を省略する又は元の語を翻訳に保持する等、他の方法で字訳される語を取り扱い得る。他の例は、言語モデルの使用を省き、他の翻訳情報(例えば、句表及び整理し直す確率)だけを用いて、翻訳を導出することである。構成要素を完全に省く代わりに、翻訳サーバは、更に、言語モデルに対する要求を減らすことを選択し、これによって、通信の量を低減し、翻訳をスピードアップし得る。従って、翻訳サーバは、言語モデルから5グラムの代わりに、3グラム又は4グラムだけを要求しようと決定し得る。全ての品質レベルに対するエンドツーエンドの待ち時間は、フロントエンド翻訳サーバ及び様々なバックエンドサーバ双方において、計算を並列化することによって低減し得る。LMサーバ等のバックエンド資源サーバからの待機中、翻訳サーバは、バックエンド結果に依存しない演算の部分を実施し得る。バックエンド資源サーバ(例えば、LMサーバ)に対する待ち時間と並列にフロントエンド演算を行うことによって、バックエンドの待ち時間は、バックエンドサーバの待ち時間がローカル演算に費やされる時間より大きくない限り、翻訳全体の待ち時間に寄与しない。バックエンド待ち時間それら自体は、翻訳サーバによって単一仮想サーバとしてアクセスされる多数の物理的な機械に及ぶデータを区画することによって低減し得る。
逆に、1つの区画された仮想サーバは、多数のバックエンドデータ源を供給し得る。例えば、翻訳システムは、異なるデータ源において訓練された多数の句ベースの翻訳語集を有し得る。これらの多数のモデルは、単一の区画された仮想サーバからサービスが提供され、翻訳エンジンのクライアント側で再区画される。これによって、複雑な複部構成の翻訳モデルは、単一区画サーバからサービスが提供される。
翻訳処理を低減するために、自動機械翻訳システムには、翻訳文及び文書部を記憶するキャッシュを含み得る。文書部は、語、句、文断片、文、パラグラフ、全文/文書等であってよい。図3Bに示すように、キャッシュは、起点言語部を1つ又は複数の目標言語部にマッピングし得る。各目標言語部は、その翻訳品質レベルに関する情報で印が付けられる。従って、キャッシュは、異なる翻訳品質レベルでの翻訳を含み得る。キャッシュは、更に、通常、高いレベルの翻訳品質を有し、別個のプロセスにおいて取得される人間によってなされた手作業での翻訳を含み得る。
自動機械翻訳システムには、複製された組の翻訳フロントエンド、例えば、翻訳フロントエンドサーバ110(図1及び2)、負荷分散構成要素、例えば、負荷分散装置120(図1及び2)、翻訳キャッシュ、例えば、翻訳キャッシュ(図3A、4、又は5)、翻訳エンジン、例えば、セグメント翻訳サーバ130(図1及び2)、並びに翻訳エンジンバックエンド、例えば、言語モデルサーバ、翻訳句辞書サーバ、及び翻字サーバを含み得る。フロントエンドは、文章又は文書翻訳要求を受信する。翻訳される文章又は文書は、部分即ちセグメントに分割される。セグメント用の翻訳は、翻訳キャッシュを調べることが可能であり、これによって、或る翻訳品質の翻訳を生成し得る。キャッシュに翻訳がない場合、又は品質レベルが充分に高くない場合、セグメントの翻訳要求が、負荷分散構成要素に伝達される。負荷分散構成要素は、全システム負荷及びセグメント翻訳サーバの負荷に関する何らかの情報を維持する。この情報並びに利用可能な容量に関する情報を用いて、負荷分散構成要素は、負荷分散方針を適用して、部分翻訳要求を如何にして処理するか決定する。キャッシュからの低品質翻訳は、負荷レベルが充分高い場合に用い得る。又は翻訳されるセグメントを翻訳バックエンドに送って、指定されたレベルの品質で翻訳してもよい。。更に、負荷分散論理は、他の要因を考慮し得る。例えば、ユーザからより多く注目され得るウェッブページの最初の部分又は文書の前の方の部分からのセグメントは、高い品質レベルで翻訳し得る。更に、そのような部分には、高い優先度を付与して最初に翻訳されるようにしてよく、また、翻訳済みウェッブページ又は他の文書の最初の部分は、ユーザに早く返すことができる。
更に、自動機械翻訳システムは、ウェッブページ又は文書の幾つかの部分に対して、例えば、ウェッブページの下部にある文章に対して、迅速に低品質の翻訳を生成して、翻訳済みコンテンツをユーザに配信し、その間、ウェッブページ又は文書の同じ部分をバックグラウンドで処理して高品質の翻訳を生成するように構成し得る。高い品質で翻訳が利用可能になると、システムは、ユーザに既に配信された低品質の翻訳を高い品質の翻訳で置き換え得る。前に翻訳されたページは、高品質の翻訳がバックグラウンドで生成され時、部分的に又は全体的に動的に置き換えてよい。このことは、ジャバスクリプト等のクライアント側スクリプト言語を用いて、既にクライアントコンピュータに送られている翻訳済み文書の一部を変えることを含み、様々なメカニズムを用いて行うことができる。
高品質に翻訳されるウェッブページ又は文書内の部分は、様々な方法で識別し得る。1つの方策は、文書の初めの部分を高い品質で翻訳することであるが、その理由は、この部分が、ユーザによって慎重に調べられる可能性があるため、又は、ユーザによって読まれる唯一の部分であり得るためである。他の方策は、文書構造又はHTMLマークアップに基づき、ウェッブページ又は文書の領域の重要性を、例えば、章見出し、大きなフォントサイズの章、又は各パラグラフのトピックセンテンスとして識別することである。
翻訳済みセグメントは、システムによって、例えば、翻訳フロントエンドサーバ130(図1又は2)によって組み立てられ、翻訳文又は文書を形成して、要求側に返される。図1に対応して翻訳キャッシュを備えて実現されるシステムでは、異なる品質レベルの翻訳を備えた翻訳キャッシュが、負荷分散装置120と如何にして対話するかについては、ばらつきがあり得る。例えば、システムは、キャッシュのあらゆるセグメントを調べ、全てを負荷分散装置に送り、キャッシュ入力項目を用いるべきかどうか又はセグメントを翻訳エンジンに送るべきかどうか負荷分散装置に判断させるように構成し得る。他の選択肢として、システムは、或るセグメントだけを負荷分散装置に送るように構成してよい。様々な負荷分散方式があり得る。複数の種類の翻訳エンジン(例えば、セグメント翻訳サーバ130)が、システムにあってよく、これによって追加の柔軟性が負荷分散に提供される。例えば、低翻訳品質の高速セグメント翻訳サーバと、高翻訳品質の低速セグメント翻訳サーバとの組み合わせを用いてよい。
自動機械翻訳システムにおける手作業及び自動翻訳の組み合わせ
この章では、自動機械翻訳システムにおいて手作業での翻訳と自動翻訳を組み合わせ、様々な翻訳オプションを提供する手法について述べる。以下の処理を用いると、手作業での翻訳にデジタルライブラリを構築し、自動機械翻訳中、そのライブラリを用い得る。本出願で述べたシステムを用いると、これらの特徴を実現し得る。更に、他のMTシステムもこれらの特徴を実現し得る。
まず、機械翻訳用にユーザによって要求された広範囲の文書は、どの翻訳を手作業で実施するか決定するために解析される。このプロセスは、以前翻訳された文書の解析を含んでおり、解析された文書のどの部分が頻繁に出現するか決定し、また、そのような頻繁に用いられる部分は、手作業での翻訳の候補にできる。解析された文書の部分には、語、句、文、パラグラフ、埋め込み文書、埋め込みウェッブページ等を含み得る。更に、解析された文書のコンテンツ及び他の特徴は、解析を行い、手作業での翻訳への追加の候補を識別することもできる。例としては、新聞見出し、記事の表題及び副題、ウェッブ検索からの頻繁に用いられる語及び句、及びウェッブページからの重要なナビゲーションの句が挙げられる。
次に、手作業での翻訳用に識別された候補の手作業での翻訳が得られ、手作業での翻訳が、図3A、4及び5に示すように、翻訳データベース、例えば、翻訳キャッシュに記憶される。こうして、手作業翻訳のデータベースは、自動機械翻訳システムにおいて用いることができる。各記憶された手作業翻訳は、高い翻訳品質としてラベル表記すると、システム、例えば、図1又は2のシステムが、セグメント用の翻訳を選択する際、その品質ラベルを用い得る。
自動機械翻訳システムにおける手作業翻訳データベースは、更新又は修正し得る。人間により追加の材料を翻訳する要求は、稼働中の機械翻訳システムから取得された情報から自動的に導出し得る。例えば、機械翻訳アクティビティに関するシステム統計データを用いて、頻繁に翻訳される文章部分に関する情報及び手作業で翻訳される文章部分を識別し得る他の情報を抽出し得る。システムは、そのようなシステム統計データを定期的に又は連続的に監視して、手作業で翻訳される新しく識別された文章部分のリストを生成し得る。新しく識別された文章部分の手作業翻訳が取得され、手作業翻訳用の既存のデータベースが更新される。
識別された文章部分の手作業での翻訳を取得するためのプロセスには、ウェッブ又は他のオンラインのリポジトリにおける手作業での又は自動的な既存翻訳の検索を含み得る。そのような既存の翻訳は、検索して、翻訳を生成するためのシステムの翻訳資源を用いることなく翻訳を要求するクライアントに表示し得る。例えば、同じ突発ニュースが、幾つかの言語で入手可能な場合があり、また、システムは、目標言語のニュース報道を用いて、翻訳を取得し得る。また、会社や組織は、幾つかの言語の同じ情報をオンラインで利用可能にすることがあり、そのようなオンラインの文書は、システムによって検索され、既存の翻訳を取得し得る。
幾つかの手作業での翻訳は、或る状況においてのみ適切な場合がある。例えば、“home”の或る翻訳は、それが、ウェッブサイトのホームページへのリンク用のラベルであるウェッブページに対してのみ意味をなすことがある。手作業での翻訳データベースには、このタイプの情報を含むことができ、翻訳システムは、ウェッブページを翻訳する際、この情報を用いる。幾つかの実施例において、ユーザは、特定の翻訳要求に用いられる特定の翻訳データベースを供給し得る。
機械翻訳以外の自動処理システムにおける分散モデルの用途
区画、複製及び負荷分散に基づき、大きなモデルにアクセスし、スケーラブル及び適応可能な処理を提供する自動機械翻訳用の上記及び他の分散型システム設計は、機械翻訳以外の他の自動処理システムに適用し得る。大規模言語モデルは、自動音声認識、スパム検出、光学文字認識、スペル訂正及び他の自動言語処理用途にも用い得る。機械翻訳用の上述したシステム、例えば、図1、2、3A、3B、4、5及び6に示したシステムは、機械翻訳以外の自動処理を実現するように構成し得る。
例えば、文書画像を文章に変換するための光学文字認識(OCR)システムは、上述したシステム設計に基づき構築し得るが、この場合、文字用の言語モデルは、機械翻訳における語用の言語モデルを置き換えるために用い得る。自動スペル訂正システムは、言語モデルを用いて、或るnグラムに続く最も可能性が高い語を効率的に見つけたり、語のスペルを修正したりできる。更に、自動音声認識システムは、言語モデルを用いて、語の確率や発音辞書の正しい表現の節の確率上限を予測したり、入力音声を音声のコンテンツの文章に変換したりできる。更に、大規模言語モデルは、スパムフィルタ処理用途において、電子メールのコンテンツに基づき、電子メールをフィルタ処理するために用い得る。これらの及び他の自動言語処理用途において、区画及び複製は、単一の機械内に納まらない大規模言語モデルへのアクセスを提供するために、また、スケーラブル及び適応可能な方法で大量の要求を取り扱うために実現し得る。
図12は、大規模言語モデルに基づく言語処理機能を提供するように構成し得る分散型処理システム1200の例を示す。システム1200の処理機能は、機械翻訳と異なってよい。このシステム1200には、多数の言語モデルサーバ1240上において区画及び複製される大規模言語モデルが含まれる。更に、システム1200には、入力1201及び出力1202を取り扱うための多数のフロントエンド1210と、入力1201を処理し、出力1202を生成する多数の処理サーバ1230と、が含まれる。各フロントエンド1210は、入力1201を受信した後、処理サーバ1230による処理のために入力1201をセグメントに分割する。負荷分散装置1220は、処理サーバ1230における作業負荷に基づき、異なる処理サーバ1230へのワークフローを管理する。各処理サーバ1230は、LMサーバ1240にアクセスして、LMデータを取得し、取得したLMデータを入力1201のセグメントの処理に用いるように動作可能である。このシステム1200は、音声認識システムであってよいが、この場合、各処理サーバ1230は、音声認識サーバである。入力1201は、人からの入力音声であり、LMデータを用いて、音声認識サーバ1230によって処理される。出力1202は、入力音声1201の転写である文章である。処理サーバ1230は、また、OCR用途のためのOCRサーバ、スペル訂正用途ためのスペル訂正サーバ、及びスパムフィルタ処理用途のためのスパムフィルタ処理サーバとして実現し得る。
開示された及び他の実施形態並びに本明細書において述べた機能的な動作は、デジタル電子回路に、又は本明細書に開示された構造及びそれらの構造的な等価物を含む、コンピュータソフトウェア、ファームウェア、又はハードウェアで、又はそれらの1つ又は複数の組合せで実現し得る。開示された及び他の実施形態は、データ処理装置によって実行されるように又はその動作を制御するように、1つ又は複数のコンピュータプログラムプロダクトとして、即ち、コンピュータ判読可能媒体上に符号化されたコンピュータプログラム命令の1つ又は複数のモジュールとして実現し得る。コンピュータ判読可能媒体は、機械読み取り可能な記憶装置、機械読み取り可能な記憶基板、メモリ装置、機械読み取り可能な伝搬信号を生じさせる物質の合成物、又はそれらの1つ又は複数の組合せであってよい。用語「データ処理装置」は、一例として、プログラム可能なプロセッサ、コンピュータ、又は多重プロセッサ又はコンピュータを含む、データを処理するための全ての装置、デバイス、及び機械を包含する。装置には、ハードウェアに加えて、対象のコンピュータプログラム用の実行環境を生成するコード、例えば、プロセッサファームウェア、プロトコル層、データベース管理システム、オペレーティング・システム、又はそれらの1つ又は複数の組合せを構成するコードを含み得る。伝搬信号は、人為的に生成された信号であり、例えば、適切な受信装置への送信用情報を符号化するために生成される機械的に発生された電気的、光学的、又は電磁的信号である。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、又はコードとしても知られている)は、コンパイル式又はインタープリタ式言語を含む、任意の形式のプログラミング言語で書かいてよく、また、スタンドアローンのプログラムとして、又はモジュール、構成要素、サブルーチン、又はコンピュータ処理環境での用途に適する他の単位としてなど、任意の形式で配備し得る。コンピュータプログラムは、必ずしも、ファイルシステムのファイルに対応するとは限らない。プログラムは、他のプログラム又はデータ(例えば、マークアップ言語文書に格納された1つ又は複数のスクリプト)を保持するファイルの一部に、対象のプログラム専用の単一のファイルに、又は多数の連係ファイル(例えば、1つ又は複数のモジュールサブプログラム、又はコードの一部を格納するファイル)に格納し得る。コンピュータプログラムは、1つのコンピュータ上で、又は1つのサイトに配置されたもしくは多数のサイトにまたがって分散され通信ネットワークによって相互接続された多数のコンピュータ上で実行されるように配備し得る。
本明細書に述べたプロセス及びロジックフローは、1つ又は複数のプログラム可能なプロセッサが1つ又は複数のコンピュータプログラムを実行して、入力データに作用し、出力を生成することによって、機能を実行し得る。また、プロセス及びロジックフローは、専用ロジック回路、例えば、FPGA(フィールド・プログラマブル・ゲートアレイ)又はASIC(特定用途向け集積回路)によって実施可能であり、また、装置は、それらとして実現できる。
コンピュータプログラムの実行に適するプロセッサには、一例として、汎用及び専用マイクロプロセッサ、及び任意の種類のデジタルコンピュータの任意の1つ又は複数のプロセッサ双方が含まれる。一般的に、プロセッサは、読み出し専用メモリ又はランダムアクセスメモリ又は双方から命令及びデータを受信する。コンピュータの本質的な要素は、命令を実施するためのプロセッサと、命令及びデータを記憶するための1つ又は複数のメモリ装置である。一般的に、コンピュータは、更に、データを記憶するための1つ又は複数の大容量記憶装置、例えば、磁気、光磁気ディスク、又は光ディスクを含んだり、それらに連動して結合され、それらとの間でデータの送受信を行ったり、あるいは、その両方であったりする。しかしながら、コンピュータは、そのようなデバイスを有する必要がない。コンピュータプログラム命令及びデータを記憶するのに適するコンピュータ判読可能媒体としては、一例として、半導体メモリ装置、例えば、EPROM、EEPROM、及びフラッシュメモリ装置、磁気ディスク、例えば、内部ハードディスク又は着脱可能ディスク、光磁気ディスク、及びCD−ROM及びDVD−ROMディスクを含む、全ての形式の不揮発性メモリ、媒体及びメモリ装置が挙げられる。プロセッサ及びメモリは、専用ロジック回路によって補足可能であり、又は、それに組み込むことができる。
ユーザとの対話を提供するために、開示された実施形態は、ユーザに情報を表示するための表示装置、例えば、CRT(陰極線管)又はLCD(液晶表示装置)モニタと、ユーザがコンピュータに入力を提供できる手段であるキーボード及びポインティングデバイス、例えば、マウス又はトラックボールと、を有するコンピュータを用いて実現し得る。他の種類の装置も、ユーザとの対話を提供するために用い得る。例えば、ユーザに提供されるフィードバックは、任意の形式の知覚フィードバック、例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバックであってよい。また、ユーザからの入力は、音響、音声、又は触覚入力を含む任意の形式で受信し得る。
コンピュータ処理システムの構成要素は、任意の形式又は媒体のデジタルデータ通信、例えば、通信ネットワークによって相互接続し得る。通信ネットワークの例としては、ローカルエリアネットワーク(“LAN”)及びワイドエリアネットワーク(“WAN”)、例えば、インターネットが挙げられる。記載した分散処理を実現するために用い得る通信ネットワークは、導電ケーブル、光ファイバリンク及び無線通信リンク(例えば、RF無線リンク)等の様々な通信リンクを用いて、データや信号を伝送し得る。
図13は、分散処理を提供する通信ネットワークにおけるコンピュータシステム例を示す。このシステムには、コンピュータ等、ネットワーク1300に接続された通信装置用の通信を可能にする通信ネットワーク1300が含まれる。例えば、通信ネットワーク1300は、企業内におけるコンピュータネットワーク等の単一のコンピュータネットワーク又はインターネット等の相互接続されたコンピュータネットワークのネットワークであってよい。1つ又は複数のコンピュータサーバ1310は、通信ネットワーク1300に接続され、図1、2、又は12のシステム等の分散型処理システムを形成する。コンピュータサーバ1310は、同じ地点又は異なる地点に配置し得る。動作中、1つ又は複数のクライアントコンピュータ(例えば、クライアント1301及び1302)は、通信ネットワーク1300を用いて、分散型処理システム1310に遠隔的にアクセスして、システム1310によって提供される機械翻訳サービス又は他のサービスを要求し得る。クライアント1301、例えば、システム1310に文書翻訳の要求を送り得る。クライアント1301は、文書をシステム1310に送る。文書を受信した後、システム1310は、要求された処理を実施する。そして、システム1310からの出力は、クライアント1301に送られるか、又は、クライアント1301によってアクセス可能なシステム1310において利用可能になる。システム1310は、同時に、多数のクライアントにサービスを提供し得る。
本明細書は、多くの具体的な内容を含むが、これらは、請求項である内容又は請求されるであろう内容の範囲の制限として解釈すべきではなく、むしろ、特定の実施形態に特有な特徴の説明として解釈すべきである。別個の実施形態の文脈で本明細書において述べた或る特徴は、単一の一実施形態における組合せでも実現し得る。逆に、単一の実施形態の文脈で述べた様々な特徴は、別々に多数の実施形態でも又は任意の適切な下位組み合わせでも実現し得る。更に、特徴は、或る組合せで機能するものとして述べられ、また、このように当初請求されることもあり得るが、請求された組合せからの1つ又は複数の特徴は、場合によっては、その組合せから削除し得ることもあり、また、請求された組合せは、下位組み合わせ又は下位組み合わせの変形したもので定めることがある。
同様に、動作は、図面に特定の順番で示したが、このことが、望ましい結果を達成するために、図示した特定の順番で又は順次、そのような動作を実施する必要があると理解すべきでなく、又は、全ての示された動作が実施される必要があると理解すべきでない。或る状況では、多重タスク処理及び並列処理が、有益なことがある。更に、上述した本実施形態の様々なシステム構成要素の分離は、全ての実施形態においてそのような分離が必要であると理解すべきではなく、また、記載したプログラム構成要素及びシステムは、一般的に、単一のソフトウェア製品に一体化したり、多数のソフトウェア製品にパッケージ化したりできることを理解されるべきである。
このように、特定の実施形態について述べてきた。他の実施形態は、以下の請求項の範囲内にある。
本明細書において述べる分散型機械処理手法を用いて実現し得る区画、複製及び負荷分散を特定の例によって示す分散型機械翻訳(DMT)システム100を示す図。 図1の分散型機械翻訳システム100の一実施例を示す図。 図1又は2に示すタイプのシステムにおいて、翻訳フロントエンドに対して接続可能であり、また、それによって共有し得る翻訳キャッシュを示す図。 翻訳キャッシュに用い得るデータ構造の例を示す図。 翻訳キャッシュの動作のための方法例を示す図。 負荷分散装置に接続し得る翻訳キャッシュの例を示す図。 セグメント翻訳サーバによって共有し得るセグメント翻訳サーバキャッシュの例を示す図。 翻訳デコーダ、LM照合要求待ち行列、及びローカルキャッシュを有するセグメント翻訳サーバの例を示す図。 翻訳デコーダの1つの代表的な動作を示す図。 翻訳デコーダの処理ステップの例を示す図。 翻訳デコーダの他の動作を示す図。 翻訳デコーダの他の動作を示す図。 下位キャッシュが無く上位キャッシュを有するセグメント翻訳サーバの1つの代表的な処理フロー用のフローチャート。 セグメント翻訳サーバの他の処理フロー例を示す図。 セグメント翻訳サーバの他の処理フロー例を示す図。 大規模言語モデルに基づき、言語処理機能を提供するように構成し得る分散型処理システムの例を示す図。 分散処理を提供する通信ネットワークにおけるコンピュータシステム例を示す図。
符号の説明
100 分散型機械翻訳(DMT)システム
101 クライアント
102 クライアント文書
103 翻訳済み文書
110 翻訳フロントエンド
120 負荷分散装置サーバ
130 セグメント翻訳サーバ
140 翻訳資源サーバ
141 レプリカ資源サーバ
200 分散型機械翻訳システム
210 コンピュータサーバ
220 コンピュータサーバ
230 他の翻訳資源及びデータ用の1つ又は複数のサーバ

Claims (87)

  1. システムにおいて、
    複数の機械翻訳資源サーバであって、各機械翻訳資源サーバは、起点言語から目標言語への翻訳のための機械翻訳資源データの集合体の区画を記憶しサービス提供するように動作可能であり、前記それぞれの区画は、機械翻訳資源データの前記集合体を共に構成し、各それぞれの区画は、機械翻訳資源データの前記集合体より小さい前記複数の機械翻訳資源サーバと、
    前記目標言語に翻訳される前記起点言語の原文を受信するように動作可能な少なくとも1つの翻訳サーバであって、前記翻訳サーバは、更に、前記複数の機械翻訳資源サーバから機械翻訳資源データを取得するように、また、前記取得した機械翻訳資源データを用いて、前記原文を前記目標言語に翻訳するように動作可能である翻訳サーバと、
    が含まれ
    前記複数の機械翻訳資源サーバには、
    前記目標言語用の言語モデルの区画を記憶しサービス提供するように動作可能な複数の言語モデルサーバであって、前記それぞれの区画は、前記言語モデルの全体より小さく、且つ前記言語モデルの全体を共に構成する前記複数の言語モデルサーバと、
    前記翻訳サーバに対して、前記起点言語と前記目標言語との間の翻訳用の翻訳モデルを記憶しサービス提供するように動作可能な翻訳モデルサーバであって、前記それぞれの区画は、前記翻訳モデルの全体より小さく、且つ前記翻訳モデルの全体を共に構成する前記複数の翻訳モデルサーバと、が含まれ、
    前記翻訳サーバは、
    少なくとも一つの翻訳モデルの区画から翻訳モデルデータを取得し、
    前記翻訳モデルデータに基づいて、前記原文を可能な翻訳のセットに翻訳し、
    前記可能な翻訳のセットに基づいて、少なくとも一つの言語モデルの区画から、前記可能な翻訳のセットのうちの少なくとも一つの可能な翻訳における少なくとも一つの生成例とマッチングする言語モデルデータを取得し、
    前記取得した言語モデルデータと前記可能な翻訳のセットに基づいて、前記原文の翻訳を決定するように動作可能であるシステム。
  2. 請求項に記載のシステムであって、更に、
    前記翻訳モデルサーバ用の1つ又は複数のレプリカサーバが含まれるシステム。
  3. 請求項に記載のシステムであって、更に、
    前記各言語モデルサーバ用の1つ又は複数のレプリカサーバが含まれるシステム。
  4. 請求項に記載のシステムであって、前記翻訳サーバには、
    前記翻訳モデルサーバ、前記言語モデルサーバ、及びレプリカサーバと通信を行うように各々動作可能な複数のセグメント翻訳サーバであって、各セグメント翻訳サーバは、前記原文の1つのセグメントを前記目標言語に翻訳するように動作可能な前記複数のセグメント翻訳サーバと、
    前記原文を受信し、前記原文を前記起点言語の複数のセグメントに分割する翻訳フロントエンドと、
    前記翻訳フロントエンドと通信状態にあり、前記原文の前記セグメントを受信し、また、前記セグメント翻訳サーバにおける作業負荷に基づき、前記セグメントを前記セグメント翻訳サーバへの前記セグメントに分散して翻訳させるように動作可能な負荷分散モジュールであって、前記負荷分散モジュールは、更に、前記目標言語の翻訳されたセグメントを前記セグメント翻訳サーバから前記翻訳フロントエンドに導くように動作可能である前記負荷分散モジュールと、
    が含まれるシステム。
  5. 請求項に記載のシステムであって、前記翻訳サーバには、
    前記翻訳モデルサーバ及び前記言語モデルサーバと通信を行うように各々動作可能な複数のセグメント翻訳サーバであって、各セグメント翻訳サーバは、前記原文の1つのセグメントを前記目標言語に翻訳するように動作可能である前記複数のセグメント翻訳サーバと、
    前記原文を受信し、前記原文を前記起点言語の複数のセグメントに分割する翻訳フロントエンドと、
    前記翻訳フロントエンドと通信状態にあり、前記原文の前記セグメントを受信し、また、前記セグメント翻訳サーバにおける作業負荷に基づき、前記セグメントを前記セグメント翻訳サーバに分散して翻訳させるように動作可能である負荷分散モジュールであって、前記負荷分散モジュールは、更に、前記目標言語の翻訳されたセグメントを前記セグメント翻訳サーバから前記翻訳フロントエンドに導くように動作可能である前記負荷分散モジュールと、
    が含まれるシステム。
  6. 請求項に記載のシステムであって、
    前記翻訳モデルには、前記起点言語と前記目標言語との間のマッピング情報と、各マッピングに関連付けられた評点情報と、
    が含まれるシステム。
  7. 請求項に記載のシステムであって、
    前記マッピング情報には、(1)前記起点言語の1つ又は複数の生起例と(2)前記目標言語の1つ又は複数の生起例との間の関係と、
    が含まれるシステム。
  8. 請求項に記載のシステムであって、
    前記評点情報には、前記起点言語と前記目標言語との間の各マッピング用の統計データが含まれるシステム。
  9. 請求項に記載のシステムであって、
    前記統計データには、前記起点言語と前記目標言語との間の各マッピングの発生の確率が含まれるシステム。
  10. 請求項に記載のシステムであって、
    前記翻訳サーバは、前記評点情報を用いて、前記取得した翻訳モデルデータ及び言語モデルデータから構築された可能な翻訳から前記原文の所望の翻訳を選択するように動作可能であるシステム。
  11. 請求項に記載のシステムであって、
    前記言語モデルには、前記目標言語のnグラム(gram)及び前記nグラム用の統計データが含まれ、各nグラムは、一連の前記目標言語のn生起例であり、ここで、nは、正の整数であるシステム。
  12. 請求項11に記載のシステムであって、
    前記言語モデルには、nが3より大きい場合、nグラムが含まれるシステム。
  13. 請求項11に記載のシステムであって、
    前記複数の言語モデルサーバの各それぞれの区画には、区画基準を満足する前記言語モデルにおける全てのnグラムが含まれるシステム。
  14. 請求項13に記載のシステムであって、
    前記複数の言語モデルサーバの各それぞれの区画には、各nグラムの所定位置に共通の生起例を有する前記言語モデルにおける全てのnグラムが含まれるシステム。
  15. 請求項14に記載のシステムであって、
    前記複数の言語モデルサーバの各それぞれの区画には、複数の共通の生起例を有する前記言語モデルにおける全てのnグラムが含まれるシステム。
  16. 請求項15に記載のシステムであって、
    前記複数の共通の生起例は、各nグラムの所定位置にあるシステム。
  17. 請求項15に記載のシステムであって、
    前記複数の共通の生起例は、一連のn生起例における最後の2つの生起例であるシステム。
  18. 請求項11に記載のシステムであって、
    前記統計データは、目標言語テキストのコーパスにおける前記それぞれのnグラムの各々のそれぞれの発生頻度を示すシステム。
  19. 請求項11に記載のシステムであって、
    各nグラムは、識別番号における順位によって表され、各識別番号は、前記目標言語の特定の生起例を一意的に表すために割り当てられるシステム。
  20. 請求項1に記載のシステムであって、前記翻訳サーバには、
    前記原文を前記起点言語の複数のセグメントに分割するように動作可能な少なくとも1つの翻訳フロントエンドと、
    複数のセグメント翻訳サーバであって、各セグメント翻訳サーバは、前記取得した機械翻訳資源データの少なくとも一部分を取得し、前記起点言語のセグメントを前記目標言語に翻訳するように動作可能である前記複数のセグメント翻訳サーバと、
    前記セグメント翻訳サーバにおける翻訳負荷に基づき、前記セグメント翻訳サーバの1つ又は複数に前記セグメントを割り当て翻訳させるように動作可能な負荷分散モジュールであって、翻訳されたセグメントを前記翻訳フロントエンドに送るように動作可能な前記負荷分散モジュールと、
    が含まれるシステム。
  21. 請求項20に記載のシステムであって、更に、
    少なくとも、生起例及び各々生起例の組合せを含むセグメントの、前記起点言語から前記目標言語への翻訳を記憶する翻訳キャッシュが含まれ、
    前記翻訳フロントエンド又は前記負荷分散モジュールのいずれかが、セグメントをセグメント翻訳サーバに送る前に、前記翻訳キャッシュを調べて前記セグメントの翻訳を得るように動作可能であり、また、前記負荷分散モジュールは、更に、前記翻訳キャッシュに対応する翻訳を有しない、前記セグメント翻訳サーバに送られ翻訳される各セグメントを選択するように動作可能であるシステム。
  22. 請求項20に記載のシステムであって、
    各セグメント翻訳サーバには、前記取得した機械翻訳資源データの少なくとも一部を記憶するように動作可能なセグメント翻訳サーバキャッシュが含まれるシステム。
  23. 請求項22に記載のシステムであって、
    前記セグメント翻訳サーバキャッシュは、割り当てられたセグメントが、各セグメント翻訳サーバによって翻訳されている期間中、前記取得した機械翻訳資源データの前記少なくとも一部を記憶するように動作可能であるシステム。
  24. 請求項23に記載のシステムであって、
    前記セグメント翻訳サーバキャッシュは、前記割り当てられたセグメントが翻訳された後、前記取得した機械翻訳資源データの前記少なくとも一部を削除するように動作可能であるシステム。
  25. 請求項23に記載のシステムであって、
    前記セグメント翻訳サーバキャッシュは、前記取得した機械翻訳資源データの前記少なくとも一部を定期的に削除するように動作可能であるシステム。
  26. 請求項22に記載のシステムであって、
    各セグメント翻訳サーバは、更に、前記複数の前記機械翻訳資源サーバから取得される機械翻訳資源データの一部の存在をチェックするように動作可能であり、また、前記複数の前記機械翻訳資源サーバから前記セグメント翻訳サーバキャッシュに記憶されていないデータを取得するように動作可能であるシステム。
  27. 請求項22に記載のシステムであって、
    前記セグメント翻訳サーバキャッシュは、更に、割り当てられたセグメントの翻訳の履歴情報を記憶するように動作可能であるシステム。
  28. 請求項22に記載のシステムであって、
    各セグメント翻訳サーバには、更に、前記複数の言語モデルサーバから言語モデルデータの異なる部分を取得する要求を記憶するように動作可能である要求待ち行列が含まれ、 各セグメント翻訳サーバは、前記複数の言語モデルサーバの1つ又は複数に前記要求待ち行列の前記要求を順次送るように動作可能であるシステム。
  29. 請求項28に記載のシステムであって、
    各セグメント翻訳サーバは、更に、前記要求待ち行列における全ての前記要求が、供給される前に、前記要求待ち行列における前記要求によって取得される前記言語モデルデータと異なる他の機械翻訳資源データを用いて、割り当てられたセグメントの翻訳を処理するように動作可能であり、
    各セグメント翻訳サーバは、更に、前記要求から取得された前記言語モデルデータを用いて、前記他の機械翻訳資源データを用いることによって処理された前記割り当てられたセグメントの翻訳を終了させるように動作可能であるシステム。
  30. 請求項29に記載のシステムであって、
    前記複数の機械翻訳資源サーバには、更に、前記他の機械翻訳資源データを供給する少なくとも1つの機械翻訳資源サーバが含まれるシステム。
  31. 請求項30に記載のシステムであって、
    前記他の機械翻訳資源データを供給する前記機械翻訳資源サーバは、前記目標言語用の第2の異なる言語モデルを記憶するシステム。
  32. 請求項22に記載のシステムであって、
    各セグメント翻訳サーバには、更に、前記機械翻訳資源データの選択された部分を記憶する第2セグメント翻訳サーバキャッシュが含まれ、
    各セグメント翻訳サーバは、前記第2セグメント翻訳サーバキャッシュにおける前記記憶され選択された部分の一部ではない前記複数の機械翻訳資源サーバからのデータを取得するように動作可能であるシステム。
  33. 請求項1に記載のシステムであって、更に、
    翻訳キャッシュであって、前記起点言語から前記目標言語への生起例及び生起例の組合せの翻訳を記憶する前記翻訳キャッシュが含まれ、
    前記翻訳には、機械翻訳及び人手による翻訳が含まれるシステム。
  34. 請求項33に記載のシステムであって、
    前記翻訳キャッシュには、翻訳品質情報が含まれるシステム。
  35. 請求項に記載のシステムであって、
    前記翻訳サーバには、統計的機械翻訳サーバが含まれるシステム。
  36. 請求項35に記載のシステムであって、
    前記翻訳サーバには、更に、統計的機械翻訳と異なる機械翻訳メカニズムを動作させる機械翻訳サーバが含まれるシステム。
  37. 請求項36に記載のシステムであって、
    前記機械翻訳サーバは、規則ベースの機械翻訳サーバであるシステム。
  38. 請求項1に記載のシステムであって、更に、
    前記機械翻訳資源サーバ及び前記翻訳サーバが通信を行う通信ネットワークであって、前記通信ネットワークにおけるクライアントコンピュータから前記原文を前記翻訳サーバに送り翻訳させるように動作可能な前記通信ネットワークが含まれるシステム。
  39. 請求項38に記載のシステムであって、
    前記通信ネットワークは、前記目標言語の前記原文の翻訳を前記翻訳サーバから前記クライアントコンピュータに送るように動作可能であるシステム。
  40. 請求項1に記載のシステムであって、前記機械翻訳資源サーバには、
    それぞれ、前記目標言語用の言語モデル異なる区画を記憶しサービス提供するように動作可能な複数の言語モデルサーバであって、前記それぞれの区画は、前記言語モデル全体を共に構成し、また、各それぞれの区画は、前記言語モデルの全体より小さい前記複数の言語モデルサーバと、
    前記複数の言語モデルサーバ各々用の1つ又は複数のレプリカ言語モデルサーバと、
    それぞれ、前記目標言語と人間の起点言語との間における翻訳のための翻訳モデルの異なる区画を記憶しサービス提供するように動作可能な複数の翻訳モデルサーバであって、前記それぞれの区画は、前記翻訳モデル全体を共に構成し、また、各それぞれの区画は、前記翻訳モデルの全体より小さい前記複数の翻訳モデルサーバと、
    前記複数の翻訳モデルサーバ各々用の1つ又は複数のレプリカ翻訳モデルサーバと、が含まれ、
    前記翻訳サーバには、
    前記目標言語に翻訳される前記起点言語の原文を、前記起点言語の複数のセグメントに分割するように各々動作可能な複数の翻訳フロントエンドと、
    機械翻訳を実施して、前記複数の翻訳モデルサーバ及び前記レプリカ翻訳モデルサーバから翻訳モデルデータを取得し、また、前記複数の言語モデルサーバ及び前記レプリカ言語モデルサーバから言語モデルデータを取得するように各々動作可能な複数のセグメント翻訳サーバと、
    前記複数のセグメント翻訳サーバにおける翻訳負荷に基づき、前記複数のセグメント翻訳サーバの1つ又は複数に前記セグメントを割り当て翻訳させるように動作可能な負荷分散モジュールと、
    が含まれるシステム。
  41. 請求項40に記載のシステムであって、更に、
    少なくとも生起例及び各々生起例の組合せを含むセグメントの前記起点言語から前記目標言語への翻訳を記憶する翻訳キャッシュが含まれるシステム。
  42. 請求項41に記載のシステムであって、
    各翻訳フロントエンドは、翻訳されるセグメント用の適切な翻訳がないか前記翻訳キャッシュを調べるように動作可能であり、そして、前記適切な翻訳が存在する場合、前記セグメントを前記負荷分散モジュールに送り、前記複数のセグメント翻訳サーバの内の1つによって翻訳させることなく、前記適切な翻訳を取り込むように動作可能であるシステム。
  43. 請求項41に記載のシステムであって、
    前記負荷分散モジュールは、翻訳フロントエンドから翻訳されるセグメント用の適切な翻訳がないか前記翻訳キャッシュを調べるように動作可能であり、そして、前記適切な翻訳が存在する場合、前記セグメントを前記複数のセグメント翻訳サーバの内の1つに翻訳のために送ることなく、前記翻訳キャッシュから前記適切な翻訳を取り込み、また、前記検索された翻訳を前記翻訳フロントエンドに送るように動作可能であるシステム。
  44. 請求項40に記載のシステムであって、
    各セグメント翻訳サーバには、セグメントを翻訳するための、前記複数の言語モデルサーバ及び前記レプリカ言語モデルサーバから取得された言語モデルデータを記憶するように動作可能なセグメント翻訳サーバキャッシュが含まれるシステム。
  45. 請求項44に記載のシステムであって、
    各セグメント翻訳サーバは、更に、前記複数の前記言語モデルサーバ及び前記レプリカ言語モデルサーバから取得される言語モデルデータの一部の存在をチェックするように動作可能であり、そして、前記言語モデルデータの一部が存在する場合、前記複数の前記言語モデルサーバ及び前記レプリカ言語モデルサーバから前記言語モデルデータの一部を取得することなく、前記言語モデルデータの一部を翻訳に用いるように動作可能であり、
    各セグメント翻訳サーバは、更に、前記言語モデルデータの一部が、前記セグメント翻訳サーバキャッシュにない場合、前記複数の前記言語モデルサーバ及び前記レプリカ言語モデルサーバから前記言語モデルデータの一部を取得するように動作可能であるシステム。
  46. 請求項44に記載のシステムであって、
    各セグメント翻訳サーバには、更に、前記複数の言語モデルサーバから言語モデルデータを取得する要求を記憶するように動作可能である要求待ち行列が含まれ、
    各セグメント翻訳サーバは、前記複数の言語モデルサーバ及び前記レプリカ言語モデルサーバの1つ又は複数に前記要求待ち行列における前記要求を順次送り、また、前記セグメント翻訳サーバキャッシュに前記要求によって取得された言語モデルデータを記憶するように動作可能であるシステム。
  47. 請求項44に記載のシステムであって、
    各セグメント翻訳サーバは、更に、前記要求待ち行列における全ての前記要求が対処される前に、セグメントの翻訳を処理するように動作可能であり、
    各セグメント翻訳サーバは、更に、前記要求によって取得された前記言語モデルデータを用いて、前記セグメントの翻訳を終了させるように動作可能であるシステム。
  48. 請求項47に記載のシステムであって、
    各セグメント翻訳サーバは、更に、前記要求待ち行列における全ての前記要求が供給される前に、他の発信元からの言語モデルデータで前記セグメント翻訳サーバキャッシュを埋めるように動作可能であり、前記他の発信元からの前記言語モデルデータを用いて、前記翻訳を処理し、
    前記要求待ち行列における全ての前記要求が供給された後、各セグメント翻訳サーバは、前記セグメント翻訳サーバキャッシュに前記要求によって取得された言語モデルデータを記憶し、更に、前記要求によって取得された前記言語モデルデータで前記翻訳を処理するように動作可能であるシステム。
  49. 請求項40に記載のシステムであって、各セグメント翻訳サーバには、
    前記複数の言語モデルサーバ及び前記レプリカ言語モデルサーバから取得された言語モデルデータをセグメント翻訳用に記憶するように動作可能な第1セグメント翻訳サーバキャッシュと、
    前記複数の言語モデルサーバ及び前記レプリカ言語モデルサーバにおける前記言語モデルの選択された部分を記憶する第2セグメント翻訳サーバキャッシュと、
    が含まれるシステム。
  50. 請求項49に記載のシステムであって、
    各セグメント翻訳サーバは、前記セグメントの翻訳を完了した後、前記第1セグメント翻訳サーバキャッシュのデータを削除し、前記第2セグメント翻訳サーバキャッシュにおける前記言語モデルの選択された部分を保持するように動作可能であるシステム。
  51. 請求項40に記載のシステムであって、更に、
    前記目標言語と第2の人間の起点言語との間の翻訳用の第2翻訳モデルの異なる区画をそれぞれ記憶しサービス提供するように動作可能である複数の第2翻訳モデルサーバであって、前記それぞれの区画は、前記第2翻訳モデル全体を共に構成し、各それぞれの区画は、前記第2翻訳モデルの全体より小さい前記複数の第2翻訳モデルサーバと、
    前記複数の第2翻訳モデルサーバ各々用の1つ又は複数の第2レプリカ翻訳モデルサーバと、
    前記目標言語に翻訳される前記第2言語の第2原文を前記第2起点言語の複数のセグメントに分割するように各々動作可能な複数の第2翻訳フロントエンドと、
    機械翻訳を実施して、前記複数の第2翻訳モデルサーバ及び前記第2レプリカ翻訳モデルサーバから第2翻訳モデルデータを取得し、また、前記複数の言語モデルサーバ及び前記レプリカ言語モデルサーバから言語モデルデータを取得するように各々動作可能な複数の第2セグメント翻訳サーバと、
    前記複数の第2セグメント翻訳サーバにおける翻訳負荷に基づき、前記複数の第2セグメント翻訳サーバの1つ又は複数に前記セグメントを割り当て翻訳させるように動作可能な第2負荷分散モジュールと、
    が含まれるシステム。
  52. 請求項40に記載のシステムであって、
    各セグメント翻訳サーバは、それぞれの区画用のそれぞれの言語モデルサーバ及び対応する1つ又は複数のレプリカ言語モデルサーバにおける作業負荷を監視するように動作可能であり、
    監視された作業負荷に応じて、各セグメント翻訳サーバは、更に、前記それぞれの言語モデルサーバ及び対応する1つ又は複数のレプリカ言語モデルサーバからサーバを選択して、前記言語モデルの前記それぞれの区画のデータを要求するように動作可能であるシステム。
  53. システムにおいて、
    機械翻訳を実施して、起点言語と目標言語との間の翻訳用の翻訳モデルから翻訳モデルデータを取得し、また、前記目標言語用の言語モデルから言語モデルデータを取得するように動作可能な翻訳サーバであって、更に、前記取得した翻訳モデルデータ及び言語モデルデータを用いて、前記起点言語の文章を前記目標言語に翻訳するように動作可能な前記翻訳サーバと、が含まれ、
    前記翻訳モデルは、複数の翻訳モデルの区画に分割され、前記それぞれの区画は、複数の翻訳モデルサーバのうち異なる翻訳モデルサーバに記憶され、前記翻訳モデルの全体より小さく、且つ前記翻訳モデルの全体を共に構成し、 前記言語モデルは、複数の言語モデルの区画に分割され、前記それぞれの区画は、複数の言語モデルサーバのうち異なる言語モデルサーバに記憶され、前記言語モデルの全体より小さく、且つ前記言語モデルの全体を共に構成し、
    前記翻訳サーバには、
    前記起点言語のセグメントを翻訳するための言語モデルデータ取得要求を記憶するように動作可能な要求待ち行列と、
    前記翻訳サーバによって前記要求により取得された言語モデルデータを記憶するように動作可能なセグメント翻訳サーバキャッシュと、
    が含まれ
    前記翻訳サーバは、
    前記セグメントに基づいて、少なくとも一つの前記翻訳モデルの区画から翻訳モデルデータを取得し、
    前記翻訳モデルデータに基づいて、前記セグメントを可能な翻訳のセットに翻訳し、
    前記可能な翻訳のセットに基づいて、少なくとも一つの言語モデルの区画から、前記可能な翻訳のセットのうちの少なくとも一つの可能な翻訳における少なくとも一つの生成例とマッチングする言語モデルデータを取得し、
    前記取得した言語モデルデータと前記可能な翻訳のセットに基づいて、前記セグメントの翻訳を決定するように動作可能であるシステム。
  54. 請求項53に記載のシステムであって、
    前記セグメント翻訳サーバキャッシュは、前記セグメントが翻訳された後、前記取得した言語モデルデータを削除するように動作可能であるシステム。
  55. 請求項53に記載のシステムであって、
    前記セグメント翻訳サーバキャッシュは、前記取得した言語モデルデータを定期的に削除するように動作可能であるシステム。
  56. 請求項53に記載のシステムであって、
    前記翻訳サーバは、前記要求待ち行列における全ての前記要求が供給される前に、前記セグメントの翻訳を処理するように動作可能であり、
    前記翻訳サーバは、更に、前記要求によって取得された前記セグメント翻訳サーバキャッシュにおける前記言語モデルデータを用いて、前記セグメントの翻訳を終了させるように動作可能であるシステム。
  57. 請求項53に記載のシステムであって、
    前記要求待ち行列における前記言語モデルの前記言語データに対する前記要求が、供給されている間、且つ、前記要求によって取得された言語モデルデータが、前記セグメント翻訳サーバキャッシュに記憶されている間、前記翻訳サーバは、前記目標言語用の第2言語モデルからの言語モデルデータを用いて、前記セグメントの翻訳を処理するように動作可能であり、
    前記要求待ち行列における全ての前記要求が対処された後、前記翻訳サーバは、更に、前記第2言語モデルからの前記言語モデルデータを用いることによって生成される前記翻訳を処理するように動作可能であり、前記言語モデルデータは、前記要求によって取得されるシステム。
  58. 請求項53に記載のシステムであって、
    前記翻訳サーバは、前記目標言語用の第2言語モデルからの言語モデルデータを用いて、前記セグメントの翻訳を処理して、前記要求待ち行列における前記言語モデルの前記言語データに対する前記要求が送出される前に、前記セグメントの第一次の翻訳を生成するように動作可能であり、
    前記翻訳サーバは、前記第一次の翻訳に基づき、前記要求待ち行列における前記言語モデルの前記言語モデルデータに対する前記要求を更新するように動作可能であり、
    前記翻訳サーバは、更に、前記要求待ち行列における前記更新された要求を送出して、前記第一次の翻訳を処理するための前記言語モデルから言語モデルデータを取得するように動作可能であり、
    前記更新された要求が対処され、また、前記更新された要求に対する前記データが前記セグメント翻訳サーバ待ち行列に記憶された後、前記翻訳サーバは、更に、前記更新された要求に対する前記データで前記第一次の翻訳を処理して、最終の翻訳を生成するように動作可能であるシステム。
  59. 請求項53に記載のシステムであって、
    前記セグメント翻訳サーバキャッシュは、更に、割り当てられたセグメントの翻訳の履歴情報を記憶するように動作可能であるシステム。
  60. 請求項53に記載のシステムであって、前記翻訳サーバには、更に、
    前記言語モデルの選択された部分を記憶する第2セグメント翻訳サーバキャッシュ含まれ、
    前記翻訳サーバは、前記セグメントの翻訳を完了した後、前記セグメント翻訳サーバキャッシュのデータを削除し、また、前記第2セグメント翻訳サーバキャッシュにおける前記言語モデルの前記選択された部分を保持するように動作可能であるシステム。
  61. 請求項53に記載のシステムであって、前記翻訳サーバには、更に、
    前記言語モデルの選択された部分を記憶する第2セグメント翻訳サーバキャッシュが含まれ、
    前記翻訳サーバは、前記セグメント翻訳サーバキャッシュにおけるデータを定期的に削除するように動作可能であるシステム。
  62. 請求項60に記載のシステムであって、
    前記翻訳サーバは、前記言語モデルデータの一部に対する要求を生成する前に、前記セグメントを翻訳するために必要な言語モデルデータの一部がないか前記第2セグメント翻訳サーバキャッシュを調べるように動作可能であり、
    前記言語モデルデータの一部が前記第2セグメント翻訳サーバキャッシュに存在する場合、前記翻訳サーバは、前記言語モデルデータの一部に対する前記要求を生成することなく、前記言語モデルデータの一部を翻訳に用いるように動作可能であるシステム。
  63. 請求項53に記載のシステムであって、更に、
    前記翻訳サーバが、通信ネットワークにおけるクライアントコンピュータから前記起点言語の前記文章を受信するために通信を行う前記通信ネットワークが含まれるシステム。
  64. 方法であって、
    目標言語用の言語モデルを複数の言語モデルの区画に分割する段階であって、前記それぞれの言語モデルの区画は、前記言語モデルの全体より小さく、且つ前記言語モデルの全体を共に構成する段階と、
    異なる言語モデルサーバに前記複数の言語モデルの区画をそれぞれ記憶する段階と、
    起点言語から目標言語へ文章を翻訳するための翻訳モデルを複数の翻訳モデルの区画に分割する段階であって、前記それぞれの翻訳モデルの区画は、前記翻訳モデルの全体より小さく、且つ前記翻訳モデルの全体を共に構成する段階と、
    異なる翻訳モデルサーバに前記複数の翻訳モデルの区画をそれぞれ記憶する段階と、
    機械翻訳サーバを
    起点言語から目標言語へ翻訳するための原文を受信し、
    前記原文に基づいて、少なくとも一つの前記翻訳モデルの区画から翻訳モデルデータを取得し、
    前記翻訳モデルデータに基づいて、前記原文を可能な翻訳のセットに翻訳し、
    前記可能な翻訳のセットに基づいて、少なくとも一つの言語モデルの区画から、前記可能な翻訳のセットのうちの少なくとも一つの可能な翻訳における少なくとも一つの生成例とマッチングする言語モデルデータを取得し、
    前記取得した言語モデルデータと前記可能な翻訳のセットに基づいて、前記原文の翻訳を決定するように動作可能である段階と、
    が含まれる方法。
  65. 請求項64に記載の方法であって、前記機械言語翻訳資源データの集合体には、前記目標言語用の言語モデルが含まれ、この言語モデルには、更に、nグラムが含まれ、nは、3より大きい方法。
  66. 請求項64に記載の方法であって、前記機械言語翻訳資源データの集合体には、前記目標言語と前記起点言語との間の翻訳モデルが含まれる方法。
  67. 請求項64に記載の方法であって、更に、
    前記起点言語から前記目標言語に翻訳されるクライアントドキュメントの異なるセグメントをそれぞれ翻訳する異なる翻訳サーバを提供する段階と、
    各翻訳サーバを動作させて、各それぞれのセグメントを翻訳するための前記機械言語翻訳資源データの集合体から選択されたデータを取得する段階と、
    が含まれる方法。
  68. 請求項67に記載の方法であって、更に、
    異なる翻訳スピード及び異なる翻訳品質レベルで動作するように少なくとも2つの異なる翻訳サーバを構成する段階と、
    セグメント用のスピード及び翻訳品質レベルに基づき、前記セグメントを翻訳するための翻訳サーバを選択する段階と、
    が含まれる方法。
  69. 請求項67に記載の方法であって、更に、
    各翻訳サーバを動作させ、要求待ち行列における前記選択されたデータに対する要求を生成する段階と、
    前記コンピュータサーバに前記要求を順次送り、前記選択されたデータを取得する段階と、
    が含まれる方法。
  70. 請求項69に記載の方法であって、更に、
    各翻訳サーバを動作させ、それぞれのセグメントを翻訳する前に、前記要求待ち行列における全ての前記要求が対処されるのを待つ段階が含まれる方法。
  71. 請求項69に記載の方法であって、更に、
    各翻訳サーバを動作させ、前記要求待ち行列における前記要求が対処されている時、それぞれのセグメントの第一次の翻訳を実施する段階と、
    前記要求待ち行列における全ての前記要求が対処された後、前記選択されたデータを用いて、前記第一次の翻訳を更新して、最終の翻訳を生成する段階と、
    が含まれる方法。
  72. 請求項71に記載の方法であって、更に、
    機械言語翻訳資源データの他の異なる集合体を用いて、前記それぞれのセグメントの前記第一次の翻訳を実施する段階が含まれる方法。
  73. 請求項67に記載の方法であって、更に、
    各翻訳サーバを動作させ、要求待ち行列における前記選択されたデータに対する要求を生成する段階と、
    前記コンピュータサーバ及びレプリカコンピュータサーバに前記要求を送ることなく、各翻訳サーバを動作させ、第2の異なる集合体の機械言語翻訳資源データを適用して、前記それぞれのセグメントの翻訳を処理する段階と、
    前記第2の異なる集合体の機械言語翻訳資源データによる処理からの情報を用いて、前記要求待ち行列における前記選択されたデータに対する前記要求を更新する段階と、
    前記コンピュータサーバ及びレプリカコンピュータサーバに前記更新された要求を送り、データを取得する段階と、
    前記更新された要求によって要求されたデータを用いて、前記それぞれのセグメントの翻訳を完了する段階と、
    が含まれる方法。
  74. 起点言語と目標言語との間の翻訳用の翻訳モデル及び前記目標言語用の言語モデルを用いて、前記起点言語から前記目標言語へ文章を機械翻訳するための方法であって、
    複数の異なるデータ区画に前記翻訳モデルを区画する段階であって、各翻訳モデル区画は、前記翻訳モデルより小さく、且つ前記翻訳モデルの全体を共に構成する前記段階と、
    複数の異なる翻訳モデルサーバに前記複数の翻訳モデル区画を記憶する段階と、
    異なるデータの複数の言語モデル区画に前記言語モデルを区画する段階であって、各言語モデル区画は、前記言語モデルより小さく、且つ前記言語モデルの全体を共に構成する前記段階と、
    複数の異なる言語モデルサーバに前記複数の言語モデル区画を記憶する段階と、
    前記翻訳モデル及び前記言語モデルを用いて、前記起点言語の文章を前記目標言語に翻訳するように各々動作可能な複数の翻訳サーバの作業負荷を監視する段階と、
    前記起点言語から前記目標言語に翻訳される原文のセグメントを、前記作業負荷に基づき、前記複数の翻訳サーバから1つ又は複数の選択された翻訳サーバに分散する段階と、
    各選択された翻訳サーバを動作させ、
    1つ又は複数の前記セグメントに基づいて、少なくとも一つの前記翻訳モデルの区画から翻訳モデルデータを取得し、
    前記翻訳モデルデータに基づいて、前記1つ又は複数のセグメントを可能な翻訳のセットに翻訳し、
    前記可能な翻訳のセットに基づいて、少なくとも一つの言語モデルの区画から、前記可能な翻訳のセットのうちの少なくとも一つの可能な翻訳における少なくとも一つの生成例とマッチングする言語モデルデータを取得し、
    前記取得した言語モデルデータと前記可能な翻訳のセットに基づいて、前記1つ又は複数のセグメントの翻訳を決定する段階と、
    前記選択された翻訳サーバからの翻訳されたセグメントを編集して翻訳文を生成する段階と、
    が含まれる方法。
  75. 請求項74に記載の方法であって、更に、
    前記各選択された翻訳サーバにおける演算処理量を制御して、前記文章の翻訳を完了するスピードを調整する段階が含まれる方法。
  76. 請求項75に記載の方法であって、更に、
    前記選択された翻訳サーバを制御して、低翻訳品質の前記文章の第一次の翻訳を生成する段階と、
    前記第一次の翻訳の完了後、前記選択された翻訳サーバを制御し、前記翻訳の処理を継続して、高翻訳品質の前記文章の第2の翻訳を生成する段階と、
    が含まれる方法。
  77. 請求項76に記載の方法であって、更に、
    前記文章の前記第一次の翻訳をクライアントに配信し、一回目の前記翻訳を要求する段階と、
    前記文章の前記第2の翻訳を前記クライアントに配信し、二回目の前記第一次の翻訳を置き換える段階と、
    が含まれる方法。
  78. 請求項76に記載の方法であって、更に、
    前記選択された翻訳サーバによって前記高翻訳品質で翻訳される前記文章の第1の部分を選択する段階と、
    前記選択された翻訳サーバによって前記低翻訳品質で翻訳される前記文章の第2の部分を選択する段階と、
    が含まれる方法。
  79. 翻訳モデルと目標言語用の言語モデルを用いて起点言語から目標言語へ文章を機械翻訳するためのコンピュータ実装された方法であって、
    前記翻訳モデルを複数の翻訳モデルの区画に区画する段階であって、それぞれの翻訳モデルの区画は、前記翻訳モデルの全体より小さく、且つ前記翻訳モデルの全体を共に構成する段階と、
    複数の異なる翻訳モデルサーバに前記複数の翻訳モデル区画を記憶する段階と、
    前記言語モデルを複数の言語モデルの区画に区画する段階であって、それぞれの言語モデルの区画は、前記言語モデルの全体より小さく、且つ前記言語モデルの全体を共に構成する段階と、
    複数の異なる言語モデルサーバに前記複数の言語モデル区画を記憶する段階と、 目標言語に翻訳される起点言語のクライアントドキュメントを受信する段階と、
    前記クライアントドキュメントをセグメントに分割して、各セグメントを翻訳する段階と、
    各セグメントに対し
    前記セグメントに基づいて、少なくとも一つの前記翻訳モデルの区画から翻訳モデルデータを取得し、
    前記翻訳モデルデータに基づいて、前記セグメントを可能な翻訳のセットに翻訳し、
    前記可能な翻訳のセットに基づいて、少なくとも一つの言語モデルの区画から、前記可能な翻訳のセットのうちの少なくとも一つの可能な翻訳における少なくとも一つの生成例とマッチングする言語モデルデータを取得し、
    前記取得した言語モデルデータと前記可能な翻訳のセットに基づいて、前記セグメントの翻訳を決定する段階と、
    前記クライアントドキュメントの翻訳を取得するために、前記セグメントの翻訳を組み立てる段階と、
    が含まれる方法。
  80. 請求項79に記載の方法であって、更に、
    翻訳対象の前記セグメントの翻訳に関連する前記選択された言語モデルデータの少なくとも一部用の第1言語モデルサーバにアクセスする間、前記第1言語モデルサーバ上のデータを複製する前記第1言語モデルサーバの第1レプリカサーバに同時にアクセスして、前記選択された言語モデルデータの前記少なくとも一部を検索する段階と、
    前記セグメントを翻訳する際、前記第1言語モデルサーバ及び前記第1レプリカサーバの内の最初に到着したいずれか1つからのデータを用いる段階と、
    が含まれる方法。
  81. 請求項79に記載の方法であって、更に、
    各言語モデルサーバにアクセスするためのタイムアウト期間を設定する段階と、
    特定の言語モデルサーバから要求されたデータを受信する前に、前記特定の言語モデルサーバにアクセスするための前記タイムアウト期間が経過した後、前記特定の言語モデルから要求された前記データを異なるデータ送信端末から取得する段階と、
    が含まれる方法。
  82. 請求項81に記載の方法であって、
    前記異なるデータ送信端末には、異なる言語モデルからの前記データが含まれる方法。
  83. 請求項79に記載の方法であって、更に、
    各言語モデルサーバにアクセスするためのタイムアウト期間を設定する段階と、
    特定の言語モデルサーバから要求されたデータを受信する前に、前記特定の言語モデルサーバにアクセスするための前記タイムアウト期間が経過した後、前記特定の言語モデルサーバ上のデータを複製する前記特定の言語モデルサーバのレプリカサーバへのアクセスを開始して、前記特定の言語モデルから要求された前記データを取得する段階と、
    が含まれる方法。
  84. 請求項79に記載の方法であって、更に、
    前記起点言語と前記目標言語との間の翻訳用の翻訳モデルを記憶する翻訳モデルサーバにアクセスして、前記セグメントの内の1つの翻訳に関連する選択された翻訳モデルデータを検索する段階と、
    前記検索され選択された言語モデルデータ及び翻訳モデルデータを用いて、前記セグメントを前記目標言語に翻訳する段階と、
    が含まれる方法。
  85. 請求項79に記載の方法であって、更に、
    前記言語モデルからのデータを用いて、各セグメントを翻訳する前に、異なる翻訳資源からのデータを用いて、前記セグメントの第一次の翻訳を実施する段階と、
    前記言語モデルからのデータを用いて、前記第一次の翻訳を更新して、前記セグメントの最終の翻訳を生成する段階と、
    が含まれる方法。
  86. 請求項85に記載の方法であって、前記異なる翻訳資源は、前記言語モデルより小さい前記目標言語用の第2言語モデルである方法。
  87. 請求項79に記載の方法であって、更に、
    1つのセグメントを翻訳するためのデータを検索するための複数の異なる言語モデルサーバの内の少なくとも1つにアクセスする前に、所定のセグメントの翻訳を記憶するローカルキャッシュを検索して、既存の翻訳が前記セグメントに利用可能であるかどうか判断する段階と、
    前記既存の翻訳が利用可能である場合、前記既存の翻訳を前記セグメントに用いる段階と、もしそうでなければ、複数の異なる言語モデルサーバの内の前記少なくとも1つにアクセスして、前記セグメントを翻訳するためのデータを検索する段階と、
    が含まれる方法。
JP2008555393A 2006-02-17 2007-02-16 分散型モデルの符号化及び適応可能なスケーラブルアクセス処理 Active JP5122486B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US77479006P 2006-02-17 2006-02-17
US60/774,790 2006-02-17
US77557006P 2006-02-21 2006-02-21
US60/775,570 2006-02-21
PCT/US2007/004196 WO2007098055A2 (en) 2006-02-17 2007-02-16 Encoding and adaptive, scalable accessing of distributed models

Publications (2)

Publication Number Publication Date
JP2009527818A JP2009527818A (ja) 2009-07-30
JP5122486B2 true JP5122486B2 (ja) 2013-01-16

Family

ID=38437899

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008555393A Active JP5122486B2 (ja) 2006-02-17 2007-02-16 分散型モデルの符号化及び適応可能なスケーラブルアクセス処理

Country Status (9)

Country Link
US (5) US8296123B2 (ja)
EP (5) EP3534277B1 (ja)
JP (1) JP5122486B2 (ja)
KR (1) KR101431194B1 (ja)
CN (1) CN101361065B (ja)
AU (1) AU2007217900B2 (ja)
BR (1) BRPI0706404B1 (ja)
CA (1) CA2631815C (ja)
WO (1) WO2007098055A2 (ja)

Families Citing this family (201)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US7849144B2 (en) * 2006-01-13 2010-12-07 Cisco Technology, Inc. Server-initiated language translation of an instant message based on identifying language attributes of sending and receiving users
EP3534277B1 (en) 2006-02-17 2021-10-06 Google LLC Encoding and adaptive, scalable accessing of distributed models
US7853555B2 (en) * 2006-04-19 2010-12-14 Raytheon Company Enhancing multilingual data querying
US7991608B2 (en) * 2006-04-19 2011-08-02 Raytheon Company Multilingual data querying
US8209162B2 (en) * 2006-05-01 2012-06-26 Microsoft Corporation Machine translation split between front end and back end processors
US20080004858A1 (en) * 2006-06-29 2008-01-03 International Business Machines Corporation Apparatus and method for integrated phrase-based and free-form speech-to-speech translation
US8626486B2 (en) 2006-09-05 2014-01-07 Google Inc. Automatic spelling correction for machine translation
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8631005B2 (en) * 2006-12-28 2014-01-14 Ebay Inc. Header-token driven automatic text segmentation
JP4466666B2 (ja) * 2007-03-14 2010-05-26 日本電気株式会社 議事録作成方法、その装置及びそのプログラム
US9418061B2 (en) * 2007-12-14 2016-08-16 International Business Machines Corporation Prioritized incremental asynchronous machine translation of structured documents
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US7984034B1 (en) * 2007-12-21 2011-07-19 Google Inc. Providing parallel resources in search results
US8352265B1 (en) 2007-12-24 2013-01-08 Edward Lin Hardware implemented backend search engine for a high-rate speech recognition system
US8639510B1 (en) 2007-12-24 2014-01-28 Kai Yu Acoustic scoring unit implemented on a single FPGA or ASIC
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US20090177733A1 (en) * 2008-01-08 2009-07-09 Albert Talker Client application localization
US8463610B1 (en) 2008-01-18 2013-06-11 Patrick J. Bourke Hardware-implemented scalable modular engine for low-power speech recognition
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US20090300126A1 (en) * 2008-05-30 2009-12-03 International Business Machines Corporation Message Handling
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
WO2010046782A2 (en) 2008-10-24 2010-04-29 App Tek Hybrid machine translation
CN101739867B (zh) * 2008-11-19 2012-03-28 中国科学院自动化研究所 运用计算机对口语翻译质量进行评分的方法
CN101826263B (zh) * 2009-03-04 2012-01-04 中国科学院自动化研究所 基于客观标准的自动化口语评估系统
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US8725509B1 (en) * 2009-06-17 2014-05-13 Google Inc. Back-off language model compression
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
JP4935869B2 (ja) * 2009-08-07 2012-05-23 カシオ計算機株式会社 電子機器及びプログラム
CN102549653B (zh) * 2009-10-02 2014-04-30 独立行政法人情报通信研究机构 语音翻译系统、第一终端装置、语音识别服务器装置、翻译服务器装置以及语音合成服务器装置
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
ES2369822B1 (es) * 2010-05-11 2012-10-15 Scio Soft, S.L. Videotraductor virtual.
US8423334B2 (en) * 2010-05-18 2013-04-16 Honeywell International Inc. Distributed model identification
EP2593884A2 (en) * 2010-07-13 2013-05-22 Motionpoint Corporation Dynamic language translation of web site content
US9778915B2 (en) 2011-02-28 2017-10-03 Microsoft Technology Licensing, Llc Distributed application definition
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US9990184B2 (en) 2011-03-25 2018-06-05 Microsoft Technology Licensing, Llc Distributed component model
US9465589B2 (en) 2011-04-05 2016-10-11 Microsoft Technology Licensing, Llc Stateful component authoring and execution
WO2012145782A1 (en) * 2011-04-27 2012-11-01 Digital Sonata Pty Ltd Generic system for linguistic analysis and transformation
WO2012166581A2 (en) * 2011-05-27 2012-12-06 Ctc Tech Corp. Creation, use and training of computer-based discovery avatars
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US9201862B2 (en) * 2011-06-16 2015-12-01 Asociacion Instituto Tecnologico De Informatica Method for symbolic correction in human-machine interfaces
CN103650033B (zh) * 2011-06-30 2016-10-26 谷歌公司 使用可变长度语境的语音识别
US8805672B2 (en) * 2011-06-30 2014-08-12 International Business Machines Corporation Translation cache prediction
US8712761B2 (en) * 2011-11-22 2014-04-29 Google Inc. Techniques for performing translation of messages
US8812302B2 (en) * 2012-01-17 2014-08-19 Google Inc. Techniques for inserting diacritical marks to text input via a user device
CN103218365A (zh) * 2012-01-20 2013-07-24 阿里巴巴集团控股有限公司 一种SSTable文件数据处理方法及其系统
CN103257958B (zh) * 2012-02-16 2016-01-20 中兴通讯股份有限公司 一种基于云存储的翻译方法及系统
CN103259762B (zh) * 2012-02-16 2016-09-28 中兴通讯股份有限公司 一种基于云存储的文件加密、解密方法及系统
WO2013127060A1 (en) * 2012-02-28 2013-09-06 Google Inc. Techniques for transliterating input text from a first character set to a second character set
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US8874428B2 (en) * 2012-03-05 2014-10-28 International Business Machines Corporation Method and apparatus for fast translation memory search
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
US9116886B2 (en) * 2012-07-23 2015-08-25 Google Inc. Document translation including pre-defined term translator and translation model
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
US9336771B2 (en) * 2012-11-01 2016-05-10 Google Inc. Speech recognition using non-parametric models
WO2014077918A1 (en) * 2012-11-19 2014-05-22 Board Of Regents, The University Of Texas System Robustness in a scalable block storage system
US10296968B2 (en) 2012-12-07 2019-05-21 United Parcel Service Of America, Inc. Website augmentation including conversion of regional content
US9817821B2 (en) * 2012-12-19 2017-11-14 Abbyy Development Llc Translation and dictionary selection by context
US9342503B1 (en) * 2013-03-12 2016-05-17 Amazon Technologies, Inc. Correlation across languages
US9430465B2 (en) * 2013-05-13 2016-08-30 Facebook, Inc. Hybrid, offline/online speech translation system
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
AU2014278592B2 (en) 2013-06-09 2017-09-07 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
US9154492B2 (en) * 2013-09-27 2015-10-06 The University Of North Carolina At Charlotte Moving target defense against cross-site scripting
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US9569526B2 (en) 2014-02-28 2017-02-14 Ebay Inc. Automatic machine translation using user feedback
US9881006B2 (en) 2014-02-28 2018-01-30 Paypal, Inc. Methods for automatic generation of parallel corpora
US9530161B2 (en) 2014-02-28 2016-12-27 Ebay Inc. Automatic extraction of multilingual dictionary items from non-parallel, multilingual, semi-structured data
US9940658B2 (en) 2014-02-28 2018-04-10 Paypal, Inc. Cross border transaction machine translation
US9514376B2 (en) * 2014-04-29 2016-12-06 Google Inc. Techniques for distributed optical character recognition and distributed machine language translation
US9514377B2 (en) * 2014-04-29 2016-12-06 Google Inc. Techniques for distributed optical character recognition and distributed machine language translation
US9842101B2 (en) * 2014-05-30 2017-12-12 Apple Inc. Predictive conversion of language input
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9760559B2 (en) * 2014-05-30 2017-09-12 Apple Inc. Predictive text input
AU2015266863B2 (en) 2014-05-30 2018-03-15 Apple Inc. Multi-command single utterance input method
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9858922B2 (en) 2014-06-23 2018-01-02 Google Inc. Caching speech recognition scores
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9965466B2 (en) * 2014-07-16 2018-05-08 United Parcel Service Of America, Inc. Language content translation
US9811559B2 (en) * 2014-09-01 2017-11-07 Mapquest, Inc. Computerized systems and methods for identifying points-of-interest using customized query prediction
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US9299347B1 (en) 2014-10-22 2016-03-29 Google Inc. Speech recognition using associative mapping
US9697201B2 (en) 2014-11-24 2017-07-04 Microsoft Technology Licensing, Llc Adapting machine translation data using damaging channel model
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
JP6165382B2 (ja) * 2015-03-18 2017-07-19 三菱電機株式会社 多言語翻訳装置及び多言語翻訳方法
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
JP6620934B2 (ja) * 2016-01-29 2019-12-18 パナソニックIpマネジメント株式会社 翻訳支援方法、翻訳支援装置、翻訳装置及び翻訳支援プログラム
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
EP3441887B1 (en) * 2016-04-04 2023-06-07 Wovn Technologies, Inc. Translation system
US9934775B2 (en) 2016-05-26 2018-04-03 Apple Inc. Unit-selection text-to-speech synthesis based on predicted concatenation parameters
US9972304B2 (en) 2016-06-03 2018-05-15 Apple Inc. Privacy preserving distributed evaluation framework for embedded personalized systems
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179309B1 (en) 2016-06-09 2018-04-23 Apple Inc Intelligent automated assistant in a home environment
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10490187B2 (en) 2016-06-10 2019-11-26 Apple Inc. Digital assistant providing automated status report
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
US9645998B1 (en) * 2016-06-12 2017-05-09 Apple Inc. Learning new words
KR102565274B1 (ko) 2016-07-07 2023-08-09 삼성전자주식회사 자동 통역 방법 및 장치, 및 기계 번역 방법 및 장치
KR102565275B1 (ko) 2016-08-10 2023-08-09 삼성전자주식회사 병렬 처리에 기초한 번역 방법 및 장치
US10162819B2 (en) * 2016-08-17 2018-12-25 Netflix, Inc. Change detection in a string repository for translated content
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US10282415B2 (en) 2016-11-29 2019-05-07 Ebay Inc. Language identification for text strings
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
CN106709488A (zh) * 2016-12-20 2017-05-24 深圳市深信服电子科技有限公司 名片识别方法及装置
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
DK201770428A1 (en) 2017-05-12 2019-02-18 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
US10796484B2 (en) * 2017-06-14 2020-10-06 Anand Babu Chitavadigi System and method for interactive multimedia and multi-lingual guided tour/panorama tour
US10721719B2 (en) * 2017-06-20 2020-07-21 Citrix Systems, Inc. Optimizing caching of data in a network of nodes using a data mapping table by storing data requested at a cache location internal to a server node and updating the mapping table at a shared cache external to the server node
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
CN110110292B (zh) * 2018-01-29 2023-11-14 北京搜狗科技发展有限公司 一种数据处理方法、装置和用于数据处理的装置
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US11848010B1 (en) * 2018-02-09 2023-12-19 Voicebase, Inc. Systems and methods for creating dynamic features for correlation engines
WO2019159013A1 (en) * 2018-02-15 2019-08-22 Smarthink Srl Systems and methods for assessing and improving student competencies
JP7170984B2 (ja) * 2018-03-02 2022-11-15 国立研究開発法人情報通信研究機構 疑似対訳データ生成装置、機械翻訳処理装置、および疑似対訳データ生成方法
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10747962B1 (en) * 2018-03-12 2020-08-18 Amazon Technologies, Inc. Artificial intelligence system using phrase tables to evaluate and improve neural network based machine translation
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
JP6784718B2 (ja) * 2018-04-13 2020-11-11 グリー株式会社 ゲームプログラム及びゲーム装置
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
US10944859B2 (en) 2018-06-03 2021-03-09 Apple Inc. Accelerated task performance
US11463511B2 (en) 2018-12-17 2022-10-04 At&T Intellectual Property I, L.P. Model-based load balancing for network data plane
CN111626064B (zh) * 2019-02-26 2024-04-30 株式会社理光 神经机器翻译模型的训练方法、装置及存储介质
US11397600B2 (en) * 2019-05-23 2022-07-26 HCL Technologies Italy S.p.A Dynamic catalog translation system
US11842165B2 (en) * 2019-08-28 2023-12-12 Adobe Inc. Context-based image tag translation
CN110852118B (zh) * 2019-11-08 2022-02-01 北京中献电子技术开发有限公司 分布式机器翻译方法及系统
CN113157354B (zh) * 2020-01-07 2023-11-03 北京京东振世信息技术有限公司 处理数据的方法、装置、设备和计算机可读介质
CN111310449B (zh) * 2020-01-23 2021-01-26 北京百度网讯科技有限公司 基于语义表示的文本生成方法和装置
CN111310483B (zh) * 2020-02-11 2023-06-16 北京字节跳动网络技术有限公司 一种翻译方法、装置、电子设备及存储介质
WO2021184249A1 (en) * 2020-03-18 2021-09-23 Citrix Systems, Inc. Machine translation of digital content
WO2022043675A2 (en) 2020-08-24 2022-03-03 Unlikely Artificial Intelligence Limited A computer implemented method for the automated analysis or use of data
CN114253641A (zh) * 2020-09-25 2022-03-29 支付宝实验室(新加坡)有限公司 数据处理方法、移动终端及开放平台
US12067362B2 (en) 2021-08-24 2024-08-20 Unlikely Artificial Intelligence Limited Computer implemented methods for the automated analysis or use of data, including use of a large language model
US11977854B2 (en) 2021-08-24 2024-05-07 Unlikely Artificial Intelligence Limited Computer implemented methods for the automated analysis or use of data, including use of a large language model
US11989507B2 (en) 2021-08-24 2024-05-21 Unlikely Artificial Intelligence Limited Computer implemented methods for the automated analysis or use of data, including use of a large language model
US12073180B2 (en) 2021-08-24 2024-08-27 Unlikely Artificial Intelligence Limited Computer implemented methods for the automated analysis or use of data, including use of a large language model
WO2023161630A1 (en) 2022-02-22 2023-08-31 Unlikely Artificial Intelligence Limited Computer implemented methods for the automated analysis or use of data, including use of a large language model
US11989527B2 (en) 2021-08-24 2024-05-21 Unlikely Artificial Intelligence Limited Computer implemented methods for the automated analysis or use of data, including use of a large language model
KR20240053639A (ko) * 2021-09-23 2024-04-24 구글 엘엘씨 제한된 스펙트럼 클러스터링을 사용한 화자-턴 기반 온라인 화자 구분
US11983505B2 (en) * 2021-10-20 2024-05-14 Transfluent Oy Method and system for translating source text of first language to second language
US20240232214A9 (en) * 2022-10-21 2024-07-11 Elementum, Ltd. Systems and methods for a data-driven workflow platform
WO2024159035A1 (en) * 2023-01-25 2024-08-02 Aveva Software, Llc Servers, systems and methods for machine translation as a computerized and/or network-provided service
US20240296295A1 (en) * 2023-03-03 2024-09-05 Microsoft Technology Licensing, Llc Attribution verification for answers and summaries generated from large language models (llms)
CN117194410B (zh) * 2023-07-13 2024-05-14 广州白码科技有限公司 一种人工智能语言模型生成业务报表的方法及系统

Family Cites Families (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4706212A (en) * 1971-08-31 1987-11-10 Toma Peter P Method using a programmed digital computer system for translation between natural languages
US4991094A (en) * 1989-04-26 1991-02-05 International Business Machines Corporation Method for language-independent text tokenization using a character categorization
US5510981A (en) * 1993-10-28 1996-04-23 International Business Machines Corporation Language translation apparatus and method using context-based translation models
US5715466A (en) * 1995-02-14 1998-02-03 Compuserve Incorporated System for parallel foreign language communication over a computer network
EP0834139A4 (en) * 1995-06-07 1998-08-05 Int Language Engineering Corp COMPUTER-ASSISTED TRANSLATION TOOLS
US5918051A (en) * 1995-07-19 1999-06-29 Ricoh Company, Ltd. Object-oriented communication system with support for multiple remote machine types
JPH0981569A (ja) * 1995-09-12 1997-03-28 Hitachi Ltd 多カ国対応サービス提供システム
US6161083A (en) * 1996-05-02 2000-12-12 Sony Corporation Example-based translation method and system which calculates word similarity degrees, a priori probability, and transformation probability to determine the best example for translation
US5848386A (en) * 1996-05-28 1998-12-08 Ricoh Company, Ltd. Method and system for translating documents using different translation resources for different portions of the documents
US6085162A (en) * 1996-10-18 2000-07-04 Gedanken Corporation Translation system and method in which words are translated by a specialized dictionary and then a general dictionary
US5946498A (en) * 1996-11-12 1999-08-31 International Business Machines Corporation Delivery of client remote procedure calls to a server via a request queue utilizing priority and time-out
US6092035A (en) * 1996-12-03 2000-07-18 Brothers Kogyo Kabushiki Kaisha Server device for multilingual transmission system
JPH10198680A (ja) * 1997-01-07 1998-07-31 Hitachi Ltd 分散辞書管理方法及びそれを用いた機械翻訳方法
EP0932897B1 (en) * 1997-06-26 2003-10-08 Koninklijke Philips Electronics N.V. A machine-organized method and a device for translating a word-organized source text into a word-organized target text
US6067545A (en) * 1997-08-01 2000-05-23 Hewlett-Packard Company Resource rebalancing in networked computer systems
DE19747583B4 (de) * 1997-10-28 2006-04-20 Telefonaktiebolaget Lm Ericsson (Publ) Kommunikationssystem und Verfahren
US6122666A (en) * 1998-02-23 2000-09-19 International Business Machines Corporation Method for collaborative transformation and caching of web objects in a proxy network
US6526426B1 (en) * 1998-02-23 2003-02-25 David Lakritz Translation management system
US6292880B1 (en) * 1998-04-15 2001-09-18 Inktomi Corporation Alias-free content-indexed object cache
US6795434B1 (en) * 1998-11-18 2004-09-21 Intel Corporation Replicated server discovery in client-proxy servers
US6347316B1 (en) * 1998-12-14 2002-02-12 International Business Machines Corporation National language proxy file save and incremental cache translation option for world wide web documents
US6167369A (en) * 1998-12-23 2000-12-26 Xerox Company Automatic language identification using both N-gram and word information
US6314469B1 (en) * 1999-02-26 2001-11-06 I-Dns.Net International Pte Ltd Multi-language domain name service
US6338033B1 (en) * 1999-04-20 2002-01-08 Alis Technologies, Inc. System and method for network-based teletranslation from one natural language to another
AUPQ141999A0 (en) * 1999-07-05 1999-07-29 Worldlingo.Com Pty Ltd Communication processing system
US6278969B1 (en) * 1999-08-18 2001-08-21 International Business Machines Corp. Method and system for improving machine translation accuracy using translation memory
US7171348B2 (en) * 1999-09-10 2007-01-30 Worldlingo.Com Pty Ltd Communication processing system
US6904402B1 (en) 1999-11-05 2005-06-07 Microsoft Corporation System and iterative method for lexicon, segmentation and language model joint optimization
US7725307B2 (en) * 1999-11-12 2010-05-25 Phoenix Solutions, Inc. Query engine for processing voice based queries including semantic decoding
US20020013858A1 (en) * 2000-02-09 2002-01-31 Anderson Keith R. ARP caching apparatus and method
US7216072B2 (en) * 2000-02-29 2007-05-08 Fujitsu Limited Relay device, server device, terminal device, and translation server system utilizing these devices
JP4073635B2 (ja) * 2000-02-29 2008-04-09 富士通株式会社 中継装置、サーバ装置、端末装置、及びこれを利用した翻訳サーバシステム
US6907546B1 (en) * 2000-03-27 2005-06-14 Accenture Llp Language-driven interface for an automated testing framework
JP2003529845A (ja) * 2000-03-31 2003-10-07 アミカイ・インコーポレイテッド ネットワーク経由の多言語翻訳を提供する方法と装置
WO2001086491A2 (en) * 2000-05-11 2001-11-15 University Of Southern California Machine translation techniques
WO2002001401A1 (en) * 2000-06-26 2002-01-03 Onerealm Inc. Method and apparatus for normalizing and converting structured content
US7225199B1 (en) * 2000-06-26 2007-05-29 Silver Creek Systems, Inc. Normalizing and classifying locale-specific information
GB2364143A (en) * 2000-06-30 2002-01-16 Nokia Corp Resource allocation
US7027975B1 (en) * 2000-08-08 2006-04-11 Object Services And Consulting, Inc. Guided natural language interface system and method
US7277732B2 (en) * 2000-10-13 2007-10-02 Microsoft Corporation Language input system for mobile devices
US6922670B2 (en) * 2000-10-24 2005-07-26 Sanyo Electric Co., Ltd. User support apparatus and system using agents
US6665642B2 (en) * 2000-11-29 2003-12-16 Ibm Corporation Transcoding system and method for improved access by users with special needs
US7197749B2 (en) * 2000-12-19 2007-03-27 Xerox Corporation Method and system for executing batch jobs by delegating work to independent service providers
US20020078117A1 (en) * 2000-12-19 2002-06-20 Wang Baldonado Michelle Q. System for creating efficient multi-step document conversion services
US20020103632A1 (en) * 2001-01-31 2002-08-01 International Business Machines Corporation Method, program, and tool for updating the national language versions of documents
US7533333B2 (en) * 2001-02-14 2009-05-12 Ricoh Co., Ltd. Object-oriented method and system of remote diagnostic, control and information collection using multiple formats and multiple protocols
US7295962B2 (en) * 2001-05-11 2007-11-13 University Of Southern California Statistical memory-based translation system
US7191115B2 (en) * 2001-06-20 2007-03-13 Microsoft Corporation Statistical method and apparatus for learning translation relationships among words
US20040230572A1 (en) * 2001-06-22 2004-11-18 Nosa Omoigui System and method for semantic knowledge retrieval, management, capture, sharing, discovery, delivery and presentation
US20030004702A1 (en) * 2001-06-29 2003-01-02 Dan Higinbotham Partial sentence translation memory program
US20030014254A1 (en) * 2001-07-11 2003-01-16 You Zhang Load-shared distribution of a speech system
US7065588B2 (en) * 2001-08-10 2006-06-20 Chaavi, Inc. Method and system for data transformation in a heterogeneous computer system
US20030061022A1 (en) * 2001-09-21 2003-03-27 Reinders James R. Display of translations in an interleaved fashion with variable spacing
JP3452558B2 (ja) * 2001-09-25 2003-09-29 インターナショナル・ビジネス・マシーンズ・コーポレーション 翻訳対象のリソースと分野別辞書を関連付けるための方法、システムおよびプログラム
TW544601B (en) * 2001-11-20 2003-08-01 Ind Tech Res Inst Method and structure for forming web server cluster by conversion and dispatching of web page documents
US7007026B2 (en) * 2001-12-14 2006-02-28 Sun Microsystems, Inc. System for controlling access to and generation of localized application values
US20030154071A1 (en) * 2002-02-11 2003-08-14 Shreve Gregory M. Process for the document management and computer-assisted translation of documents utilizing document corpora constructed by intelligent agents
EP1343079A1 (de) * 2002-03-07 2003-09-10 Infix Software-Systeme GmbH Verfahren, Software-Produkt und System zur universellen computergestützen Informationsverarbeitung
US7249013B2 (en) * 2002-03-11 2007-07-24 University Of Southern California Named entity translation
AU2003267953A1 (en) * 2002-03-26 2003-12-22 University Of Southern California Statistical machine translation using a large monlingual corpus
US20030204573A1 (en) * 2002-04-30 2003-10-30 Andre Beck Method of providing a web user with additional context-specific information
US20030212962A1 (en) 2002-05-08 2003-11-13 Amikai, Inc. Thin client-server architecture for automated machine translation
US7055142B2 (en) * 2002-05-10 2006-05-30 Microsoft Corporation Permutation nuances of the integration of processes and queries as processes at queues
JP3737779B2 (ja) * 2002-05-29 2006-01-25 富士通株式会社 翻訳サーバ、翻訳方法及びプログラム
US20040044517A1 (en) * 2002-08-30 2004-03-04 Robert Palmquist Translation system
US7249012B2 (en) * 2002-11-20 2007-07-24 Microsoft Corporation Statistical method and apparatus for learning translation relationships among phrases
US7546234B1 (en) * 2003-01-08 2009-06-09 Xambala, Inc. Semantic processing engine
US7627479B2 (en) * 2003-02-21 2009-12-01 Motionpoint Corporation Automation tool for web site content language translation
JP3920812B2 (ja) * 2003-05-27 2007-05-30 株式会社東芝 コミュニケーション支援装置、支援方法、及び支援プログラム
US8548794B2 (en) 2003-07-02 2013-10-01 University Of Southern California Statistical noun phrase translation
US7346487B2 (en) * 2003-07-23 2008-03-18 Microsoft Corporation Method and apparatus for identifying translations
JP2005100335A (ja) * 2003-09-01 2005-04-14 Advanced Telecommunication Research Institute International 機械翻訳装置、機械翻訳コンピュータプログラム及びコンピュータ
JP3919771B2 (ja) * 2003-09-09 2007-05-30 株式会社国際電気通信基礎技術研究所 機械翻訳システム、その制御装置、及びコンピュータプログラム
WO2005045619A2 (en) * 2003-10-31 2005-05-19 Landmark Technology Partners, Inc. Intelligent client architecture computer system and method
US7657420B2 (en) * 2003-12-19 2010-02-02 Palo Alto Research Center Incorporated Systems and methods for the generation of alternate phrases from packed meaning
US7380039B2 (en) * 2003-12-30 2008-05-27 3Tera, Inc. Apparatus, method and system for aggregrating computing resources
US20050234864A1 (en) * 2004-04-20 2005-10-20 Shapiro Aaron M Systems and methods for improved data sharing and content transformation
GB2415518A (en) * 2004-06-24 2005-12-28 Sharp Kk Method and apparatus for translation based on a repository of existing translations
JP2006099296A (ja) * 2004-09-29 2006-04-13 Nec Corp 翻訳システム、翻訳通信システム、機械翻訳方法、および、プログラム
US8370395B1 (en) * 2004-10-15 2013-02-05 Amazon Technologies, Inc. Providing a reliable distributed queuing service
US7814473B2 (en) * 2004-10-27 2010-10-12 Oracle International Corporation Feature usage based target patching
US7440453B2 (en) * 2004-11-12 2008-10-21 International Business Machines Corporation Determining availability of a destination for computer network communications
JP4419871B2 (ja) * 2005-03-02 2010-02-24 富士ゼロックス株式会社 翻訳依頼装置およびプログラム
US7653528B2 (en) * 2005-03-08 2010-01-26 Microsoft Corporation Resource authoring incorporating ontology
EP1868101B1 (en) * 2005-04-08 2009-12-23 Panasonic Corporation Cache memory system, and control method therefor
US7610187B2 (en) * 2005-06-30 2009-10-27 International Business Machines Corporation Lingual translation of syndicated content feeds
US20070118399A1 (en) * 2005-11-22 2007-05-24 Avinash Gopal B System and method for integrated learning and understanding of healthcare informatics
US7536295B2 (en) * 2005-12-22 2009-05-19 Xerox Corporation Machine translation using non-contiguous fragments of text
US7809882B1 (en) * 2006-01-24 2010-10-05 Verizon Services Corp. Session independent backend data cache system
EP3534277B1 (en) * 2006-02-17 2021-10-06 Google LLC Encoding and adaptive, scalable accessing of distributed models
US7983897B2 (en) 2007-02-14 2011-07-19 Google Inc. Machine translation feedback

Also Published As

Publication number Publication date
US20140257787A1 (en) 2014-09-11
CA2631815A1 (en) 2007-08-30
EP1983445A2 (en) 2008-10-22
EP1983445B1 (en) 2018-12-26
US9619465B2 (en) 2017-04-11
BRPI0706404B1 (pt) 2019-08-27
AU2007217900A1 (en) 2007-08-30
EP2527990A3 (en) 2018-05-02
EP1969493A2 (en) 2008-09-17
EP3534277A1 (en) 2019-09-04
US20170212887A1 (en) 2017-07-27
US8738357B2 (en) 2014-05-27
EP2527990A2 (en) 2012-11-28
JP2009527818A (ja) 2009-07-30
CN101361065A (zh) 2009-02-04
BRPI0706404A2 (pt) 2011-03-29
CA2631815C (en) 2014-07-15
EP1983445A3 (en) 2009-11-18
WO2007098055A3 (en) 2008-05-22
US20130046530A1 (en) 2013-02-21
US8296123B2 (en) 2012-10-23
EP1969493A4 (en) 2010-05-05
US10089304B2 (en) 2018-10-02
US20080262828A1 (en) 2008-10-23
CN101361065B (zh) 2013-04-10
EP1969493B1 (en) 2018-12-26
AU2007217900B2 (en) 2012-05-10
KR101431194B1 (ko) 2014-08-18
KR20080112192A (ko) 2008-12-24
EP2511833A3 (en) 2018-01-24
WO2007098055A2 (en) 2007-08-30
EP2511833B1 (en) 2020-02-05
EP2527990B1 (en) 2020-01-15
US10885285B2 (en) 2021-01-05
EP3534277B1 (en) 2021-10-06
EP2511833A2 (en) 2012-10-17
US20190018843A1 (en) 2019-01-17

Similar Documents

Publication Publication Date Title
JP5122486B2 (ja) 分散型モデルの符号化及び適応可能なスケーラブルアクセス処理
US7340388B2 (en) Statistical translation using a large monolingual corpus
US9652483B1 (en) Index server architecture using tiered and sharded phrase posting lists
US8626486B2 (en) Automatic spelling correction for machine translation
US8612206B2 (en) Transliterating semitic languages including diacritics
US9355169B1 (en) Phrase extraction using subphrase scoring
US8359201B1 (en) Randomized language models
US8086594B1 (en) Bifurcated document relevance scoring
US8725509B1 (en) Back-off language model compression
Soricut et al. Using a large monolingual corpus to improve translation accuracy
Setiawan et al. BBN’s low-resource machine translation for the LoReHLT 2016 evaluation
AU2012211440A1 (en) Encoding and adaptive, scalable accessing of distributed models

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100212

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120522

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120820

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120925

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121024

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151102

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5122486

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250