JP2020537228A - 意図認識のための抽象化および移植性 - Google Patents

意図認識のための抽象化および移植性 Download PDF

Info

Publication number
JP2020537228A
JP2020537228A JP2020518686A JP2020518686A JP2020537228A JP 2020537228 A JP2020537228 A JP 2020537228A JP 2020518686 A JP2020518686 A JP 2020518686A JP 2020518686 A JP2020518686 A JP 2020518686A JP 2020537228 A JP2020537228 A JP 2020537228A
Authority
JP
Japan
Prior art keywords
computer
proxy
semantic analysis
tag
vocabulary
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.)
Granted
Application number
JP2020518686A
Other languages
English (en)
Other versions
JP2020537228A5 (ja
JP7064274B2 (ja
Inventor
バイロン、ドンナ
スウィフト、メアリー
クンツ、ラディスラフ
ジョンソン、ベンジャミン、ルーク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2020537228A publication Critical patent/JP2020537228A/ja
Publication of JP2020537228A5 publication Critical patent/JP2020537228A5/ja
Application granted granted Critical
Publication of JP7064274B2 publication Critical patent/JP7064274B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/247Thesauruses; Synonyms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Machine Translation (AREA)

Abstract

【課題】意味解析モデルを構築するためのコンピュータによって実施される方法を提供する。【解決手段】一実施形態において、コンピュータによって実施される方法が、表層形異形のセットを備えるプロキシ・タグを作成することを含む。コンピュータによって実施される方法は、終端トークンとプロキシ・タグのうちの少なくとも1つとの組合せを備える訓練例を作成する。コンピュータによって実施される方法は、訓練例を使用して意味解析モデルを構築する。【選択図】図2

Description

本開示は、一般に、自然言語処理システムまたは会話エージェント・システム(conversational agent system)において使用され得る言語モデル化に関する。自然言語処理は、人間の言語のコンピュータ理解およびコンピュータ操作を取り扱う分野である。
より多くのアプリケーションが音声対話を使用してユーザと対話するにつれ、近年、自然言語処理の使用が増加している。
言語モデル化に対する従来のアプローチは、単語列(word sequence)にわたる確率分布を決定する際の訓練サンプルを生成すべくテキストの決められたコーパスに依拠してきた。コーパス・サイズを増大させることが、しばしば、パフォーマンスのより良好な言語モデルにつながる。しかし、分類器を確実に訓練するのに有効な訓練例の量を実現することは、難度が高い。文または質問のすべての代替のフレーズが訓練例セットに明示的に提供されることを必要とする語彙特徴(すなわち、表層形)にプロセスが過適合させられるためである。
したがって、前述した問題に対処する必要性が当技術分野に存在する。
第1の態様から見て、本発明は、自然言語処理システムのためのモデルを構築するためのコンピュータによって実施される方法を提供し、コンピュータによって実施される方法が、表層形異形(surface form variant)のセットを備えるプロキシ・タグを作成すること、終端トークン(terminal token)とプロキシ・タグのうちの少なくとも1つとの組合せを備える訓練例を作成すること、および訓練例を使用して意味解析モデルを構築することを含む。
さらなる態様から見て、本発明は、自然言語処理システムのためのモデルを構築するためのシステムを提供し、システムが、コンピュータ実行可能命令を記憶するように構成されたメモリと、プロセッサとを備え、プロセッサが、表層形異形のセットを備えるプロキシ・タグを作成すること、終端トークンとプロキシ・タグのうちの少なくとも1つとの組合せを備える訓練例を作成すること、および訓練例を使用して意味解析モデルを構築することを行うべくコンピュータ実行可能命令を実行するように構成されている。
さらなる態様から見て、本発明は、自然言語処理システムのためのモデルを構築するためのコンピュータ・プログラム製品を提供し、コンピュータ・プログラム製品が、処理回路によって可読であり、かつ本発明のステップを実行するための方法を実行するために処理回路によって実行されるように命令を記憶するコンピュータ可読記憶媒体を備える。
さらなる態様から見て、本発明は、コンピュータ可読媒体上に記憶され、かつデジタル・コンピュータの内部メモリにロード可能なコンピュータ・プログラムを提供し、コンピュータ・プログラムが、このプログラムがコンピュータ上で実行されたとき、本発明のステップを実行するためのソフトウェア・コード部分を備える。
さらなる態様から見て、本発明は、自然言語処理システムのためのモデルを構築するためのコンピュータによって実施される方法を提供し、コンピュータによって実施される方法が、表層形異形のセットを備えるプロキシ・タグを作成すること、プロキシ・タグのうちの少なくとも1つを備える訓練例を作成すること、および訓練例を使用して意味解析モデルを構築することを含む。
開示される実施形態は、意味解析モデルを構築するため、および自然言語入力を処理すべくそのモデルを適用するための自然言語処理システム、コンピュータ・プログラム製品、および様々なコンピュータによって実施される方法を含む。例示的な実施形態として、表層形異形のセットを備えるプロキシ・タグを作成するステップを含むコンピュータによって実施される方法が開示される。コンピュータによって実施される方法は、終端トークンとプロキシ・タグとの組合せを備える訓練例を作成する。コンピュータによって実施される方法は、訓練例を使用して意味解析モデルを構築する。別の例示的な実施形態として、表層形異形のセットを有するプロキシ・タグを作成するステップを含む、自然言語の意味解析のためのモデルを構築するため、および試験するためのコンピュータによって実施される方法が、開示される。コンピュータによって実施される方法は、終端トークンとプロキシ・タグのうちの少なくとも1つとの組合せを含む訓練例を作成する。コンピュータによって実施される方法は、訓練例の特徴を抽出すべく訓練例を使用して特徴抽出を実行する。コンピュータによって実施される方法は、訓練例の特徴を入力データとして使用する意味解析モデルを構築する。
別の例示的な実施形態として、表層形異形のセットを備えるプロキシ・タグを作成するステップを含むコンピュータによって実施される方法が、開示される。コンピュータによって実施される方法は、1つまたは複数のプロキシ・タグを備える訓練例を作成する。コンピュータによって実施される方法は、訓練例を使用して意味解析モデルを構築する。
様々な実施形態の1つのオプションの特徴は、表層形異形のセットが、句である表層形異形(例えば、「are they」、「is it」、「is that」、その他)を含むことである。いくつかの実施形態において、表層形異形は、一貫性のない構造クラスを有してよい。例えば、1つのプロキシ・タグについての表層形異形が、個々の名詞、名詞句、および質問語(question word)を足した名詞句を含んでよい。一部の実施形態において、プロキシ・タグは、他のプロキシ・タグから成っていてよい。一部の実施形態において、文書、知識グラフ、シソーラス、辞書、および語彙データベースを含むが、以上には限定されない様々なリソースを使用して、プロキシ・タグに対する表層形異形が自動的に設定されてよい。また、様々な実施形態は、表層形要素からプロキシ特徴を推論する入力言語試験インスタンスに関する特殊な扱いを含んでもよい。
開示される実施形態は、訓練インスタンスが、言語分類プロセスまたは確率論的推論プロセスによって同様に扱われるべき一般性に気付くための方法がまったく提供されていない、自然に生じる言語例である、現行の教師あり機械学習パラダイムにおける問題に対するソリューションを提供する。さらに、開示される実施形態は、厳密な句が作成されることも、リストアップされることも要求されないため、意味解析モデルのより高速な訓練を可能にすることを含め、現行の訓練パラダイムに優るいくつかの利点を提供する。別の利点は、開示される実施形態が、代用可能性を表現するために文法規則がまったく要求されることなく、訓練例がモジュール/交換可能部分(modular/swappable piece)に細分されることを可能にすることである。
開示される実施形態のその他の実施形態および利点が、詳細な説明においてさらに説明される。
次に、本発明について、単に例として、添付の図に例示される、好ましい実施形態を参照して説明する。
様々な実施形態による自然言語処理システムの概略ネットワーク図である。 様々な実施形態による自然言語処理システムを示す概略図である。 様々な実施形態によるプロキシ・タグの作成を例示する概略図である。 様々な実施形態によるプロキシ・タグの作成を例示する概略図である。 様々な実施形態によるプロキシ・タグの作成を例示する概略図である。 様々な実施形態による意味解析モデルを構築するためのコンピュータによって実施される方法を示すフローチャートである。 様々な実施形態による意味解析モデルを試験するためのコンピュータによって実施される方法を示すフローチャートである。 様々な実施形態による例示的なデータ処理システムを示すブロック図である。
示される図は、単に例示的であり、様々な実施形態が実施されてよい環境、アーキテクチャ、設計、またはプロセスに関して何ら限定を主張することも、暗示することも意図していない。オプションの構成要素またはステップは、示される図面において破線を使用して示される。
開示される実施形態は、自然言語処理システムまたは会話エージェント・システムにおいて使用されてよい言語モデルを開発するプロセスを向上させることを追求する。例えば、開示される実施形態は、意味解析モデルを構築するための訓練例内で用語プロキシもしくは句プロキシまたはプロキシ・タグを利用するための様々なシステムおよび方法を含む。開示される実施形態は、可能なすべての表層形が訓練例においてリストアップされなければならない現行の訓練パラダイムにおける問題にソリューションをもたらす。
1つまたは複数の実施形態の例示的な実施例が以下に与えられるものの、開示されるシステム、コンピュータ・プログラム製品、または方法、あるいはその組合せは、現在、知られているか、または存在するかにかかわらず、任意のいくつの技法を使用して実施されてもよいことを当初から理解されたい。本開示は、本明細書において示され、説明される例示的な設計および実施例を含む、以下に示される例示的な実施例、図面、および技法にまったく限定されるべきではなく、添付の特許請求の範囲内、および均等物の完全な範囲内で変形されてよい。
記載される開示および特許請求の範囲において使用される、「含む」および「備える」という術語は、制約のない様態で使用され、このため、「含むが、限定されない」を意味するように解釈されるべきである。特に明記しない限り、本明細書全体にわたって使用される「または」は、相互排他性を要求せず、「或る」および「その」という単数形は、文脈がそうでないことを明確に示すのでない限り、複数形を含むことが意図される。
教師あり学習を使用して自然言語理解を作成するための現行の技術は、多くの課題に直面する。語彙および文法などのモジュール言語リソースを構築する開発者に頼るのではなく、訓練例は、意図分類タグまたは感情タグなどの所望される出力でラベル付けされた自然に生じる単語列としてリストされる。この方法は、大きい規模においてうまくいくが、システム開発者が訓練の元にする大量の検証済みの自然言語例が利用可能でない閉じられた領域において働く新たな会話エージェントに関してなど、一部の言語理解プロセスを立ち上げるのには問題がある。そのようなシナリオにおいて作られる手作業で生成された訓練例は、しばしば、動詞選択または固有名詞の異形などの、意味カテゴリの要素を網羅的にリストアップするためのフレーズの繰返しとなって現れる。
このことは、そのような言語理解システムの性能に別々の2つの課題をもたらす。第1の課題は、訓練例が固有名詞などの特定性の非常に高い単語を埋め込むため、訓練例が複数のディプロイメントにわたって移植可能(可搬)ではないことである。後続の言語理解ディプロイメントは、それらのディプロイメントが類似した会話領域に関する場合でさえ、前の製品のために作成された訓練サンプルを最適に利用することができない。第2に、1つのパラメータ(製品名などの)の異形をキャプチャするために作成された訓練例フレーズの人為的な反復が、訓練サンプルから抽出された言語モデル特徴内で統計的偏りを生じさせる可能性がある。
例えば、現行の技術を使用して、特定の自動車がハイブリッド・モデルで入手可能であるかどうかという質問の訓練インスタンスが、以下のとおりリストアップされることが可能である。各モデル名が、訓練によって生成されるnグラム特徴に含められるようにするために、各モデル名に関する例が与えられる一方で、コンテンツ開発者が実際に行おうと試みていることは、Xが任意の自動車モデルである、「Is there a hybrid version of X(Xのハイブリッド・バージョンは存在しますか)」という質問テンプレートが、このカテゴリの有効なインスタンスであることを実証することである。
Is there a hybrid version of RAV4?
Is there a hybrid version of Yaris?
Is there a hybrid version of Tundra?
Is there a hybrid version of Tacoma?
Is there a hybrid version of Sienna?
Is there a hybrid version of Sequoia?
Is there a hybrid version of Mirai?
Is there a hybrid version of Land Cruiser?
Is there a hybrid version of Corolla?
Is there a hybrid version of Camry?
Is Yaris available in a hybrid model?
Is Tundra available in a hybrid model?
Is Tacoma available in a hybrid model?
Is Sienna available in a hybrid model?
Is Sequoia available in a hybrid model?
Is RAV4 available in a hybrid model?
Is Mirai available in a hybrid model?
Is Land Cruiser available in a hybrid model?
Is Highlander available in a hybrid model?
Is Corolla available in a hybrid model?
Is Camry a hybrid?
Is RAV4 a hybrid?
Is Toyota RAV4 a hybrid?
前掲のリストに含められることが可能な他の多数の質問が存在する。
前段に示されるとおり、現行の訓練パラダイムの抱える技術的問題は、入力として受け取られることが可能な文/質問の数限りない異形が存在し、かつ等価の単語クラスの代用可能性が明示的な例を介して学習されるため、言語モデルのための訓練例の構築が煩雑なタスクであることである。したがって、開示される実施形態は、意味解析モデルを構築するための訓練例内で用語プロキシもしくは句プロキシまたはプロキシ・タグを利用することによって現行の訓練パラダイムに技術的ソリューションをもたらす様々なシステムおよび方法を含む。例として、様々な実施形態によれば、前述の訓練セットは、@modelname={Rav4, Sienna, Camry...}というプロキシ・セットを伴う「Is @modelname a hybrid」としてキャプチャされてよい。いくつかの実施形態において、プロキシ・タグは、任意の恣意的な内部文法/構成構造を有する表層形語彙異形をキャプチャする。例えば、一部の実施形態において、1つのプロキシ・タグに関する異形が、内部の詳細が有効な文法カテゴリを形成するという要件なしに、個々の名詞から名詞句に、名詞句から質問語を足した名詞句に移行することが可能である。開示される実施形態は、表層形のすべての組合せが訓練例においてリストアップされなければならない現行の訓練パラダイムにおける問題にソリューションをもたらす。さらに、いくつかの実施形態において、開示されるプロキシ・タグ表層形の例は、様々な訓練例セットにわたって使用されてよい。例えば、一実施形態において、質問語および述部同義語セットにおけるパターンが、プロキシ・タグを用いて表現され、1つのディプロイメントから別のディプロイメントにコピーされる表層形異形のセットとしてリストされることが可能である。前段に示されるものなどの完全文訓練例自体が、異なる会話訓練セットと関係がない可能性がある場合、プロキシ・セットは、複数の会話にわたって移植性のより高い隔離された語彙コンテンツを包含することが可能である。
図1は、様々な実施形態による自然言語処理システム100のネットワーク図である。図示される実施形態において、自然言語処理システム100は、通信ネットワーク140を介して他の様々なシステム110に通信可能に結合される。システム110は、意味解析モデルを構築する際に自然言語処理システム100によって使用されることが可能な訓練例文のコーパス、または語彙データベース(例えば、WordNet(R))を記憶するシステムを含んでよい。システム110は、意味解析モデルを作成する際、または試験する際に自然言語処理システム100と対話するシステム(例えば、遠隔プログラマまたは開発者システム)を含んでよい。自然言語処理システム100はまた、少なくとも1つのエンド・ユーザ・デバイス120と通信可能に結合されてもよい。エンド・ユーザ・デバイス120は、ユーザから自然言語入力を受け取る1つまたは複数のアプリケーションを含む任意のタイプの電子デバイスであってよい。例えば、エンド・ユーザ・デバイス120は、口頭のダイアログを介してユーザとやりとりする組み込まれた認識エージェントを有するスマートフォンであってよい。自然言語処理システム100は、エンド・ユーザ・デバイス120とは別個の、遠隔のシステムとして示されるものの、様々な実施形態において、自然言語処理システム100は、エンド・ユーザ・デバイス120の一部として、または別のシステムの一部として組み込まれてよい。
本明細書の前段で述べられる「通信可能に結合された」という術語は、通信リンクを介してデータを送信すること、または受信すること、あるいはその両方ができることを意味する。また、いくつかの実施形態において、通信リンクは、システムの様々な構成要素の間の内部通信、またはキーボードもしくはディスプレイ・デバイスなどの外部入出力デバイスを相手にした通信、あるいはその組合せを包含してもよい。さらに、通信リンクは、有線リンクと無線リンクの両方を含んでよく、直接リンクであってよく、あるいはルータ、ファイアウォール、サーバ、およびスイッチなどの、ただし、以上には限定されない1つまたは複数のネットワーク・デバイスを通じた複数のリンクを備えてよい。ネットワーク・デバイスは、様々なタイプのネットワーク上に配置されてよい。
特に明記しない限り、データおよびコンピュータ実行可能命令の処理、取出し、および記憶について述べていることのすべては、電子デバイス上でローカルで実行されてよく、または遠隔ネットワーク・デバイス上で実行されてよく、あるいはその両方で実行されてよい。例えば、データは、ローカル・デバイスのデータ記憶構成要素上から取り出されてよく、もしくはその上に記憶されてよく、または遠隔データベースもしくは他のデータ記憶システムの上から取り出されてよく、もしくはその上に記憶されてよく、あるいはその組合せから取り出されてよく、もしくはその組合せの上に記憶されてよい。
本明細書において使用されるネットワーク140などのネットワークは、情報を交換すること、またはリソースを共有すること、あるいはその両方を可能にする通信リンクを介して一緒にされた電子デバイスのシステムを意味する。ネットワークの非限定的な例は、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、およびメトロポリタン・エリア・ネットワーク(MAN)を含む。ネットワークは、インターネットなどの1つもしくは複数のプライベート・ネットワークまたはパブリック・ネットワーク、あるいはその両方を含んでよい。ネットワークは、任意のタイプの通信標準または通信プロトコル、あるいはその両方を使用してよい。
図2は、様々な実施形態による自然言語処理システム100の概略図である。説明される実施形態において、自然言語処理システム100は、プロキシ作成モジュール210と、訓練例作成モジュール220と、特徴抽出モジュール230と、意味解析モデル訓練モジュール240と、ユーザ入力処理モジュール250とを含む。
本明細書において述べられるモジュールは、ソフトウェア構成要素またはハードウェア構成要素、あるいはその両方から成ってよい。ソフトウェア構成要素は、データ・アクセス・オブジェクト、サービス構成要素、ユーザ・インターフェース構成要素、アプリケーション・プログラミング・インターフェース(API)構成要素、および他のコンピュータ実行可能命令を含んでよいが、以上には限定されない。ハードウェア構成要素は、電気回路、1つまたは複数のプロセッサ、およびメモリなどの1つまたは複数のデータ記憶構成要素を含んでよいが、以上には限定されない。メモリは、データおよびコンピュータ実行可能命令を記憶する揮発性メモリまたは不揮発性メモリであってよい。コンピュータ実行可能命令は、機械コード、アセンブリ・コード、および任意のプログラミング言語で書かれた高レベル・プログラミング・コードを含むが、以上には限定されない任意の形態であってよい。モジュールは、1つもしくは複数のタスクを実行する1つまたは複数の命令を実行すべくデータを使用するように構成されてよい。
一実施形態において、プロキシ作成モジュール210は、プロキシ・タグの作成を可能にするように構成される。本明細書において述べられるプロキシ・タグは、表層形異形のセットを包含する識別子である。いくつかの実施形態において、識別子は、表層形異形のセットに対応する名前、ラベル、および/または識別番号を有してよい。いくつかの実施形態において、プロキシ・タグは、それがプロキシ・タグであることを示す少なくとも1つの記号によって先行されてよく、そのような記号で終わってよく、またはそのような記号を含んでよい。例えば、一実施形態において、@symbolが、それがプロキシ・タグであることを示す名前付きの識別子に先行してよい。非限定的な例として、@colorsが、様々な色のセットを包含するプロキシ・タグであってよく、または@citiesInTexasが、テキサス州における都市の名前のセットを包含してよい。様々な実施形態において、プロキシ・タグは、句を含む表層形語彙異形のセットを有する句プロキシ・タグであってよい。例えば、@howManyが、{the number of, number of, how many, the amount of, amount of, the total number of, total number of}などの表層形語彙異形のセットを有する句プロキシ・タグであってよい。いくつかの実施形態において、プロキシ・タグは、任意の恣意的な内部文法/構成構造を有する表層形語彙異形をキャプチャする。例えば、様々な実施形態において、表層形語彙異形は、ファジイな/不正確なマッチングを可能にする表層形語彙異形または同音異義語のつづり間違いを含んでよい。様々な実施形態において、表層形異形は、一貫性のない構造クラスを有してよい。例えば、いくつかの実施形態において、1つのプロキシ・タグに関する異形が、内部の詳細が有効な文法カテゴリを形成するという要件なしに、個々の名詞から名詞句に、名詞句から質問語を足した名詞句に移行することが可能である。
様々な実施形態において、プロキシ・タグ、および対応する表層形語彙異形のセットは、ユーザから入力を受け取ることによって作成され、設定されてよい。一部の実施形態において、プロキシ・タグ、および対応する表層形語彙異形のセットの作成は、自動化されてよい。例えば、いくつかの実施形態において、プロキシ作成モジュール210は、用語集、知識グラフ、もしくは知識ベースから、文書コレクション内の用語発見を通じて、および同義語に関するWordNet(R)もしくは他のリソースなどの語彙データベースから、あるいはコーパスの生の訓練サンプルに存在する繰り返す単語列の自動的抽出によって収集された情報に基づいて、プロキシ・タグ、および対応する表層形語彙異形のセットを自動的に作成してよい。一実施形態において、プロキシ・タグが作成されると、プロキシ・タグは、プロキシ・タグ・データベース212にローカルで、または遠隔で記憶されてよい。一部の実施形態において、自然言語処理システム100は、本明細書において開示される訓練例において使用するために1つまたは複数のソースから以前に作成されたプロキシ・タグを獲得してよい。
一実施形態において、訓練例作成モジュール220は、プロキシ・タグを使用する訓練例の作成を可能にするように構成される。一部の実施形態において、訓練例は、プロキシ・タグと表層形終端トークン(例えば、普通の単語、句読点、その他)との任意の組合せから成ってよい。終端トークンは、意味のあるステートメントの最小単位であり、1つまたは複数の文字から成ることが可能である。終端トークンの例は、名前、単語、数字、ラベル、演算子記号(例えば、+、=、⇒、:、::、;、%)、カンマ、区切り記号を含むが、以上には限定されない。様々な実施形態において、訓練例における終端トークンは、プロキシ・タグに表層形異形として含められる単語を含んでよい。例えば、特定の訓練例が、プロキシ・セットのすべてのインスタンスに関しではなく、一部のインスタンスに関してだけ有効である場合、例えば、いくつかの自動車モデルだけが或る特徴を有することが可能である場合(例えば、「Does the RAV4 come with off−road tires?」)。
一実施形態において、ユーザは、訓練例を手作業で作成する/書くことが可能である。例として、ユーザは、@howMany@Presidents were@occupation?と述べる訓練例を作成してよい。@howManyプロキシ・タグは、前述した表層形語彙異形のセットを含んでよい。@Presidentsプロキシ・タグは、{U.S.Presidents,Presidents, and Presidents of the United States}を含む表層形語彙異形のセットを含んでよい。@occupationプロキシ・タグは、{lawyers, doctors, actors, farmers, Senators, and Congressman}を含む表層形語彙異形のセットを含んでよい。示されるとおり、開示される実施形態による1つの訓練例は、意味解析モデルを構築するための例の数限りない異形を提供してよい。いくつかの実施形態において、訓練例は、完全な文を形成する必要はなく、プロキシ・タグだけしか含まなくてよく(すなわち、終端トークンなし)、または文法的に誤った並びになっていてよい。例えば、一部の実施形態において、自然言語処理システム100は、訓練例、「@howMany@Presidents@occupation」または「@howMany@occupation@Presidents」を使用して、意味解析モデルを構築するために、自然言語処理システム100が、訓練例、「@howMany@Presidents were@occupation?」を使用したとする場合と同一の例を生成するように構成されてよい。プロキシ・タグの作成と同様に、一部の実施形態において、ユーザは、訓練例を作成するためのユーザ・インターフェースまたはアプリケーションと対話してよい。さらに、一部の実施形態において、訓練例は、文または文書、あるいはその両方のコーパスに基づいて自動的に生成されてよい。一部の実施形態において、訓練例が作成されると、訓練例は、訓練例データベース222にローカルで、または遠隔で保存されてよい。
一実施形態において、特徴抽出モジュール230は、開示される訓練例を処理するため、および訓練例から特徴を抽出するための命令を含む。一部の実施形態において、特徴抽出モジュール230は、訓練例のそれぞれを拡張して、文、質問、または句などの他の何らかの形態にしてよい。一部の実施形態において、特徴抽出モジュール230は、完全な文を形成すべく訓練例に用語または単語を追加してよい。他の実施形態において、特徴抽出モジュール230は、訓練例のそれぞれを拡張して別の形態にすることなしに、訓練例を処理してよい。一部の実施形態において、特徴抽出モジュール230は、ステートメントが質問であるかどうか、その質問が人、場所、もしくは物の名前を尋ねているかどうか、その質問がいくつ、電話番号、もしくは温度などの数を尋ねているかどうか、またはその質問がアドレス、案内、指示、その他を尋ねているかどうかを判定してよい。
一実施形態において、訓練例を使用して特徴抽出モジュール230によって生成されたデータは、次に、意味解析モデル訓練モジュール240に入力される。意味解析モデル訓練モジュール240は、入力データに基づいて意味解析モデルを構築するように構成される。意味解析モデルは、異なる句の相対尤度を推定する(すなわち、所与の入力列が所定の句、またはユーザによって定義された意図カテゴリと合致する確率を決定する)のに使用される統計モデルである。いくつかの実施形態において、意味解析モデルは、単語列に対する或る音の統計的合致を含んでよい。また、一部の実施形態において、意味解析モデルは、似通って聞こえる単語および句を区別するための文脈統計解析を提供してもよい。様々な実施形態において、意味解析モデルは、確率論的または文法的、あるいはその両方であってよい。意味解析モデルは、1つまたは複数の意味解析モデル・データベース242にローカルで、または遠隔で記憶されてよい。様々な実施形態において、各訓練例は、入力オブジェクトと所望される出力値から成るペアである。教師あり学習アルゴリズムが、訓練データを解析し、新たな例または知られていない語彙列をマップするために使用されることが可能な、意味解析モデルを生成する。例えば、一部の実施形態において、意味解析モデルは、訓練例からの出力値または出力ラベルを入力特徴組合せとペアにする。最適なシナリオは、意味解析モデルが、見られたことのないインスタンスに関するクラス・ラベルを正しく判定するのに使用されることを可能にする。
一実施形態において、ユーザ入力処理モジュール250は、ユーザ入力の意味または意図を判定すべく、音声コマンド、ダイアログ、またはテキスト入力などのユーザ入力を受け取り、そのユーザ入力を処理するように構成される。例えば、一実施形態において、ユーザ入力処理モジュール250は、音声コマンドをプレーン・テキストに変換し、かつその音声コマンドの意味的趣旨を判定すべく、作成された意味解析モデルを使用するように構成されてよい。いくつかの実施形態において、ユーザ入力処理モジュール250は、ユーザ入力に対する出力または応答を決定するため、およびその出力または応答を生成するためのダイアログ・マネージャを含んでよい。いくつかの実施形態において、ユーザ入力処理モジュール250は、適切な出力または応答を決定する際に1つまたは複数の外部システムと通信してよい。いくつかの実施形態において、ダイアログ・マネージャは、その出力を、ユーザと会話するための発話に変換してよい。
図3〜図5は、様々な実施形態によるプロキシ・タグの作成を例示する概略図である。プロキシ・タグは、プロキシ作成モジュール210を使用して作成され、図2に示されるプロキシ・タグ・データベース212に記憶されてよい。図3は、@ARETHEREと呼ばれる句プロキシ・タグを追加するためのユーザ・インターフェース300を示す。図4は、@HYBRIDと呼ばれる単語プロキシ・タグを追加するためのユーザ・インターフェース310を示す。示される実施形態において、ユーザが、プロキシ・タグに関連付けられた表層形異形のセットに対する「新たな値を追加する」302において単語もしくは句をタイプ入力する、または入力することが可能である。さらに、ユーザ・インターフェース300は、ユーザがプロキシ・タグに追加すべく選択することが可能な事前定義された用語または句304を含んでよい。また、ユーザ・インターフェース300は、ユーザによって手作業でプロキシ・タグに既に追加されている、または前述したとおりシステムによって自動的に追加された用語または句306を示してもよい。いくつかの実施形態において、用語/句306の隣の「X」308が、プロキシ・タグからその用語/句306を削除すべく選択されてよい。
図5は、@CARMODELと呼ばれるカテゴリ・プロキシ・タグを追加するためのユーザ・インターフェース330を示す。図3および図4と同様に、ユーザが、プロキシ・タグに関連付けられた表層形異形のセットに対する「新たな値を追加する」332において単語もしくは句をタイプ入力する、または入力することが可能である。この実施形態において、ユーザ・インターフェース330は、ユーザが、他のプロキシ・タグに関連付けられた表層形異形のセットを追加することを可能にする。例えば、示される実施形態において、プロキシ・タグ、@Avalon 334が、@CARMODELプロキシ・タグに表層形異形、Toyota(R)Avalon(R)およびAvalon(R)を追加すべく選択されてよい。類似したプロキシ・タグ、@Rav4 336が、@CARMODELプロキシ・タグに表層形異形、Toyota(R)Rav4(R)およびRav4(R)を追加すべく選択されてよい。さらに、プロキシ・タグ、@FORD 338が、@CARMODELプロキシ・タグにFord MustangおよびFord F150表層形異形などの様々なFord(R)自動車モデルを追加すべく選択されてよい。このため、図5は、プロキシ・タグが、1つまたは複数の他のプロキシ・タグを使用して構築されてよいことを示す。
図6は、様々な実施形態による意味解析モデルを構築するためのコンピュータによって実施される方法400を示すフローチャートである。コンピュータによって実施される方法400は、自然言語処理システム100などの自然言語処理システムによって実行されてよい。自然言語処理システムは、1つもしくは複数のプロセッサまたは処理構成要素を使用してコンピュータによって実施される方法400に対応する命令またはコードを実行するように構成されてよい。示される実施形態において、コンピュータによって実施される方法400は、ステップ402において、プロキシ・タグを作成すること、およびプロキシ・タグのそれぞれに表層形異形のセットを設定することから始まる。様々な実施形態において、各プロキシ・タグは、表層形異形のセットに関する名前または識別子(ID)を含む。前述したとおり、プロキシ・タグは、ユーザによって作成されることが可能であり、または、文書もしくは文のコーパス、用語集、知識グラフもしくは知識ベース、語彙データベース、または他のリソースに対してテキスト解析または用語発見を実行することなどによって、自動的に作成されることが可能であり、あるいはその両方で作成されることが可能である。
コンピュータによって実施される方法400は、ステップ404において、1つまたは複数のプロキシ・タグを含む訓練例を作成する。様々な実施形態において、訓練例は、終端トークンとプロキシ・タグとの組合せを含む。一部の実施形態において、訓練例は、プロキシ・タグだけしか含まなくてよい。いくつかの実施形態において、訓練例の作成は、自動化されてよく、またはユーザによって手作業で作成されてよい。様々な実施形態において、訓練例は、完全な句も、完全な文も形成する必要がない。
様々な実施形態において、訓練例が作成されると、コンピュータによって実施される方法400は、オプションとして、ステップ406において、前述したとおり、様々な特徴抽出データを生成すべく訓練例を使用して特徴抽出を実行してよい。例えば、いくつかの実施形態において、特徴抽出プロセスは、解析を実行すること、キーワードを生成すること、ファジイな/不正確な合致(例えば、つづりの間違った単語)を判定すること、および訓練例の発話部分タグ付けを実行することが可能である。コンピュータによって実施される方法400は、ステップ408において、意味解析モデルを構築すべく訓練例または特徴抽出データ、あるいはその両方を使用する。例えば、一実施形態において、コンピュータによって実施される方法400は、訓練例からの出力ラベルを特徴組合せとペアにするように構成されてよい。意味解析モデルは、異なる句が入力句と合致する統計的尤度を決定すべく、または入力句と合致する文の最良の意図カテゴリを判定すべく使用される。また、様々な実施形態において、意味解析モデルは、句のトーンを判定する(例えば、肯定的、否定的、または中立として)のに使用されてもよい。開示される実施形態は、任意の言語で意味解析モデルを構築するのに使用されてよい。
図7は、様々な実施形態による意味解析モデルを試験するためのコンピュータによって実施される方法500を示すフローチャートである。コンピュータによって実施される方法500は、1つもしくは複数のプロセッサまたは処理構成要素を使用してコンピュータによって実施される方法500に対応する命令またはコードを実行することによって、自然言語処理システム100などの自然言語処理システムによって実行されてよい。図示される実施形態において、コンピュータによって実施される方法500は、ステップ502において、入力として語彙列を受け取ることから始まる。語彙列は、キーワードの組合せ、完全な文、質問、または文字の他の任意の列であってよい。語彙列は、口頭のダイアログ、テキスト入力、またはその組合せとして受け取られてよい。別のオプションの特徴として、一部の実施形態において、コンピュータによって実施される方法500は、プロキシ・タグを語彙列入力の一部として受け取るように構成されてよい。例えば、一部の実施形態において、ユーザは、「What@CarModel is best rated」を語彙列として入力してよい。
ステップ504において、コンピュータによって実施される方法500は、プロキシ・タグの表層形異形においてリストされている単語列に関して語彙列に対してプロキシ解析を実行するように構成される。例えば、語彙列における用語のうちの1つがToyota(R)である場合、プロキシ解析は、その語彙列がプロキシ・タグ、@CarModelsを含む可能性があると判定してよい。様々な実施形態において、プロキシ解析は、表層形異形または同音異義語のつづりの間違ったバージョンに関してなど、不正確な合致を判定するように構成されてよい。いくつかの実施形態において、プロキシ解析は、単語列がプロキシ・タグのうちの複数の表層形異形においてリストされている場合、語彙列の周囲の単語文脈に基づいてプロキシ・タグを決定するように構成されてよい。一実施形態において、プロキシ・タグについてのブール特徴(boolean feature)が、プロキシ解析が語彙列においてそのプロキシ・タグの表層形異形に対する合致を見出した場合、真に設定される。また、プロキシ解析が語彙列におけるプロキシ・タグの表層形異形に対する合致を見出す場合を追跡する他の形態が、開示される実施形態により使用されてもよい。
一実施形態において、ステップ506において、コンピュータによって実施される方法500は、プロキシ解析に基づいて語彙列を変換するように構成される。一実施形態において、コンピュータによって実施される方法500は、語彙列における1つまたは複数の単語をプロキシ・タグで置き換えることによって、基本語彙列を、プロキシ・タグを含む形態に変換する。例えば、語彙列が「Do Honda Civics have a high resell value?」である場合、コンピュータによって実施される方法500は、その語彙列を「Do @CarModel have a high resell value.」に変換してよい。
ステップ508において、コンピュータによって実施される方法500は、意味解析モデルを使用して語彙列の意味解析を生成するように構成される。例えば、一実施形態において、語彙列がプロキシ形態に変換されると、コンピュータによって実施される方法500は、その語彙列の意味解析を生成すべく、意味解析モデル、ならびにプロキシ・タグに関連付けられた様々な語彙形態を使用する。いくつかの実施形態において、コンピュータによって実施される方法500は、意味解析モデル、ならびに可能なカテゴリのそれぞれに関連付けられた信頼度スコアに基づいて、可能な意図カテゴリのリストを生成してよい。
オプションのステップ510として、一部の実施形態において、コンピュータによって実施される方法500は、語彙列に対する応答を決定し、ユーザにその応答を提供するように構成される。例えば、語彙列が判定されると、コンピュータによって実施される方法500は、その語彙列に対する答えを求めて1つもしくは複数のシステムまたはデータベースにクエリを行ってよい。次に、コンピュータによって実施される方法500は、ユーザに口頭の応答を提供すべく、テキストを使用する答えを発話に変換してよい。
図8は、或る実施形態による自然言語処理システム100の様々なハードウェア構成要素のブロック図である。図8は、自然言語処理システム100のいくつかの基本的な構成要素を示すものの、開示される実施形態は、IBM(R)Power(R)750サーバ、あるいはコアごとに4つのスレッドを有する3.5GHz POWER7(R)8コア・プロセッサをそれぞれが使用する、90のIBM(R)Power(R)750サーバのクラスタを使用するIBM Watson(TM)スーパコンピュータなどの、非常に高度なシステムにおいて実施されることも可能である。また、自然言語処理システム100のいくつかの実施形態では、図8に記載されたすべてのハードウェア構成要素を含まなくてもよい。同様に、自然言語処理システム100のいくつかの実施形態は、図8に示されないさらなるハードウェア構成要素を含んでよい。IBM(R)、Power(R)、Watson(R)、およびPOWER7(R)は、世界中の多くの管轄区域において登録された、インターナショナル・ビジネス・マシーンズ・コーポレーション(R)の商標である。
図示される例において、自然言語処理システム100は、ノースブリッジおよびメモリ・コントローラ・ハブ(NB/MCH)606と、サウス・ブリッジおよび入出力(I/O)コントローラ・ハブ(SB/ICH)610とを含むハブ・アーキテクチャを使用する。プロセッサ602、メイン・メモリ604、およびグラフィックス・プロセッサ608が、NB/MCH606に接続される。グラフィックス・プロセッサ608は、アクセラレーテッド・グラフィックス・ポート(AGP)を通じてNB/MCH606に接続されてよい。バス632またはバス634などのコンピュータ・バスが、ファブリックもしくはアーキテクチャにアタッチされた様々な構成要素またはデバイスの間でデータの転送を可能にする任意のタイプの通信ファブリックまたは通信アーキテクチャを使用して実装されてよい。
図示される例において、ネットワーク・アダプタ616がSB/ICH610に接続される。オーディオ・アダプタ630、キーボードおよびマウス・アダプタ622、モデム624、読取り専用メモリ(ROM)626、ハード・ディスク・ドライブ(HDD)612、コンパクトディスク読取り専用メモリ(CD−ROM)ドライブ614、ユニバーサル・シリアル・バス(USB)ポートおよびその他の通信ポート618、ならびにペリフェラル・コンポーネント・インターコネクト/ペリフェラル・コンポーネント・インターコネクト・エクスプレス(PCI/PCIe)デバイス620が、バス632およびバス634を通じてSB/ICH610に接続される。PCI/PCIeデバイス620は、例えば、ノートブック・コンピュータのためのイーサネット・アダプタ、アドイン・カード、およびPCカードを含んでよい。PCIは、カード・バス・コントローラを使用する一方で、PCIeは、それを使用しない。ROM626は、例えば、フラッシュ基本入出力システム(BIOS)であってよい。モデム624またはネットワーク・アダプタ616は、ネットワークを介してデータを送受信するのに使用されてよい。
HDD612およびCD−ROMドライブ614は、バス634を通じてSB/ICH610に接続される。HDD612およびCD−ROMドライブ614は、例えば、インテグレーティド・ドライブ・エレクトロニクス(IDE)またはシリアル・アドバンスト・テクノロジ・アタッチメント(SATA)インターフェースを使用してよい。スーパ入出力(SIO)デバイス628が、SB/ICH610に接続されてよい。一部の実施形態において、HDD612が、ソリッドステート・ドライブ(SSD)を含むが、これには限定されない他の形態のデータ・ストレージ・デバイスによって置き換えられてよい。
オペレーティング・システムが、プロセッサ602上で実行される。オペレーティング・システムは、図8における自然言語処理システム100内の様々な構成要素を調整し、それらの構成要素の制御を提供する。オペレーティング・システムの非限定的な例は、アドバンスト・インタラクティブ・エグゼクティブ(AIX(R))オペレーティング・システムまたはLinux(R)オペレーティング・システムを含む。様々なアプリケーションおよびサービスは、オペレーティング・システムと連携して実行されてよい。例えば、一実施形態において、自然言語処理および機械学習を組み込んだ情報取出しのために設計されたインターナショナル・ビジネス・マシーンズ・コーポレーション(IBM)(R)DeepQAソフトウェアが、自然言語処理システム100上で実行される。
自然言語処理システム100は、単一のプロセッサ602を含んでよく、または複数のプロセッサ602を含んでよい。さらに、プロセッサ602は、複数のコアを有してよい。例えば、一実施形態において、自然言語処理システム100は、数百または数千のプロセッサ・コアを含む多数のプロセッサ602を使用してよい。一部の実施形態において、プロセッサ602は、協調させられた計算のセットを並行して実行するように構成されてよい。
オペレーティング・システム、アプリケーション、および他のデータのための命令は、1つまたは複数のHDD612などのストレージ・デバイス上に配置され、プロセッサ602によって実行されるようにメイン・メモリ604にロードされてよい。いくつかの実施形態において、HDD612は、プロキシ・タグ、終端トークンとプロキシ・タグの組合せを備える訓練例、および訓練例を使用して構築される意味解析モデルを記憶してよい。一部の実施形態において、さらなる命令またはデータが、1つまたは複数の外部デバイス上に記憶されてよい。本発明の例示的な実施形態のためのプロセスは、例えば、メイン・メモリ604、ROM626などのメモリに、または1つもしくは複数の周辺デバイス612および614に配置されることが可能な、コンピュータ使用可能プログラム・コードを使用してプロセッサ602によって実行されてよい。
本発明は、統合の任意の可能な技術的詳細レベルにおけるシステム、方法、またはコンピュータ・プログラム製品、あるいはその組合せであってよい。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を有する1つの(または複数の)コンピュータ可読記憶媒体を含んでよい。
コンピュータ可読記憶媒体は、命令実行デバイスによって使用されるように命令を保持すること、および記憶することができる有形のデバイスであることが可能である。コンピュータ可読記憶媒体は、例えば、電子ストレージ・デバイス、磁気ストレージ・デバイス、光ストレージ・デバイス、電磁ストレージ・デバイス、半導体ストレージ・デバイス、または以上の任意の適切な組合せであってよいが、以上には限定されない。コンピュータ可読記憶媒体のより具体的な例の網羅的でないリストは、以下、すなわち、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM)、読取り専用メモリ(ROM)、消去可能なプログラマブル読取り専用メモリ(EPROMもしくはフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM)、ポータブル・コンパクト・ディスク読取り専用メモリ(CD−ROM)、デジタル・バーサタイル・ディスク(DVD)、メモリ・スティック、フロッピ・ディスク、命令が記録されているパンチカードもしくは溝の中の***構造などの機械的に符号化されたデバイス、および以上の任意の適切な組合せを含む。本明細書において使用されるコンピュータ可読記憶媒体は、電波もしくは他の自由に伝播する電磁波、導波路もしくは他の伝達媒体を介して伝播する電磁波(例えば、光ファイバ・ケーブルを通過する光パルス)、または配線を介して伝送される電気信号などの一過性の信号そのものであると解釈されるべきではない。
本明細書において説明されるコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピューティング/処理デバイスに、あるいはネットワーク、例えば、インターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、もしくは無線ネットワーク、またはその組合せを介して外部コンピュータまたは外部ストレージ・デバイスにダウンロードされることが可能である。ネットワークは、銅伝送ケーブル、伝送光ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、またはエッジ・サーバ、あるいはその組合せを備えてよい。各コンピューティング/処理デバイスにおけるネットワーク・アダプタまたはネットワーク・インターフェースが、ネットワークからコンピュータ可読プログラム命令を受信し、それぞれのコンピューティング/処理デバイス内のコンピュータ可読記憶媒体に記憶されるようにコンピュータ可読プログラム命令を転送する。
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路のための構成データ、あるいはSmalltalk(R)、C++、もしくはそれに類似したものなどのオブジェクト指向プログラミング言語、および「C」プログラミング言語もしくはそれに類似したプログラミング言語などの従来の手続き型プログラミング言語を含め、1つもしくは複数のプログラミング言語の任意の組合せで書かれたソース・コードまたはオブジェクト・コードのいずれかであってよい。コンピュータ可読プログラム命令は、全体がユーザのコンピュータ上で実行されても、一部がユーザのコンピュータ上で実行されても、スタンドアロンのソフトウェア・パッケージとして実行されても、一部がユーザのコンピュータ上で、かつ一部が遠隔コンピュータ上で実行されても、または全体が遠隔コンピュータもしくは遠隔サーバの上で実行されてもよい。全体が遠隔コンピュータもしくは遠隔サーバの上で実行されるシナリオにおいて、遠隔コンピュータは、ローカル・エリア・ネットワーク(LAN)もしくはワイド・エリア・ネットワーク(WAN)を含む任意のタイプのネットワークを介してユーザのコンピュータに接続されてよく、または接続は、外部コンピュータに対して行われてもよい(例えば、インターネット・サービス・プロバイダを使用してインターネットを介して)。一部の実施形態において、例えば、プログラマブル・ロジック回路、フィールド・プログラマブル・ゲート・アレイ(FPGA)、またはプログラマブル・ロジック・アレイ(PLA)を含む電子回路が、本発明の態様を実行するために、電子回路をカスタマイズするようにコンピュータ可読プログラム命令の状態情報を利用することによってコンピュータ可読プログラム命令を実行することが可能である。
本発明の態様は、本発明の実施形態による方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図またはブロック図あるいはその両方を参照して本明細書において説明される。フローチャート図またはブロック図あるいはその両方の各ブロック、ならびにフローチャート図またはブロック図あるいはその両方におけるブロックの組合せは、コンピュータ可読プログラム命令によって実施されることが可能であることが理解されよう。
これらのコンピュータ可読プログラム命令は、そのコンピュータまたは他のプログラマブル・データ処理装置のプロセッサを介して実行されるそれらの命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックに指定される機能/動作を実施する手段を作り出すべく、汎用コンピュータ、専用コンピュータ、または他のプログラマブル・データ処理装置のプロセッサに提供されてマシンを作り出すものであってよい。また、これらのコンピュータ可読プログラム命令は、命令が記憶されているコンピュータ可読記憶媒体が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックに指定される機能/動作の態様を実施する命令を含む製造品を備えるべく、コンピュータ可読記憶媒体に記憶され、コンピュータ、プログラマブル・データ処理装置、または他のデバイス、あるいはその組合せに特定の様態で機能するように指示することができるものであってもよい。
また、コンピュータ可読プログラム命令は、コンピュータ、他のプログラマブル装置、または他のデバイス上で実行される命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックに指定される機能/動作を実施するように、コンピュータによって実施されるプロセスを作り出すべく、コンピュータ、他のプログラマブル・データ処理装置、または他のデバイスにロードされ、コンピュータ上、他のプログラマブル装置上、または他のデバイス上で一連の動作ステップを実行させるものであってもよい。
図におけるフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータ・プログラム製品の可能な実装形態のアーキテクチャ、機能、および動作を例示する。これに関して、フローチャートまたはブロック図における各ブロックは、指定された論理機能を実施するための1つまたは複数の実行可能命令を備える、命令のモジュール、セグメント、または部分を表すことが可能である。一部の代替の実装形態において、ブロックに記載される機能は、図に記載される順序を外れて生じてよい。例えば、連続して示される2つのブロックが、実際には、実質的に同時に実行されてよく、またはそれらのブロックが、ときとして、関与する機能に依存して、逆の順序で実行されてよい。また、ブロック図またはフローチャート図あるいはその両方の各ブロック、ならびにブロック図またはフローチャート図あるいはその両方におけるブロックの組合せは、指定された機能もしくは動作を実行する、または専用ハードウェア命令とコンピュータ命令の組合せを実行する専用ハードウェア・ベースのシステムによって実施されることが可能であることにも留意されたい。
本明細書において述べられるデータベースまたは知識ベースという術語は、構造化データまたは非構造化データ、あるいはその両方の集まりとして定義される。単数形で述べられるものの、データベースは、1つまたは複数のデータベースを含んでよく、システム上にローカルで記憶されてよく、あるいはローカル・ネットワークまたは遠隔ネットワークを介してシステムに動作上、結合されてよい。さらに、或るデータまたは命令を処理することは、1つもしくは複数のシステムまたはサーバによってネットワークを介して実行されてよく、データまたは命令の処理の結果は、ローカル・デバイスに送信されてよい。
以上のことから、開示される実施形態が現行の技術に優る大きな利点を有することが明白であろう。例として、開示される実施形態は、代用可能性を表現する文法規則がまったく要求されることなく、訓練例がモジュール/交換可能部分に細分されることを可能にする。さらに、開示される実施形態は、等価の異形が分類アルゴリズムにおいて認識されることが可能であるように、訓練/試験アルゴリズムを変形する。開示される実施形態の利点は、厳密な句が作成されることも、リストアップされることも要求されないために意味解析モデルがより速く開発されることを含む。代わりに、プロキシ・タグが単に変形されてよい。例えば、新たな自動車モデルが作成された場合、開示される実施形態は、その自動車モデルと関係する可能性がある1つ残らずすべてのステートメントまたは質問に関する厳密な句が、意味解析モデルを構築するための訓練例コーパスの一部として作成されることは要求しない。代わりに、新たな自動車モデルは、自動車モデルに関連付けられた1つまたは複数のプロキシ・タグに単に挿入されてよい。開示される実施形態は、次に、意味解析モデルを構築するときに、可能なすべての文を生成する必要なしに、プロキシ・タグを自動拡張してよい。開示される実施形態の別の利点は、意味解析モデルを新たな言語に迅速に適応させる可能性を含む。プロキシ・タグを除外して、訓練例における終端単語列だけを翻訳し、すべての生の訓練サンプルを翻訳する必要なしに、プロキシ・タグのコンテンツを最終的に翻訳する。
本発明の様々な実施形態の説明は、例示の目的で提示されてきたが、網羅的であることも、開示される実施形態に限定されることも意図していない。説明される実施形態の範囲を逸脱することなく、多くの変形形態および変更形態が、当業者には明白となろう。例えば、前段で開示される実施形態は、英語で使用されるように説明されるが、開示される実施形態は、任意の言語のために使用されてよい。
さらに、本明細書において説明される方法のステップは、適宜、任意の適切な順序で、または同時に実行されてよい。本明細書において使用される術語は、実施形態の原理、実際的な応用、または市場で見られる技術に優る技術的改良を最もよく説明するように、あるいは本明細書において開示される実施形態を他の当業者が理解するのを可能にするように選択されている。

Claims (29)

  1. 自然言語処理システムのためのモデルを構築するためのコンピュータによって実施される方法であって、
    表層形異形のセットを備えるプロキシ・タグを作成すること、
    終端トークンと前記プロキシ・タグのうちの少なくとも1つとの組合せを備える訓練例を作成すること、および
    前記訓練例を使用して意味解析モデルを構築すること
    を含む、コンピュータによって実施される方法。
  2. 前記表層形異形のセットが、句である表層形異形を備える、請求項1に記載のコンピュータによって実施される方法。
  3. 前記表層形異形のセットが、一貫性のない構造クラスを有する表層形異形を備える、請求項1に記載のコンピュータによって実施される方法。
  4. 前記プロキシ・タグが、他のプロキシ・タグを備える、請求項1ないし3のいずれかに記載のコンピュータによって実施される方法。
  5. 前記プロキシ・タグに対する前記表層形異形のセットが、語彙データベースを使用して自動的に設定される、請求項1ないし4のいずれかに記載のコンピュータによって実施される方法。
  6. 入力として語彙列を受け取ること、
    前記プロキシ・タグの前記表層形異形のセットにおいてリストされている単語列に関して前記語彙列に対してプロキシ解析を実行すること、
    前記プロキシ解析に基づいて前記語彙列を変換すること、および
    前記意味解析モデルを使用して前記語彙列の意味解析を生成すること
    をさらに含む、請求項1ないし5のいずれかに記載のコンピュータによって実施される方法。
  7. 前記単語列が前記プロキシ・タグのうちの複数の前記表層形異形のセットにおいてリストされている場合に、前記プロキシ解析が、前記語彙列の周囲の単語文脈に基づいて前記プロキシ・タグを決定することを含む、請求項6に記載のコンピュータによって実施される方法。
  8. 前記プロキシ解析に基づいて前記語彙列を変換することが、前記語彙列における単語を前記プロキシ・タグで置き換えることを含む、請求項6または7に記載のコンピュータによって実施される方法。
  9. 前記意味解析モデルを使用して前記語彙列の前記意味解析に関する信頼度スコアを決定することをさらに含む請求項6ないし8のいずれかに記載のコンピュータによって実施される方法。
  10. 前記訓練例の特徴を抽出するために前記訓練例を使用して特徴抽出を実行することをさらに含み、
    前記訓練例を使用して前記意味解析モデルを構築することが、入力データとして前記訓練例の前記特徴を使用して前記意味解析モデルを構築することを含む、請求項1ないし9のいずれかに記載のコンピュータによって実施される方法。
  11. 前記意味解析モデルが、知られていない語彙列の意味解析を生成するために前記訓練例からの出力ラベルを特徴組合せとペアにする、請求項10に記載のコンピュータによって実施される方法。
  12. 前記意味解析モデルを使用して前記知られていない語彙列の前記意味解析に関する信頼度スコアを決定することをさらに含む、請求項11に記載のコンピュータによって実施される方法。
  13. 前記プロキシ・タグの前記表層形異形のセットにおいてリストされている単語列に関して、前記知られていない語彙列に対してプロキシ解析を実行することをさらに含む、請求項12に記載のコンピュータによって実施される方法。
  14. 自然言語処理システムのためのモデルを構築するためのシステムであって、
    コンピュータ実行可能命令を記憶するように構成されたメモリと、
    プロセッサと
    を備え、前記プロセッサが、
    表層形異形のセットを備えるプロキシ・タグを作成すること、
    終端トークンと前記プロキシ・タグのうちの少なくとも1つとの組合せを備える訓練例を作成すること、および
    前記訓練例を使用して意味解析モデルを構築すること
    を行うべく前記コンピュータ実行可能命令を実行するように構成されている、システム。
  15. 前記表層形異形のセットが、句である表層形異形を備える、請求項14に記載のシステム。
  16. 前記表層形異形のセットが、一貫性のない構造クラスを有する表層形異形を備える、請求項14に記載のシステム。
  17. 前記プロキシ・タグが、他のプロキシ・タグを備える、請求項14ないし16のいずれかに記載のシステム。
  18. 前記プロキシ・タグに対する前記表層形異形のセットが、語彙データベースを使用して自動的に設定される、請求項14ないし17のいずれかに記載のシステム。
  19. 前記プロセッサが、
    入力として語彙列を受け取ること、
    前記プロキシ・タグの前記表層形異形のセットにおいてリストされている単語列に関して前記語彙列に対してプロキシ解析を実行すること、
    前記プロキシ解析に基づいて前記語彙列を変換すること、および
    前記意味解析モデルを使用して前記語彙列の意味解析を生成すること
    を行うべく前記コンピュータ実行可能命令を実行するようにさらに構成される、請求項14ないし18のいずれかに記載のシステム。
  20. 前記プロセッサが、前記単語列が前記プロキシ・タグのうちの複数の前記表層形異形のセットにおいてリストされている場合、前記語彙列の周囲の単語文脈に基づいて前記プロキシ・タグを決定することによってプロキシ解析を実行することを行うべく前記コンピュータ実行可能命令を実行するようにさらに構成される、請求項19に記載のシステム。
  21. 前記プロセッサが、前記語彙列における単語を前記プロキシ・タグで置き換えて、前記プロキシ解析に基づいて前記語彙列を変換することを行うべく前記コンピュータ実行可能命令を実行するようにさらに構成される、請求項19または20に記載のシステム。
  22. 前記プロセッサが、前記意味解析モデルを使用して前記語彙列の前記意味解析に関する信頼度スコアを決定することを行うべく前記コンピュータ実行可能命令を実行するようにさらに構成される、請求項19ないし21のいずれかに記載のシステム。
  23. 前記プロセッサが、
    前記訓練例の特徴を抽出するために前記訓練例を使用して特徴抽出を実行すること、および
    入力データとして前記訓練例の前記特徴を使用することによって前記意味解析モデルを構築すること
    を行うべく前記コンピュータ実行可能命令を実行するようにさらに構成される、請求項14ないし22のいずれかに記載のシステム。
  24. 前記意味解析モデルが、知られていない語彙列の意味解析を生成するために前記訓練例からの出力ラベルを特徴組合せとペアにする、請求項23に記載のシステム。
  25. 前記プロセッサが、
    前記意味解析モデルを使用して前記知られていない語彙列の前記意味解析に関する信頼度スコアを決定することを行うべく前記コンピュータ実行可能命令を実行するようにさらに構成される、請求項24に記載のシステム。
  26. 前記プロセッサが、
    前記プロキシ・タグの前記表層形異形のセットにおいてリストされている単語列に関して、前記知られていない語彙列に対してプロキシ解析を実行することを行うべく前記コンピュータ実行可能命令を実行するようにさらに構成される、請求項25に記載のシステム。
  27. 自然言語処理システムのためのモデルを構築するためのコンピュータ・プログラム製品であって、
    処理回路によって可読であり、かつ請求項1ないし13のいずれかに記載の方法を実行するために前記処理回路によって実行されるように命令を記憶するコンピュータ可読記憶媒体を備えるコンピュータ・プログラム製品。
  28. コンピュータ可読媒体上に記憶され、かつデジタル・コンピュータの内部メモリにロード可能なコンピュータ・プログラムであって、前記プログラムがコンピュータ上で実行されたとき、請求項1ないし13のいずれかに記載の方法を実行するためのソフトウェア・コード部分を備える、コンピュータ・プログラム。
  29. 自然言語処理システムのためのモデルを構築するためのコンピュータによって実施される方法であって、
    表層形異形のセットを備えるプロキシ・タグを作成すること、
    前記プロキシ・タグのうちの少なくとも1つを備える訓練例を作成すること、および
    前記訓練例を使用して意味解析モデルを構築すること
    を含むコンピュータによって実施される方法。
JP2020518686A 2017-10-10 2018-10-05 意図認識のための抽象化および移植性 Active JP7064274B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/728,962 2017-10-10
US15/728,962 US11138506B2 (en) 2017-10-10 2017-10-10 Abstraction and portability to intent recognition
PCT/IB2018/057745 WO2019073350A1 (en) 2017-10-10 2018-10-05 ABSTRACTION AND PORTABILITY FOR THE RECOGNITION OF INTENT

Publications (3)

Publication Number Publication Date
JP2020537228A true JP2020537228A (ja) 2020-12-17
JP2020537228A5 JP2020537228A5 (ja) 2021-04-22
JP7064274B2 JP7064274B2 (ja) 2022-05-10

Family

ID=65994023

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020518686A Active JP7064274B2 (ja) 2017-10-10 2018-10-05 意図認識のための抽象化および移植性

Country Status (6)

Country Link
US (1) US11138506B2 (ja)
JP (1) JP7064274B2 (ja)
CN (1) CN111194401B (ja)
DE (1) DE112018004140T5 (ja)
GB (1) GB2581705A (ja)
WO (1) WO2019073350A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11848010B1 (en) * 2018-02-09 2023-12-19 Voicebase, Inc. Systems and methods for creating dynamic features for correlation engines
US11188720B2 (en) * 2019-07-18 2021-11-30 International Business Machines Corporation Computing system including virtual agent bot providing semantic topic model-based response
US11593608B2 (en) 2019-10-28 2023-02-28 Paypal, Inc. Systems and methods for predicting and providing automated online chat assistance
CN112651226B (zh) * 2020-09-21 2022-03-29 深圳前海黑顿科技有限公司 基于依存句法树的知识解析***及方法
CN113836304A (zh) * 2021-09-27 2021-12-24 山东亿云信息技术有限公司 一种基于自然语言处理的智能打标签方法及***

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013080406A (ja) * 2011-10-05 2013-05-02 Fujitsu Ltd コンパイル装置、情報処理システム、コンパイル方法、コンパイルプログラム、記録媒体

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3004254B2 (ja) 1998-06-12 2000-01-31 株式会社エイ・ティ・アール音声翻訳通信研究所 統計的シーケンスモデル生成装置、統計的言語モデル生成装置及び音声認識装置
US7392185B2 (en) 1999-11-12 2008-06-24 Phoenix Solutions, Inc. Speech based learning/training system using semantic decoding
US7031908B1 (en) 2000-06-01 2006-04-18 Microsoft Corporation Creating a language model for a language processing system
US7085723B2 (en) 2001-01-12 2006-08-01 International Business Machines Corporation System and method for determining utterance context in a multi-context speech application
US6941268B2 (en) 2001-06-21 2005-09-06 Tellme Networks, Inc. Handling of speech recognition in a declarative markup language
US7761858B2 (en) 2004-04-23 2010-07-20 Microsoft Corporation Semantic programming language
JPWO2007069512A1 (ja) 2005-12-15 2009-05-21 シャープ株式会社 情報処理装置及びプログラム
US20070239444A1 (en) 2006-03-29 2007-10-11 Motorola, Inc. Voice signal perturbation for speech recognition
JP5536518B2 (ja) 2009-04-23 2014-07-02 インターナショナル・ビジネス・マシーンズ・コーポレーション システムの自然言語仕様から当該システム用のシステム・モデル化メタモデル言語モデルを自動的に抽出するための方法、装置及びコンピュータ・
JP5317922B2 (ja) 2009-10-16 2013-10-16 株式会社野村総合研究所 情報抽出ルール作成支援システム
US20140351228A1 (en) 2011-11-28 2014-11-27 Kosuke Yamamoto Dialog system, redundant message removal method and redundant message removal program
US20140079202A1 (en) 2012-09-14 2014-03-20 Zultys, Inc. Method and system for universal internet protocol (ip) phone provisioning

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013080406A (ja) * 2011-10-05 2013-05-02 Fujitsu Ltd コンパイル装置、情報処理システム、コンパイル方法、コンパイルプログラム、記録媒体

Also Published As

Publication number Publication date
GB202006681D0 (en) 2020-06-17
GB2581705A (en) 2020-08-26
US20190108450A1 (en) 2019-04-11
CN111194401B (zh) 2021-09-28
WO2019073350A1 (en) 2019-04-18
DE112018004140T5 (de) 2020-04-23
CN111194401A (zh) 2020-05-22
JP7064274B2 (ja) 2022-05-10
US11138506B2 (en) 2021-10-05

Similar Documents

Publication Publication Date Title
JP7064274B2 (ja) 意図認識のための抽象化および移植性
US9740685B2 (en) Generation of natural language processing model for an information domain
WO2018192269A1 (zh) 计算机模拟人脑学***台
US20170286397A1 (en) Predictive Embeddings
US9361293B2 (en) Using renaming directives to bootstrap industry-specific knowledge and lexical resources
US11164562B2 (en) Entity-level clarification in conversation services
Arora et al. Requirement boilerplates: Transition from manually-enforced to automatically-verifiable natural language patterns
US11443209B2 (en) Method and system for unlabeled data selection using failed case analysis
CN111611810A (zh) 一种多音字读音消歧装置及方法
US10282421B2 (en) Hybrid approach for short form detection and expansion to long forms
US9703773B2 (en) Pattern identification and correction of document misinterpretations in a natural language processing system
US10223349B2 (en) Inducing and applying a subject-targeted context free grammar
Jakupović et al. Formalisation method for the text expressed knowledge
EP3404553A1 (en) Open information extraction method and system for extracting reified ternary relationship
KR102099670B1 (ko) 질의자 의도를 이해하기 위한 구문 규칙 자동생성 장치 및 방법
CN110633456A (zh) 语种识别方法、装置、服务器及存储介质
Lee Natural Language Processing: A Textbook with Python Implementation
US20230111052A1 (en) Self-learning annotations to generate rules to be utilized by rule-based system
CN113312451B (zh) 文本标签确定方法和装置
WO2018060777A1 (en) Method and system for optimizing software testing
Mehta et al. A survey on part-of-speech tagging of Indian languages
Labidi New combined method to improve Arabic POS tagging
Khandare et al. Study of Python libraries for NLP
Dwivedi et al. Overview of Natural Language Processing
Eyno Natural Language Processing and chat-bot implementation

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210309

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210323

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210818

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210824

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211118

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20211125

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: 20220412

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20220413

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220420

R150 Certificate of patent or registration of utility model

Ref document number: 7064274

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150