質問分類のためのメタ学習
【課題】利用可能な情報を効率的に使用し、訓練時間及び誤差率を改善する。
【解決手段】自動質問分類及び自動回答システム並びに方法が開示される。メインの人工神経回路(ANN)と補助ANNを有するマルチパートANNは、複数の定義されたカテゴリのうちの1つに従って、受け付けた質問を分類する。一旦補助ANNが訓練するとウエイトは凍結されてメインのANNに移転される。メインのANNは、このとき、ラベル付けされた質問を使用して訓練され得る。本発明によれば、利用可能な情報を効率的に使用でき、単一パートANNを使用するのに比較して訓練時間及び誤差率を改善できる。
【解決手段】自動質問分類及び自動回答システム並びに方法が開示される。メインの人工神経回路(ANN)と補助ANNを有するマルチパートANNは、複数の定義されたカテゴリのうちの1つに従って、受け付けた質問を分類する。一旦補助ANNが訓練するとウエイトは凍結されてメインのANNに移転される。メインのANNは、このとき、ラベル付けされた質問を使用して訓練され得る。本発明によれば、利用可能な情報を効率的に使用でき、単一パートANNを使用するのに比較して訓練時間及び誤差率を改善できる。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の参照)
本出願は、2006年2月1日に出願された“Meta Learning for Question Answering”と題する米国特許仮出願第60/764,412号、及び2006年4月24日に出願された“Meta Learning for Question Classification”と題する米国特許出願第11/410,443号を基礎とする優先権を米国特許法第119条(e)に基づき主張し、これらの出願はその全体がここに引用される。
【0002】
本出願は、2005年1月28日に出願された“Responding to Situations Using Knowledge Representation and Inference”と題する米国特許出願第11/046,343号と関連しており、当該出願はその全体がここに引用される。
【0003】
本出願は、2005年12月6日に出願された“Building Plan for Household Tasks from Distributed Knowledge”と題する米国特許出願第11/296,020号と関連しており、当該出願はその全体がここに引用される。
【0004】
本出願は、2006年3月16日に出願された“Commonsense Reasoning About Task Instructions”と題する米国特許出願第11/378,063号と関連しており、当該出願はその全体がここに引用される。
【0005】
本発明は、自律機械の分野に関し、特に、自律機械が質問に回答することを可能にすることに関する。
【背景技術】
【0006】
例えば人間の特徴を有するロボットのような人間形ロボットは、自律機械技術を適用して家庭やオフィスの人間を支援するうえで重要なステップである。子供の世話をする、情報提供や支援のために電話に応答する、等の無数の日常的活動に対して潜在的な適用可能性がある。屋内用人間形ロボットは、コーヒーを作る、衣服を洗濯する、こぼした汚れを掃除する等の一般的な家庭内の雑事を遂行するものと考えられている。
更なる適用例として、年配者や障害者の支援も含み得る。人間形ロボットは、ロボットのユーザからの多くのタイプの命令や質問に対応することになると考えられている。このような質問は、幅広い主題をカバーし得る。例えば、質問は、“大統領は誰ですか”というような事実に関するものであってもよい。他の質問のタイプは、“天候はどうですか”というような条件に関するものであってもよい。更に、他の質問のタイプは、“冷蔵庫の中に食料はありますか”というような観測に関するものであってもよい。
【0007】
いくつかのシステムは、質問階層を手動で構築してきている。この説明は、“D.Moldovan,et al.,Lasso:A Tool for Surfing the Answer Net,proceedings of TREC-8,pp175-183,1999”の中に発見され得る。
ある代替的なアプローチは、言い換え変形語を認識する。例えば、Barzilay et al.は、コーパスから200個の2センテンステーマを分析し、7つの語彙統語的言い換え規則を抽出した。これらの規則は、統語的かつ語彙的言い換えの82%をカバーし、更に、言い換え語は全変形語の70%をカバーしていた。この説明は、“R.Barzilay, et al.,Information Fusion in the Context of Multi−Document Summarization,Proceedings of ACL,1999”の中に発見され得る。そしてこの文献はその全体がここに引用される。
Qi et al.は、確率的分類法を用いた多数カテゴリを考慮に入れていた。この説明は、“H.Qi, et al.,Question Answering and Novelty Tracks, Proceedings of TREC2002,The University of Michigan at Trec,2002”の中に発見され得る。そしてこの文献はその全体がここに引用される。
【0008】
AskMSRは、例えば“Bill Gates is married to”の右側に来る5つのトークンのように、回答を含むと思われるトークンのシーケンスを抽出するために、質問から派生したテキストパターンを使用するNグラム収穫法を使用していた。このアプローチは、例えば“is Gates married to”“Gates is married to”“Gates married is to”“Gates married to is”に対し名詞-目的語(NO)構文分析又は品詞(POS)タグ付けを行うというような、規則に一致する表現例によって、質問をサーチエンジン用クエリに変換していた。サーチエンジン用クエリは、ウエブをサーチするサーチエンジンに従っていた。応答は、予想回答のタイプ、発生頻度多数決、及び複数の短い候補を結合して長い候補、例えば国連児童基金、にすることによるタイリング(tiling)によりフィルタにかけられていた。この説明は、“AskMSR:Question Answering Using the Worldwide Web,M.Banko,et al.,Proceedings of AAAI Spring Symposium on Mining Answers from Texts and Knowledge Bases,March 2002” の中に発見され得る。そしてこの文献はその全体がここに引用される。
【0009】
PaskaとHarabigiuは、質問タイプと予想回答タイプの大まかな分類法を開発した。質問と回答に関連するテキストを構文解析するために、そして知識ベースを構築するために、統計的構文分析が使用された。処理可能な段落数を検索し、回答を抽出するためにクエリ語を加え又は削除するクエリ拡大ループが使用された。一旦質問が分類されると、適当な知識ソースを使用して回答が得られた。例えば、天候に関する質問については、天候ウエブサイトが適当である。例えば、定義に関する質問については、ユーザにもよるが、辞書の定義、一般的な百科事典エントリ、又は特定分野の記事が適当である。この説明は、“M.A.Pasca,and S.M.Harabagiu,High Performance Question Answering,Proceedings of the 24thAnnual International ACM SIGIR Conference on Research and Development in Information Retrieval,2001”の中に発見され得る。
【0010】
従来のQAシステムは、多重回答発生に関する統計(多数決、タイリング、フィルタリング等)を使用し、回答が予想タイプに一致することを保証している。事実に関する質問に対する回答は、典型的には、例えば場所、人物、組織のような実在する名前(名詞)が付けられる。
Lehnertによれば、質問の分類は、“何時かわかりますか”“はい”、“ジョンはどのようにして試験に合格しましたか”“ペンで”のような質問に対する回答を避けるために重要である。この説明は、“W.Lehnert, A Conceptual Theory of Question Answering, Proceedings of the Fifth international Joint Conference on Artificial Intelligence(IJCAI),158-164,1997”の中に発見され得る。そしてこの文献はその全体がここに引用される。
【0011】
質問回答(QA)の従来の業績は、事実に関するQAに焦点を合わせてきた。例えば、テキスト検索参照(Text Retrieval Conference:TREC)は、ワールドワイドウエブ上で多くの回答が発見されるような、疑似事実に関する質問に焦点を合わせてきた。TRECシステムは、所与の質問に対する回答を決定するために単語ベースの分類を使用し、また、回答候補を抽出するために、再構成/パターンマッチングのような言語技術を使用する。例えば、“ニクソンはいつ中国を訪問したか”という質問に対する回答タイプは日付である。質問の再構成は、“Nixon visited china in ”のような変形例を含む。この説明は、“A.R.Diekema,et al.,Finding Answers to Complex Questions,2004,in M.T.Maybury,ed.,New Directions in Question Answering,AAAI Press/MIT Press,141-152”の中に発見される。そしてこの文献はその全体がここに引用される。
【0012】
質問分類に対する従来アプローチは、ラベル付けされた例、すなわち、ペアになった回答が付された質問例に頼っている。残念ながら、ラベル付けされた例は、比較的希少で高価である。なぜならば、質問例を手動でラベリングすることは大変手間がかかるからである。更に、従来アプローチは、例外的な場合に機能停止し得る、質問分類規則の手動コード化を必要とし、加えて、従来アプローチは、事実に関する質問のみを受け入れる。
しかしながら、人間形ロボットのような自律機械に対してなされた質問のうち、事実に関するものは比較的少ない。それどころか、このような質問は、状況(例えば、赤ん坊が泣いていればどうすればよいかあなたは知っているか)、観測や進行中の事象に関する問合せ、及び黙示的な質問(例えば、応答を引き出すために提供されたステートメント)に対する応答にまで及ぶ。従って、自律機械は、適当な知識及び情報に対するリアルタイムのアクセスを必要とすることになる。
【発明の開示】
【発明が解決しようとする課題】
【0013】
前記から、人間形ロボットのような自律機械に、知識及び情報の様々なソースに対するアクセスを提供し、前記自律機械が、どのソースが求められる回答を提供する可能性が高いかを決定するために、効果的に質問を分類する方法及び装置が必要であることがわかる。更に、このことは、実質的な数の、手動でラベル付けされた例及び質問分類規則の手動コード化を要求することなく達成されるべきである。
【課題を解決するための手段】
【0014】
(要約)
本発明は、自動的に質問を分類し、質問に対して回答するシステム及び方法を含む。ある実施形態において、1つのマルチパート人工神経回路(ANN)が、受け付けた質問を、複数の定義済カテゴリのうちの1つと関連するものとして分類するために適用される。このカテゴリは、例えば、日付に関する事実、人物に関する事実、ある特性を有する客体に対する応答、場所、及び事象や時間に関する観測等を含み得る。
このような分類は、質問が、複数の使用可能なデータベースのうちの1つ又はウエブに対してマッピングされ得るようにする。マルチパートANNは、1つのメインのANNと、1つの補助ANNを含む。それぞれのANNは、ノードとウエイトの階層を含む。
【0015】
ラベル付けされていないデータが、複数の人間ボランティアのようなソースから受け付けられる。ラベル付けされていないデータは、人間形ロボットのような自律機械に対して問われるかも知れない一式の補足的質問を含む。ラベルが付されていないデータは、教師なし状態で、補助ANNを訓練するために使用される。それによって、1つのアプリオリに定義された回答が要求されることはない。
教師なし訓練は、補足的質問中の単語毎に品詞タグを生成する、補足的質問中の残存単語から疑問詞(例えばWhat,where,how)を予測する、及び1つの補足的質問中の2つの単語間の統語的関係の組を予測する、というような多重補助タスクを含み得る。補助的タスクは、ラベル付けされていないデータから、それによって基底となる予測的又は機能的な構造を学習するラベル付けされたデータを生成する。
【0016】
一旦補助ANNが訓練されると、ウエイトは固定されメインのANNへ移転される。これは、予測構造をメインのANNへ移転するもので、帰納的移転と呼ばれるプロセスである。その結果、メインのANNは、例えば、組になった回答を有する質問のような、ラベル付けされた質問を使用して訓練され得るようになる。そこで、回答されるべき元の質問は、定義済のカテゴリのうちの1つを割り当てる、訓練されたメインのANNに対して適用される。割り当てられたカテゴリは、元の質問を適当な回答を含むと最も思われるデータベースに対してマッピングするために使用される。
【0017】
ある実施形態においては、客体及び/又は特性は、回答するべき元の質問の範囲内で識別される。客体及び/又は特性は、選択されたデータベース内で回答をサーチするために、例えばシステムクエリ言語(SQL)を使用して1つのクエリを定式化するために使用される。
【0018】
実際には、ラベル付けされていないデータが比較的豊富で、容易に入手できるのに対して、ラベル付けされたデータは、相対的に利用不可能であり、入手コストが高い。そこで、本発明は、利用可能な情報を効率的に使用する。更に、マルチパートANN及びラベル付けされていないデータの適用は、シングルパートANNとの比較では、訓練時間及び誤差率を改善する。
【0019】
(図面の簡単な説明)
図面と以下の説明は、図示された通りにのみ、本発明の言及された実施形態に関する。類似の参照番号が複数の図面で使用される場合は類似の機能を示している。各図は、単に例示目的で本発明の実施形態を描写している。当業者であれば、本発明の原理から逸脱することなく以下に例示する構成や方法の代替的実施形態を実施することが可能であることを後記する明細書の記載から容易に知り得るであろう。
【発明を実施するための最良の形態】
【0020】
(言及された実施形態の詳細な説明)
質問分類のためのメタ学習のための方法及び装置が説明されている。以下の説明では、説明目的で、本発明の完全な理解を提供するために多くの詳細が説明される。しかしながら、当業者にとっては、特定された詳細なしでも本発明が実施され得ることが明らかであろう。他の場合には、本発明が不明確になるのを防ぐために、構造及び部材はブロック図で示される。
【0021】
本明細書において、“ある実施形態”又は“1つの実施形態”と言う場合は、本発明の少なくとも1つの実施形態に、その実施形態に関連して記述される1つの特定の特徴又は構造が含まれていることを意味する。本明細書のあちこちに“ある実施形態では”という語が出現しても、必ずしも同一の実施形態を指しているわけではない。
【0022】
図1は、本発明の一実施形態に係るシステム100を示している。コンピュータシステム110は、入力装置112、主記憶装置114、補助記憶装置118、中央制御装置122、及び入出力装置124を有する。代替的な実施形態においては、音声画像処理装置120は、中央制御装置122の一部であってもよいし、ユーザからの質問及び命令を受け付け処理するための別の装置であってもよい。
同様に、主記憶装置114は、スタンドアロンの記憶デバイス(RAM)であってもよいし、処理装置122付きのメモリーチップ(例えばキャッシュメモリ)であってもよい。
補助記憶装置118は、ハードディスク、DVD−R/RW、CD−R/RW又はRAMのような任意の大容量ストレージである。同様にコンピュータシステム110は、サーバ、パーソナルコンピュータのようなスタンドアロンのシステムであってよい。代替例として、コンピュータシステム110は、例えば、音声画像処理システムを備えるロボットのようなより大きなシステムの一部であってもよい。
【0023】
この実施形態によれば、入力装置112は、データベース140から、人間ボランティアによって提供された知識のような情報を受け付ける。入力装置112は、マイクロホン又は同様のデバイス130から発話を直接受け付けてもよいし、カメラ又はビデオキャプチャデバイス132から画像を受け付けてもよい。
また、入力装置112は、他のデータベース、他の聴覚システム、インターネットサーバのようなネットワークシステムから情報を受け付けるインタフェースであってもよい。このネットワークインタフェースは、USB、RS−232シリアルポート、イーサネットカードのような有線インタフェースであってもよいし、ブルートウース、WiFi、IEEE802.11のような無線プロトコルを使用した無線通信デバイスのような無線インタフェースモジュールであってもよい。音声画像処理装置120は、入力装置112を介して受け付けた音声命令又は質問あるいは画像の事前処理用に使用され、中央制御装置122が処理可能なフォーマットに音声命令又は質問あるいは画像を変換する。
【0024】
中央制御装置122による処理を受ける情報は、主記憶装置114に格納される。中央制御装置122は、本発明に係る1つ又は複数の方法(例えば、質問に対して回答する、又は命令を実行する等)を遂行する一連の命令を読み込み実行する。主記憶装置114は、このような回答又は実行のための命令モジュール116を含んでもよい。
【0025】
中央制御装置122は、ネットワーク要素又はサーバ150a、ディスプレイ150b、データベース150cのような外部装置150と、入出力装置124を介して情報を交換する。ネットワーク要素又はサーバ150aは、インターネットのような他のネットワークと接続し得、それによってワールドワイドウエブのようなソースからの情報にアクセスし得る。
入力装置112と同様に、入出力装置124は、有線であってもよいし、無線であってもよい。入出力装置124は、ストレージドライブインタフェース(例えばハードドライブ又は光学ドライバ)、ネットワークインタフェースデバイス(例えば、イーサネットインタフェースカード、無線インタフェースカード)、ディスプレイドライバ(例えばグラフィックカード)あるいは決定された情報又は応答を出力する任意の装置であってもよい。更に、入出力装置124は、機械的機能を達成することを受け持つ自律機械に対し適当な方法でインタフェースしてもよい。
【0026】
(質問分類)
図2は、本発明の一実施形態に係る、自動的に質問を分類しそれに回答する方法を示すフロー図である。例えば、マイクロホン130及び入力装置112を介して質問が受け付けられる(ステップ204)。受け付けられた質問は、人工神経回路(ANN)を使用して、解釈され質問カテゴリに関連付けられる(ステップ208)。ANNの形状と操作は後記する通りである。ある実施形態においては、図3のテーブル300に示されるカテゴリセット310のように、1組の質問カテゴリが予め定義されている。質問カテゴリ310は以下を含む。
【0027】
310a事実−日付:特定の事象が発生した(又は発生する予定である)日付
【0028】
310b事実−人物:識別された人物についての情報
【0029】
310c事実−他:事象及び人物以外の特定の主題についての情報
【0030】
310d応答−to−客体−特性:特定の客体及び特性に関するクエリに対する応答として、人物、人間形ロボット又は他の自律エージェントがとり得る行為
【0031】
310e応答−to−人物−行為:特定の又は仮定上の人物及び行為に関するクエリに対する応答として、人物、人間形ロボット又は他の自律エージェントがとり得る行為
【0032】
310f黙示−応答−to−客体−特性:特定の客体及び特性に関する命令に対する応答として、人物、人間形ロボット又は他の自律エージェントがとり得る行為
【0033】
310g黙示−応答−to−客体−行為:特定の又は仮定上の人物及び行為に関する命令に対する応答として、人物、人間形ロボット又は他の自律エージェントがとり得る行為
【0034】
310h場所:特定の物が存在する又は発見され得る場所
【0035】
310i観測−事象−時刻:事象の観測に基づく、特定の事象が発生した時刻
【0036】
310j観測−客体−状態:客体の観測に基づく客体の状態
【0037】
310k観測−人物−行為:観測に基づく特定の又は仮定上の人物の行為
【0038】
310lステップ:特定のタスクを実行するために、人物、人間形ロボット又は他の自律エージェントが取り得る行為の候補のシーケンス
【0039】
310mウエブ−現状−事象:発生しつつある又は発生したばかりである事象についての情報
【0040】
310nウエブ−天候:特定の又は仮定上の場所内の天候条件についての情報
【0041】
カテゴリ310a〜c、f〜kに対応する質問又は命令に対する回答は、前記した米国特許出願“Building Plan for Household Tasks from Distributed Knowledge”に記載されたデータベースのような、分散知識キャプチャ技術を使用してコンパイルされたデータベース内に発見される可能性が最も高い。
カテゴリ310d〜eに対応する質問又は命令に対する回答は、同じく前記した米国特許出願“Responding to Situations Using Knowledge Representation and Inference”の中に発見され得る。
カテゴリ310m、nのような質問に対する回答は、ウエブ上で利用可能なデータベースのような、オープンデータベースの中に発見される可能性が最も高い。
テーブル300のカテゴリは例示的なものであるに過ぎず、当業者であれば、本発明の主旨を逸脱することなくカテゴリ310に対し変形や追加をすることが可能であることがわかる。
【0042】
図2に戻り、ある実施形態においては、質問において参照された1つの客体及び1つの特性が、もしあれば、識別される(ステップ212)。
例えば、“赤ん坊が泣いていれば、どうすればよいかあなたは知っているか”という例を考える。参照される客体は“赤ん坊”であり、参照される特性は“泣いている”である。識別されたカテゴリ、客体及び特性は、適当な回答を含む可能性が最も高いデータベースに対して(データベース内のテーブルに対しての場合もある)マッピングされる(ステップ216)べきクエリを定式化するために使用される。
システムクエリ言語(SQL)に基づくこのようなマッピングの例が、図4のテーブル400に示されている。
現在の質問例410bに対する回答は、マッピング420bを使用してあるデータベースに対して検索をかける(ステップ220)ことによって発見され得る。このマッピングは、関連付けられた客体が“赤ん坊”であり、関連付けられた特性が“泣いている”であるような、データベース内の状況に対する応答に基づく。
同様に、客体“スーツケース”を含む(が特性は含まない)他の質問例410aに対する回答は、マッピング420aを使用して発見され得る。
他の質問例410cに対する回答は、例えばマッピング420cに基づき、あるサーチエンジンを使用してウエブサーチを実行することによって発見され得る。
【0043】
一旦データベースクエリから質問に対する回答が受け付けられると(ステップ224)、その回答は、例えばディスプレイ150bに表示される(ステップ228)。代替的に、回答は、音声画像処理装置120によって実行される音声合成に基づいて、ユーザに対して聴覚的に伝達され得る。自律機械、ユーザ、環境、及び操作の状況次第で、受け付けられた回答の他の使用も可能であることが当業者であればわかるであろう。
【0044】
(人工神経回路)
前記したように、受け付けられた質問は、解釈されて、人工神経回路(ANN)を使用して質問カテゴリに関連付けられる(ステップ208)。ANNは、アルゴリズム的な解決が利用可能ではないが、関連付けられた行動の多くの例が利用可能であるような問題に対して有用であり、また、利用可能なデータから構造が識別可能である場合にも有用である。
汎用ANNは、図5の概念図を参照することによって理解され得る。
多重入力510は、受け付けられると、入力層を有する1組のノード520によって示される。
第一のウエイトの組530(例えば、乗数)は、入力層ノード520上で動作し、中位層すなわち隠れ層を有する他の組のノードによって1組の合計値を生成する。
隠れ層のノード540に対応する値は、他の組のウエイトを乗ぜられ、出力層のノード560によって合計された値からなる他の組を生成する。1組の出力570は、ノード560から提供される。
出力570は、例えば、0から1まで、又は−1から1までの範囲を占めるように拡大・縮小される。
入力510から出力570までの伝播処理は、前進行動と呼ばれることがある。ANNのウエイト530、550は、初期化されてデフォルト値に設定され、入力510から出力570の最初の組を生成し得る。この説明は、“Artifical Neural Networks:An Introduction,K.Priddy and P.Keller,The International Society for Optical Engineering,2005”の中に発見され得る。そしてこの文献はその全体がここに引用される。
【0045】
ANN500は、訓練する、すなわち、所望の出力570の組と実際の出力570の組との差分に比例する量だけウエイト530、550を変更することによって、1組の周辺状況に適応することができる。これは、教師がANNに対し、所与の入力510の組に基づく出力570の期待応答を教えるような、教師付訓練に従ってなされ得る。
例えば、前記したように、質問カテゴリ310に対応している14個の出力570があり得る。最大値を有する出力570が入力質問に対して決定されるカテゴリに対応するように、ANNは作られている。質問に対応するカテゴリを決定し、指示する別の方法によって、ANN500の様々な代替例が作られ得ることが当業者であればわかるであろう。
【0046】
汎用ANNの期待応答は、ウエイト530、550を適応させる誤差信号を生成するために使用され得る。これは、逆伝播又は逆エラー伝播と呼ばれることがある。このように、教師付訓練を用いれば、1組の入力510に当てられた質問は、出力570に対応する、1つの関連付けられた期待回答を有することになる。質問と対応する正しい回答又は期待回答の組み合わせは、ラベル付けされたパターン又はラベル付けされた標本と呼ばれる。
ANN500は、前進行動と逆伝播の反復起動、すなわちエポック(epoch)によって訓練され、別のラベル付けされた例を適用し、各エポックの期間中に、ANNの出力とウエイトを更新することができる。このプロセスは、1つの期待出力誤差が獲得されるまで続く。このような時点で、ANNは、収束した、又は訓練されたといわれ、ウエイトは固定され得る。この説明は、前記“Priddy,et al.”の中に発見され得る。
【0047】
ANN内で適用可能なウエイト更新のための離散時間アルゴリズムは、ベクトル方程式(1)で示される勾配降下法によって公式化され得る。
Δwt=η(∂e/∂w)+δ(Δwt−1)−γwt (1)
ここで、Δwtは、現在のウエイト変化であり、ηは、ANN内のウエイトが訓練の間に調整されていく率を決定するために用いられるスカラー量の学習率であり、∂e/∂wは、誤差をウエイトで偏微分した偏微分係数であり、δは、現在のウエイト変化に対する直前のウエイト変化の割合を加えるために使用される運動量因子である。運動量因子は、ウエイトが、グローバルというより局所的な、誤差の最小値に収束していくことを回避し得る平滑化効果を提供する。Δwt−1は、直前のウエイト変化であり、γは、不安定性を防止するために使用されるウエイト減衰(weight decay)である。本発明の一実施形態によれば、ηは0.1に設定され、δとγはゼロに設定される。
【0048】
実際には、教師付訓練に要求されるラベル付けされたデータは、比較的利用困難であり入手にコストがかかることもある。しかしながら、ラベル付けされていないデータ、すなわち、期待される又は予想される回答が事前に利用可能でない場合の入力動機は、比較的豊富であり、コストが低い。
ANN500のようなANNは、事前に定義された期待回答が要求されないように、その入力510に対して単に適合するように作られ得る。このようにしてラベル付けされていないデータは、ラベル付けされているデータに代替し得る。このようなANNは、教師なしANNと呼ばれる。この説明は、前記“Priddy,et al.”の中に発見され得る。
【0049】
本発明の一実施形態によれば、ANNは、ラベル付けされたデータとラベル付けされていないデータの両者を使用して訓練する。このアプローチは、部分教師付学習と呼ばれ、図6に示される。
ラベル付けされていないデータは、補助ANNと呼ばれる第1のANN630aに適用される。第1のANNは、ラベル付けされていないデータからラベル付けされているデータを生成し、その結果、データの基底予測構造又は基底機能構造を学習する。例えば、ラベル付けされていないデータは、その上で平滑機能分類が定義され得るデータ多様体(グラフ構造)を生成するのに使用され得る。これは、構造学習と呼ばれる。補助ANN630aが1つ以上の補助タスク、単一の問題に対する予測子(predictor)の役割を果たすキャッシュを有し得る。別々の問題毎の複数の多重予測子が観測されるとき、基底予測子空間が、複数の予測子に共有される共通の基底構造を発見するために分析され得る。逆に言えば、1つの共通な基底構造が複数の多重予測問題に共有される場合は、その構造は、より確実に学習され得る。予測空間上の重要な予測構造が一旦発見されると、その情報は、それぞれの個別の予測問題を改良するために使用され得る。
ラベル付けされていないデータに作用する複数の多重補助タスクから学習される予測構造は、ラベル付けされたデータを使用するターゲット教師付問題、すなわちメインタスクに作用するメインのANN630bに移転され得る。これは、帰納的移転と呼ばれる。帰納的移転は、学習された基底構造がターゲット教師付問題に役立つ場合により有益である。もし1つの補助タスクによって解決される問題がメインの問題に関係しているならば、帰納的移転は、ターゲット問題を解決するのに役立つ。このようにして、1つの補助タスクに扱われる問題は、メインタスクに扱われる問題に関連付けられるべきである。この説明は、“A Framework for Learning Predictive Structures from Multiple Tasks and Unlabeled Data,R.Ando and T.Zhang,Journal of Machine Learning Research,2005”の中に発見され得る。そしてこの文献はその全体がここに引用される。
【0050】
この実施形態においては、補助ANN630aは、Ma個の入力ノードの組640a、第1のウエイトの組642a、Na個の隠れノードの組644a、第2のウエイトの組646、及びOa個の出力ノードの組648を有する。ANN630aは、後記するようにラベル付けされていないデータを使用して訓練される。ANN630aが一旦収束すると、学習された予測構造は、図6に示されたようにウエイト642aを固定し移転することにより、メインのANN630bへ移転される。
ある実施形態においては、ウエイト642aに対応する中央制御装置122内の実装リソースは、補助ANN630aとメインのANN630bとの間で共有される。他の実施形態においては、このような実装リソースは分離したままであり、補助ANN630aは、ウエイトのメインのANN630bへの移転を補助するためにはもはや用いられない。
【0051】
メインのANN630bは、このように、補助ANN630aから移転されたMa個の入力ノード640aと、Mm個の入力ノード640bを有する。ある実施形態においては、Ma=Mmである。メインのANN630bは、第1のウエイトの組642a、642b、それぞれNa及びNm個の隠れノードの組644a、644b、及び第2のウエイトの組650a、650bを同様に有する。メインのANN630bは、出力層652及びOm個の出力ノードも有する。
メインのANN630bのようなANNは、別々の神経回路の部分を共通の出力層に結合することから、マルチパート神経回路、すなわちMPNNと呼ばれることがある。ある実施形態においては、Omは、質問カテゴリの数に等しく、この例で言えば14である。この実施形態においては、出力ノード652は、入力質問毎に決定されたカテゴリを指示する検出器又は検出アルゴリズムによって処理され得る。この検出器は、正しい検出確率と誤った検出確率との間の最適トレードオフを実現するために調整され得る閾値を実装し得る。このトレードオフは、レーダ受信機の設計との類似性に基づいて、受動者動作特性曲線上の点選択と呼ばれることがある。この説明は、前記“Priddy,et al.”の中に発見され得る。
【0052】
図7を参照すると、フロー図700は、本発明のある実施形態によるANN630a、630bの学習方法を示している。ラベル付けされていないデータが受け付けられる(ステップ708)。このようなデータは、例えば、地理的に分散した人間のボランティアが、図8に示されるようなプロンプトに対する応答としてウエブを介して提供した質問を有する。このような方法論が効果的なのは、コンセンサス、すなわち常識を構成する、広くかつ多様な主題からデータが入手され得るからである。分散データキャプチャ技術に関する追加情報は、前記した米国特許出願“Responding to Situations Using Knowledge Representation and Inference”及び“Commonsense Reasoning About Task Instructions”の中に発見され得る。
【0053】
ラベル付けされていないデータは、特有のバイアスを回避するために、注意深く入手されるべきである。例えば、プロンプトの作りがよくなければ、プロンプトは、対象者から予想される質問の種類を示唆することになる。さらに、ある種の質問は、他の種よりも、対象者にとって想像することが容易であり、その結果、より頻繁に入力され得る。このように、データの片寄りを補償し、質問カテゴリ毎の質問数のバランスを取るためにこのような質問を選択する場合には注意が払われるべきである。同様に、僅かな質問カテゴリについてだけデータの数が多いと、質問分類がより困難になる。なぜならば、他のカテゴリよりも少ない例から学習される質問カテゴリもあるからである。
【0054】
補助ANN630aは、受け付けた質問を自動的にラベル付けするように学習される(ステップ712)。ある実施形態においては、補助ANN630は、3つの補助タスクを有する。各補助タスクは、ラベル付けされていないデータについての特定のタイプの分析を行い、こうすることにより、特定のタイプのラベルを割り当て得る。ある補助タスクは、受け付けた質問中に含まれる単語から、“何”、“何処”又は“どのように”のような疑問詞を予測する。他の補助タスクは、受け付けた質問中の連続する単語毎に品詞2-グラム及び3-グラムを予測する。例えば、動詞−名詞−前置詞又は名詞−名詞−動詞のシーケンスを特定する。
【0055】
第3の補助タスクは、質問中の単語間の統語的な関係組(relation tuple)を予測する。これは、例えば、MINIPAR広範囲カバー係り受け構文解析ツールを使用してなされ得る。この構文解析ツールは、“カテゴリ1:関係:カテゴリ2”という形式の組によって単語間の統語的関係を表す係り受けツリーを作成する。
各カテゴリは、例えば、名詞はNN、動詞はVBというような、質問中の単語の品詞ラベルである。関係は、2つのカテゴリ間の有向統語的関係(例えば、客体に対してはOBJ、主題に対してはSUBJ、接続語に対してはCONJ)であり、係り受けツリーのリンクに対応する。
例えば、“赤ん坊が泣いていたらあなたはどうしますか?”という質問中、泣く[VB]は、赤ん坊[NN]の主題[SUBJ]であり、対応する統語的関係は、VB:SUBJ:NNである。“ジョンは問題に対する解決を発見した”というセンテンスに対する統語的関係のタグの組が図9に示されている。この説明は、“Dependency Based Evaluation of Minipar,Workshop on the Evaluation of Parsing Systems,Granada,Spain,1998”の中に発見され得る。そしてこの文献はその全体がここに引用される。
【0056】
この実施形態において、前記3つの補助タスクは、それらの出力を単一の出力層648内で組み合わせ(ステップ716)、ANN630aを1つの全体として訓練する(ステップ720)ことにより、並列的に学習される。一旦ANN630aが訓練すると、ウエイト644aは固定され、メインのANN630bに移管される(ステップ724)。ラベル付けされたデータ、例えばラベル付けされた質問が受け付けられる(ステップ728)。メインのANN630bは、このとき、このラベル付けされたデータを使用して訓練される(ステップ732)。
移転されたウエイトは、メインのANN630bがウエイト空間の特定の領域を見ることに限定し、それによって、メインのANN630bが利用できる仮説空間を削減するので、移転された複数のウエイトは、1つの帰納的バイアスを表すことになる。この背後にある考え方は、補助タスクには重要ではなかったが、メインのタスクには重要であるかも知れないラベル付けされた入力データからメインのタスクが新たな特徴を抽出することを可能にするということである。補助タスクを経て基底構造を学習するプロセスはメタ学習と呼ばれる。
【0057】
例えば、“フローレンスナイチンゲールはいつ生まれたか?(When was Florence Nightingale born?)”と言う質問については、固有名詞は記号NNPで置き換えられ、結果として、“When was NNP born?”となる。単語又は記号“When”、“was”、NNP及び“born”(例えば、ノード23、29、99、103)を表すMm個の入力ノードのノードは、値「1」を有することになる。ADJが形容詞“when”を意味し、VBが“was”を意味し、NNが名詞の記号NNPを意味することとする。Miniparによれば、“was”は“Florence Nightingale”の主題であり、“born”は“Florence Nightingale”の客体である。
従って、このセンテンス内の2つの関係は、VB:s:NN及びVB:obj:NNである。これらの関係(例えば、ノード620、630)に対応する入力ノードは、値「1」を有することとなる。同様に、3−グラム[ADJ VB NN]、[VB NN NN]及び[NN NN VB](ノード812,820、830)に対応する入力は値「1」を有することとなる。他の入力ノードの値は「0」となる。
【0058】
前記の補助タスクは例示に過ぎず、当業者であれば、このような補助タスクは、本発明の主旨を逸脱することなく、タイプや数において変化しうることがわかるであろう。また、補助タスクは、直列的又は並列的に実行され得る。補助タスクは、ラベル付けされていないデータと同様、ラベル付けされているデータにも作用を及ぼし得る。
【0059】
機械学習誤差は、推定誤差と、近似誤差を含む。推定誤差は、仮説空間からの最良の仮説を推定する際に発生する。この仮説空間が大きければ大きいほど、利用可能な最良仮説を発見することはより困難になる。近似誤差は、利用可能な仮説空間中の最良の仮説と、実際の分類子、例えば質問分類子との間の差から発生する。仮説空間が小さければ小さいほど、利用可能な最良の仮説が真の分類子に対する芳しくない近似となる確率は高い。
従って、推定誤差を削減するには小さな仮説空間が望ましい一方で、近似誤差を削減するには大きな仮説空間が望ましい。このことは、バイアス/分散トレードオフとして知られている。
【0060】
教師付学習のある公式が、入力ベクトルXを対応する出力Yにマッピングする予測子を追求する。通常は、予測子は、不知の確率分布Dに従い独立して生成される訓練標本の有限集合に基づく関数の組Hから選択される。組Hは、仮説空間と呼ばれ、入力Xから出力Yを予測するために使用され得る関数からなる。目的は、Dに対する誤差が小さい予測子を発見することにある。
予測子pの質は、Dに対する損失関数によって計測され得る。m個の学習タスクと、1組の仮説空間Hθがあるとする。ここで、θは、仮説空間に索引を付けるために使用される共通構造パラメータである。メタ学習問題は、m個のタスクについての予測子の平均期待リスクを最小化するθの値を学習することである。この問題は、次の式(2)で示される、m個のタスクに対する複合最適化問題として提起され得る。
【0061】
【数1】
ここで、Lは、1つの適当な損失関数である。
【0062】
【0063】
ある実施形態において、θは、共有されるウエイト642aの組である。補助ANN630bのそれぞれの出力648は、そこからθが推定される個々のタスクに対応する。仮説空間の組Hθは、例えば、642a、642b、650a、650bのようなすべての神経回路ウエイトの空間である。
(実験結果)
【0064】
本発明の一実施形態に係る1つのMPNNが実験的に評価された。補助タスクは、548個の手動でラベル付けされた訓練標本と、3252個のラベル付けされていない訓練標本を使用し、Ma=850個の入力であった。合計3800個の訓練標本は、前記の3つのタスク、すなわち、名づけて疑問詞予測、品詞2−グラム3−グラム予測、統語的関係組予測、を有していた。これらの補助タスクは、1つの共通補助ANNを用いて実装され、並行的に訓練された。それぞれの補助タスクは、複数の出力を含んでいた。
例えば、疑問詞予測タスクは、疑問詞の候補毎に1つの、20の2値の出力を含んでいた。3つの補助タスクの出力は、組み合わされて649個の2値の出力となっており、効果的に649個の2クラス分類タスクを有していた。補助ANN630aは、Na=20個のノードを有する1つの隠れ層を有していた。
【0065】
一旦、補助ANN630aが訓練すると、ウエイト642aはメインのANN630bに移管され、MPNNを形成した。このMPNNは、Nm=20個の隠れノードと同様に、補助ANN及びメインのANNのそれぞれについて繰り返された850個の入力を有していた。メインのタスクは、同じ548個の手動でラベル付けされた標本につき訓練した。メインのANN630bが訓練する期間中、補助ANNが提供したウエイト642aは固定されていた。パフォーマンスの比較としては、1700個の入力があった第2のメインのANNは、548個の手動でラベル付けされた標本のみを使用して訓練された。両ANNの学習は、固定値「0.1」に設定された学習率ηの値に対して敏感ではないことがわかった。
【0066】
帰納的移転を伴う実験結果と、帰納的移転なしの実験結果が得られた(ぞれぞれ、MPNN及び第2のメインのANNに対応する)。これらは、図10のグラフ1000において、それぞれ、曲線1010及び曲線1020として示されている。収束は、帰納的移転を伴うほうが有意に速い。補助タスク(642aによって表される)によって抽出された特徴はメインのタスクに有用であるからである。メインのANN630bが訓練するとき、出力層652は、移転されたウエイト642aから有意な情報を入手する。
また、逆エラー伝播アルゴリズムは、ウエイト642a、bよりも、(出力層652により近い)ウエイト650a、bを速く修正する傾向がある。それで、移転されたウエイト付のMPNNの部分をより注視し得る。帰納的移転に関するこれらの2つの因子は、より速い収束を促進する。MPNNの部分がすべて訓練可能であるという事実は、帰納的移転を伴う最終的精度が、少なくとも、帰納的移転なしの場合と同程度には良好であることを保証する。
【0067】
グラフ1000のy軸は、“トップ3”アルゴリズムによる誤差をプロットする。このアルゴリズムでは、もし、正しい質問カテゴリが、MPNNの最高位の出力652の上位3つ中になければ、1つの出力は、1つの誤分類としてカウントされる。ラベル付けされた標本の約65%について、正しい分類は、現に出力652中の最高位のカテゴリであった。
図10の誤差バーの垂直に立ち上がった部分は、ある標準偏差に相当し、帰納的移転なしよりも帰納的移転を伴うほうが、小さい傾向がある。検定装置の誤分類率が、図11に示されている。この率は、それぞれ誤差バー1110と1120によって示されるように、帰納的移転を伴わない20.65%から、帰納的移転を伴う15.95%までの間に収まっている。
【0068】
図11の垂線1112、1122は、対応する95%信頼区間を示し、重複することはない。このことは、誤分類率の差が統計的に有意であることを暗示している。また、これらの信頼区間は、帰納的移転なしよりも帰納的移転を伴うほうが、僅かに小さい(0.007対0.009)。もし、最上位のカテゴリだけが質問分類に使用されるならば、誤差はより大きく、信頼区間の差はより顕著になる。このことは、ANN学習は帰納的移転を付されるとより確実(robust)になることをさらに示唆する。
【0069】
帰納的移転の効果を定量化するために、追加実験が行われた。その実験では、663個の出力(14個のメインのタスクの出力と649個の補助タスクの出力)を伴う単一ANNを構築し、このANNを、直前にメインのタスクのみに使用された548個のラベル付けされた標本に対し訓練することによって、すべての補助タスクが、メインのタスクと並行して学習された。この構成は、マルチタスク学習(MTL)として知られている。
前記した補助タスクに使用されたデータは、排除された。なぜならば、メインのタスクのためのラベルは、補助タスクには適用できないからであり、大量の利用可能な補助タスクのデータは、メインのタスクの学習を圧倒するからでもある。この説明は、“Multitask leaning,Machine Leaning,28,41-75,R.Caruana 1997”の中に発見され得る。そしてこの文献はその全体がここに引用される。
【0070】
図12を参照すると、MTL構成についての学習曲線1210が、直前に示された学習曲線1010、1020とともに示されている。検定誤差1310が、図13において、直前の検定誤差1110、1120とともに示されている。これらはメインのタスクの誤差であって、たとえすべてのタスクが1つの単一神経回路を用いて同時に学習されるとしても、正しい比較を提供するために、補助タスクの誤差を含まない。
図13に見られるように、MTLの検定誤差1310は、帰納的移転を伴う学習の誤差(1120)と、帰納的移転なしの学習の誤差(1110)との間の値を取る。帰納的移転を伴う学習のためのMPNNが隠れノード644a、bを合計40個しか使用しない一方、このパフォーマンスは、ANN中の60個の隠れ層のノードを使用することによって得られる。図12、13のデータは、補助タスクからの帰納的移転の追加的な利点を論証しているように見える。
【0071】
本発明の利点は、比較的多量に存在し入手コストも低いラベル付けされないデータの適用を通じて利用可能な情報を効果的に使用することを含む。更に、マルチパートANNとラベル付けされていないデータを適用することは、単一パートANNに関する訓練時間と誤差率を改善する。
【0072】
当業者であれば、自動質問分類及び回答のためのシステム及びプロセスについての追加的代替的実施形態がわかるであろう。本発明は、ここで開示された詳細構成に限定されることはなく、特許請求の範囲に規定された本発明の主旨を逸脱することなく、当業者が、本発明の方法及び装置の配置、操作及び詳細に修正や変更を加えることが可能である。
【図面の簡単な説明】
【0073】
【図1】本発明の1つの実施形態に係るシステムを示す図である。
【図2】本発明の1つの実施形態に係る質問に回答する方法を示す図である。
【図3】本発明の1つの実施形態に係る質問カテゴリを示す図である。
【図4】本発明の1つの実施形態に係る質問からデータベースへのマッピングを示す図である。
【図5】汎用人工神経回路を示す図である。
【図6】本発明の1つの実施形態に係るマルチパート人工神経回路の補助タスク及びメインのタスクを示す図である。
【図7】本発明の1つの実施形態に係るマルチパート人工神経回路の適用方法を示す図である。
【図8】本発明の1つの実施形態に係るラベル付けされていないデータを受け付けるインタフェースを示す図である。
【図9】センテンス内の統語的関係タグの組を示す図である。
【図10】本発明の1つの実施形態の実験評価に係る学習曲線を示す図である。
【図11】本発明の1つの実施形態の実験評価に係る検定誤差を示す図である。
【図12】本発明の1つの実施形態の実験評価に係る学習曲線を示す図である。
【図13】本発明の1つの実施形態の実験評価に係る検定誤差を示す図である。
【技術分野】
【0001】
(関連出願の参照)
本出願は、2006年2月1日に出願された“Meta Learning for Question Answering”と題する米国特許仮出願第60/764,412号、及び2006年4月24日に出願された“Meta Learning for Question Classification”と題する米国特許出願第11/410,443号を基礎とする優先権を米国特許法第119条(e)に基づき主張し、これらの出願はその全体がここに引用される。
【0002】
本出願は、2005年1月28日に出願された“Responding to Situations Using Knowledge Representation and Inference”と題する米国特許出願第11/046,343号と関連しており、当該出願はその全体がここに引用される。
【0003】
本出願は、2005年12月6日に出願された“Building Plan for Household Tasks from Distributed Knowledge”と題する米国特許出願第11/296,020号と関連しており、当該出願はその全体がここに引用される。
【0004】
本出願は、2006年3月16日に出願された“Commonsense Reasoning About Task Instructions”と題する米国特許出願第11/378,063号と関連しており、当該出願はその全体がここに引用される。
【0005】
本発明は、自律機械の分野に関し、特に、自律機械が質問に回答することを可能にすることに関する。
【背景技術】
【0006】
例えば人間の特徴を有するロボットのような人間形ロボットは、自律機械技術を適用して家庭やオフィスの人間を支援するうえで重要なステップである。子供の世話をする、情報提供や支援のために電話に応答する、等の無数の日常的活動に対して潜在的な適用可能性がある。屋内用人間形ロボットは、コーヒーを作る、衣服を洗濯する、こぼした汚れを掃除する等の一般的な家庭内の雑事を遂行するものと考えられている。
更なる適用例として、年配者や障害者の支援も含み得る。人間形ロボットは、ロボットのユーザからの多くのタイプの命令や質問に対応することになると考えられている。このような質問は、幅広い主題をカバーし得る。例えば、質問は、“大統領は誰ですか”というような事実に関するものであってもよい。他の質問のタイプは、“天候はどうですか”というような条件に関するものであってもよい。更に、他の質問のタイプは、“冷蔵庫の中に食料はありますか”というような観測に関するものであってもよい。
【0007】
いくつかのシステムは、質問階層を手動で構築してきている。この説明は、“D.Moldovan,et al.,Lasso:A Tool for Surfing the Answer Net,proceedings of TREC-8,pp175-183,1999”の中に発見され得る。
ある代替的なアプローチは、言い換え変形語を認識する。例えば、Barzilay et al.は、コーパスから200個の2センテンステーマを分析し、7つの語彙統語的言い換え規則を抽出した。これらの規則は、統語的かつ語彙的言い換えの82%をカバーし、更に、言い換え語は全変形語の70%をカバーしていた。この説明は、“R.Barzilay, et al.,Information Fusion in the Context of Multi−Document Summarization,Proceedings of ACL,1999”の中に発見され得る。そしてこの文献はその全体がここに引用される。
Qi et al.は、確率的分類法を用いた多数カテゴリを考慮に入れていた。この説明は、“H.Qi, et al.,Question Answering and Novelty Tracks, Proceedings of TREC2002,The University of Michigan at Trec,2002”の中に発見され得る。そしてこの文献はその全体がここに引用される。
【0008】
AskMSRは、例えば“Bill Gates is married to”の右側に来る5つのトークンのように、回答を含むと思われるトークンのシーケンスを抽出するために、質問から派生したテキストパターンを使用するNグラム収穫法を使用していた。このアプローチは、例えば“is Gates married to”“Gates is married to”“Gates married is to”“Gates married to is”に対し名詞-目的語(NO)構文分析又は品詞(POS)タグ付けを行うというような、規則に一致する表現例によって、質問をサーチエンジン用クエリに変換していた。サーチエンジン用クエリは、ウエブをサーチするサーチエンジンに従っていた。応答は、予想回答のタイプ、発生頻度多数決、及び複数の短い候補を結合して長い候補、例えば国連児童基金、にすることによるタイリング(tiling)によりフィルタにかけられていた。この説明は、“AskMSR:Question Answering Using the Worldwide Web,M.Banko,et al.,Proceedings of AAAI Spring Symposium on Mining Answers from Texts and Knowledge Bases,March 2002” の中に発見され得る。そしてこの文献はその全体がここに引用される。
【0009】
PaskaとHarabigiuは、質問タイプと予想回答タイプの大まかな分類法を開発した。質問と回答に関連するテキストを構文解析するために、そして知識ベースを構築するために、統計的構文分析が使用された。処理可能な段落数を検索し、回答を抽出するためにクエリ語を加え又は削除するクエリ拡大ループが使用された。一旦質問が分類されると、適当な知識ソースを使用して回答が得られた。例えば、天候に関する質問については、天候ウエブサイトが適当である。例えば、定義に関する質問については、ユーザにもよるが、辞書の定義、一般的な百科事典エントリ、又は特定分野の記事が適当である。この説明は、“M.A.Pasca,and S.M.Harabagiu,High Performance Question Answering,Proceedings of the 24thAnnual International ACM SIGIR Conference on Research and Development in Information Retrieval,2001”の中に発見され得る。
【0010】
従来のQAシステムは、多重回答発生に関する統計(多数決、タイリング、フィルタリング等)を使用し、回答が予想タイプに一致することを保証している。事実に関する質問に対する回答は、典型的には、例えば場所、人物、組織のような実在する名前(名詞)が付けられる。
Lehnertによれば、質問の分類は、“何時かわかりますか”“はい”、“ジョンはどのようにして試験に合格しましたか”“ペンで”のような質問に対する回答を避けるために重要である。この説明は、“W.Lehnert, A Conceptual Theory of Question Answering, Proceedings of the Fifth international Joint Conference on Artificial Intelligence(IJCAI),158-164,1997”の中に発見され得る。そしてこの文献はその全体がここに引用される。
【0011】
質問回答(QA)の従来の業績は、事実に関するQAに焦点を合わせてきた。例えば、テキスト検索参照(Text Retrieval Conference:TREC)は、ワールドワイドウエブ上で多くの回答が発見されるような、疑似事実に関する質問に焦点を合わせてきた。TRECシステムは、所与の質問に対する回答を決定するために単語ベースの分類を使用し、また、回答候補を抽出するために、再構成/パターンマッチングのような言語技術を使用する。例えば、“ニクソンはいつ中国を訪問したか”という質問に対する回答タイプは日付である。質問の再構成は、“Nixon visited china in ”のような変形例を含む。この説明は、“A.R.Diekema,et al.,Finding Answers to Complex Questions,2004,in M.T.Maybury,ed.,New Directions in Question Answering,AAAI Press/MIT Press,141-152”の中に発見される。そしてこの文献はその全体がここに引用される。
【0012】
質問分類に対する従来アプローチは、ラベル付けされた例、すなわち、ペアになった回答が付された質問例に頼っている。残念ながら、ラベル付けされた例は、比較的希少で高価である。なぜならば、質問例を手動でラベリングすることは大変手間がかかるからである。更に、従来アプローチは、例外的な場合に機能停止し得る、質問分類規則の手動コード化を必要とし、加えて、従来アプローチは、事実に関する質問のみを受け入れる。
しかしながら、人間形ロボットのような自律機械に対してなされた質問のうち、事実に関するものは比較的少ない。それどころか、このような質問は、状況(例えば、赤ん坊が泣いていればどうすればよいかあなたは知っているか)、観測や進行中の事象に関する問合せ、及び黙示的な質問(例えば、応答を引き出すために提供されたステートメント)に対する応答にまで及ぶ。従って、自律機械は、適当な知識及び情報に対するリアルタイムのアクセスを必要とすることになる。
【発明の開示】
【発明が解決しようとする課題】
【0013】
前記から、人間形ロボットのような自律機械に、知識及び情報の様々なソースに対するアクセスを提供し、前記自律機械が、どのソースが求められる回答を提供する可能性が高いかを決定するために、効果的に質問を分類する方法及び装置が必要であることがわかる。更に、このことは、実質的な数の、手動でラベル付けされた例及び質問分類規則の手動コード化を要求することなく達成されるべきである。
【課題を解決するための手段】
【0014】
(要約)
本発明は、自動的に質問を分類し、質問に対して回答するシステム及び方法を含む。ある実施形態において、1つのマルチパート人工神経回路(ANN)が、受け付けた質問を、複数の定義済カテゴリのうちの1つと関連するものとして分類するために適用される。このカテゴリは、例えば、日付に関する事実、人物に関する事実、ある特性を有する客体に対する応答、場所、及び事象や時間に関する観測等を含み得る。
このような分類は、質問が、複数の使用可能なデータベースのうちの1つ又はウエブに対してマッピングされ得るようにする。マルチパートANNは、1つのメインのANNと、1つの補助ANNを含む。それぞれのANNは、ノードとウエイトの階層を含む。
【0015】
ラベル付けされていないデータが、複数の人間ボランティアのようなソースから受け付けられる。ラベル付けされていないデータは、人間形ロボットのような自律機械に対して問われるかも知れない一式の補足的質問を含む。ラベルが付されていないデータは、教師なし状態で、補助ANNを訓練するために使用される。それによって、1つのアプリオリに定義された回答が要求されることはない。
教師なし訓練は、補足的質問中の単語毎に品詞タグを生成する、補足的質問中の残存単語から疑問詞(例えばWhat,where,how)を予測する、及び1つの補足的質問中の2つの単語間の統語的関係の組を予測する、というような多重補助タスクを含み得る。補助的タスクは、ラベル付けされていないデータから、それによって基底となる予測的又は機能的な構造を学習するラベル付けされたデータを生成する。
【0016】
一旦補助ANNが訓練されると、ウエイトは固定されメインのANNへ移転される。これは、予測構造をメインのANNへ移転するもので、帰納的移転と呼ばれるプロセスである。その結果、メインのANNは、例えば、組になった回答を有する質問のような、ラベル付けされた質問を使用して訓練され得るようになる。そこで、回答されるべき元の質問は、定義済のカテゴリのうちの1つを割り当てる、訓練されたメインのANNに対して適用される。割り当てられたカテゴリは、元の質問を適当な回答を含むと最も思われるデータベースに対してマッピングするために使用される。
【0017】
ある実施形態においては、客体及び/又は特性は、回答するべき元の質問の範囲内で識別される。客体及び/又は特性は、選択されたデータベース内で回答をサーチするために、例えばシステムクエリ言語(SQL)を使用して1つのクエリを定式化するために使用される。
【0018】
実際には、ラベル付けされていないデータが比較的豊富で、容易に入手できるのに対して、ラベル付けされたデータは、相対的に利用不可能であり、入手コストが高い。そこで、本発明は、利用可能な情報を効率的に使用する。更に、マルチパートANN及びラベル付けされていないデータの適用は、シングルパートANNとの比較では、訓練時間及び誤差率を改善する。
【0019】
(図面の簡単な説明)
図面と以下の説明は、図示された通りにのみ、本発明の言及された実施形態に関する。類似の参照番号が複数の図面で使用される場合は類似の機能を示している。各図は、単に例示目的で本発明の実施形態を描写している。当業者であれば、本発明の原理から逸脱することなく以下に例示する構成や方法の代替的実施形態を実施することが可能であることを後記する明細書の記載から容易に知り得るであろう。
【発明を実施するための最良の形態】
【0020】
(言及された実施形態の詳細な説明)
質問分類のためのメタ学習のための方法及び装置が説明されている。以下の説明では、説明目的で、本発明の完全な理解を提供するために多くの詳細が説明される。しかしながら、当業者にとっては、特定された詳細なしでも本発明が実施され得ることが明らかであろう。他の場合には、本発明が不明確になるのを防ぐために、構造及び部材はブロック図で示される。
【0021】
本明細書において、“ある実施形態”又は“1つの実施形態”と言う場合は、本発明の少なくとも1つの実施形態に、その実施形態に関連して記述される1つの特定の特徴又は構造が含まれていることを意味する。本明細書のあちこちに“ある実施形態では”という語が出現しても、必ずしも同一の実施形態を指しているわけではない。
【0022】
図1は、本発明の一実施形態に係るシステム100を示している。コンピュータシステム110は、入力装置112、主記憶装置114、補助記憶装置118、中央制御装置122、及び入出力装置124を有する。代替的な実施形態においては、音声画像処理装置120は、中央制御装置122の一部であってもよいし、ユーザからの質問及び命令を受け付け処理するための別の装置であってもよい。
同様に、主記憶装置114は、スタンドアロンの記憶デバイス(RAM)であってもよいし、処理装置122付きのメモリーチップ(例えばキャッシュメモリ)であってもよい。
補助記憶装置118は、ハードディスク、DVD−R/RW、CD−R/RW又はRAMのような任意の大容量ストレージである。同様にコンピュータシステム110は、サーバ、パーソナルコンピュータのようなスタンドアロンのシステムであってよい。代替例として、コンピュータシステム110は、例えば、音声画像処理システムを備えるロボットのようなより大きなシステムの一部であってもよい。
【0023】
この実施形態によれば、入力装置112は、データベース140から、人間ボランティアによって提供された知識のような情報を受け付ける。入力装置112は、マイクロホン又は同様のデバイス130から発話を直接受け付けてもよいし、カメラ又はビデオキャプチャデバイス132から画像を受け付けてもよい。
また、入力装置112は、他のデータベース、他の聴覚システム、インターネットサーバのようなネットワークシステムから情報を受け付けるインタフェースであってもよい。このネットワークインタフェースは、USB、RS−232シリアルポート、イーサネットカードのような有線インタフェースであってもよいし、ブルートウース、WiFi、IEEE802.11のような無線プロトコルを使用した無線通信デバイスのような無線インタフェースモジュールであってもよい。音声画像処理装置120は、入力装置112を介して受け付けた音声命令又は質問あるいは画像の事前処理用に使用され、中央制御装置122が処理可能なフォーマットに音声命令又は質問あるいは画像を変換する。
【0024】
中央制御装置122による処理を受ける情報は、主記憶装置114に格納される。中央制御装置122は、本発明に係る1つ又は複数の方法(例えば、質問に対して回答する、又は命令を実行する等)を遂行する一連の命令を読み込み実行する。主記憶装置114は、このような回答又は実行のための命令モジュール116を含んでもよい。
【0025】
中央制御装置122は、ネットワーク要素又はサーバ150a、ディスプレイ150b、データベース150cのような外部装置150と、入出力装置124を介して情報を交換する。ネットワーク要素又はサーバ150aは、インターネットのような他のネットワークと接続し得、それによってワールドワイドウエブのようなソースからの情報にアクセスし得る。
入力装置112と同様に、入出力装置124は、有線であってもよいし、無線であってもよい。入出力装置124は、ストレージドライブインタフェース(例えばハードドライブ又は光学ドライバ)、ネットワークインタフェースデバイス(例えば、イーサネットインタフェースカード、無線インタフェースカード)、ディスプレイドライバ(例えばグラフィックカード)あるいは決定された情報又は応答を出力する任意の装置であってもよい。更に、入出力装置124は、機械的機能を達成することを受け持つ自律機械に対し適当な方法でインタフェースしてもよい。
【0026】
(質問分類)
図2は、本発明の一実施形態に係る、自動的に質問を分類しそれに回答する方法を示すフロー図である。例えば、マイクロホン130及び入力装置112を介して質問が受け付けられる(ステップ204)。受け付けられた質問は、人工神経回路(ANN)を使用して、解釈され質問カテゴリに関連付けられる(ステップ208)。ANNの形状と操作は後記する通りである。ある実施形態においては、図3のテーブル300に示されるカテゴリセット310のように、1組の質問カテゴリが予め定義されている。質問カテゴリ310は以下を含む。
【0027】
310a事実−日付:特定の事象が発生した(又は発生する予定である)日付
【0028】
310b事実−人物:識別された人物についての情報
【0029】
310c事実−他:事象及び人物以外の特定の主題についての情報
【0030】
310d応答−to−客体−特性:特定の客体及び特性に関するクエリに対する応答として、人物、人間形ロボット又は他の自律エージェントがとり得る行為
【0031】
310e応答−to−人物−行為:特定の又は仮定上の人物及び行為に関するクエリに対する応答として、人物、人間形ロボット又は他の自律エージェントがとり得る行為
【0032】
310f黙示−応答−to−客体−特性:特定の客体及び特性に関する命令に対する応答として、人物、人間形ロボット又は他の自律エージェントがとり得る行為
【0033】
310g黙示−応答−to−客体−行為:特定の又は仮定上の人物及び行為に関する命令に対する応答として、人物、人間形ロボット又は他の自律エージェントがとり得る行為
【0034】
310h場所:特定の物が存在する又は発見され得る場所
【0035】
310i観測−事象−時刻:事象の観測に基づく、特定の事象が発生した時刻
【0036】
310j観測−客体−状態:客体の観測に基づく客体の状態
【0037】
310k観測−人物−行為:観測に基づく特定の又は仮定上の人物の行為
【0038】
310lステップ:特定のタスクを実行するために、人物、人間形ロボット又は他の自律エージェントが取り得る行為の候補のシーケンス
【0039】
310mウエブ−現状−事象:発生しつつある又は発生したばかりである事象についての情報
【0040】
310nウエブ−天候:特定の又は仮定上の場所内の天候条件についての情報
【0041】
カテゴリ310a〜c、f〜kに対応する質問又は命令に対する回答は、前記した米国特許出願“Building Plan for Household Tasks from Distributed Knowledge”に記載されたデータベースのような、分散知識キャプチャ技術を使用してコンパイルされたデータベース内に発見される可能性が最も高い。
カテゴリ310d〜eに対応する質問又は命令に対する回答は、同じく前記した米国特許出願“Responding to Situations Using Knowledge Representation and Inference”の中に発見され得る。
カテゴリ310m、nのような質問に対する回答は、ウエブ上で利用可能なデータベースのような、オープンデータベースの中に発見される可能性が最も高い。
テーブル300のカテゴリは例示的なものであるに過ぎず、当業者であれば、本発明の主旨を逸脱することなくカテゴリ310に対し変形や追加をすることが可能であることがわかる。
【0042】
図2に戻り、ある実施形態においては、質問において参照された1つの客体及び1つの特性が、もしあれば、識別される(ステップ212)。
例えば、“赤ん坊が泣いていれば、どうすればよいかあなたは知っているか”という例を考える。参照される客体は“赤ん坊”であり、参照される特性は“泣いている”である。識別されたカテゴリ、客体及び特性は、適当な回答を含む可能性が最も高いデータベースに対して(データベース内のテーブルに対しての場合もある)マッピングされる(ステップ216)べきクエリを定式化するために使用される。
システムクエリ言語(SQL)に基づくこのようなマッピングの例が、図4のテーブル400に示されている。
現在の質問例410bに対する回答は、マッピング420bを使用してあるデータベースに対して検索をかける(ステップ220)ことによって発見され得る。このマッピングは、関連付けられた客体が“赤ん坊”であり、関連付けられた特性が“泣いている”であるような、データベース内の状況に対する応答に基づく。
同様に、客体“スーツケース”を含む(が特性は含まない)他の質問例410aに対する回答は、マッピング420aを使用して発見され得る。
他の質問例410cに対する回答は、例えばマッピング420cに基づき、あるサーチエンジンを使用してウエブサーチを実行することによって発見され得る。
【0043】
一旦データベースクエリから質問に対する回答が受け付けられると(ステップ224)、その回答は、例えばディスプレイ150bに表示される(ステップ228)。代替的に、回答は、音声画像処理装置120によって実行される音声合成に基づいて、ユーザに対して聴覚的に伝達され得る。自律機械、ユーザ、環境、及び操作の状況次第で、受け付けられた回答の他の使用も可能であることが当業者であればわかるであろう。
【0044】
(人工神経回路)
前記したように、受け付けられた質問は、解釈されて、人工神経回路(ANN)を使用して質問カテゴリに関連付けられる(ステップ208)。ANNは、アルゴリズム的な解決が利用可能ではないが、関連付けられた行動の多くの例が利用可能であるような問題に対して有用であり、また、利用可能なデータから構造が識別可能である場合にも有用である。
汎用ANNは、図5の概念図を参照することによって理解され得る。
多重入力510は、受け付けられると、入力層を有する1組のノード520によって示される。
第一のウエイトの組530(例えば、乗数)は、入力層ノード520上で動作し、中位層すなわち隠れ層を有する他の組のノードによって1組の合計値を生成する。
隠れ層のノード540に対応する値は、他の組のウエイトを乗ぜられ、出力層のノード560によって合計された値からなる他の組を生成する。1組の出力570は、ノード560から提供される。
出力570は、例えば、0から1まで、又は−1から1までの範囲を占めるように拡大・縮小される。
入力510から出力570までの伝播処理は、前進行動と呼ばれることがある。ANNのウエイト530、550は、初期化されてデフォルト値に設定され、入力510から出力570の最初の組を生成し得る。この説明は、“Artifical Neural Networks:An Introduction,K.Priddy and P.Keller,The International Society for Optical Engineering,2005”の中に発見され得る。そしてこの文献はその全体がここに引用される。
【0045】
ANN500は、訓練する、すなわち、所望の出力570の組と実際の出力570の組との差分に比例する量だけウエイト530、550を変更することによって、1組の周辺状況に適応することができる。これは、教師がANNに対し、所与の入力510の組に基づく出力570の期待応答を教えるような、教師付訓練に従ってなされ得る。
例えば、前記したように、質問カテゴリ310に対応している14個の出力570があり得る。最大値を有する出力570が入力質問に対して決定されるカテゴリに対応するように、ANNは作られている。質問に対応するカテゴリを決定し、指示する別の方法によって、ANN500の様々な代替例が作られ得ることが当業者であればわかるであろう。
【0046】
汎用ANNの期待応答は、ウエイト530、550を適応させる誤差信号を生成するために使用され得る。これは、逆伝播又は逆エラー伝播と呼ばれることがある。このように、教師付訓練を用いれば、1組の入力510に当てられた質問は、出力570に対応する、1つの関連付けられた期待回答を有することになる。質問と対応する正しい回答又は期待回答の組み合わせは、ラベル付けされたパターン又はラベル付けされた標本と呼ばれる。
ANN500は、前進行動と逆伝播の反復起動、すなわちエポック(epoch)によって訓練され、別のラベル付けされた例を適用し、各エポックの期間中に、ANNの出力とウエイトを更新することができる。このプロセスは、1つの期待出力誤差が獲得されるまで続く。このような時点で、ANNは、収束した、又は訓練されたといわれ、ウエイトは固定され得る。この説明は、前記“Priddy,et al.”の中に発見され得る。
【0047】
ANN内で適用可能なウエイト更新のための離散時間アルゴリズムは、ベクトル方程式(1)で示される勾配降下法によって公式化され得る。
Δwt=η(∂e/∂w)+δ(Δwt−1)−γwt (1)
ここで、Δwtは、現在のウエイト変化であり、ηは、ANN内のウエイトが訓練の間に調整されていく率を決定するために用いられるスカラー量の学習率であり、∂e/∂wは、誤差をウエイトで偏微分した偏微分係数であり、δは、現在のウエイト変化に対する直前のウエイト変化の割合を加えるために使用される運動量因子である。運動量因子は、ウエイトが、グローバルというより局所的な、誤差の最小値に収束していくことを回避し得る平滑化効果を提供する。Δwt−1は、直前のウエイト変化であり、γは、不安定性を防止するために使用されるウエイト減衰(weight decay)である。本発明の一実施形態によれば、ηは0.1に設定され、δとγはゼロに設定される。
【0048】
実際には、教師付訓練に要求されるラベル付けされたデータは、比較的利用困難であり入手にコストがかかることもある。しかしながら、ラベル付けされていないデータ、すなわち、期待される又は予想される回答が事前に利用可能でない場合の入力動機は、比較的豊富であり、コストが低い。
ANN500のようなANNは、事前に定義された期待回答が要求されないように、その入力510に対して単に適合するように作られ得る。このようにしてラベル付けされていないデータは、ラベル付けされているデータに代替し得る。このようなANNは、教師なしANNと呼ばれる。この説明は、前記“Priddy,et al.”の中に発見され得る。
【0049】
本発明の一実施形態によれば、ANNは、ラベル付けされたデータとラベル付けされていないデータの両者を使用して訓練する。このアプローチは、部分教師付学習と呼ばれ、図6に示される。
ラベル付けされていないデータは、補助ANNと呼ばれる第1のANN630aに適用される。第1のANNは、ラベル付けされていないデータからラベル付けされているデータを生成し、その結果、データの基底予測構造又は基底機能構造を学習する。例えば、ラベル付けされていないデータは、その上で平滑機能分類が定義され得るデータ多様体(グラフ構造)を生成するのに使用され得る。これは、構造学習と呼ばれる。補助ANN630aが1つ以上の補助タスク、単一の問題に対する予測子(predictor)の役割を果たすキャッシュを有し得る。別々の問題毎の複数の多重予測子が観測されるとき、基底予測子空間が、複数の予測子に共有される共通の基底構造を発見するために分析され得る。逆に言えば、1つの共通な基底構造が複数の多重予測問題に共有される場合は、その構造は、より確実に学習され得る。予測空間上の重要な予測構造が一旦発見されると、その情報は、それぞれの個別の予測問題を改良するために使用され得る。
ラベル付けされていないデータに作用する複数の多重補助タスクから学習される予測構造は、ラベル付けされたデータを使用するターゲット教師付問題、すなわちメインタスクに作用するメインのANN630bに移転され得る。これは、帰納的移転と呼ばれる。帰納的移転は、学習された基底構造がターゲット教師付問題に役立つ場合により有益である。もし1つの補助タスクによって解決される問題がメインの問題に関係しているならば、帰納的移転は、ターゲット問題を解決するのに役立つ。このようにして、1つの補助タスクに扱われる問題は、メインタスクに扱われる問題に関連付けられるべきである。この説明は、“A Framework for Learning Predictive Structures from Multiple Tasks and Unlabeled Data,R.Ando and T.Zhang,Journal of Machine Learning Research,2005”の中に発見され得る。そしてこの文献はその全体がここに引用される。
【0050】
この実施形態においては、補助ANN630aは、Ma個の入力ノードの組640a、第1のウエイトの組642a、Na個の隠れノードの組644a、第2のウエイトの組646、及びOa個の出力ノードの組648を有する。ANN630aは、後記するようにラベル付けされていないデータを使用して訓練される。ANN630aが一旦収束すると、学習された予測構造は、図6に示されたようにウエイト642aを固定し移転することにより、メインのANN630bへ移転される。
ある実施形態においては、ウエイト642aに対応する中央制御装置122内の実装リソースは、補助ANN630aとメインのANN630bとの間で共有される。他の実施形態においては、このような実装リソースは分離したままであり、補助ANN630aは、ウエイトのメインのANN630bへの移転を補助するためにはもはや用いられない。
【0051】
メインのANN630bは、このように、補助ANN630aから移転されたMa個の入力ノード640aと、Mm個の入力ノード640bを有する。ある実施形態においては、Ma=Mmである。メインのANN630bは、第1のウエイトの組642a、642b、それぞれNa及びNm個の隠れノードの組644a、644b、及び第2のウエイトの組650a、650bを同様に有する。メインのANN630bは、出力層652及びOm個の出力ノードも有する。
メインのANN630bのようなANNは、別々の神経回路の部分を共通の出力層に結合することから、マルチパート神経回路、すなわちMPNNと呼ばれることがある。ある実施形態においては、Omは、質問カテゴリの数に等しく、この例で言えば14である。この実施形態においては、出力ノード652は、入力質問毎に決定されたカテゴリを指示する検出器又は検出アルゴリズムによって処理され得る。この検出器は、正しい検出確率と誤った検出確率との間の最適トレードオフを実現するために調整され得る閾値を実装し得る。このトレードオフは、レーダ受信機の設計との類似性に基づいて、受動者動作特性曲線上の点選択と呼ばれることがある。この説明は、前記“Priddy,et al.”の中に発見され得る。
【0052】
図7を参照すると、フロー図700は、本発明のある実施形態によるANN630a、630bの学習方法を示している。ラベル付けされていないデータが受け付けられる(ステップ708)。このようなデータは、例えば、地理的に分散した人間のボランティアが、図8に示されるようなプロンプトに対する応答としてウエブを介して提供した質問を有する。このような方法論が効果的なのは、コンセンサス、すなわち常識を構成する、広くかつ多様な主題からデータが入手され得るからである。分散データキャプチャ技術に関する追加情報は、前記した米国特許出願“Responding to Situations Using Knowledge Representation and Inference”及び“Commonsense Reasoning About Task Instructions”の中に発見され得る。
【0053】
ラベル付けされていないデータは、特有のバイアスを回避するために、注意深く入手されるべきである。例えば、プロンプトの作りがよくなければ、プロンプトは、対象者から予想される質問の種類を示唆することになる。さらに、ある種の質問は、他の種よりも、対象者にとって想像することが容易であり、その結果、より頻繁に入力され得る。このように、データの片寄りを補償し、質問カテゴリ毎の質問数のバランスを取るためにこのような質問を選択する場合には注意が払われるべきである。同様に、僅かな質問カテゴリについてだけデータの数が多いと、質問分類がより困難になる。なぜならば、他のカテゴリよりも少ない例から学習される質問カテゴリもあるからである。
【0054】
補助ANN630aは、受け付けた質問を自動的にラベル付けするように学習される(ステップ712)。ある実施形態においては、補助ANN630は、3つの補助タスクを有する。各補助タスクは、ラベル付けされていないデータについての特定のタイプの分析を行い、こうすることにより、特定のタイプのラベルを割り当て得る。ある補助タスクは、受け付けた質問中に含まれる単語から、“何”、“何処”又は“どのように”のような疑問詞を予測する。他の補助タスクは、受け付けた質問中の連続する単語毎に品詞2-グラム及び3-グラムを予測する。例えば、動詞−名詞−前置詞又は名詞−名詞−動詞のシーケンスを特定する。
【0055】
第3の補助タスクは、質問中の単語間の統語的な関係組(relation tuple)を予測する。これは、例えば、MINIPAR広範囲カバー係り受け構文解析ツールを使用してなされ得る。この構文解析ツールは、“カテゴリ1:関係:カテゴリ2”という形式の組によって単語間の統語的関係を表す係り受けツリーを作成する。
各カテゴリは、例えば、名詞はNN、動詞はVBというような、質問中の単語の品詞ラベルである。関係は、2つのカテゴリ間の有向統語的関係(例えば、客体に対してはOBJ、主題に対してはSUBJ、接続語に対してはCONJ)であり、係り受けツリーのリンクに対応する。
例えば、“赤ん坊が泣いていたらあなたはどうしますか?”という質問中、泣く[VB]は、赤ん坊[NN]の主題[SUBJ]であり、対応する統語的関係は、VB:SUBJ:NNである。“ジョンは問題に対する解決を発見した”というセンテンスに対する統語的関係のタグの組が図9に示されている。この説明は、“Dependency Based Evaluation of Minipar,Workshop on the Evaluation of Parsing Systems,Granada,Spain,1998”の中に発見され得る。そしてこの文献はその全体がここに引用される。
【0056】
この実施形態において、前記3つの補助タスクは、それらの出力を単一の出力層648内で組み合わせ(ステップ716)、ANN630aを1つの全体として訓練する(ステップ720)ことにより、並列的に学習される。一旦ANN630aが訓練すると、ウエイト644aは固定され、メインのANN630bに移管される(ステップ724)。ラベル付けされたデータ、例えばラベル付けされた質問が受け付けられる(ステップ728)。メインのANN630bは、このとき、このラベル付けされたデータを使用して訓練される(ステップ732)。
移転されたウエイトは、メインのANN630bがウエイト空間の特定の領域を見ることに限定し、それによって、メインのANN630bが利用できる仮説空間を削減するので、移転された複数のウエイトは、1つの帰納的バイアスを表すことになる。この背後にある考え方は、補助タスクには重要ではなかったが、メインのタスクには重要であるかも知れないラベル付けされた入力データからメインのタスクが新たな特徴を抽出することを可能にするということである。補助タスクを経て基底構造を学習するプロセスはメタ学習と呼ばれる。
【0057】
例えば、“フローレンスナイチンゲールはいつ生まれたか?(When was Florence Nightingale born?)”と言う質問については、固有名詞は記号NNPで置き換えられ、結果として、“When was NNP born?”となる。単語又は記号“When”、“was”、NNP及び“born”(例えば、ノード23、29、99、103)を表すMm個の入力ノードのノードは、値「1」を有することになる。ADJが形容詞“when”を意味し、VBが“was”を意味し、NNが名詞の記号NNPを意味することとする。Miniparによれば、“was”は“Florence Nightingale”の主題であり、“born”は“Florence Nightingale”の客体である。
従って、このセンテンス内の2つの関係は、VB:s:NN及びVB:obj:NNである。これらの関係(例えば、ノード620、630)に対応する入力ノードは、値「1」を有することとなる。同様に、3−グラム[ADJ VB NN]、[VB NN NN]及び[NN NN VB](ノード812,820、830)に対応する入力は値「1」を有することとなる。他の入力ノードの値は「0」となる。
【0058】
前記の補助タスクは例示に過ぎず、当業者であれば、このような補助タスクは、本発明の主旨を逸脱することなく、タイプや数において変化しうることがわかるであろう。また、補助タスクは、直列的又は並列的に実行され得る。補助タスクは、ラベル付けされていないデータと同様、ラベル付けされているデータにも作用を及ぼし得る。
【0059】
機械学習誤差は、推定誤差と、近似誤差を含む。推定誤差は、仮説空間からの最良の仮説を推定する際に発生する。この仮説空間が大きければ大きいほど、利用可能な最良仮説を発見することはより困難になる。近似誤差は、利用可能な仮説空間中の最良の仮説と、実際の分類子、例えば質問分類子との間の差から発生する。仮説空間が小さければ小さいほど、利用可能な最良の仮説が真の分類子に対する芳しくない近似となる確率は高い。
従って、推定誤差を削減するには小さな仮説空間が望ましい一方で、近似誤差を削減するには大きな仮説空間が望ましい。このことは、バイアス/分散トレードオフとして知られている。
【0060】
教師付学習のある公式が、入力ベクトルXを対応する出力Yにマッピングする予測子を追求する。通常は、予測子は、不知の確率分布Dに従い独立して生成される訓練標本の有限集合に基づく関数の組Hから選択される。組Hは、仮説空間と呼ばれ、入力Xから出力Yを予測するために使用され得る関数からなる。目的は、Dに対する誤差が小さい予測子を発見することにある。
予測子pの質は、Dに対する損失関数によって計測され得る。m個の学習タスクと、1組の仮説空間Hθがあるとする。ここで、θは、仮説空間に索引を付けるために使用される共通構造パラメータである。メタ学習問題は、m個のタスクについての予測子の平均期待リスクを最小化するθの値を学習することである。この問題は、次の式(2)で示される、m個のタスクに対する複合最適化問題として提起され得る。
【0061】
【数1】
ここで、Lは、1つの適当な損失関数である。
【0062】
【0063】
ある実施形態において、θは、共有されるウエイト642aの組である。補助ANN630bのそれぞれの出力648は、そこからθが推定される個々のタスクに対応する。仮説空間の組Hθは、例えば、642a、642b、650a、650bのようなすべての神経回路ウエイトの空間である。
(実験結果)
【0064】
本発明の一実施形態に係る1つのMPNNが実験的に評価された。補助タスクは、548個の手動でラベル付けされた訓練標本と、3252個のラベル付けされていない訓練標本を使用し、Ma=850個の入力であった。合計3800個の訓練標本は、前記の3つのタスク、すなわち、名づけて疑問詞予測、品詞2−グラム3−グラム予測、統語的関係組予測、を有していた。これらの補助タスクは、1つの共通補助ANNを用いて実装され、並行的に訓練された。それぞれの補助タスクは、複数の出力を含んでいた。
例えば、疑問詞予測タスクは、疑問詞の候補毎に1つの、20の2値の出力を含んでいた。3つの補助タスクの出力は、組み合わされて649個の2値の出力となっており、効果的に649個の2クラス分類タスクを有していた。補助ANN630aは、Na=20個のノードを有する1つの隠れ層を有していた。
【0065】
一旦、補助ANN630aが訓練すると、ウエイト642aはメインのANN630bに移管され、MPNNを形成した。このMPNNは、Nm=20個の隠れノードと同様に、補助ANN及びメインのANNのそれぞれについて繰り返された850個の入力を有していた。メインのタスクは、同じ548個の手動でラベル付けされた標本につき訓練した。メインのANN630bが訓練する期間中、補助ANNが提供したウエイト642aは固定されていた。パフォーマンスの比較としては、1700個の入力があった第2のメインのANNは、548個の手動でラベル付けされた標本のみを使用して訓練された。両ANNの学習は、固定値「0.1」に設定された学習率ηの値に対して敏感ではないことがわかった。
【0066】
帰納的移転を伴う実験結果と、帰納的移転なしの実験結果が得られた(ぞれぞれ、MPNN及び第2のメインのANNに対応する)。これらは、図10のグラフ1000において、それぞれ、曲線1010及び曲線1020として示されている。収束は、帰納的移転を伴うほうが有意に速い。補助タスク(642aによって表される)によって抽出された特徴はメインのタスクに有用であるからである。メインのANN630bが訓練するとき、出力層652は、移転されたウエイト642aから有意な情報を入手する。
また、逆エラー伝播アルゴリズムは、ウエイト642a、bよりも、(出力層652により近い)ウエイト650a、bを速く修正する傾向がある。それで、移転されたウエイト付のMPNNの部分をより注視し得る。帰納的移転に関するこれらの2つの因子は、より速い収束を促進する。MPNNの部分がすべて訓練可能であるという事実は、帰納的移転を伴う最終的精度が、少なくとも、帰納的移転なしの場合と同程度には良好であることを保証する。
【0067】
グラフ1000のy軸は、“トップ3”アルゴリズムによる誤差をプロットする。このアルゴリズムでは、もし、正しい質問カテゴリが、MPNNの最高位の出力652の上位3つ中になければ、1つの出力は、1つの誤分類としてカウントされる。ラベル付けされた標本の約65%について、正しい分類は、現に出力652中の最高位のカテゴリであった。
図10の誤差バーの垂直に立ち上がった部分は、ある標準偏差に相当し、帰納的移転なしよりも帰納的移転を伴うほうが、小さい傾向がある。検定装置の誤分類率が、図11に示されている。この率は、それぞれ誤差バー1110と1120によって示されるように、帰納的移転を伴わない20.65%から、帰納的移転を伴う15.95%までの間に収まっている。
【0068】
図11の垂線1112、1122は、対応する95%信頼区間を示し、重複することはない。このことは、誤分類率の差が統計的に有意であることを暗示している。また、これらの信頼区間は、帰納的移転なしよりも帰納的移転を伴うほうが、僅かに小さい(0.007対0.009)。もし、最上位のカテゴリだけが質問分類に使用されるならば、誤差はより大きく、信頼区間の差はより顕著になる。このことは、ANN学習は帰納的移転を付されるとより確実(robust)になることをさらに示唆する。
【0069】
帰納的移転の効果を定量化するために、追加実験が行われた。その実験では、663個の出力(14個のメインのタスクの出力と649個の補助タスクの出力)を伴う単一ANNを構築し、このANNを、直前にメインのタスクのみに使用された548個のラベル付けされた標本に対し訓練することによって、すべての補助タスクが、メインのタスクと並行して学習された。この構成は、マルチタスク学習(MTL)として知られている。
前記した補助タスクに使用されたデータは、排除された。なぜならば、メインのタスクのためのラベルは、補助タスクには適用できないからであり、大量の利用可能な補助タスクのデータは、メインのタスクの学習を圧倒するからでもある。この説明は、“Multitask leaning,Machine Leaning,28,41-75,R.Caruana 1997”の中に発見され得る。そしてこの文献はその全体がここに引用される。
【0070】
図12を参照すると、MTL構成についての学習曲線1210が、直前に示された学習曲線1010、1020とともに示されている。検定誤差1310が、図13において、直前の検定誤差1110、1120とともに示されている。これらはメインのタスクの誤差であって、たとえすべてのタスクが1つの単一神経回路を用いて同時に学習されるとしても、正しい比較を提供するために、補助タスクの誤差を含まない。
図13に見られるように、MTLの検定誤差1310は、帰納的移転を伴う学習の誤差(1120)と、帰納的移転なしの学習の誤差(1110)との間の値を取る。帰納的移転を伴う学習のためのMPNNが隠れノード644a、bを合計40個しか使用しない一方、このパフォーマンスは、ANN中の60個の隠れ層のノードを使用することによって得られる。図12、13のデータは、補助タスクからの帰納的移転の追加的な利点を論証しているように見える。
【0071】
本発明の利点は、比較的多量に存在し入手コストも低いラベル付けされないデータの適用を通じて利用可能な情報を効果的に使用することを含む。更に、マルチパートANNとラベル付けされていないデータを適用することは、単一パートANNに関する訓練時間と誤差率を改善する。
【0072】
当業者であれば、自動質問分類及び回答のためのシステム及びプロセスについての追加的代替的実施形態がわかるであろう。本発明は、ここで開示された詳細構成に限定されることはなく、特許請求の範囲に規定された本発明の主旨を逸脱することなく、当業者が、本発明の方法及び装置の配置、操作及び詳細に修正や変更を加えることが可能である。
【図面の簡単な説明】
【0073】
【図1】本発明の1つの実施形態に係るシステムを示す図である。
【図2】本発明の1つの実施形態に係る質問に回答する方法を示す図である。
【図3】本発明の1つの実施形態に係る質問カテゴリを示す図である。
【図4】本発明の1つの実施形態に係る質問からデータベースへのマッピングを示す図である。
【図5】汎用人工神経回路を示す図である。
【図6】本発明の1つの実施形態に係るマルチパート人工神経回路の補助タスク及びメインのタスクを示す図である。
【図7】本発明の1つの実施形態に係るマルチパート人工神経回路の適用方法を示す図である。
【図8】本発明の1つの実施形態に係るラベル付けされていないデータを受け付けるインタフェースを示す図である。
【図9】センテンス内の統語的関係タグの組を示す図である。
【図10】本発明の1つの実施形態の実験評価に係る学習曲線を示す図である。
【図11】本発明の1つの実施形態の実験評価に係る検定誤差を示す図である。
【図12】本発明の1つの実施形態の実験評価に係る学習曲線を示す図である。
【図13】本発明の1つの実施形態の実験評価に係る検定誤差を示す図である。
【特許請求の範囲】
【請求項1】
第1の質問を自動的に分類する方法であって、
前記方法は、
ラベル付けされていないデータを受け付け、
前記ラベル付けされていないデータを自動的にラベル付けし、第1のウエイトの組を有する第1の人工神経回路を使用して第1のラベル付けされたデータを作成し、
前記第1のウエイトの組を第2の人工神経回路に移転し、
第2の質問と対応する回答を有する第2のラベル付けされたデータを受け付け、
前記第2のラベル付けされたデータを使用して前記第2の人工神経回路を訓練し、
前記第1の質問を受け付け、
前記第2の人工神経回路を使用して、質問カテゴリを前記第1の質問に関連付ける、
ことを含むことを特徴とする方法。
【請求項2】
前記質問カテゴリに基づき、前記第1の質問を、複数のデータベースのうちの第1のデータベースにマッピングするステップを更に有する、
ことを特徴とする請求項1に記載の方法。
【請求項3】
前記自動的にラベル付けすることは、
前記ラベル付けされていないデータ内で予測構造を学習することを有する、
ことを特徴とする請求項1に記載の方法。
【請求項4】
前記ラベル付けされていないデータは、第3の質問を有する、
ことを特徴とする請求項1に記載の方法。
【請求項5】
前記ラベル付けされていないデータを自動的にラベル付けすることは、
前記第3の質問毎に品詞タグを自動的に生成すること、
前記第3の質問内に残存する1又は複数の単語から疑問詞を自動的に予測すること、及び、
前記第3の質問内の2つの単語間の統語的関係組を自動的に予測すること、のうちの少なくとも1つを有すること、
を特徴とする請求項3に記載の方法。
【請求項6】
前記質問カテゴリは、
事実−日付、事実−人物、事実−他、客体−特性に対する応答、人物−行為に対する応答、客体−特性に対する黙示の応答、人物−行為に対する黙示の応答、場所、観測−事象−時刻、観測−客体−状態、観測−人物−行為、ステップ、ウエブ現在事象、及びウエブ天候からなるグループに属する1つである、
ことを特徴とする請求項1に記載の方法。
【請求項7】
前記質問カテゴリをシステムクエリ語(SQL)のクエリにマッピングするステップを更に有する、
ことを特徴とする請求項1に記載の方法。
【請求項8】
前記第1及び第2の人工神経回路のそれぞれは、1つの入力層、1つの隠れ層、及び1つの出力層を有する、
ことを特徴とする請求項1に記載の方法。
【請求項9】
前記第2の人工神経回路の前記学習は、前進活動及び逆エラー伝播を有する、
ことを特徴とする請求項1に記載の方法。
【請求項10】
前記ラベル付けされていないデータは、人間によって分散データコレクションを介して提供される、
ことを特徴とする請求項1に記載の方法。
【請求項11】
前記第1のウエイトの組を前記第2の人工神経回路に移転する前に、前記第1のウエイトの組を固定するステップを更に有する、
ことを特徴とする請求項1に記載の方法。
【請求項12】
前記第1の質問内の客体及び特性のうちの少なくとも1つを特定するステップを更に有する、
ことを特徴とする請求項2に記載の方法。
【請求項13】
前記客体及び前記特性に従って、前記第1のデータベースに問い合わせるステップを更に有する、
ことを特徴とする請求項11に記載の方法。
【請求項14】
前記第2の人工神経回路は、
1組の出力ノードを有し、
前記質問カテゴリは、
前記出力ノードの組のうち最強の出力ノードに従って、前記質問カテゴリが前記第1の質問と関連付けられる、
ことを特徴とする請求項1に記載の方法。
【請求項15】
第1の質問を自動的に分類する装置であって、
前記装置は、入力部と、制御部とを有し、
前記入力部は、
ラベル付けされていないデータを受け付け、
第2の質問と対応する回答を有する第2のラベル付けされたデータを受け付け、
前記第1の質問を受け付け、
前記制御部は、
前記ラベル付けされていないデータを自動的にラベル付けし、第1のウエイトの組を有する第1の人工神経回路を使用して第2のラベル付けされたデータを作成し、
前記第1のウエイトの組を第2の人工神経回路に移転し、
前記第1のラベル付けされたデータを使用して前記第2の人工神経回路を訓練し、
前記第2の人工神経回路を使用して、質問カテゴリを前記第1の質問に関連付ける、
ことを特徴とする装置。
【請求項16】
前記第1及び第2の人工神経回路は、マルチパート人工神経回路を有すること、
を特徴とする請求項15に記載の装置。
【請求項17】
第1の質問を自動的に分類する装置であって、
ラベル付けされていないデータを受け付ける手段と、
前記ラベル付けされていないデータを自動的にラベル付けし、第1のウエイトの組を有する第1の人工神経回路を使用して第1のラベル付けされたデータを作成する手段と、
前記第1のウエイトの組を第2の人工神経回路に移転する手段と、
第2の質問と対応する回答を有する第2のラベル付けされたデータを受け付ける手段と、
前記第2のラベル付けされたデータを使用して前記第2の人工神経回路を訓練する手段と、
前記第1の質問を受け付ける手段と、
前記第2の人工神経回路を使用して、質問カテゴリを前記第1の質問に関連付ける手段と、
を有することを特徴とする装置。
【請求項18】
前記第1及び第2の人工神経回路は、マルチパート人工神経回路を有すること、
を特徴とする請求項17に記載の装置。
【請求項19】
コンピュータの制御部に、第1の質問を自動的に分類する方法を実装させるコンピュータプログラム指示を格納する、コンピュータに読取り可能な媒体を含むコンピュータプログラム製品であって、
前記方法は、
前記ラベル付けされていないデータを自動的にラベル付けし、第1のウエイトの組を有する第1の人工神経回路を使用して第1のラベル付けされたデータを作成することと、
前記第1のウエイトの組を第2の人工神経回路に移転することと、
第2の質問と対応する回答を有する第2のラベル付けされたデータを受け付けることと、
前記第2のラベル付けされたデータを使用して前記第2の人工神経回路を訓練することと、
前記第1の質問を受け付けることと、
前記第2の人工神経回路を使用して、質問カテゴリを前記第1の質問に関連付けることと、
を含むことを特徴とするコンピュータプログラム製品。
【請求項1】
第1の質問を自動的に分類する方法であって、
前記方法は、
ラベル付けされていないデータを受け付け、
前記ラベル付けされていないデータを自動的にラベル付けし、第1のウエイトの組を有する第1の人工神経回路を使用して第1のラベル付けされたデータを作成し、
前記第1のウエイトの組を第2の人工神経回路に移転し、
第2の質問と対応する回答を有する第2のラベル付けされたデータを受け付け、
前記第2のラベル付けされたデータを使用して前記第2の人工神経回路を訓練し、
前記第1の質問を受け付け、
前記第2の人工神経回路を使用して、質問カテゴリを前記第1の質問に関連付ける、
ことを含むことを特徴とする方法。
【請求項2】
前記質問カテゴリに基づき、前記第1の質問を、複数のデータベースのうちの第1のデータベースにマッピングするステップを更に有する、
ことを特徴とする請求項1に記載の方法。
【請求項3】
前記自動的にラベル付けすることは、
前記ラベル付けされていないデータ内で予測構造を学習することを有する、
ことを特徴とする請求項1に記載の方法。
【請求項4】
前記ラベル付けされていないデータは、第3の質問を有する、
ことを特徴とする請求項1に記載の方法。
【請求項5】
前記ラベル付けされていないデータを自動的にラベル付けすることは、
前記第3の質問毎に品詞タグを自動的に生成すること、
前記第3の質問内に残存する1又は複数の単語から疑問詞を自動的に予測すること、及び、
前記第3の質問内の2つの単語間の統語的関係組を自動的に予測すること、のうちの少なくとも1つを有すること、
を特徴とする請求項3に記載の方法。
【請求項6】
前記質問カテゴリは、
事実−日付、事実−人物、事実−他、客体−特性に対する応答、人物−行為に対する応答、客体−特性に対する黙示の応答、人物−行為に対する黙示の応答、場所、観測−事象−時刻、観測−客体−状態、観測−人物−行為、ステップ、ウエブ現在事象、及びウエブ天候からなるグループに属する1つである、
ことを特徴とする請求項1に記載の方法。
【請求項7】
前記質問カテゴリをシステムクエリ語(SQL)のクエリにマッピングするステップを更に有する、
ことを特徴とする請求項1に記載の方法。
【請求項8】
前記第1及び第2の人工神経回路のそれぞれは、1つの入力層、1つの隠れ層、及び1つの出力層を有する、
ことを特徴とする請求項1に記載の方法。
【請求項9】
前記第2の人工神経回路の前記学習は、前進活動及び逆エラー伝播を有する、
ことを特徴とする請求項1に記載の方法。
【請求項10】
前記ラベル付けされていないデータは、人間によって分散データコレクションを介して提供される、
ことを特徴とする請求項1に記載の方法。
【請求項11】
前記第1のウエイトの組を前記第2の人工神経回路に移転する前に、前記第1のウエイトの組を固定するステップを更に有する、
ことを特徴とする請求項1に記載の方法。
【請求項12】
前記第1の質問内の客体及び特性のうちの少なくとも1つを特定するステップを更に有する、
ことを特徴とする請求項2に記載の方法。
【請求項13】
前記客体及び前記特性に従って、前記第1のデータベースに問い合わせるステップを更に有する、
ことを特徴とする請求項11に記載の方法。
【請求項14】
前記第2の人工神経回路は、
1組の出力ノードを有し、
前記質問カテゴリは、
前記出力ノードの組のうち最強の出力ノードに従って、前記質問カテゴリが前記第1の質問と関連付けられる、
ことを特徴とする請求項1に記載の方法。
【請求項15】
第1の質問を自動的に分類する装置であって、
前記装置は、入力部と、制御部とを有し、
前記入力部は、
ラベル付けされていないデータを受け付け、
第2の質問と対応する回答を有する第2のラベル付けされたデータを受け付け、
前記第1の質問を受け付け、
前記制御部は、
前記ラベル付けされていないデータを自動的にラベル付けし、第1のウエイトの組を有する第1の人工神経回路を使用して第2のラベル付けされたデータを作成し、
前記第1のウエイトの組を第2の人工神経回路に移転し、
前記第1のラベル付けされたデータを使用して前記第2の人工神経回路を訓練し、
前記第2の人工神経回路を使用して、質問カテゴリを前記第1の質問に関連付ける、
ことを特徴とする装置。
【請求項16】
前記第1及び第2の人工神経回路は、マルチパート人工神経回路を有すること、
を特徴とする請求項15に記載の装置。
【請求項17】
第1の質問を自動的に分類する装置であって、
ラベル付けされていないデータを受け付ける手段と、
前記ラベル付けされていないデータを自動的にラベル付けし、第1のウエイトの組を有する第1の人工神経回路を使用して第1のラベル付けされたデータを作成する手段と、
前記第1のウエイトの組を第2の人工神経回路に移転する手段と、
第2の質問と対応する回答を有する第2のラベル付けされたデータを受け付ける手段と、
前記第2のラベル付けされたデータを使用して前記第2の人工神経回路を訓練する手段と、
前記第1の質問を受け付ける手段と、
前記第2の人工神経回路を使用して、質問カテゴリを前記第1の質問に関連付ける手段と、
を有することを特徴とする装置。
【請求項18】
前記第1及び第2の人工神経回路は、マルチパート人工神経回路を有すること、
を特徴とする請求項17に記載の装置。
【請求項19】
コンピュータの制御部に、第1の質問を自動的に分類する方法を実装させるコンピュータプログラム指示を格納する、コンピュータに読取り可能な媒体を含むコンピュータプログラム製品であって、
前記方法は、
前記ラベル付けされていないデータを自動的にラベル付けし、第1のウエイトの組を有する第1の人工神経回路を使用して第1のラベル付けされたデータを作成することと、
前記第1のウエイトの組を第2の人工神経回路に移転することと、
第2の質問と対応する回答を有する第2のラベル付けされたデータを受け付けることと、
前記第2のラベル付けされたデータを使用して前記第2の人工神経回路を訓練することと、
前記第1の質問を受け付けることと、
前記第2の人工神経回路を使用して、質問カテゴリを前記第1の質問に関連付けることと、
を含むことを特徴とするコンピュータプログラム製品。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公表番号】特表2009−525547(P2009−525547A)
【公表日】平成21年7月9日(2009.7.9)
【国際特許分類】
【出願番号】特願2008−553450(P2008−553450)
【出願日】平成19年1月25日(2007.1.25)
【国際出願番号】PCT/US2007/061061
【国際公開番号】WO2007/090033
【国際公開日】平成19年8月9日(2007.8.9)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.イーサネット
【出願人】(000005326)本田技研工業株式会社 (23,863)
【Fターム(参考)】
【公表日】平成21年7月9日(2009.7.9)
【国際特許分類】
【出願日】平成19年1月25日(2007.1.25)
【国際出願番号】PCT/US2007/061061
【国際公開番号】WO2007/090033
【国際公開日】平成19年8月9日(2007.8.9)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.イーサネット
【出願人】(000005326)本田技研工業株式会社 (23,863)
【Fターム(参考)】
[ Back to top ]