説明

情報推薦装置、情報推薦方法およびプログラム

【課題】入力情報に対して意外性を有し、且つ、入力情報から見て妥当性のある情報を推薦し得る、情報推薦装置、情報推薦方法、およびプログラムを提供する。
【解決部】情報推薦装置10は、言語表現と、それが示す性質又は機能を表す特徴表現とを対応付けて格納するデータ集合から、入力言語表現に対応する特徴表現を取得し、この特徴表現と入力言語表現との第1の連想度合を求める特徴連想部13と、取得された特徴表現の中から、第1の連想度合に基づいて、設定条件を満たす特徴表現を選出する特徴選出部13と、データ集合から、選出された特徴表現に対応する言語表現を推薦候補として選出し、選出された特徴表現と対応する推薦候補との第2の連想度合を求める候補連想部14と、推薦候補の中から、推薦候補と入力言語表現との類似度と第2の連想度合とに基づいて、推薦対象を絞り込む候補絞込部15とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報推薦装置および情報推薦方法、特には、意外な情報をユーザに推薦する情報推薦装置および情報推薦方法に関し、更には、これらを実現するためのプログラムに関する。
【背景技術】
【0002】
近年、情報検索技術の普及により、大量の文書集合から、ユーザが探したい情報のキーワードを含む文書を検索することが、盛んに行われるようになっている。このような検索では、ユーザは、自己が探したい情報を確実に見つけることを要求するが、一方で、探したい情報が明確でない場合がある。また、ユーザは、想定し得ない良い情報に出会いたいという要求を持っている場合もある。更に、ユーザは、何らかの情報を探している時に、探している情報とは別の価値ある情報を見つけたいという要求を持っている場合もある。
【0003】
但し、従来からの検索システムは、例えば、単に入力されたキーワードを含む文書を見つけ、それを示すだけである。従って、従来からの検索システムでは、上述したような意外性のある情報を発見したいというユーザの要求に応えることは困難であり、ユーザが十分な満足を得ることができない結果になる。例えば、検索システムに、「エアコン」、又は「エアー、コンディショナー」というキーワードが入力された場合、検索システムは、これらのキーワードを含む文書を単に検索するに過ぎず、結果、検索結果は、「エアコン」の製品情報、「エアコン」についての説明文書等、想定しうる情報が大半となる。
【0004】
また、従来からの検索システムは、入力されたキーワード(以下「入力キーワード」とする。)を多く含むといった、入力キーワードとの関連の強い内容の文書を、検索結果の上位として提示する傾向にある。そして、こうした検索結果は、入力キーワードとの関連が強いが故に、想定し得る類の情報であることが多く、結果、このことからも、従来の検索システムでは、意外性のある情報を発見したいというユーザの要求を満たすことは困難である。
【0005】
一方、検索システムに、検索結果の下位から提示させて、検索結果の下位の文書により意外な情報を得ようとすることが考えられる。しかし、検索結果の下位の文書は、入力キーワードとの関連が非常に弱いか、全く関係がない文書であることが多いため、この場合も、意外性のある情報を発見したいというユーザの要求を満たすことは困難である。
【0006】
また、従来からの検索システムを利用して検索を行う場合であっても、検索者によっては、意外性のある情報を発見することが可能となる。このような意外性のある情報を発見する能力は「セレンディピティ」とも称されるが、難度の高い能力であり万人が有しているわけではない。従って、ユーザが検索によって意外性のある情報を発見できるようにするため、情報推薦を行う支援技術が求められている。
【0007】
このような背景のもと、特許文献1は、検索要求に対して関連はあるが意外な検索結果を得ることができる情報検索装置を開示している。特許文献1に開示された情報検索装置は、キーワードベクトルの形式で表現された各文書を格納したデータベースから、入力文書のキーワードベクトルと類似のキーワードベクトルを特定し、これを有する文書を推薦する。
【0008】
具体的には、特許文献1に開示された情報検索装置は、先ず、データベースに格納されている複数の文書と、入力文書とを用いて、連想記憶行列(自己相関行列)を作成する。次に、特許文献1に開示された情報検索装置は、作成した連想記憶行例の中で所定の連想度合よりも大きい値を持つベクトルの要素をリセットすることによって、強い連想度合を弱めた連想記憶行列を作る。次に、特許文献1に開示された情報検索装置は、この連想記憶行列を類似のキーワードベクトルを求める際に使用することで、類似性の高いキーワードを有する文書の代わりに、入力キーワードに対して弱い関連性を有するキーワードを特定する。そして、特許文献1に開示された情報検索装置は、このキーワードを有する文書をユーザに推薦する。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特許第2832678号明細書
【発明の概要】
【発明が解決しようとする課題】
【0010】
上述した特許文献1に開示された情報検索装置によれば、入力文書との関連性が強くない文書が推薦されるため、意外性のある情報が提示される可能性がある。しかしながら、特許文献1に開示された情報検索装置においては、結果を受け取ったユーザが、なぜそのような文書が推薦されたのかという理由を理解し難く、推薦された文書が妥当かどうかを判断できないという問題がある。
【0011】
これは、推薦された文書が、入力文書と弱い関連性を有するキーワードに基づいて特定されており、ユーザが、推薦された文書と入力文書との間にどのような関連があるのかを見いだそうとしても、そもそも両者の関連が弱く、関連を見いだせないからである。また、特許文献1に開示された情報検索装置が、入力文書と弱い関連性を有する文書を推薦する際に、これと一緒に、どのような関連があるかについての情報を提示することはない。
【0012】
本発明の目的は、上記問題を解消し、入力情報に対して意外性を有し、且つ、入力情報から見て妥当性のある情報を推薦し得る、情報推薦装置、情報推薦方法、およびプログラムを提供することにある。
【課題を解決するための手段】
【0013】
上記目的を達成するため、本発明における情報推薦装置は、言語表現と、前記言語表現が示す対象の性質又は機能を表す特徴表現と、を対応付けて格納しているデータ集合から、入力された言語表現に対応する前記特徴表現を取得し、更に、取得した前記特徴表現と前記入力された言語表現との間における一方から他方が連想される度合を示す、第1の連想度合を求める、特徴連想部と、
前記特徴連想部により取得された前記特徴表現のなかから、前記第1の連想度合に基づいて、設定条件を満たす前記特徴表現を選出する、特徴選出部と、
前記データ集合から、前記特徴選出部により選出された前記特徴表現に対応する前記言語表現を推薦候補として選出し、そして、選出された前記特徴表現とそれに対応する前記推薦候補との間における一方から他方が連想される度合を示す、第2の連想度合を求める、候補連想部と、
前記候補連想部により選出された前記推薦候補と前記入力された言語表現との類似度を求め、前記推薦候補のなかから、前記第2の連想度合と前記類似度とに基づいて、推薦対象となる前記言語表現を特定する、候補絞込部と、
を備えることを特徴とする。
【発明の効果】
【0014】
以上のように、本発明における、情報推薦装置、情報推薦方法、およびプログラムによれば、入力情報に対して意外性を有し、且つ、入力情報から見て妥当性のある情報を推薦することができる。
【図面の簡単な説明】
【0015】
【図1】図1は、本発明の実施の形態1における情報推薦装置の構成を示すブロック図である。
【図2】図2は、本発明の実施の形態1における情報推薦装置の動作を示す流れ図である。
【図3】図3は、本発明の実施の形態2における情報推薦装置の構成を示すブロック図である。
【図4】図4は、本発明の実施の形態2における情報推薦装置の動作を示す流れ図である。
【図5】図5は、本発明の実施の形態1及び2における情報推薦装置を実現するコンピュータの一例を示すブロック図である。
【図6】図6は、本発明の実施例で用いられるデータ集合の第1の例を示す図である。
【図7】図7は、本発明の実施例で用いられるデータ集合の第2の例を示す図である。
【図8】図8は、本発明の実施例で用いられるデータ集合の第3の例を示す図である。
【発明を実施するための形態】
【0016】
(実施の形態1)
以下、本発明の実施の形態1における、情報推薦装置、情報推薦方法、およびプログラムについて、図1及び図2を参照しながら説明する。最初に、本実施の形態1における情報推薦装置10の構成について図1を用いて説明する。図1は、本発明の実施の形態1における情報推薦装置の構成を示すブロック図である。
【0017】
図1に示す情報推薦装置10は、ユーザが言語表現を入力すると、入力された言語表現に応じて、ユーザから見て意外性のある情報を推薦する装置である。図1に示すように、情報推薦装置10は、特徴連想部12と、特徴選出部13と、候補連想部14と、候補絞込部15とを備えている。
【0018】
特徴連想部12は、先ず、言語表現と、言語表現が示す対象の性質又は機能を表す特徴表現と、を対応付けて格納しているデータ集合にアクセスする。そして、特徴連想部12は、データ集合から、入力された言語表現(以下「入力言語表現」とする。)に対応する特徴表現を取得し、取得した特徴表現と入力言語表現との間の連想度合(以下「第1連想度合」とする。)を求める。第1連想度合は、取得された特徴表現と入力言語表現との間における、一方から他方が連想される度合(強さ)を示している。
【0019】
なお、特徴表現も言語表現の一種であるが、本明細書では、対象を示す言語表現を「言語表現」とし、対象の性質又は機能を表す言語表現を「特徴表現とする」。
【0020】
また、特徴選出部13は、特徴連想部12により取得された特徴表現の中から、第1連想度合に基づいて、設定条件を満たす特徴表現を選出する。設定条件としては、第1連想度合が閾値以上であること等が挙げられる。具体例については更に後述する。
【0021】
候補連想部14は、データ集合から、特徴選出部13により選出された特徴表現に対応する言語表現、例えば、対応する全ての言語表現を、選出された特徴表現に対応する推薦候補として選出する。そして、候補連想部14は、選出された特徴表現とそれに対応する推薦候補との間の連想度合(以下「第2連想度合」とする。)を求める。第2連想度合は、選出された特徴表現とそれに対応する推薦候補との間における、一方から他方が連想される度合(強さ)を示している。
【0022】
候補絞込部15は、候補連想部14により選出された推薦候補と、入力言語表現との類似度を求め、推薦候補の中から、第2連想度合と類似度とに基づいて、推薦対象となる言語表現を特定する。
【0023】
以上のように、情報推薦装置10は、先ず、特徴連想部12と特徴選出部13とにより、入力言語表現に対して主要な特徴表現を選出し、次に、選出された特徴表現に対して、逆に、主要な言語表現を選出する。そして、情報推薦装置10は、選出された言語表現と入力言語表現との類似度を求め、例えば、入力言語表現との類似度が高くない言語表現を特定する。このようにして特定された言語表現は、入力言語表現との間である程度の連想性があるため、ユーザは関連性を見いだすことができ、入力言語表現から見て妥当性のある情報である。また、特定された言語表現は、入力言語表現と類似していないから、ユーザにおいて意外性がある。
【0024】
ここで、本実施の形態1における情報推薦装置10の構成について更に具体的に説明する。本実施の形態1においては、情報推薦装置10は、プログラム制御により動作するコンピュータ上でプログラムを実行することによって構築されている。なお、コンピュータ及びプログラムについては、後述する。また、情報推薦装置10には、入力装置11と、出力装置16と、記憶装置20とが接続されている。
【0025】
記憶装置20は、データ記憶部21を備えている。具体的には、データ記憶部21は、記憶装置20の記憶領域上に構築されている。また、記憶装置20は、情報推薦装置10を構築しているコンピュータに備えられた、HDD(Hard Disc Drive)、SSD(Solid State Drive)又フラッシュメモリ等の記憶装置であっても良いし、このコンピュータとは別のコンピュータに備えられた記憶装置であっても良い。
【0026】
データ記憶部21は、特徴連想部12において利用されるデータ集合を格納している。本実施の形態1では、データ集合には、事前に既定された言語表現の集合と、特徴表現の集合とが格納されている。また、データ集合において、各言語表現と、当該言語表現が示す対象の性質又は機能を表す特徴表現とは対応付けられている。また、データ記憶部21では、各言語表現と、それに対応する特徴表現とは、組データとして格納されている。言語表現の例としては、例えば、体言が挙げられる。また、特徴表現の例としては、体言と係り受け関係にある用言が挙げられる。なお、言語表現及び特徴表現の具体例については、後述する実施例において説明する。
【0027】
入力装置11は、ユーザが選んだ言語表現を、情報推薦装置10の特徴連想部12に入力する装置である。入力装置11の具体例としては、キーボード及びマウスといった入力機器、情報推薦装置10にネットワーク等を介して接続された他の機器(コンピュータ)等が挙げられる。なお、図示されていないが、入力装置11が、ネットワーク等を介して接続された他の機器である場合は、情報推薦装置10は、他の機器と通信するためのネットワークインターフェースを備えている。
【0028】
出力装置16は、情報推薦装置10の候補絞込部15が特定した推薦対象を外部に出力するための装置である。出力装置16の具体例としては、ディスプレイ装置、プリンタ等が挙げられる。また、出力装置16の具体例としても、入力装置11と同様に、情報推薦装置10にネットワーク等を介して接続された他の機器(コンピュータ)が挙げられる。なお、この場合も、図示されていないが、情報推薦装置10は、他の機器と通信するためのネットワークインターフェースを備えている。
【0029】
また、入力装置11及び出力装置16は、ネットワーク等を介して情報推薦装置10に接続された同一の装置であっても良く、例えば、ウェブサーバ等の特定のサーバコンピュータによって構築されていても良い。このような態様が採用される場合は、図示されていないが、情報推薦装置10は、入力受付部と出力部とを備えているのが好ましい。入力受付部は、ネットワーク等を介して、サーバコンピュータからHTTP等の特定の通信プロトコルに則って送信されたデータの入力を受け付ける。また、出力部は、サーバコンピュータから入力されたデータに対して、出力結果を含むレスポンスを送信する。
【0030】
特徴連想部12は、本実施の形態1では、入力装置11から入力された言語表現(入力言語表現)を受け付け、データ記憶部21にアクセスし、データ記憶部21に格納されているデータ集合から、入力言語表現に対応する特徴表現を取得する。本実施の形態1において、入力言語表現は、1つの語で構成されていても良いし、複数キーワード又は文書の文字列のように複数の語で構成されていても良い。
【0031】
また、本実施の形態1では、特徴連想部12は、通常、複数個の特徴表現(以下「特徴表現集合」とする。)を取得する。特徴連想部12は、取得した特徴表現毎に第1連想度合を求め、各特徴表現とそれに対応する第1連想度合とを1つの組データにして、特徴選出部13に出力する。このとき出力される組データは、1つ以上であれば良い。
【0032】
また、本実施の形態1において、第1連想度合としては、例えば、ある文書集合において、入力言語表現に同一の言語表現と共に特徴表現が出現した頻度等が挙げられる。また、特徴連想部12は、以下のようにして、第1連想度合を算出することもできる。
【0033】
例えば、特徴連想部12は、データ集合から取得した特徴表現集合のそれぞれ毎に、当該特徴表現と入力言語表現との共起頻度が、特徴表現それぞれと入力言語表現との共起頻度の総和に占める割合を算出し、これを第1連想度合とすることができる。
【0034】
また、特徴連想部12は、データ集合から取得した特徴表現集合のそれぞれ毎に、当該特徴表現と入力言語表現との共起頻度が、当該特徴表現とそれによって対象の性質又は機能が表された全ての言語表現それぞれとの共起頻度の総和に占める割合を算出し、これを第1連想度合とすることもできる。
【0035】
更に、本実施の形態1においては、第1連想度合は、予め、上述したように算出され、データ集合の一部として、データ記憶部21に格納されていても良い。この場合は、特徴連想部12は、データ記憶部21にアクセスすることで、必要な第1連想度合を求めることができる。
【0036】
特徴選出部13は、本実施の形態1では、データ集合から特徴連想部12によって取得された特徴表現集合の中から、特徴表現毎に求められた第1連想度合に基づいて、1つ以上の特徴表現を選出する。具体的な選出の基準としては、第1連想度合が閾値以上であること、第1連想度合の値が上位から順に予め設定された順位内であること、等が挙げられる。また、第1連想度合として、複数種類の値が求められている場合は、特徴選出部13は、求められている複数種類の値を用いて、特徴表現の選出を行うこともできる。
【0037】
候補連想部14は、本実施の形態1では、データ記憶部21にアクセスし、特徴選出部13により選出された特徴表現(以下「選出特徴表現」)について、対応する言語表現全て(以下「言語表現集合」とする。)を取得し、取得した各言語表現を推薦候補とする。このとき、推薦候補の選出は、選出特徴表現の少なくとも一つについて行われていれば良い。候補連想部14は、選出特徴表現全部について推薦候補の選出を行っても良いし、そのうちの一部について推薦候補の選出を行っても良い。
【0038】
また、候補連想部14は、上述したように、選出特徴表現と、それに対応する推薦候補との間の連想度合(第2連想度合)を求める。本実施の形態1では、第2連想度合は、選出特徴表現毎に、当該選出特徴表現に対応する推薦候補それぞれについて求められる。候補連想部14は、各推薦候補と、それから求められた第2連想度合とを1つの組データにして、候補絞込部15に出力する。このとき、出力される組データは、少なくとも一つであれば良い。候補連想部14は、全ての組データを出力しても良いし、そのうちの一部の組データのみを出力しても良い。
【0039】
本実施の形態1において、第2連想度合としては、第1連想度合と同様に、例えば、ある文書集合において、推薦候補に同一の言語表現と共に選出特徴表現が出現した頻度等が挙げられる。また、候補連想部14は、以下のようにして、第2連想度合を算出することもできる。
【0040】
例えば、候補連想部14は、選出特徴表現毎に、当該選出特徴表現とそれに対応する推薦候補との共起頻度が、当該対応する推薦候補とそれが示す対象の性質又は機能を表す全ての選出特徴表現それぞれとの共起頻度に占める割合を算出し、これを第2連想度合とすることができる。
【0041】
また、候補連想部14は、選出特徴表現とそれに対応する1の推薦候補との共起頻度が、選出特徴表現とそれに対応する全ての推薦候補それぞれとの共起頻度の総和に占める割合を算出し、これを第2連想度合とすることもできる。
【0042】
更に、本実施の形態1においては、上述したように、第1連想度合が、予め、データ集合の一部として、データ記憶部21に格納されている場合であれば、候補連想部14は、データ記憶部21に格納されている第1連想度合を、第2連想度合としても求めることができる。
【0043】
候補絞込部15は、本実施の形態1では、先ず、候補連想部14が出力した各推薦候補と入力言語表現との類似度を算出する。具体的には、例えば、候補絞込部15は、先ず、入力言語表現に対応する特徴表現集合を要素とする特徴ベクトルと、算出対象となる推薦候補に対応する特徴表現集合を要素とする特徴ベクトルとを求める。そして、候補絞込部15は、両者の共通する要素(特徴表現)の数又は内積を算出し、これらを類似度として用いることができる。また、上記の共通する要素の数又は内積に重み付けを行った値を類似度として用いても良い。
【0044】
また、候補絞込部15は、上述したように、推薦候補の中から、第2連想度合と類似度とに基づいて、推薦対象となる言語表現を特定する。このとき、本実施の形態1では、候補絞込部15は、第2連想度合はある程度高いが、類似性が高くない、推薦候補を推薦対象として選択する。具体的には、候補絞込部15は、第2連想度合が、設定された下限値以上となり、類似度が、設定された上限値以下となる推薦候補を選択し、選択した推薦候補の言語表現を特定する情報を出力装置16に出力する。この結果、ユーザは、出力装置を介して、情報推薦装置10が推薦する情報を確認することができる。
【0045】
次に、本発明の実施の形態1における情報推薦装置10の動作について図2を用いて説明する。図2は、本発明の実施の形態1における情報推薦装置の動作を示す流れ図である。以下の説明においては、適宜図1を参酌する。また、本実施の形態1では、情報推薦装置10を動作させることによって、情報推薦方法が実施される。よって、本実施の形態1における情報推薦方法の説明は、以下の情報推薦装置10の動作説明に代える。
【0046】
図2に示すように、先ず、入力装置11から言語表現が入力されると、特徴連想後12は、入力言語表現を受け付ける(図2のステップA1)。入力言語表現は、上述したように、1つの語で構成されていても良いし、複数キーワード又は文書の文字列のように複数の語で構成されていても良い。
【0047】
次に、特徴連想部12は、入力言語表現の供給を受けると、データ記憶部21にアクセスして、入力言語表現に対応する特徴表現の集合を取得し、更に、入力言語表現と当該特徴表現との間の連想の強さを示す第1連想度合を求める(図2のステップA2)。そして、特徴連想部12は、特徴表現と連想度合との組データを特徴選出部13に出力する。
【0048】
次に、特徴選出部13は、特徴連想部12により求められた特徴表現と第1連想度合との組データを用い、第1連想度合の値に基づいて、入力言語表現に対する主要な特徴表現を少なくとも1つ以上選出し、候補連想部14に供給する(図2ステップA3)。
【0049】
次に、候補連想部14は、データ記憶部21にアクセスし、特徴選出部13により選出された特徴表現(選出特徴表現)に対応する言語表現全て(言語表現集合)を取得する(図2ステップA4)。ステップA4で取得された言語表現それぞれが、推薦候補となる。また、ステップA4では、候補連想部14は、選出特徴表現と、それに対応する推薦候補との間の第2連想度合を求める。そして、候補連想部14は、各推薦候補(言語表現)と、それから求められた第2連想度合とを1つの組データにして、候補絞込部15に出力する。
【0050】
次に、候補絞込部15は、候補連想部14により求められた推薦候補と入力言語表現との間の類似度を求め、類似度と第2連想度合とを用いて、推薦候補の中から、推薦対象となる推薦候補の絞込を行う(図2のステップA5)。具体的には、ステップA5では、候補絞込部15は、第2連想度合が下限より高い言語表現の中から、類似性の高い推薦候補を除外して推薦候補の絞り込みを実行する。
【0051】
そして、候補絞込部15は、この絞り込んだ推薦候補の集合を特定する情報を出力装置16に出力する(図2のステップA6)。ステップA6の実行により、出力装置16は、候補絞込部15により絞り込まれた推薦候補をユーザが確認できるように出力する。このとき、本実施の形態1では、絞り込まれた推薦候補のうちの全部が出力されても良いし、一部のみが出力されても良い。
【0052】
また、本実施の形態1において、候補絞込部15は、候補連想部14から、推薦候補と共に、それに対応する選出特徴表現も受け取り、絞り込んだ推薦候補とそれに対応する選出特徴表現とを出力装置16に出力することもできる。この場合、出力装置16は、絞り込まれた推薦候補と共に、それに対応する選出特徴表現を、ユーザに出力することができる。この結果、ユーザは、提示される推薦候補と、対応する特徴表現とを確認でき、入力言語表現と推薦候補との関連性を見いだしやすくなる。
【0053】
また、本実施の形態1におけるプログラムは、コンピュータに、図2に示すステップA1〜A6を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態1における情報推薦装置10と情報推薦方法とを実現することができる。この場合、コンピュータのCPU(Central Processing Unit)は、特徴連想部12、特徴選出部13、候補連想部14、及び候補絞込部15として機能し、処理を行なう。更に、この場合、データ記憶部21は、コンピュータに備えられた記憶装置、又は別のコンピュータに備えられた記憶装置に、データ集合を格納することによって実現できる。なお、コンピュータの具体的な構成については後述する。
【0054】
ここで、本実施の形態1における効果について説明する。本実施の形態1では、入力言語表現の性質又は機能を表す特徴表現の選出は、入力言語表現と特徴表現との間の連想度合(第1連想度合)に基づいて行われており、選出された特徴表現は、入力言語表現の主要な性質又は機能を表している。更に、本実施の形態1では、入力言語表現と性質又は機能に関して関係の妥当性がある特徴表現について、同様に関係の妥当性がある言語表現の集合が推薦候補の集合として新たに選出される。
【0055】
つまり、本実施の形態1では、言語表現と特徴表現とが関係付けられた情報から、入力言語表現に対応する特徴表現が選出され、選出された特徴表現を手がかりとして、推薦候補となる言語表現が選出される。入力言語表現から見た推薦候補は、入力言語表現から見て妥当であると考えられる。更に、本実施の形態1においては、推薦候補の集合から、入力言語表現に対して意味的な類似性が高くない言語表現が、推薦対象となる情報として抽出される。以上の結果、本実施の形態1によれば、入力言語表現(入力情報)に対して意外性を有し、且つ、入力言語表現からみて妥当性のある情報を推薦することが可能となる。
【0056】
(実施の形態2)
次に、本発明の実施の形態2における、情報推薦装置、情報推薦方法、及びプログラムについて、図3及び図4を参照しながら説明する。最初に、本実施の形態2における情報推薦装置30の構成について図1を用いて説明する。図3は、本発明の実施の形態2における情報推薦装置の構成を示すブロック図である。
【0057】
図3に示すように、本実施の形態2における情報推薦装置30は、特徴表現抽出部17を備えており、図1に示した実施の形態1における情報推薦装置10と異なっている。また、本実施の形態2では、実施の形態1と異なり、記憶装置20の記憶領域には、データ記憶部21に加えて、文書記憶部22も構築されている。なお、これらの点以外については、情報推薦装置30は、実施の形態1における情報推薦装置10と同様に構成されている。以下、実施の形態1との相違点を中心に説明する。
【0058】
本実施の形態2において、文書記憶部22は、複数の文書を格納している。ここで言う「文書」とは、機械(コンピュータ等)により可読できるデータを意味しており、機械で可読できる限り、データ構造等は特に限定されるものではない。具体的には、例えば、「文書」としては、ウェブページ、電子メール、各種アプリケーションソフトで作成されるテキストファイル、更には、マルチメディアファイルに付されたメタデータ等が挙げられる。なお、マルチメディアファイルとしては、画像データ、音声データ、音楽データ、映像データ等が挙げられる。
【0059】
特徴表現抽出部17は、先ず、文書記憶部22にアクセスして、文書を取得する。このとき、取得される文書の数は、1つ以上であれば良く、特に限定されるものではない。そして、特徴表現抽出部17は、取得した各文書に含まれるテキストデータから、何らかの対象を示す言語表現と、この対象が有する性質又は機能を表す特徴表現とを抽出し、これら言語表現と特徴表現とを対応付けて、データ記憶部21に格納させる。
【0060】
つまり、本実施の形態2においては、特徴表現抽出部17が、用意された文書集合から、データ記憶部21に格納されるデータ集合を作成している。よって、本実施の形態2においては、利用されるデータ集合が特徴表現抽出部17によって作成されている点を除き、特徴連想部12、特徴選出部13、候補連想部14、及び候補絞込部15は、実施の形態1と同様に動作する。
【0061】
次に、本発明の実施の形態2における情報推薦装置30の動作について図4を用いて説明する。図4は、本発明の実施の形態2における情報推薦装置の動作を示す流れ図である。以下の説明においては、適宜図3を参酌する。また、本実施の形態2では、情報推薦装置30を動作させることによって、情報推薦方法が実施される。よって、本実施の形態2における情報推薦方法の説明は、以下の情報推薦装置30の動作説明に代える。
【0062】
図4に示すように、最初に、特徴表現抽出部17は、文書記憶部22にアクセスして、文書を取得する(図4のステップB1)。ステップB1において、取得される文書の数は、特に限定されず、1つ以上であれば良い。
【0063】
次に、特徴表現抽出部17は、取得した各文書中のテキストを抽出し、テキスト毎に、構文解析を実施する。そして、特徴表現抽出部17は、当該テキストから、対象を示す言語表現と、当該対象が有する性質又は機能を表す言語表現(即ち、特徴表現)とを抽出する(図4のステップB2)。具体的には、ステップB2では、特徴表現抽出部17は、テキストに現われる体言(格要素)を言語表現として抽出し、この体言と係り受け関係にある用言を特徴表現として抽出する。
【0064】
その後、特徴表現抽出部17は、抽出した言語表現と、それに対応する特徴表現とをデータ記憶部21に出力し、これらを格納させる(図4のステップB3)。また、本実施の形態2においては、特徴表現抽出部17は、同一の言語表現とそれに対応する特徴表現とが出現した頻度を計数し、得られた値もデータ記憶部21に出力し、格納させることができる。
【0065】
具体的には、未だ格納されていない言語表現と特徴表現との組み合わせが出現した場合は、特徴表現抽出部17は、その頻度を初期値の1に設定する。一方、既に格納されている言語表現と特徴表現との組み合わせが出現した場合は、インクリメントし、この組み合わせの頻度を1つ増加させる。
【0066】
以上のステップB1〜B3により、データ記憶部21内に、実施の形態1で用いられたデータ集合と同様のデータ集合が構築される。その後、本実施の形態2においても、情報推薦装置30により、図2に示したステップA1〜A6が実行され、絞り込まれた推薦候補が出力装置16に出力される。なお、本実施の形態2においては、ステップA1〜A6は、ステップB1〜B3の実行後に連続して行われている必要はなく、ステップB1〜B3の実行後、時間が経過した後に、ステップA1〜A6が実行されても良い。
【0067】
また、本実施の形態2におけるプログラムは、コンピュータに、図4に示すステップB1〜B3、及び図2に示すステップA1〜A6を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態2における情報推薦装置30と情報推薦方法とを実現することができる。この場合、コンピュータのCPU(Central Processing Unit)は、特徴表現抽出部17、特徴連想部12、特徴選出部13、候補連想部14、及び候補絞込部15として機能し、処理を行なう。更に、この場合、データ記憶部21は、コンピュータに備えられた記憶装置、又は別のコンピュータに備えられた記憶装置に、データ集合を格納することによって実現できる。同様に、文書記憶部22も、コンピュータに備えられた記憶装置、又は別のコンピュータに備えられた記憶装置によって実現できる。なお、コンピュータの具体的な構成については後述する。
【0068】
以上のように、本実施の形態2における情報推薦装置30を用いれば、ユーザは、データ集合の元となる文書集合を収集し、収集した文書集合を記憶装置20に記憶させるだけで良く、ユーザにおける利便性が向上される。また、本実施の形態2を用いた場合も、実施の形態1で述べた効果を得ることができる。
【0069】
ここで、実施の形態1及び2におけるプログラムを実行することによって、情報推薦装置を実現するコンピュータについて図を用いて説明する。図5は、本発明の実施の形態1及び2における情報推薦装置を実現するコンピュータの一例を示すブロック図である。
【0070】
図5に示すように、コンピュータ110は、CPU111と、メインメモリ112と、記憶装置113と、入力インターフェイス114と、表示コントローラ115と、データリーダ/ライタ116と、通信インターフェイス117とを備える。これらの各部は、バス121を介して、互いにデータ通信可能に接続される。
【0071】
CPU111は、記憶装置113に格納された、本実施の形態におけるプログラム(コード)をメインメモリ112に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)等の揮発性の記憶装置である。本実施の形態1又は2において、プログラムは、例えば、コンピュータ読み取り可能な記録媒体120に格納された状態で提供される。なお、本実施の形態1又は2においては、プログラムは、通信インターフェイス117を介して接続されたインターネット上で流通するものであっても良い。
【0072】
また、記憶装置113の具体例としては、ハードディスクの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス114は、CPU111と、キーボード及びマウスといった入力機器(入力装置)118との間のデータ伝送を仲介する。表示コントローラ115は、ディスプレイ装置(出力装置)119と接続され、ディスプレイ装置119での表示を制御する。データリーダ/ライタ116は、CPU111と記録媒体120との間のデータ伝送を仲介し、記録媒体120からのプログラムの読み出し、及びコンピュータ110における処理結果の記録媒体120への書き込みを実行する。通信インターフェイス117は、CPU111と、他のコンピュータとの間のデータ伝送を仲介する。
【0073】
また、記録媒体120の具体例としては、CF(Compact Flash)及びSD(Secure Digital)等の汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記憶媒体、又はCD-ROM(Compact Disk Read Only Memory)などの光学記憶媒体が挙げられる。
【実施例】
【0074】
次に、上述の図1〜図4に加えて、図6〜図8を参照して本発明の実施例を説明する。図6は、本発明の実施例で用いられるデータ集合の第1の例を示す図である。図7は、本発明の実施例で用いられるデータ集合の第2の例を示す図である。図8は、本発明の実施例で用いられるデータ集合の第3の例を示す図である。また、以下に説明する実施例は、上述の実施の形態1及び2に対応する。
【0075】
[データ集合]
図1又は図3に示したように、本実施例では、データ記憶部21は、例えば、図6に示すように、事前に既定された言語表現の集合の各言語表現と、その言語表現が示す対象の性質又は機能を表す特徴表現とを互いに対応付けて格納している。なお、本実施例では、言語表現に対応するIDのリストと、特徴表現に対応するIDのリストとが、データ集合とは別に保持され、図6における言語表現と特徴表現とがそれぞれIDで示されている態様であっても良い。
【0076】
また、図6の例では、データ記憶部21は、言語表現と、それに対応する特徴表現とに加えて、これらの組み合わせが出現した頻度も合わせて格納している。また、実施の形態2を用いた場合は、これらの記憶部に格納される情報は、図3に示した特徴表現抽出部17によって、文書記憶部22に格納されている文書に基づいて作成される。
【0077】
本実施例において、言語表現が示す対象とは、その言語表現が示すオブジェクトのことを示す。例えば、「エアコン」という言語表現が示すオブジェクトは、「エアーコンディショナー」や「エア・コンデショナー」、「エア コンデショナー」、「空気調和設備」、「空調設備」など様々な異表記の単語又は複合語で示される。また、「エアコン」という言語表現が示すオブジェクトは、「空気を調整する機械」、又は「部屋の空気の調整を行なう設備」といった言語表現でも示される。
【0078】
本実施例において、言語表現と、その言語表現が示す対象の性質又は機能を表す特徴表現とは、例えば、新聞、ウェブページといった文書を大量に用い、これらに含まれるテキストを構文解析し、係り受け関係にある体言(格要素)と用言との組を抽出することによって得ることができる。つまり、言語表現とそれに対応する特徴表現とは、用言に対応する体言(格要素)を言語表現とし、この用言を特徴表現とすることで得ることができる。
【0079】
また、図6の例では、上述したように、体言(格要素)と用言との組の出現数が頻度として計数されている。この場合の頻度は、係り受け関係の共起頻度とみなすことが出来る。用言は、例えば、動詞、形容詞、形容動詞等であり、日本語であれば、サ変名詞なども用言として扱うことが可能である。また、言語表現と特徴表現としては、例えば、格フレーム辞書のデータを用いることもできる。
【0080】
このように、ある言語表現の性質や機能を表す特徴表現として、係り受け関係にある用言を用いることで、例えば、形容詞からは性質の特徴が、動詞からは機能的な特徴が得られる。一般に、形容詞は対象の性質的な特徴を表しやすく、動詞は機能的な特徴を表しやすいため、形容詞又は動詞を用いれば、ある言語表現との文書内の単なる共起語などを用いるよりも、言語表現の性質又は機能をよく表すことが可能となる。
【0081】
また、本実施例では、言語表現の性質又は機能を表す特徴表現として、言語表現の対象の性質又は機能を表す、属性及び属性値を用いることもできる。例えば、「属性:温度、属性値:高い」という、性質を表す属性と、属性値に対応する表現とを組にした情報を特徴表現とすることもできる。更に、属性値のみを特徴表現としても良い。
【0082】
このような言語表現に対する性質又は機能を表す属性と属性値とは、例えば、1文に存在する2つの係り受け関係を用いて得ることが出来る。具体的には、先ず、「エアコンの温度が冷たい」のような文から、「エアコンの→温度」と「温度が→冷たい」との2つの係り受け関係を抽出する。次に、「AのB」のようなパターンを持つ「エアコンの→温度」から「エアコン」の一属性として「温度」を抽出し、更に、「温度→冷たい」の関係から属性「温度」の属性値「冷たい」を抽出する。
【0083】
また、言語表現に対する性質を表す属性は、他にも例えば、シソーラスの上位語と下位語との関係を用いて、上位語を言語表現として、下位語を属性として抽出することもできる。更に、シソーラスから抽出した属性と、係り受け関係にある用言とをコーパスより獲得し、その属性に対して相互情報量の高い用言を属性値とすることも出来る。
【0084】
また、言語表現と、言語表現の性質又は機能を表す特徴表現とは、辞書又は百科事典といったデータの定義文から取得することも可能である。例えば、「エアコンとは室内の空気を調整する機械である」という「エアコン」に対する定義文から、「(機能)する(上位語)である」というパターンにより、機能的な表現として、「調整」、「空気を調整」、及び「室内の空気を調整」という特徴表現を抽出することができる。
【0085】
[入力言語表現の受け付け]
ここで、「エアコン」という文字列がキーボード(入力装置11)から入力されたとする。情報推薦装置10又は30において、特徴連想部12は、入力された文字列を入力言語表現として受け付ける。このとき、入力文字列は、「よく冷える エアコン」、又は「暖かいエアコンが欲しい」等のように複合語、文、文章として入力されても良い。このような場合、特徴連想部12は、入力文字列の文に対して形態素解析を行って、これを言語表現に分解し、分解された言語表現から自立語又は名詞のみを入力言語表現とするよう動作することもできる。例えば、「暖かいエアコンが欲しい」が入力されると、特徴連想部12は、「エアコン」又は「暖かいエアコン」を入力言語表現として受け付けることができる。
【0086】
また、特徴連想部12は、入力文字列を、同義語辞書等を用いて表記の揺れ又は同義語を正規化した言語表現に変換しても良い。例えば、特徴連想部12は、「Air Conditioner」という入力文字列を、正規化により、「エアコン」に変換する。
【0087】
[特徴表現の取得]
特徴連想部12は、入力言語表現を受け付けると、データ記憶部21にアクセスし、データ記憶部21から、入力言語表現に対応する特徴表現の集合を取り出す。
【0088】
[第1連想度合の算出(1)]
特徴言語表現の集合を取得すると、特徴連想部12は、特徴表現の集合より選んだ各特徴表現と入力言語表現とを対象として、第1連想度合を求める。入力言語表現と特徴表現との間の第1連想度合としては、例えば、図6に示された、入力言語表現に対応する特徴表現の頻度を用いることが出来る。また、第1連想度合としては、計算対象となる特徴表現の頻度が、入力言語表現に対応する特徴表現の頻度の総計に占める割合を用いても良い。
【0089】
[第1連想度合の算出(2)]
入力言語表現と特徴表現との間の第1連想度合の別の計算例を下記の(数1)に示す。下記の(数1)において、第1連想度合は、「q」を入力言語表現、「r」を特徴表現とすると、入力言語表現qに対する特徴表現rの性質又は機能の強さを表しており、ここでは「性質度合C」と称する。本実施例では、この性質度合Cを、第1の連想度合として用いることもできる。
【0090】
【数1】

【0091】
上記の(数1)において、分子の「freq(q,r)」は、入力言語表現qと特徴表現rとの係り受け関係の共起頻度である。上記の(数1)において、分母は、入力言語表現qと、それに対応する全ての特徴表現rそれぞれとの共起頻度の総和である。また、上記(数1)において、「j」は、入力言語表現qに対応する全ての特徴表現の種類の数に対応し、種類の数を上限とするパラメータである。logは自然対数であり、共起頻度の極端な大小の揺らぎを緩和する。このような上記(数1)を用いれば、入力言語表現に対応する特徴表現の性質又は機能の強さを考慮した第1連想度合の算出が可能となる。
【0092】
また、本実施例では、上記(数1)を変形することもできる。例えば、どのような言語表現に対しても共起するような不要な特徴表現を事前に既定しておき、不要な特徴表現を除外したり、不要な特徴表現の頻度の影響を弱めたりしても良い。また、例えば(数1)の分母を、入力言語表現qと、それに対応する全ての特徴表現rそれぞれとの共起頻度の総和ではなく、入力言語表現qと、それに対応する特徴表現rとの共起頻度の多い方から上位1000件の総和など、特定件数の総和として近似しても良い。この理由は、頻度上位の特定件数とすることで近似が可能であり、計算時間短縮の効果があるためである。
【0093】
[第1連想度合の算出(3)]
入力言語表現と特徴表現との間の第1連想度合の別の計算例を下記の(数2)に示す。下記の(数2)においても、第1連想度合としては、入力言語表現qに対する特徴表現rの性質度合Cが用いられる。但し、下記の(数2)では、性質度合Cは、入力言語表現qと特徴表現rとの係り受け関係の共起確率P(q,r)と、入力言語表現qと任意の特徴表現「*」との係り受け関係の共起確率P(q,*)とによって計算される。
【0094】
【数2】

【0095】
上記の(数1)又は(数2)が採用される場合は、性質度合Cは、事前に計算され、データ記憶部21に格納されているのが好ましい。図7は、図6に示したデータ集合において、出現頻度の代わりに、各言語表現と対応する特徴表現との間の性質度合Cが格納されている例を示している。この場合、特徴連想部12は、データ記憶部21から、第1連想度合として、図7に示された「性質度合C」を取得するように動作すれば良い。この態様によれば、第1連想度合を求めるために費やされる時間を短縮することができる。
【0096】
[第1連想度合の算出(4)]
また、入力言語表現と特徴表現との間の第1連想度合は、各特徴表現から入力言語表現への連想度合としても計算することができる。例えば、第1連想度合は、入力言語表現と特徴表現との共起頻度が、各特徴表現に対応する全ての言語表現それぞれとの共起頻度の総和に占める割合として、計算されても良い。計算時間短縮の効果のため、割合の分母は各特徴表現に対応する言語表現との共起頻度の多い方から上位特定件数の総和としても良い。
【0097】
第1連想度合として、各特徴表現から入力言語表現への連想度合を計算する計算例を下記の(数3)に示す。下記の(数3)において、第1連想度合は、「r」を特徴表現とし、「q」を入力言語表現とすると、ある特徴表現rから入力言語表現qへの連想の強さを表しており、ここでは「連想度合A」と称する。本実施例では、この連想度合Aを、第1の連想度合として用いることもできる。
【0098】
【数3】

【0099】
上記の(数3)において、分子の「freq(r,q)」は、計算対象の特徴表現rと入力言語表現qとの係り受け関係の共起頻度である。上記(数3)において、分母は、計算対象の特徴表現rと、それに対応する全ての言語表現qそれぞれの共起頻度の総和である。また、上記(数3)において、「k」は、特徴表現rに対応する全ての言語表現の種類の数に対応し、種類数を上限とするパラメータである。logは自然対数であり、共起頻度の極端な大小の揺らぎを緩和する。このような上記(数3)を用いれば、ある特徴表現から入力言語表現への連想の強さを考慮した第1連想度合の算出が可能となる。
【0100】
また、本実施例では、上記(数3)を変形することもできる。例えば、どのような特徴表現に対しても共起するような不要な言語表現を事前に既定しておき、不要な言語表現を除外したり、不要な言語表現の頻度の影響を弱めたりしても良い。また、計算時間短縮のため、例えば(数3)の分母を、計算対象の特徴表現rと、それに対応する言語表現との共起頻度の多い方から上位特定件数の総和としても良い。
【0101】
[第1連想度合の算出(5)]
また、第1連想度合として、各特徴表現から入力言語表現への連想度合を計算する別の計算例を下記の(数4)に示す。下記の(数4)においても、第1連想度合としては、連想度合Aが用いられる。但し、下記の(数4)では、連想度合Aは、特徴表現rと入力言語表現qとの係り受け関係の共起確率P(r,q)と、特徴表現rと任意の言語表現「*」との係り受け関係の共起確率P(r,*)とによって計算される。
【0102】
【数4】

【0103】
上記の(数3)又は(数4)が採用される場合は、連想度合Aも、上述の性質度合Cと同様に、事前に計算され、データ記憶部21に格納されているのが好ましい。図8は、図6に示したデータ集合において、出現頻度の代わりに、ある特徴表現から対応する言語表現への連想度合Aが格納されている例を示している。この場合、特徴連想部12は、データ記憶部21kら、第1連想度合として、図8に示された「連想度合A」を取得するように動作すれば良い。この態様による場合も、第1連想度合を求めるために費やされる時間を短縮することができる。
【0104】
また、本実施例では、特徴連想部12は、上記(数1)〜(数4)を組み合わせて用いることができ、第1連想度合として、複数個の値を算出しても良い。また、算出された値の組み合わせ方としては、重み付きでの乗算、重み付きでの加算等が挙げられる。
【0105】
[特徴表現の選出]
第1連想度合が算出されると、特徴選出部13は、特徴連想部12によって求められた特徴表現と第1連想度合との組データから、第1連想度合に基づいて、1つ以上の特徴表現を選出し、これを主要な特徴表現とする。
【0106】
具体的には、特徴選出部13は、特徴連想部12によって得られた、特徴表現と第1連想度合との組データの集合から、第1連想度合の値に基づいて、1つ以上の特徴表現を選出する。例えば、特徴選出部13は、第1連想度合が、事前に設定された基準値より高いという条件を満たす特徴表現を選出することができる。また、特徴選出部13は、例えば、第1連想度合が高い特徴表現から順に、事前に設定された上限数の数だけ、特徴表現を選出するよう動作しても良い。
【0107】
また、特徴選出部13は、第1連想度合に基づいて、設定した閾値より第1連想度合が低い特徴表現を除外するように動作しても良い。これは、第1連想度合が低い特徴表現は、入力言語表現に対する連想の強さが弱すぎるため、情報推薦のために用いることが不適となるからである。
【0108】
特徴選出部13によって上述のようにして選出された、第1連想度合が高い特徴表現であれば、入力言語表現からの連想が容易であると考えられる。従って、選出された特徴表現は、入力言語表現から見て妥当な関係を有すると考えられる。
【0109】
上記の選出方法を採用する特徴選出部13は、例えば、「エアコン」に対しては、「食べる」及び「悲しい」等の性質度合Cの低い特徴表現を除外でき、一方で「エアコン」に対して、「ドライ」及び「冷える」といった連想度合Aの高い特徴表現を選出する。
【0110】
また、本実施例では、特徴選出部13は、上述した性質度合Cと連想度合Aとの両方を用いて選出を行うこともできる。具体的には、特徴選出部13は、性質度合Cと連想度合Aとを乗算し、乗算結果が上位の順に1つ以上の特徴表現を選択することもできる。この態様とした場合は、特徴選出部13は、性質度合Cと連想度合Aとの双方が強い特徴表現を選択することができる。これにより性質又は機能としてより良いと考えられる特徴表現を優先することが可能となる。
【0111】
例えば、図6に示すように「エアコン」と関係付けられた「つける」の出現頻度は、高くなっている。よって、図7に示すように「エアコン」と関係付けられた「つける」の性質度合Cも、「冷える」と同様に高くなる。しかし、性質度合Cに、図8に示す連想度合Aを乗算すると、第1連想度合は、「冷える」において0.143×0.90となり、「つける」において0.143×0.54となるから、前者の「冷える」の方が第1連想度は高くなる。
【0112】
[連想候補の選出]
特徴表現が選出されると、候補連想部14は、特徴選出部13によって選出された特徴表現のうち少なくとも1つの特徴表現について、それに対応する全ての言語表現をデータ記憶部21から取得する。1つの特徴表現に対応する全ての言語表現が取得されると、この全ての言語表現は、当該特徴表現に強く結びついた推薦候補となる。
【0113】
具体的には、候補連想部14は、例えば、入力言語表現の「エアコン」から「冷える」という特徴表現が選出されるとすると、この「冷える」と関係を有する言語表現を全て、データ記憶部21から取得する。このとき、前述のように処理時間短縮のため、取得する件数を「全て」とする必要性はなく、「冷える」と関係を有する言語表現を頻度上位1000件などに限定し、限定した数の言語表現のみが取得されても良い。
【0114】
続いて、候補連想部14は、選出された特徴表現に対応する各言語表現(推薦候補)について、この選出された特徴表現と、それに対応する推薦候補との間の第2連想度合を求め、そして、推薦候補と第2連想度合とを対応付け、これらを組データとして、候補絞込部15に出力する。
【0115】
また、本実施例において、特徴表現と各推薦候補との間の第2連想度合は、上述した第1連想度合と同様の手法で求められる。例えば、特徴表現を「r」とし、対象の各言語表現(推薦候補)を「q」とすると、第2連想度合は、上述した(数1)、又は(数2)を用いることによって求めることができる。この場合、第2連想度合は、各推薦候補qに対する特徴表現rの性質又は機能の強さを考慮した連想度合となる。
【0116】
また、特徴表現と格推薦候補との間の第2連想度合は、例えば、特徴表現を「r」とし、対象の各言語表現(推薦候補)を「q」とすると、上述した(数3)又は(数4)を用いることによっても求めることができる。この場合、第2連想度合は、特徴表現rから各推薦候補qへの連想の強さを考慮した連想度合となる。
【0117】
[連想候補の絞り込み]
候補連想部14から推薦候補と第2連想度合との組データが出力されると、候補絞込部15は、この組データを用いて、推薦候補の絞り込みを行なう。本実施例では、候補絞込部15は、組データを構成する各推薦候補の第2連想度合と、入力言語表現に対する推薦候補の類似度とに基づき、類似度の高い推薦候補を除外して推薦候補を絞り込む。以下、絞り込み処理について具体的に説明する。
【0118】
先ず、候補絞込部15は、例えば、第2連想度合が事前に設定された基準値より高いという条件を満たす推薦候補を選択することができる。また、候補絞込部15は、例えば、第2連想度合が高い推薦候補から順に、事前に設定された上限数の数だけ、推薦候補を選出することもできる。このような処理を最初に行う理由は、このようにして選択された推薦候補であれば、選出特徴表現からの連想が容易であるため、選出特徴表現から見て妥当な関係を有し、推薦に適すると考えられるからである。
【0119】
また、本実施例では、候補絞込部15は、設定した閾値より第2連想度合が低い推薦候補を除外するようにしても良い。これは、特徴表現との間における第2連想度合が低い推薦候補では、選出特徴表現との関係の妥当性が不明瞭となり、推薦候補として用いるには不適であると考えられるからである。
【0120】
次に、候補絞込部15は、第2連想度合を用いて選択した推薦候補から、入力言語表現と意味的な類似性が高くない推薦候補を絞り込む。具体的には、入力言語表現と各推薦候補との間の意味的な類似度を求め、類似度が高くないものに絞り込む。この場合、絞り込みは、例えば、類似度が事前に設定した閾値以上となった推薦候補を除外することによって行っても良いし、類似度が低い順に所定数の推薦候補を選択することによって行っても良い。更に、絞り込みは、類似度の大きさの順に推薦候補を並べ、このとき、中間に位置する所定数の推薦候補を選択することによって行っても良い。この理由は、類似度が低すぎる場合には関係が薄れ、ノイズとなる推薦候補が混在することがあるためである。
【0121】
上述の推薦候補の絞り込みにより、例えば、入力言語表現「エアコン」に対して、推薦候補の集合中の言語表現「冷房機」、「クーラー」、及び「扇風機」といった意味的に類似の言語表現が除外される。そして、「景気」、「マグマ」といった意味的に近くない言語表現が推薦候補として残る。従って、入力言語表現に対して意味的に近くない推薦候補が推薦され、ユーザにとっての意外性が担保される。また、これらの推薦候補は、選出特徴表現との間で近い関係にあるため、入力言語表現から見ても妥当性のある情報に相当する。
【0122】
また、本実施例では、意味的な類似度は、入力言語表現に対する特徴表現と、各推薦候補に対する特徴表現との類似度を算出することによって求めることができる。具体的には、類似度は、共通する特徴表現の数、又は下記の(数5)を用いることによって算出できる。
【0123】
【数5】

【0124】
上記(数5)では、類似度として、入力言語表現と、各推薦候補とのベクトルの内積が算出されている。上記(数5)において、「qin」は入力言語表現であり、「qout」は推薦候補の言語表現である。また、上記(数5)において、「ベクトルrin」、及び「ベクトルrout」は、各言語表現の特徴表現を要素とする特徴ベクトルを示している。このうち、「ベクトルrin」は、入力言語表現に対応する特徴表現の有無を「1」と「0」とで表すベクトルである。「ベクトルrout」は、各推薦候補の言語表現に対応する特徴表現の有無を「1」と「0」とで表すベクトルである。また、「ベクトルrin」、及び「ベクトルrout」それぞれの各言語表現に対応する特徴表現の値としては、共起出現頻度、又は連想度合の値を用いても良い。
【0125】
また、上記(数5)によって類似度を計算した場合は、言語表現に対する特徴表現の集合のデータのみで類度を計算できることから、他に計算に必要なデータを準備する必要がないという利点がある。更に、本実施例では、上記(数5)において、シソーラス等を用いて、言語表現に対する上位語と下位語、辞書等から得た関連語等を、「ベクトルrin」及び「ベクトルrout」それぞれの要素に加えることもできる。更に、上記(数5)に重み等を追加して、上記(数5)を改変することも可能である。
【0126】
最後に、候補絞込部15は、上記の処理によって絞り込んだ推薦候補を1つ以上、出力装置16に出力する。また、出力の際、候補絞込部15は、候補連想部14から、推薦候補と共に、それに対応する選出特徴表現も受け取り、絞り込んだ推薦候補とそれに対応する選出特徴表現とを出力装置16に出力することもできる。
【0127】
上述した実施の形態及び実施例の一部又は全部は、以下に記載する(付記1)〜(付記21)によって表現することができるが、以下の記載に限定されるものではない。
【0128】
(付記1)
言語表現と、前記言語表現が示す対象の性質又は機能を表す特徴表現と、を対応付けて格納しているデータ集合から、入力された言語表現に対応する前記特徴表現を取得し、更に、取得した前記特徴表現と前記入力された言語表現との間における一方から他方が連想される度合を示す、第1の連想度合を求める、特徴連想部と、
前記特徴連想部により取得された前記特徴表現のなかから、前記第1の連想度合に基づいて、設定条件を満たす前記特徴表現を選出する、特徴選出部と、
前記データ集合から、前記特徴選出部により選出された前記特徴表現に対応する前記言語表現を推薦候補として選出し、そして、選出された前記特徴表現とそれに対応する前記推薦候補との間における一方から他方が連想される度合を示す、第2の連想度合を求める、候補連想部と、
前記候補連想部により選出された前記推薦候補と前記入力された言語表現との類似度を求め、前記推薦候補のなかから、前記第2の連想度合と前記類似度とに基づいて、推薦対象となる前記言語表現を特定する、候補絞込部と、
を備えることを特徴とする情報推薦装置。
【0129】
(付記2)
前記データ集合において、前記言語表現が、体言であり、前記特徴表現が、前記言語表現と係り受け関係にある用言である、付記1に記載の情報推薦装置。
【0130】
(付記3)
前記特徴連想部が、複数個の前記特徴表現を取得し、そして、複数個の前記特徴表現それぞれ毎に、前記第1の連想度合として、当該特徴表現と前記入力された言語表現との共起頻度における、複数個の前記特徴表現それぞれと前記入力された言語表現との共起頻度の総和に占める割合を求める、付記1または2に記載の情報推薦装置。
【0131】
(付記4)
前記特徴連想部が、前記第1の連想度合として、取得した前記特徴表現と前記入力された言語表現との共起頻度における、取得した前記特徴表現とそれによって対象の性質又は機能が表された全ての前記言語表現それぞれとの共起頻度の総和に占める割合を求める、付記1または2に記載の情報推薦装置。
【0132】
(付記5)
前記特徴選出部が、複数個の前記特徴表現を選出しており、
前記候補連想部が、選出された複数個の前記特徴表現それぞれ毎に、前記第2の連想度合として、当該特徴表現とそれに対応する前記推薦候補との共起頻度における、当該対応する前記推薦候補とそれが示す対象の性質又は機能を表す全ての選出された前記特徴表現それぞれとの共起頻度に占める割合を求める、付記1〜4のいずれかに記載の情報推薦装置。
【0133】
(付記6)
前記候補連想部が、前記第2の連想度合として、選出された前記特徴表現とそれに対応する1の前記推薦候補との共起頻度における、選出された前記特徴表現とそれに対応する全ての前記推薦候補それぞれとの共起頻度の総和に占める割合を求める、付記1〜4のいずれかに記載の情報推薦装置。
【0134】
(付記7)
前記候補絞込部が、前記候補連想部により選出された前記推薦候補と前記入力された言語表現との類似度として、前記入力された言語表現に対応する前記特徴表現の集合と、前記推薦候補に対応する前記特徴表現の集合との類似度を求める、ことを特徴とする付記1〜6のいずれかに記載の情報推薦装置。
【0135】
(付記8)
(a)言語表現と、前記言語表現が示す対象の性質又は機能を表す特徴表現と、を対応付けて格納しているデータ集合から、入力された言語表現に対応する前記特徴表現を取得する、ステップと、
(b)前記(a)のステップで取得された前記特徴表現と前記入力された言語表現との間における一方から他方が連想される度合を示す、第1の連想度合を求める、ステップと、
(c)前記(a)のステップで取得された前記特徴表現のなかから、前記第1の連想度合に基づいて、設定条件を満たす前記特徴表現を選出する、ステップと、
(d)前記データ集合から、前記(c)のステップで選出された前記特徴表現に対応する前記言語表現を推薦候補として選出する、ステップと、
(e)前記(c)のステップで選出された前記特徴表現とそれに対応する前記推薦候補との間における一方から他方が連想される度合を示す、第2の連想度合を求める、ステップと、
(f)前記(d)のステップで選出された前記推薦候補と前記入力された言語表現との類似度を求め、前記推薦候補のなかから、前記第2の連想度合と前記類似度とに基づいて、推薦対象となる前記言語表現を特定する、ステップと、
を有することを特徴とする情報推薦方法。
【0136】
(付記9)
前記データ集合において、前記言語表現が、体言であり、前記特徴表現が、前記言語表現と係り受け関係にある用言である、付記8に記載の情報推薦方法。
【0137】
(付記10)
前記(a)のステップで、複数個の前記特徴表現を取得し、
前記(b)のステップで、複数個の前記特徴表現それぞれ毎に、前記第1の連想度合として、当該特徴表現と前記入力された言語表現との共起頻度における、複数個の前記特徴表現それぞれと前記入力された言語表現との共起頻度の総和に占める割合を求める、付記8または9に記載の情報推薦方法。
【0138】
(付記11)
前記(b)のステップで、前記第1の連想度合として、前記(a)のステップで取得した前記特徴表現と前記入力された言語表現との共起頻度における、前記(a)のステップで取得した前記特徴表現とそれによって対象の性質又は機能が表された全ての前記言語表現それぞれとの共起頻度の総和に占める割合を求める、付記8または9に記載の情報推薦方法。
【0139】
(付記12)
前記(c)のステップで、複数個の前記特徴表現を選出し、
前記(e)のステップで、選出された複数個の前記特徴表現それぞれ毎に、前記第2の連想度合として、当該特徴表現とそれに対応する前記推薦候補との共起頻度における、当該対応する前記推薦候補とそれが示す対象の性質又は機能を表す全ての選出された前記特徴表現それぞれとの共起頻度に占める割合を求める、付記8〜11のいずれかに記載の情報推薦方法。
【0140】
(付記13)
前記(e)のステップで、前記第2の連想度合として、選出された前記特徴表現とそれに対応する1の前記推薦候補との共起頻度における、選出された前記特徴表現とそれに対応する全ての前記推薦候補それぞれとの共起頻度の総和に占める割合を求める、付記8〜11のいずれかに記載の情報推薦方法。
【0141】
(付記14)
前記(f)のステップで、前記(d)のステップで選出された前記推薦候補と前記入力された言語表現との類似度として、前記入力された言語表現に対応する前記特徴表現の集合と、前記推薦候補に対応する前記特徴表現の集合との類似度を求める、ことを特徴とする付記8〜13のいずれかに記載の情報推薦方法。
【0142】
(付記15)
コンピュータによって情報の推薦を行うためのプログラムであって、
前記コンピュータに、
(a)言語表現と、前記言語表現が示す対象の性質又は機能を表す特徴表現と、を対応付けて格納している含むデータ集合から、入力された言語表現に対応する前記特徴表現を取得する、ステップと、
(b)前記(a)のステップで取得された前記特徴表現と前記入力された言語表現との間における一方から他方が連想される度合を示す、第1の連想度合を求める、ステップと、
(c)前記(a)のステップで取得された前記特徴表現のなかから、前記第1の連想度合に基づいて、設定条件を満たす前記特徴表現を選出する、ステップと、
(d)前記データ集合から、前記(c)のステップで選出された前記特徴表現に対応する前記言語表現を推薦候補として選出する、ステップと、
(e)前記(c)のステップで選出された前記特徴表現とそれに対応する前記推薦候補との間における一方から他方が連想される度合を示す、第2の連想度合を求める、ステップと、
(f)前記(d)のステップで選出された前記推薦候補と前記入力された言語表現との類似度を求め、前記推薦候補のなかから、前記第2の連想度合と前記類似度とに基づいて、推薦対象となる前記言語表現を特定する、ステップと、
を実行させることを特徴とするプログラム。
【0143】
(付記16)
前記データ集合において、前記言語表現が、体言であり、前記特徴表現が、前記言語表現と係り受け関係にある用言である、付記15に記載のプログラム。
【0144】
(付記17)
前記(a)のステップで、複数個の前記特徴表現を取得し、
前記(b)のステップで、複数個の前記特徴表現それぞれ毎に、前記第1の連想度合として、当該特徴表現と前記入力された言語表現との共起頻度における、複数個の前記特徴表現それぞれと前記入力された言語表現との共起頻度の総和に占める割合を求める、付記15または16に記載のプログラム。
【0145】
(付記18)
前記(b)のステップで、前記第1の連想度合として、前記(a)のステップで取得した前記特徴表現と前記入力された言語表現との共起頻度における、前記(a)のステップで取得した前記特徴表現とそれによって対象の性質又は機能が表された全ての前記言語表現それぞれとの共起頻度の総和に占める割合を求める、付記15または16に記載のプログラム。
【0146】
(付記19)
前記(c)のステップで、複数個の前記特徴表現を選出し、
前記(e)のステップで、選出された複数個の前記特徴表現それぞれ毎に、前記第2の連想度合として、当該特徴表現とそれに対応する前記推薦候補との共起頻度における、当該対応する前記推薦候補とそれが示す対象の性質又は機能を表す全ての選出された前記特徴表現それぞれとの共起頻度に占める割合を求める、付記15〜18のいずれかに記載のプログラム。
【0147】
(付記20)
前記(e)のステップで、前記第2の連想度合として、選出された前記特徴表現とそれに対応する1の前記推薦候補との共起頻度における、選出された前記特徴表現とそれに対応する全ての前記推薦候補それぞれとの共起頻度の総和に占める割合を求める、付記15〜18のいずれかに記載のプログラム。
【0148】
(付記21)
前記(f)のステップで、前記(d)のステップで選出された前記推薦候補と前記入力された言語表現との類似度として、前記入力された言語表現に対応する前記特徴表現の集合と、前記推薦候補に対応する前記特徴表現の集合との類似度を求める、ことを特徴とする付記15〜20のいずれかに記載のプログラム。
【産業上の利用可能性】
【0149】
本発明は、企画及びマーケティング向けの商品関連情報の推薦装置、発想を想起するための情報推薦による発想支援装置、意外で人目を引く情報の推薦による広告提供装置、といった用途に適用できる。また、本発明は、情報推薦装置、情報推薦方法を用いた、ゲームシステム学習支援システム、頭脳鍛錬のための支援システム、及び語学学習システムといった用途にも適用可能である。
【符号の説明】
【0150】
10 情報推薦装置
11 入力装置
12 特徴連想部
13 特徴選出部
14 候補連想部
15 候補絞込部
16 出力装置
17 特徴表現抽出部
20 記憶装置
21 データ記憶部
22 文書記憶部

【特許請求の範囲】
【請求項1】
言語表現と、前記言語表現が示す対象の性質又は機能を表す特徴表現と、を対応付けて格納しているデータ集合から、入力された言語表現に対応する前記特徴表現を取得し、更に、取得した前記特徴表現と前記入力された言語表現との間における一方から他方が連想される度合を示す、第1の連想度合を求める、特徴連想部と、
前記特徴連想部により取得された前記特徴表現のなかから、前記第1の連想度合に基づいて、設定条件を満たす前記特徴表現を選出する、特徴選出部と、
前記データ集合から、前記特徴選出部により選出された前記特徴表現に対応する前記言語表現を推薦候補として選出し、そして、選出された前記特徴表現とそれに対応する前記推薦候補との間における一方から他方が連想される度合を示す、第2の連想度合を求める、候補連想部と、
前記候補連想部により選出された前記推薦候補と前記入力された言語表現との類似度を求め、前記推薦候補のなかから、前記第2の連想度合と前記類似度とに基づいて、推薦対象となる前記言語表現を特定する、候補絞込部と、
を備えることを特徴とする情報推薦装置。
【請求項2】
前記データ集合において、前記言語表現が、体言であり、前記特徴表現が、前記言語表現と係り受け関係にある用言である、請求項1に記載の情報推薦装置。
【請求項3】
前記特徴連想部が、複数個の前記特徴表現を取得し、そして、複数個の前記特徴表現それぞれ毎に、前記第1の連想度合として、当該特徴表現と前記入力された言語表現との共起頻度における、複数個の前記特徴表現それぞれと前記入力された言語表現との共起頻度の総和に占める割合を求める、請求項1または2に記載の情報推薦装置。
【請求項4】
前記特徴連想部が、前記第1の連想度合として、取得した前記特徴表現と前記入力された言語表現との共起頻度における、取得した前記特徴表現とそれによって対象の性質又は機能が表された全ての前記言語表現それぞれとの共起頻度の総和に占める割合を求める、請求項1または2に記載の情報推薦装置。
【請求項5】
前記特徴選出部が、複数個の前記特徴表現を選出しており、
前記候補連想部が、選出された複数個の前記特徴表現それぞれ毎に、前記第2の連想度合として、当該特徴表現とそれに対応する前記推薦候補との共起頻度における、当該対応する前記推薦候補とそれが示す対象の性質又は機能を表す全ての選出された前記特徴表現それぞれとの共起頻度に占める割合を求める、請求項1〜4のいずれかに記載の情報推薦装置。
【請求項6】
前記候補連想部が、前記第2の連想度合として、選出された前記特徴表現とそれに対応する1の前記推薦候補との共起頻度における、選出された前記特徴表現とそれに対応する全ての前記推薦候補それぞれとの共起頻度の総和に占める割合を求める、請求項1〜4のいずれかに記載の情報推薦装置。
【請求項7】
前記候補絞込部が、前記候補連想部により選出された前記推薦候補と前記入力された言語表現との類似度として、前記入力された言語表現に対応する前記特徴表現の集合と、前記推薦候補に対応する前記特徴表現の集合との類似度を求める、ことを特徴とする請求項1〜6のいずれかに記載の情報推薦装置。
【請求項8】
(a)言語表現と、前記言語表現が示す対象の性質又は機能を表す特徴表現と、を対応付けて格納しているデータ集合から、入力された言語表現に対応する前記特徴表現を取得する、ステップと、
(b)前記(a)のステップで取得された前記特徴表現と前記入力された言語表現との間における一方から他方が連想される度合を示す、第1の連想度合を求める、ステップと、
(c)前記(a)のステップで取得された前記特徴表現のなかから、前記第1の連想度合に基づいて、設定条件を満たす前記特徴表現を選出する、ステップと、
(d)前記データ集合から、前記(c)のステップで選出された前記特徴表現に対応する前記言語表現を推薦候補として選出する、ステップと、
(e)前記(c)のステップで選出された前記特徴表現とそれに対応する前記推薦候補との間における一方から他方が連想される度合を示す、第2の連想度合を求める、ステップと、
(f)前記(d)のステップで選出された前記推薦候補と前記入力された言語表現との類似度を求め、前記推薦候補のなかから、前記第2の連想度合と前記類似度とに基づいて、推薦対象となる前記言語表現を特定する、ステップと、
を有することを特徴とする情報推薦方法。
【請求項9】
コンピュータによって情報の推薦を行うためのプログラムであって、
前記コンピュータに、
(a)言語表現と、前記言語表現が示す対象の性質又は機能を表す特徴表現と、を対応付けて格納している含むデータ集合から、入力された言語表現に対応する前記特徴表現を取得する、ステップと、
(b)前記(a)のステップで取得された前記特徴表現と前記入力された言語表現との間における一方から他方が連想される度合を示す、第1の連想度合を求める、ステップと、
(c)前記(a)のステップで取得された前記特徴表現のなかから、前記第1の連想度合に基づいて、設定条件を満たす前記特徴表現を選出する、ステップと、
(d)前記データ集合から、前記(c)のステップで選出された前記特徴表現に対応する前記言語表現を推薦候補として選出する、ステップと、
(e)前記(c)のステップで選出された前記特徴表現とそれに対応する前記推薦候補との間における一方から他方が連想される度合を示す、第2の連想度合を求める、ステップと、
(f)前記(d)のステップで選出された前記推薦候補と前記入力された言語表現との類似度を求め、前記推薦候補のなかから、前記第2の連想度合と前記類似度とに基づいて、推薦対象となる前記言語表現を特定する、ステップと、
を実行させることを特徴とするプログラム。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2011−210090(P2011−210090A)
【公開日】平成23年10月20日(2011.10.20)
【国際特許分類】
【出願番号】特願2010−78524(P2010−78524)
【出願日】平成22年3月30日(2010.3.30)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.COMPACTFLASH
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】