(57)【特許請求の範囲】
【請求項１】
命令が格納されたプログラムであって、前記命令は、プロセッサによって実行されると、前記プロセッサにセマンティック検索を実行させ、前記セマンティック検索は、
電子テキストコーパスを受取ることと、
前記電子テキストコーパスを複数の文章に分離することと、
各々の文章を構文解析して文章ツリーに変換することと、
ユーザインターフェイスを介して検索クエリを受取ることと、
前記検索クエリを前記文章ツリーのうち１つ以上と一致させることと、
前記一致させることに応じて、前記一致させた文章ツリーに対応する感情を前記検索クエリのために抽出することとを含む、プログラム。
【請求項２】
前記セマンティック検索はさらに、
前記検索クエリをクエリツリーに変換することを含み、前記一致させることは、前記クエリツリーを前記文章ツリーのうち１つ以上と一致させることを含む、請求項１に記載のプログラム。
【請求項３】
前記一致させることに応じて、一致させた文章ツリーに対応する文書を前記電子テキストコーパスから提供することをさらに含む、請求項１または２に記載のプログラム。
【請求項４】
前記一致させることに応じて、前記一致させた文章ツリーに対応する改良例を前記検索クエリに提供することをさらに含む、請求項１または２に記載のプログラム。
【請求項５】
前記電子テキストコーパス外のソースを用いて、前記文章ツリーを豊富にすることをさらに含む、請求項１〜４のいずれか１項に記載のプログラム。
【請求項６】
前記ユーザインターフェイスは前記クエリツリーについて一致する上位語を表示する、請求項２に記載のプログラム。
【請求項７】
前記文章ツリーのうち１つ以上を変更することをさらに含み、各々の文章ツリーは、複数のノードおよび少なくとも１つのエッジを含み、前記変更することは、ノードを拡張させること、ノードを収縮させること、エッジを拡張させること、または、エッジを収縮させることのうち少なくとも１つを含む、請求項１〜６のいずれか１項に記載のプログラム。
【請求項８】
前記クエリツリーは少なくとも１つのノードを含み、
一致させた後、ユーザが、追加のノードを前記クエリツリーに追加し、一致させることを繰り返すことによって、前記セマンティック検索をさらに改良することを可能にすることをさらに含む、請求項２に記載のプログラム。
【請求項９】
前記検索クエリを受取った後、前記ユーザインターフェイスを介して選択可能な改良検索クエリを提供することをさらに含む、請求項１〜８のいずれか１項に記載のプログラム。
【請求項１０】
セマンティック検索を実行する方法であって、
電子テキストコーパスを受取るステップと、
前記電子テキストコーパスを複数の文章に分離するステップと、
各々の文章を構文解析して文章ツリーに変換するステップと、
ユーザインターフェイスを介して検索クエリを受取るステップと、
前記検索クエリを前記文章ツリーのうち１つ以上と一致させるステップと、
前記一致させることに応じて、前記一致させた文章ツリーに対応する感情を前記検索クエリのために抽出するステップとを含む、方法。
【請求項１１】
セマンティックテキスト検索クエリシステムであって、
プロセッサと、
前記プロセッサに結合された記憶装置とを含み、前記記憶装置は複数の文章ツリーを記憶し、前記複数の文章ツリーは、テキストコーパスを複数の文章に分離し、各々の文章を構文解析して前記文章ツリーのうちの１つに変換することによって形成され、
前記プロセッサは、検索クエリを受取るユーザインターフェイスを生成するように適合され、
前記プロセッサは、前記検索クエリを前記文章ツリーのうち１つ以上と一致させるように適合され、
前記プロセッサは、前記一致させることに応じて、前記一致させた文章ツリーに対応する感情を前記検索クエリのために抽出するように適合されている、セマンティックテキスト検索クエリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本願は、２０１４年９月２２日に提出された仮特許出願連続番号第６２／０５３，２８３号の優先権を主張するものであって、その内容が引用によりここに援用されている。
【０００２】
分野
一実施形態は、概して、コンピュータシステムに向けられており、特に、テキストコーパスの検索を行なうコンピュータシステムに向けられている。
【背景技術】
【０００３】
背景情報
利用可能なテキストベースのコンテンツの量がインターネットとファイアウォール背後のデータなどの他のコンテンツリポジトリとの両方で急激に増大し続けているため、検索エンジンおよび検索技術の重要性が強まっている。実際には、すべてのユーザは、関連するコンテンツの位置を突き止めるために頻繁に１つ以上の検索エンジンを用いている。利用可能な材料を大量に用いて、検索エンジン結果を改善させるためのさまざまなツールおよび方法が作成されており、さまざまなレベルで成功が収められてきた。
【０００４】
利用可能な最もポピュラーな検索エンジンは、主として、対話モデルに従ったものである。対話モデルでは、ユーザが検索エンジンインターフェイスから１セットのテキスト検索語を入力し、さらに、これらテキスト検索語を用いて、検索エンジンによって作成または管理されているインデックスから結果一式が抽出される。しかしながら、純粋にテキストベースで検索を行う際の制限事項の１つとして、２つ以上の定義または意味を有し得るテキスト検索語が用いられる場合に、検索される結果セットが、所望され得る対象のトピックに焦点を合わせられないかまたは当該トピックに関連し得ない可能性がある点である。ユーザが２つ以上の検索語を入力する場合、制限事項がさらに追加される。多くの検索エンジンは、すべての検索クエリ語またはいくつかの論理的組合わせまたはそれらの単純な変更（たとえば派生語）を含むすべての文書を探し出すために、このような多数語クエリを単純な要求として解釈することを制限している。このタイプの検索の結果は、一般的には、最も基本的なテキスト文書検索タスクの場合を除いては、不十分であった。
【０００５】
具体的には、意味は単語により伝えられるが、典型的なテキスト検索またはキーワード検索では意味まで検索されない。検索されるテキストの作成者は、テキスト内の或る意味を符号化してしまっている。同様に、検索を開始する人は、所望の意味をキーワードクエリに符号化する。両方の符号が一致する場合にのみ、その検索は「正確な」結果を返すこととなる。
【発明の概要】
【課題を解決するための手段】
【０００６】
概要
一実施形態は、セマンティック検索を実行するためのシステムである。システムは、電子テキストコーパスを受取り、当該テキストコーパスを複数の文章に分離する。システムは、各々の文章を構文解析して文章ツリーに変換する。システムは、検索クエリを受取り、当該検索クエリを文章ツリーのうち１つ以上と一致させる。
【図面の簡単な説明】
【０００７】
【図１】本発明の一実施形態に従ったコンピュータサーバ／システムを示すブロック図である。
【図２】本発明の一実施形態に従った、図１のセマンティックテキスト検索モジュールおよび他の要素の機能を示す高レベルフロー図である。
【図３】一実施形態に従った、「その車はその事故時にフロントエアバッグを展開させなかった」という文章を構文解析することによって形成されたツリーの例を示す図である。
【図４Ａ】本発明の実施形態に従った、構文解析された文章および上位語の一致を示すスクリーンショットである。
【図４Ｂ】本発明の実施形態に従った、構文解析された文章および上位語の一致を示すスクリーンショットである。
【図４Ｃ】本発明の実施形態に従った、構文解析された文章および上位語の一致を示すスクリーンショットである。
【図５Ａ】本発明の実施形態に従った、セマンティック検索ユーザインターフェイスを示すスクリーンショットである。
【図５Ｂ】本発明の実施形態に従った、セマンティック検索ユーザインターフェイスを示すスクリーンショットである。
【図６】一実施形態に従った、ユーザインターフェイスを介する単一語変更を示すスクリーンショットである。
【図７Ａ】一実施形態に従った、改善例および結果セットの概要を示すユーザインターフェイスの例である。
【図７Ｂ】一実施形態に従った、改善例および結果セットの概要を示すユーザインターフェイスの例である。
【発明を実施するための形態】
【０００８】
詳細な説明
大量の電子文書を電子的に検索することによってユーザクエリにとって申し分ない回答を得る際の問題は、コンピュータが普及し始めた初期の頃から存在しているが、依然として十分には解決されていない。このような周知の検索エンジンを含め、ユーザのクエリに一致するような１セットの文書を捜し出すために多くのさまざまなアプローチが存在している。このような周知の検索エンジンとして、グーグル社（Google Inc.）による「グーグル（Google）」検索およびマイクロソフト社（Microsoft Corp.）による「ビング（Bing）」検索が含まれる。
【０００９】
遍在する検索ボックスを用いるキーワード検索が、多くの共通情報を必要とするタスクをサポートするには不十分であることは周知である。結果を向上させるための実現可能な一検索技術が、スチュアート（Stewart）他による「アイディア・ナビゲーション：非構造化テキストのための構造化されたブラウジング（Idea Navigation: Structured Browsing for Unstructured Text）」（コンピューティングシステムにおけるヒューマンファクタに関するＳＩＧＣＨＩコンファレンスの手順（Proceedings of the SIGCHI Conference on Human Factors in Computing Systems）、１７８９頁〜１７９２頁（２００８年；ＡＣＭ））に開示されており、引用によりこの明細書中に援用されている。
【００１０】
この明細書中に記載される実施形態は、有用な情報を求めて大量の電子文書を検索する際の問題に対する技術的解決策を向上させるものである。提供されている例の目的は、単に、本発明の実施形態を例示することだけである。本発明の実施形態についての実際の使用事例は、場合によっては何百万以上もの電子文書（たとえば電子メール、記事、本、ウェブページ、ツイートなど）を含む任意のサイズのテキストコーパスを検索することを含む。この場合、非常に多くの単語があるので、情報の検索を手動で行うことが非実用的になるかまたはほぼ不可能になるとともに、キーワード検索に固有の精度／想起性が交換条件として相殺されるので、高い想起性または高い精度が必要な場合にこの方策が役に立たなくなってしまう。
【００１１】
一実施形態は、テキストコーパスの各々の文章をツリーに変換することによってセマンティックテキスト検索を実行するシステムである。さらに、検索クエリがツリーに変換され、および／または、ツリーとして翻訳され、検索ツリーがテキストコーパスツリーのうち１つ以上と一致させられる。一致させた結果、検索クエリに対応する文書の応答が生成される。加えて、関連するクエリを改良することもできる。一致するツリーを用いることによりセマンティックベースの検索が提供される。本発明の別の実施形態は、ブランド名または製品名などの対象のエンティティを捜し出し、このような対象のエンティティを変更する他の語に基づいて高精度の感情抽出を実行することができる。
【００１２】
概して、実施形態は、単語のみに基づくのではなく、これら単語が相互に作用し合って互いを変更するという方法にも基づいて、テキストを見つけ出す。他の実施形態では、同義語などの情報を追加してテキストを豊富にすることによって、追加の知識ベースを適用している。実施形態は、検索中に高い想起性を可能にするように付加的なセマンティック情報でテキストを補って、テキストの基礎構造を可能な限り利用することによって、高い精度を獲得している。
【００１３】
図１は、本発明の一実施形態に従ったコンピュータサーバ／システム１０を示すブロック図である。単一のシステムとして示されているが、システム１０の機能は分散型システムとして実現することができる。さらに、この明細書中に開示される機能は、ネットワークを介してともに結合され得る別個のサーバまたは装置上に実現することができる。さらに、システム１０のうち１つ以上の構成要素が含まれない可能性もある。たとえば、セマンティックテキスト検索を実行するサーバの機能に関しては、システム１０はキーボード２６およびカーソル制御２８などの周辺機器を含まない可能性もある。
【００１４】
システム１０は、バス１２または情報を伝えるための他の通信メカニズムと、バス１２に結合されて情報を処理するためのプロセッサ２２とを含む。プロセッサ２２は、如何なるタイプの汎用または特定用途のプロセッサであってもよい。システム１０はさらに、プロセッサ２２によって実行される情報および命令を記憶するためのメモリ１４を含む。メモリ１４は、ランダムアクセスメモリ（random access memory：ＲＡＭ）、読取り専用メモリ（read only memory：ＲＯＭ）、磁気ディスクもしくは光ディスクなどの静的記憶装置、または他のタイプのコンピュータ読取可能媒体を任意に組合せて構成することができる。システム１０はさらに、ネットワークにアクセスするためにネットワークインターフェイスカードなどの通信装置２０を含む。したがって、ユーザは、ネットワークまたは他のいずれかの方法によってシステム１０と直接的にまたは遠隔でインターフェイスを取り得る。
【００１５】
コンピュータ読取可能媒体は、プロセッサ２２によってアクセスすることができる如何なる利用可能な媒体であってもよく、揮発性媒体および不揮発性媒体、取外し可能な媒体、取外し不可能な媒体、および通信媒体を含む。通信媒体は、コンピュータ読取り可能な命令、データ構造、プログラムモジュール、または、他のデータを搬送波または他の搬送機構などの変調データ信号で含んでもよく、如何なる情報伝達媒体をも含む。
【００１６】
プロセッサ２２はさらに、液晶ディスプレイ（Liquid Crystal Display：ＬＣＤ）などのディスプレイ２４にバス１２を介して結合される。キーボード２６およびカーソル制御デバイス２８、たとえばコンピュータマウスなどはバス１２にさらに結合されて、ユーザがシステム１０とインターフェイスを取ることを可能にする。
【００１７】
一実施形態においては、メモリ１４は、プロセッサ２２によって実行されたときに機能を提供するソフトウェアモジュールを格納している。モジュールは、システム１０のためにオペレーティングシステム機能を提供するオペレーティングシステム１５を含む。モジュールはさらに、セマンティックテキスト検索や、この明細書中に開示される他のすべての機能を提供するためのセマンティックテキスト検索モジュール１６を含む。システム１０はより大規模なシステムの一部であってもよい。したがって、システム１０は、追加の機能を含めるように１つ以上の追加の機能モジュール１８を含み得る。データベース１７は、バス１２に結合されてモジュール１６および１８に対して集中型ストレージを提供し、テキストコーパス、ツリーなどを格納している。
【００１８】
別の実施形態においては、インターネットもしくはイントラネットまたはそれらのいずれかの組合せから電子文書を捜し出してダウンロードする第１のサーバまたは複数の第１のサーバが存在する。これらの文書はさらに、データベース（たとえば、構造化照会言語（Structured Query Language：「ＳＱＬ」）もしくはNot only SQL（「NoSQL」）、またはそれらのいずれかの組合せ）に記憶される。第２のサーバまたは複数の第２のサーバはセマンティックテキスト検索ソフトウェアを有する。セマンティックテキスト検索ソフトウェアは、データベースに記憶された文書を用いて第２のサーバプロセッサによって実行されると、図２に示される機能を実行する。検索クエリは、一実施形態においては、２１０において、パーソナルコンピュータ（personal Computer：「ＰＣ」）、携帯電話または他の携帯装置に表示されるグラフィカル・ユーザ・インタフェース（Graphical User Interface：「ＧＵＩ」）を介して受取られる。
【００１９】
図２は、本発明の一実施形態に従った、図１のセマンティックテキスト検索モジュール１６および他の要素の機能を示す高レベルフロー図である。
【００２０】
一実施形態においては、電子文書（またはこの明細書中では「文書」）は、コンピュータまたは他の電子デバイスが当該文書を表示、翻訳および処理することが必要となる態様で記録された任意の情報である。これは、ソフトウェアによって生成され、揮発性記憶装置および／または不揮発性記憶装置上に記憶された文書を含む。例の中には、記事、電子メール、ウェブページ、ツイート、非構造化テキスト記録またはそれらのいずれかの組合せを含む。電子文書は何らかの電子的な構文解析可能テキストを含む。
【００２１】
テキストコーパスは１つ以上の電子文書のグループとして理解される。テキストコーパスの例は、インターネット全体、電子図書館または文書リポジトリを含む。
【００２２】
２０２において、テキストコーパスが受取られる。テキストコーパスは、図１のデータベース１７、または任意のリモートもしくはローカルの揮発性メモリもしくは不揮発性メモリ上に記憶することができる。
【００２３】
２０４において、テキストコーパスが文章に分離される。
２０６において、各々の文章（または文章の断片）が構文解析され、ツリー（すなわち「文章ツリー」）に変換される。文章の構文解析は、文法的な構文解析または文章構造図であり得る。このような構文解析を行うために、さまざまな実施形態では、コンピュータによって実現されるさまざまな利用可能な自然言語パーサを用いることができ、たとえば、「スタンフォード・パーサ：統計パーサ（The Stanford Parser: A statistical parser）」、「ClearNLP」などを含むが、これらに限定されない。各々のツリーは、エッジによって接続されている、文章における各々の語に対応するノードで形成されている。エッジは、接続されたノードの文法的関係を提供する。たとえば、或るエッジは、１つの語が当該エッジによって接続されている別の語の修飾語であることを示すことができる。
【００２４】
図３は、一実施形態に従った、「その車はその事故時にフロントエアバッグを展開させなかった（The car did not deploy front airbags during the accident）」という文章を構文解析することによって形成されたツリーの例を示す。ノードは、「展開（deploy）」、「車（car）」、「させ（did）」、「なかった（not）」、「エアバッグ（airbags）」、「時に（during）」、「その（the）」、「フロント（front）」、「事故（accident）」、および「その（the）」という単語を文章に含んでいる。エッジは、ノードの文法的関係を含む。たとえば、「車」は、「展開させる」の名詞主語（「ｎｓｕｂｊ」エッジ）であり、「エアバッグ」は「展開させる」の直接目的語（「ｄｏｂｊ」エッジ）である。
【００２５】
別の実施形態においては、解析ツリーは、文章にこれらの単語を含むノードを含み得るとともに、各々のノードは、タイプ（すなわち構文的機能（たとえば主語、動詞、目的語））を含み得るとともに、エッジは、ノード間の従属性（すなわち解析ツリーの構造の全体または一部）を含み得る。たとえば、車［主語］は展開（deploy）に従属しており、このため車のタイプ［主語］と関連付けられ、車は展開（deploy）の主語となる［タイプＲＯＯＴ］。エッジは任意にはタイプ（たとえば、直接目的語または間接目的語）を含んでもよい。たとえば、「ジョーは塩入れを渡した」および「ジョーは塩入れを彼の父親へ渡した」という文章は、「塩入れ」を直接目的語として両方の文章に有しており、「彼の父親」を第２の文章に間接目的語として有している。第１の文章の第１の解析ツリーは、タイプ：直接目的語を備えたエッジを有し得るものであって、第２の文章の第２の解析ツリーはまた、タイプ：間接目的語を備えたエッジを含み得る。
【００２６】
２０８において、２０６からの１つ以上のツリーが任意に変更される。たとえば、ツリーは、分割され、トリミングされ、付加的なエッジで補強されてもよく、エッジタイプは収縮されていてもよい、等々である。冠詞ノードは削除することができる。さまざまな実施形態はさまざまな方法で「語」を定義することができる：一実施形態では各々の単語を別個の語として翻訳することができる。他の実施形態では、辞書を照合するか、または、統計言語処理技術または自然言語処理技術を用いて、「米国」または「首席補佐官」などの複数文字シーケンスを単一の語として識別することができる。
【００２７】
別の実施形態においては、１つ以上のノードは、同義語、上位語、下位語および／または他の関連する単語もしくは句を含むように拡張させることができる。これらの関連する単語または句は、単調なリストまたはより複雑な構造、たとえばツリーなどとしてノードの内部に編成することができる。加えて、エッジは収縮または拡張させることもできる。たとえば、「ジョーは塩入れを彼の父親へ渡した。」という文章においては、「彼の父親」という間接目的語タイプを備えたエッジ、および「塩入れ」という直接目的語エッジを備えたエッジはともに、一般的な「目的語」タイプエッジに変換することができる。さまざまな実施形態は、たとえば、元のエッジタイプ（直接目的語、間接目的語）を維持するとともに、その上により広範なタイプの一般的な「目的語」タイプを追加することによって、エッジタイプを拡張させることができる。
【００２８】
２１０において、検索クエリが受取られる。クエリは単一の語で構成することができるか、いくつかの語で構成することができるか、または完全な文章の形式にすることもできる。
【００２９】
２１２において、クエリは任意にはツリーとして翻訳され、および／または、ツリー（すなわち「クエリツリー」）に変換される。一実施形態においては、クエリは、たとえ語を一つだけしか含んでいない（すなわち１ノードツリー）としても、ツリーとして翻訳される。別の実施形態においては、より多くの関連語を追加するように改良が生成され／ユーザに提案され、これらの改良によってツリーが作成されることとなる。クエリは、ツリーに変換することができる（たとえば構文解析によるツリーへの自動変換）か、または、提案された改良によって構築される接続されたツリーのクエリをユーザが構築することだけを可能にするメカニズムによって変換することができる。
【００３０】
２１４において、クエリに応答して生成されたツリー（またはクエリがツリーに変換されない場合には単にクエリ自体）を、２０６においてテキストコーパスから生成された１つ以上の文章ツリーと一致させる。一実施形態においては、この一致により、クエリツリーが文章ツリーのうちのいずれかのサブツリーであるかどうかが判断される。ツリーの一致は、厳密に実行する（すなわち、ノードの完全一致セットが、完全に一致するノードのセットによって厳密に同じ様に接続されている場合に一致が確実であると見なされる）ことができるか、または、近似的に実行する（すなわち、ノードが同じであり得るがエッジが異なり得るか、もしくは、同じエッジのセットが、クエリノードのサブセットだけを接続し得る、等）ことができる。
【００３１】
２１６において、一致するツリーに応じて、対応して一致する文書の応答が生成される。具体的には、一致するツリーに対応する文章を含む文書が一致する文書として選択される。
【００３２】
２１８において、一致するツリーに応じて、クエリツリーをより大型のツリーに構築するように、当該一致に基づいて関連するクエリを改良させる。この結果、ユーザは、実際に互いに作用し合うエンティティに基づいてそれらの検索を改良することができる。たとえば、ユーザが「車」について検索した後に、「車を運転した」「車を衝突させた」および「車事故」などの改良された検索を提案することができる。「車事故」クエリは、事故が車の事故であった場合の文書だけを返すだろう。したがって、「我々は自分たちの車から列車事故を目撃した」を含んだ文書を返すことはないだろう。さまざまな実施形態では、（提案されたクエリが現在のクエリのサブツリーである）広範囲な改良または（語またはエッジが別の語またはエッジと置換されている）側面的な改良を提案することができる。
【００３３】
所望される限りの多くのステップのために改良プロセスが繰返され得る。「車を運転した」というクエリは、「ジョンが車を運転した」などの将来見込みのある改良を返すだろう。この後者のクエリは、セマンティック検索が「ジョンが家にいる間ピーターが車を運転した」を含む文書と一致し得ないので、通常のテキスト検索とは異なっており、かつ、「ジョンが車を運転した」についての句検索が「私の隣人であるジョンが私の車を運転した」というテキストと一致し得ないので、句検索とは異なっている。一方で、実施形態に従ったセマンティック検索はこれを正確に一致させる可能性がある。なぜなら、文章構造内において符号化された意味が理解されるからである。
【００３４】
さらに、改良例はエッジタイプによってグループ化され得る。たとえば、現在のクエリが「車を運転した」である場合、改良例は主語（「ジョンが車を運転した」、「ピーターが車を運転した」）；形容詞（「古い車を運転した」「新しい車を運転した」）；副詞（「車を不注意に運転した」「車を慎重に運転した」）；などによってグループ化され得る。
【００３５】
２２０において、一致するツリーに応じて、感情抽出がいくつかの実施形態において実行される。たとえば、検索語が「Ａｃｅ」と呼ばれる会社である場合、文法的に検索語にリンクされる「恐ろしい」、「大きな」といった修飾語のようなすべての感情が検索される。ターゲット検索語を変更することのない修飾語を含んでいるだけの文章はカウントされないだろう（すなわち、「車での恐ろしい帰宅途中にＡｃｍｅ製品を使用した」では、「Ａｃｍｅ」という語に関して、否定的な感情を返すことはないだろう）。
【００３６】
別の実施形態においては、取込まれたテキストコーパスに加えて、２０６において生成されたツリーを増強するために他のソースが用いられる。他のソースは、ツリー状構造を提供する外部分類法であってもよく、たとえば、プリンストン大学（Princeton University）による（意味を提供する）「ＷｏｒｄＮｅｔ（Ｒ）」、または、地理的位置、関連語もしくはカテゴリの分類といったさまざまな分類に従って概念を編成するウィキペディア（Wikipedia）などが挙げられる。結果として、上位語、下位語、同義語などをクエリ語に応じて生成することができる。一般に、「下位語」である単語または句のセマンティック範囲は別の単語、すなわちその「上位語」、のセマンティック範囲内に含まれている。言いかえれば、下位語は、ある種の関係をその上位語と共有している。たとえば、ハト、カラス、ワシおよびカモメはすべて鳥（これらの上位語）の下位語であり、鳥はさらに動物の下位語である。
【００３７】
たとえば、すべての「車」が「車両」であり、すべての「衝突」が「事故」であることが分かっている場合、「車両事故」についての検索を実行することができ、「車衝突」のすべての事例を探し出すことができる。車以外の車両があり、かつ衝突以外の事故があるので、逆の場合は当てはまらないだろう。他の分類も同様に適用可能であり得る。たとえば、地理的分類では、「マサチューセッツにおける犯罪」を検索して、「ボストンにおける信号無視での横断」についての言及を検索することができるだろう。
【００３８】
さらに、一実施形態においては、セマンティック検索結果を生成するために前方照応による解決策が用いられる。たとえば、テキストコーパスが「ジョンが車を運転した。彼がそれを衝突させた」というテキストを含む場合、実施形態では、誰が何に衝突したかを推論することができ、かつ、２番目の文章を「ジョンが衝突した」および「車を衝突させた」というクエリに返すことができる。
【００３９】
図４は、本発明の実施形態に従った、構文解析された文章および上位語の一致を示すＧＵＩからのスクリーンショットを示す。図４ａはスクリーンショットの左側を示し、図４ｂはスクリーンショットの右側を示し、図４ｃは非構造化テキストの例を拡大して示す。文章は、アクター４０１、アクション４０２およびオブジェクト４０３についてのノードを備えたツリーに構文解析される。クエリ「actor=/vehicle/car AND object="/difficulty/problem」と一致する、テキストコーパスからの構文解析されたツリーおよび対応する文章が４１０および４１１に示されており、上位語階層を含むツリー同士の一致を例示している。この実施形態においては、このクエリにより、すべての解析ツリーの検索が行われる。この場合、アクターノードが「車」という語を上位語「車両」と一致させ、オブジェクトノードが「問題（problem）」という語を上位語「困難（difficulty）」と一致させる。いくつかの実施形態では、単に上位語／下位語ツリーから選択されたノードを用いており、他のものは省いている。たとえば、プリンストンのＷｏｒｄＮｅｔ  ｖ３．１は以下の上位語ツリーを含む：
Ｓ：（ｎ）車、オート車、自動車、マシン、電動車（４輪を備えた電動車両；通常は内燃機関によって推進される）「彼は仕事に行くのに車が必要である」
…
／継承される上位語／
Ｓ：（ｎ）電動車両、自動車両（レール上を走行しない自走式の車輪付き車両）
Ｓ：（ｎ）自走式車両（推進手段をそれ自体が備える車輪付き車両）
Ｓ：（ｎ）車輪付き車両（車輪で移動し、通常、物または人々を搬送するためのコンテナを有する車両）「紀元前３５００年頃の最も古い公知の車輪付き車両がシュメールおよびシリアにおいて発見された」
Ｓ：（ｎ）車両（人々または物体を搬送する輸送機関）
Ｓ：（ｎ）問題、仕事（解決される必要のある難局の状態）「彼女と夫は問題を抱えている」；「彼と連絡をとることがいつもの仕事である」；「交通渋滞およびスモッグなどの都市問題」
…
／直接的な上位語／
Ｓ：（ｎ）難局（対処する個人の能力がほとんど及ばず、担ったりまたは克服したりするのに多大な労力を必要とする事態の状況または状態）「金融難に取り組む」
いくつかの実施形態は、「電動車両」、「自走式車両」および「車輪付き車両」といった上位語を省いて、「車」という語を上位語である「車両」に直接接続することができる。
【００４０】
図５ａが示している一実施形態のスクリーンショットにおいては、ユーザが、クエリ「ACTOR=/vehicle」と一致するすべての文書を検索しており、先頭のバックスラッシュ「／」は、ユーザが上位語に興味を持っていることを示している。このクエリの場合、すべての一致するアクター（車、トラック、オートバイなど）は特定のタイプ車両である。「車両」という単語は、それに一致させるために文書のテキストに表示させる必要はない。
【００４１】
図５ｂは、一実施形態のナビゲーションの後続のステップを示す。この場合、ユーザはさらに、「OBJECT=/difficulty」クエリとも一致する文書を返すだけで、「ACTOR=/vehicle」クエリをフィルタリングすることによって検索を改良している。結果として、任意の種類の困難（問題、面倒など）を経験する任意の種類の車両（車、トラックなど）を言及している文書だけが戻される。
【００４２】
本発明の他の実施形態は、構文解析されたテキストのうちユーザが興味を持っているのがどの分野であるかをユーザが明示的に指定することを必要としない。このような実施形態においては、「車両」についてのクエリは、「車両」のすべての事例を、それらがアクターであろうと、オブジェクトであろうと、または場合によっては構文解析されたツリーの他のノードであろうと、返すことになるだろう。同様に、いくつかの実施形態においては、ユーザは、彼らが上位語に興味を持っていることを明示的に指定する必要はない。このような実施形態においては、クエリ「車両」は、逐語的なテキストが「車両」に言及している文書と、エンティティ（車、トラックなど）が「車両」という語を上位語として有しているような文書とをともに返すこととなるだろう。
【００４３】
いくつかの実施形態は複雑なクエリ構造を可能にし、この場合、クエリはノードだけでなくエッジも指定する。医療記録を検索する一実施形態においては、ユーザは、「アレルギー」または「アレルギー性」という語と一致するノードをすべて検索するクエリを指定することができ、結果として生じるツリーを特定の薬の名前によって改良し、さらに、否定的なエッジがないことによって、結果として生じるツリーを改良することができる。このようなクエリにより、特定の薬に対してアレルギーを有する患者の記録だけが検索されるだろう。
【００４４】
いくつかの実施形態においては、ユーザは、語ごとにセマンティック検索クエリを変更することが可能である。図６は、一実施形態に従った、ユーザインターフェイス６００を介する単一語変更のスクリーンショットを示す。「事故」という語の場合、特定の逐語的形式が６０１に示され、下位語／上位語オプションが６０２に示される。利用不可能な改良例はグレイアウトにされてもよい。
【００４５】
一実施形態においては、以下のような複数の上位語のために階層的な語の変更を用いることができる：
デバイス＞コンピュータ＞アップル
食物＞果物＞アップル（リンゴ）。
【００４６】
このような階層により、ユーザは意味を一義化することもできるようになる。
一実施形態においては、ブレッドクラム（breadcrumbs）は、以下のように規模を充実させる他の目的で（たとえば地理的位置、意味的役割など）用いることができる：
米国＞マサチューセッツ＞ケンブリッジ
英国＞ケンブリッジシャー＞ケンブリッジ
人＞話し手＞ラリー・エリソン
人＞投資家＞ラリー・エリソン。
【００４７】
一実施形態においては、クエリは、以下のように名詞句の修飾語を動的な規模で公開することによって変更することができる：
事故
大規模な事故（２０）
重大事故（１５）
１回目の事故（１２）
…
このような修飾語は、図６の６０３に示されるようにクエリ変更ＵＩ６００に含めることもできる。
【００４８】
タグクラウドは、典型的には、クエリを想定して、１セットの常習的な語を提供する。しかしながら、セマンティックを用いる実施形態においては、タグクラウドは、クエリを想定して、１セットの常習的なサブツリーを提供することができる。
【００４９】
実施形態では、検索の焦点をトークンからテキストの図的表現へシフトさせること（すなわち、ノードとしての語／エンティティおよびエッジとしてのそれらの間の接続）によって、セマンティックとテキストと（言いかえれば、意味とその画像と）の間の隙間が埋められる。先行技術の「bag of words」モデルは、［理論グループ］および［グループ理論］などの検索を識別することなく、「Ｊａｖａ」（登録商標）などの多義語のすべての意味を同じトークンにマッピングする。
【００５０】
実施形態では「句」として知られている言語構造を用いている。英語では、名詞句は、０以上の形容詞の後に１つ以上の名詞が続くシーケンスを含み得る。他の実施形態では冠詞および前置詞を考慮に入れる可能性もある。動詞句は、０以上の副詞の後に１つ以上の動詞が続いている。実施形態ではさらに、タイプされたエンティティ抽出を用いる。この場合、調整された抽出器は、人々、場所または組織などのエンティティについてのコーパステキストに印を付ける。
【００５１】
情報の手掛かりが豊富に含まれているインターフェイス（関連語、リスト、タグクラウド、改良例）によってユーザにこのようなエンティティを公開することにより、ユーザが、関心のある語だけでなく、特定の意味を伝えるのに用いられる語を選択することも可能となる。
【００５２】
意味は、エンティティレベルだけでなく文章レベルでも符号化される。文章構造は、エンティティが互いに作用し合って互いを変更する方法を表わしている。この情報の抽出はテキストのセマンティックを保持するのに必須である。
【００５３】
一実施形態は、アクター／アクション／オブジェクトの３要素（triples）の抽出を用いる（この場合、アクションは動詞句であり、アクターおよびオブジェクトは名詞句である）。「その車はその事故時にフロントエアバッグを展開させなかった（The car did not deploy front airbags during the accident）」という文章は、このような３要素に構文解析することができる：｛車（car）／展開させなかった（did not deploy）／フロントエアバッグ（front airbags）｝。このような構文解析では損失が大きくなってしまう：これにより、この例では「事故時に」という修飾語の損失を含め、文章構造が必然的に単純化されることとなる。しかしながら、これにより、文章から大量の情報が抽出され、bag of wordsモデルには到達し得ない。
【００５４】
他の実施形態は、抽出された３要素を上述のフォーマットに制限しない。「ＲＤＦスキーマ」｛主語／述語／目的語｝は、上述のもののスーパーセットである。このようなスキーマは、さまざまなタイプのエンティティおよび述語の抽出をサポートする。
【００５５】
一実施形態は、文章または文章の断片をグラフに構文解析し、語（主語、目的語、アクション、修飾語など）がグラフにおけるノードにマッピングされており、述語が（方向付けされた）エッジを形成している。一実施形態においては、エッジは、「節の」、「直接的な」、「前置詞の」などの語同士の間の関係を記述するエッジを含む文章の文法構造からマッピングされる。このようなエッジの一分類法が、de Marneffeらによる「スタンフォード型の従属性マニュアル（Stanford typed dependencies manual）」（２００８年９月；スタンフォード・パーサ（Stanford Parser）ｖ．３．３の２０１３年１２月改訂版）において開示されている。
【００５６】
実施形態は、図７に示されるように、（場合によっては、選択時に得られるであろう記録のカウント、または、ヒストグラムバーなどの記録カウントの他の表示とともに）リンクの改良をもたらすユーザインターフェイス要素を含む誘導型（またはファセット）ナビゲーションを提供する。
【００５７】
一実施形態における誘導型ナビゲーションインターフェイスは二重の目的を有する。改良により、一方では、結果セットを絞り込むための箇所が提供される。他方では、これら改良により、結果セットの概要が提供され、これにより、誘導型ナビゲーションのユーザ経験に対してセマンティック検索アスペクトが提供される。図７ａおよび図７ｂは、一実施形態に従った、改良例と結果セットの概要とを示すインターフェイスの例である。
【００５８】
特に、特定の語を選択することにより、一実施形態が、解析ツリーのデータベースに問合わせを行うことによって、かつ改善クエリのセットを元の語と直接的なエッジによって元の語に接続されている追加の一語とを含むものに制限することによって、実現可能な改良（より詳細な）クエリを表示することが可能となり得る。このような改良により、現在の結果セットのセマンティックコンテンツがユーザに提示され、さらなるナビゲーションの実現可能な方向が提案される。さらなる改良例がリストから選択可能であるか、または、ユーザは検索ボックスを介して対象の語を検索することができる。図７ａはこのような一実施形態を示す。この場合、元の検索語「色」の場合には、「色を発見」、「お気に入りの色」および「色の使用」などの改良例が、各々の改良の頻度を示すヒストグラムバーとともに提案される。
【００５９】
実施形態は、同じ対話モデルをクエリプロセスのちょうど最初に利用することを可能にし、「タグクラウド」または「単語クラウド」と同じ態様で表示される構文解析されたセマンティックツリーのデータベースから１語または１セットの語を選択することによって、ユーザが情報の集合全体の改良を開始することを可能にする。
【００６０】
記載されているように、実施形態では、コンテキストを用いて、トークンをエンティティおよび文章構造にグループ化して、エンティティが他のエンティティに作用し合う態様を検出する。さらに、実施形態では、構文解析されたセマンティックツリーの各々の分野をより一般的な階層ペアレント値で増強するなどしてコーパス外の情報を使用する。いくつかの実施形態においては、「ＷｏｒｄＮｅｔ（Ｒ）」を用いて、名詞または動詞などのノードについての上位語（広範囲の同義語）を探し出すことができる。他の実施形態の場合、たとえば、「フロントエアバッグ」の場合には「エアバッグ」を用いたり、または「ヒラリー・クリントン」および「ビル・クリントン」の両方の場合には「クリントン」を用いたりするように、先頭の語（英語では、ほとんどの場合、句の右端の語）を用いることができる。
【００６１】
図７ａは、ユーザが検索意図を表わす任意の語（「色」）を検索することから開始し、引き続き、改良（「お気に入りの色」）を選択して結果セットを絞り込んでいく。実施形態は、さらに、図７ｂにおけるさらなる実現可能な改良例を提供する。
【００６２】
開示されているように、実施形態は、文章をツリーに構文解析し、このようなツリーをユーザクエリと一致させるためのメカニズムを提供することによって、セマンティックテキスト検索を提供する。一致するツリーは、一致する対応の文書（改良例）の応答を生成し得るか、または、感情抽出を推進するために感情を伝える語のセットを提供し得る。
【００６３】
いくつかの実施形態がこの明細書中に具体的に例示および／または記載されている。しかしながら、開示された実施形態の変更例および変形例が、発明の精神および企図される範囲から逸脱することなく、上述の教示によって添付の特許請求の範囲内に包含されることが認識されるだろう。
【図１】
0006588089.tif 000002
【図２】
0006588089.tif 000003
【図３】
0006588089.tif 000004
【図４Ａ】
0006588089.tif 000005
【図４Ｂ】
0006588089.tif 000006
【図４Ｃ】
0006588089.tif 000007
【図５Ａ】
0006588089.tif 000008
【図５Ｂ】
0006588089.tif 000009
【図６】
0006588089.tif 000010
【図７Ａ】
0006588089.tif 000011
【図７Ｂ】
0006588089.tif 000012