JP6555810B2 - 類似度算出装置、類似検索装置、および類似度算出プログラム - Google Patents

類似度算出装置、類似検索装置、および類似度算出プログラム Download PDF

Info

Publication number
JP6555810B2
JP6555810B2 JP2015141580A JP2015141580A JP6555810B2 JP 6555810 B2 JP6555810 B2 JP 6555810B2 JP 2015141580 A JP2015141580 A JP 2015141580A JP 2015141580 A JP2015141580 A JP 2015141580A JP 6555810 B2 JP6555810 B2 JP 6555810B2
Authority
JP
Japan
Prior art keywords
similarity
probability distribution
list
query
distribution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2015141580A
Other languages
English (en)
Other versions
JP2017027106A (ja
Inventor
松井 淳
淳 松井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Japan Broadcasting Corp
Original Assignee
Japan Broadcasting Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Japan Broadcasting Corp filed Critical Japan Broadcasting Corp
Priority to JP2015141580A priority Critical patent/JP6555810B2/ja
Publication of JP2017027106A publication Critical patent/JP2017027106A/ja
Application granted granted Critical
Publication of JP6555810B2 publication Critical patent/JP6555810B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、類似度算出装置、類似検索装置、および類似度算出プログラムに関する。
従来、動画や文書など様々な内容を取り上げたオブジェクトの集合(オブジェクト集合)のなかから、与えられたキーワードリスト(クエリ)が指し示す内容と合致あるいは類似するオブジェクトを抽出する類似検索という技術がある。例えば、非特許文献1には、検索対象のオブジェクトデータが固定である条件において、当該オブジェクトデータについて配置したpivotと呼ばれる目印(参照オブジェクト)を利用して、与えられたクエリが指し示す内容と合致あるいは類似する可能性が低いオブジェクトをまとめて削除することによって、クエリ・オブジェクト間の参照ならびに評価の回数を削減し、その結果、当該類似検索全体の処理時間を高速化する手法が開示されている。
倉沢央、深川大路、高須淳宏、安達淳、「類似検索の高速化を目的としたPivot選択手法の実験評価」、第9回情報科学技術フォーラム講演論文集、D−008、pp.109−110、2010年
しかしながら、非特許文献1に記載された類似検索などにおいては、Pivotなど、検索対象であるオブジェクトデータについての事前情報を利用して、クエリ・オブジェクト間の参照ならびに評価の組み合わせの総数を削減する。このため、当該事前情報を生成する前処理を、システム起動時、オブジェクト更新時などに行う必要があり、類似検索全体のの演算量が多くなってしまうことがあるという問題がある。特に、放送予定番組を検索対象とした番組推薦のように、検索対象のオブジェクトデータ(放送予定番組)が日々刻々と変化する状況においては、この前処理の頻度が高くなる。
本発明は、このような事情に鑑みてなされたもので、類似検索全体の演算量の増加を抑えることができる類似度算出装置、類似検索装置、および類似度算出プログラムを提供する。
この発明は上述した課題を解決するためになされたもので、本発明の一態様は、第1のオブジェクトに含まれる複数の単語の意味空間における分布から、前記意味空間における確率分布であって、前記第1のオブジェクトを表す確率分布を推定する確率分布推定部と、第2のオブジェクトに含まれる複数の単語各々の前記意味空間における座標各々での、前記確率分布の値を用いて、前記第1のオブジェクトと前記第2のオブジェクトとの類似度を算出する類似度算出部とを備える類似度算出装置である。
また、本発明の他の態様は、クエリに含まれる複数の単語の意味空間における分布から、前記意味空間における確率分布であって、前記クエリを表す確率分布を推定する確率分布推定部と、検索対象のオブジェクトに含まれる複数のオブジェクトについて、当該オブジェクトに含まれる複数の単語各々の前記意味空間における座標各々での、前記確率分布の値を用いて、前記クエリと前記当該オブジェクトとの類似度を算出し、算出した前記類似度に基づき、前記検索対象のオブジェクトの中から、前記クエリに類似するオブジェクトを探索する探索実行部とを備える類似検索装置である。
また、本発明の他の態様は、上述の類似検索装置であって、前記意味空間は、単語同士の意味が近いほど、前記単語同士の距離が近くなる空間であり、前記クエリを表す確率分布は、前記クエリに含まれる複数の単語の分布密度が高い位置ほど、高い確率となる分布である。
また、本発明の他の態様は、上述のいずれかの類似検索装置であって、前記確率分布は、複数の正規分布からなる第1の混合正規分布であり、前記探索実行部は、前記検索対象のオブジェクトに含まれる全てのオブジェクトについて、当該オブジェクトに含まれる複数の単語各々の前記意味空間における座標各々での、前記複数の正規分布のうちの一部の正規分布からなる第2の混合正規分布の値を用いて、前記クエリと前記当該オブジェクトとの類似度を算出し、算出した前記類似度に基づき、前記複数のオブジェクトを決定する。
また、本発明の他の態様は、コンピュータを、第1のオブジェクトに含まれる複数の単語の意味空間における分布から、前記意味空間における確率分布であって、前記第1のオブジェクトを表す確率分布を推定する確率分布推定部、第2のオブジェクトに含まれる複数の単語各々の前記意味空間における座標各々での、前記確率分布の値を用いて、前記第1のオブジェクトと前記第2のオブジェクトとの類似度を算出する類似度算出部として機能させるための類似度算出プログラムである。
この発明によれば、類似検索全体の演算量の増加を抑えることができる。
この発明の一実施形態による類似検索装置100の構成を示す概略ブロック図である。 同実施形態による類似検索装置100の動作を説明するフローチャートである。 同実施形態によるクエリデータ単語リストの一例を示す図である。 同実施形態によるクエリデータベクトルリストの一例を示す図である。 同実施形態による確率分布パラメータリストの一例を示す図である。 同実施形態による確率分布推定部50が推定した混合正規分布の一例の模式図である。 同実施形態によるオブジェクトデータの一例を示す図である。 同実施形態によるオブジェクトデータ単語リストの一例を示す図である。 同実施形態によるオブジェクトデータベクトルリストOrの一例を示す図である。 同実施形態によるオブジェクトデータベクトルリストOrの一例の模式図である。 同実施形態による一次探索実行部60による処理を説明する模式図である。 同実施形態による累積類似度(近似値)の一例を示す図である。 同実施形態によるオブジェクトデータベクトルリストCuの一例を示す図である。 同実施形態による二次探索実行部70による処理を説明する模式図である。 同実施形態による累積類似度(真値)の一例を示す図である。
以下、図面を参照して、本発明の実施の形態について説明する。この発明の一実施形態による類似検索装置100は、複数の検索対象のオブジェクトの中から、クエリに類似するものを検索する類似検索装置である。検索対象のオブジェクトは、例えば、放送予定の番組リスト中の各番組の番組概要である。また、クエリは、例えば、視聴者が過去に視聴した番組の字幕データである。
図1は、類似検索装置100の構成を示す概略ブロック図である。類似検索装置100は、オブジェクトデータ記録・比較部10、オブジェクトデータ解析部20、クエリデータ記録・比較部30、単語ベクトル生成部40、確率分布推定部50、探索実行部80を含む。探索実行部80は、一次探索実行部60、二次探索実行部70を含む。
オブジェクトデータ記録・比較部10は、入力されたオブジェクトデータが新規の内容であるか否かの判定、ならびに、オブジェクトデータとオブジェクトデータベクトルリストOrの記録を行う。オブジェクトデータは、複数の検索対象のオブジェクトを表すデータである。オブジェクトが、例えば、放送予定の番組リスト中の番組概要であれば、オブジェクトデータは、それらの番組概要の文字列データである。オブジェクトデータベクトルリストOrは、オブジェクトデータ、すなわち検索対象のオブジェクトに含まれている単語各々の意味空間における座標(ベクトル)のリストである。意味空間は、意味の近い単語同士ほど距離が近くなるようにプロットされる空間である。オブジェクトデータ解析部20は、オブジェクトデータ記録・比較部10が新規であると判定したオブジェクトデータから、オブジェクトデータ単語リストの生成を行う。オブジェクトデータ単語リストは、オブジェクトデータに含まれる単語のうち、名詞のみなど、所定の規則により抽出された単語のリストである。
クエリデータ記録・比較部30は、入力されたクエリデータ単語リストが新規の内容であるか否かの判定、ならびに、確率分布パラメータリストの記録を行う。クエリデータ単語リストは、クエリに含まれる単語のリストである。確率分布パラメータリストは、意味空間における確率分布であって、クエリを表す確率分布を示すパラメータのリストである。後述するように、本実施形態では、クエリを表す確率分布を、混合正規分布をモデルとして推定する。このため、本実施形態では、確率分布パラメータリストは、混合正規分布示すパラメータのリストである。
単語ベクトル生成部40は、クエリデータ記録・比較部30が新規であると判定したクエリデータ単語リストに対応するクエリデータベクトルリストを算出する。また、単語ベクトル生成部40は、オブジェクトデータ解析部20が生成したオブジェクトデータ単語リストに対応するオブジェクトデータベクトルリストOrを算出する。確率分布推定部50は、単語ベクトル生成部40が算出したクエリデータベクトルリストに対して確率分布パラメータリストを計算する。
一次探索実行部60は、クエリデータ記録・比較部30が記録している確率分布パラメータリストを用いて、オブジェクトデータ記録・比較部10が記録しているオブジェクトデータベクトルリストOrのなかから、別途定義する累積類似度(近似値)が閾値以上のオブジェクトを選定する枝刈り処理を行う。一次探索実行部60は、選定したオブジェクトに対応するベクトルを抽出し、オブジェクトデータベクトルリストCuとして出力する。すなわち、オブジェクトデータベクトルリストCuは、枝刈りされたオブジェクデータベクトルリストである。
二次探索実行部70は、クエリデータ記録・比較部30が記録している確率分布パラメータリストを用いて、一次探索実行部60が出力したオブジェクトデータベクトルリストCuのなかから、別途定義する累積類似度(真値)の上位k個のオブジェクトを選定する。二次探索実行部70は、選定したオブジェクトに対応する内容をオブジェクトデータ記録・比較部10から読み出し、別途示すリスト形式にまとめた上で検索結果として出力する。
図2は、類似検索装置100の動作を説明するフローチャートである。まず、クエリデータ記録・比較部30は、新規の内容のクエリデータ単語リスト{w_q}が入力されたか否かを判定する(S1)。クエリデータ単語リスト{w_q}は、式(1)で表される。なお、式(1)において、nは、クエリデータ単語リストに含まれる単語の数である。
Figure 0006555810
ステップS1において、新規のクエリデータ単語リストが入力されたと判定したときは(S1−Yes)、クエリデータ記録・比較部30は、そのクエリデータ単語リストを、単語ベクトル生成部40に入力する。単語ベクトル生成部40は、入力されたクエリデータ単語リスト{w_q}を受け取り、クエリデータ単語リスト{w_q}のそれぞれの単語のベクトル表現(意味空間における座標)を求め、求めたベクトル表現のリストを、クエリデータベクトルリスト{x_q}とする(S2)。クエリデータベクトルリスト{x_q}は、式(2)で表される。なお、式(2)においても、nは、クエリデータ単語リストに含まれる単語の数である。
Figure 0006555810
単語ベクトル生成部40による単語のベクトル表現の求め方は、任意の単語間の意味的な類似度を、cos角などのベクトル間の距離尺度として定量的に算出可能な形式で与える手法であれば何でもよい。言い換えると、単語のベクトル表現は、単語同士の意味が近いほど、単語同士の距離が近くなる空間における単語の座標である。この求め方として、たとえば、深層学習を用いた単語の分散表現(Tomas Mikolov, Ilya Sutskever, Kai Chen, Greg Corrado, and Jeffrey Dean, “Distributed Representations of Words and Phrases and their Compositionality,” In Proceedings of the 27th Annual Conference on Neural Information Processing Systems (NIPS2013), 2013年)による方法を用いることができる。この深層学習を用いた単語の分散表現による方法は、word2vecとも呼ばれ、別途与える大量の学習データを用いて各単語間の意味的な類似関係(類似度)を推定し、推定した当該単語間類似度と矛盾しないかたちであらかじめ定めた次元数のベクトル空間に各単語を配置することで、ベクトル表現を求める方法である。
次に、確率分布推定部50が、単語ベクトル生成部40が求めたクエリデータベクトルリスト{x_q}の個々のベクトルの同ベクトル空間上での出現確率に関する確率分布P(x)を推定することで、確率分布パラメータリストを算出する(S3)。なお、確率分布P(x)は、クエリに含まれる複数の単語の分布密度が高い位置ほど、高い確率となる分布であるとも言える。クエリデータ記録・比較部30は、ステップS3で確率分布推定部50が算出した確率分布パラメータリストを記録し(S4)、ステップS6に処理を進める。
ステップS3において、確率分布P(x)を推定する際に、どのような分布のモデルを用いても良いが、複数の分布を混合した分布をモデルとして用いた方が望ましい。本実施形態では、混合正規分布をモデルとして用いる。このため、この推定によって得られた確率分布(第1の混合正規分布)は、式(3)で定義される確率分布Pmix(x)で表現される。なお、式(3)において、N(μ,Σ)は、平均ベクトルμ、分散・共分散行列Σの多次元正規分布である。πは、k番目のコンポーネントである正規分布の混合比である。
Figure 0006555810
クエリデータベクトルリストに記された個々のベクトルは、確率分布P(x)から抽出されたサンプルであると仮定する。また、式(3)に示した混合正規分布Pmix(x)は、当該サンプル集合(すなわちクエリデータベクトルリストに記載された個々のベクトル)の分布の様子を最もよく説明する多次元正規分布の形式で定式化したものである。以降の手順では、当該サンプル集合(クエリデータベクトルリスト)をもとに推定した混合正規分布Pmix(x)を、当該サンプル集合を生成した確率分布P(x)と同一とみなす。
なお、サンプル集合、すなわちクエリデータベクトルリスト{x_q(i)}から混合正規分布Pmix(x)の各パラメータ{(π,μ,Σ),(π,μ,Σ),…,(π,μ,Σ)}、すなわち確率分布パラメータリストを推定する手法には、例えば、Trevor Hastieほか 著、杉山 将ほか訳、共立出版、2014年発刊の「統計的学習の基礎−データマイニング・推論・予測−」の第8.5節 EMアルゴリズム(pp.312−318)に記載されている最尤法に基づいて確率モデルのパラメータを推定する手法を用いることができるが、その他の手法であってもよい。
一方、ステップS1において、新規のクエリデータ単語リストは入力されていないと判定したときは(S1−No)、クエリデータ記録・比較部30は、あらかじめ記録していた確率分布パラメータリストを取り出し(S5)、ステップS6に処理を進める。なお、クエリデータ記録・比較部30が取り出す、あらかじめ記録していた確率分布パラメータリストは、直近で入力されたクエリデータ単語リストに対応する確率分布パラメータリストである。
ステップS6では、オブジェクトデータ記録・比較部10が、新規の内容のオブジェクトデータが入力されたか否かを判定する。ステップS6において、新規のオブジェクトデータが入力されたと判定したときは(S6−Yes)、オブジェクトデータ記録・比較部10は、オブジェクトデータ解析部20に、そのオブジェクトデータを入力する。オブジェクトデータ解析部20は、入力されたオブジェクトデータに記された個々のオブジェクトの内容についての文字列を解析し、名詞などのキーワードを抽出し、オブジェクトデータ単語リスト{y_o(j)}、{w_o(i)}とする。ここで、{y_o(j)}、{w_o(i)}は、式(4)、式(5)のように表される。
Figure 0006555810
ここで、jは、個々のオブジェクトを示すインデックスであり、Jは、オブジェクトの個数である。iは抽出した単語(キーワード)を示すインデックスであり、mは抽出されたキーワードの異なり総数である。例えば、{y_o(1)}は、1番目のオブジェクトから抽出されたキーワードのベクトル表現の集合である。キーワードA、B、Cを示すベクトル表現がそれぞれベクトルa、b、cであり、1番目のオブジェクトから抽出されたキーワードが、キーワードAが2つ、キーワードBが0、キーワードCが1つのとき、{y_o(1)}={a,a,c}である。
次に、単語ベクトル生成部40は、オブジェクトデータ解析部20が生成したオブジェクトデータ単語リストの個々の単語のベクトル表現を求めることで、オブジェクトデータベクトルリストOr{z_o(j)}、{x_o(i)}を算出する(S7)。なお、オブジェクトデータ単語リストの個々の単語のベクトル表現の求め方は、クエリデータ単語リスト{w_q}のそれぞれの単語のベクトル表現の求め方と同様である。ここで、{z_o(j)},{x_o(i)}は、式(6)、式(7)のように表される。
Figure 0006555810
次に、オブジェクトデータ記録・比較部10は、ステップS7で算出したオブジェクトデータベクトルリストOrと、オブジェクトデータとを記録し(S8)、ステップS10に処理を進める。
一方、ステップS6において、新規の内容のオブジェクトデータが入力されていないと判定したときは(S6−No)、オブジェクトデータ記録・比較部10は、あらかじめ記録していたオブジェクトデータベクトルリストOrを取り出し(S9)、ステップS10に処理を進める。なお、オブジェクトデータ記録・比較部10が取り出す、あらかじめ記録していたオブジェクトデータベクトルリストOrは、直近で入力されたオブジェクトデータに対応するオブジェクトデータベクトルリストOrである。
ステップS10では、一次探索実行部60が、オブジェクトデータベクトルリストOrと確率分布パラメータリストの一部で定義される混合正規分布(近似確率分布、第2の混合正規分布)とを用いて計算した累積類似度(近似値)が閾値以上のオブジェクトに対応するベクトルを、オブジェクトデータベクトルリストOrから抽出し、オブジェクトデータベクトルリストCuとする。このときの一次探索実行部60による累積類似度(近似値)の算出方法を説明する。
まず、一次探索実行部60は、確率分布パラメータリストに記載された各コンポーネント(正規分布)の混合比πに従って、L個(L<K)のインデックス{k(l)}を抽出する。Lは、例えば、あらかじめ設定された値であってもよいし、混合比πの合計が所定の値以上となる値であってもよい。インデックス{k(l)}は、式(8)で表される。
Figure 0006555810
なお、インデックス{k(l)}を抽出するための具体的なアルゴリズムは何でも良いが、例えば、プログラミング言語Python用の数値演算ライブラリnumpyに実装されている抽出関数random.choice()を用いてもよい。ここで、インデックス{k(l)}を抽出する際に、混合比πが大きいほどkが含まれる確率が高くなるようにしているが、これに限らず、混合比πの上位L個を抽出して、インデックス{k(l)}としてもよい。
次に、一次探索実行部60は、抽出したインデックス{k(l)}が示すL個のコンポーネントのみを用いて構成される近似確率分布P mix(x)を用いて、オブジェクトデータベクトルリストOrに記載された各オブジェクトjの累積類似度(近似値)s(j)を、式(9)を用いて算出する。なお、近似確率分布P mix(x)は、式(10)で表される。なお、Ω(j)は、オブジェクトデータ単語リストに含まれるオブジェクトjに対応するキーワードのインデックスである。式(9)に示すように、オブジェクトjの累積類似度(近似値)は、オブジェクトjに含まれるキーワードが、クエリに出現する確率を累積した値であり、クエリに出現する確率を算出する際に、近似確率分布P mix(x)を用いたものである。
Figure 0006555810
Figure 0006555810
次に、一次探索実行部60は、算出した累積類似度(近似値)s(j)が、所定の閾値θ以上のオブジェクトについてのデータのみを、オブジェクトデータベクトルリストOrから抽出し、オブジェクトデータベクトルリストCu{z_o(j)}、{x_o(i)}とする。ここで、{z_o(j)},{x_o(i)}は、式(6)、式(7)のように表される。
Figure 0006555810
図2の説明に戻って、ステップS11では、二次探索実行部70は、オブジェクトデータベクトルリストCuと確率分布パラメータリストで定義される混合正規分布を用いて計算した累積類似度(真値)の上位k個のオブジェクトを検索結果とする。二次探索実行部70による検索結果の求め方を説明する。二次探索実行部70による累積類似度(真値)の算出方法は、算出対象が、オブジェクトデータベクトルリストCuに対応するオブジェクトに限定されていることと、確率分布パラメータリストで定義される混合正規分布をそのまま用いることが、一次探索実行部60による累積類似度(近似値)の算出方法と異なる。
まず、二次探索実行部70は、式(13)に示すように、確率分布パラメータリストが示す混合正規分布を用いて、オブジェクトデータベクトルリストCuに記載された各々のオブジェクトについての累積類似度(真値)s(j)を算出する。式(13)に示すように、オブジェクトjの累積類似度(真値)は、オブジェクトjに含まれるキーワードが、クエリに出現する確率を累積した値であり、クエリに出現する確率を算出する際に、確率分布Pmix(x)を用いたものである。
Figure 0006555810
次に、二次探索実行部70は、算出した累積類似度(真値)のリスト{s(j)}を降順に並べ替える。オブジェクトの並べ替えの具体的なアルゴリズムは何でも良いが、たとえば、プログラム言語Pythonのリストオブジェクトlistについて定義された組み込み関数list.sorted()が利用可能である。
次に、二次探索実行部70は、並べ替えた累積類似度(真値)のリスト{s(j)}の上位k個に対応するオブジェクトを検索結果とする。すなわち、二次探索実行部70は、累積類似度(真値)が大きい方からk個に対応するオブジェクトを検索結果とする。二次探索実行部70は、オブジェクトデータ記録・比較部10が記録しているオブジェクトデータのうち、検索結果のオブジェクトに対応する部分を抽出して、検索結果として出力する。
図3は、クエリデータ単語リストの一例を示す図である。図3に、アジア、アフリカ、インド、・・・と示しているように、クエリデータ単語リストは、クエリに含まれる単語のリストである。
図4は、クエリデータベクトルリストの一例を示す図である。図4に、アジア:0.650,0.387,・・・,0.049、アフリカ:0.921,0.461,・・・,0.866・・・と示しているように、クエリデータベクトルリストは、クエリデータ単語リスト中の単語各々のベクトル表現のリストである。
図5は、確率分布パラメータリストの一例を示す図である。図5に、pi=0.547,mu=[0.883,・・・,0.482],sigma=[[0.546,・・・,0.679],・・・,[0.126,・・・,0.314]]・・・と示しているように、確率分布パラメータリストは、混合正規分布を表すパラメータである。なお、図5中のpiは、πであり、muは、μであり、sigmaは、Σであり、図5は、6つの正規分布からなる混合正規分布を表すパラメータのリストである。
図6は、確率分布推定部50が推定した混合正規分布の一例の模式図である。図6において、四角は、図4に例示したクエリデータベクトルリストの各々のベクトル表現が示す座標に対応する。また、実線は、混合正規分布が示す確率の等高線であり、混合正規分布のコンポーネントである6つの正規分布それぞれによる山が現れている。
図7は、オブジェクトデータの一例を示す図である。図7に示す例は、Obj.A、Obj.B、Obj.C、Obj.Dの4つのオブジェクトを含む。各オブジェクトは、番組ガイド用の番組の概要であり、番組の放送時間、タイトル、紹介文からなる。
図8は、オブジェクトデータ単語リストの一例を示す図である。図8に、#Obj.A:アフリカ,ハシビロコウ,台湾,ハチクマ、#Obj.B:韓国ドラマ,通販,手袋,天使・・・と示しているように、オブジェクトデータ単語リストは、オブジェクトデータから抽出されたキーワードのリストである。
図9は、オブジェクトデータベクトルリストOrの一例を示す図である。図9に示す例は、図8に例示したオブジェクトデータに対応するオブジェクトデータベクトルリストOrの例である。図9に、Obj.A、Obj.B、Obj.C、Obj.Dの4つのオブジェクトに含まれるキーワードである「きのこ」、「アフリカ」、・・・それぞれのベクトル表現「0.435,0.043,・・・,0.318」、「0.062,0.258,・・・0.805」・・・と示しているように、オブジェクトデータベクトルリストOrは、オブジェクトデータから抽出されたキーワードのベクトル表現のリストである。
図10は、オブジェクトデータベクトルリストOrの一例の模式図である。図10は、図9に例示したオブジェクトデータベクトルリストOrに対応する模式図である。図10において、四角は、図4に例示したクエリデータベクトルリストの各々のベクトル表現が示す座標に対応する。また、三角は、オブジェクトデータベクトルリストOrの各々のベクトル表現が示す座標に対応する。
図11は、一次探索実行部60による処理を説明する模式図である。図11は、確率分布パラメータリストの一部で定義される混合正規分布(近似確率分布)として、確率分布パラメータリストが示す混合正規分布のうち、実線の等高線で示したk=4,5,6のコンポーネントからなる混合正規分布を用いる場合の例である。破線の等高線で示したk=1,2,3のコンポーネントは用いられない。一次探索実行部60は、オブジェクトデータベクトルリストOrに含まれるオブジェクトであるObj.A、Obj.B、Obj.C、Obj.Dのそれぞれについて累積類似度(近似値)を算出する。
図12は、累積類似度(近似値)の一例を示す図である。図12に示す例は、図10に例示したオブジェクトデータベクトルリストOrに対応する累積類似度(近似値)の例であり、Obj.A、Obj.B、Obj.C、Obj.Dの4つのオブジェクトそれぞれの累積類似度(近似値)である。例えば、一行目の#Obj.A:score*=0.607は、Obj.Aの累積類似度(近似値)である。
図13は、オブジェクトデータベクトルリストCuの一例を示す図である。図13に示す例は、図10に例示したオブジェクトデータベクトルリストOrおよび図12に例示した累積類似度(近似値)に対応するオブジェクトデータベクトルリストCuの例である。図13のオブジェクトデータベクトルリストCuは、Obj.A、Obj.B、Obj.C、Obj.Dの4つのオブジェクトのうち、累積類似度(近似値)の上位3個であるObj.A、Obj.C、Obj.Dが、一次探索実行部60により抽出された場合の例である。したがって、オブジェクトデータベクトルリストCuには、Obj.Bにのみ含まれていたキーワードである韓国ドラマ、通販、手袋、天使のベクトル表現は含まれていない。
図14は、二次探索実行部70による処理を説明する模式図である。図14では、オブジェクトデータベクトルリストCuとして、Obj.A、Obj.C、Obj.Dから抽出されたキーワードのベクトル表現と、確率分布パラメータリストが示す混合正規分布とを、二次探索実行部70が用いて、累積類似度(真値)を算出している。破線で示したObj.Bに関しては、累積類似度(真値)が算出されないことを示している。
図15は、累積類似度(真値)の一例を示す図である。図15に示す例は、図13に例示したオブジェクトデータベクトルリストCuに対応する累積類似度(真値)の例であり、Obj.A、Obj.C、Obj.Dの3つのオブジェクトそれぞれの累積類似度(真値)である。例えば、一行目の#Obj.A:score=0.607は、Obj.Aの累積類似度(真値)である。二行目の#Obj.B:score=N/Aは、オブジェクトデータベクトルリストCuに、Obj.Bが含まれていないことを示す。
なお、本実施形態では、クエリについて、確率分布を求めて、クエリとオブジェクトとの類似度を算出しているが、クエリではなく、各オブジェクトについて、確率分布を求めて、クエリとオブジェクトとの類似度を算出してもよい。なお、単語リストに含まれる単語の数が多いほど、確率分の推定精度が高くなるので、単語リストに含まれる単語の数が多い方について、確率分布を求めて類似度を算出した方が望ましい。また、別の観点からは、確率分布の推定には多くの演算量を必要とするので、変更される頻度の低い方について、確率分布を求めて類似度を算出した方が望ましい。
このように、2つのオブジェクト(クエリと、検索対象のオブジェクト)のうち、一方のオブジェクトを確率分布で表すことにより、検索対象のオブジェクト全体の事前情報を利用することなく、類似度を算出することができる。したがって、オブジェクトデータの一部もしくは全体が頻繁に変更されるような場合でも、類似検索全体の演算量が増加するのを抑えることができる。
また、確率分布を推定する際に、複数の分布を混合した分布をモデルとして用いている。このため、複数の分布のうちの一部の分布を混合した分布を用いた累積類似度(近似値)を算出することができる。そして、この累積類似度(近似値)を用いて、オブジェクトデータの枝刈り処理を行うことで、類似検索の全体の演算量を抑えることができる。
また、図1における類似検索装置100を構成する各部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、類似検索装置100を実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
また、上述した図1における類似検索装置100の各機能ブロックは個別にチップ化してもよいし、一部、または全部を集積してチップ化してもよい。また、集積回路化の手法はLSIに限らず、専用回路、または汎用プロセッサで実現しても良い。ハイブリッド、モノリシックのいずれでも良い。一部は、ハードウェアにより、一部はソフトウェアにより機能を実現させても良い。
また、半導体技術の進歩により、LSIに代替する集積回路化等の技術が出現した場合、当該技術による集積回路を用いることも可能である。
以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。
10…オブジェクトデータ記録・比較部、20…オブジェクトデータ解析部、30…クエリデータ記録・比較部、単語ベクトル生成部、50…確率分布推定部、60…一次探索実行部、70…二次探索実行部、80…探索実行部

Claims (5)

  1. 第1のオブジェクトに含まれる複数の単語の意味空間における分布から、前記意味空間における確率分布であって、前記第1のオブジェクトを表す確率分布を推定する確率分布推定部と、
    第2のオブジェクトに含まれる複数の単語各々の前記意味空間における座標各々での、前記確率分布の値を用いて、前記第1のオブジェクトと前記第2のオブジェクトとの類似度を算出する類似度算出部と
    を備える類似度算出装置。
  2. クエリに含まれる複数の単語の意味空間における分布から、前記意味空間における確率分布であって、前記クエリを表す確率分布を推定する確率分布推定部と、
    検索対象のオブジェクトに含まれる複数のオブジェクトについて、当該オブジェクトに含まれる複数の単語各々の前記意味空間における座標各々での、前記確率分布の値を用いて、前記クエリと前記当該オブジェクトとの類似度を算出し、算出した前記類似度に基づき、前記検索対象のオブジェクトの中から、前記クエリに類似するオブジェクトを探索する探索実行部と
    を備える類似検索装置。
  3. 前記意味空間は、単語同士の意味が近いほど、前記単語同士の距離が近くなる空間であり、
    前記クエリを表す確率分布は、前記クエリに含まれる複数の単語の分布密度が高い位置ほど、高い確率となる分布である、
    請求項2に記載の類似検索装置。
  4. 前記確率分布は、複数の正規分布からなる第1の混合正規分布であり、
    前記探索実行部は、前記検索対象のオブジェクトに含まれる全てのオブジェクトについて、当該オブジェクトに含まれる複数の単語各々の前記意味空間における座標各々での、前記複数の正規分布のうちの一部の正規分布からなる第2の混合正規分布の値を用いて、前記クエリと前記当該オブジェクトとの類似度を算出し、算出した前記類似度に基づき、前記複数のオブジェクトを決定する
    請求項2または請求項3に記載の類似検索装置。
  5. コンピュータを、
    第1のオブジェクトに含まれる複数の単語の意味空間における分布から、前記意味空間における確率分布であって、前記第1のオブジェクトを表す確率分布を推定する確率分布推定部、
    第2のオブジェクトに含まれる複数の単語各々の前記意味空間における座標各々での、前記確率分布の値を用いて、前記第1のオブジェクトと前記第2のオブジェクトとの類似度を算出する類似度算出部
    として機能させるための類似度算出プログラム。
JP2015141580A 2015-07-15 2015-07-15 類似度算出装置、類似検索装置、および類似度算出プログラム Expired - Fee Related JP6555810B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015141580A JP6555810B2 (ja) 2015-07-15 2015-07-15 類似度算出装置、類似検索装置、および類似度算出プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015141580A JP6555810B2 (ja) 2015-07-15 2015-07-15 類似度算出装置、類似検索装置、および類似度算出プログラム

Publications (2)

Publication Number Publication Date
JP2017027106A JP2017027106A (ja) 2017-02-02
JP6555810B2 true JP6555810B2 (ja) 2019-08-07

Family

ID=57949949

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015141580A Expired - Fee Related JP6555810B2 (ja) 2015-07-15 2015-07-15 類似度算出装置、類似検索装置、および類似度算出プログラム

Country Status (1)

Country Link
JP (1) JP6555810B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6224856B1 (ja) * 2017-02-21 2017-11-01 ヤフー株式会社 提供装置、提供方法および提供プログラム
CN108170684B (zh) * 2018-01-22 2020-06-05 京东方科技集团股份有限公司 文本相似度计算方法及系统、数据查询系统和计算机产品
CN113094550B (zh) * 2020-01-08 2023-10-24 百度在线网络技术(北京)有限公司 视频检索方法、装置、设备和介质

Also Published As

Publication number Publication date
JP2017027106A (ja) 2017-02-02

Similar Documents

Publication Publication Date Title
KR102431549B1 (ko) 인과 관계 인식 장치 및 그것을 위한 컴퓨터 프로그램
JP4233836B2 (ja) 文書自動分類システム、不要語判定方法、文書自動分類方法、およびプログラム
CN108228541B (zh) 生成文档摘要的方法和装置
CN110349568A (zh) 语音检索方法、装置、计算机设备及存储介质
US9805120B2 (en) Query selection and results merging
JP5216063B2 (ja) 未登録語のカテゴリを決定する方法と装置
CN112905768B (zh) 一种数据交互方法、装置及存储介质
CN112000783B (zh) 基于文本相似性分析的专利推荐方法、装置、设备及存储介质
CN109241243B (zh) 候选文档排序方法及装置
JP5846959B2 (ja) 基本語彙抽出装置、及びプログラム
JP6678834B2 (ja) 単語意味関係推定装置および単語意味関係推定方法
JP6555810B2 (ja) 類似度算出装置、類似検索装置、および類似度算出プログラム
CN114880447A (zh) 信息检索方法、装置、设备及存储介质
JP7389330B2 (ja) 情報処理プログラム、情報処理方法および情報処理装置
JP4979637B2 (ja) 複合語の区切り位置を推定する複合語区切り推定装置、方法、およびプログラム
JP6867963B2 (ja) 要約評価装置、方法、プログラム、及び記憶媒体
Kannadasan et al. Personalized query auto-completion through a lightweight representation of the user context
CN112988971A (zh) 基于词向量的搜索方法、终端、服务器及存储介质
CN115357720B (zh) 基于bert的多任务新闻分类方法及装置
JP4479745B2 (ja) 文書の類似度補正方法、プログラムおよびコンピュータ
US20110106849A1 (en) New case generation device, new case generation method, and new case generation program
JP5145288B2 (ja) 類義語辞書構築装置及び方法、コンピュータプログラム
KR100751295B1 (ko) 질의 기반의 문서요약 장치 및 그 방법
JP5184195B2 (ja) 言語処理装置およびプログラム
CN111199148B (zh) 文本相似度确定方法、装置、存储介质和电子设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180528

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20181026

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190528

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190611

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190708

R150 Certificate of patent or registration of utility model

Ref document number: 6555810

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees