(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024096521
(43)【公開日】2024-07-16
(54)【発明の名称】ソース言語で与えられた自然言語処理システムの少なくとも1つのターゲット言語への翻訳
(51)【国際特許分類】
G06F 40/58 20200101AFI20240708BHJP
【FI】
G06F40/58
【審査請求】未請求
【請求項の数】15
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023211849
(22)【出願日】2023-12-15
(31)【優先権主張番号】23305005.3
(32)【優先日】2023-01-03
(33)【優先権主張国・地域又は機関】EP
(71)【出願人】
【識別番号】500102435
【氏名又は名称】ダッソー システムズ
【氏名又は名称原語表記】DASSAULT SYSTEMES
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】フランソワ-レジス ショマルタン
(57)【要約】
【課題】ソース言語で与えられた自然言語処理(NLP)システムを少なくとも1つのターゲット言語に翻訳するためのコンピュータ実装方法を提供する。
【解決手段】本方法は、ソース言語のコーパスを提供することを含む。タクソノミーは、コーパス内の所与の概念を記述する最も頻度の高い用語を決定することを可能にする注釈を含む。本方法はさらに、各注釈に対して最も頻度の高い用語をフィルタリングすることを含む。本方法はさらに、最も頻度の高い用語をコーパスにクエリングし、これらの用語を含む文の一部を抽出することを含む。本方法はさらに、抽出された各部分の用語をタグ付けすることを含む。本方法はさらに、抽出された部分を、高品質の機械翻訳機を使用して少なくとも1つのターゲット言語で翻訳することにより、各部分のタグ付き翻訳を得ることを含む。本方法はさらに、翻訳を正規化することを含む。
【選択図】
図1
【特許請求の範囲】
【請求項1】
ソース言語で与えられた自然言語処理(NLP)システムを少なくとも1つのターゲット言語に翻訳するためのコンピュータ実装される方法であって、前記NLPシステムは語彙化されたタクソノミーに基づいており、テキストの注釈と分類を可能にし、
前記方法は、
前記ソース言語のコーパスを提供すること(S10)であって、前記タクソノミーは、前記コーパス内の所与の概念を記述する最も頻度の高い用語を決定することを可能にする注釈を含む、該提供することと、
各注釈に対して、前記最も頻度の高い用語をフィルタリングすること(S20)と、
前記コーパスに前記最も頻度の高い用語をクエリング(S30)し、これらの用語を含む文の一部を抽出することと、
抽出された各部分の前記用語をタグ付けすること(S40)と、
高品質の機械翻訳機を使用して、前記少なくとも1つのターゲット言語で前記抽出された部分を翻訳することであって(S50)、それにより、各部分のタグ付き翻訳を得ることと、
前記翻訳を正規化すること(S60)と、
を備える、方法。
【請求項2】
前記正規化されたタグ付き翻訳が正しいことを保証するために、統計を用いたヒューリスティックを適用すること(S70)をさらに備える、請求項1に記載の方法。
【請求項3】
前記少なくとも1つのターゲット言語におけるウェブの新しいコーパスをクロールするために前記翻訳された用語を使用することをさらに備える、請求項1または2に記載の方法。
【請求項4】
前記用語の前記翻訳が正しいことを保証するために、前記ウェブの検索の結果を使用することをさらに備える、請求項3に記載の方法。
【請求項5】
各部分は、前記用語の前の所定の数の単語と、前記用語の後の所定の数の単語と、を備える、請求項1から4のいずれか一項に記載の方法。
【請求項6】
前記用語の前の前記所定の数の単語、及び/又は、前記用語の後の前記所定の数の単語は、3以上、例えば4又は5以上である、請求項5に記載の方法。
【請求項7】
前記高品質の機械翻訳機は、ディープニューラルネットワークに基づく機械翻訳機であり、翻訳される前記ソース言語の文に用語がタグ付けされた場合、前記少なくとも1つのターゲット言語の前記翻訳された文に前記翻訳された用語をタグ付することができる、請求項1から6のいずれか一項に記載の方法。
【請求項8】
前記最も頻度の高い用語は、累積頻度が90%以上であり、10語以下の用語である、請求項1から7のいずれか一項に記載の方法。
【請求項9】
前記少なくとも1つのターゲット言語は、モルフォロジーを有する少なくとも1つのターゲット言語を備える、請求項1から8のいずれか一項に記載の方法。
【請求項10】
モルフォロジーを有する前記少なくとも1つのターゲット言語における前記翻訳を正規化すること(S60)は、用語のすべての屈折形をそれらのステムに変換することを備える、請求項9に記載の方法。
【請求項11】
請求項1から10のいずれか一項に記載の方法を使用するコンピュータ実装の方法であって、
言語横断的意味検索エンジンを提供することと、
請求項1から10のいずれか一項に記載の前記方法を適用することにより、ソース言語で与えられた前記検索エンジンの少なくとも1つの語彙化されたタクソノミーを少なくとも1つのターゲット言語に翻訳することと、
を備える方法。
【請求項12】
前記ソース言語で与えられた前記語彙化されたタクソノミーを更新することをさらに備える、請求項11に記載の方法。
【請求項13】
プログラムがコンピュータによって実行されると、請求項1から12のいずれか一項に記載の前記方法を前記コンピュータに実行させる指令を備える、コンピュータプログラム。
【請求項14】
請求項13に記載の前記コンピュータプログラムを記録したコンピュータ可読記憶媒体。
【請求項15】
メモリに結合されたプロセッサを含むコンピュータシステムであって、前記メモリには、請求項13に記載の前記コンピュータプログラムが記録されている、コンピュータシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、コンピュータプログラムおよびシステムの分野に関し、より具体的には、ソース言語が与えられた自然言語処理(NLP)システムを少なくとも1つのターゲット言語に翻訳するための方法、システムおよびプログラムに関する。
【背景技術】
【0002】
戦略的インテリジェンスソフトウェアは、リスクを予測し、起こりうる脅威(競合他社の技術革新や法規制の進化など)や機会(商業的または技術的)を迅速に検出できなければならない。産業企業の世界では、カバーすべき対象は何千にも及ぶ。Text Intelligence Studio(旧Proxem Studio)は、言語上の微妙な問題(同音異義語や曖昧さ、類義語など)を管理しながら、概念を定義し、その概念が現れるテキストに注釈を付けることができる意味解析ソフトウェアである。このプロセスは、これらの概念を特定し、与えられた言語で、その言語のテキストに注釈を付けることを可能にする言語的ルールを表現することで構成されているが、この段階は、Data Linguistのプロファイルによって実行され、時間がかかることがある。
【0003】
ダッソーシステムズは、Text Intelligence Studioを使用して、何千もの概念(業界、業界セグメント、製品、イノベーションの種類、企業、その役割を担う人々)、およびこれらの概念間の関係(人事、M&A、投資)を定義し、テキスト内で識別してきた。この作業は、当初、英語で行われた。
【0004】
グローバル化した世界では、貴重な情報が英語圏の出版分野で欠落することが多い。小規模な企業では、プレスリリースを自国語で発表することが多い。ガスや防衛に関するロシアの新聞、半導体や人工知能に関する中国のメディア、産業革新に関するドイツ語など、例を挙げればきりがないほど、興味深い科学的、経済的記事が毎日掲載されている。これらの文書は、英語しか理解できないText Intelligence Studioツールの範囲外にとどまっている。このような障壁を克服するには、(i)さまざまな言語で関連する情報源を見つけること、(ii)文書を知的にフィルタリングするために、その言語で検索されたコンセプトを認識することを可能にすること、(iii)対応する文書を読者の言語に翻訳すること、が要求される。
【発明の概要】
【発明が解決しようとする課題】
【0005】
このような状況の中で、文書コーパスの言語横断的なクエリのための改良されたソリューションの必要性が、依然としてある。
【課題を解決するための手段】
【0006】
したがって、ソース言語で与えられた自然言語処理(NLP)システムを少なくとも1つのターゲット言語に翻訳するためのコンピュータ実装方法が提供される。NLPシステムは語彙化されたタクソノミーに基づいており、テキストの注釈と分類を可能にする。この方法は、ソース言語のコーパスを提供することを含む。タクソノミーは、コーパス内の所与の概念を記述する最も頻度の高い用語を決定することを可能にする注釈を含む。本方法はさらに、各注釈に対して最も頻度の高い用語をフィルタリングすることを含む。本方法はさらに、最も頻度の高い用語をコーパスにクエリングし、これらの用語を含む文の一部を抽出することを含む。本方法はさらに、抽出された各部分の用語をタグ付けすることを含む。本方法はさらに、抽出された部分を、高品質な機械翻訳機を使用して、少なくとも1つのターゲット言語で翻訳することにより、各部分のタグ付き翻訳を得ることを含む。本方法はさらに、翻訳を正規化することを含む。本方法は「翻訳方法」と呼ばれることもある。
【0007】
翻訳方法は、以下のうちの1つまたは複数を含み得る。
-本方法はさらに、正規化されたタグ付き翻訳が正しいことを保証するために、統計を用いたヒューリスティックスを適用することを含む。
-本方法は、少なくとも1つのターゲット言語のウェブの新しいコーパスをクロールするために、翻訳された用語を使用することをさらに含む。
-本方法は、用語の翻訳が正しいことを保証するために、ウェブ検索の結果を使用することをさらに含む。
-各部分は、用語の前の所定の数の単語と、用語の後の所定の数の単語を含む。
-用語の前の所定の数の単語、及び/又は、用語の後の所定の数の単語は3以上、例えば4又は5以上である。
-高品質の機械翻訳機は、ディープニューラルネットワークに基づく機械翻訳機であり、翻訳されるソース言語の文に用語がタグ付けされた場合、少なくとも1つのターゲット言語の翻訳された文に翻訳された用語をタグ付けすることができる。
-最も頻度の高い用語は、累積頻度が90%以上であり、10語未満の用語である。
-少なくとも1つのターゲット言語は、モルフォロジーを有する少なくとも1つのターゲット言語を含む。
及び/又は、
-モルフォロジーを有する少なくとも1つのターゲット言語における翻訳を正規化することは、用語のすべての屈折形をそれらのステムに変換することを含む。
【0008】
さらに、コンピュータに実装された翻訳方法の使用方法が提供される。この使用方法は、言語横断的意味検索エンジンを提供することを含む。使用方法はさらに、翻訳方法を適用することにより、ソース言語で与えられた検索エンジンの少なくとも1つの語彙化されたタクソノミーを少なくとも1つのターゲット言語に翻訳することを含む。この使用方法は、「言語横断的検索エンジン保守方法」と呼ばれることがある。
【0009】
さらに、翻訳方法および/または検索エンジン保守方法を実行するための指令を含むコンピュータプログラムが提供される。
【0010】
さらに、このコンピュータプログラムを記録したコンピュータ可読記憶媒体が提供される。
【0011】
さらに、メモリに結合されたプロセッサを含むコンピュータシステムが提供され、メモリには、このコンピュータプログラムが記録されている。
【図面の簡単な説明】
【0012】
非限定的な実施例が添付の図面を参照して説明される。
【0013】
【
図33】コンピュータシステムの例を示す図である。
【発明を実施するための形態】
【0014】
図1のフローチャートを参照して、ソース言語で与えられた自然言語処理(NLP)システムを少なくとも1つのターゲット言語に翻訳するためのコンピュータ実装方法が述べられる。NLPシステムは語彙化されたタクソノミーに基づいており、テキストの注釈と分類を可能にする。本方法は、ソース言語のコーパスを提供することS10を含む。タクソノミーは、コーパス中の所与の概念を記述する最も頻度の高い用語を決定することを可能にする注釈を含む。本方法はさらに、各注釈について最も頻度の高い用語をフィルタリングすることS20を含む。本方法はさらに、最も頻度の高い用語を用いてコーパスにクエリングし、これらの用語を含む文の一部を抽出することS30と、を含む。本方法はさらに、抽出された各部分の用語をタグ付けすることS40を含む。本方法はさらに、抽出された部分を、高品質な機械翻訳機を使用して少なくとも1つのターゲット言語で翻訳し、それによって各部分のタグ付き翻訳を得ることS50を含む。本方法はさらに、翻訳を正規化することS60を含む。本方法は、「翻訳方法」と呼ばれることがある。
【0015】
これは、文書のコーパスの言語横断的クエリのための改良されたソリューションである。
【0016】
特筆すべきは、本方法は、ソース言語で提供され、このソース言語のタクソノミーに基づいている自然言語処理(NLP)システムに対して、このタクソノミーを1つまたは複数のターゲット言語に翻訳することを可能にし、このタクソノミーは、この/これらのターゲット言語のコーパス文書をクエリングするために使用されることが可能である。したがって、本方法は、NLPシステムが最初に提供し得るコーパスクローリングの範囲(つまり、英語などのソース言語)を、1つまたは複数のターゲット言語(例えば、フランス語、ドイツ語、ポルトガル語、スペイン語、イタリア語、オランダ語、ロシア語、中国語、日本語のうちの1つまたは複数)のコーパス文書のより広い範囲に拡張することを可能にする。さらに、本方法は、この言語横断的なコーパスクローリングを可能にするだけでなく、完全に自動化された方法でそれを可能にし、とりわけ、セマンティックリソースの手動作成を回避する。
【0017】
そのために、本方法は、ソース言語でコーパスを提供することS10を含み、コーパスの概念セットの所与の概念ごとに、タクソノミーは、所与の概念に対応するコーパスの最も頻度の高い用語の抽出と注釈を可能にする抽出ルールと注釈ルールを特徴とする。次に、本方法は、各概念の注釈に対して最も頻度の高い用語をフィルタリングS20し、これらの用語を用いて自然言語処理システムのコーパスにクエリングS30を行う。この結果、これらの最も頻度の高い用語を含む文の一部(すなわち、コーパス文書の一部)が抽出S30される。次に、本方法は、これらの部分を翻訳S50するが、その前に、用語(すなわち、S30から得られる用語)をタグ付けS40することを含む。タグ付けS40により、高品質な機械翻訳機が、抽出された文のそれぞれの部分において、タグ付けされた用語を分離して、この用語(および、その部分の残りの部分)を少なくとも1つのターゲット言語で正確に翻訳することができ、また、タグ付けされた用語を抽出された部分の1つまたは複数の他の用語とグループ化して誤って翻訳することを避けることができる。用語ではなく部分を翻訳することで、翻訳に文脈が提供され、翻訳の質が向上する。全体として、S40とS50は、用語の品質と正確な翻訳を提供し、これは、少なくとも1つのターゲット言語のコーパスをクエリングするために使用されることができる。本方法はさらに、翻訳された用語のすべての屈折形をステムに変換するなどして、翻訳を正規化することS60を含む。これにより、性別および/または複数形のマークが含まれる可能性のあるターゲット言語において、翻訳された用語の性別または複数形のマークをフィルタリングすることが可能となる。
【0018】
したがって、本方法は、最初はソース言語で書かれたタクソノミーを、完全に自動化された方法で、1つまたは複数のターゲット言語に翻訳することを提供する。これにより、本方法は、ターゲット言語で書かれたテキストの各概念を識別するための抽出ルールを作成することを可能にする。これは、(i)異なる言語で関連する情報ソースを見つけ、(ii) 文書を知的にフィルタリングするために、その言語で検索された概念を認識し、最後に、(iii)対応する文書を読者の言語に翻訳することを与える。ソース言語は、例えば、フランス語、ドイツ語、ポルトガル語、スペイン語、イタリア語、オランダ語、ロシア語、中国語、日本語、英語の10言語のうちの1つであり得る。少なくとも1つのターゲット言語は、1つまたは複数のターゲット言語で構成されてもよく、それぞれが互いに異なり、ソース言語とは異なり、それぞれがフランス語、ドイツ語、ポルトガル語、スペイン語、イタリア語、オランダ語、ロシア語、中国語、日本語、英語のうちの1つであってよい。これにより、本方法は、高品質な翻訳レベルで10言語を扱うが、セマンティックリソースの手動作成に特有の時間のかかる側面はない。したがって、本方法は、複数の言語に一般化されたタクソノミーを用いてコーパスを分析することを可能にする。ユーザーは、概念レベルでクエリングを実行し、すべての言語の関連文書を結果として得ることができる。機械翻訳ソフトウェアを使用することで、これらの結果のターゲット言語で書かれたテキストをユーザーの母国語に翻訳することが可能となる。
【0019】
本方法は、ニュースよりむしろ、部品メーカーのカタログにある部品(e-classのような工業部品タクソノミーを介して)の検索エンジンに使用され得る。また、本方法は、ソース言語で与えられた語彙化されたタクソノミーで構成される言語横断的意味検索エンジンを更新するためにも使用され得る。本方法は、このタクソノミーを1つまたは複数の語彙化されたタクソノミーに翻訳するために適用されてもよい。言語横断的意味検索エンジンを更新するためには、ソース言語のタクソノミーを更新すれば十分であり、本方法は、更新されたタクソノミーを、所定のターゲット言語の更新された1つまたは複数の語彙化されたタクソノミーに自動的に翻訳する。これにより、検索エンジンのタクソノミーの更新は、高速かつ効率的であり、検索エンジンが機能する各言語を手動で更新する必要がないため、ソース言語を更新するだけで十分である。これにより、言語横断的意味検索エンジンのメンテナンスが改善される。
【0020】
実際に、コンピュータ実装された翻訳方法の使用方法も提供される。この使用方法は、言語横断的意味検索エンジンを提供することを含む。使用方法はさらに、翻訳方法を適用することによって、ソース言語で与えられた検索エンジンの少なくとも1つの語彙化されたタクソノミーを、少なくとも1つのターゲット言語に翻訳することを含む。翻訳方法に関しては、ソース言語は、例えば、フランス語、ドイツ語、ポルトガル語、スペイン語、イタリア語、オランダ語、ロシア語、中国語、日本語、英語の10言語のうちの1つであり得る。少なくとも1つのターゲット言語は、それぞれが互いに異なり、ソース言語とは異なる、フランス語、ドイツ語、ポルトガル語、スペイン語、イタリア語、オランダ語、ロシア語、中国語、日本語、および英語のうちの1つである、1つまたは複数のターゲット言語で構成されてもよい。この使用方法は、「言語横断的検索エンジン保守方法」と呼ばれることがある。使用方法はさらに、ソース言語で与えられた語彙化されたタクソノミーを、例えば、少なくとも1つのターゲット言語への翻訳前に更新することを含み得る。これにより、ソース言語のタクソノミーのみを更新し、ターゲット言語への翻訳時に他の言語のタクソノミーを更新することができる。したがって、言語横断的意味検索エンジンの自動化された、高速でリソース効率の良い更新が可能となる。使用方法のステップは、1回または複数回の反復が可能である。
【0021】
次いで、翻訳方法がさらに論じられる。
【0022】
翻訳方法は、ソース言語で与えられた自然言語処理(NLP)システムを、少なくとも1つのターゲット言語に翻訳するためのものである。すなわち、NLPシステムは、少なくともソース言語で利用可能であり、本方法はそれを少なくとも1つのターゲット言語で利用可能/使用可能にする。ソース言語は、フランス語、ドイツ語、ポルトガル語、スペイン語、イタリア語、オランダ語、ロシア語、中国語、日本語、英語のいずれか1つであり得る。ソース言語は、例えば、英語であってもよい。少なくとも1つのターゲット言語は、フランス語、ドイツ語、ポルトガル語、スペイン語、イタリア語、オランダ語、ロシア語、中国語、日本語、英語のいずれか1つまたは複数から構成されてもよい。少なくとも1つのターゲット言語は、ソース言語とは異なり、ソース言語を含まない。少なくとも1つのターゲット言語は、モルフォロジー(性別および/または数詞を含む)を有する少なくとも1つのターゲット言語から構成されてもよい。
【0023】
NLPシステムは、任意のNLPシステム(すなわち、語彙化されたタクソノミーに基づいて、テキストの注釈や分類が可能なもの)であってよい。NLPは「自然言語処理」を意味する。例えば、NLPシステムは、言語横断的意味検索エンジンなどの検索エンジンであり得る。NLPシステムは語彙化されたタクソノミーに基づいている。これは、NLPシステムが、ソース言語の単語ドメイン(例えば、航空産業、人工知能)を処理するように構成され、各ドメインについて、ドメインの語彙化されたタクソノミーを含み、そのタクソノミーはソース言語で語彙化されていることを意味する。語彙化されたタクソノミーは、ソース言語(例えば、英語)におけるドメイン(例えば、航空産業)の意味的なパラメータ化であり、2つの補完的な部分から構成される。
-イノベーション、技術、企業、イベントのリストなど、ドメインに特有な概念の階層を(ツリーまたはグラフ形式で)記述する言語に依存しないタクソノミー
-検索された概念に対応する単語をコーパスから見つけるための抽出ルールの形式で、ソース言語に特化した、このタクソノミーの語彙化。
【0024】
以下の例は、語彙化されたタクソノミーの概念を説明している。この例の概念/ドメインは、#technology:ArtificialIntelligence(ここでは、単語ではなく概念であることを示すために、先頭にシャープ記号を付けている)である。この概念は英語の2つの抽出ルールに関連付けられている。
-頭字語「AI」を大文字で認識する(text:フィールドは、同じケースの比較を強いる)ためのtext:AI
-「artificial」と「intelligence」という用語を認識するための[artificial intelligence]^1
・この順で(左と右ブラケット演算子を使用して)、
・(演算子^1を使って)単語を挿入することもできる。これにより、「artificial intelligence」だけでなく、「artificial general intelligence」、「artificial super intelligence」、「artificial travel intelligence」も検出することができる。
【0025】
これらのルールは、言語の曖昧さを考慮に入れる可能性があり、例えば、「apple」は英語では(果物のリンゴか会社か)曖昧だが、フランス語では曖昧ではない。これらのルールは意図的に定義されてよく、このコーパスでの出現頻度とともに、対応する用語のセットをテキストから拡張して抽出することを可能にする。語彙化されたタクソノミーのルールは、テキストの注釈と分類を可能にする。つまり、抽出ルールを使ってコーパスをクエリングし、抽出ルールごとに、抽出された用語(単語や単語のグループ)がコーパスの要素に注釈され、分類される(つまり、同じ用語が1つの分類に再グループ化される)。
【0026】
この方法は、ソース言語のコーパスを提供することS10を含む。コーパスはソース言語のテキスト文書の集合である。タクソノミーは、コーパス内の所与の概念を記述する最も頻度の高い用語を決定することを可能にする注釈を含む。この語彙化されたタクソノミーは、ターゲット言語の文書コーパス(例えば、航空産業に関する英語のニュース)において、ターゲット言語で識別されるべき概念に対応する単語や単語のグループに注釈を付けることを実際に可能する。これにより、大量のテキストがデータに変換され、相関関係を計算できるようになる(例えば、どの企業がどの技術に関心を持っているか等)。
【0027】
タクソノミーは、先に説明されたように、コーパスの注釈を可能にし、本方法は、例えば、S10の後、S20の前に、各注釈について、任意の所与の概念について、そのような注釈を実行することを含んでいてもよい(例えば、タクソノミーのすべての概念など、いくつかの概念について、本方法を繰り返してもよい)。本方法は、各注釈について、注釈された用語の分類を実行することを含んでもよい。この分類は、コーパス内の所与の概念を記述する最も頻度の高い用語を決定することを可能にする。本方法は、例えば、注釈に対応する抽出ルールによって検出された各用語の頻度を計算することによって、各注釈についてこの決定を実行することを含み得る。「最も頻度の高い用語」とは、与えられた概念に対応する抽出ルールによって抽出されたものの大部分を占める用語を意味する。概念は、一般的な概念が下位概念(概念である)を含み、その下位概念がまた下位概念(概念である)を含むなど、階層的なレベルで構成される例もある。
【0028】
コーパスを提供することS10は、本方法を実行するコンピュータシステムによって自動的に行われてもよい。コーパスを提供することS10は、コーパスをコンピュータシステムに提供し、コンピュータシステムがその方法を実行するためにコーパスを利用できるようにすることを意味する。これは、コーパスを含み得るNLPシステムから、および/または他のデータソース(例えば、サーバー、ウェブ、メモリ、遠隔メモリ、データベース、および/または遠隔データベース)からコーパスにアクセスする(例えば、ダウンロードまたは抽出する)ことを含み得る。システムは提供S10を実行するが、ユーザーが、例えば、方法の実行を開始することによって、最初にこの提供をトリガーしてもよい。
【0029】
本方法はさらに、各注釈に対して最も頻度の高い用語をフィルタリングすることS20を含む。これは、80-20ルールに従って最も頻度の高い用語を選択することを含む。換言すれば、本方法は、注釈された用語の80%を表す20%の分類グループを選択し得る。例えば、最も頻度の高い用語は、累積頻度が90%より大きく、用語が10語以下であるという制約がある用語である。つまり、本方法は、以下を実行することを含み得る。
-ドメインのタクソノミー(ソース言語の語彙化されたタクソノミー)からの概念のリストが与えられ、各概念について、ソース言語の抽出ルールをこの言語のコーパスに適用する(例えば、S10の後、S20の前、またはS10の一部として)。
-抽出された用語を頻度の減少によって(例えば、S10の後とS20の前に、またはS10の一部またはS20の一部として)ソートする。
-ある閾値(例えば、上述したように累積頻度の90%)以上の最も頻度の高い用語を選択することによって、フィルタリングS20を実行する。
【0030】
フィルタリングS20は、例えば、予めに定義された用語選択ルール(例えば、80-20ルール)に従って、システムによって自動的に実行されてもよい。予め定義されたルールは、例えば、方法の初期段階として予め定義されてもよく、例えば、ユーザーによって、例えば、所定のルールリスト内でルールを選択することによって定義されてもよい。
【0031】
本方法はさらに、最も頻度の高い用語を含むコーパスにクエリングS30を実行し、これらの用語を含む文の一部を抽出することを含む。これは、最も頻度の高い用語内の各用語に対してそれぞれのクエリングを実行することを意味し、それぞれのクエリングは、その用語を含むコーパスの1つまたは複数の文書を返し、その用語を含む(これらの1つまたは複数の文書内の)文の部分を抽出する。抽出される部分の数は、予め定義された閾値、例えば、5つの抽出と等しいか、またはそれ以下に保つことができ、これは、S30において、閾値以下の数または閾値に等しい数の部分のみが抽出されることを意味する。また、抽出は、用語の他に、その用語の前の所定の数の単語と、その用語の後の所定の数の単語とに対応する(それによって形成される)文章部分を抽出するなどの抽出ルールを用いて行われてもよい。これにより、各抽出部分は、用語の前の所定の数の単語と用語の後の所定の数の単語とを含む。用語の前の所定の数の単語は、3以上、例えば、4または5以上であってもよく、および/または、用語の後の所定の数の単語は、3以上、例えば、4または5以上であってもよい。用語の前の単語の所定の数は、用語の後の単語の所定の数と等しくてもよい。クエリングおよび抽出S30は、コンピュータシステムによって自動的に実行されてもよい。
【0032】
クエリング及び抽出S30は、以下を実行することを含み得る。
-選択された用語の各々(すなわち、フィルタリングS20の結果の各用語)について、その用語が現れるテキスト抽出(すなわち、文の部分の抽出)について、オリジナル言語のコーパスを検索する。抽出の数は、5つの抽出など、予め定義された閾値と等しいか、または閾値以下に維持されてよく、これは、S30において、閾値以下または閾値に等しい数の部分のみが抽出されることを意味する。
-これらの抽出のそれぞれを切断して、選択された用語の左側と右側の単語数の削減された文脈のみを保持する(例えば、先に説明したように、左側に4単語、右側に4単語の閾値)。この閾値により、翻訳ソフトウェアの使用量(計算能力)を最小限に抑えることができる。
【0033】
本方法は、各抽出された部分の用語にタグ付けするS40をさらに含む。すなわち、各抽出された部分について、フィルタリングの結果得られ、抽出された部分に属する注釈付き用語にタグ付けする。用語のタグ付けは、本方法を実行するコンピュータシステムによって自動的に実行されてもよい。用語のタグ付けは、用語の前および/または後にタグを追加することで構成される。用語のタグ付けS40は、コンピュータシステムによって自動的に実行されてもよい。用語のタグ付けは、例として、用語の左側に<b>タグ、右側に</b>タグを追加することを含み得る。選択された用語にタグを付けると、翻訳されたテキストでその訳語をターゲット言語で簡単に見つけることができる。例えば、「...the Food, Beverage, and <b> CPG</b> industries, among others ...」の翻訳は、「... les industries de l'alimentation, des boissons et des <b>produits de grande consommation</b>, entre autres ...」を生成する。
【0034】
本方法はさらに、高品質の機械翻訳機を使用して、抽出された部分を少なくとも1つのターゲット言語に翻訳することS50(例えば、コンピュータシステムによって自動的に)を含む。これにより、本方法は、各部分のタグ付き翻訳を得る。「高品質の機械翻訳機」とは、機械学習を使用して得られる翻訳機を意味する。高品質の機械翻訳機は、例えば、ディープニューラルネットワークに基づく機械翻訳機であり、翻訳されるソース言語の文に用語がタグ付けされている場合、少なくとも1つのターゲット言語の翻訳文の翻訳用語にタグ付けすることができる。したがって、機械翻訳機は、用語(すなわち、単一の単語または連続した単語のグループ)がタグ付けされた(例えば、タグで囲まれた)テキストを処理することができ、これらのタグを翻訳に転送する。高品質の機械翻訳機は、少なくとも1つのターゲット言語への高品質の語彙化されたタクソノミーを得ることを可能にする。機械学習翻訳機は、たとえばDeepLやMicrosoft Translatorなどであり得る。
【0035】
用語そのものを翻訳するのではなく、その部分を翻訳することで、用語の周りの文脈を考慮することができ、曖昧さに関連する翻訳ミスを避けるか、少なくとも減らすことが可能となる。タクソノミーの概念を定義する単語を、その文脈を考慮せずに翻訳すると、確実に翻訳ミスのリスクが生じる。例えば、「apple」は英語では曖昧(果物か会社か)だが、フランス語ではそうではない。英語で語彙化されたタクソノミーでは、appleが果物を指すのか会社を指すのかを知る必要がある。この分野のコーパスを使うことで、曖昧さを取り除く文脈を持つ文の例が得られる。例えば、英語の「Consumer products goods」は曖昧さがなく、フランス語の「biens de consommation」や「produits de grande consommation」と正しく訳される。一方、頭文字の 「CPG」を文脈なしで訳すと、フランス語では「CPG」となり、正しくない。文脈を加えることで、翻訳機は正しい訳語を見つけることができる。例えば、「... the Food, Beverage, and CPG industries, among others ...」は、フランス語では「... les secteurs de l'alimentation, des boissons et des produits de grande consommation, entre autres ...」と正しく訳される。
【0036】
本方法は、翻訳(すなわち、翻訳S50の結果の翻訳)を正規化することS60をさらに含む。S60は、システムによって自動的に実行されてもよい。翻訳を正規化することは、翻訳された部分の単語をそのステム(「語根」または「基本形」とも呼ばれる)に変換することで構成され得る。例えば、少なくとも1つのターゲット言語は、モルフォロジー(例えば、語根、性別および/または複数の記号、接頭辞および/または接尾辞を持つ言語)を有する少なくとも1つのターゲット言語から構成される場合があり、この場合、少なくとも1つのターゲット言語の翻訳を正規化することは、用語のすべての屈折形をそれらのステムに変換することを含み得る。
【0037】
本方法はさらに、正規化されたタグ付き翻訳が正しいことを保証するために、統計を用いたヒューリスティックを適用することS70を含み得る。
【0038】
S70は、翻訳された各タグ付き用語について、統計を適用して最も頻度の高い翻訳を決定し、これらの最も頻度の高い翻訳を保持することを含み得る。統計は、抽出された複数の部分が翻訳されるときに適用されることができる。実際に、ソース言語の用語は、文脈に応じて、ターゲット言語では異なる方法で翻訳されることがある。これらの異なる訳語は、通常、同義語または代替表現である(例えば、英語の「consumer products goods」は、フランス語では「biens de consommation」または「produits de grande consommation」と訳される)。複数の週出を翻訳することにより、選択された用語の複数の翻訳が提供される。これにより、統計が作成され、最も頻繁に使用される翻訳が保持され、誤った翻訳が存在するリスクが低減される。S70は、選択された各用語の翻訳品質を評価するために、以下のヒューリスティックの一方または両方を適用することをさらに含み得る。
-翻訳をオリジナル言語に再翻訳することによって同じ用語を得る(これは「逆翻訳」と呼ばれることがある)。ここで、「同じ用語」とは、モルフォロジーに関して理解されるものである(ヨーロッパ言語では一般的に、性別と数の一致が異なる場合がある)。本方法は、レーベンシュタイン距離(2つの文字列間の差の尺度を与える)を使用して2つの用語(オリジナル用語とその逆翻訳)を比較することを含み得る。
-本方法が複数の翻訳用語t1およびt2を生成する場合、用語t1を保持せず、t1(例えば、フランス語で「glace」)が複数単語の表現(例えば、フランス語で「glace a la vanille」)によって構成される別の用語t2に含まれる。t1という用語は一般的過ぎることが多く、曖昧になる可能性がある(フランス語では、「glace」は「miroir」の意でもあり、「creme glacee」だけではない)ためである。
【0039】
逆翻訳が、頻度が高く、抽出ルールによって生成された用語に含まれないという二重の基準を満たしている場合、ソース言語の語彙化されたタクソノミーを構築する際に考えられなかった同義語である可能性がある。この場合、本方法は、追加する新しい関連用語としてその逆翻訳を提案する。その用語が有効であれば、タクソノミーの適用範囲が改善される。
【0040】
本方法は、翻訳された用語(すなわち、S50で一旦翻訳され、S60で正規化されたS20の結果の用語)を使用して、少なくとも1つのターゲット言語におけるウェブの新しいコーパスをクローリングすること(例えば、S70の後のS70の一部として)をさらに含み得る。これにより、少なくとも1つのターゲット言語のウェブ文書のコーパスを構築し、例えば、それを自然言語処理システムのコーパスに追加したり、自然言語処理システムの新しいコーパスとして追加したりすることができる。本方法にはさらに、これらの文書からRSSフィードが存在する場合、それを抽出することも含む。本方法はさらに、用語の翻訳が正しいことを保証するために、ウェブ検索の結果を使用することを含み得る。これは、S70の一部であってもよいし、翻訳をチェックするためにS70の後または前に実行されてもよい。
【0041】
次いで、
図2-
図32を参照して、翻訳方法の実施例が説明される。
図2-
図32は、本発明の翻訳方法の一実施例を実装したソフトウェアのグラフィカルユーザーインターフェースのスクリーンショットであり、いくつかの所定の概念を用いて翻訳方法を示している。これらの例では、ソース言語は英語である。
【0042】
図2は、本方法の開始時のグラフィカルユーザーインターフェースを示している。
図2に見られるように、タクソノミーの概念のリスト(左側)がある。
図3では、「transportation & mobility」という概念が選択されている。
図4は、その後に表示される(やはり左側の)「transportation & mobility」の下位概念である概念のリストを示している。
図5に見られるように、「Car & Light Truck OEMs」が選択される。
図6は、「Car & Light Truck OEMs」のサブ概念である概念のリストのその後の表示(やはり左側)を示している。
図7に見られるように、「Autonomous car」という概念が選択されている。
図8は、自律車両の概念に関連する抽出ルール80と、検索バー82に書かれた抽出ルール「indus:AutonomousCar」に基づくコーパスの検索を示している。
図8でも、コーパスの検索結果が(右側に)表示され、見つかった用語には注釈が付けられている(図では太字の用語で示されている)。
図9は、(右側に)さまざまな注釈付き用語のリストを、検索結果における出現回数とともに示している。
図10-
図14は、変更された抽出ルール「indus:AutonomousCar AND autonomous cars」による別の検索、抽出、注釈の実行を示している。
図2から
図11に示されるステップは、S10の一部であってもよいし、S10とS20の間に実行されてもよい。
図15は、S50を実行するための翻訳ウィンドウを示している。
図16では、翻訳ボタンが選択されている。
図17および
図18は、フランス語(column fr)、ドイツ語(column de)、ポルトガル語(column pt)、スペイン語(column es)、イタリア語(column it)、オランダ語(column nl)、ロシア語(column ru)、中国語(column zh)、および日本語(column ja)の用語の翻訳結果を示している。
【0043】
図19は、概念「Aerospace & Defense」が選択された状態のグラフィカルユーザーインターフェースを示している。
図20は、「Aerospace & Defense」のサブ概念である概念のリストのその後の表示(やはり左側)を示している。
図21に見られるように、「Commercial Aviation」という概念が選択されている。
図22は、「Commercial Aviation」の下位概念である概念のリストのその後の表示(やはり左側)を示している。
図22に見られるように、「eVTOL Aircraft」という概念が選択されている。
図22は、eVTOL航空機の概念に関連する対応する抽出ルールと、検索バーに記述されたこの抽出ルール「indus:eVTOL Aircraft」に基づくコーパスの検索も示している。
図22でも、コーパスの検索結果が(右側に)表示され、見つかった用語が注釈で示されている(図では太字の用語で示されている)。
図23は、(右側に)検索結果における出現回数とともに、さまざまな注釈付き用語のリストを示している。
図24-
図28は、変更された抽出ルール「indus:eVTOL Aircraft AND drones」(
図24)、「indus:eVTOL Aircraft AND uav」(
図25)、「indus:eVTOL Aircraft AND evtol」(
図26)、「indus:eVTOL Aircraft AND flying taxi」(
図27-
図28)による他の検索、抽出、注釈の実行を示している。
図19-
図28に示されるステップは、S10の一部であってもよいし、S10とS20との間で実行されてもよい。
図29は、S50を実行するための翻訳ウィンドウを示している。
図30では、翻訳ボタンが選択されている。
図31および
図32は、フランス語(column fr)、ドイツ語(column de)、ポルトガル語(column pt)、スペイン語(column es)、イタリア語(column it)、オランダ語(column nl)、ロシア語(column ru)、中国語(column zh)、および日本語(column ja)の用語の翻訳結果を示している。
【0044】
本方法はコンピュータにより実装される。これは、方法のステップ(或いは、実質的にすべてのステップ)が、少なくとも1つのコンピュータ、または任意のシステムによって実行されることを意味する。したがって、方法のステップは、コンピュータによって、場合によっては完全に自動で、または半自動で実行される。実施例では、方法のステップの少なくとも一部のトリガーは、ユーザーとコンピュータの相互作用によって実行され得る。要求されるユーザーとコンピュータの相互作用のレベルは、予見される自動化のレベルと、ユーザーの希望を実現する必要性とのバランスに依存し得る。例では、このレベルはユーザー定義および/または予め定義されることがある。
【0045】
方法のコンピュータ実装の典型的な例は、この目的に適合したシステムで方法を実行することである。このシステムは、メモリとグラフィカルユーザインタフェース(GUI)とに結合されたプロセッサを含んでいてもよく、メモリは、本方法を実行するための指令を含むコンピュータプログラムを記録している。メモリはまた、データベースを記憶してもよい。メモリは、このような記憶用に適合された任意のハードウェアであり、場合によっては、複数の物理的に異なるパーツ(例えば、プログラム用に1つ、場合によってはデータベース用に1つ)を含み得る。
【0046】
図33はシステムの例を示しており、システムはクライアントコンピュータシステム、例えば、ユーザーのワークステーションである。
【0047】
本実施例のクライアントコンピュータは、内部通信バス1000に接続された中央処理装置(CPU)1010と、同じくバスに接続されたランダムアクセスメモリ(RAM)1070と、を含む。クライアントコンピュータはさらに、バスに接続された動画ランダムアクセスメモリ1100に関連するグラフィック処理ユニット(GPU)1110と共に提供される。動画RAM1100は、当該技術分野ではフレームバッファとしても知られている。大容量記憶デバイスコントローラー1020は、ハードドライブ1030などの大容量記憶デバイスへのアクセスを管理する。コンピュータプログラムの指令とデータを具体化するのに適した大容量記憶デバイスには、EPROM、EEPROM、フラッシュメモリデバイスなどの半導体メモリデバイス、内蔵ハードディスクやリムーバブルディスクなどの磁気ディスク、光磁気ディスクなど、あらゆる形態の不揮発性メモリが含まれる。上記のいずれかは、特別に設計されたASIC(特定用途向け集積回路)によって補足されるか、または特別に設計されたASIC(特定用途向け集積回路)に組み込まれてもよい。ネットワークアダプター1050は、ネットワーク1060へのアクセスを管理する。また、クライアントコンピュータは、カーソル制御機器、キーボードなどの触覚デバイス1090を含んでもよい。カーソル制御機器は、ユーザーがディスプレイ1080上の任意の所望の位置にカーソルを選択的に配置することを可能にするために、クライアントコンピュータ内で使用される。さらに、カーソル制御機器は、ユーザーが様々なコマンドを選択し、制御信号を入力することを可能にする。カーソル制御機器は、システムに制御信号を入力するための多数の信号発生装置を含む。典型的には、カーソル制御機器はマウスであり、信号を生成するためにマウスのボタンが使用される。代替的または追加的に、クライアントコンピュータシステムは、感応パッド、および/または感応スクリーンを含み得る。
【0048】
コンピュータプログラムは、コンピュータによって実行可能な指令を含んでいてもよく、その指令は、上記システムにいずれか1つの方法または両方の方法を実行させるための手法を含んでいる。プログラムは、システムのメモリを含む任意のデータ記憶媒体に記録可能であってもよい。プログラムは、例えば、デジタル電子回路、コンピュータハードウェア、ファームウェア、ソフトウェア、またはそれらの組み合わせで実装されてもよい。プログラムは、例えば、プログラマブルプロセッサによる実行のためにコンピュータ可読記憶媒体に具現化された製品など、装置として実装されてもよい。方法ステップは、入力データに対する動作と出力の生成によって方法の機能を実行する指令のプログラムを実行するプログラマブルプロセッサによって実行されてもよい。したがって、プロセッサは、データ記憶システム、少なくとも1つの入力機器、および少なくとも1つの出力機器からデータおよび指令を受信し、データおよび指令を送信するようにプログラム可能に結合され得る。アプリケーションプログラムは、高レベルの手続き型またはオブジェクト指向プログラミング言語、あるいは必要に応じてアセンブリ言語または機械言語で実装され得る。いずれの場合も、言語はコンパイル言語またはインタプリタ言語であってもよい。プログラムは、フルインストールプログラムであっても、アップデートプログラムであってもよい。システム上でプログラムを適用すると、どのような場合でも、方法を実行するための指令が得られる。コンピュータプログラムは、代替として、クラウドコンピューティング環境のサーバーに格納され実行されることもあり、サーバーは、1つまたは複数のクライアントとネットワークを介して通信している。このような場合、処理装置がプログラムによって構成される指令を実行することにより、クラウドコンピューティング環境上で方法が実行される。
【手続補正書】
【提出日】2024-04-10
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
ソース言語で与えられた自然言語処理(NLP)システムを少なくとも1つのターゲット言語に翻訳するためのコンピュータ実装される方法であって、前記NLPシステムは語彙化されたタクソノミーに基づいており、テキストの注釈と分類を可能にし、
前記方法は、
前記ソース言語のコーパスを提供すること(S10)であって、前記タクソノミーは、前記コーパス内の所与の概念を記述する最も頻度の高い用語を決定することを可能にする注釈を含む、該提供することと、
各注釈に対して、前記最も頻度の高い用語をフィルタリングすること(S20)と、
前記コーパスに前記最も頻度の高い用語をクエリング(S30)し、これらの用語を含む文の一部を抽出することと、
抽出された各部分の前記用語をタグ付けすること(S40)と、
高品質の機械翻訳機を使用して、前記少なくとも1つのターゲット言語で前記抽出された部分を翻訳することであって(S50)、それにより、各部分のタグ付き翻訳を得ることと、
前記翻訳を正規化すること(S60)と、
を備える、方法。
【請求項2】
前記正規化されたタグ付き翻訳が正しいことを保証するために、統計を用いたヒューリスティックを適用すること(S70)をさらに備える、請求項1に記載の方法。
【請求項3】
前記少なくとも1つのターゲット言語におけるウェブの新しいコーパスをクロールするために前記翻訳された用語を使用することをさらに備える、請求項1に記載の方法。
【請求項4】
前記用語の前記翻訳が正しいことを保証するために、前記ウェブの検索の結果を使用することをさらに備える、請求項3に記載の方法。
【請求項5】
各部分は、前記用語の前の所定の数の単語と、前記用語の後の所定の数の単語と、を備える、請求項1のいずれか一項に記載の方法。
【請求項6】
前記用語の前の前記所定の数の単語、及び/又は、前記用語の後の前記所定の数の単語は、3以上、例えば4又は5以上である、請求項5に記載の方法。
【請求項7】
前記高品質の機械翻訳機は、ディープニューラルネットワークに基づく機械翻訳機であり、翻訳される前記ソース言語の文に用語がタグ付けされた場合、前記少なくとも1つのターゲット言語の前記翻訳された文に前記翻訳された用語をタグ付することができる、請求項1に記載の方法。
【請求項8】
前記最も頻度の高い用語は、累積頻度が90%以上であり、10語以下の用語である、請求項1に記載の方法。
【請求項9】
前記少なくとも1つのターゲット言語は、モルフォロジーを有する少なくとも1つのターゲット言語を備える、請求項1に記載の方法。
【請求項10】
モルフォロジーを有する前記少なくとも1つのターゲット言語における前記翻訳を正規化すること(S60)は、用語のすべての屈折形をそれらのステムに変換することを備える、請求項9に記載の方法。
【請求項11】
請求項1に記載の方法を使用するコンピュータ実装の方法であって、
言語横断的意味検索エンジンを提供することと、
請求項1に記載の前記方法を適用することにより、ソース言語で与えられた前記検索エンジンの少なくとも1つの語彙化されたタクソノミーを少なくとも1つのターゲット言語に翻訳することと、
を備える方法。
【請求項12】
前記ソース言語で与えられた前記語彙化されたタクソノミーを更新することをさらに備える、請求項11に記載の方法。
【請求項13】
プログラムがコンピュータによって実行されると、請求項1から12のいずれか一項に記載の前記方法を前記コンピュータに実行させる指令を備える、コンピュータプログラム。
【請求項14】
請求項13に記載の前記コンピュータプログラムを記録したコンピュータ可読記憶媒体。
【請求項15】
メモリに結合されたプロセッサを含むコンピュータシステムであって、前記メモリには、請求項13に記載の前記コンピュータプログラムが記録されている、コンピュータシステム。
【外国語明細書】