特許第6348554号(P6348554)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ バイドゥ・ユーエスエイ・リミテッド・ライアビリティ・カンパニーの特許一覧

特許6348554人間から示唆を得た簡単質問応答(HISQA)システム及び方法
<>
  • 特許6348554-人間から示唆を得た簡単質問応答(HISQA)システム及び方法 図000025
  • 特許6348554-人間から示唆を得た簡単質問応答(HISQA)システム及び方法 図000026
  • 特許6348554-人間から示唆を得た簡単質問応答(HISQA)システム及び方法 図000027
  • 特許6348554-人間から示唆を得た簡単質問応答(HISQA)システム及び方法 図000028
  • 特許6348554-人間から示唆を得た簡単質問応答(HISQA)システム及び方法 図000029
  • 特許6348554-人間から示唆を得た簡単質問応答(HISQA)システム及び方法 図000030
  • 特許6348554-人間から示唆を得た簡単質問応答(HISQA)システム及び方法 図000031
  • 特許6348554-人間から示唆を得た簡単質問応答(HISQA)システム及び方法 図000032
  • 特許6348554-人間から示唆を得た簡単質問応答(HISQA)システム及び方法 図000033
  • 特許6348554-人間から示唆を得た簡単質問応答(HISQA)システム及び方法 図000034
  • 特許6348554-人間から示唆を得た簡単質問応答(HISQA)システム及び方法 図000035
  • 特許6348554-人間から示唆を得た簡単質問応答(HISQA)システム及び方法 図000036
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6348554
(24)【登録日】2018年6月8日
(45)【発行日】2018年6月27日
(54)【発明の名称】人間から示唆を得た簡単質問応答(HISQA)システム及び方法
(51)【国際特許分類】
   G06F 17/30 20060101AFI20180618BHJP
【FI】
   G06F17/30 180A
   G06F17/30 330C
   G06F17/30 350C
【請求項の数】20
【全頁数】27
(21)【出願番号】特願2016-203696(P2016-203696)
(22)【出願日】2016年10月17日
(65)【公開番号】特開2017-76403(P2017-76403A)
(43)【公開日】2017年4月20日
【審査請求日】2016年10月17日
(31)【優先権主張番号】62/242,788
(32)【優先日】2015年10月16日
(33)【優先権主張国】US
(31)【優先権主張番号】15/162,503
(32)【優先日】2016年5月23日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】516267603
【氏名又は名称】バイドゥ・ユーエスエイ・リミテッド・ライアビリティ・カンパニー
【氏名又は名称原語表記】Baidu USA LLC
(74)【代理人】
【識別番号】100101454
【弁理士】
【氏名又は名称】山田 卓二
(74)【代理人】
【識別番号】100081422
【弁理士】
【氏名又は名称】田中 光雄
(74)【代理人】
【識別番号】100125874
【弁理士】
【氏名又は名称】川端 純市
(74)【代理人】
【識別番号】100199314
【弁理士】
【氏名又は名称】竹内 寛
(72)【発明者】
【氏名】リィ・レイ
(72)【発明者】
【氏名】シュイ・ウェイ
(72)【発明者】
【氏名】ダイ・ジーハン
【審査官】 吉田 誠
(56)【参考文献】
【文献】 米国特許出願公開第2014/0163962(US,A1)
【文献】 特表2009−525547(JP,A)
【文献】 Min-Chul Yang 外3名,Joint Relational Embeddings for Knowledge-based Question Answering,Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing(EMNLP),2014年10月25日,第645-650ページ
(58)【調査した分野】(Int.Cl.,DB名)
G06F 17/30
(57)【特許請求の範囲】
【請求項1】
コンピュータが、1つまたは複数の単語を有するクエリーを受信するステップであって、前記1つまたは複数の単語は前記クエリーのトピックサブジェクトを記述するサブジェクトチャンクを含む、ステップと、
前記コンピュータの制御部が、名称または別名が前記サブジェクトチャンクと同一の表層形式を有する少なくとも1つの候補サブジェクトを検出するようにデータベースにクエリーするステップと、
前記制御部が、前記少なくとも1つの候補サブジェクトと関連する1つまたは複数の関係を表現する1つまたは複数の関係ベクトルを検出するようにデータベースにクエリーするステップと、
前記制御部が、前記1つまたは複数の関係をランキングするランキングスコアであって、それぞれ前記クエリーと対応関係との意味類似性を示すランキングスコアを決定するステップと、
前記制御部が、前記1つまたは複数の関係から最も高いランキングスコアを有する関係を予測関係として選択し、且つ前記少なくとも1つの候補サブジェクトを予測トピックサブジェクトとして選択するステップと、
前記制御部が、前記予測関係と前記予測トピックサブジェクトでデータベースにクエリーして前記クエリーの解答を検出するステップと、を含
ことを特徴とするクエリーに解答を提供するためのコンピュータ実施方法。
【請求項2】
前記制御部が、前記1つまたは複数の単語を、それぞれ対応する単語を表現するベクトルである1つまたは複数の埋め込みに変換するステップと、
前記制御部が、前記1つまたは複数の埋め込みのそれぞれが前記サブジェクトチャンクの一部である確率を予測するステップと、
前記制御部が、前記1つまたは複数の埋め込みのうちの確率が閾値より高いいくつかの埋め込みを前記予測トピックサブジェクトとして選択するステップと、
前記制御部が、選択された埋め込みに対応する1つまたは複数の単語を前記サブジェクトチャンクとして組み合わせるステップと、をさらに含む
ことを特徴とする請求項1に記載のコンピュータ実施方法。
【請求項3】
確率を予測するステップにおいては、
前記制御部が、それぞれ前記1つまたは複数の埋め込みに対応する1つまたは複数のトークン及び各トークンが前記サブジェクトチャンクの一部であるかどうかの二項分類特徴を生成するステップと、
前記制御部が、前記二項分類特徴に基づいて、各トークンが前記サブジェクトチャンクの一部である確率を予測するステップと、を含む
ことを特徴とする請求項2に記載のコンピュータ実施方法。
【請求項4】
前記制御部が、前記1つまたは複数の単語を、それぞれ対応する単語を表現するベクトルである1つまたは複数の埋め込みに変換するステップと、
前記制御部が、前記1つまたは複数の埋め込みで、前記クエリーのニューラル表現とする質問ベクトルを生成するステップと、をさらに含む
ことを特徴とする請求項1に記載のコンピュータ実施方法。
【請求項5】
前記制御部が、前記質問ベクトルの規模が前記1つまたは複数の関係ベクトルの規模と異なる場合に、前記質問ベクトルを、規模が前記1つまたは複数の関係ベクトルの規模と同一のベクトルに投影するステップをさらに含む
ことを特徴とする請求項4に記載のコンピュータ実施方法。
【請求項6】
前記1つまたは複数の関係のランキングスコアを決定するステップにおいては、
前記制御部が、前記質問ベクトルと前記1つまたは複数の関係ベクトルとのドット積を実行するステップを含む
ことを特徴とする請求項4に記載のコンピュータ実施方法。
【請求項7】
前記少なくとも1つの候補サブジェクトは複数の候補サブジェクトを含み、
前記制御部が、前記複数の候補サブジェクトに曖昧性除去を行うことで、前記複数の候補サブジェクトから前記予測トピックサブジェクトを選択するステップをさらに含む
ことを特徴とする請求項1に記載のコンピュータ実施方法。
【請求項8】
前記複数の候補サブジェクトに曖昧性除去を行うステップにおいては、
前記制御部が、各候補サブジェクトに対して、前記ランキングスコアのうちの先頭からのN(Nが整数である)個のランキングスコアを加算するステップと、
前記制御部が、先頭からのN個のランキングスコアの和が最も高い候補サブジェクトを前記予測トピックサブジェクトとして選択するステップと、を含む
ことを特徴とする請求項7に記載のコンピュータ実施方法。
【請求項9】
コンピュータが、1つまたは複数の単語を有するクエリー質問を受信するステップであって、前記1つまたは複数の単語がクエリー質問のトピックサブジェクトを含む、ステップと、
前記コンピュータの制御部が、前記1つまたは複数の単語を、それぞれ対応する単語を表現するベクトルである1つまたは複数の埋め込みに変換するステップと、
前記制御部が、前記1つまたは複数の埋め込みのそれぞれが前記トピックサブジェクトの一部である確率を予測するステップと、
前記制御部が、前記1つまたは複数の埋め込みのうちの確率が閾値より高いいくつかの埋め込みのそれぞれを前記トピックサブジェクトの一部として選択するステップと、
前記制御部が、選択された埋め込みに対応する1つまたは複数の単語を前記トピックサブジェクトとして組み合わせるステップと、を含
ことを特徴とする質問におけるトピックサブジェクトを認識するためのコンピュータ実施方法。
【請求項10】
確率を予測するステップにおいては、
前記制御部が、それぞれ前記1つまたは複数の埋め込みに対応する1つまたは複数のトークン及び各トークンが前記トピックサブジェクトの一部であるかどうかの二項分類特徴を生成するステップと、
前記制御部が、前記二項分類特徴に基づいて、各トークンが前記トピックサブジェクトの一部である確率を予測するステップと、を含む
ことを特徴とする請求項9に記載のコンピュータ実施方法。
【請求項11】
1つまたは複数のトークンを生成するステップにおいては、基本循環ニューラルネットワーク、双方向循環ニューラルネットワーク、双方向長期短期記憶装置及びスタックド双方向ゲーテッド循環ユニット−循環ニューラルネットワークのうちの少なくとも1つで実行される
ことを特徴とする請求項10に記載のコンピュータ実施方法。
【請求項12】
前記閾値は選択された最高確率に対して決定される
ことを特徴とする請求項9に記載のコンピュータ実施方法。
【請求項13】
コンピュータが、1つまたは複数の単語を有する入力クエリーを受信するステップと、
前記コンピュータの制御部が、前記入力クエリーのトピックサブジェクトを記述した前記入力クエリーのサブジェクトチャンクをニューラルネットワークモデルで認識するステップと、
前記制御部が、前記サブジェクトチャンクの認識結果に基づき、前記サブジェクトチャンクでデータベースにクエリーして名称または別名が前記サブジェクトチャンクと同一の表層形式を有する少なくとも1つの候補サブジェクトを認識するステップと、
前記制御部が、前記候補サブジェクトの認識結果に基づき、前記少なくとも1つの候補サブジェクトと関連する1つまたは複数の関係から予測関係を選択し、且つ前記少なくとも1つの候補サブジェクトを予測トピックサブジェクトとして選択するステップと、
前記制御部が、前記予測関係と前記予測トピックサブジェクトでデータベースにクエリーして前記クエリーの解答を検出するステップと、を含む
ことを特徴とするクエリーに解答を提供するためのコンピュータ実施方法。
【請求項14】
サブジェクトチャンクを認識するステップにおいては、
前記制御部が、前記1つまたは複数の単語を、それぞれ対応する単語を表現するベクトルである1つまたは複数の埋め込みに変換するステップと、
前記制御部が、前記1つまたは複数の埋め込みのそれぞれが前記サブジェクトチャンクの一部である確率を予測するステップと、
前記制御部が、前記1つまたは複数の埋め込みのうちの確率が閾値より高いいくつかの埋め込みを前記予測トピックサブジェクトとして選択するステップと、
前記制御部が、選択された埋め込みに対応する1つまたは複数の単語を前記サブジェクトチャンクとして組み合わせるステップと、を含む
ことを特徴とする請求項13に記載のコンピュータ実施方法。
【請求項15】
確率を予測するステップにおいては、
前記制御部が、それぞれ前記1つまたは複数の埋め込みに対応する1つまたは複数のトークン及び各トークンが前記サブジェクトチャンクの一部であるかどうかの二項分類特徴を生成するステップと、
前記制御部が、前記二項分類特徴に基づいて、各トークンが前記サブジェクトチャンクの一部である確率を予測するステップと、を含む
ことを特徴とする請求項14に記載のコンピュータ実施方法。
【請求項16】
1つまたは複数の関係から予測関係を選択するステップにおいては、
前記制御部が、データベースにクエリーして前記少なくとも1つの候補サブジェクトと関連する1つまたは複数の関係を検出するステップと、
前記制御部が、前記1つまたは複数の関係の、それぞれ前記入力クエリーと対応関係との意味類似性を示すランキングスコアを決定するステップと、
前記制御部が、前記1つまたは複数の関係から最も高いランキングスコアを有する関係を前記予測関係として選択するステップと、を含む
ことを特徴とする請求項15に記載のコンピュータ実施方法。
【請求項17】
前記1つまたは複数の関係のランキングスコアを決定するステップにおいては、
前記制御部が、データベースにクエリーして、それぞれ前記1つまたは複数の関係を表現する1つまたは複数の関係ベクトルを検出するステップと、
前記制御部が、前記1つまたは複数の関係ベクトルと同一の規模を有する、前記入力クエリーを表現する質問ベクトルを生成するステップと、
前記制御部が、前記質問ベクトルと前記1つまたは複数の関係ベクトルとのドット積を実行して前記1つまたは複数の関係のランキングスコアを決定するステップと、を含む
ことを特徴とする請求項16に記載のコンピュータ実施方法。
【請求項18】
前記質問ベクトルを生成するステップにおいては、
前記制御部が、前記1つまたは複数の単語を、それぞれ対応する単語を表現するベクトルである1つまたは複数の埋め込みに変換するステップと、
前記制御部が、前記1つまたは複数の埋め込みと循環ニューラルネットワークで前記クエリーのニューラル表現とするベクトルを生成するステップと、
前記制御部が、前記クエリーのニューラル表現とする前記ベクトルの規模が前記1つまたは複数の関係ベクトルの規模と異なる場合に、前記ベクトルを、規模が前記1つまたは複数の関係ベクトルの規模と同一の前記質問ベクトルに投影するステップと、
前記制御部が、前記クエリーのニューラル表現とする前記ベクトルの規模が前記1つまたは複数の関係ベクトルの規模と同一である場合に、前記ベクトルを前記質問ベクトルとするステップと、を含む
ことを特徴とする請求項17に記載のコンピュータ実施方法。
【請求項19】
前記循環ニューラルネットワークは、基本循環ニューラルネットワーク、双方向循環ニューラルネットワーク、双方向長期短期記憶装置及びスタックド双方向ゲーテッド循環ユニット−循環ニューラルネットワークのうちの少なくとも1つを含む
ことを特徴とする請求項18に記載のコンピュータ実施方法。
【請求項20】
前記サブジェクトチャンクでデータベースにクエリーするステップにおいて複数の候補サブジェクトが発見された場合には、
前記制御部が、前記候補サブジェクトのそれぞれに対して、前記ランキングスコアのうちの先頭からのN(Nが整数である)個のランキングスコアを加算するステップと、
前記制御部が、先頭からのN個のランキングスコアの和が最も高い候補サブジェクトを前記予測トピックサブジェクトとして選択するステップと、を含む
ことを特徴とする請求項16に記載のコンピュータ実施方法。
【発明の詳細な説明】
【関連出願の参照】
【0001】
本出願は2015年10月16日に出願された、発明者が李磊(Lei Li)、戴自航(Zihang Dai)と許巍(Wei Xu)であり、発明の名称が「Systems And Methods For Human Inspired Simple Question Answering (HISQA)人間から示唆を得た簡単質問応答(HISQA)システム及び方法」)であり、第62/242,788号米国特許出願の優先権を主張し、当該特許出願の全文を援用するように本願に組み込んだ。
【技術分野】
【0002】
本発明は概してコンピューティング技術に関し、さらに具体的には、自然言語の質問に答えることを自動化させてヒューマンコンピュータインタラクション(HCI)を改良するためのシステム及び方法に関する。
【背景技術】
【0003】
「ハリー・ポッターがどの学校で勉強しているか?」のような問題にどのように自動的に答えるかという技術的課題がある。念入りに構築されたナレッジグラフは豊かな事実のソースを提供する。しかしながら、さまざまな方式で質問されるため、事実に基づく自然言語の質問に答えることが困難である。
【発明の概要】
【発明が解決しようとする課題】
【0004】
従って、さらに効果的且つ正確な方式で質問に自動的に答えるシステム及び方法を提供することが望まれている。
【課題を解決するための手段】
【0005】
一つの様態において、クエリーに解答を提供するためのコンピュータ実施方法を提供し、この方法は、1つまたは複数の単語を有するクエリーを受信するステップと、名称または別名が前記サブジェクトチャンクと同一の表層形式を有する少なくとも1つの候補サブジェクトを検出するようにデータベースにクエリーするステップと、前記少なくとも1つの候補サブジェクトと関連する1つまたは複数の関係を表現する1つまたは複数の関係ベクトルを検出するようにデータベースにクエリーするステップと、前記1つまたは複数の関係の、それぞれ前記クエリーと対応関係との意味類似性を示すランキングスコアを決定するステップと、前記1つまたは複数の関係から最も高いランキングスコアを有する関係を予測関係として選択し、且つ前記少なくとも1つの候補サブジェクトを予測トピックサブジェクトとして選択するステップと、前記予測関係と前記予測トピックサブジェクトでデータベースにクエリーして前記クエリーの解答を検出するステップと、を含んでおり、ここで、前記1つまたは複数の単語が前記クエリーのトピックサブジェクトを記述するサブジェクトチャンクを含む。
【0006】
もう一つの様態において、質問におけるトピックサブジェクトを認識するためのコンピュータ実施方法を提供し、この方法は、1つまたは複数の単語を有するクエリー質問を受信するステップと、前記1つまたは複数の単語を、それぞれ対応する単語を表現するベクトルである1つまたは複数の埋め込みに変換するステップと、前記1つまたは複数の埋め込みのそれぞれが前記トピックサブジェクトの一部である確率を予測するステップと、前記1つまたは複数の埋め込みのうちの確率が閾値より高いいくつかの埋め込みを前記トピックサブジェクトとして選択するステップと、選択された埋め込みに対応する1つまたは複数の単語を前記トピックサブジェクトとして組み合わせるステップと、を含む。
【0007】
さらに、もう一つの様態において、クエリーに解答を提供するためのコンピュータ実施方法を提供し、この方法は1つまたは複数の単語を有する入力クエリーを受信するステップと、前記入力クエリーのトピックサブジェクトを記述した前記入力クエリーのサブジェクトチャンクをニューラルネットワークモデルで認識するステップと、前記サブジェクトチャンクでデータベースにクエリーして名称または別名が前記サブジェクトチャンクと同一の表層形式を有する少なくとも1つの候補サブジェクトを認識するステップと、前記少なくとも1つの候補サブジェクトと関連する1つまたは複数の関係から予測関係を選択し、且つ前記少なくとも1つの候補サブジェクトを予測トピックサブジェクトとして選択するステップと、前記予測関係と前記予測トピックサブジェクトでデータベースにクエリーして前記クエリーの解答を検出するステップと、を含む。
【図面の簡単な説明】
【0008】
本発明の実施形態を参照し、これらの実施形態の例は図面で示されてもよい。図面は例示的なものに過ぎず、制限するためのものではない。本発明は、これらの実施形態のコンテキストで概略的に説明されるが、これらの説明は本発明の範囲をこれらの具体的な実施形態に制限するためのものでないと理解すべきである。図面における構成要素は一定の縮尺で作成されたものではない。
図1】本発明の実施形態に係るシステムの例を概略的に説明する。実施形態において、システムは、1)サブジェクトラベリング、2)候補サブジェクト検出、3)候補関係ランキング、4)エンティティ曖昧性除去、及び5)クエリーの生成と実行という5つのステップを含む。
図2】本発明の実施形態に係るサブジェクトラベリングのフルモデルを示し、単語埋め込み(word embedding)及び循環ニューラルネットワーク(基本RNN及びその変形、例えば双方向RNN、双方向長期短期記憶装置(LSTM)及びスタックド双方向ゲーテッド循環ユニット(GRU))に基づくシーケンシャルラベリングモデルでサブジェクト文字列を認識する。
図3】本発明の実施形態に係るサブジェクトラベリング用の例示プロセスのフローチャートを示す。
図4】本発明の実施形態に係る入力質問のサブジェクトを記述するサブジェクトチャンクを認識するための例示プロセスのフローチャートを示す。
図5】本発明の実施形態に係るデータベースからの、質問に対応する候補関係をランキングするためのモデルの例を示す。スタックド双方向GRUを使用した例示的なモデルは、質問に対して連続的に数値化されるベクトル表現(質問−埋め込み)を計算することに用いられる。このステップにおいて、ほかのRNNユニット(例えば双方向RNNと双方向LSTM)を使用してもよい。
図6】本発明の実施形態に係る関係ランキング用の例示プロセスのフローチャートを示す。
図7】本発明の実施形態に係るk規模のベクトル空間で入力質問を表現する質問ベクトルを生成するための例示プロセスのフローチャートを示す。
図8】本発明の実施形態に係る候補サブジェクトに曖昧性除去を行うことで予測サブジェクトと予測関係を生成するための例示プロセスのフローチャートを示す。
図9】本発明の実施形態に係る例示的なシステムを示す図である。
図10】本発明の実施形態に係る人間から示唆を得た簡単質問応答(HISQA)のサブジェクトと関係モデルの例を示す図である。
図11】本発明の実施形態に係る入力クエリーに解答を提供するための例示プロセスのフローチャートを示す。
図12】本発明の実施形態に係るコンピューティング装置/情報処理システムの簡略ブロック図を示す。
【発明を実施するための形態】
【0009】
以下の説明では、解釈のために、細部を説明して本発明の理解を与える。なお、当業者は、これらの細部がない場合でも本発明を実施できることが明らかである。また、本発明の下記実施形態を、プログラム、装置、システム、機器または物理的なコンピュータ可読媒体における方法のような様々な方式で実施できることを当業者は理解すべきである。
【0010】
図面に示す構成要素又はモジュールは本出願の例示的な実施形態の説明であり、本出願の混乱を避けるためものである。理解すべきであることは、明細書全体において、構成要素が単独な機能ユニット(サブユニットを含んでもよい)と記述されてもよいが、当業者は、各構成要素又はその部材が単独な構成要素に区分されることができ、又は統合される(単一のシステム又は構成要素の内部に集積されることを含む)ことができることを認識すべきである。本文に議論された機能又は操作が構成要素として実現されることができることを理解すべきである。なお、本明細書で論述される機能または操作は構成要素として実施してもよい。構成要素はソフトウェア、ハードウェア、またはそれらの組み合わせで実施してもよい。
【0011】
なお、図面内の構成要素又はシステムの間の接続は直接接続に限定されない。より具体的には、これらの校正要素の間のデータは中間校正要素で変更され、フォーマット再プログラミングされ、又は他の方式で改変されてもよい。また、付加的接続又はより少ない接続を利用してもよい。また、注意すべきであることは、用語「連結」、「接続」又は「通信連結」が直接接続、1つ又は複数の中間設備で実現される非直接接続及び無線接続を含むことを理解すべきである。
【0012】
明細書において、「1つの実施形態」、「好ましい実施形態」、「実施形態」又は「各実施形態」とは、実施形態を合わせて説明した具体的な特徴、構造、特性又は機能が本出願の少なくとも1つの実施形態に含まれ、且つ1つの以上の実施形態に存在してもよいことを意味する。また、本明細書における複数の箇所において、上記フレーズは必ずしもすべて同一の1つまたは複数の実施形態を参照しない。
【0013】
明細書における各箇所において、一部の用語の使用は例示するためであり、限定と解釈されるべきではない。サービス、機能又はリソースは単一のサービス、機能又はリソースに限定されず、これらの用語の使用は分散式又は集合式の1組の関連サービス、機能又はリソースであってよいことを示すことができる。
【0014】
用語「含む(include)」、「含んでいる(including)」、「有する(comprise)」及び「有している(comprising)」はオープンエンドの用語と理解すべきであり、その後にリストされるいかなる内容は例示だけであり、リストされる項目に限定されることを意味しない。本文に使用される任意のタイトルは組織するためのものであり、本明細書又は請求項の範囲を限定すべきではない。
【0015】
本特許文献で言及される各参照文献はその全体が参照により本明細書に組み込まれる。
【0016】
なお、当業者は、(1)あるステップを選択的に実行してもよい。(2)ステップは本文に述べた具体的な順序に限定されない。(3)あるステップを異なる順序で実行してもよい。(4)あるステップを同時に実行してもよいことを理解すべきである。
【0017】
A はじめに
オープンドメイン質問応答(QA)はドメインを制限せず自然言語で表現される質問に正確な解答を提供することを目的とする。最近、すべてのドメインからの抽出事実を統一されたトリプルのラージスケールナレッジグラフ(KG)(例えばFreebase)として記憶することによりQAシステムが構造化データで解答を推測することができる。このような場合に、QAシステムのコアタスクは自然言語の質問をKGにおける情報化トリプルとマッチングし、且つこのようなトリプルに基づいて解答を推測するように制定されてもよい。
【0018】
すべての種類の質問において、KG中の1つの事実(すなわちトリプル)だけを解答証拠とする必要がある質問タイプが存在し、本明細書においてそれが「簡単な質問」と呼ばれる。典型的な例として「フランドレッシヤーの出生地はどこですか(Where was Fran Drescher born?)」であってもよい。
【0019】
非常に簡単であるが、このような質問に答えるにはまだ解決されていない課題がある。それに対して、簡単な質問はコミュニティQAウェブサイトにおいて最も一般的なタイプの質問である。
【0020】
本明細書では、このタスクで人間行動から示唆を得て、簡単な質問に答えるための新規システムの実施形態を提案する。一般的には全体的なチャンク生成とエンティティリンキングを実行するほとんどの従来の方法と異なり、本明細書におけるシステムの実施形態は、人間が新たな質問に直面する時に最初に行う対応のように、まず学習して質問の、関心のエンティティを記述する部分を正確に認識する。認識された言語チャンクに基づいて、システムはKGを検索して同一の表層形式を有する別名の候補エンティティを検索する。さらに、トレーニングシステムが直接に異なるエンティティに曖昧性除去を行うことと異なり、各エンティティが有する関係によって質問コンテキストにおいて発生する可能性がより高いコンテンツを決定する。直感的には、人間は質問で言及されるコンテンツ(関係)及びエンティティがこのような方式で言及できるかどうか(前記関係を有する)を理解することで同一名称を有するエンティティに曖昧性除去を行う。人間が「フランドレッシヤーの出生地はどこですか?」の質問を処理するプロセスを例とする。「フランドレッシヤー」がだれであるか或いは何であるかを理解していない可能性があるが、それはこの質問における関心のエンティティであるに違いない。次に、データベースを検索して名前「フランドレッシヤー」を検索できる。この名称を有するエンティティが2つあり、1つのエンティティが作者であり、もう1つのエンティティがテレビ番組であると仮定する。質問が人の出生地を聞く可能性が高いと思われるため、作者エンティティを選択し、且つそれに対応する性質(関係)を検査できる。
【0021】
当該システムの実施形態において連続的埋め込みとスタックド双方向ゲーテッド循環ユニット−循環ニューラルネットワーク(GRU−RNN)をサブモジュールとして拡張して使用し、すべてのサブモジュールで優れた性能を得ることで、簡単な質問応答に対して強力で直感的なニューラルパイプライン(pipeline)を共同で形成する。
【0022】
本明細書の残りの部分は次のように組織される。セクションBで先行研究を論述した後に、セクションCにおいて形式上で技術的課題を限定し且つ当該システムの実施形態を説明する。次に、セクションDにおいて具体的に各サブモジュールを説明してから、セクションEでトレーニング技術を具体的に説明する。ナレッジグラフの詳細はセクションFで示される。セクションGはいくつかの結論を提供し、セクションHでいくつかの例示的なシステムの実施形態を開示する。
【0023】
B 関連研究
知識ベース(KB)がサポートするQAに対する研究は早期の特定ドメインQAからラージスケールKGに基づくオープンドメインQAに発展してきた。重要な研究方向は自然言語質問をKGに対する構造化クエリーに変換する質問意味解析に着目していた。最新の発展は、遠隔監視を使用することと、パラフレーズを用いることと、少量の質問−解答ペアを要求することとを含む。それに比べて、別の研究方向は、連続的な埋め込みによって質問とKG要素の両方を表現し、次に類似性測定で最適なマッチングを決定することとして提案される。いくつかの方法の主な相違点は、埋め込み質問とKG要素に用いられるモデルにある。少なくとも1種の方法がさらに簡単なモデル(ほとんど単一層構造である)で質問埋め込みと知識埋め込みを形成するが、少なくとも1つの別の方法はディープ畳み込みニューラルネットワーク(CNN)でタスクを実行すると提案している。本明細書における方法の実施形態はこの種類に属するが、RNNに基づくモデルで質問埋め込みを構築する。さらに重要なのは、実施形態において新規のエンティティリンキング案を使用する。先行研究では、通常、まず質問に基づいてすべての可能なNグラム(N−Gram)を生成し、次に生成された任意のNグラムとマッチングしたすべてのエンティティをランキングモデルでランキングすることにより、エンティティリンキングを実現する。それに比べて、実施形態において、まずシーケンシャルラベリングして正確なサブジェクト文字列を特定することで、候補エンティティ数を顕著に減少させ、次にサブジェクトと関係とのインプリシットな制約で候補エンティティをヒューリスティックにランキングする。
【0024】
表現学習(representation learning)の点から、実施形態はさらに組み合わせニューラル埋め込みと連続的な知識ベース埋め込みに関する。組み合わせニューラル埋め込みについての研究は、バルディ(Baldi)等が名称「Exploiting the past and the future in protein secondary structure prediction(蛋白質の二次構造の予測における過去及び将来の予測)」、Bioinformatics(バイオインフォマティクス)、15(11):937−946,1999の技術文献で論述されたニューラル確率言語モデルから始まり、次にCNNに基づくモデル、循環ニューラルネットワークに基づくモデル、及びRNNに基づくモデル。連続的な知識ベース埋め込みについて、ほとんどの研究は知識ベースの補完タスクに着目し、ここで、埋め込み空間における変換は数学演算としてモデリングできる。
【0025】
C 概要
実施形態において、外部で構築されるナレッジグラフκを用い、それはサブジェクト−関係−オブジェクトのトリプル(s,r,o)の形態で知識を組織し、ここで、
【0026】
【数1】
がエンティティであるが、
【0027】
【数2】
が二元関係である。Kに対して(s,r,?)形態でのクエリーがすべてのオブジェクト
【0028】
【数3】
をフィードバックするため、(s,r,o)がκにおける有効なトリプルである。従って、簡単な質問qに答えるために
【0029】
【数4】
を検出するように制定でき、それによってクエリー(s,r,?)によって質問qの正確な解答が提供される。同一例「フランドレッシヤーの出生地はどこですか?」を使用する場合に、この質問はクエリー(フランドレッシヤー,出生地,?)とマッチングすることができる。1つの例示的なナレッジグラフは公開されるFreebaseである。
【0030】
当該ルールに基づいて、本システムの実施形態のコアはsとrの両方の最適にマッチングするニューラルパイプラインを検出することに用いられることである。一言で言えば、システムは2つのトレーニング可能なモジュール(サブジェクトラベリングと関係ランキング)及びルールに基づく1つのモジュール(共同曖昧性除去)を備える。2つのトレーニング可能なモジュールは構造化されていない言語と構造言語との差を減少させることを学習し、同時にルールに基づくモジュールは以前の結果に基づいて最終的に決定する。図1はシステムの実施形態を概略的に説明する。図1に示される実施形態のように、まず(1)サブジェクトラベリングから開始し、システムはまず(2)候補サブジェクトを生成し、次に(3)候補関係をランキングし、それから、その結果を組み合わせて共同(4)曖昧性除去を実行し、且つ最終的な(5)予測と解答を生成する。
【0031】
実施形態において、パイプラインはトレーニング可能なサブジェクトラベリングシステムから開始し、それは質問におけるトピックサブジェクトを記述するチャンクcを認識する。言語チャンクcに基づいて、システムはクエリーを発行することで、別名と認識されたチャンクが同一の表層形式を有するすべてのエンティティを取得する。このエンティティセットzは候補サブジェクトと呼ばれ、
【0032】
【数5】
として記す。基本的には、正確なサブジェクト別名のうちの1つが質問に出現すべきであると仮定することができる。現代のKGは確かに人々が別名でエンティティを言及する時の多数の方式を含むため(なお、このプロセスを改善できるさらに複雑な近似マッチング手段を用いてもよい)、この仮定が合理的である。仮定を設定した場合に、サブジェクトラベリングが正確である場合に、正確サブジェクトは必ず候補サブジェクト内にあり、または
【0033】
【数6】
として公式化する。
【0034】
実施形態において、システムは正確関係rを認識しようとする。なお、取得された候補サブジェクトは関係検索空間を候補サブジェクトと関連する関係に制限するため、システムは必ずしもすべての可能な関係Rからrを検索しない。従って、各候補サブジェクト
【0035】
【数7】
に対して、システムはサブジェクトに関連するすべての関係をクエリーし、
【0036】
【数8】
として記し、且つそれらをすべて候補関係リスト
【0037】
【数9】
に集める。たとえば、ナレッジグラフで、各候補サブジェクトはノードとして表現され、関係表現は候補サブジェクトと関連するエッジである。さらに、正確関係が候補関係内にあり、または
【0038】
【数10】
として公式化されることを確保する。次に、関係ランキングシステムは
【0039】
【数11】
における関係スコアとしてトレーニングされてもよく、ここで、高いスコアは正確関係である可能性が高いことを示す。
【0040】
最後に、別のモジュールは候補サブジェクトと関係ランキングスコアの両方に基づいて、簡単且つヒューリスティックな共同曖昧性除去により、当該システムの最終予測を生成する。
【0041】
D モデル実施形態
1.サブジェクトラベリング
実施形態において、サブジェクトラベリングの目的は単語における自然質問中の関連サブジェクトを記述するチャンクを認識することである。実施形態において、サブジェクトラベリングはシーケンシャルラベリング問題として制定される。基本的には、質問における各トークン(token)に対して、このトークンがサブジェクトチャンクの一部であるかどうかの二項分類を行う。完全性のために、スタックド双方向GRU−RNNを簡単に説明し、ここで、スタックド双方向GRU−RNNはこのモジュールのコアモデルである。
【0042】
まず、双方向RNNは修正された循環ニューラルネットワークであり、ここで、それは2つの異なる循環隠れ層に対して正方向と逆方向の各入力シーケンスを呈し、当該異なる循環隠れ層はいずれも同一の出力層に接続される。利点として、双方向RNNは過去と将来の完全なコンテキスト情報を収集することで予測することができる。次に、長期短期記憶装置(LSTM)に非常に類似し、ゲーテッド循環ユニット(GRU)はRNNに対する特殊なユニット設計である。トレーニング可能なゲートとコンスタントエラーカルーセル(Constant Error Carousel)(CEC)を用い、GRUは勾配消失問題がめったに発生しなく、且つ長期依存関係を学習できる。LSTMに比べて、GRUはよりシンプルな設計とより少ないパラメータで類似する性能を実現できる。最後に、ディープは理論的・実験的にニューラルネットワークの成功に対して重要であると示すため、より多くのレイヤをRNN(それが前のレイヤの出力を入力とする)に追加することでRNNの性能を改善できる。RNNのディープを増加させる多くの可能な方式のうち、幅広く使用される手段はいくつかのレイヤをスタックするだけである。
【0043】
実施形態において、前述したすべての3つの概念を組み合わせてスタックド双方向GRU−RNNを形成してもよい。構造は、ある程度で、グレイブス(Graves)等が名称「Speech recognition with deep recurrent neural networks(ディープ循環ニューラルネットワークによる音声認識)」、Acoustics、Speech and Signal Processing(音響学、音声及び信号処理)(ICASSP)、IEEE国際ミーティング、ページ6645−6649、IEEE、2013の技術文献で論述された構造及び黄(Huang)等が名称「Bidirectional lstm−crf models for sequence tagging(シーケンシャルラベリング用の双方向LSTM−CRFモデル)」、ArXivプレプリント、ArXiv:1508.01991,2015の技術文献で論述された構造と類似し、相違点はLSTMではなくGRUが使用されることである。当該文献の残り部分で、スタックド双方向GRU−RNNはS−Bi−GRUと略記される。
【0044】
図2は本発明の実施形態に係るサブジェクトラベリングのフルモデル200(それが図1におけるサブジェクトモデリング105と同一である)を示し、ここで、単語埋め込みと循環ニューラルネットワーク(基本RNN及びその変形を含み、例えば双方向RNN、双方向LSTM及びスタックド双方向GRUが挙げられる)に基づくシーケンシャルラベリングモデルはサブジェクト文字列を認識することに用いられる。実施形態において、前記モデルは、離散入力シーケンスを連続ベクトルシーケンス(単語埋め込み)に変換する埋め込み層210と、分類するように学習して特徴を生成するS−Bi−GRU212と、S−Bi−GRU層212により生成された特徴に基づいて各トークンがサブジェクトチャンクの一部である確率を予測するロジスティック回帰(二項分類)層214とを含む。実施形態において、標準的な負の対数損失(Negative Log Loss、NLL)を使用することで、前記モデルが完全に導関数を求める可能であるため、直接に逆伝搬によってトレーニングできる。
【0045】
モデルがトレーニングされた後に、質問が送られて各トークンがサブジェクトチャンクの一部である確率を取得する。実施形態において、確率に基づいて閾値を設定し、且つすべての確率が閾値より高いトークンは予測サブジェクト文字列として組み合わせられる。当該システムの実施形態において、絶対閾値ではなく相対測定値を使用してもよい。実施形態において、まず最高確率を有するトークンを選択し、次に、確率が隣接する内部トークンに対してある百分率以上小さくなるまで、選択を両側へ拡張する。経験的に、この方法はやや好適である。
【0046】
選択されるサブジェクトチャンクに基づいて、KGへ名称または別名が同一の表層形式(すなわち、同一のスペリング)を有するエンティティをクエリーすることで候補サブジェクトを取得してもよい。しかし、実施形態において、マッチングするエンティティ(5%)が発見されない場合に、Freebase Suggest APIだけで選択されたチャンクを使用するエンティティを提案する。この後、候補サブジェクトとする1つまたは複数のエンティティは存在する可能性がある。参照しやすいように、1つのエンティティだけを有する場合はシングルサブジェクトの場合と呼称され、複数のエンティティを有するほかの場合はマルチサブジェクトの場合と呼称される。
【0047】
図3は本発明の実施形態に係るサブジェクトラベリング用の例示プロセスのフローチャート240を示す。ステップ242において、1つまたは複数の単語を有する入力クエリーを受信する。この例では、入力クエリーにおいて文「フランドレッシヤーの出生地はどこですか?」を含んでもよい。次に、ステップ244において、入力クエリーは5つの単語202(フラン、ドレッシヤー、出生、地点、どこ)に解析してもよく、且つ各単語をサブジェクトラベリングモデル201に入力してもよく、前記サブジェクトラベリングモデル201は埋め込み層210、スタックド双方向GRU−RNN212及びロジスティック回帰層214を備える。実施形態において、サブジェクトラベリングモデル201はサブジェクトチャンクを認識する。この例では、図1に示されるように、サブジェクトラベリング200は「フランドレッシヤー」をサブジェクトチャンクとして認識する。次に、ステップ246において、サブジェクトチャンクを有するクエリーを知識ベース(例えばナレッジグラフ)に送信することで、1つまたは複数の候補サブジェクトエンティティ(又は、同等に、候補サブジェクト)を取得し、図1における矢印109で示される。実施形態において、各候補サブジェクトの名称または別名はサブジェクトチャンクと同一の表層形式(すなわち、スペリング)を有する。この例では、2つのエンティティ(作者と連続ドラマ)が候補サブジェクトとして発見された。
【0048】
図4は本発明の実施形態に係るステップ244の詳細プロセスを示す。ステップ2442において、埋め込み層210は入力クエリー中の1つまたは複数の単語を1つまたは複数の埋め込みに変換し、ここで、各埋め込みは対応する単語を表現するベクトルである。次に、ステップ2444において、スタックド双方向GRU−RNN212を使用することで、それぞれ当該1つまたは複数の埋め込みに対応する1つまたは複数のトークン及び各トークンがサブジェクトチャンクの一部であるか否かについての二項分類特徴を生成する。次に、ステップ2446において、分類特徴に基づいて、ロジスティック回帰層214は各トークンがサブジェクトチャンクの一部である確率を予測する。この例では、入力質問における5つの単語「フラン」、「ドレッシヤー」、「が」、「どこで」、「出生」はそれぞれ0.986、0.975、0.002、0.003、0.103の確率を有する。ステップ2448において、前記トークンの確率が閾値より高いいくつかのトークンをサブジェクトチャンクとして組み合わせてもよい。以下では、用語「トークンのうちのいくつか」はトークンのうちの1つまたは複数である。この例では、2つのトークン「フラン」と「ドレッシヤー」はサブジェクトチャンクとして組み合わせられる。
【0049】
2.関係ランキング
実施形態において、関係ランキングモジュールの目的は自然言語で出される質問に含まれる正確関係を認識することである。実施形態において、モジュール名称に示されるように、分類で最適な関係を選択することと異なり、この技術的課題はランキング問題として制定される。基本的には、候補関係は意味的に質問に類似するほど、ランキングスコアが高くなる。本発明の実施形態において、埋め込み方法で関係と質問との意味類似性を測定する。まず、KGにおける各関係rはk規模の連続ベクトルE(r)として表現される。次に、各質問qに対して、別のS−Bi−GRUに基づくモデルで当該質問qを同一k規模のベクトル空間に埋め込んでE(q)とする。関係と質問がいずれも同一規模のベクトルとして表現されるため、いくつかの距離メトリックでそれらの意味類似性を直接計算できる。ここで、ドット積だけを使用する。
【0050】
図5は本発明の実施形態に係るデータベースからの、質問に対応する候補関係をランキングするためのモデル300の例を示す。示されるように、埋め込み層302は質問における単語をベクトルに埋め込む。この例では、埋め込み303a〜303nはそれぞれ5つの単語「フラン」、「ドレッシヤー」、「が」、「どこで」、「出生」のベクトル表現である。S−Bi−GRUに基づくモデル304からのすべての層の最終状態は組み合わせられて質問埋め込み(又は、同等に、質問ベクトル)308を形成する。S−Bi−GRUは既にクラッターを避けるように簡略化される。図の下半部に示されるように、S−Bi−GRUに基づくモデル304が質問の埋め込みシーケンスを処理した後に、あらゆるスタック層の最終ステップにおいて隠された出力ベクトル(final-step hidden output vector)は組み合わせられてロングベクトル306を形成し、それは実質的に当該質問のニューラル表現である。
【0051】
双方向RNNの場合に、最終ステップは一番目のステップでもあり最後のステップでもある。しかし、S−Bi−GRU304の層の隠れサイズまたは数量が可変であるため、ロングベクトル306の規模は関係埋め込みの規模と異なってもよく、従って直接質問埋め込みとすることができない。解決案として、実施形態において、それらの規模がマッチングすることを確保するように別のリニア投影層307を追加する。従って、質問qと関係rとのランキングスコア(意味の類似性スコア)はRS(q,r)=E(q)E(r)と書かれてもよい。実施形態において、KGにおける各関係rはk規模の連続ベクトルE(r)314と表現される。各質問qに対して、リニア投影層307はロングベクトル306をk規模の質問ベクトルE(q)308として投影することで、質問ベクトルE(q)308に関係ベクトルE(r)314と同一規模を有させる。実施形態において、関係ベクトルE(r)314と質問ベクトルE(q)308のドット積316を実行することでランキングスコアを得る。
【0052】
最後に、実施形態において、ランキングモデルをトレーニングするために、正マッチと負マッチの両方を必要とする。正マッチが直接データセットとともに出現するため、ネガティブサンプリングにより負マッチを取得する。本明細書のセクションE.1は詳細にネガティブサンプリングを説明する。従って、正ペアと負ペアの両方を使用すると、いくつかのランキング損失でS−Bi−GRUに基づくモデル304をトレーニングできる。実施形態において、マージンランキング損失
L(q,r,r′)=[γ−RS(q,r)+ RS(q,r′)]を用い、
ここで、rは正マッチ、r′は負マッチ、及びγは所定マージンを示す。
【0053】
図6は本発明の実施形態に係る関係ランキング用の例示プロセスのフローチャート340を示す。ステップ342において、クエリーを受信し、前記クエリーは1つまたは複数の単語を有する質問を含む。次に、ステップ344において、質問埋め込みモデル301は入力クエリーを使用してk規模のベクトル空間で質問ベクトルE(q)308を生成してもよい。
【0054】
ステップ346において、データベースにクエリーすることでk規模のベクトル空間で候補関係を表現する関係ベクトル314を取得する。実施形態において、246において決定された各候補サブジェクトに対して、データベースにおいて表現が候補サブジェクトと関連するすべての関係の関係ベクトル314を検索する。この例では、図1に示されるように、候補サブジェクトエンティティ1に対する候補関係は「出生地」、「国籍」、「両親」、「映画」等を含む。同様に、候補サブジェクトエンティティ2に対する候補関係は「名称」、「タイプ」、「話数」、「シーズン数」等を含む。次に、質問ベクトル308と各関係ベクトル314とのドット積に基づいて、ステップ348において、各候補関係のランキングスコア318を決定する。実施形態において、各ランキングスコア318はスカラー量であって質問と対応関係との意味類似性を示してもよい。
【0055】
図7は本発明の実施形態に係るステップ344の詳細プロセスを示す。ステップ3442において、埋め込み層302は入力質問中の1つまたは複数の単語を1つまたは複数の埋め込み303に変換し、ここで、各埋め込みは対応する単語を表現するベクトルである。ステップ3444において、S−Bi−GRUはクエリー質問のニューラル表現とするベクトル306を生成する。次に、ステップ3446において、ベクトル306がk規模のベクトルでない場合に、リニア投影層307はベクトル306をk規模のベクトル空間に投影することで質問ベクトル308を取得する。
【0056】
図1に戻って参照すると、各矢印110は、ステップ346において、候補関係に対するクエリーをデータベースに送信することを示す。この例では、図1に示されるように、エンティティ1の候補関係「出生地」のランキングスコアは0.543であり、且つエンティティ1の候補関係「国籍」のランキングスコアは0.404である。図1では、関係ランキング115は関係及びその各エンティティに対するランキングスコアのリストを示す。
【0057】
3.共同曖昧性除去
実施形態において、候補関係のランキングスコアを取得した後に、当該モジュールで候補サブジェクトに曖昧性除去を行って(複数の候補サブジェクトがある場合)、且つサブジェクトと関係との両方の最終予測を生成する。
【0058】
実施形態において、シングルサブジェクトの場合に対して、曖昧性除去対象となる候補サブジェクトがないため、唯一のサブジェクトを予測サブジェクトとして直接選択し、次に最高スコアを有する関係が予測関係になる。
【0059】
実施形態において、マルチサブジェクトの場合に対して、ヒューリスティックに基づくモデルで共同曖昧性除去を実行する。共同曖昧性除去のコアとなるアイデアは、ある関係が意味的に質問に類似するほど、正確サブジェクトが質問に類似する関係を有する可能性が高くなる。概念的には、それはエンティティに関連する関係の意味であり且つエンティティ意味を限定する。この概念に基づいて、サブジェクトのすべての関係のランキングスコアでどの候補サブジェクトがより正確であるかを決定する。たとえば、候補サブジェクト
【0060】
【数12】
に対するランキングスコアは
【0061】
【数13】
として限定してもよい。しかし、これはさらに多くの関連する候補サブジェクトを有することに偏ってもよい。さらに、低スコアを有する関係は望ましくないノイズを引き起こす可能性がある。従って、実施形態において、先頭からのN個のランキングスコアを有する候補関係だけを考慮する。ここで、Nは選択対象のハイパーパラメータである。
【0062】
【数14】
で先頭からのN個の候補関係を示すことで、候補サブジェクト
【0063】
【数15】
のランキングスコアは
【0064】
【数16】
に書き直されてもよい。
【0065】
実施形態において、予測するために、最も高いランキングスコアを有する候補サブジェクトは正確サブジェクトとして予測されてもよく、すなわち、
【0066】
【数17】
となり
次に予測サブジェクト
【0067】
【数18】
と関連するすべての候補関係のうち最も高いランキングスコアを有する候補関係を正確関係として予測してもよい。
【0068】
【数19】
【0069】
なお、N≧3の場合、すべての候補関係のうちの最高スコアを有する関係は予測サブジェクトと関連しなくてもよいため、予測のオーダーは重要であってもよい。
【0070】
図1を参照し、矢印120で示されるように、この例に対してハイパーパラメータNを2に仮定する場合に共同曖昧性除去を実行する。候補サブジェクトエンティティ1とエンティティ2のランキングスコア130はそれぞれ0.947と0.239である。エンティティ1は最も高いランキングスコアを有するため、矢印125で示されるように、エンティティ1は正確サブジェクトとして予測される。さらに、候補関係「出生地」は最も高いランキングスコアを有するため、この関係は正確関係として予測される。
【0071】
実施形態において、構造化クエリーは予測サブジェクトと予測関係に基づいて生成されてKGサーバへ送信される。次に、KGサーバは構造化クエリーを実行することでオブジェクトである解答を取得する。実施形態において、KGはN−トリプルRDFフォーマットのデータを含み、且つ各RDFトリプルは(サブジェクト、関係、オブジェクト)の形式を有する。
【0072】
図8は本発明の実施形態に係る候補サブジェクトに曖昧性除去を行うことで予測サブジェクトと予測関係を生成するための例示プロセスのフローチャート370を示す。ステップ372において、入力クエリーに対して1つより多くの候補サブジェクトがあるかどうかを決定する。1つの候補サブジェクトしかがない場合に、ステップ374において、この候補サブジェクトを予測サブジェクトとして選択する。次に、ステップ376において、予測サブジェクトと関連するすべての関係から最も高いランキングスコアを有する関係を予測関係として選択する。
【0073】
入力クエリーに対して1つより多くの候補サブジェクトがある場合に、プロセスはステップ380へ進む。ステップ380において、各候補サブジェクトに対して先頭からのN個のランキングスコアを加算する。次に、先頭からのN個のランキングスコアの和が最も高い候補サブジェクトを予測サブジェクトとして選択する。次に、プロセスがステップ376へ進んで、予測関係を選択する。
【0074】
E.トレーニング
セクションDで論述されたように、実施形態において、2つのトレーニング可能なモデルはいずれも完全に導関数を求める可能であり、且つ標準(ミニバッチ)確率的勾配降下法(SGD)でトレーニングすることができる。しかし、本明細書に開示されているシステムの実施形態の機能を十分に利用するために、追加技術でトレーニングを加速し且つ収束を改善することができる。このセクションでいくつかのトレーニング技術を説明し、これらのトレーニング技術は実施形態で最終性能を改善する。
【0075】
1.ミニバッチのネガティブサンプリング
実施形態において、関係ランキングモデルをトレーニングする時に、各(q,r,r′)トリプルに対して、システムはまずそれらの埋め込みE(q)、E(r)及びE(r′)を計算し、次に対応するドット積E(q)E(r)、E(q)E(r′)を計算する。しかし、各質問が1つの正マッチを有することしかできないが、数千個の負マッチを有するため、システムが各可能な(q,r,r′)に対して上記計算を簡単に実行すると、同一E(q)E(r)及びE(q)E(r′)を繰り返して計算するために多くのリソースを浪費してしまう。従って、多く(ひいてはすべて)の負マッチを使用することが望まれると、トレーニング時間は実現できないほど長くなる可能性がある。さらに多くの負サンプルが通常さらに優れた性能を引き起こすために、実施形態において、ミニバッチネガティブサンプリングで繰り返し計算問題を軽減させることが提案される。基本的には、各正質問関係ペア(q,r)に対して、1回に1つの負関係をサンプリングすることと異なり、ミニバッチのb個の負関係{r1′,… ,rb′}をサンプリングする。それから、b個の負サンプルだけに対して正の部分を1回計算する。さらに、効率的な記憶操作によって、異なる負サンプルに対してループを実行することでさらにGPUにフレンドリーな(GPU-friendly)大密度の行列乗算に変換する。また、実施形態において、この技術はベクトル化計算と組み合わせられており、ここで、ミニバッチの(q,r,{r1′,… ,rb′})トリプルは並列計算される。従って、限られるネガティブサンプリングでモデルをトレーニングすることが実現可能で迅速である。
【0076】
2.モメンタムスケジュール(Momentum Schedule)を有するAdaGrad
ディープニューラルネットワークのデフォルト最適アルゴリズムとして、確率的勾配降下法(SGD)は異なる質問にうまく適用されている。しかし、SGDを十分に利用するために、実施形態において初期学習レートとアニールスケジュールを人為的に調整することができる。
【0077】
それに比べて、SGDの変形であるAdaGradは既存の勾配に基づいて学習レートを自動的に調整(減少)する利点を有する。従って、AdaGradのグローバルな学習レートだけを調整すればよく、こうすると実際に非常に容易になる。また、AdaGradはパラメータ空間の幾何に基づいて1つの要素ずつ学習レートを調整するため、モデルはあまり頻繁に(まれに)出現する特徴に特に注目することができる。従って、AdaGradでSGDを置き換える時に、サブジェクトラベリングモデルと関係ランキングモデルはいずれもより優れてより一致する性能を安定して実現できる(たとえば、試験で、数回の試験での性能差が0.5%以下である)。
【0078】
AdaGradは非常に強力であるが、以前の勾配幅に基づいて学習レートを低下させ続ける。従って、モデル学習が速ければ速いほど、学習レートの低下が速い。従って、通常、トレーニングは高速に減速する。この欠点を克服するために、実施形態において、AdaGradをモメンタムと組み合わせることを提案し、それによってAdaGradは正確な方向に累積的でさらに発展することができる。各パラメータの更新過程において、以下の調整後の勾配累積速度を用い、
【0079】
【数20】
ここで、
【0080】
【数21】
はそれぞれ時間ステップtでの勾配、累積速度及びモメンタム率であり、且つすべての数学演算はここで1つの要素ずつ行われる。次に、以下の累積速度で更新を実行し、
【0081】
【数22】
ここで、θは時間ステップtでのパラメータである。
【0082】
経験的に、サブジェクトラベリングモデルに対して、AdaGradをモメンタムと組み合わせると大幅に短縮されるトレーニング時間で同一性能を得ることができる。しかし、関係ランキングに対して、モメンタムを直接追加するために、損失はトレーニングの開始から急激に変動する。その結果、トレーニング損失が非常に緩慢に低下するため、性能はさらに低くなる。これが開始時のノイズ勾配で引き起こされると推測する。改善策として、実施形態において、モメンタムスケジュールを使用することを提案し、そうすれば、開始時にモメンタムを停止し、且ついくつかの期間後にまたはトレーニング損失があるレベルに達する時に徐々にモメンタムを増加させる。直感的に、初期段階でノイズ勾配を避け、少し後にさらに効果的な勾配でモメンタムを形成することが望ましい。このプロセスで、このポリシはモメンタムスケジュールを有するAdaGradと呼称される。
【0083】
モメンタムスケジュールを有するAdaGradを使用することで、同一トレーニング時間で関係ランキングモデルに対してずっと低いトレーニング損失を実現し、それにより有効セットで3.0%+の性能向上を実現する。
【0084】
3.Dropout
有効なものとされる別の技術は垂直DropoutをS−Bi−GRUに適用することである。実施形態において、Dropoutは各Bi−GRU層の入力信号に適用され、図2では、「RNN」構成要素の前の一点鎖線で示される。発明者によって行われた試験では、Dropoutを使用する場合、通常、同一の損失レベルになるまで収束するには所要のトレーニング時間がさらに長くなる。しかしながら、収束すると、モデルは有効セットで常により優れた性能を有する。従って、実施形態において、サブジェクトラベリングモデルにも関係ランキングモデルにもDropoutを取り込んだ。
【0085】
4.プレトレーニングされた単語埋め込み
以前の観察に類似し、プレトレーニングされた単語埋め込みでより優れた性能を実現することに役に立つ。発明者によって行われた試験において、300d Glove(nlp.stanford.edu/projects/glove/で取得できる)を使用して単語埋め込みを初期化する時、性能は常に埋め込みのランダム初期化の場合での性能より優れる傾向があり、300d Gloveは単語のベクトル表現を取得するための教師なし学習アルゴリズムであり、カリフォルニア州のスタンフォード市のスタンフォード大学(Stanford University、Stanford、CA)により開発される。
【0086】
5.調整モデル構造及びハイパーパラメータ
本プロセスの実施形態において、サブジェクトラベリングモデルのサブ構造に応じて異なる設定を使用する。以下、実際のデータセットでモデルをトレーニングするガイドラインである。ほかのデータセットを使用すれば、やや異なるハイパーパラメータ設定(たとえば、学習レート)を有する類似調整ステップを用いてもよい。
【0087】
単語埋め込み層に対して、プレトレーニングされたGloVeを初期化とするため、実施形態においてパラメータをやや微調整する。従って、実施形態において、モメンタムを有する強力なAdaGradを使用していないが、標準SGDを小初期学習レート(0.001)とともに使用し、且つ各期間後に学習レートを(0.85を乗じる)アニールする。S−Bi−GRUに対して、128個のユニットを有する2つの層を各層にそれぞれ用いる。実施形態において、トレーニング過程においてS−Bi−GRUとロジスティック回帰層のパラメータはいずれもランダムに初期化され、モメンタム(ρt=0.8)を有するAdaGra(η=0.01)によってトレーニングされる。さらに、垂直Dropout(0.5)をS−Bi−GRUに適用してもよい。
【0088】
実施形態において、関係ランキングモデルをトレーニングするために、単語埋め込み層はサブジェクトラベリングモデルにおける同一の設定を使用する(つまり、この実施形態において、この2つのモデルが単語埋め込みを共有しない)。実施形態において、S−Bi−GRUに対してやや大きな構造、即ち、256個のユニットを有する2つの層を使用する。トレーニング過程において、S−Bi−GRUとリニア投影層はいずれもモメンタムスケジュールを有するAdaGrad(η=0.005)によってトレーニングされてもよく、ここで、3つの期間後に0.9に達するまで、モメンタム率は0.3で増加する。さらに、実施形態において、弱いDropout(0.3)をS−Bi−GRUに適用してもよい。実施形態において、関係埋め込みに対して128個のベクトルだけが使用される。トレーニング過程において、各関係埋め込みは単位ボール内に維持するように制約され、つまり、
【0089】
【数23】
である。制約があるので、小さな学習レート(0.001)でさらに精密な検索を確保してもよい。
【0090】
F.ナレッジグラフ
本プロセスの実施形態において、最新のFreebaseダンプデータをKGのデータソースとして用いる。ダンプデータは3B個より多い事実を含み、ここで、各事実はNトリプルRDFのフォーマットで作成される。各RDFトリプルはセクションAで説明されたように、(サブジェクト、関係、オブジェクト)の形式を有する。
【0091】
なお、このセクションは1つの例示的なデータソースであるFreebaseが挙げられたが、本発明はほかのナレッジグラフに用いてもよい。たとえば、異なる言語のナレッジグラフ(例えば、中国語のナレッジグラフ)でFreebaseナレッジグラフを置き換えて、且つこのような言語の質問応答ペアでトレーニングすると、得られたシステムもこのような言語で質問に答えることができる。
【0092】
実施形態において、KGを記憶するために、グラフデータベース(例えばCayleyまたはVirtuosoであり、両方ともオープンソースソフトウェアである)を用い、前記グラフデータベースはNトリプルRDFデータをそのメモリに直接ロードすることができる。さらに、Gremlinから示唆を得ることによって容易にCayleyにクエリーすることができる。SPARQLの方式(SPARQLはwww.w3.org/TR/rdf−sparql−queryで指定される、グラフデータベースに対するクエリー言語であり且つワールド・ワイド・ウェブ・コンソーシアムで基準として制定される)によって容易にVirtuosoにクエリーすることができる。同一能力を有する任意のほかのグラフデータベースは代替品として用いてもよい。
【0093】
G.いくつかの結論
本明細書は簡単質問応答用の新規で非自明のフレームワークを有するシステム及び方法の実施形態が提案される。独特のサブジェクトラベリングモジュールを用い、従来のシステムで発見されるほとんどのノイズ情報を除去し、且つエンティティリンキング問題が曖昧性除去問題に簡略化される。適切なトレーニング技術を用い、自然言語と構造化関係をマッチングするように強力なS−Bi−GRUに基づくランキングモデルを取得できる。また、実施形態において、サブジェクトと関係との隠れルールを使用することで、ヒューリスティック曖昧性除去方法は非常に競争力のある性能を実現する。サブモジュールを組み合わせることで、ニューラルパイプラインの実施形態は「簡単な質問」のデータセットの面で従来のシステムより優れる。
【0094】
H.システムの実施形態
図9は本発明の実施形態に係る例示的なシステムを示す図である。図9の実施形態に示されるように、システム400は、入力クエリーを受信する自然言語クエリーインターフェース406と、入力クエリーのトークン化とインデックス作成を実行し、つまり、クエリー(例えば「フランドレッシヤーの出生地はどこですか?」)をデジタルシーケンスに翻訳するプリプロセッサステージ408と、本明細書に開示されている実施形態(セクションD)に係るHISQAサブジェクトと関係モデル410と、前のステップにおいてモデルによって発見されたサブジェクトと関係に基づいてグラフトラバーサル言語(例えばGremlin)で構造化クエリーを生成するクエリージェネレータ416と、クエリージェネレータ416とモデル410とインターフェースすることで構造化クエリーを実行し、更に解答(例えばセクションF)を取得するナレッジグラフサーバ414と、テキストまたはhtmlページで結果を出力して表示する解答表示モジュール412とを備えてもよく、ここで、各単語は事前に作成された辞書(辞書が単語またはトークンから整数インデックスへのマッピング)に基づいて整数値にマッピングされる。上記(セクションE)のように、実施形態において、システム400はさらにトレーニングシステム(それがオフラインで実行できる)を含んでもよく、前記トレーニングシステムはラベリングされたQ/Aデータセット402にアクセスできて、HISQAモデル410をトレーニングする。当該クエリージェネレータにより生成される例示的な質問の例示的な構造化クエリーは「SELECT ? object WHERE {<entity_for_fran_drescher> <place_of_birth_for_person> ? object}」であってもよい。
【0095】
図10は本発明の実施形態に係る人間から示唆を得た簡単質問応答(HISQA)のサブジェクトと関係モデル410の例を示す図である。示されるように、入力質問449はサブジェクトラベリングモデル450へ送信され、ここで、サブジェクトラベリングモデル450は入力質問のトピックサブジェクトを記述するサブジェクトチャンクを認識する。実施形態において、質問449はトークン化されてインデックス作成されてもよく、つまり、質問(例えば「フランドレッシヤーの出生地はどこですか?」)はデジタルシーケンスに変換されてもよく、ここで、各単語は事前に作成された辞書に基づいて整数値にマッピングされる。サブジェクトチャンクを使用することで、データベース452にクエリーして名称または別名がサブジェクトチャンクと同一の表層形式を有する1つまたは複数の候補サブジェクトエンティティを検出する。
【0096】
関係ランキングモデル454は質問449で質問ベクトルを生成する。関係ランキングモデル454はさらに候補サブジェクトエンティティと関連する1つまたは複数の関係を表現する1つまたは複数の関係ベクトルを検出し、且つ質問ベクトルと1つまたは複数の関係ベクトルとのドット積を実行することで1つまたは複数の関係のランキングスコアを決定する。
【0097】
コンピュータソフトウェア、ハードウェアまたはファームウェアとして実現できる共同曖昧性除去456は候補サブジェクトエンティティと1つまたは複数の関係から予測サブジェクトエンティティと関係を選択する。予測サブジェクトエンティティと関係を使用することで、データベース458にクエリーすることで質問449の解答460を検出する。
【0098】
図11は本発明の実施形態に係る入力クエリーに解答(又は、同等に、オブジェクト)を提供するための例示プロセスのフローチャート500を示す。ステップ502において、入力クエリーを受信し、ここで、入力クエリーは人間から示唆を得た質問を含んでもよい。次に、ステップ504において、サブジェクトラベリングモデル204は当該クエリーのサブジェクトチャンクを認識する。次に、ステップ506において、サブジェクトチャンクでデータベースにクエリーすることで1つまたは複数の候補サブジェクトを検出する。
【0099】
ステップ508において、各候補サブジェクトに対して、関係のランキングスコアを生成する。実施形態において、質問埋め込みモデル301はk規模のベクトルであってもよい質問埋め込み308を生成する。各候補サブジェクトに対して、データベースにおいて候補サブジェクトと関連するすべての関係に対応する関係ベクトル314を検出する。次に、各候補サブジェクトに対して、候補サブジェクトと関連する関係ベクトル314と質問埋め込み308とのドット積を実行することで関係ベクトルのランキングスコアを決定する。実施形態において、各候補サブジェクトに対して、最も高いランキングスコアを有する関係は当該候補サブジェクトの正確関係として認識される。
【0100】
ステップ510において、1つより多くの候補サブジェクトがある場合に、候補サブジェクトの曖昧性除去を実行することで、候補サブジェクトのうちの1つを最終予測サブジェクトとして選択する。実施形態において、各候補サブジェクトに対して、先頭からのN個のランキングスコアを加算する。次に、先頭からのN個のランキングスコアの和が最も高い候補サブジェクトを予測サブジェクトとして選択する。ステップ512において、予測サブジェクトと関連する関係から最も高いランキングスコアを有する関係を最終予測関係として選択する。
【0101】
ステップ514において、データベースにクエリーすることで予測サブジェクトと予測関係に関連するオブジェクトを検出する。実施形態において、データベースにおけるデータはサブジェクト−関係−オブジェクトトリプルの形式で組織される。
【0102】
実施形態において、本特許文献の様々様態は情報処理システム/計算システムに関しても実施されてもよい。本出願の目的として、計算システムは、商業、科学、制御又は他の目的に基づいて解答、計算、確定、分類、処理、輸送、受信、検索、開始、ルーティング、切替、記憶、表示、伝送、出現、検出、記録、コピー、操作又は任意の様態として操作された情報、インテリジェンス又はデータの任意の装置又は装置セットを含んでもよい。例えば、計算システムはパーソナルコンピュータ(例えば、ラップトップコンピュータ)、タブレットコンピュータ、タブレット電話、パーソナルディジタルアシスタント(PDA)、スマートフォン、スマート腕時計、スマートパッケージング、サーバー(例えば、ブレードサーバー又はラックマウント型サーバー)、ネットワーク記憶設備又は任意の他の適切な設備であってよく、更に大きさ、形状、性能、機能及び価格が変化してもよい。計算システムはランダムアクセスメモリ(RAM)、1つ又は複数の処理リソース(例えば、中央処理装置(CPU)又はハードウェア又はソフトウェア制御ロジック)、ROM及び/又は他のタイプのメモリを含んでもよい。計算システムにおける付加的構成要素は1つ又は複数のディスクドライブ、外部設備と通信するための1つ又は複数のネットワークポート、及び例えばキーボード、マウス、タッチスクリーン及び/又はビデオディスプレーの各種の入力及び出力(I/O)設備を含んでもよい。計算システムは更に各ハードウェア校正要素の間で通信できるように操作される可能な1つ又は複数のバスを含んでもよい。
【0103】
図12は、本出願の実施形態に係る計算設備/情報処理システム(又は計算システム)の簡略化したブロック図を示す。情報処理システムが異なって配置されてもよく、異なるアセンブリを含んでもよいことを理解することができるが、システム600に示す機能に対して情報処理システムをサポートする各実施形態に操作されてもよいことを理解すべきである。
【0104】
図12に示すように、システム600は、計算リソースを提供するとともにコンピュータを制御する1つ又は複数の中央処理装置(CPU)601を含む。CPU601はマイクロプロセッサ等を利用して実現されてもよく、且つ1つ又は複数のグラフ処理ユニット(GPU)617及び/又は数学計算に用いられる浮動小数点コプロセッサを更に含んでもよい。システム600はシステムメモリ602を更に含んでもよく、システムメモリ602はランダムアクセスメモリ(RAM)又は読み取り専用メモリ(ROM)の様態であってもよく、又はRAMとROMの様態であってもよい。
【0105】
図12に示すように、複数のコントローラ及び周辺設備をさらに提供してもよい。入力コントローラ603は例えばキーボード、マウス又はライトペンへの各種の入力設備604のインターフェースを示す。スキャナー606と通信するスキャナーコントローラ605を更に有してもよい。システム600は、1つ又は複数の記憶設備608とインタラクションするためのメモリコントローラ607を更に含んでもよく、1つ又は複数の記憶設備608の中のそれぞれはいずれも例えば磁気テープ又はCDの記憶媒体を含み、又は記録操作システム、ユーティリティプログラム及びアプリケーションに用いることができる指令プログラムを含む光学媒体を更に含んでもよく、ここで、アプリケーションは本出願の各様態のプログラムを実現する実施形態を含んでもよい。本出願によれば、記憶設備608は更に既に処理されたデータ又は処理しようとするデータを記憶することに用いられてもよい。システム600は表示設備611にインターフェースを提供するためのディスプレーコントローラ609を更に含んでもよく、表示設備611は陰極線管(CRT)、薄膜トランジスタ(TFT)ディスプレー又は他のタイプのディスプレーであってよい。計算システム600は更にプリンタ613と通信するためのプリンタコントローラ612を含んでもよい。通信コントローラ614は1つ又は複数の通信設備615にインタラクションすることができ、通信設備615によりシステム600はインターネット、クラウドリソース(例えば、イーサネット(登録商標)クラウド、イーサネット上のファイバチャネル(FCoE)/データセンターブリッジング(DCB)クラウド等)、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、記憶領域ネットワーク(SAN)の多種のネットワークにおける任意のネットワークを含むか又は赤外線信号の任意の適切な電磁キャリア信号を含むことによりリモート設備に接続される。
【0106】
示されるシステムにおいて、すべての主なシステムアセンブリはバス616に接続されてもよく、バス616は1つ以上の物理バスを示すことができる。しかし、各種のシステムアセンブリは互いに物理的に隣接してもよく、又は互いに物理的に隣接する必要がない。例えば、入力データ及び/又は出力データは1つの物理位置から他の物理位置にリモート伝送されることができる。なお、本出願の各様態を実現するプログラムはネットワークでリモート位置(例えば、サーバー)からアクセスすることができる。当該データ及び/又はプログラムは多種の機械読み取り可能な媒体における任意の媒体により伝送されてもよく、機械読み取り可能な媒体は、例えばハードディスク、フロッピーディスク及び磁気テープのような磁気媒体、例えばCD-ROM及びホログラフィー設備のような光学媒体、光磁気媒体、及び例えば特定用途向け集積回路(ASIC)、プログラム可能なロジック設備(PLD)、フラッシュメモリデバイス及びROMとRAM設備のような特別にプログラムコードを記憶又は記憶して実行するように構成されるハードウェア設備を含むが、これらに限定されない。
【0107】
1つ又は複数のプロセッサ又は処理ユニットに対して、本出願の実施形態は指令を利用して1つ又は複数の非一時的コンピュータ可読媒体でコーディングすることにより、各ステップを実行することができる。1つ又は複数の非一時的コンピュータ可読媒体は揮発性および不揮発性メモリを含むべきであることを注意すべきである。代替の実施例でもよく、ハードウェア実現方式又はソフトウェア/ハードウェア実現方式を含むことを注意すべきである。ハードウェア実現の機能はASIC、プログラマブルアレイ、デジタル信号処理回路等を利用して実現することができる。このため、任意の請求項において、用語「装置」はソフトウェア実現方式をカバーするだけではなく、ハードウェア実現方式もカバーする。類似するように、本文に使用された用語「コンピュータ可読媒体」はその上で実行される指令プログラムを有するソフトウェア及び/又はハードウェア、又はソフトウェア及びハードウェアの組み合せを含む。これらの実現態様の代替態様を考えて、図面及び付いている説明が機能情報を提供し、当業者はプログラムコード(即ち、ソフトウェア)をプログラミングすること及び/又は回路(即ち、ハードウェア)を製造することで必要な処理を実行する必要があることを理解すべきである。
【0108】
本出願の実施形態は更に非一時的有形のコンピュータ可読媒体を有するコンピュータ製品に関してもよく、当該コンピュータ可読媒体には各種のコンピュータで実現される操作を実行するためのコンピュータコードを有することを注意すべきである。媒体及びコンピュータコードは本出願の目的に基づいて専門に設計して構造する媒体及びコンピュータコードであってもよく、又は関連分野の当業者が公知するか又は取得するできるタイプであってもよい。有形のコンピュータ可読媒体の例示は、例えばハードディスク、フロッピーディスク及び磁気テープのような磁気媒体、例えばCD-ROM及びホログラフィー設備のような光学媒体、光磁気媒体、及びプログラムコードを記憶又は記憶して実行するように専門に配置されたハードウェア設備、例えば特定用途向け集積回路(ASIC)、プログラム可能なロジック設備(PLD)、フラッシュメモリデバイス及びROMとRAM設備を含むが、これらに限定されない。コンピュータコードの例示は、例えばコンパイラで生成されたマシンコード、及びコンピュータがインタプリタを利用して実行する上級コード(higher level code)のファイルを含む。本出願の実施形態は処理設備で実行されるプログラムモジュールに位置してもよいマシン実行可能な指令として全体的又は部分的に実施されることができる。プログラムモジュールの例示は、ベース、プログラム、ルーチン、オブジェクト、アセンブリ及びデータ構造を含む。分散式計算環境において、プログラムモジュールは物理的にローカル、リモート又は両者の環境に設置されてもよい。
【0109】
当業者は、計算システム又はプログラミング言語が本出願の実施に対して非常に重要なものではないことを理解すべきである。当業者は、多くの上記素子が物理的及び/又は機能的にサブモジュールに分けられるか又は統合されることを認識すべきである。
【0110】
当業者は、上記の例示及び実施形態が例示的なものであり、本出願の範囲を制限するためのものではないことを理解すべきである。その趣旨は、明細書を読んで図面を研究した後に当業者に対して明らかなすべての置換、増強、等価、組み合せ及びその改善は本出願の実際な精神及び範囲内に含まれる。なお、添付される請求項における要素は異なって設置されてもよく、複数の依存、配置及び組み合わせを含む。たとえば、実施形態において、各請求項のサブジェクトをほかの請求項と組み合わせてもよい。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12