(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-01-19
(54)【発明の名称】構造化されたテキストの翻訳
(51)【国際特許分類】
G06F 40/44 20200101AFI20220112BHJP
【FI】
G06F40/44
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2021533499
(86)(22)【出願日】2019-12-03
(85)【翻訳文提出日】2021-08-06
(86)【国際出願番号】 US2019064317
(87)【国際公開番号】W WO2020123207
(87)【国際公開日】2020-06-18
(32)【優先日】2018-12-11
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2019-01-31
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】506332063
【氏名又は名称】セールスフォース ドット コム インコーポレイティッド
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】橋本 和真
(72)【発明者】
【氏名】バスチアッツォ,ラファエラ
(72)【発明者】
【氏名】ブラッドベリ,ジェイムズ
(72)【発明者】
【氏名】マーシャル,テレサ
(72)【発明者】
【氏名】ション,カイミン
(72)【発明者】
【氏名】ソーチャー,リチャード
【テーマコード(参考)】
5B091
【Fターム(参考)】
5B091AA04
5B091AA05
5B091AA06
5B091AA07
5B091BA03
5B091EA01
(57)【要約】
構造化されたテキストの翻訳のためのアプローチは、第1の言語のソーステキストをエンコードし及び埋め込む埋め込みモジュールと、埋め込みモジュールの出力をエンコードするエンコーダと、前の反復からの翻訳されたテキスト内の生成されたトークンに基づいてエンコーダの出力を反復的にデコードするデコーダと、ビームサーチを使用して現在の反復について翻訳されたテキストに含めるための可能な埋め込みタグに関してデコーダの出力を制約するビームモジュールと、現在の反復について翻訳されたテキストに含まれるトークンを選択する層を含む。翻訳されたテキストは、第1の言語と異なる第2の言語である。いくつかの実施形態において、このアプローチは、ビームモジュールの出力に基づくか又はソーステキスト若しくはソーステキストに最も良くマッチする訓練ペアからの参照テキストからコピーされる、トークンを選択するスコア付け及びポインタモジュールをさらに含む。
【特許請求の範囲】
【請求項1】
構造化テキストを翻訳するシステムであって、
第1の言語の構造化ソーステキストをエンコードし及び埋め込む埋め込みモジュールと、
前記埋め込みモジュールの出力をエンコードする多層アテンションベースエンコーダと、
前の反復からの構造化翻訳テキスト内の生成されたトークンに基づいて前記多層アテンションベースエンコーダの出力を反復的にデコードする多層アテンションベースデコーダであり、前記構造化翻訳テキストは前記第1の言語と異なる第2の言語である、多層アテンションベースデコーダと、
現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記多層アテンションベースデコーダの出力をビームサーチに従って制約するビームモジュールと、
前記ビームモジュールからの出力に基づいて前記現在の反復について前記構造化翻訳テキストに含まれるトークンを選択するソフトマックス層と、
を含むシステム。
【請求項2】
前記ビームモジュールは、前記可能な埋め込みタグを、
前記構造化ソーステキスト内の1つ以上の埋め込みタグから選択されるオープニング埋め込みタグ、
前記構造化翻訳テキストに含めるために最後に選択された前記オープニング埋め込みタグに対応するクロージング埋め込みタグ、又は、
前記構造化ソーステキスト内の前記1つ以上の埋め込みタグの各々が前記構造化翻訳テキストに含めるために選択された後のシーケンス終了埋め込みタグ
のうち1つ以上に制限する、請求項1に記載のシステム。
【請求項3】
前記現在の反復について前記構造化翻訳テキストに含めるために選択される前記トークンが前記ビームモジュールの前記出力から選択されるか又は他の構造化テキストからコピーされるかを決定するスコア付けモジュールと、
前記スコア付けモジュールの決定に基づいて、前記ビームモジュールの前記出力からの又は前記他の構造化テキストからコピーされる、前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンを選択する前記ソフトマックス層を含むポインタモジュールと、
をさらに含む請求項1乃至2に記載のシステム。
【請求項4】
前記他の構造化テキストは、前記構造化ソーステキストである、請求項3に記載のシステム。
【請求項5】
前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンが前記構造化ソーステキストから選択されるとき、前記現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記多層アテンションベースエンコーダの出力を第2のビームサーチに従って制約する第2のビームモジュール、をさらに含む請求項3乃至4に記載のシステム。
【請求項6】
前記他の構造化テキストは、前記第1の言語の構造化取得テキストの、前記第2の言語の翻訳に対応する構造化参照テキストであり、
前記構造化取得テキストと前記構造化参照テキストは、当該システムを訓練するために使用される訓練ペアから選択され、
前記構造化取得テキストは、当該システムを訓練するために使用される各訓練ペアの中からの、前記構造化ソーステキストに最も近いマッチである、
請求項3乃至4に記載のシステム。
【請求項7】
前記構造化参照テキストをデコードする第2の多層アテンションベースデコーダと、
前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンが前記構造化参照テキストから選択されるとき、前記現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記第2の多層アテンションベースデコーダの出力を第2のビームサーチに従って制約する第2のビームモジュールと、
をさらに含む請求項6に記載のシステム。
【請求項8】
前記構造化ソーステキスト又は前記構造化翻訳テキストは、1つ以上の埋め込みXMLタグ又は1つ以上の埋め込みHTMLタグを含む、請求項1乃至7に記載のシステム。
【請求項9】
構造化テキストを翻訳する方法であって、
埋め込みモジュールにより、第1の言語の構造化ソーステキストをエンコードし及び埋め込むステップと、
多層アテンションベースエンコーダを使用して前記埋め込みモジュールの出力をエンコードするステップと、
多層アテンションベースデコーダにより、前の反復からの構造化翻訳テキスト内の生成されたトークンに基づいて前記多層アテンションベースエンコーダの出力を反復的にデコードするステップであり、前記構造化翻訳テキストは前記第1の言語と異なる第2の言語である、ステップと、
ビームモジュールによりビームサーチに従って、現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記多層アテンションベースデコーダの出力を制約するステップと、
ソフトマックス層により、前記ビームモジュールからの出力に基づいて前記現在の反復について前記構造化翻訳テキストに含まれるトークンを選択するステップと、
を含む方法。
【請求項10】
前記可能な埋め込みタグは、
前記構造化ソーステキスト内の1つ以上の埋め込みタグから選択されるオープニング埋め込みタグ、
前記構造化翻訳テキストに含めるために最後に選択された前記オープニング埋め込みタグに対応するクロージング埋め込みタグ、又は、
前記構造化ソーステキスト内の前記1つ以上の埋め込みタグの各々が前記構造化翻訳テキストに含めるために選択された後のシーケンス終了埋め込みタグ
のうち1つ以上に制限される、請求項9に記載の方法。
【請求項11】
スコア付けモジュールにより、前記現在の反復について前記構造化翻訳テキストに含めるために選択される前記トークンが前記ビームモジュールの前記出力から選択されるか又は他の構造化テキストからコピーされるかを決定するステップと、
前記ソフトマックス層を含むポインタモジュールにより、前記スコア付けモジュールの決定に基づいて、前記ビームモジュールの前記出力からの又は前記他の構造化テキストからコピーされる、前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンを選択するステップと、
をさらに含む請求項9乃至10に記載の方法。
【請求項12】
前記他の構造化テキストは、前記構造化ソーステキストである、請求項11に記載の方法。
【請求項13】
第2のビームモジュールにより第2のビームサーチに従って、前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンが前記構造化ソーステキストから選択されるとき、前記現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記多層アテンションベースエンコーダの出力を制約するステップ、をさらに含む請求項11乃至12に記載の方法。
【請求項14】
前記他の構造化テキストは、前記第1の言語の構造化取得テキストの、前記第2の言語の翻訳に対応する構造化参照テキストであり、
前記構造化取得テキストと前記構造化参照テキストは、訓練について訓練するために使用される訓練ペアから選択され、
当該方法は
訓練のために使用される各訓練ペアの中から前記構造化ソーステキストに最も近いマッチとして前記構造化取得テキストを選択するステップと、
第2の多層アテンションベースデコーダにより、前記構造化参照テキストをデコードするステップと、
第2のビームモジュールにより第2のビームサーチに従って、前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンが前記構造化参照テキストから選択されるとき、前記現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記第2の多層アテンションベースデコーダの出力を制約するステップと、
をさらに含む、請求項11乃至12に記載の方法。
【請求項15】
コンピューティングデバイスに関連づけられた1つ以上のプロセッサにより実行されたときに前記1つ以上のプロセッサに方法を実行させるように適合された実行可能コードを含む非一時的マシン読取可能媒体であって、前記方法は、
埋め込みモジュールにより、第1の言語の構造化ソーステキストをエンコードし及び埋め込むステップと、
多層アテンションベースエンコーダを使用して前記埋め込みモジュールの出力をエンコードするステップと、
多層アテンションベースデコーダにより、前の反復からの構造化翻訳テキスト内の生成されたトークンに基づいて前記多層アテンションベースエンコーダの出力を反復的にデコードするステップであり、前記構造化翻訳テキストは前記第1の言語と異なる第2の言語である、ステップと、
ビームモジュールによりビームサーチに従って、現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記多層アテンションベースデコーダの出力を制約するステップと、
ソフトマックス層により、前記ビームモジュールからの出力に基づいて前記現在の反復について前記構造化翻訳テキストに含まれるトークンを選択するステップと、
を含む、非一時的マシン読取可能媒体。
【請求項16】
前記可能な埋め込みタグは、
前記構造化ソーステキスト内の1つ以上の埋め込みタグから選択されるオープニング埋め込みタグ、
前記構造化翻訳テキストに含めるために最後に選択された前記オープニング埋め込みタグに対応するクロージング埋め込みタグ、又は、
前記構造化ソーステキスト内の前記1つ以上の埋め込みタグの各々が前記構造化翻訳テキストに含めるために選択された後のシーケンス終了埋め込みタグ
のうち1つ以上に制限される、請求項15に記載の非一時的マシン読取可能媒体。
【請求項17】
前記方法は、
スコア付けモジュールにより、前記現在の反復について前記構造化翻訳テキストに含めるために選択される前記トークンが前記ビームモジュールの前記出力から選択されるか又は他の構造化テキストからコピーされるかを決定するステップと、
前記ソフトマックス層を含むポインタモジュールにより、前記スコア付けモジュールの決定に基づいて、前記ビームモジュールの前記出力からの又は前記他の構造化テキストからコピーされる、前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンを選択するステップと、
をさらに含む、請求項15乃至16に記載の非一時的マシン読取可能媒体。
【請求項18】
前記他の構造化テキストは、前記構造化ソーステキストである、請求項17に記載の非一時的マシン読取可能媒体。
【請求項19】
前記方法は、第2のビームモジュールにより第2のビームサーチに従って、前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンが前記構造化ソーステキストから選択されるとき、前記現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記多層アテンションベースエンコーダの出力を制約するステップをさらに含む、請求項15乃至18に記載の非一時的マシン読取可能媒体。
【請求項20】
前記他の構造化テキストは、前記第1の言語の構造化取得テキストの、前記第2の言語の翻訳に対応する構造化参照テキストであり、
前記構造化取得テキストと前記構造化参照テキストは、訓練のために使用される訓練ペアから選択され、
前記方法は
訓練のために使用される各訓練ペアの中から前記構造化ソーステキストに最も近いマッチとして前記構造化取得テキストを選択するステップと、
第2の多層アテンションベースデコーダにより、前記構造化参照テキストをデコードするステップと、
第2のビームモジュールにより第2のビームサーチに従って、前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンが前記構造化参照テキストから選択されるとき、前記現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記第2の多層アテンションベースデコーダの出力を制約するステップと、
をさらに含む、請求項15乃至18に記載の非一時的マシン読取可能媒体。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願]
本出願は、2018年12月11日に出願された米国仮特許出願第62/778,160号、及び2019年1月31日に出願された米国非仮特許出願第16/264,392号に対する優先権を主張し、これらはその全体を参照により本明細書に組み込まれる。
【0002】
[技術分野]
本開示は、一般に自然言語処理に関し、より具体的には埋め込みタグを有する構造化されたテキストの翻訳に関する。
【背景技術】
【0003】
埋め込みタグ(例えば、XML、HTML等)を含む構造化された形式の自然言語を翻訳するシステムの能力及び自然言語処理は、重要な機械翻訳タスクである。これは、テキストを翻訳することだけでなく埋め込みタグを適切に扱うことも含むため、複雑なタスクである可能性がある。
【0004】
したがって、構造化されたテキストを翻訳するシステム及び方法を有することは有利であろう。
【図面の簡単な説明】
【0005】
【
図1】いくつかの実施形態によるコンピューティングデバイスの簡略図である。
【
図2A】いくつかの実施形態による構造化翻訳テキストの簡略図である。
【
図2B】いくつかの実施形態による構造化翻訳テキストの簡略図である。
【
図3】いくつかの実施形態による、構造化テキスト訓練データを作成する方法の簡略図である。
【
図4】いくつかの実施形態による構造化テキスト翻訳の方法の簡略図である。
【
図5】いくつかの実施形態による構造化テキスト翻訳器の簡略図である。
【
図6】いくつかの実施形態によるアテンションネットワークの簡略図である。
【
図7】いくつかの実施形態によるアテンションベーストランスフォーマネットワークの層の簡略図である。
【
図8】いくつかの実施形態による、構造化テキストに対するビームサーチを制約するアルゴリズムの簡略図である。
【
図9】いくつかの実施形態による構造化テキスト翻訳器の簡略図である。
【
図10】いくつかの実施形態による翻訳された構造化テキストの簡略図である。
【
図11A】いくつかの実施形態による構造化テキスト翻訳の結果の簡略図である。
【
図11B】いくつかの実施形態による構造化テキスト翻訳の結果の簡略図である。
【
図11C】いくつかの実施形態による構造化テキスト翻訳の結果の簡略図である。
【
図11D】いくつかの実施形態による構造化テキスト翻訳の結果の簡略図である。
【
図11E】いくつかの実施形態による構造化テキスト翻訳の結果の簡略図である。
【0006】
図において、同じ呼称を有する要素は、同じ又は同様の機能を有する。
【発明を実施するための形態】
【0007】
機械翻訳は、自然言語処理(Natural Language Processing、NLP)の分野における重要なタスクである。機械翻訳のほとんどのアプローチは、プレーンテキストの翻訳に焦点を合わせている。しかしながら、ウェブ上やデータベース内のテキストデータは、常にプレーンテキストとして記憶されているわけではなく、通常、文書構造やメタデータを組み込むためにマークアップ言語でラップされている。この形式の構造化テキストは、翻訳プロセスにさらなるチャレンジを提供すると同時に、翻訳プロセスを助ける可能性のある役立つ手がかりも提供している。
【0008】
図1は、いくつかの実施形態によるコンピューティングデバイス100の簡略図である。
図1に示すように、コンピューティングデバイス100は、メモリ120に結合されたプロセッサ110を含む。コンピューティングデバイス100の動作は、プロセッサ110により制御される。コンピューティングデバイス100は1つのプロセッサ110のみを用いて示されているが、プロセッサ110は、コンピューティングデバイス100内の1つ以上の中央処理装置、マルチコアプロセッサ、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、グラフィックス処理ユニット(GPU)などの代表であり得ることが理解される。コンピューティングデバイス100は、スタンドアロンのサブシステムとして、コンピューティングデバイスに追加されたボードとして、及び/又は仮想マシンとして実装されてもよい。
【0009】
メモリ120は、コンピューティングデバイス100により実行されるソフトウェア、及び/又はコンピューティングデバイス100の動作中に使用される1つ以上のデータ構造を記憶するために使用され得る。メモリ120は、1つ以上のタイプのマシン読取可能媒体を含んでもよい。マシン読取可能媒体のいくつかの一般的な形態には、フロッピーディスク、フレキシブルディスク、ハードディスク、磁気テープ、任意の他の磁気媒体、CD-ROM、任意の他の光媒体、パンチカード、紙テープ、穴のパターンを有する任意の他の物理媒体、RAM、PROM、EPROM、FLASH(登録商標)-EPROM、任意の他のメモリチップ若しくはカートリッジ、及び/又はプロセッサ若しくはコンピュータが読み出すように適合された任意の他の媒体を含んでもよい。
【0010】
プロセッサ110及び/又はメモリ120は、任意の適切な物理的配置に配置され得る。いくつかの実施形態において、プロセッサ110及び/又はメモリ120は、同じボード上、同じパッケージ内(例えば、システムインパッケージ)、同じチップ上(例えば、システムオンチップ)などに実装されてもよい。いくつかの実施形態において、プロセッサ110及び/又はメモリ120は、分散、仮想化、及び/又はコンテナ化された計算リソースを含んでもよい。このような実施形態との矛盾なく、プロセッサ110及び/又はメモリ120は、1つ以上のデータセンタ及び/又はクラウドコンピューティング設備に配置されてもよい。
【0011】
図示のように、メモリ120は、本明細書にさらに記載する翻訳システム及びモデルを実施及び/又はエミュレートするため、かつ/あるいは本明細書にさらに記載する方法のいずれかを実施するために使用され得る翻訳モジュール130を含む。いくつかの例において、翻訳モジュール130は、構造化テキストを翻訳するために使用され得る。いくつかの例において、翻訳モジュール130は、構造化テキストを翻訳するために使用される翻訳システム又はモデルの反復的な訓練及び/又は評価を扱うこともできる。いくつかの例において、メモリ120は、1つ以上のプロセッサ(例えば、プロセッサ110)により実行されたときに該1つ以上のプロセッサに本明細書にさらに詳細に記載する計数方法を実行させ得る実行可能コードを含む非一時的な有形のマシン読取可能媒体を含んでもよい。いくつかの例において、翻訳モジュール130は、ハードウェア、ソフトウェア、及び/又はハードウェアとソフトウェアの組み合わせを使用して実装され得る。図示のように、コンピューティングデバイス100は構造化ソーステキスト140を受け取り、これは翻訳モジュール130に提供され、次いで、翻訳モジュール130は構造化翻訳テキスト150を生成する。
【0012】
図2A及び
図2Bは、いくつかの実施形態による構造化翻訳テキストの簡略図である。
図2A及び
図2Bは、構造化英語テキスト及び対応する構造化日本語テキストの様々な例を示す。翻訳モジュール130が構造化された英語を構造化された日本語に翻訳するために使用されているか、又は構造化された日本語を構造化された英語に翻訳するために使用されているかに依存して、構造化された英語又は構造化された日本語のいずれかが、構造化ソーステキスト140又は構造化翻訳テキスト150に対応し得る。
【0013】
図3は、いくつかの実施形態による構造化テキスト訓練データを作成する(preparing)方法300の簡略図である。方法300のプロセス310~380のうち1つ以上が、少なくとも部分的に、1つ以上のプロセッサにより実行されたときに該1つ以上のプロセッサにプロセス310~380のうち1つ以上を実行させ得る、非一時的な有形のマシン読取可能媒体に記憶された実行可能コードの形式で実装されてもよい。いくつかの実施形態において、方法300は、翻訳モジュール130を訓練するために使用される訓練データなどの、構造化テキスト訓練データを作成するために使用され得る。いくつかの実施形態において、プロセス370及び/又は380のうち1つ以上は任意であり、省略されてもよい。いくつかの実施形態において、プロセス360、370、及び/又は380のうち1つ以上は、プロセス350の前に実行されてもよい。
【0014】
プロセス310において、翻訳された構造化テキストペアが得られる。構造化テキストペアの各々は、2つの異なる言語(例えば、英語、ブラジルポルトガル語、デンマーク語、オランダ語、フィンランド語、フランス語、ドイツ語、イタリア語、日本語、韓国語、メキシコスペイン語、ノルウェー語、ロシア語、簡体字中国語、スペイン語、スウェーデン語、繁体字中国語など)の同じ構造化テキストに対応する。いくつかの例において、構造化テキストペアの各々は、最初、人間の専門家により翻訳された。いくつかの例において、構造化テキストペアの各々は、オンラインヘルプリポジトリから得られてもよい。いくつかの例において、構造化テキストペアは、異なる言語識別子を使用してオンラインヘルプリポジトリをクロールすることにより得られてもよい。いくつかのタグにおいて、構造化テキストペア内の各構造化テキスト例は、XML、HTML等のマークアップ言語からの構造化テキスト要素を含み得る。
【0015】
プロセス320において、ペアの双方の部分からの構造化テキストが、埋め込みタグを識別するためにパースされる(parsed)。構造化テキストは、テキストに埋め込まれたタグの各々を識別するために、例えば、「<opentag>」、「</closetag>」などの文字列パターンを識別することによりパースされる。
図2Aの例において、埋め込みタグは、<ph>、</ph>、<menucascade>、<uicontrol>、</uicontrol>、及び</menucascade>を含む。いくつかの例において、構造化テキストを処理してタグを識別するために、Pythonライブラリlxmlのetreeモジュールなどのソフトウェアユーティリティを使用してもよい。
【0016】
プロセス330において、埋め込みタグの各々が処理される。いくつかの例において、埋め込みタグの各々は、そのタイプに従ってパースされる。いくつかの例において、可能なタイプは、「翻訳可能」、「透過(transparent)」、及び「翻訳不可能」である。翻訳可能タグの各々は、オープニングタグとその対応するクロージングタグとの間に翻訳可能なテキストを含むタグに対応する。いくつかの例において、翻訳可能タグは、オープニングタグと対応するクロージングタグとの間にネストされた埋め込まれた他の翻訳可能タグを含む、他のタグを有してもよい。いくつかの例において、翻訳可能タグは、title、p、li、shortdesc、indexterm、note、section、entry、dt、dd、fn、cmd、xref、info、stepresult、stepxmp、example、context、term、choice、stentry、result、navtitle、linktext、postreq、prereq、cite、chentry、sli、choption、chdesc、choptionhd、chdeschd、sectiondiv、pd、pt、stepsection、index-see、conbody、fig、body、ulなどを含む。透過タグの各々は、文法構造の差などに起因して異なる言語間で常にうまく整合する(align)わけではないタグに対応する。透過タグの各々は、構造化テキスト内に保持され、方法300の間にさらに考慮されない。いくつかの例において、透過タグは、ph、uicontrol、b、parmname、i、u、menucascade、image、userinput、codeph、systemoutput、filepath、varname、apinameなどを含む。翻訳不可能タグの各々は、構造化テキストから除去される。いくつかの例において、翻訳不可能タグは、sup、codeblockなどを含む。
【0017】
プロセス340において、構造化テキストが残存タグに基づいて分割される。いくつかの例において、双方の部分からの対応する翻訳可能タグは、ペアの双方の部分に含まれ、かつ同じ翻訳内容に対応する構造化テキストの1つ以上の部分を識別するためにマッチされ、整合され、該部分は、別個の訓練データペアに分割され得る。1つ以上の部分の各々は、オープニング埋め込みタグと、対応するクロージング埋め込みタグと、オープニング埋め込みタグ及び対応するクロージング埋め込みタグの間の構造化テキストを含む。いくつかの例において、後端テキストを有するネストされた翻訳可能タグは、それがネストされた翻訳可能タグ内に埋め込まれたままにされてもよく(例えば、ペアの部分のうち1つ以上からの文の一部を残すことを回避するために)、その独自の訓練ペアに分割されてもよく、かつ/あるいは双方の目的のために使用されてもよい。
図2Bの例において、翻訳可能タグは、<p>、<xref>、及び<note>を含み、各々、訓練データペアを生成するために使用のために抽出される。
図2Bの例は、<xref>タグが、構造化テキスト内の後端テキスト「called ...」のため、<p>タグに基づいて訓練データペアに埋め込まれたままにされることも示している。いくつかの例において、訓練データペアの各々は、文断片、単一の文、及び/又は複数の文を含んでもよい。
【0018】
プロセス350において、訓練データペアが、一貫した構造についてチェックされる。いくつかの例において、訓練データペアの2つの部分がチェックされて、それらが各々一貫したネストを有する同じタグのセットを含むかを確認する。いくつかの例において、このチェックは、より良好な訓練データペアが得られることを確保するのに役立つ。いくつかの例において、訓練データペア内の構造化テキストの構造がマッチしないとき、その訓練データペアは破棄される。
【0019】
任意のプロセス360において、ルートタグが除去される。
図2Bの例において、<p>、<xref>、及び<note>タグとそれらの対応するクロージングタグは、それぞれの例から除去されている。しかしながら、<p>タグの訓練データペアの場合、<xref>タグは、その訓練データペアのルートタグではないため、埋め込まれたままにされる。
【0020】
任意のプロセス370において、構造化テキスト内のユニフォームリソースロケータ(uniform resource locators、URL)が正規化される(normalized)。いくつかの例において、URLは、異なる翻訳間で共通するリソース命名における不一致を回避するために正規化される(例えば、各言語は、言語指示子などを含む図、他ページへのリンクなどのために、異なるURLを含むことがある)。いくつかの例において、URLは、訓練データペアの部分間の一貫性を提供するために、マッチングプレースホルダ(例えば、「#URL1#」)を作成することにより正規化される。
【0021】
任意のプロセス380において、細かい粒度の(fine-grained)情報が除去される。いくつかの例において、細かい粒度の情報は、タグの属性(例えば、色、ピクセルサイズなど)に対応してもよく、これらはしばしば、翻訳可能な自然言語要素よりも視覚的特徴により関連している。
【0022】
構造化テキストペアを処理するために方法300がひとたび使用されると、1つ以上の訓練データペアが生成され、1つ以上の訓練データペアのうちの部分の言語に関連づけられた訓練データリポジトリに記憶される。いくつかの例において、言語翻訳が訓練データペア内で双方向について正しいため、訓練データペアのうちいずれかの部分が、構造化ソーステキスト(例えば、構造化ソーステキスト140)として使用されてもよく、かつ/あるいは、訓練データペアのうち他方の部分が構造化ソーステキストとして使用されるときに構造化翻訳テキスト(例えば、構造化翻訳テキスト150)のグラウンドトゥルース(ground truth)に対応してもよい。
【0023】
図4は、いくつかの実施形態による構造化テキスト翻訳の方法400の簡略図である。方法400のプロセス410~420のうち1つ以上が、少なくとも部分的に、1つ以上のプロセッサにより実行されたときに該1つ以上のプロセッサにプロセス410~420のうち1つ以上を実行させ得る、非一時的な有形のマシン読取可能媒体に記憶された実行可能コードの形式で実装されてもよい。いくつかの実施形態において、方法400は、構造化テキストを翻訳するために翻訳モジュール130などの翻訳モジュールにより使用される方法に対応し得る。いくつかの例において、翻訳モジュールは、所望のソース言語及び所望の翻訳言語(例えば、英語からフランス語など)に従って訓練され得る。いくつかの例において、翻訳モジュールは、方法300により生成された訓練データペアを使用して訓練されてもよい。
【0024】
プロセス410において、構造化ソーステキストが受け取られる。いくつかの例において、構造化ソーステキストは、1つ以上の埋め込みタグを含むマークアップ言語(例えば、XML、HTMLなど)のテキストを含んでもよい。いくつかの例において、構造化ソーステキストのテキスト本文は、ソース言語のものであり得る。いくつかの例において、構造化ソーステキストは、構造化ソーステキスト140に対応し得る。いくつかの例において、構造化ソーステキストは、ウェブクローラ、文書、データベースなどから受信してもよい。
【0025】
プロセス420において、構造化ソーステキストが翻訳される。プロセス410の間に受け取った構造化ソーステキストは、翻訳モジュールに提供され、翻訳モジュールは、構造化ソーステキストを所望の翻訳言語の構造化翻訳テキストに翻訳する。いくつかの例において、翻訳モジュールは、
図5~
図9に関して以下でさらに詳細に記載するように、アテンションベーストランスフォーマアプローチを使用して翻訳を実行する。いくつかの例において、構造化ソーステキストは埋め込みタグに基づいて翻訳される。いくつかの例において、翻訳は、制約付きビームサーチを使用して実行されてもよい。いくつかの例において、ビームサーチに対する制約は、構造化ソーステキスト内の埋め込みタグの経過を追い(keep track of)、構造化翻訳テキスト内の埋め込みタグを可能なものに制限し、オープン埋め込みタグの経過を追ってそれらを構造化翻訳テキスト内でクローズできるようにし、かつ/あるいは他の埋め込みタグが解決される(例えば、含まれ、及び/又はクローズされる)前のストリーム終了(end of stream、EOS)埋め込みタグの生成を防止する。いくつかの例において、ソーステキストは、アテンションベース構造を使用して翻訳されてもよい。いくつかの例において、構造化翻訳テキストにおける出力トークン/ワードの選択は、構造化ソーステキストから構造化翻訳テキストへのテキストのコピー、ソーステキストが訓練データからの類似のテキストセグメントに対応するときの訓練データサンプルからのテキストのコピーなどをサポートするためのさらなるメカニズムを含む修正ポインタアプローチを使用して選択されてもよい。
【0026】
図5は、いくつかの実施形態による構造化テキスト翻訳器500の簡略図である。いくつかの実施形態において、構造化テキスト翻訳器500は、翻訳モジュール130及び/又は方法400の翻訳モジュールと一貫性があり得る。いくつかの例において、構造化テキスト翻訳器500は多層ニューラルネットワークである。
図5に示すように、構造化テキスト翻訳器500は、構造化ソーステキストx、例えば、構造化ソーステキスト140及び/又はプロセス410の間に受け取った構造化ソーステキストなどを受け取る。構造化ソーステキストxは、埋め込みモジュール510に渡され、埋め込みモジュール510は、構造化ソーステキストをトークンx
iに分け、トークンx
iの各々は、ワード、数字、タグなどに対応し得る。いくつかの例において、埋め込みモジュール510は、式1に従うトークン埋め込み(token embedding)
【数1】
及び位置埋め込み(positional embedding)
【数2】
の組み合わせを使用して各トークンを埋め込む。ここで、
【数3】
は、実数の集合であり、dは、埋め込み及びエンコーディングの次元である。いくつかの例において、dは、構造化テキスト翻訳器500及び/又は埋め込みモジュール510の実験的性能に基づいて経験的に選択されてもよい。いくつかの例において、dは256でもよい。
【0027】
【0028】
次いで、トークンxiの各々の埋め込みは、hx
0=[hx
0(x1),hx
0(x2),...,hx
0(xN)]としてベクトルに組み合わせられ、Nは、構造化ソースデータ内のトークンの数である。
【0029】
次いで、埋め込みモジュール510の出力hx
0は、多層アテンションベーストランスフォーマ(multi-layer attention-based transformer)の多段(multi-stage)エンコーダ520に渡される。多段エンコーダ520は、C個のアテンションエンコーダ521~529のシーケンスを含む。いくつかの例において、Cは、1、2、3、4、5、6、又はそれ以上でもよい。アテンションエンコーダ521~529の各々は、アテンションエンコーダ521を除いてシーケンス内の前のアテンションエンコーダの出力をエンコードし、アテンションエンコーダ521は、埋込みモジュール510の出力を受け取り、したがって、シーケンス内の第cのアテンションエンコーダ521~529は、式2に従って、及び以下でさらに詳細に記載するようにその出力を生成する。
【0030】
【0031】
次いで、多段エンコーダ520内の最後のアテンションエンコーダ529の出力hx
Cが、多層アテンションベーストランスフォーマの多段デコーダ540に渡される。多段デコーダ540は、C個のアテンションデコーダ541~549のシーケンスを含む。アテンションデコーダ541~549の各々は、アテンションデコーダ541を除いてシーケンス内の前のアテンションデコーダの出力をデコードし、アテンションデコーダ541は、埋め込みモジュール530の出力を受け取り、したがって、シーケンス内の第cのアテンションデコーダ541~549は、式3に従って、及び以下でさらに詳細に記載するようにその出力を生成する。
【0032】
【0033】
埋め込みモジュール530は、反復的に生成された構造化翻訳テキストyからの各トークンを埋め込む。ここで、y<jは、現在のj番目の反復(iteration)の前の反復の各々から生成されたトークンy0~yj-1に対応し、y0は、シーケンス開始(beginning of sequence、BOS)トークンに対応する。いくつかの例において、埋め込みモジュール530は、埋め込みモジュール510と同様であり、式4に従うトークン埋め込みv(yj)及び位置埋め込みe(j)の組み合わせを使用する。
【0034】
【0035】
次いで、トークンyjの各々の埋め込みは、hy
0=[hy
0(y1),hy
0(y2),...,hy
0(yj-1)]としてベクトルに組み合わせられる。
【0036】
アテンションデコーダ、アテンションエンコーダ、及び多層アテンションベーストランスフォーマは、アテンションネットワークを中心に構築される。アテンションデコーダ、アテンションエンコーダ、及び多層アテンションベーストランスフォーマ、並びに関数f及びgは、以下でさらに詳細に記載されており、Vaswaniらの「Attention is All You Need」、Advances in Neural Information Processing Systems 40、5998~6008ページにも記載されており、これは参照により組み込まれる。
【0037】
図6は、いくつかの実施形態によるアテンションネットワーク600の簡略図である。いくつかの例において、アテンションネットワーク600は多層ニューラルネットワークである。
図6に示すように、アテンションネットワーク600は、
【数8】
を受け取る。q、k、及びvの各々は、式5に従ってそれぞれの重みW
Q610、W
K620、及びW
V630の影響下にある。重みW
Q610、W
K620、及びW
V630は、逆伝搬を使用して訓練中に改変される。
【0038】
【0039】
結果として生じるQベクトル、Kベクトル、及びVベクトルはアテンション伝達関数640に通され、アテンション伝達関数640はQとKのドット積を生成し、これは次いで式6に従ってVに適用される。
【0040】
【0041】
次いで、加算及び正規化モジュール650を使用して、クエリqをアテンション伝達関数からの出力と組み合わせて、アテンションネットワーク600による学習率を改善する残差接続(residual connection)を提供する。加算及び正規化モジュール650は式7を実装し、μ及びσは、それぞれ、入力ベクトルの平均及び標準偏差であり、giは、層の正規化をスケーリングするためのゲインパラメータである。加算及び正規化モジュール650からの出力は、アテンションネットワーク600の出力である。
【0042】
【0043】
アテンションネットワーク600は、しばしば2つの変形形態で使用される。第1の変形形態は、アテンションネットワーク600と一貫性のある複数のアテンションネットワークが並列に実装されたマルチヘッドアテンションネットワーク(multi-head attention network)であり、マルチヘッドアテンションネットワーク内の「ヘッド」の各々はその独自の重みWQ610、WK620、及びWV630を有し、これらは異なる値に初期化され、したがって、異なるエンコーディングを学習するように訓練される。次いで、ヘッドの各々からの出力は一緒に連結されて、マルチヘッドアテンションネットワークの出力を形成する。第2の変形形態は、アテンションネットワークの各ヘッドについてq、k、及びvの入力が同じである、マルチヘッドアテンションネットワークであるセルフアテンションネットワーク(self-attention network)である。
【0044】
図7は、いくつかの実施形態による、アテンションベーストランスフォーマネットワークの層700の簡略図である。いくつかの実施形態において、層700は、
図5の多層アテンションベーストランスフォーマ内の層の各々に対応する。いくつかの例において、層700は多層ニューラルネットワークである。
図7に示すように、層700は、エンコーダ710及びデコーダ720を含む。いくつかの実施形態において、エンコーダ710は、アテンションエンコーダ521~529のいずれかと一貫性があり、デコーダ720は、アテンションデコーダ541~549のいずれかと一貫性がある。
【0045】
エンコーダ710は、層入力を(例えば、エンコーディングスタック内の第1の層について、埋め込みモジュール510などの入力ネットワークから、又は、エンコーディングスタックの全ての他の層について、アテンションエンコーダ529を除くアテンションエンコーダ521~529のいずれかなどの、次に最も低い層の層出力から)受け取り、それをマルチヘッドアテンションネットワーク711の全3つの(q、k、及びv)入力に提供し、したがって、マルチヘッドアテンションネットワーク711はセルフアテンションネットワークとして構成される。マルチヘッドアテンションネットワーク711の各ヘッドは、アテンションネットワーク600と一貫性がある。いくつかの例において、マルチヘッドアテンションネットワーク711は3つのヘッドを含むが、2つ又は4つ以上などの他の数のヘッドが可能である。いくつかの例において、各アテンションネットワークは、アテンションネットワークの隠れ状態サイズをヘッド数で割ったものに等しい次元を有する。いくつかの例において、隠れ状態のサイズは256である。マルチヘッドアテンションネットワーク711の出力は、フィードフォワードネットワーク712に提供され、フィードフォワードネットワーク712の入力及び出力の双方が、加算及び正規化モジュール713に提供され、加算及び正規化モジュール713は、エンコーダ710の層出力を生成する。いくつかの例において、フィードフォワードネットワーク712は、式8を実装する、正規化線形ユニット(rectified linear unit、ReLU)活性化を有する2層パーセプトロンネットワークである。ここで、γは、フィードフォワードネットワーク712への入力であり、Mi及びbiは、それぞれ、パーセプトロンネットワーク内の層の各々の重み及びバイアスである。いくつかの例において、加算及び正規化モジュール713は、加算及び正規化モジュール650と実質的に同様である。
【0046】
【0047】
デコーダ720は、層入力を(例えば、デコーディングスタック内の第1の層について、埋め込みモジュール530などの入力ネットワークから、又は、デコーディングスタックの全ての他の層について、アテンションデコーダ549を除くアテンションデコーダ541~549のいずれかなどの、次に最も低い層の層出力から)受け取り、それをマルチヘッドアテンションネットワーク721の全3つの入力(q、k、及びv)に提供し、したがって、マルチヘッドアテンションネットワーク721はセルフアテンションネットワークとして構成される。マルチヘッドアテンションネットワーク721の各ヘッドは、アテンションネットワーク600と一貫性がある。いくつかの例において、マルチヘッドアテンションネットワーク721は3つのヘッドを含むが、2つ又は4つ以上などの他の数のヘッドが可能である。エンコーダ710の出力は、別のマルチヘッドアテンションネットワーク722へのq入力として提供され、マルチヘッドアテンションネットワーク722のk及びv入力は、エンコーダからの出力を提供される。マルチヘッドアテンションネットワーク721の各ヘッドは、アテンションネットワーク600と一貫性がある。いくつかの例において、マルチヘッドアテンションネットワーク722は3つのヘッドを含むが、2つ又は4つ以上などの他の数のヘッドが可能である。いくつかの例において、各アテンションネットワークは、アテンションネットワークの隠れ状態サイズをヘッド数で割ったものに等しい次元を有する。いくつかの例において、隠れ状態のサイズは256である。マルチヘッドアテンションネットワーク722の出力はフィードフォワードネットワーク723に提供され、フィードフォワードネットワーク723の入力及び出力の双方が加算及び正規化モジュール724に提供され、加算及び正規化モジュール724はエンコーダ710の層出力を生成する。いくつかの例において、フィードフォワードネットワーク723並びに加算及び正規化モジュール724は、それぞれ、フィードフォワードネットワーク712並びに加算及び正規化モジュール713と実質的に同様である。
【0048】
図5を再度参照し、多層アテンションベーストランスフォーマに追加で、構造化テキスト翻訳器500は、デコーダ540の出力を処理するビームモジュール550をさらに含む。ビームモジュール550は、構造化テキスト翻訳器500が埋め込みタグである出力シーケンスに含めるための次のトークンwを推奨するとき、埋め込みタグが構造化ソーステキストxの構造と一貫性があるのと同様に前の反復から翻訳された構造化翻訳テキストy
<jの構造と一貫性があることを確保するのに役立つ、制約付きビームサーチを実行する。いくつかの実施形態において、ビームモジュール550は、いくつかの制約を強制する。いくつかの例において、制約は、オープニング埋め込みタグを構造ソーステキストxに含まれる埋め込みタグのみに制限する制約を含む。いくつかの例において、制約は、クロージング埋め込みタグを最後にオープンされた埋め込みタグのみに制限する制約を含む。いくつかの例において、制約は、構造化ソーステキストx内のタグの各々が前の反復から翻訳された構造化翻訳テキストy
<j内に対応するオープニング及びクロージング埋め込みタグを有するときのみ、シーケンス終了(end of sequence、EOS)タグを生成することを可能にする制約を含む。
【0049】
図8は、いくつかの実施形態による、構造化テキストに対するビームサーチを制約するアルゴリズム800の簡略図である。いくつかの例において、アルゴリズム800は、ビームモジュール550により実行されてもよい。
【0050】
図5を再度参照し、ビームモジュール550により制約される多段デコーダ540の出力を含むビームモジュール550の出力は、ソフトマックス層560に渡される。ソフトマックス層560は、式9に従って、次のトークンwが現在の反復の終わりに構造化翻訳テキストyに含まれることを予測する。ここで、softmaxは、ソフトマックス関数であり、
【数13】
は、重み行列であり、
【数14】
は、バイアスベクトルであり、Vは、可能なトークンの語彙であり、dは、トークン及び位置埋め込みの次元である。
【0051】
【0052】
いくつかの実施形態において、構造化テキスト翻訳器500は、確率的勾配降下などの任意の適切な訓練関数を使用して訓練されてもよい。いくつかの例において、構造テキスト翻訳器500を訓練するために使用される訓練データは、方法300を使用して生成されてもよい。いくつかの例において、訓練のための損失関数Lは、式10と一貫性があってもよく、Mは、構造化翻訳テキストyにおけるトークンの数である。
【0053】
【0054】
いくつかの実施形態によれば、構造化テキスト翻訳器500などの構造化テキスト翻訳器による構造化ソーステキストの翻訳は、構造化テキスト翻訳器が構造化ソーステキストからの、及び/又は、構造化テキスト翻訳器を訓練するために使用される訓練データからの構造化ソーステキスト及び構造化翻訳テキストのペアのうち1つからの構造化参照テキストから取得されるトークン及びテキストをコピーすることを可能にすることにより、改善され得る。いくつかの実施形態において、構造化翻訳テキストのための次のトークンが構造化テキスト翻訳器500又は同様のものからのpgを使用して生成されるべきとき、構造化ソーステキストからコピーされるべきとき、又は訓練ペアから取得されるべきときを決定するために、修正ポインタ(modified pointer)アプローチを使用してもよい。一般的なポインタアプローチは、McCannらの「The Natural Language Decathlon: Multitask Learning as Question Answering」、arXiv preprint arXiv:1806.08730及び共同所有の米国特許出願第15/131,970号により詳細に記載されており、これらの双方が参照により本明細書に組み込まれる。
【0055】
図9は、いくつかの実施形態による構造化テキスト翻訳器900の簡略図である。いくつかの実施形態において、構造化テキスト翻訳器900は、翻訳モジュール130及び/又は方法400の翻訳モジュールと一貫性があり得る。いくつかの例において、構造化テキスト翻訳器900は多層ニューラルネットワークである。
図9に示すように、構造化テキスト翻訳器900は構造化ソーステキストをxとして受け取り、これは埋め込みモジュール910に渡され、埋め込みモジュール910による埋め込みの後、エンコーダ920に渡される。いくつかの例において、埋め込みモジュール910は埋め込みモジュール510と一貫性があり、かつ/あるいは、エンコーダ920はエンコーダ520と一貫性がある。前の反復からの構造化翻訳テキストy
<jは、埋め込みモジュール930に通され、埋め込みモジュール930による埋め込みの後、デコーダ940に渡される。いくつかの例において、埋め込みモジュール930は埋め込みモジュール530と一貫性があり、かつ/あるいは、デコーダ940はデコーダ540と一貫性がある。構造化テキスト翻訳器900は、構造化取得テキストx’が構造化ソーステキストxに最も密接にマッチする、訓練データからの訓練ペア(x’,y’)をさらに選択する。いくつかの例において、このマッチは、文字列類似度が構造化ソーステキストxに最も近い構造化取得テキストx’を決定することを含んでもよい。いくつかの例において、2つの文字列の近さは、xとx’との間のトークンnグラムマッチングに基づくものとして決定されてもよい。訓練ペアからの構造化参照テキストy’は、埋め込みモジュール950に通され、埋め込みモジュール950による埋め込みの後、デコーダ960に渡される。いくつかの例において、埋め込みモジュール950は埋め込みモジュール530と一貫性があり、かつ/あるいは、デコーダ960はデコーダ540と一貫性がある。次いで、エンコーダ920、デコーダ940、及びデコーダ960の出力は、エンコーダ920、デコーダ940、及びデコーダ960によりそれぞれ推奨される埋め込みタグを制約するために、それぞれのビームモジュール971、972、及び973に渡される。いくつかの例において、ビームモジュール971、972、及び973の各々は、ビームモジュール550と一貫性がある。ビームモジュール971の出力p
sは、構造化ソーステキストxからのトークンの各々が、構造化テキスト翻訳器900のこの反復により出力される構造化翻訳テキスト内で次のトークンとして使用される可能性(likelihood)に対応する。ビームモジュール972の出力p
gは、ビームモジュール972により制約されるデコーダ940により生成されたトークンの各々が、構造化テキスト翻訳器900のこの反復により出力される構造化翻訳テキスト内で次のトークンとして使用される可能性に対応する。ビームモジュール973の出力p
rは、構造化参照テキストy’からのトークンの各々が、構造化テキスト翻訳器900のこの反復により出力される構造化翻訳テキスト内で次のトークンとして使用される可能性に対応する。
【0056】
ビームモジュール970の出力pgは、スコア付けモジュール980に渡される。スコア付けモジュール980は、ビームモジュール972の出力pgに2つの付加的なトークンをプリペンドする(prepends)。第1のプリペンドトークンは、次のトークンがpaにおける可能性に従って構造化ソーステキストxからコピーされるべきでない可能性を示す第1のスコアを生成するために使用され、ビームモジュール972からの出力に基づいて生成される。第2のプリペンドトークンは、次のトークンがprにおける可能性に従って構造化参照テキストy’から取得されるべきでない可能性を示す第2のスコアを生成するために使用され、ビームモジュール972の出力に基づいて生成される。
【0057】
次いで、スコア付けモジュール980は、アテンションネットワーク600などのシングルヘッド(single-head)アテンションネットワークを使用して、式6及び式7に従ってスコア又は重み付けa(j,i)を生成する。ここで、Qは、pgであり、Kは、pgにおけるトークンの各々と2つのプリペンドトークンのエンコードされた表現であり、Vは、pgにおけるトークンの各々のエンコードされた表現である。第1のプリペンドトークンに対応するスコアaが全てのトークンのスコアaの中で最も大きいとき、値δsが1に設定され、そうでない場合、値δsは0に設定される。第2のプリペンドトークンに対応するスコアaがpgにおけるトークンのスコアaの中で最も大きいとき、値δrが1に設定され、そうでない場合、値δrは0に設定される。
【0058】
次いで、値δs及びδrは、可能性pg、ps及びprと共に、ポインタモジュール990に渡される。ポインタモジュール990は、式11に従って構造化テキスト翻訳器900の現在の反復について構造化翻訳テキスト内の次のトークンを選択するために使用される分布を選択する。次いで、式11により生成された分布は、構造化テキスト翻訳器900の現在の反復について構造化翻訳テキスト内の次のトークンを選択するために、ソフトマックス層560と同様のソフトマックス層に渡される。
【0059】
【0060】
いくつかの実施形態において、構造化テキスト翻訳器900は、確率的勾配降下などの任意の適切な訓練関数を使用して訓練されてもよい。いくつかの例において、構造テキスト翻訳器900を訓練するために使用される訓練データは、方法300を使用して生成されてもよい。いくつかの例において、訓練のための損失関数Lは、複数の分布の重み付き和に対する交差エントロピー損失と一貫性があってもよい。複数の記述に対する交差エントロピー損失は、Seeらの「Get to the Point: Summarization with Pointer-Generator Networks」、Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (ボリューム1:ロングペーパー)、1073~1083ページにさらに詳細に記載されており、これは参照により組み込まれる。
【0061】
図10は、いくつかの実施形態による翻訳された構造化テキストの簡略図である。いくつかの実施形態において、
図10は、構造化テキスト翻訳器900などの構造化テキスト翻訳器による翻訳と一貫性があり、これは、構造化ソーステキストからのトークンのコピーと、構造化取得テキスト及び構造化参照テキストの密接にマッチする訓練ペアからの取得をサポートする。
図10は、英語の構造化ソーステキスト1010(例えば、構造化ソーステキストxに対応する)と、取得ソーステキスト1020及び取得参照テキスト1030(例えば、それぞれx’及びy’に対応する)を含む訓練ペアと、日本語の構造化翻訳テキスト1040(例えば、構造化翻訳テキストyに対応する)を示す。トークンペア1051a-1051b、1052a-1052b、及び1053a-1053bにより示すように、トークン「200」、「<uicontrol>」、及び「</uicontrol>」は、構造化ソーステキスト1010から構造化翻訳テキスト1040にコピーされたトークンのうち3つを表す。これらのコピーされたトークンのうち2つは、それぞれ、オープニング及びクロージング埋め込みタグ「<uicontrol>」及び「</uicontrol>」に対応することに留意する。トークンペア1061a-1061b及び1062a-1062bにより示すように、いくつかのトークンは、取得参照テキスト1030から構造化翻訳テキスト1040にコピーされる。
【0062】
図11A~
図11Eは、いくつかの実施形態による構造化テキスト翻訳の結果の簡略図である。図示のように、
図11A~
図11Eは、様々な言語の翻訳器についての様々な言語ペア(英語から日本語、英語から中国語(簡体字中国語)、英語からフランス語、英語からドイツ語、英語からフィンランド語、英語からオランダ語、英語からロシア語、フィンランド語から日本語)間の翻訳結果を示している。
図11A~
図11Eに示す結果を生成するために使用される訓練及びテストデータは、方法300に従って、及び以下でさらに記載するように作成される。
【0063】
表示されるメトリックの基準として、テキスト専用翻訳器(text only translator)(「OT」)が示されている。テキスト専用翻訳器は、同じ訓練及びテストペア上で訓練及びテストされたが、ソース及び翻訳テキスト内の埋め込みXMLタグに対処するためのさらなる構造又は知識を使用しない自然言語翻訳器である。第1の構造化テキスト翻訳器(「X」)は、構造化テキスト翻訳器500に基づく。第2の構造化テキスト翻訳器(「Xrs)は、構造化ソーステキストからコピーすることと構造化参照テキストから取得されることの双方のサポートを有する構造化テキスト翻訳器900に基づく。構造化テキスト翻訳器900を将来の構造化テキスト翻訳器と比較するための基準として、テキストペアのテストセットから導出されたメトリックを有する第2の構造化テキスト翻訳器の結果(「Xrs(T)」)も提供されている。翻訳テキスト出力のサブワードトークン化及びトークン化解除(detokenization)のために、SentencePieceツールキットが使用されている。SentencePieceツールキットは、Kudoらの「SentencePiece: A Simple and Language Independent Subword Tokenizer and Detokenizer for Neural Text Processing」、Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing: System Demonstration、66~71ページにさらに詳細に記載されており、これは参照により組み込まれる。
【0064】
図11Aは、埋め込みXMLタグが除去されたときの、BLEUスコアと、翻訳における適合率(precision)及び再現率(recall)の固有表現及び数値(named entity and numbers、NE&NUM)スコアの評価とに従って評価された、8つの言語ペアの様々な翻訳器の結果を示す。
図11Aに示すように、OTとXのメトリックの比較は、埋め込みXMLタグの使用がBLEUスコアを改善する傾向があることを示している。埋め込みXMLタグが、ソース及び翻訳テキスト間のフレーズの明示的又は暗黙的整合に関する情報を提供するため、これは驚きではない。しかしながら、英語からフィンランド語へのタスクのBLEUスコアは有意に落ちており、これは、一部の言語ではテキスト内の埋め込みXMLタグを扱うことが容易でないことを示している。Xrsのメトリックは、Xrsが英語からフランス語を除いて最良のBLEUスコアを達成することを示している。BLEUスコアの改善は、構造化参照テキストからのトークンの使用からもたらされるが、この取得の使用は、NE&NUMスコアを特に適合率成分について低下させもする。しかしながら、構造化ソーステキストからトークンをコピーすることは、NE&NUMスコアを特に再現率成分について回復するのに役立つ傾向がある。制約付きビームサーチの使用によるBLEUスコアの改善は、NE&NUMスコアを低下させることも観察されている。したがって、BLEUスコアを改善するための翻訳器の改善は、NE&NUMスコアを低減させる傾向があると思われる。
【0065】
図11Bは、埋め込みXMLタグがソース及び翻訳ペアに保持されているときの、BLEUスコアと、翻訳における埋め込みXMLタグの精度(accuracy)及びマッチ(match)の評価とに従って評価された、8つの言語ペアのX及びXrs翻訳器の結果を示す。
図11Bに示すように、Xrs翻訳器は、XMLベースのBLEUスコアに関して最良の性能を発揮するが、スコアは、埋め込みXMLタグの使用でのより厳密なセグメント毎の比較に起因して
図11Aのスコアより低い。
図11Bは、XMLの精度及びマッチングスコアがほとんどのケースで99%より高いことも示している。ビームモジュールによる制約付きビームサーチを省略したさらなる実験では、英語から日本語へのXモデルのXMLの精度及びマッチングスコアは、それぞれ98.70%及び98.10%である。次いで、XMLベースのBLEUスコアは59.77から58.02に低下している。これは、X及びXrs翻訳器が構造化翻訳テキストにおいて関連するXML構造体を正確に生成できることを実証している。
【0066】
図11Cは、翻訳されたニュースデータセットからのデータペアへのドメイン適応のためにシードコーパスとしてオンラインヘルプを使用したデータセット及び翻訳器の評価の結果を示す。より具体的には、
図11Cは、News Commentaryコーパスからの10,000又は20,000個の訓練例がXrs翻訳器の訓練に組み込まれているときの英語からフランス語への翻訳への影響を示している。結果は、News Commentaryコーパスからのさらなる訓練を用いたオンラインヘルプデータセットに対してテストしたとき(左列)と、newstest2014データセットからのドメイン外のテストペアに対してテストしたときの、BLEUスコアについて示されている。
図11Bが示すように、ニュースドメイン訓練ペアを少量でも使用することは、Xrs翻訳器のドメイン外の翻訳能力を改善する。
【0067】
図11Dは、プロの翻訳者によるXrs翻訳器の翻訳結果の評価の結果を示す。プロの翻訳者は、英語からフィンランド語、フランス語、ドイツ語、及び日本語への翻訳について、埋め込みXMLタグを含む構造化テキストの翻訳結果を評価した。500個のテキスト例がランダムに選択され、各翻訳例は[1,4]の整数スコアを与えられている。翻訳結果は、それが修正なしで使用できる場合に「4」、それが簡素な後編集を必要とする場合に「3」、それがより多くの後編集を必要とするが何もないより良い場合に「2」、それの使用がゼロからの翻訳と同様に良くない場合に1として格付けされている。
図11Dは、ターゲット言語の各々について評価スコア1、2、3、又は4の分布を示しており、平均スコアも示されている。4つの言語の各々についての肯定的な観察は、翻訳結果の50%超が完全(4)又は後編集で有用(3)として評価されていることである。しかしながら、依然として多くの低品質の翻訳結果が存在し、例えば、フィンランド語及びドイツ語の結果の約30%は無用(1)として評価されている。さらに、ドイツ語の結果は「4」のスコアがより少なく、プロの翻訳者がドイツ語の結果を評価するのに他の3つの言語に比べてさらなる時間(20%長い)を要した。
【0068】
プロの翻訳者は、さらに、評価された例の各々についてどのような種類の誤りが存在するかに言及した。誤りは、
図11Eに示す6つのタイプに分類され、各例は複数の誤りを有する可能性がある。「フォーマット(Formatting)」タイプ誤りはタスク特有であり、埋め込みXMLタグが構造化翻訳テキストに正しく挿入されているかどうかに関する。フィンランド語の結果は、より多くのXMLフォーマット誤りを有し、この結果は、フィンランド語において埋め込みXMLタグを扱うことが他の言語においてよりも難しいという発見と合致している。「精度(Accuracy)」タイプ誤りは、無関係なワードの追加、重要なワードのスキップ、フレーズの誤訳などの言語翻訳の問題をカバーしている。精度の誤りは、典型的には人間の翻訳者によりなされる精度の翻訳誤りと異なるため、プロの翻訳者による評価も遅くした。他のタイプの誤りは、翻訳器に組み込むことができるドメイン内の単一言語コーパスに基づいて言語モデルを改善することによりさらに低減され得る。
【0069】
コンピューティングデバイス100などのコンピューティングデバイスのいくつかの例は、1つ以上のプロセッサ(例えば、プロセッサ110)により実行されたときに該1つ以上のプロセッサに方法300及び/又は400、アルゴリズム800、及び/又はニューラルネットワーク構造500、600、700、及び/又は900のプロセスを実行させ得る実行可能コードを含む非一時的な有形のマシン読取可能媒体を含んでもよい。方法300及び/又は400、アルゴリズム800、及び/又はニューラルネットワーク構造500、600、700、及び/又は900のプロセスを含み得るマシン読取可能媒体のいくつかの一般的な形態は、例えば、フロッピーディスク、フレキシブルディスク、ハードディスク、磁気テープ、任意の他の磁気媒体、CD-ROM、任意の他の光媒体、パンチカード、紙テープ、穴のパターンを有する任意の他の物理媒体、RAM、PROM、EPROM、FLASH-EPROM、任意の他のメモリチップ若しくはカートリッジ、及び/又はプロセッサ若しくはコンピュータが読み出すように適合された任意の他の媒体である。
【0070】
[例]
例1.訓練データを作成する方法であって、
第1の言語の第1の構造化テキストを得るステップと、
第2の構造化テキストを得るステップであり、前記第2の構造化テキストは、前記第1の言語と異なる第2の言語での、前記第1の構造化テキストの翻訳である、ステップと、
前記第1の構造化テキストをパースして複数の第1の埋め込みタグを識別するステップと、
前記第2の構造化テキストをパースして複数の第2の埋め込みタグを識別するステップと、
前記第1の埋め込みタグの各々について、前記第2の埋め込みタグから対応するマッチング埋め込みタグを識別するステップと、
前記第1の埋め込みタグからの第3の埋め込みタグと前記第2の埋め込みタグからの対応する第4の埋め込みタグに基づいて、前記第1の構造化テキストからの第3の構造化テキストと、前記第2の構造化テキストからの対応する第4の構造化テキストを抽出するステップと、
前記第3の構造化テキストと前記第4の構造化テキストを一貫した構造についてチェックするステップと、
前記第3の構造化テキスト及び前記第4の構造化テキストを訓練ペアとして、前記第1の言語及び前記第2の言語に関連づけられた訓練データリポジトリに追加するステップと、
を含む方法。
【0071】
例2:前記第3の構造化テキストを抽出する前に、前記第1の埋め込みタグの各々のそれぞれのタイプに基づいて前記第1の埋め込みタグの各々を処理するステップ、及び/又は
前記第4の構造化テキストを抽出する前に、前記第2の埋め込みタグの各々のそれぞれのタイプに基づいて、前記第2の埋め込みタグの各々を処理するステップ
をさらに含む例1に記載の方法。
【0072】
例3:前記それぞれのタイプは、翻訳可能、透過、又は翻訳不可能である、例2に記載の方法。
【0073】
例4:前記第1の埋め込みタグからの第5の埋め込みタグを前記第5の埋め込みタグのそれぞれのタイプに基づいて処理することは、前記第5の埋め込みタグのそれぞれのタイプが翻訳不可能であるときに前記第5の埋め込みタグを前記第1の構造化テキストから除去することを含む、例3に記載の方法。
【0074】
例5:前記第1の埋め込みタグからの第5の埋め込みタグを前記第5の埋め込みタグのそれぞれのタイプに基づいて処理することは、前記第5の埋め込みタグのそれぞれのタイプが翻訳可能であるときに前記第5の埋め込みタグを前記第3の埋め込みタグとして使用することを含む、例3に記載の方法。
【0075】
例6:前記第3の構造化テキスト及び前記第4の構造化テキストを前記訓練ペアとして前記訓練データリポジトリに追加する前に、前記第3の構造化テキストからルートタグを除去するステップ、及び/又は前記第4の構造化テキストからルートタグを除去するステップ、をさらに含む例1に記載の方法。
【0076】
例7:前記第3の構造化テキスト内の第1のユニフォームリソースロケータ(URL)を識別するステップと、
前記第1のURLに対応する前記第4の構造化テキスト内の第2のURLを識別するステップと、
前記第3の構造化テキスト及び前記第4の構造化テキストを前記訓練ペアとして前記訓練データリポジトリに追加する前に、前記第3の構造化テキスト内の前記第1のURL及び前記第4の構造化テキスト内の前記第2のURLをマッチングプレースホルダで置換するステップと、
をさらに含む例1に記載の方法。
【0077】
例8:前記第3の構造化テキスト及び前記第4の構造化テキストを前記訓練ペアとして前記訓練データリポジトリに追加する前に、前記第3の構造化テキストから細かい粒度の情報を除去するステップ、及び/又は前記第4の構造化テキストから細かい粒度の情報を除去するステップ、をさらに含む例1に記載の方法。
【0078】
例9:前記細かい粒度の情報は、埋め込みタグの属性に対応する、例8に記載の方法。
【0079】
例10:メモリと、
前記メモリに結合され、例1乃至9のうちいずれか1つに記載の方法を実行するように構成された1つ以上のプロセッサと、
を含むシステム。
【0080】
例11.コンピューティングデバイスに関連づけられた1つ以上のプロセッサにより実行されたときに前記1つ以上のプロセッサに例1乃至9のうちいずれか1つに記載の方法を実行させるように適合された実行可能コードを含む非一時的マシン読取可能媒体。
【0081】
発明の態様、実施形態、実装、又は適用を説明する本説明及び添付図面は、限定的なものと解釈されるべきではない。本説明及び特許請求の範囲の主旨及び範囲から逸脱することなく、様々な機械的、組成的、構造的、電気的、及び動作上の変更がなされ得る。いくつかの例において、本開示の実施形態を分かりにくくにしないために、周知の回路、構造、又は手法は詳細に図示又は記載されていない。2つ以上の図における同様の数字は、同じ又は同様の要素を表す。
【0082】
本説明では、本開示と一貫性のあるいくつかの実施形態を説明する特定の詳細が記載されている。実施形態の完全な理解を提供するために、多数の特定の詳細が記載されている。しかしながら、当業者には、いくつかの実施形態がこれらの特定の詳細の一部又は全部なしに実施され得ることが明らかであろう。本明細書に開示される特定の実施形態は、例示的であるが限定的でないことが意図される。当業者は、本明細書に具体的に説明されていないが本開示の範囲及び主旨内にある他の要素を認識し得る。さらに、不必要な繰り返しを避けるために、1つの実施形態に関連して図示及び説明された1つ以上の特徴は、別段具体的に説明されるか、又は該1つ以上の特徴が実施形態を非機能的にする場合でない限り、他の実施形態に組み込まれてもよい。
【0083】
例示的な実施形態が図示及び説明されたが、前述の開示において、及びいくつかの例において広範囲の修正、変更、及び置換が考えられ、実施形態のいくつかの特徴は、対応する他の特徴の使用なしに採用され得る。当業者は、多くのバリエーション、代替、及び修正を認識するであろう。したがって、本発明の範囲は以下の特許請求の範囲によってのみ限定されるべきであり、特許請求の範囲は広く、本明細書に開示された実施形態の範囲と一貫性があるように解釈されることが適切である。
【手続補正書】
【提出日】2021-08-13
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
構造化テキストを翻訳するシステムであって、
第1の言語の構造化ソーステキストをエンコードし及び埋め込む埋め込みモジュールと、
前記埋め込みモジュールの出力をエンコードする多層アテンションベースエンコーダと、
多層アテンションベースデコーダであり、反復的に、
前記多層アテンションベースエンコーダの出力
と前の反復からの構造化翻訳テキスト内のトークンを受け取り、前記構造化翻訳テキストは前記第1の言語と異なる第2の言語であ
り、
前記トークンに基づいて前記多層アテンションベースエンコーダの前記出力をデコードする、多層アテンションベースデコーダと、
現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記多層アテンションベースデコーダの出力をビームサーチに従って制約するビームモジュールと、
前記ビームモジュールからの出力に基づいて前記現在の反復について前記構造化翻訳テキストに含まれるトークンを選択するソフトマックス層と、
を含むシステム。
【請求項2】
前記ビームモジュールは、前記可能な埋め込みタグを、
前記構造化ソーステキスト内の1つ以上の埋め込みタグから選択されるオープニング埋め込みタグ、
前記構造化翻訳テキストに含めるために最後に選択され
たオープニング埋め込みタグに対応するクロージング埋め込みタグ、又は、
前記構造化ソーステキスト内の前記1つ以上の埋め込みタグの各々が前記構造化翻訳テキストに含めるために選択された後のシーケンス終了埋め込みタグ
のうち1つ以上に制限する、請求項1に記載のシステム。
【請求項3】
前記現在の反復について前記構造化翻訳テキストに含めるために選択される前記トークンが前記ビームモジュールの前記出力から選択されるか又は他の構造化テキストからコピーされるかを決定するスコア付けモジュールと、
前記スコア付けモジュールの決定に基づいて、前記ビームモジュールの前記出力からの又は前記他の構造化テキストからコピーされる、前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンを選択する前記ソフトマックス層を含むポインタモジュールと、
をさらに含む請求項
1に記載のシステム。
【請求項4】
前記他の構造化テキストは、前記構造化ソーステキストである、請求項3に記載のシステム。
【請求項5】
前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンが前記構造化ソーステキストから選択されるとき、前記現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記多層アテンションベースエンコーダの
前記出力を第2のビームサーチに従って制約する第2のビームモジュール、をさらに含む請求
項4に記載のシステム。
【請求項6】
前記他の構造化テキストは、前記第1の言語の構造化取得テキストの、前記第2の言語の翻訳に対応する構造化参照テキストであり、
前記構造化取得テキストと前記構造化参照テキストは、当該システムを訓練するために使用される訓練ペアから選択され、
前記構造化取得テキストは、当該システムを訓練するために使用される各訓練ペアの中からの、前記構造化ソーステキストに最も近いマッチである、
請求項
3に記載のシステム。
【請求項7】
前記構造化参照テキストをデコードする第2の多層アテンションベースデコーダと、
前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンが前記構造化参照テキストから選択されるとき、前記現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記第2の多層アテンションベースデコーダの出力を第2のビームサーチに従って制約する第2のビームモジュールと、
をさらに含む請求項6に記載のシステム。
【請求項8】
前記構造化ソーステキスト又は前記構造化翻訳テキストは、1つ以上の埋め込みXMLタグ又は1つ以上の埋め込みHTMLタグを含む、請求項
1に記載のシステム。
【請求項9】
構造化テキストを翻訳する方法であって、
埋め込みモジュールにより、第1の言語の構造化ソーステキストをエンコードし及び埋め込むステップと、
多層アテンションベースエンコーダを使用して前記埋め込みモジュールの出力をエンコードするステップと、
多層アテンションベースデコーダに
おいて、前記多層アテンションベースエンコーダの出力
と前の反復からの構造化翻訳テキスト内のトークンを受け取るステップであり、前記構造化翻訳テキストは前記第1の言語と異なる第2の言語である、ステップと、
前記多層アテンションベースデコーダにより、前記前の反復からの前記構造化翻訳テキスト内の前記トークンに基づいて前記多層アテンションベースエンコーダの前記出力を反復的にデコードするステップと、
ビームモジュールによりビームサーチに従って、現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記多層アテンションベースデコーダの出力を制約するステップと、
ソフトマックス層により、前記ビームモジュールからの出力に基づいて前記現在の反復について前記構造化翻訳テキストに含まれるトークンを選択するステップと、
を含む方法。
【請求項10】
前記可能な埋め込みタグは、
前記構造化ソーステキスト内の1つ以上の埋め込みタグから選択されるオープニング埋め込みタグ、
前記構造化翻訳テキストに含めるために最後に選択され
たオープニング埋め込みタグに対応するクロージング埋め込みタグ、又は、
前記構造化ソーステキスト内の前記1つ以上の埋め込みタグの各々が前記構造化翻訳テキストに含めるために選択された後のシーケンス終了埋め込みタグ
のうち1つ以上に制限される、請求項9に記載の方法。
【請求項11】
スコア付けモジュールにより、前記現在の反復について前記構造化翻訳テキストに含めるために選択される前記トークンが前記ビームモジュールの前記出力から選択されるか又は他の構造化テキストからコピーされるかを決定するステップと、
前記ソフトマックス層を含むポインタモジュールにより、前記スコア付けモジュールの決定に基づいて、前記ビームモジュールの前記出力からの又は前記他の構造化テキストからコピーされる、前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンを選択するステップと、
をさらに含む請求項
9に記載の方法。
【請求項12】
前記他の構造化テキストは、前記構造化ソーステキストである、請求項11に記載の方法。
【請求項13】
第2のビームモジュールにより第2のビームサーチに従って、前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンが前記構造化ソーステキストから選択されるとき、前記現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記多層アテンションベースエンコーダの
前記出力を制約するステップ、をさらに含む請求
項12に記載の方法。
【請求項14】
前記他の構造化テキストは、前記第1の言語の構造化取得テキストの、前記第2の言語の翻訳に対応する構造化参照テキストであり、
前記構造化取得テキストと前記構造化参照テキストは、訓練について訓練するために使用される訓練ペアから選択され、
当該方法は
訓練のために使用される各訓練ペアの中から前記構造化ソーステキストに最も近いマッチとして前記構造化取得テキストを選択するステップと、
第2の多層アテンションベースデコーダにより、前記構造化参照テキストをデコードするステップと、
第2のビームモジュールにより第2のビームサーチに従って、前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンが前記構造化参照テキストから選択されるとき、前記現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記第2の多層アテンションベースデコーダの出力を制約するステップと、
をさらに含む、請求項1
1に記載の方法。
【請求項15】
コンピューティングデバイスに関連づけられた1つ以上のプロセッサにより実行されたときに前記1つ以上のプロセッサに方法を実行させるように適合された実行可能コードを含む非一時的マシン読取可能媒体であって、前記方法は、
埋め込みモジュールにより、第1の言語の構造化ソーステキストをエンコードし及び埋め込むステップと、
多層アテンションベースエンコーダを使用して前記埋め込みモジュールの出力をエンコードするステップと、
多層アテンションベースデコーダにより
、前記多層アテンションベースエンコーダの出力
と前の反復からの構造化翻訳テキスト内のトークンを受け取るステップであり、前記構造化翻訳テキストは前記第1の言語と異なる第2の言語である、ステップと、
前記多層アテンションベースデコーダにより、前記前の反復からの前記構造化翻訳テキスト内の前記トークンに基づいて前記多層アテンションベースエンコーダの前記出力を反復的にデコードするステップと、
ビームモジュールによりビームサーチに従って、現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記多層アテンションベースデコーダの出力を制約するステップと、
ソフトマックス層により、前記ビームモジュールからの出力に基づいて前記現在の反復について前記構造化翻訳テキストに含まれるトークンを選択するステップと、
を含む、非一時的マシン読取可能媒体。
【請求項16】
前記可能な埋め込みタグは、
前記構造化ソーステキスト内の1つ以上の埋め込みタグから選択されるオープニング埋め込みタグ、
前記構造化翻訳テキストに含めるために最後に選択されたオープニング埋め込みタグに対応するクロージング埋め込みタグ、又は、
前記構造化ソーステキスト内の前記1つ以上の埋め込みタグの各々が前記構造化翻訳テキストに含めるために選択された後のシーケンス終了埋め込みタグ
のうち1つ以上に制限される、請求項15に記載の非一時的マシン読取可能媒体。
【請求項17】
前記方法は、
スコア付けモジュールにより、前記現在の反復について前記構造化翻訳テキストに含めるために選択される前記トークンが前記ビームモジュールの前記出力から選択されるか又は他の構造化テキストからコピーされるかを決定するステップと、
前記ソフトマックス層を含むポインタモジュールにより、前記スコア付けモジュールの決定に基づいて、前記ビームモジュールの前記出力からの又は前記他の構造化テキストからコピーされる、前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンを選択するステップと、
をさらに含む、請求項1
5に記載の非一時的マシン読取可能媒体。
【請求項18】
前記他の構造化テキストは、前記構造化ソーステキストである、請求項17に記載の非一時的マシン読取可能媒体。
【請求項19】
前記方法は、第2のビームモジュールにより第2のビームサーチに従って、前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンが前記構造化ソーステキストから選択されるとき、前記現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記多層アテンションベースエンコーダの
前記出力を制約するステップをさらに含む、請求
項18に記載の非一時的マシン読取可能媒体。
【請求項20】
前記他の構造化テキストは、前記第1の言語の構造化取得テキストの、前記第2の言語の翻訳に対応する構造化参照テキストであり、
前記構造化取得テキストと前記構造化参照テキストは、訓練のために使用される訓練ペアから選択され、
前記方法は
訓練のために使用される各訓練ペアの中から前記構造化ソーステキストに最も近いマッチとして前記構造化取得テキストを選択するステップと、
第2の多層アテンションベースデコーダにより、前記構造化参照テキストをデコードするステップと、
第2のビームモジュールにより第2のビームサーチに従って、前記現在の反復について前記構造化翻訳テキストに含まれる前記トークンが前記構造化参照テキストから選択されるとき、前記現在の反復について前記構造化翻訳テキストに含めるための可能な埋め込みタグに関して前記第2の多層アテンションベースデコーダの出力を制約するステップと、
をさらに含む、請求項1
7に記載の非一時的マシン読取可能媒体。
【国際調査報告】