(58)【調査した分野】(Int.Cl.,DB名)
前記シーン分析手段は、入力された文章に対し、述語項構造解析によって複文を単文に分割すると共に、各単文を形態素解析によって形態素に区分し、各形態素に対する格分析によって主語、目的語及び述語に区分する
ようにコンピュータを機能させることを特徴とする請求項1から3のいずれか1項に記載の類似検索プログラム。
【発明の概要】
【発明が解決しようとする課題】
【0005】
前述した特許文献1及び2のような従来技術によれば、ユーザによって入力されたクエリ文章を、形態素に解析し、それら単語の出現頻度に応じて類似度が判定されている。即ち、検索装置によれば、クエリ文章の単語の出現頻度が多いコンテンツ文章ほど、検索結果として優先的に選択されることとなる。
【0006】
これに対し、本願の発明者らは、「クエリ文章であっても、ストーリーを持つ1つのコンテンツであるのではないか?」と考えた。即ち、クエリ文章であってもコンテンツ文章であっても、それら文章に含まれる各文の順序は、話の流れでの1つであると考えた。クエリ文章の単語の出現頻度が多いコンテンツ文章であっても、話の流れが異なる場合、検索結果として優先的に選択されるべきではない。
【0007】
そこで、本発明は、単語の出現頻度のみならず、文章間の話の流れも考慮して類似度を導出する類似検索プログラム、装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明によれば、装置に搭載されたコンピュータを、第1の文章と第2の文章との間の類似度を導出するように機能させる類似検索プログラムにおいて、
第1の文章及び第2の文章について、複文分析及び格分析によって、文毎に「主語、目的語及び述語」の語間関係を含む「シーン要素」と、当該シーン要素が当該文章における先頭からの「シーン順序」とを対応付けて導出するシーン分析手段と、
類義語辞書部を用いて、第1の文章の各シーン要素に含まれる原単語に類似する拡張単語を検索し、第1の文章のシーン要素を「原単語+拡張単語」に拡張し、第1の文章の各シーン要素に対して第2の文章の全てのシーン要素を比較し、マッチングした当該第2の文章における「シーン順序」を導出するマッチング手段と、
第1の文章のシーン要素と第2の文章のシーン要素
とが「原言語」でマッチングした場合、「拡張単語」でマッチングするよりも高いポイントとなり、及び、マッチングした先後のシーン要素同士の時系列順序が一致した場合、不一致よりも高いポイントとなるように、ポイントを付与するポイント付与手段と
してコンピュータを機能させ、当該ポイントを第1の文章と第2の文章との間の類似度とすることを特徴とする。
【0010】
本発明の類似検索プログラムにおける他の実施形態によれば、
ポイント付与手段は、第1の軸にシーン順序に応じてシーン要素を並べ、第2の軸にポイント数を記述したグラフに記録する
ようにコンピュータを機能させることも好ましい。
【0011】
本発明の類似検索プログラムにおける他の実施形態によれば、
第1の文章は、検索用のクエリ文章であって、シーン分析手段によってリアルタイムに分析されると共に、
第2の文章は、検索対象用のコンテンツ文章であって、シーン分析手段によって予め大量に分析され、分析結果となる第2の文章のシーン要素としてコンテンツシーン蓄積手段に蓄積される
ようにコンピュータを機能させることも好ましい。
【0012】
本発明の類似検索プログラムにおける他の実施形態によれば、
シーン分析手段は、入力された文章に対し、述語項構造解析によって複文を単文に分割すると共に、各単文を形態素解析によって形態素に区分し、各形態素に対する格分析によって主語、目的語及び述語に区分する
ようにコンピュータを機能させることも好ましい。
【0013】
本発明によれば、装置に搭載されたコンピュータを、第1の文章と第2の文章との間の類似度を導出する類似検索装置において、
第1の文章及び第2の文章について、複文分析及び格分析によって、文毎に「主語、目的語及び述語」の語間関係を含む「シーン要素」と、当該シーン要素が当該文章における先頭からの「シーン順序」とを対応付けて導出するシーン分析手段と、
類義語辞書部を用いて、第1の文章の各シーン要素に含まれる原単語に類似する拡張単語を検索し、第1の文章のシーン要素を「原単語+拡張単語」に拡張し、第1の文章の各シーン要素に対して第2の文章の全てのシーン要素を比較し、マッチングした当該第2の文章における「シーン順序」を導出するマッチング手段と、
第1の文章のシーン要素と第2の文章のシーン要素
とが「原言語」でマッチングした場合、「拡張単語」でマッチングするよりも高いポイントとなり、及び、マッチングした先後のシーン要素同士の時系列順序が一致した場合、不一致よりも高いポイントとなるように、ポイントを付与するポイント付与手段と
を有し、当該ポイントを第1の文章と第2の文章との間の類似度とすることを特徴とする。
【0014】
本発明によれば、装置を用いて、第1の文章と第2の文章との間の類似度を導出する類似検索方法において、
第1の文章及び第2の文章について、複文分析及び格分析によって、文毎に「主語、目的語及び述語」の語間関係を含む「シーン要素」と、当該シーン要素が当該文章における先頭からの「シーン順序」とを対応付けて導出する第1のステップと、
類義語辞書部を用いて、第1の文章の各シーン要素に含まれる原単語に類似する拡張単語を検索し、第1の文章のシーン要素を「原単語+拡張単語」に拡張し、第1の文章の各シーン要素に対して第2の文章の全てのシーン要素を比較し、マッチングした当該第2の文章における「シーン順序」を導出する第2のステップと、
第1の文章のシーン要素と第2の文章のシーン要素
とが「原言語」でマッチングした場合、「拡張単語」でマッチングするよりも高いポイントとなり、及び、マッチングした先後のシーン要素同士の時系列順序が一致した場合、不一致よりも高いポイントとなるように、ポイントを付与する第3のステップと
を有し、当該ポイントを第1の文章と第2の文章との間の類似度とすることを特徴とする。
【発明の効果】
【0015】
本発明のプログラム、装置及び方法によれば、単語の出現頻度のみならず、文章間の話の流れも考慮して類似度を導出することができる。
【発明を実施するための形態】
【0017】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
【0018】
本発明の基本的機能としては、第1の文章と第2の文章との間の類似度を導出するものである。この機能によれば、第1の文章を検索用のクエリ文章とし、第2の文章を検索対象用のコンテンツ文章として、類似度の高いコンテンツ文章を検索することができる。以下では、実施形態として、コンテンツ(例えば書籍や映画など)を対象とした検索について、利用者が入力したクエリ文章(ストーリーにおけるシーンの一部)に対して、類似度が高いコンテンツを検索する類似検索装置について説明する。
【0019】
図1は、本発明における類似検索装置の機能構成図である。
【0020】
類似検索装置1は、ユーザによって操作される端末2から、クエリ文章を受信し、そのクエリ文章をキーとして複数のコンテンツを検索する。
図1によれば、類似検索装置1は、コンテンツ文章収集部11と、クエリ文章入力部12と、シーン分析部13と、コンテンツシーン蓄積部14と、マッチング部15と、類義語辞書部16と、ポイント付与部17と、検索結果出力部18とを有する。これら機能構成部は、装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現できる。
図1の機能構成部の処理の流れによれば、類似検索方法としても理解できる。
【0021】
[コンテンツ文章収集部11]
コンテンツ文章収集部11は、コンテンツ毎に、大量のコンテンツ文章を蓄積したデータベースである。又は、コンテンツ文章収集部11は、ネットワークを介して、インターネットに接続された様々なサーバ群に蓄積されたコンテンツ文章を検索することができるものであってもよい。「コンテンツ文章」とは、例えば書籍や映画のようなコンテンツに関連するストーリー文章であって、例えばWikipedia(登録商標)のように当該コンテンツについて解説したものであってもよい。即ち、コンテンツそのものである必要はない。例えば当該コンテンツが映画である場合、そのストーリーの要約文であってもよい。コンテンツ文章収集部11によって収集されたコンテンツ文章は、シーン分析部13へ出力される。
【0022】
[クエリ文章入力部12]
クエリ文章入力部12は、ユーザから検索用のクエリ文章を受信し、そのクエリ文章をシーン分析部13へ出力する。クエリ文章入力部12は、ユーザによって操作される端末2から要求に対して、Webぺージを応答するものであってもよい。このWebページは、クエリ文章を入力可能な1つの「検索窓」及び「検索ボタン」を有する。入力可能なテキストは、単文に限られず、複文の入力も許容する。尚、マイクと音声認識機能を用いて、利用者の音声によるテキスト入力に対応してもよい。ここで、例えば以下のようなクエリ文章を受信したとする。
「お姫様と化け物が悪者をやっつけて、最後に彼らが結婚する」映画は?
【0023】
[シーン分析部13]
シーン分析部13は、クエリ文章(第1の文章)及びコンテンツ文章(第2の文章)について、複文分析及び格分析によって、文毎に「主語、目的語及び述語」の語間関係を含む「シーン要素」と、当該シーン要素が当該文章における先頭からの「シーン順序」とを対応付けて導出する。
【0024】
検索用のクエリ文章は、シーン分析部13によってリアルタイムに分析される。一方で、検索対象用のコンテンツ文章は、シーン分析部13によって予め大量に分析され、分析結果となるコンテンツのシーン要素としてコンテンツシーン蓄積部14に蓄積される。
【0025】
図2は、本発明におけるシーン分析部のフローチャートである。
【0026】
(S131)述語項構造解析
入力された文章に対して、述語項構造解析によって複文を単文に分割すると共に、各単文を形態素解析によって形態素に区分し、各形態素に対する格分析によって主語、目的語及び述語に区分する。
【0027】
「述語項構造」とは、文章中の述語に対して「項」となる名詞句等を当てたものである。述語項構造を用いることによって、文章の意味の骨格を把握することができる。述語項構造解析として、例えばフリーソフトであるSyncha等の述語項構造解析器を用いることができる。また、「形態素」とは、ある言語について意味を持つ最小の単位をいい、それ以上分解したら意味をなさなくなる単位まで分解された各音素をいう。
【0028】
述語項構造は、「述語」に対する「目的語」(及び主語)とその「格」とから構成される。例えば「悪者をやっつける」の述語項構造は、述語「やっつける」に対して目的語「悪者」及び格「ヲ」からなる。また、例えば「結婚する」の述語項構造は、述語「結婚する」に対して目的語「――」及び格「ニ」からなる。尚、述語項構造解析は、代名詞についても、前述した名詞を自動的に補完する。
クエリ文章「お姫様と化け物が悪者をやっつけて、最後に彼らが結婚する」
述語項構造
「お姫様と化け物が悪者をやっつける/最後にお姫様と化け物(彼ら)が結婚する
目的語:「悪者」ヲ格 / 目的語:「――」ニ格
述語 :「やっつける」 / 述語 :「結婚する」
【0029】
(S132)シーン表現抽出
S131の述語項構造解析によって、文章が複文である場合、複数のシーンが含まれているとし、シーン順序を構成する。また、格を判定し、「主語」「目的語」「述語」に区分する。
述語項構造1「お姫様と化け物が悪者をやっつける」
主語 :「お姫様」「化け物」
目的語:「悪者」ヲ格
述語 :「やっつける」
述語項構造2「最後にお姫様と化け物(彼ら)が結婚する」
主語 :「お姫様」「化け物」
目的語:「――」ニ格
述語 :「結婚する」
【0030】
(S133)シーン要素構成
単文を「1シーン」と定義し、文章毎に、複数のシーンを順序付けしてリスト化する。シーン毎に、「主語」「目的語」「述語」が登録される。「主語」「目的語」「述語」それぞれは、1以上の形態素からなり、1つの形態素からなる単純語(例えば山)と、複数の形態素からなる複合語(例えば山登り)とがある。
シーン:[<主語><目的語><述語>]
シーン要素1:<お姫様><悪者><やっつける>
<化け物>
シーン要素2:<お姫様><――><結婚する>
<化け物>
【0031】
シーン分析部13は、コンテンツ文章に基づくシーン要素を、コンテンツ蓄積部14へ出力し、クエリ文章に基づくシーン要素を、マッチング部15へ出力する。
【0032】
[コンテンツシーン蓄積部14]
コンテンツシーン蓄積部14は、コンテンツ文章収集部11から出力された当該コンテンツ文章(識別子)毎に、シーン分析部13によって分析されたシーン要素群を蓄積する。コンテンツシーン蓄積部14は、マッチング部15から参照される。
【0033】
[マッチング部15]
図3は、本発明におけるマッチング部のフローチャートである。
【0034】
(S131)シーン表現拡張
マッチング部15は、類義語辞書部16を用いて、クエリ文章(第1の文章)の各シーン要素に含まれる原単語に類似する拡張単語を検索し、クエリ文章のシーン要素を「原単語+拡張単語」に拡張する。
<お姫様> -><姫><女性><ヒロイン>
<化け物> -><怪物><妖怪>
<悪者> -><敵><悪役>
<やっつける>-><戦う><殺す><追い払う>
<結婚する> -><恋に落ちる><結ばれる>
これによって、例えば以下ようなシーン要素も、マッチング対象とする。
シーン要素1:<お姫様> <悪者><やっつける>
<姫> <妖怪><戦う>
<ヒロイン><怪物><殺す>
・・・
シーン要素2:<女性><――><恋に落ちる>
<妖怪><――><結ばれる>
・・・
【0035】
(S132)マッチング位置抽出
マッチング部15は、クエリ文章(第1の文章)の各シーン要素に対してコンテンツ文章(第2の文章)の全てのシーン要素を比較し、マッチングした当該コンテンツ第2の文章における「シーン順序」を導出する。即ち、当クエリ文章の当該シーン要素が、コンテンツ文章における何番目(シーン順序)に出現したかを導出する。これによって、出願頻度だけでなく、出現したシーン要素同士の先後関係も認識することができる。例えば、シーン要素同士の先後関係の一致/不一致によって、所定ポイント数の差をつけることによって、できる限りクエリ文章(例えばユーザの記憶に基づくシーンの出現順序)に合ったコンテンツ文章を検索することができる。
【0036】
<コンテンツ文章に対する出現頻度とシーン順序の抽出>
例えば、前述したクエリ文章のシーン要素1及び2と、以下のようなコンテンツ文章の全てのシーン要素とを比較する。
[映画:カリブ]
「・・・。お姫様は、海賊にさらわれて、彼らは恋に落ちた。・・・」
シーン要素1<お姫様><海賊><さらわれる>
<お姫様><海賊><恋に落ちる>
出現頻度:0
[映画:妖怪]
「・・・。ヒロインと妖怪は、恋に落ちて、一緒に悪者をやっつけた。・・・」
シーン要素1<ヒロイン><――><恋に落ちる>
<妖怪>
シーン要素2<ヒロイン><悪者><やっつける>
<妖怪>
出現頻度:2
シーン順序:シーン要素2->シーン要素1
[映画:野獣]
「・・・。怪物とお姫様は、敵をやっつけて、彼らは結ばれた。・・・」
シーン要素1<怪物> <敵><やっつける>
<お姫様>
シーン要素2<怪物><――><結ばれる>
<お姫様>
出現頻度:2
シーン順序:シーン要素1->シーン要素2
[映画:白雪姫]
「・・・。お姫様は、リンゴを食べて、王子様と結婚した。・・・」
シーン要素1<お姫様><リンゴ><食べる>
シーン要素2<お姫様><――><結婚する>
出現頻度:1
シーン順序:シーン要素2のみ
【0037】
[ポイント付与部17]
ポイント付与部17は、クエリ文章(第1の文章)のシーン要素とコンテンツ文章(第2の文章)のシーン要素との間のマッチングした数と、マッチングした先後のシーン要素同士の時系列順序が一致した数とが多いほど、高いポイントを付与する。
図3によれば、当該クエリ文章のシーン要素に対して、コンテンツ文章毎のグラフが表されている。このグラフは、ポイント付与部17は、横軸にシーン順序に応じてシーン要素を並べ、縦軸にポイント数を記述したものである。横軸は、所定単位の順序数毎に、ポイント数が計数されている。
【0038】
最も簡単なポイント計数方法として、以下のようなものがある。
クエリ文章の1つのシーン要素が出現した ->1ポイント
出現した先後のシーン要素のシーン順序が一致した->1ポイント
これによって、コンテンツ文章毎に、ポイント数の平均値を算出する。そして、その平均値を類似度として、類似度が最も高いコンテンツ文章を検索結果として選択する。
【0039】
ここで、ポイント数の計数方法として、以下のような順序で、高->低を規定することもできる。
(10ポイント)
クエリ文章の「シーン要素の原単語で」出現した、且つ、
出現した先後のシーン要素の「シーン順序が一致」した
(8ポイント)
クエリ文章の「シーン要素の拡張表現で」出現した、且つ、
出現した先後のシーン要素の「シーン順序が一致」した
(5ポイント)
クエリ文章の「シーン要素の原単語又は拡張表現で」出現した、且つ、
出現した先後のシーン要素の「シーン順序が不一致」だった
(3ポイント)
クエリ文章の「シーン要素の主語、目的語、述語が、所定文範囲内
(例えば前後10文(前後10個のシーン要素)以内)に」出現した
※前後10文程度の所定文範囲内の近隣に、クエリ文章のシーン要素の各原単語が
離れて存在する場合を想定している。
(1ポイント)
クエリ文章の「シーン要素のいずれの単語」が出現した
【0040】
[検索結果出力部18]
検索結果出力部18は、検索結果として、2つの文章間の類似度、又は、クエリ文章に最も類似するコンテンツ文章の識別子(コンテンツ名)を出力する。具体的には、ポイント付与部17におけるポイントが最も高いコンテンツ文章を、クエリ文章に対する類似検索結果として出力する。ポイント数の降順に、複数のコンテンツ文章のコンテンツ名を並べて出力するものであってもよい。尚、検索結果出力部18は、ユーザによって操作される端末2からのクエリ文章の要求に対して、Webぺージを応答するものであってもよい。
【0041】
図4は、検索結果を表す画面イメージである。
【0042】
図4(a)によれば、クエリ文章として「お姫様と化け物が悪者をやっつけて、最後に彼らが結婚する」と入力されている。これに対し、ポイント数の降順に、コンテンツ文章「野獣」「妖怪」「白雪姫」「カリブ」が表示されている。ここで、ユーザが、最も類似度が高い「野獣」を選択したとする。
【0043】
図4(b)によれば、映画「野獣」が再生されている。このとき、ポイント付与部17で記録されたグラフを用いて、ポイント数が最も高いシーン位置へジャンプして、その位置から再生を開始することもできる。コンテンツが書籍であれば、ポイント数が最も高いページ位置へジャンプして再生する。
【0044】
以上、詳細に説明したように、本発明のプログラム、装置及び方法によれば、単語の出現頻度のみならず、文章間の話の流れも考慮して類似度を導出することができる。
【0045】
特に、本発明によれば、クエリ文章に含まれる単語だけではなく、シーンとして検索するため、クエリ文章(例えばユーザが想定するストーリー文)に合う検索結果を優先的に出力することができる。
【0046】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。