JP7412060B2 - 自然言語分類のための訓練データの拡張 - Google Patents

自然言語分類のための訓練データの拡張 Download PDF

Info

Publication number
JP7412060B2
JP7412060B2 JP2020561637A JP2020561637A JP7412060B2 JP 7412060 B2 JP7412060 B2 JP 7412060B2 JP 2020561637 A JP2020561637 A JP 2020561637A JP 2020561637 A JP2020561637 A JP 2020561637A JP 7412060 B2 JP7412060 B2 JP 7412060B2
Authority
JP
Japan
Prior art keywords
intent
training data
expressions
specific
natural language
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020561637A
Other languages
English (en)
Other versions
JP2021524079A (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 JP2021524079A publication Critical patent/JP2021524079A/ja
Application granted granted Critical
Publication of JP7412060B2 publication Critical patent/JP7412060B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/226Validation
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、一般に、自然言語処理の分野に関し、より特定的には、自然言語分類器を訓練するための訓練データの開発に関する。
チャットボット、トークボット、インスタント・メッセージングボット、人工会話エンティティなど(「チャットボット」)は、人間及びエンドユーザとの自然言語コミュニケーション、会話、及び対話をシミュレートするように設計されたコンピュータ・ソフトウェア・プログラムである。チャットボットの重要な機能は、エンドユーザからのユーザ入力の表現されたインテント(intent)を理解し、解釈し、判断することを含むことができる。表現されたインテントは、例えば、自由形式のテキストもしくは発話又はその両方を含むものとすることができる。チャットボットは、例えば、ユーザ入力に応答して、意味のある出力、役に立つ出力、又はそうでなければ所望の出力を正しく適切に生成するために、ユーザ入力の表現されたインテントを正しく判断することによって、エンドユーザとの自然言語コミュニケーションをサポートし、容易にすることができる。つまり、チャットボットは、ユーザ入力の表現されたインテントを正しく判断することにより、所望の出力を生成することができる。例えば、“I want to change the password of my system(システムのパスワードを変更したい)”、“I did mistake registering my phone number,I need to correct it(電話番号の登録を間違えたので修正したい)”などの要求に応じて、問い合わせに応答したり、質問に答えたり、情報を提供したりするために、様々な表現されたインテントを十分に判断することができるチャットボットが、幅広いエンドユーザとの自然言語コミュニケーションをサポートし、容易にするのに応用されることがある。そのようなインテントは、エンドユーザによって様々な方法で表現することができる。
チャットボットは、テキスト分類の方法など、表現されたインテントを曖昧化し、理解し、解釈するための自然言語分類器(NLC)を実施することによって、表現されたインテントを判断することができる。NLCは、対応するクラス又は対応する表現のセットに関して表現されたインテントを分類し、カテゴリ化し、又はグループ化するように実施することができる。分類は、信頼スコアによって表される信頼度で実行することができる。チャットボットが表現されたインテントを正しく判断することができるかどうかは、NLCによる分類の精度に依存する場合がある。信頼スコアは、インテントの分類が決定され得る精度又は確実性のレベルを反映している場合があり、それは、表現されたインテントのNLCによる及びNLCの理解と解釈(「自然言語理解」)のレベルと粒度に依存する場合がある。
本発明の1つの態様によると、コンピュータ・システムのチャット・インターフェースと関連付けられた自然言語分類器を訓練するためのコンピュータ実施方法、コンピュータ・システム、及びコンピュータ・プログラム製品が提供される。方法は、インテントに対応する表現の初期セットを含む訓練データセットを受信することを含むことができる。インテントに対応する付加的な表現を生成することができ、ここで、付加的な表現は、インテントに対応する表現の初期セットに基づいて生成される。自然言語分類器は、表現の初期セットと、インテントに対応する付加的な表現とに基づいて訓練することができる。訓練された自然言語分類器は、自然言語分類器が訓練された表現の初期セットと付加的な表現とに基づいて、検出されたクエリによって表現されたインテントを判断するように実施することができる。
本発明の1つの実施形態による、解釈管理システムを示す機能ブロック図である。 本発明の1つの実施形態による、解釈管理システムの1つの態様の動作ステップを示すフローチャートである。 本発明の1つの実施形態による、解釈管理システムの1つの態様の動作ステップを示すフローチャートである。 本発明の1つの実施形態による、クライアント・デバイスもしくは解釈管理デバイス又はその両方を示すブロック図である。 本発明の1つの実施形態による、クラウド・コンピューティング環境を示す。 本発明の1つの実施形態による、抽象化モデル層を示す。
図面は必ずしも縮尺通りではない。図面は単に概略的な表現であり、本発明の特定のパラメータを描くことを意図していない。図面は、本発明の典型的な実施形態のみを示すことを意図している。図面において、同様の番号は同様の要素を表す。
本発明の詳細な実施形態は、種々の形態で具体化され得る特許請求される構造及び方法を説明し、例示するために本明細書で開示されており、それらは、いかなる意味でも網羅的であることを意図したものではなく、開示された実施形態に限定されるものでもない。多くの修正及び変形が、開示された実施形態の範囲及び趣旨から逸脱することなく、当業者には明らかであろう。本明細書で使用される用語は、1つ又は複数の実施形態の原理、実際の用途、又は現在の技術に対する技術的改善を最も良く説明するために、又は当業者が本明細書に開示された実施形態を理解できるようにするために選択されたものである。記載されているように、本発明の実施形態を不必要に不明瞭にすることを避けるために、周知の特徴及び技術の詳細が省略される場合がある。
「一実施形態」、「1つの実施形態」、「例示的な実施形態」などへの本明細書における言及は、記載された実施形態が、1つ又は複数の特定の特徴、構造、又は特性を含み得ることを示すが、そのような特定の特徴、構造、又は特性は、本明細書に開示された本発明の1つ1つの実施形態に共通であっても又は共通でなくてもよいことを理解されたい。さらに、そのようなフレーズは、必ずしもいずれか1つの特定の実施形態それ自体を指すものではない。従って、1つ又は複数の特定の特徴、構造、又は特性が、1つの実施形態と関連して記載されている場合、明示的に記載されているかどうかに関係なく、適用可能な場合には、他の実施形態に関連したそのような1つ又は複数の特徴、構造、又は特性に影響を与えることは、当業者の知識の範囲内であると考えられる。
チャットボットの性能と有効性は、チャットボットが様々な表現されたインテントを判断する(すなわち、NLCを介して)ことができる自然言語理解に依存する。理解及び解釈のレベルをより高く、より粒度の細かいものにすることによって、より正確な判断を行うことが可能になり、エンドユーザとの意味のあるコミュニケーションにおいて、チャットボットの性能が向上する可能性がある。
例えば、“I want to change the password of my system”、“I forgot the password of my system,can you send it to me?(システムのパスワードを忘れてしまったのですが、それを送ってもらえますか?)”及び“I lost the password.How can I recover it?(パスワードを紛失しました。どうすれば復元できますか?)”といった要求、フレーズ、又は質問を含むエンドユーザからのユーザ入力は、わずかに異なる要件を持つ、類似しているが明確なインテントを表現している。表現されたインテントを限定的に理解したり粗く解釈したりすると、チャットボットの有用性及び実用性が低下し、チャットボットは、インテントの各々を「パスワード」に関連するものとしか判断することができず、これにより、エンドユーザとの自然言語コミュニケーションをサポートし、容易にするチャットボットの能力が低下することがある。従って、ユーザ入力に関連してチャットボットによって生成される出力は、あまり意味がなく、有用で望ましいものではないことがあり、また、互換性のある表現されたインテントについては部分的にしか関連しない場合がある。表現されたインテントを限定的に理解しないこと、又はよりきめ細かく解釈することで、チャットボットの有用性及び実用性が向上し、チャットボットが、インテントの各々を、それぞれ“password_change”、“password_email_recovery”、もしくは“password_recovery”又はそれらの組み合わせに関連していると判断することが可能になり、それにより、エンドユーザとの自然言語コミュニケーションをサポートし、容易にするチャットボットの能力が向上する。このようにして、ユーザ入力に関してチャットボットによって生成される出力は、より意味があり、有用で、望ましいものとなり、様々な表現されたインテントに十分に関連したものとなり得る。
NLCによる及びNLCの自然言語理解度は、注意深く準備され、キュレートされた訓練データに基づいて、開発することができる。訓練データは、例えば、過去の(historical)又は代表的な表現されたインテントに対応するコーパスのテキストもしくは音声又はその両方に基づいたデータ・オブジェクトを含むことができる。訓練データは、例えば、コーパスの個々の表現を、NLCを適用することができる領域での自然言語使用に関連するインテントの対応するクラス又はカテゴリに関連付ける表現されたインテントの分類を含むように準備することができる。NLCは、NLCによる及びNLCの自然言語理解を可能にするための機械表現モデルを開発するために、学習モデルが訓練データに基づいて自然言語規則を学習する「訓練」段階を実行することができる。
特定の表現されたインテントに関する高い自然言語理解度は、コーパスの多種多様なテキストもしくは音声又はその両方などに基づくものとすることができるような、特定の表現されたインテントに対応する多数の明確で多様化された拡張的な表現を含む訓練データに基づいて、達成することができる。多数の表現を含む訓練データは、エンドユーザによって考え出される可能性のあるインテントに対応するそのような表現がいくらでもあり得るので、難しく、時間がかかり、リソース集約的なものとなることがある。
例えば、パスワードを変更するインテントに対応する表現は、例えば、“I want to change the password of my system”、“I want to modify the password(パスワードを修正したい)”、“I’d like to change the password of my account(アカウントのパスワードを変更したい)”、“I’d like to change the password of my account(ラップトップ用の新しいパスワードを挿入する必要がある)”などといった自然言語の要求、フレーズ、又は質問を含む場合がある。さらに、パスワードを変更するインテントを表現できる方法は、他にも数え切れないほどあり得る。その上、個々のエンドユーザの自然言語の使用は、文化的影響、人口統計学、エンドユーザの年齢、出自、語源、並びに言語的適応と発展(例えば、スラング)などに関連する要因に基づいて、時間の経過と共に進化し、発展する意図の表現に影響を及ぼす可能性がある。
従って、本技術分野において、様々な表現されたインテントのNLCによる及びNLCの高い自然言語理解度をもたらすために、NLCを訓練するための訓練データを効率的に開発する方法が求められている。
本発明の実施形態は、様々な表現されたインテントのNLCによる及びNLCの高い自然言語理解度をもたらすために、NLCを訓練するための訓練データを効率的に開発する方法に向けられる。
1つの態様において、方法は、インテントに対応する表現の初期セットを含む初期の訓練データを効率的に拡張して、インテントに対応する、明確で多様化された拡張的な表現の対応する拡張セットを含む更新された訓練データを生成し、それによってインテントのNLCによる及びインテントのNLCの高い自然言語理解度を達成することができるように、実施することができる。更新された訓練データは、インテントに対応する表現の初期セットに関する初期訓練データに基づいて生成することができ、表現の初期セットは、例えば、インテントに関して分類され、カテゴリ化され、グループ化され、又はラベル付けされたものとすることができる。
種々の態様において、方法は、インテントに対応する表現の初期セットを含む初期訓練データを受信する又は取り出すことと、インテントに対応する明確で多様化された拡張的な表現の対応する拡張セットを含む更新された訓練データを生成することであって、表現の拡張セットは、インテントに対応する表現の初期セットに基づいて生成される、生成することと、及び更新された訓練データに基づいてNLCを訓練し、インテントに関連してNLCによる及びNLCの高い自然言語理解度をもたらすことと、を含むことができる。
有利なことに、本発明は、インテントに対応する表現の初期セットを含む初期訓練データを効率的に拡張して、インテントに対応する明確で多様化された拡張的な表現の対応する拡張セットを含む更新された訓練データを生成し、それによってインテントに関するNLCによる高い自然言語理解度を達成することができるように、実施することができる。本発明は、インテントに対応する明確で多様化された拡張的な表現の対応する拡張セットを含む更新された訓練データを生成し、それによってインテントのNLCによる及びNLCの高い自然言語理解度を達成できるのに必要とされる、困難と時間及びリソース・コストとを低減させるように、実施することができる。特に、更新された訓練データは、そうしなければインテントに関する自然言語理解の程度が低いか又は限定されたものにしかならないような、インテントに対応する表現の限定された小さな初期セットを含む初期訓練データに基づいて、生成することができる。
図1は、本発明の1つの実施形態による、解釈管理システム100を示す機能ブロック図である。解釈管理システム100は、ネットワーク102によって相互接続された、クライアント・デバイス110と解釈管理デバイス130とを含むことができる。図1は2つの別個のデバイスを示しているが、他の構成を考えることもできる。例えば、クライアント・デバイス110もしくは解釈管理デバイス130又はその両方は、1つ又は複数の統合された又は別個のデバイスを含むこともできる。
本発明の種々の実施形態において、ネットワーク102は、例えば、イントラネット、ローカル・エリア・ネットワーク(LAN)、パーソナル・エリア・ネットワーク(PAN)、無線ローカル・エリア・ネットワーク(WLAN)、無線パーソナル・エリア・ネットワーク(WPAN)、無線メッシュ・ネットワーク、インターネットなどの広域ネットワーク(WAN)などを含むことができる。ネットワーク102は、有線接続、無線接続、又は光ファイバ接続を含むことができる。一般に、ネットワーク102は、本発明の実施形態による、クライアント・デバイス110と解釈管理デバイス130との間の通信をサポートするための接続とプロトコルの任意の組み合わせを含むことができる。
本発明の種々の実施形態において、クライアント・デバイス110もしくは解釈管理デバイス130又はその両方は、ウェアラブル・デバイス、埋め込み型デバイス、携帯電話又はスマートフォン、タブレット・コンピュータ、ラップトップ・コンピュータ、デスクトップ・コンピュータ、データベース・サーバなどのサーバ、仮想マシンなどのようなコンピューティング・プラットフォームを含むことができる。種々の実施形態において、クライアント・デバイス110もしくは解釈管理デバイス130又はその両方は、ネットワーク102などによって別のデバイスとの間でデータを送受信することができる他の任意のタイプのコンピューティング・プラットフォーム、コンピュータ・システム、又は情報システムを含むことができる。特定の実施形態において、クライアント・デバイス110もしくは解釈管理デバイス130又はその両方は、図3を参照して説明されるような、内部及び外部ハードウェア・コンポーネントを含むこともできる。他の実施形態において、クライアント・デバイス110もしくは解釈管理デバイス130又はその両方は、図4及び図5を参照して説明されるような、クラウド・コンピューティング環境において実装することができる。
本発明の1つの実施形態において、クライアント・デバイス110は、例えば、クライアント・アプリケーション112をホストするクライアント・コンピューティング・プラットフォームを含むことができる。クライアント・デバイス110は、本発明の実施形態に従って、クライアント・アプリケーション112の動作をサポートし、クライアント・デバイス110と解釈管理デバイス130との間の通信を可能にするプラットフォームを提供するために、ネットワーク・デバイス及びデバイス・ドライバなどのデバイスと技術の組み合わせを実装することができる。
クライアント・アプリケーション112は、例えば、ソフトウェア・プログラム、プログラムに含まれる1つ又は複数のサブルーチン、アプリケーション・プログラミング・インターフェースなどのようなアプリケーション又はプログラムを含むことができる。本発明の1つの実施形態においては、訓練データを受信するように、クライアント・アプリケーション112を実施することができる。
本発明の1つの実施形態において、訓練データは、例えば、インテントに対応する自然言語表現を含むことができる。実施形態において、自然言語表現は、用語の語彙によって表現することができる。実施形態において、用語の語彙は、領域固有(domain-specific)のものとすることができ、又はそうでなければ、表現されたインテントの特定のクラス又は領域に対応するものとすることができる。用語の語彙は、最初は未知の表現されたインテントを表現されたインテントの領域にマッピングして関連付けるために、NLCを訓練するための基礎を形成することができる。
例えば、訓練セット(すなわち、訓練データ)TSは、“I want to change password(パスワードを変更したい)”すなわち、TS={‘I want to change password’}などの自然言語表現を含むことができる。訓練セットTSは、用語「I(私)」、「want(~したい)」、「to」、「change(変更)」及び「password(パスワード)」を含む用語の語彙V、すなわちV={‘password’、‘change’、‘I’、‘want’、‘to’}を含むことができる。本開示の目的のために、“訓練データ”は、対応する訓練セットを参照することができる。
インテントに対応する表現(「表現されたインテント」)は、例えば、特定の願望、感情、概念、考えなどを伝えたり伝達したりすることができる文、語及び文字の文字列又はセットを含むテキストの構成によって表される自然言語表現(例えば、フレーズ、発話など)を含むことができる。表現されたインテントは、例えば、要求、フレーズ、質問、文書、声明、感嘆詞、コマンド、発話などを含むことができる。表現されたインテントのクラス、領域、カテゴリ、又はタクソノミ(taxonomy)は、例えば、同じ答え、トピック、又は全体的なインテントに対応する類似の又は関連する自然言語表現のグループを含むことができる。表現されたインテントのクラスは、対応するインテントに関してラベル付けされても、又はそうでなければ関連付けられてもよく、インテントに対応する僅かに異なる表現を含むことができる。例えば、表現されたインテントのクラスは、特定の分野又は領域で使用されることが多い自然言語表現を含むことができる。本開示の目的のために、「テキスト」及び「用語」は、用語の語彙の語又は語の文字列(例えば、文又はフレーズ)などの用語を参照することができる。
本発明の1つの実施形態において、訓練データは、例えば、インテントに対応する表現の初期セットを含む「初期」訓練データを含むことができる。初期訓練データは、NCL開発マネージャ、例えば、NLCを訓練する際に適用される訓練データに関して、NLCの性能を管理するタスクを負った人物によって、提供することができる。初期訓練データは、インテントに対応する表現の初期セットに基づいて、学習モデルが訓練データに基づいて自然言語規則を学習して、NLCによる及びNLCの自然言語理解を可能にするための機械表現モデルを開発する訓練段階を実行する際に、実施することができる。
例えば、第1のチャットボットは、英語の語彙又は英語の語彙の少なくともサブセットを含む用語の語彙に基づいて訓練することができ、そのような語彙は、チャットボットが理解することが望ましい場合がある表現されたインテントの領域に意味があるものであるか、又はそうでなければ関連したものとすることができる。第2のチャットボットは、チャットボットが幅広い知識の領域を理解することが望ましい場合がある英語の語彙全体を含む用語の語彙に基づいて、訓練することができる。第3のチャットボットは、スポーツに関連する知識の領域を理解することがチャットボットにとって望ましい場合があるスポーツの語彙を含む限定された用語の語彙に基づいて、訓練することができる。
本発明の1つの実施形態において、訓練データは、例えば、更新された訓練データを含むことができる。実施形態において、更新された訓練データは、例えば、初期訓練データのインテントに対応する、明確で多様化された拡張的な表現の拡張セットを含むことができる。
本開示の目的のために、“更新された訓練データ”は、拡張された訓練データを指す場合があり、その逆の場合もある。さらに、「初期訓練データ」は、更新された訓練データを生成するための基礎を形成する訓練データを指す場合がある。
一例として、NLCマネージャは、共通のインテントを有する自然言語表現のグループ又はクラスをコンパイルすることにより、初期訓練データを準備し、キュレートすることができる。NLCマネージャは、NLCへの通信及びNLCの訓練のために、初期訓練データをクライアント・アプリケーション112に入力することができる。自然言語表現のグループは、例えば、コーパスから選択すること、又はコーパスに関して識別することができる。コーパス及び自然言語表現のグループは、領域固有のもの(例えば、スポーツなどの共通のトピックに関連したもの)であってもよい。コーパス及び自然言語表現のグループは、NLCが適用され得る領域に応じて選択することができる。自然言語表現は、NLCが適用され得るチャットボットのエンドユーザからの、又はエンドユーザによる、過去の表現されたインテントを含むことができる。
本発明の1つの実施形態において、クライアント・アプリケーション112は、エンドユーザからのユーザ入力に対応するデータを受信するように実施することができる。実施形態において、ユーザ入力は、例えば、自由形式のテキストもしくは発話又はその両方によって表現されるインテントを含むことができる。実施形態において、ユーザ入力は、例えば、ユーザ・フィードバックを含むことができる。実施形態において、ユーザ入力に対応するデータは、本発明の実施形態に従った訓練段階を実施した後に、ある領域で訓練されたNLCの適用中に受信することができる。例えば、ユーザ入力は、訓練されたNLCを実施することができるチャットボットによって受信することができる。ユーザ入力によって表現されたインテントは、NLCを訓練することができる訓練データの表現に対応する表現を含むことができる。実施形態において、エンドユーザは、エンドユーザと訓練されたNLCとの間の自然言語通信の一部として、ユーザ入力をNLCに通信することができる。実施形態においては、前述のように、ノードを介してユーザ入力を通信することができる。
本発明の1つの実施形態において、解釈管理デバイス130は、例えば、解釈管理プログラム140をホストするコンピューティング・プラットフォームを含むことができる。解釈管理デバイス130は、本発明の実施形態に従って、ネットワーク・デバイス及びデバイス・ドライバなどのデバイスと技術との組み合わせを実装して、解釈管理プログラム140の動作をサポートし、クライアント・デバイス110と解釈管理デバイス130との間の通信をサポートするためのプラットフォームを提供することができる。
解釈管理プログラム140は、例えば、ソフトウェア・プログラムなどのアプリケーション又はプログラム、プログラム内に含まれる1つ又は複数のサブルーチン、アプリケーション・プログラミング・インターフェースなどを含むことができる。解釈管理プログラム140は、クライアント・アプリケーション112と通信して、訓練データ及びクエリ・データを受信することができる。解釈管理プログラム140は、データ送受信モジュール142、コグニティブな訓練データ拡張モジュール144、訓練モジュール146、及びデータ・ストレージ148を含むことができる。
データ送受信モジュール142は、クライアント・アプリケーション112と通信する。本発明の1つの実施形態において、通信は、クライアント・アプリケーション112から初期訓練データを取り出すことができ、例えば、NLC開発マネージャから受信することができる。実施形態において、通信は、以下にさらに詳細に説明するように、コグニティブな訓練データ拡張モジュール144によって生成できるような更新された訓練データを、クライアント・アプリケーション112に送信することをさらに含むことができる。データ送受信モジュール142は、後の検索及び使用のために、取り出されたデータをデータ・ストレージ148に格納することができる。クライアント・アプリケーション112は、本発明の実施形態に従って、NLCを訓練する際に訓練データを適用することができる。
コグニティブな訓練データ拡張モジュール144は、初期訓練データに基づいて更新された訓練データを生成する。実施形態においては、更新された訓練データは、初期訓練データのインテントに対応して、インテントのNLCによる及びNLCの自然言語理解の程度を改善することができる、明確で多様化された拡張的な表現の拡張セットを含むことができる。実施形態において、更新された訓練データは、表現の拡張セットと、表現の初期セットとを含むことができる。コグニティブな訓練データ拡張モジュール144は、例えば、付加的な表現を生成するための機械学習アルゴリズムを含む統計的言語モデルを含み、実装することができる。
一般に、統計的言語モデルは、語のシーケンスにわたる確率分布を表現する形で表現し、実装されたものとすることができる。統計的言語モデルは、様々なテキスト・マイニング及びテキスト分析(すなわち、テキスト分類に関連するものを含む)の領域において実装することができる。本発明の1つの実施形態において、統計的言語モデルは、例えば、ユニグラム言語モデル(例えば、n=1の場合のn-グラム言語モデル)を含むことができる。本発明の実施形態に従って、インテントに対応する付加的な表現を生成するために、他のタイプの統計的言語モデルが実装されてもよい。
例えば、特定の統計的言語モデルは、例えば、用語の語彙V={w、w2,...,w}、テキスト文書の集合C={d,d,...,d}、及び確率分布p(w|w,w,...,wk-1)を含むことができる。本発明の1つの実施形態において、用語の語彙(V)がテキスト文書の集合(C)に基づいて構築又は生成される場合、統計的言語モデルは、例えば、用語の語彙V内の各用語(例えば、w)についての確率分布p(w|w,w,...,wk-1)を記述するか、又は他の方法で定義することができる。
従って、語のシーケンス「w,w,...,wk-1」が観察されたと仮定すると、p(w|w,w,...,wk-1)は、集合Cの任意の文書(例えば、d)内の語「w」をその後に観察する確率を記述する。ユニグラム言語モデルでは、例えば、全ての用語が互いに独立して出現するか、又は観察可能であると仮定することができる。その場合、p(w|w,w,...,wk-1)=p(w)であり、Sum[p(w)]=1となる。例えば、c(w)をある用語、例えばC内のwの出現回数とし、|C|をC内の用語の総数とすると、ユニグラム言語モデルの推定は、p(w)=C中のwの頻度=c(w)/|C|とすることができる。
訓練モジュール146は、訓練データ及びクエリ・データに基づいてNLCを訓練する。本発明の1つの実施形態において、NLCを訓練することができる訓練データは、例えば、インテントに対応する表現の初期セットと、インテントに対応する付加的な表現とを含むことができる。付加的な表現は、コグニティブな訓練データ拡張モジュール144によって生成されたものを含むことができる。
図2Aは、本発明の1つの実施形態に従った、解釈管理システム100の1つの態様の動作ステップを示すフローチャートである。
ステップS202において、データ送受信モジュール142は、クライアント・アプリケーション112から初期訓練データを取り出す。
ステップS204において、コグニティブな訓練データ拡張モジュール144は、初期訓練データに基づいて、更新された訓練データを生成する。更新された訓練データは、初期訓練データのインテントに対応する、明確で多様化された拡張的な表現の拡張セットを含むことができる。
本発明の1つの実施形態において、更新された訓練データは、インテントに対応する表現の初期セットに関して初期訓練データに基づいて生成することができ、ここで、表現の初期セットは、例えば、インテントに対応して分類、カテゴリ化、グループ化、又はラベル付けすることができる。実施形態において、表現の拡張セットにおける表現されたインテントは、例えば、既述のように、用語の語彙の1つ又は複数の用語からの導出によって、初期訓練データに基づいて生成することができる。
例えば、初期訓練データTSに基づいて、更新された訓練データTS’を生成することができる。初期訓練データTSは、表現の初期セットを含むことができ、TS={text,text,...,text}である。更新された訓練データTS’は、表現の拡張セットを含むことができ、TS’={text’,text’,...,textP’}であり、P>>Nである。更新された訓練データTS’は、初期訓練データTSの濃度(cardinality)Nを上回り得る濃度Pを含むことができる。拡張された訓練セットTS'は、初期訓練セットTSからの導出によって生成することができる。例えば、拡張された訓練セットのtext’は、初期訓練セットTSのtextに対応する同義語の並べ替え(permutation)によって生成することができる。言い換えれば、TSに基づいて、TS内の各テキストtextを取り、textの語の同義語の並び替えにより付加的なテキストtext’を生成することによって、TS’を生成することができる。TS’は、TSの濃度を超える濃度を含むように生成することができる。同義語の並び替えは、並び替えプロセスで使用される同義語をインテリジェントに選択するように実行することができる。
本発明の1つの実施形態において、更新された訓練データTS'は、TS及びTS’の両方を含むことができる。拡張された訓練セットTS’は、初期訓練セットに関してテキスト分類を実施することによって生成することができる。実施形態において、テキスト分類は、用語の初期語彙のテキストの構文解析及びトークン化を含むことができる。
例えば、初期訓練セットにおける表現(例えば、text)を構文解析することは、自然言語パーサを実施することを含むことができ、自然言語パーサは、例えば、どの語のグループが(「フレーズ」として)関係があるのか、どの語が動詞の主語又は目的語であるのかなど、文の文法構造を解明するプログラムである。文字シーケンスと定められた文書単位が与えられた表現のトークン化は、それをトークンと呼ばれる断片に切り刻む作業を含むことができ、恐らく同時に、句読点のような特定の文字を捨てる作業を含むことができる。
本発明の1つの実施形態において、拡張された訓練セットは、初期訓練セットの表現(例えば、text)に基づいて生成することができる。実施形態において、初期訓練セットの表現を構文解析及びトークン化し、構文解析及びトークン化に基づいて用語の語彙の1つ又は複数の用語を選択し、用語の語彙の選択された1つ又は複数の用語から拡張された訓練セットのテキストを導出することにより、構文解析及びトークン化を、拡張された訓練セットのテキストを生成して表現の拡張セットを表すように実行することができる。実施形態において、選択された1つ又は複数の用語は、表現されたインテントに対応する名詞、形容詞及び動詞を含むことができる。実施形態において、表現の構文解析及びトークン化において、品詞(POS)のタグ付けを実施することができる。例えば、TSの各用語(例えば、text)を構文解析及びトークン化するために、品詞(POS)のタグ付けを適用することができる。構文解析及びトークン化は、例えば、Stanford CoreNLPのような構文解析及びトークン化ソフトウェアを適用して実行することができる。本開示の目的のために、「導出された用語」は、トークン化され、構文解析され、選択された1つ又は複数の用語を指すことができ、「用語を導出すること」は、1つ又は複数の用語を構文解析し、トークン化し、選択するプロセスを指すことができる。
本発明の1つの実施形態において、用語を導出した後、導出された各用語の同義語及び略語を判断することができる。各用語の同義語及び略語は、例えば、WordNetのような自然言語処理ツールを実施することによって決定することができる。実施することができる特定の自然言語処理ツールは、設計上の問題として選択することができる。
本発明の1つの実施形態において、各用語の判断された同義語及び略語を並び替えることができる。実施形態において、判断された同義語及び略語の並び替えによって、表現の拡張セットを生成し、展開することができる。例えば、拡張された訓練セットTS’は、初期訓練セットTSの用語の語彙の1つ又は複数の用語に関して生成することができる、例えばtext’などの付加的な表現を含むことができる。実施形態において、導出された訓練セットTS’は、それに応じて、並び替えられた各同義語及び略語を含むことができる。実施形態において、導出された訓練セットTS’は、訓練データに付加したり、他の方法で組み込んだりすることができる。
一例として、初期訓練セットTSは、“I want to change the password of my system”などのインテントに対応する自然言語表現を含むことができる。つまり、TS={‘I want to change the password of my system’}である。インテントは、パスワードを変更したいという願望に関連するものとすることができる。TSの名詞、形容詞、及び動詞を含むテキストを構文解析及びトークン化して、後の並び替えのための対応する同義語及び略語を決定し、選択することができる。例において、構文解析及びトークン化されたテキストは、“change”、“password”及び“system(システム)”を含むことができる。例えば、“change”の同義語及び略語は、”modify(修正する)”及び“alter(変える)”を含むことができ、“password”の同義語及び略語は、“watchword(合言葉)”、“passcode(パスコード)”及び“pwd”を含むことができ、“system(システム)”の同義語及び略語は、“device(デバイス”、“computer(コンピュータ)”及び“website(ウェブサイト)”を含むことができる。
本発明の1つの実施形態において、導出された用語は、領域固有のテキスト、文脈固有(context-specific)のテキストなどを含むことができる。つまり、導出された用語は、初期訓練データTSと関連付けられたインテントに具体的に関連した用語を含むことができる。例におけるように、導出された用語は、パスワードを変更するインテントに具体的に関連した用語を含むことができ、従って、“change”、“password”、“system”に基づいて生成することができる。“want”のような一般的に出現する用語は、インテントを特定したり表したりするものではなく、従って、導出された用語は、そのような用語に基づいて生成されない場合がある。
従って、訓練データの表現の初期セットに対応する付加的な表現を含む導出された訓練セット(例えば、TS’)を生成することができる。その結果、表現の初期セットが訓練セットTS={‘I want to change the password of my system’}を含む場合、導出された訓練セットは、例えば、TS’={“I want to change the password of my system”、“I want to alter the password of my system”、“I want to modify the password of my system”、“I want to change the pwd of my system”、...}などの表現の拡張セットを含むことができる。有利なことに、例に関して、表現の初期セットの濃度は、単一のユーザ要求(すなわち、“I want to change the password of my system”)に基づいて、新しい訓練セットTS’の濃度、すなわち2×3×3=18に拡張することができる。
ステップS206において、コグニティブな訓練データ拡張モジュール144は、インテント固有及び文脈固有の訓練データを検出する。既述のように、インテント固有及び文脈固有の訓練データは、例えば、表現の初期セット及び拡張セットの用語を含むことができる。
本発明の1つの実施形態において、表現のセットのインテント固有の用語は、訓練データセットTSに基づいて生成された統計的言語モデルに基づいて検出することができる。実施形態において、表現のセットのインテント固有の用語は、拡張された訓練データセットTS’に基づいて生成された統計的言語モデルに基づいて検出することができる。実施形態において、統計的言語モデルは、例えば、それぞれ訓練データセットTSの表現の初期セットと、拡張された訓練データセットTS’の付加的な表現とを含むことができる。
一般に、インテント固有の用語を検出するために、関連付けられた同義語及び略語を決定するために構文解析し、トークン化し、選択することができる名詞、形容詞及び動詞は、訓練データセットTSのインテントを真に特定する用語又はそれに対応する用語のみを含むべきである。これは、拡張された訓練データセットからのフレーズのインテントを、訓練データセットの対応するフレーズ(すなわち、そのフレーズが導出されたフレーズ)と比較することによって、実行することができる。上の例において、“want”は、インテントを特定していないが、“change”と“password”はインテントを特定している。さらに、特定の条件下では、用語の“全ての”同義語を決定しない方が有利な場合がある。代わりに、例えば、言語モデルのノイズを減らすために、インテントに関して文脈に関連するもの(すなわち、訓練データのもの)だけを決定するべきである。上の例では、“transform(変換する)”は、“change”の同義語であるが、ITの文脈でパスワードの変更を表現するためにそれを見つけることは一般的でないか、又は非定型的である。
本発明の1つの実施形態において、(例えば、インテント固有の表現を表す)インテント固有の用語は、拡張された訓練データセットTS’におけるその出現に対する、訓練データセットTSの表現の初期セットにおけるその相対的な出現頻度に関して計算された又は求められた出現率に基づいて検出し、抽出することができる。実施形態において、第1のユニグラム言語モデルLMtsは、訓練データセットTSに基づいて生成することができる。実施形態において、第2のユニグラム言語モデルLMgenは、より広い文書の集合、例えば、英語(すなわち、TSの言語)を代表するものに基づいて生成することができる。実施形態において、第2のユニグラム言語モデルは、LMtsのインテントの文脈を表すとともにそれに近い用語の広い集合を含むことができる。
LMts内で最も高い頻度を有するものをインテント固有の用語として選択することは、上述のように、任意の言語の文脈において一般的に使用される“want”のような用語の選択につながることがある。つまり、“want”は、パスワードの変更に関連した文脈でも、UEFAチャンピオン・リーグの決勝戦出場者についての情報を得ることに関連した文脈でも現れることがある。一例として、ユニグラムLM、LMgenは、より広い文書の集合、例えば、英語(TSの言語)を代表するものから構築することができる。さらに、LMgenは、例えばインテントがサッカーである場合、スポーツに関連した用語を含むように、LMのインテントの文脈を表すとともにそれに近い用語の広い集合を含むことができる。
本発明の1つの実施形態において、インテント固有の用語wの出現率r(w)は、次の式、
r(w)=fLMts(w)/fLMgen(w
によって求めることができ、f(.)は、統計的言語モデルLM(例えば、LMts、LMgen)における用語の出現頻度である。実施形態において、(例えば、インテント固有の表現を表す)インテント固有の用語は、所定の閾値を超えると判断される対応する出現率r(.)に基づいて検出し、抽出する(すなわち、選択する)ことができる。
例えば、(例えば、LMts、LMgenの)語彙Vの各用語wについて、出現率r(w)=fLMts(w)/fLMgen(w)を求めることができ、f(.)は、それぞれLMts及びLMgenにおける用語の出現頻度である。言語の一般的に出現する用語は、TS及び一般的モデルにおいて出現頻度が同等になる場合があるが、TS固有の用語は、一般的モデルよりもTSにおいてより出現頻度が高い傾向がある。本発明の1つの実施形態において、所定の閾値を超える出現率r(.)を有する各々のインテント固有の用語を選択することができる。
言い換えれば、ある言語の一般的に出現する用語(すなわち、表現)は、一般的言語モデルにおける発生頻度と比較して、訓練セットにおいて出現頻度が同等になる傾向がある。TS固有の用語は、一般的モデルよりもTSにおいてより頻度が高い傾向がある。従って、より高い比率r(.)を有する(例えば、所定の閾値を上回る)インテント固有の用語を選択することができる。
本発明の1つの実施形態において、インテント固有の訓練データ(すなわち、インテント固有の用語)を検出することは、例えば、用語の制限されたセットT’={ist,ist,...,ist}の同義語及び略語を判断することを含むことができ、ここで、「ist」は、インテント固有の用語である。用語の制限されたセットT’は、例えば、訓練データTSの表現の初期セットもしくは拡張セットの表現、もしくは拡張された訓練データセットTS’の表現又はその両方を含むことができる。
本発明の1つの実施形態において、用語の制限されたセットT’={ist,ist,...,ist}のインテント固有の用語istに関する各用語の系列的関係(paradigmatic relation)に基づいて、インテント固有の用語を検出することができる。系列的関係にある用語は、フレーズの中で交換可能である(すなわち、それらの用語は、同じ構文クラス又は意味クラスにある)。例えば、系列的関係にある用語には、月曜日(Monday)と火曜日(Tuesday)、猫(cat)と犬(dog)などを含むことができる。一般に、系列的関係に基づいてインテント固有の用語を検出することは、統計的言語モデルLMgenがインテントに関連する文脈を表す場合に、特に有効なものになり得る。従って、各インテント固有の用語istの同義語のセットS={s(k) ,s(k) ,...}を求めることができる。実施形態において、訓練データの表現の初期セットに対応する付加的な表現は、各インテント固有の用語istについて、同義語のセットS={s(k) ,s(k) ,...}に基づいて生成することができる。
本発明の1つの実施形態において、インテント固有の訓練データを検出することは、例えば、WordNet、オンライン辞書などのような、特定の言語のための既存の知識ベースを使用することを含むことができる。使用される特定の知識ベースの適切な選択は、設計上の問題として選択することができる。
本発明の1つの実施形態において、文脈固有の訓練データは、各インテント固有の用語istについての同義語S={s(k) ,s(k) ,...}のセットに基づいて検出することができる。実施形態において、文脈固有の訓練データを検出することは、例えば、各インテント固有の用語についての同義語のセットS={s(k) ,s(k) ,...}を減らして、インテントの文脈で真に一緒に使用されるものだけを含むようにすることを含むことができる。
本発明の1つの実施形態において、各インテント固有の用語についての同義語のセットは、例えば、同義語のセットの用語間の統語的関係(syntagmatic relation)に基づいて、減らすことができる。一般に、2つの用語は、言語モデルのフレーズの中で一緒に出現する確率が高い場合には、統語的関係にある。例えば、意味関係及び共起性(co-occurrence)に基づいて、用語は高い確率で一緒に出現することがある。例えば、用語“car(車)”と“drive(運転する)”は、統語的関係にある。つまり、文脈固有の訓練データは、拡張された訓練データセットTS’に基づいて生成された統計的言語モデルLMgenにおける少なくとも1つのistと統語的関係にあるかどうかに基づいて、各Sから検出することができる。従って、導出された訓練セットは、厳選された同義語(すなわち、表現)の比較的小さなセットに関して、クライアント・アプリケーション112からの訓練データに基づいて生成することができ、ここで、P>>Nである。
ステップS208において、訓練モジュール146は、実施するためにNLCを訓練する。
既述のように、NLCを訓練することは、NLCを訓練するための訓練段階を実行することを含むことができる。本発明の1つの実施形態において、既述のように、訓練段階は、初期訓練データのインテントに対応する明確で多様化された拡張的な表現の拡張セットを含む更新された訓練データに基づいて実行することができる。実施形態において、訓練段階を実行することは、インテント固有の訓練データ、文脈固有の訓練データ又はその両方に基づいてNLCを訓練することを含むことができる。インテント固有及び文脈固有の訓練データは、ステップS206を参照して説明したようなものを含むことができる。実施形態において、訓練段階は、初期訓練データに基づいて付加的に実行することができる。有利なことに、更新された訓練データに基づいて訓練段階を実行することで、NLCによる及びNLCの高度な自然言語理解を達成することができる。本発明の実施形態によると、NLCは、その後、例えば、チャットボットなどによって実施することができる。
図2Bは、本発明の1つの実施形態による、解釈管理システム100の1つの態様の動作ステップを示すフローチャートである。
ステップS210において、データ送受信モジュール142は、クライアント・アプリケーション112からクエリ・データを受信する。
ステップS212において、コグニティブな訓練データ拡張モジュール144は、クエリ・データに関して有用性スコアを求める。
本発明の1つの実施形態において、有用性スコアは、拡張された訓練データTS’の個々の表現に関して求めることができる。実施形態において、有用性スコアは、NLCによる表現されたインテントの分類の精度又は正確さに基づいて求めることができる。実施形態において、精度又は正確さは、例えば、分類に対するエンドユーザの満足度のレベルに基づいて求めることができ、そのような分類は、ユーザのフィードバック及びインタラクションによって表現することができる。表現されたインテントは、例えば、クライアント・アプリケーション112のエンドユーザから受信できるようなユーザ入力要求uとすることができる。ユーザ入力要求uは、チャットボットのエンドユーザから受信することもできる。実施形態において、有用性スコアは、TS’内の各テキストについて距離d(u,text’)を計算することによって求めることができる。次に、特定の距離の値を実施して有用性スコアを求めることができ、この有用性スコアを用いてTS’内のテキスト(すなわち、uに近いtext’)の間の関係を重み付けしたりインクリメントさせたりすることができる。これにより、例えば、TS’内の最も有用なテキストを時間をかけて識別することができる。実施形態において、TS’内の各テキストの距離d(u,text’)は、例えば、各テキストとユーザ入力を用語のベクトルとして表現し、ベクトルの内積を計算する(d(a,b)=Sum(a*b))ことによって、定めることができる。
本発明の1つの実施形態において、拡張された訓練セットTS’の品質は、クエリ・データに基づいて、定期的に又は連続的に測定し、改善することができる。実施形態において、拡張された訓練セットのどの表現が拡張された訓練セットの品質を低下させるか、又は向上させるかについての判断を行うことができる。
本発明の1つの実施形態において、拡張された訓練セットの表現が、拡張された訓練セットの品質を低下させるという判断は、対応する有用性スコアが所定の閾値を下回るかどうかに基づいて行うことができる。実施形態において、表現は、拡張された訓練セットから除去されてもよい。実施形態において、NLCを訓練するために、ステップS204、S206及びS208に関して説明したように、クエリ・データからの表現を生成して、拡張された訓練セットに付加することができる。
図3は、本発明の1つの実施形態による、クライアント・デバイス110もしくは解釈管理デバイス130又はその両方を示すブロック図である。図3に示されるように、クライアント・デバイス110もしくは解釈管理デバイス130又はその両方は、全て通信ファブリック918を介して相互接続される、1つ又は複数のプロセッサ902、1つ又は複数のコンピュータ可読RAM904、1つ又は複数のコンピュータ可読ROM906、1つ又は複数のコンピュータ可読ストレージ媒体908、デバイス・ドライバ912、読み取り/書き込みドライブ又はインターフェース914、ネットワーク・アダプタ又はインターフェース916を含むことができる。ネットワーク・アダプタ916は、ネットワーク930と通信する。通信ファブリック918は、プロセッサ(マイクロプロセッサ、通信及びネットワークプロセッサなど)、システム・メモリ、周辺機器、及びシステム内の任意の他のハードウェア・コンポーネントの間でデータもしくは制御情報又はその両方を渡すように設計された任意のアーキテクチャで実装することができる。
1つ又は複数のオペレーティング・システム910、及び図1に示されるような解釈管理デバイス130上に常駐する解釈管理プログラム140などの1つ又は複数のアプリケーション・プログラム911は、(典型的にはキャッシュ・メモリを含む)それぞれのRAM904の1つ又は複数を介してプロセッサ902の1つ又は複数によって実行するために、コンピュータ可読ストレージ媒体908の1つ又は複数に格納される。示される実施形態においては、コンピュータ可読ストレージ媒体908の各々は、内部ハードドライブ、CD-ROM、DVD、メモリ・スティック、磁気テープ、磁気ディスク、光ディスク、RAM、ROM、EPROM、フラッシュ・メモリなどの半導体ストレージ・デバイス、又はコンピュータ・プログラム及びデジタル情報を格納することができる任意の他のコンピュータ可読有形ストレージ・デバイスの磁気ディスク・ストレージ・デバイスとすることができる。
クライアント・デバイス110もしくは解釈管理デバイス130又はその両方は、1つ又は複数の携帯型コンピュータ可読ストレージ媒体926との間で読み書きを行うためのR/Wドライブ又はインターフェース914を含むこともできる。クライアント・デバイス110もしくは解釈管理デバイス130又はその両方上のアプリケーション・プログラム911は、1つ又は複数の携帯型コンピュータ可読ストレージ媒体926上に格納され、それぞれのR/Wドライブ又はインターフェース914を介して読み出され、それぞれのコンピュータ可読ストレージ媒体908にロードすることができる。クライアント・デバイス110もしくは解釈管理デバイス130又はその両方は、ネットワーク・アダプタ又はインターフェース916、例えば、伝送制御プロトコル(TCP)/インターネット・プロトコル(IP)アダプタ・カード又は無線通信アダプタ(直交周波数分割多重アクセス(Orthogonal Frequency Division Multiple Access、OFDMA)技術を用いる4G無線通信アダプタなど)を含むこともできる。アプリケーション・プログラム911は、ネットワーク(例えば、インターネット、ローカル・エリア・ネットワーク又は他の広域ネットワーク又は無線ネットワーク)及びネットワーク・アダプタ又はインターフェース916を介して、外部コンピュータ又は外部ストレージ・デバイスからコンピューティング・デバイスにダウンロードすることができる。ネットワーク・アダプタ又はインターフェース916から、プログラムが、コンピュータ可読ストレージ媒体908上にロードされてもよい。ネットワークは、銅線、光ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、もしくはエッジサーバ又はそれらの組み合わせを含むことができる。クライアント・デバイス110もしくは解釈管理デバイス130又はその両方は、表示画面920、キーボード又はキーパッド922、及びコンピュータ・マウス又はタッチパッド924を含むこともできる。デバイス・ドライバ912は、画像形成のための表示画面920、キーボード又はキーパッド922、コンピュータ・マウス又はタッチパッド924、及び/又は英数字の文字入力及びユーザ選択の圧力感知のための表示画面920に、インターフェース接続する。デバイス・ドライバ912、R/Wドライブ又はインターフェース914、及びネットワーク・アダプタ又はインターフェース916は、ハードウェアと(コンピュータ可読ストレージ媒体908もしくはROM906又はその両方に格納された)ソフトウェアとを含むことがある。
解釈管理デバイス130は、スタンドアロンのネットワーク・サーバであってもよいし、1つ又は複数のネットワーク・システムに統合された機能を表すものであってもよい。一般に、クライアント・デバイス110もしくは解釈管理デバイス130又はその両方は、ラップトップ・コンピュータ、デスクトップ・コンピュータ、専用コンピュータ・サーバ、又は当技術分野において周知の任意の他のコンピュータ・システムとすることができる。特定の実施形態においては、解釈管理デバイス130は、LAN、WAN、又はこれら2つの組み合わせなどのネットワークを介してアクセスされたときに、シームレスなリソースの単一のプールとして機能するようにクラスタ化されたコンピュータ及びコンポーネントを利用するコンピュータ・システムを表す。この実装形態は、データセンタ及びクラウド・コンピューティング・アプリケーションにとって好ましい場合がある。一般に、クライアント・デバイス110もしくは解釈管理デバイス130又はその両方は、任意のプログラム可能電子デバイス又はそうしたデバイスの任意の組み合わせとすることができる。
本明細書に記載されるプログラムは、本発明の特定の実施形態において実施されるアプリケーションに基づいて識別される。しかしながら、本明細書における任意の特定のプログラム命名法は、単に便宜上使用されているだけであり、従って、本発明は、そのような命名法により識別された、もしくは暗示された又はその両方の任意の特定のアプリケーションのみでの使用に限定されるべきではないことを認識されたい。
本発明は、システム、方法もしくはコンピュータ・プログラム製品又はそれらの組み合わせを、いずれかの可能な技術的詳細レベルで統合したものとすることができる。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読ストレージ媒体(単数又は複数)を含むことができる。
コンピュータ可読ストレージ媒体は、命令実行デバイスにより使用される命令を保持及び格納できる有形デバイスとすることができる。コンピュータ可読ストレージ媒体は、例えば、これらに限定されるものではないが、電子記憶装置、磁気記憶装置、光学記憶装置、電磁気記憶装置、半導体記憶装置、又は上記のいずれかの適切な組み合わせとすることができる。コンピュータ可読ストレージ媒体のより具体的な例の非網羅的なリストとして、以下のもの、すなわち、ポータブル・コンピュータ・ディスケット、ハードディスク、ランダム・アクセス・メモリ(RAM)、読み出し専用メモリ(ROM)、消去可能プログラム可能読み出し専用メモリ(EPROM又はフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM)、ポータブル・コンパクト・ディスク読み出し専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリ・スティック、パンチカード若しくは命令がそこに記録された溝内の隆起構造のような機械的にエンコードされたデバイス、及び上記のいずれかの適切な組み合わせが挙げられる。本明細書で使用される場合、コンピュータ可読ストレージ媒体は、電波、又は他の自由に伝搬する電磁波、導波管若しくは他の伝送媒体を通じて伝搬する電磁波(例えば、光ファイバ・ケーブルを通る光パルス)、又はワイヤを通って送られる電気信号などの、一時的信号自体として解釈されない。
本明細書で説明されるコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体からそれぞれのコンピューティング/処理デバイスに、又は、例えばインターネット、ローカル・エリア・ネットワーク、広域ネットワークもしくは無線ネットワーク又はその組み合わせなどのネットワークを介して外部コンピュータ又は外部ストレージ・デバイスにダウンロードすることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータもしくはエッジサーバ又はその組み合わせを含むことができる。各コンピューティング/処理デバイスにおけるネットワーク・アダプタ・カード又はネットワーク・インターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、コンピュータ可読プログラム命令を転送して、それぞれのコンピューティング/処理デバイス内のコンピュータ可読ストレージ媒体に格納する。
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路のための構成データ、又は、Smalltalk、C++などのオブジェクト指向プログラミング言語、及び、「C」プログラミング言語若しくは類似のプログラミング言語などの従来の手続き型プログラミング言語を含む1つ又は複数のプログラミング言語の任意の組み合わせで記述されるソース・コード又はオブジェクト・コードとすることができる。コンピュータ可読プログラム命令は、完全にユーザのコンピュータ上で実行される場合もあり、一部がユーザのコンピュータ上で、独立型ソフトウェア・パッケージとして実行される場合もあり、一部がユーザのコンピュータ上で実行され、一部が遠隔コンピュータ上で実行される場合もあり、又は完全に遠隔コンピュータ若しくはサーバ上で実行される場合もある。最後のシナリオにおいて、遠隔コンピュータは、ローカル・エリア・ネットワーク(LAN)若しくは広域ネットワーク(WAN)を含むいずれかのタイプのネットワークを通じてユーザのコンピュータに接続される場合もあり、又は外部コンピュータへの接続がなされる場合もある(例えば、インターネットサービスプロバイダを用いたインターネットを通じて)。幾つかの実施形態において、例えば、プログラム可能論理回路、フィールド・プログラマブル・ゲート・アレイ(FPGA)、又はプログラム可能論理アレイ(PLA)を含む電子回路は、本発明の態様を実施するために、コンピュータ可読プログラム命令の状態情報を利用することによって、コンピュータ可読プログラム命令を実行して、電子回路を個別化することができる。
本発明の態様は、本発明の実施形態による方法、装置(システム)及びコンピュータ・プログラム製品のフローチャート図もしくはブロック図又はその両方を参照して説明される。フローチャート図もしくはブロック図又はその両方の各ブロック、並びにフローチャート図もしくはブロック図又はその両方におけるブロックの組み合わせは、コンピュータ可読プログラム命令によって実装できることが理解されるであろう。
これらのコンピュータ可読プログラム命令を、汎用コンピュータ、専用コンピュータ、又は他のプログラム可能データ処理装置のプロセッサに与えて機械を製造し、それにより、コンピュータ又は他のプログラム可能データ処理装置のプロセッサによって実行される命令が、フローチャートもしくはブロック図又はその両方の1つ又は複数のブロック内で指定された機能/動作を実施するための手段を作り出すようにすることができる。これらのコンピュータ・プログラム命令を、コンピュータ、他のプログラム可能データ処理装置、もしくは他のデバイス又はその組み合わせを特定の方式で機能させるように指示することができるコンピュータ可読媒体内に格納し、それにより、そのコンピュータ可読媒体内に格納された命令が、フローチャートもしくはブロック図又はその両方の1つ又は複数のブロックにおいて指定された機能/動作の態様を実施する命令を含む製品を含むようにすることもできる。
コンピュータ・プログラム命令を、コンピュータ、他のプログラム可能データ処理装置、又は他のデバイス上にロードして、一連の動作ステップをコンピュータ、他のプログラム可能データ処理装置、又は他のデバイス上で行わせてコンピュータ実施のプロセスを生産し、それにより、コンピュータ又は他のプログラム可能装置上で実行される命令が、フローチャートもしくはブロック図又はその両方の1つ又は複数のブロックにおいて指定された機能/動作を実行するためのプロセスを提供するようにすることもできる。
図面内のフローチャート及びブロック図は、本発明の様々な実施形態による、システム、方法、及びコンピュータ・プログラム製品の可能な実装の、アーキテクチャ、機能及び動作を示す。この点に関して、フローチャート内の各ブロックは、指定された論理機能を実装するための1つ又は複数の実行可能命令を含む、モジュール、セグメント、又はコードの一部を表すことができる。幾つかの代替的な実装において、ブロック内に示される機能は、図に示される順序とは異なる順序で生じることがある。例えば、連続して示される2つのブロックは、関与する機能に応じて、実際には実質的に同時に実行されることもあり、又はこれらのブロックはときとして逆順で実行されることもある。ブロック図もしくはフローチャート図又はその両方の各ブロック、及びブロック図もしくはフローチャート図又はその両方におけるブロックの組み合わせは、指定された機能又は動作を実行する、又は専用のハードウェアとコンピュータ命令との組み合わせを実行する、専用ハードウェア・ベースのシステムによって実装できることにも留意されたい。
本開示はクラウド・コンピューティングについての詳細な説明を含むが、本明細書に記載される教示の実装は、クラウド・コンピューティング環境に限定されないことを理解されたい。むしろ、本発明の実施形態は、現在既知の又は後で開発される他のいずれかのタイプのコンピューティング環境と共に実施することができる。
クラウド・コンピューティングは、最小限の管理労力又はサービス・プロバイダとの対話で迅速にプロビジョニング及び解放することができる構成可能なコンピューティング・リソース(例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想マシン、及びサービス)の共有プールへの、便利なオンデマンドのネットワーク・アクセスを可能にするためのサービス配信のモデルである。このクラウド・モデルは、少なくとも5つの特徴、少なくとも3つのサービス・モデル、及び少なくとも4つのデプロイメント・モデルを含むことができる。
特徴は、以下の通りである。
オンデマンド・セルフサービス:クラウド・コンシューマは、必要に応じて、サーバ時間及びネットワーク・ストレージ等のコンピューティング機能を、人間がサービスのプロバイダと対話する必要なく自動的に、一方的にプロビジョニングすることができる。
広範なネットワーク・アクセス:機能は、ネットワーク上で利用可能であり、異種のシン又はシック・クライアント・プラットフォーム(例えば、携帯電話、ラップトップ、及びPDA)による使用を促進する標準的な機構を通じてアクセスされる。
リソース・プール化:プロバイダのコンピューティング・リソースが、マルチ・テナント・モデルを用いて複数のコンシューマにサービスを提供するためにプールされ、要求に応じて、異なる物理及び仮想リソースが要求に応じて動的に割り当て及び再割り当てされる。コンシューマは、一般に、提供されるリソースの正確な位置についての制御又は知識を持たないという点で、位置とは独立しているといえるが、より抽象化レベルの高い位置(例えば、国、州、又はデータセンタ)を特定できる場合がある。
迅速な弾力性:機能を、迅速かつ弾力的に、場合によっては自動的に、プロビジョニングしてすばやくスケールアウトし、迅速に解放して素早くスケールインすることができる。コンシューマにとって、プロビジョニングに利用可能な機能は、多くの場合、無制限であるように見え、いつでもどんな量でも購入できる。
計測されるサービス:クラウド・システムは、サービスのタイプ(例えば、ストレージ、処理、帯域幅、及びアクティブなユーザ・アカウント)に適した何らかの抽象化レベルでの計量機能を用いることによって、リソースの使用を自動的に制御及び最適化する。リソース使用を監視し、制御し、報告して、利用されるサービスのプロバイダとコンシューマの両方に対して透明性をもたらすことができる。
サービス・モデルは以下の通りである。
Software as a Service(SaaS):コンシューマに提供される機能は、クラウド・インフラストラクチャ上で動作するプロバイダのアプリケーションを使用することである。これらのアプリケーションは、ウェブ・ブラウザ(例えば、ウェブ・ベースの電子メール)などのシン・クライアント・インターフェースを通じて、種々のクライアント・デバイスからアクセス可能である。コンシューマは、限定されたユーザ固有のアプリケーション構成設定を想定される例外として、ネットワーク、サーバ、オペレーティング・システム、ストレージ、又は個々のアプリケーション機能をも含めて、基礎をなすクラウド・インフラストラクチャを管理又は制御しない。
Platform as a Service(PaaS):コンシューマに提供される機能は、プロバイダによってサポートされるプログラミング言語及びツールを用いて生成された、コンシューマが作成又は取得したアプリケーションを、クラウド・インフラストラクチャ上にデプロイすることである。コンシューマは、ネットワーク、サーバ、オペレーティング・システム、又はストレージを含む基礎をなすクラウド・インフラストラクチャを管理又は制御しないが、デプロイされたアプリケーション、及び場合によってはアプリケーション・ホスティング環境構成に対する制御を有する。
Infrastructure as a Service(IaaS):コンシューマに提供される機能は、コンシューマが、オペレーティング・システム及びアプリケーションを含み得る任意のソフトウェアをデプロイして動作させることができる、処理、ストレージ、ネットワーク、及び他の基本的なコンピューティング・リソースをプロビジョニンングすることである。コンシューマは、基礎をなすクラウド・インフラストラクチャを管理又は制御しないが、オペレーティング・システム、ストレージ、デプロイされたアプリケーションに対する制御、及び場合によってはネットワーク・コンポーネント(例えば、ホストのファイアウォール)選択に対する限定された制御を有する。
デプロイメント・モデルは以下の通りである。
プライベート・クラウド:クラウド・インフラストラクチャは、ある組織のためだけに運営される。これは、その組織又は第三者によって管理することができ、オンプレミス又はオフプレミスに存在することができる。
コミュニティ・クラウド:クラウド・インフラストラクチャは、幾つかの組織によって共有され、共通の関心事項(例えば、ミッション、セキュリティ要件、ポリシー、及びコンプライアンス上の考慮事項)を有する特定のコミュニティをサポートする。これは、それらの組織又は第三者によって管理することができ、オンプレミス又はオフプレミスに存在することができる。
パブリック・クラウド:クラウド・インフラストラクチャは、一般公衆又は大規模な業界グループによって利用可能であり、クラウド・サービスを販売する組織によって所有される。
ハイブリッド・クラウド:クラウド・インフラストラクチャは、固有のエンティティのままであるが、データ及びアプリケーションのポータビリティを可能にする標準化技術又は専用技術(例えば、クラウド間の負荷平衡のためのクラウド・バースティング)によって互いに結び付けられた、2つ以上のクラウド(プライベート、コミュニティ、又はパブリック)の組合せである。
クラウド・コンピューティング環境は、サービス指向であり、ステートレス性、低結合性、モジュール性、及びセマンティック相互運用性に焦点を置く。クラウド・コンピューティングの中心は、相互接続されたノードのネットワークを含むインフラストラクチャである。
ここで図4を参照すると、例示的なクラウド・コンピューティング環境50が示される。示されるように、クラウド・コンピューティング環境50は、例えば携帯情報端末(PDA)又は携帯電話54A、デスクトップ・コンピュータ54B、ラップトップ・コンピュータ54C、もしくは自動車コンピュータ・システム54N又はその組み合わせなどといった、クラウド・コンシューマによって用いられるローカル・コンピューティング・デバイスと通信することができる、1つ又は複数のクラウド・コンピューティング・ノード10を含む。ノード10は、互いに通信することができる。これらのノードは、上述のようなプライベート・クラウド、コミュニティ・クラウド、パブリック・クラウド、もしくはハイブリッド・クラウド、又はこれらの組み合わせなど、1つ又は複数のネットワークにおいて物理的又は仮想的にグループ化することができる(図示せず)。このことは、クラウド・コンピューティング環境50が、クラウド・コンシューマがローカル・コンピューティング・デバイス上にリソースを保持する必要のない、infrastrcture as service、platform as service、もしくはsoftware as service又はその組み合わせを提供することを可能にする。図2に示されるコンピューティング・デバイス54A~Nのタイプは単に例示であることをインテントし、コンピューティング・ノード10及びクラウド・コンピューティング環境50は、いずれのタイプのネットワークもしくはネットワーク・アドレス指定可能な接続又はその両方上でも(例えば、ウェブブラウザを用いて)、いずれのタイプのコンピュータ化された装置とも通信できることを理解されたい
ここで図5を参照すると、クラウド・コンピューティング環境50(図4)によって提供される機能抽象化層のセットが示される。図5に示されるコンポーネント、層、及び機能は単に例示であることをインテントし、本発明の実施形態はそれらに限定されないことを予め理解されたい。図示されるように、以下の層及び対応する機能が提供される。
ハードウェア及びソフトウェア層60は、ハードウェア及びソフトウェア・コンポーネントを含む。ハードウェア・コンポーネントの例として、メインフレーム61と、RISC(Reduced Instruction Set Computer(縮小命令セット・コンピュータ))アーキテクチャ・ベースのサーバ62と、サーバ63と、ブレード・サーバ64と、ストレージ・デバイス65と、ネットワーク及びネットワーク・コンポーネント66と、が含まれる。幾つかの実施形態において、ソフトウェア・コンポーネントは、ネットワーク・アプリケーション・サーバ・ソフトウェア67、データベース・ソフトウェア68と、を含む。
仮想化層70は、抽象化層を提供し、この層により、仮想エンティティの以下の例、すなわち、仮想サーバ71、仮想ストレージ72、仮想プライベート・ネットワークを含む仮想ネットワーク73、仮想アプリケーション及びオペレーティング・システム74、並びに仮想クライアント75を提供することができる。
一例においては、管理層80は、以下で説明される機能を提供することができる。リソース・プロビジョニング81は、クラウド・コンピューティング環境内でタスクを実行するために利用されるコンピューティング・リソース及び他のリソースの動的な調達を提供する。計量及び価格設定82は、クラウド・コンピューティング環境内でリソースが利用されたときの費用追跡と、これらのリソースの消費に対する課金又は請求とを提供する。一例において、これらのリソースは、アプリケーション・ソフトウェア・ライセンスを含むことができる。セキュリティは、クラウド・コンシューマ及びタスクについての識別検証、並びにデータ及び他のリソースに対する保護を提供する。ユーザ・ポータル83は、コンシューマ及びシステム管理者に対して、クラウド・コンピューティング環境へのアクセスを提供する。サービス・レベル管理84は、必要なサービス・レベルが満たされるように、クラウド・コンピューティング・リソースの割当て及び管理を提供する。サービス・レベル・アグリーメント(Service Level Agreement、SLA)の計画及び履行85は、SLAに従って将来的な必要性が予測されるクラウド・コンピューティング・リソースの事前配置及び調達を提供する。
ワークロード層90は、クラウド・コンピューティング環境を利用することができる機能の例を提供する。この層から提供することができるワークロード及び機能の例として、マッピング及びナビゲーション91、ソフトウェア開発及びライフサイクル管理92、仮想教室教育配信93、データ分析処理94、トランザクション処理95、及び解釈管理96が挙げられる。解釈管理96は、本発明の実施形態による、クラウド・コンピューティング環境が、開示された方法のステップを実行するのを可能にする機能を含むことができる。
本発明は、その特定の例示的実施形態を参照して示され、説明されているが、当業者であれば、添付の特許請求の範囲及びその等価物により定められる、本発明の趣旨及び範囲から逸脱することなく、形態及び詳細における種々の変更を行い得ることが理解されるであろう。従って、本発明は、限定ではなく例示のために例として開示された。

Claims (14)

  1. コンピュータの情報処理によって、コンピュータ・システムのチャット・インターフェースと関連付けられた自然言語分類器を訓練するための方法であって、
    インテントに対応する表現の初期セットを含む初期訓練データに基づいて、前記インテントに対応する付加的な表現を含む更新された訓練データを生成することと、
    表現の前記初期セットを含む前記初期訓練データと前記付加的な表現を含む前記更新された訓練データとに基づいて、前記インテントに対応するインテント固有の表現を含むインテント固有の訓練データを検出することであって、前記検出することは、前記インテントに対応するインテント固有の用語を検出することを含む、前記検出することと、
    前記初期訓練データと前記更新された訓練データと前記インテント固有の訓練データとに基づいて、前記自然言語分類器を訓練することと、
    前記訓練された自然言語分類器によって、前記自然言語分類器が訓練された表現の前記初期セットと前記付加的な表現とに基づいて、検出されたクエリによって表現されたインテントを判断することと
    を含む、方法。
  2. 前記インテント固有の表現は、表現の前記初期セット及び前記付加的な表現のインテント固有の用語と系列的関係にある用語を含む、請求項1に記載の方法。
  3. 前記インテント固有の用語についての同義語のセットに基づいて、前記インテントに対応する文脈固有の表現を含む文脈固有の訓練データを検出することであって、前記文脈固有の表現は、互いに統語的関係にある用語を含む、前記検出すること
    をさらに含み、
    前記自然言語分類を訓練することは、前記初期訓練データと前記更新された訓練データと前記インテント固有の訓練データと前記文脈固有の訓練データとに基づいて、前記自然言語分類器を訓練することを含む、
    請求項1に記載の方法。
  4. 前記インテントに対応する付加的な表現を含む更新された訓練データを生成することは、前記インテントに対応する表現の前記初期セットの表現を構文解析及びトークン化することに基づいて、前記初期セットの表現のテキスト分類を実施し、導出されたテキストを用いて前記付加的な表現を含む更新された訓練データを生成することを含む、
    請求項1に記載の方法。
  5. 前記インテントに対応する表現の前記初期セットの表現を構文解析及びトークン化することは、前記インテントに対応する表現の前記初期セットの前記表現に含まれる用語の品詞のタグ付けをすることと、タグ付けされた前記用語を用いて構文解析及びトークン化することとを含む、請求項4に記載の方法。
  6. 前記インテントに対応する前記生成された付加的な表現のうちの1つの表現の有用性スコアを求めることであって、前記有用性スコアは、対応するユーザ入力要求に関するユーザのフィードバックに基づいて求められる、求めること
    をさらに含み、
    前記有用性スコアに基づいて、前記自然言語分類器の訓練に用いられる前記付加的な表現を含む前記更新された訓練データを更新することを含む、
    請求項1に記載の方法。
  7. コンピュータ・システムのチャット・インターフェースと関連付けられた自然言語分類器を訓練するためのコンピュータ・システムであって、
    1つ又は複数のコンピュータ・プロセッサと、1つ又は複数のコンピュータ可読ストレージ媒体と、前記1つ又は複数のコンピュータ・プロセッサの少なくとも1つによって実行するための、前記コンピュータ可読ストレージ媒体の1つ又は複数に格納されたプログラム命令とを含み、前記プログラム命令は、前記1つ又は複数のコンピュータ・プロセッサの少なくとも1つによって実行されたとき、前記コンピュータ・システムに、
    インテントに対応する表現の初期セットを含む初期訓練データに基づいて、前記インテントに対応する付加的な表現を含む更新された訓練データを生成することと、
    表現の前記初期セットを含む前記初期訓練データと前記付加的な表現を含む前記更新された訓練データとに基づいて、前記インテントに対応するインテント固有の表現を含むインテント固有の訓練データを検出することであって、前記検出することは、前記インテントに対応するインテント固有の用語を検出することを含む、前記検出することと、
    前記初期訓練データと前記更新された訓練データと前記インテント固有の訓練データとに基づいて、前記自然言語分類器を訓練することと、
    前記訓練された自然言語分類器によって、前記自然言語分類器が訓練された表現の前記初期セットと前記付加的な表現とに基づいて、検出されたクエリによって表現されたインテントを判断することと
    を含む方法を実行させる、コンピュータ・システム。
  8. 前記インテント固有の表現は、表現の前記初期セット及び前記付加的な表現のインテント固有の用語と系列的関係にある用語を含む、請求項7に記載のコンピュータ・システム。
  9. 前記インテント固有の用語についての同義語のセットに基づいて、前記インテントに対応する文脈固有の表現を含む文脈固有の訓練データを検出することであって、前記文脈固有の表現は、互いに統語的関係にある用語を含む、前記検出すること
    をさらに含み、
    前記自然言語分類を訓練することは、前記初期訓練データと前記更新された訓練データと前記インテント固有の訓練データと前記文脈固有の訓練データとに基づいて、前記自然言語分類器を訓練することを含む、
    請求項7に記載のコンピュータ・システム。
  10. 前記インテントに対応する付加的な表現を含む更新された訓練データを生成することは、前記インテントに対応する表現の前記初期セットの表現を構文解析及びトークン化することに基づいて、前記初期セットの表現のテキスト分類を実施し、導出されたテキストを用いて前記付加的な表現を含む更新された訓練データを生成することを含む、請求項7に記載のコンピュータ・システム。
  11. 前記インテントに対応する表現の前記初期セットの表現を構文解析及びトークン化することは、前記インテントに対応する表現の前記初期セットの前記表現に含まれる用語の品詞のタグ付けをすることと、タグ付けされた前記用語を用いて構文解析及びトークン化することとを含む、請求項10に記載のコンピュータ・システム。
  12. 前記インテントに対応する前記生成された付加的な表現のうちの1つの表現の有用性スコアを求めることであって、前記有用性スコアは、対応するユーザ入力要求に関するユーザのフィードバックに基づいて求められる、求めること
    をさらに含み、
    前記有用性スコアに基づいて、前記自然言語分類器の訓練に用いられる前記付加的な表現を含む前記更新された訓練データを更新することを含む、
    請求項7に記載のコンピュータ・システム。
  13. 請求項1から請求項6までのいずれか1項に記載の前記方法をコンピュータに実行させるコンピュータ・プログラム。
  14. 請求項13に記載のコンピュータ・プログラムを格納したコンピュータ可読ストレージ媒体。

JP2020561637A 2018-05-24 2019-04-30 自然言語分類のための訓練データの拡張 Active JP7412060B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/988,295 US10726204B2 (en) 2018-05-24 2018-05-24 Training data expansion for natural language classification
US15/988,295 2018-05-24
PCT/IB2019/053517 WO2019224629A1 (en) 2018-05-24 2019-04-30 Training data expansion for natural language classification

Publications (2)

Publication Number Publication Date
JP2021524079A JP2021524079A (ja) 2021-09-09
JP7412060B2 true JP7412060B2 (ja) 2024-01-12

Family

ID=68615304

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020561637A Active JP7412060B2 (ja) 2018-05-24 2019-04-30 自然言語分類のための訓練データの拡張

Country Status (5)

Country Link
US (1) US10726204B2 (ja)
JP (1) JP7412060B2 (ja)
CN (1) CN112136125A (ja)
DE (1) DE112019001533T5 (ja)
WO (1) WO2019224629A1 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10747427B2 (en) 2017-02-01 2020-08-18 Google Llc Keyboard automatic language identification and reconfiguration
US11545144B2 (en) * 2018-07-27 2023-01-03 Samsung Electronics Co., Ltd. System and method supporting context-specific language model
US11580179B2 (en) * 2018-09-24 2023-02-14 Salesforce.Com, Inc. Method and system for service agent assistance of article recommendations to a customer in an app session
US11184298B2 (en) * 2019-08-28 2021-11-23 International Business Machines Corporation Methods and systems for improving chatbot intent training by correlating user feedback provided subsequent to a failed response to an initial user intent
US11188580B2 (en) * 2019-09-30 2021-11-30 Intuit, Inc. Mapping natural language utterances to nodes in a knowledge graph
US11651250B2 (en) * 2019-11-20 2023-05-16 International Business Machines Corporation Automatically generated conversation output
CN111274824B (zh) * 2020-01-20 2023-05-05 文思海辉智科科技有限公司 自然语言处理方法、装置、计算机设备和存储介质
US10841251B1 (en) * 2020-02-11 2020-11-17 Moveworks, Inc. Multi-domain chatbot
US11361164B2 (en) * 2020-02-13 2022-06-14 Bank Of America Corporation Natural language platform for automated message processing
US11537918B2 (en) 2020-07-21 2022-12-27 Florida Power & Light Company Systems and methods for document similarity matching
US11907863B2 (en) * 2020-07-24 2024-02-20 International Business Machines Corporation Natural language enrichment using action explanations
US11900922B2 (en) * 2020-11-10 2024-02-13 International Business Machines Corporation Multilingual intent recognition
US20220245353A1 (en) * 2021-01-21 2022-08-04 Servicenow, Inc. System and method for entity labeling in a natural language understanding (nlu) framework
CN113076080B (zh) * 2021-04-21 2022-05-17 百度在线网络技术(北京)有限公司 模型训练方法和装置、意图识别方法和装置
CN113094478B (zh) * 2021-06-10 2021-08-13 平安科技(深圳)有限公司 表情回复方法、装置、设备及存储介质
KR20230016794A (ko) * 2021-07-27 2023-02-03 네이버 주식회사 언어 모델을 이용한 데이터 생성 방법, 컴퓨터 장치, 및 컴퓨터 프로그램
CN113946295A (zh) * 2021-10-29 2022-01-18 中国建设银行股份有限公司 权限控制方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017509086A (ja) 2014-03-26 2017-03-30 マイクロソフト テクノロジー ライセンシング,エルエルシー 統合検索環境におけるクライアントの意図
US20170337478A1 (en) 2016-05-22 2017-11-23 Microsoft Technology Licensing, Llc Self-Learning Technique for Training a PDA Component and a Simulated User Component

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7231343B1 (en) * 2001-12-20 2007-06-12 Ianywhere Solutions, Inc. Synonyms mechanism for natural language systems
US7016849B2 (en) * 2002-03-25 2006-03-21 Sri International Method and apparatus for providing speech-driven routing between spoken language applications
US8818926B2 (en) 2009-09-29 2014-08-26 Richard Scot Wallace Method for personalizing chat bots
US20140207716A1 (en) * 2013-01-22 2014-07-24 Maluuba Inc. Natural language processing method and system
CN104850539B (zh) 2015-05-28 2017-08-25 宁波薄言信息技术有限公司 一种自然语言理解方法及基于该方法的旅游问答系统
CN105117384A (zh) 2015-08-19 2015-12-02 小米科技有限责任公司 分类器训练方法、类型识别方法及装置
US10249207B2 (en) * 2016-01-19 2019-04-02 TheBeamer, LLC Educational teaching system and method utilizing interactive avatars with learning manager and authoring manager functions
US20170243107A1 (en) 2016-02-19 2017-08-24 Jack Mobile Inc. Interactive search engine
CN105786798B (zh) 2016-02-25 2018-11-02 上海交通大学 一种人机交互中自然语言意图理解方法
US9905248B2 (en) * 2016-02-29 2018-02-27 International Business Machines Corporation Inferring user intentions based on user conversation data and spatio-temporal data
JP2017167851A (ja) * 2016-03-16 2017-09-21 株式会社東芝 概念辞書作成装置、方法およびプログラム
US20180025726A1 (en) * 2016-07-22 2018-01-25 International Business Machines Corporation Creating coordinated multi-chatbots using natural dialogues by means of knowledge base
US20180307676A1 (en) * 2017-04-19 2018-10-25 Nanorep Technologies Ltd. Systems, Devices, Components and Associated Computer Executable Code for Recognizing and Analyzing/Processing Modification Sentences within Human Language
US10796088B2 (en) * 2017-04-21 2020-10-06 International Business Machines Corporation Specifying a conversational computer agent and its outcome with a grammar
CN107688614B (zh) * 2017-08-04 2018-08-10 平安科技(深圳)有限公司 意图获取方法、电子装置及计算机可读存储介质
US10841249B2 (en) * 2017-10-02 2020-11-17 Samsung Electronics Co., Ltd. System and method for bot platform
US10553203B2 (en) * 2017-11-09 2020-02-04 International Business Machines Corporation Training data optimization for voice enablement of applications
US10540971B2 (en) * 2017-12-15 2020-01-21 Blue Jeans Network, Inc. System and methods for in-meeting group assistance using a virtual assistant
US10740566B2 (en) * 2018-03-23 2020-08-11 Servicenow, Inc. Method and system for automated intent mining, classification and disposition
US11030412B2 (en) * 2018-04-10 2021-06-08 Verizon Patent And Licensing Inc. System and method for chatbot conversation construction and management
US11157704B2 (en) * 2018-06-18 2021-10-26 DataChat.ai Constrained natural language processing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017509086A (ja) 2014-03-26 2017-03-30 マイクロソフト テクノロジー ライセンシング,エルエルシー 統合検索環境におけるクライアントの意図
US20170337478A1 (en) 2016-05-22 2017-11-23 Microsoft Technology Licensing, Llc Self-Learning Technique for Training a PDA Component and a Simulated User Component

Also Published As

Publication number Publication date
CN112136125A (zh) 2020-12-25
DE112019001533T5 (de) 2020-12-10
US10726204B2 (en) 2020-07-28
WO2019224629A1 (en) 2019-11-28
JP2021524079A (ja) 2021-09-09
US20190361977A1 (en) 2019-11-28

Similar Documents

Publication Publication Date Title
JP7412060B2 (ja) 自然言語分類のための訓練データの拡張
US11321371B2 (en) Query expansion using a graph of question and answer vocabulary
US11645470B2 (en) Automated testing of dialog systems
US10929383B2 (en) Method and system for improving training data understanding in natural language processing
US11030416B2 (en) Latent ambiguity handling in natural language processing
US20180095947A1 (en) Automatic generation of context and suggestions for context dependent questions
US11010700B2 (en) Identifying task and personality traits
US20160293034A1 (en) Question answering system-based generation of distractors using machine learning
US11636376B2 (en) Active learning for concept disambiguation
US10713288B2 (en) Natural language content generator
US10198501B2 (en) Optimizing retrieval of data related to temporal based queries
CN114450747B (zh) 用于基于音频文件更新文档的方法、系统和计算机可读介质
US11783807B2 (en) Voice response systems based on personalized vocabulary and user profiling—personalized linguistics AI engines
US20180089569A1 (en) Generating a temporal answer to a question
US20210216706A1 (en) Neural parser for snippets of dynamic virtual assistant conversation
TW202324186A (zh) 對話代理反事實模擬
WO2022048535A1 (en) Reasoning based natural language interpretation
US20220067051A1 (en) Word embedding quality assessment through asymmetry
US20210406294A1 (en) Relevance approximation of passage evidence
US20220043848A1 (en) Generating entity relation suggestions within a corpus
US11971887B2 (en) Identifying and replacing logically neutral phrases in natural language queries for query processing
US11222165B1 (en) Sliding window to detect entities in corpus using natural language processing
US11379666B2 (en) Suggestion of new entity types with discriminative term importance analysis
US20220171773A1 (en) Optimizing expansion of user query input in natural language processing applications

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210204

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201125

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210830

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20220502

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220912

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220920

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230228

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20230526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230728

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231017

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231023

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

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20231206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231221

R150 Certificate of patent or registration of utility model

Ref document number: 7412060

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150