(57)【要約】【課題】ユーザの好むコンテンツをより精度よく提示できるようにする。【解決手段】記憶部１１１には、文書の集合の中で複数のユーザによるアイテムごとの利用頻度の情報を含むユーザ／アイテムテーブル１２２と、ユーザごとの文書の集合の中から複数のアイテムが同時に利用された頻度の情報を含むアイテム／アイテムテーブル１２３と記憶されており、選択アイテムを選択したユーザと類似するユーザを、ユーザ／アイテムテーブル１２２に基づいて決定し、さらに、前記類似するユーザのアイテム／アイテムテーブル１２３に基づいてレコメンドスコアを算出して、レコメンドスコアが所定値よりも高いアイテムの情報を出力する。【選択図】図１
2013109734.tif 000002
【特許請求の範囲】
【請求項１】
文書の集合の中からユーザにより選択された選択アイテムの情報を入力する入力手段と、
前記文書の集合の中の複数のユーザによるアイテムごとの利用頻度の情報と、ユーザごとの前記文書の集合の中から複数のアイテムが同時に利用された頻度の情報とを記憶する記憶手段と、
前記選択アイテムを選択したユーザと類似するユーザを、前記記憶手段に記憶されたアイテムごとの利用頻度の情報に基づいて決定する決定手段と、
前記記憶手段に記憶された前記類似するユーザの前記複数のアイテムが同時に利用された頻度の情報に基づいて前記選択アイテムとの関連性を算出する算出手段と、
前記算出手段によって算出された関連性が所定値よりも高いアイテムの情報を出力する出力手段とを有することを特徴とする文書検索装置。
【請求項２】
前記記憶手段に記憶された情報を更新する更新手段をさらに有し、
前記入力手段は、文書の操作履歴の情報をも入力し、
前記更新手段は、前記入力手段によって入力された操作履歴の情報に基づいて前記記憶手段に記憶された情報を更新することを特徴とする請求項１に記載の文書検索装置。
【請求項３】
前記決定手段は、さらに前記選択アイテムとのアイテム間の距離に基づいて前記選択アイテムを選択したユーザと類似するユーザを決定する手段であることを特徴とする請求項１または２に記載の文書検索装置。
【請求項４】
前記選択アイテムがフォルダの場合、前記算出手段は、前記フォルダに格納されたアイテムごとの利用頻度の情報に基づいて前記選択アイテムとの関連性を算出することを特徴とする請求項１〜３の何れか１項に記載の文書検索装置。
【請求項５】
文書の集合の中の複数のユーザによるアイテムごとの利用頻度の情報と、ユーザごとの前記文書の集合の中から複数のアイテムが同時に利用された頻度の情報とを記憶する記憶手段を有する文書検索装置の文書検索方法であって、
前記文書の集合の中からユーザにより選択された選択アイテムの情報を入力する入力工程と、
前記選択アイテムを選択したユーザと類似するユーザを、前記記憶手段に記憶されたアイテムごとの利用頻度の情報に基づいて決定する決定工程と、
前記記憶手段に記憶された前記類似するユーザの前記複数のアイテムが同時に利用された頻度の情報に基づいて前記選択アイテムとの関連性を算出する算出工程と、
前記算出工程において算出された関連性が所定値よりも高いアイテムの情報を出力する出力工程とを有することを特徴とする文書検索方法。
【請求項６】
文書の集合の中の複数のユーザによるアイテムごとの利用頻度の情報と、ユーザごとの前記文書の集合の中から複数のアイテムが同時に利用された頻度の情報とを記憶する記憶手段を有する文書検索装置を制御するためのプログラムであって、
前記文書の集合の中からユーザにより選択された選択アイテムの情報を入力する入力工程と、
前記選択アイテムを選択したユーザと類似するユーザを、前記記憶手段に記憶されたアイテムごとの利用頻度の情報に基づいて決定する決定工程と、
前記記憶手段に記憶された前記類似するユーザの前記複数のアイテムが同時に利用された頻度の情報に基づいて前記選択アイテムとの関連性を算出する算出工程と、
前記算出工程において算出された関連性が所定値よりも高いアイテムの情報を出力する出力工程とをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は文書検索装置、文書検索方法及びプログラムに関し、特に、ユーザが好むと推定されたコンテンツを提示するために用いて好適な技術に関する。
【背景技術】
【０００２】
従来の検索システムとしては、ユーザが入力したキーワードに一致するコンテンツを検索するタイプが主流であった。この検索システムでは、正しいキーワードを入力することができれば高速に検索結果が得られるが、ユーザは検索する度に新たにキーワードを考える必要がある。また、一般の不慣れなユーザにとっては正しいキーワードを構築することが困難であるという課題があった。
【０００３】
このような課題を解決するため、ユーザがコンテンツを利用した履歴からユーザの嗜好を推定し、ユーザが好むと推定されたコンテンツを提示する情報推薦（レコメンド）技術が提案されている。例えば特許文献１には、インターネットの書籍販売サイトにおいてユーザが書籍を参照する際に、過去の他のユーザの購入履歴に基づき、参照する書籍を購入した他のユーザが別途購入した書籍を提示する技術が開示されている。この技術では、大量の購買履歴から複数のユーザが過去に購入したコンテンツの履歴を統計的に学習し、個人を特定しないままパターン化した類似の嗜好を持つユーザにコンテンツを推薦するものである。このようにインターネット上のＥＣサイトでは、ユーザがそのコンテンツを好む条件を推定するのに「購入」という１つの指標に焦点が置かれている。
【０００４】
一方、エンタープライズ環境における文書管理システムでは、ユーザは文書に対して様々な操作が可能であり、それぞれの操作の履歴は、書籍を購入する場合と比べてユーザがコンテンツを好むことを示す指標とはならない。したがって、オフィスの文書管理システムにおいては、単一の操作ではなく、複数の操作のそれぞれからユーザと文書との関連性、及び文書と文書との関連性を推定する必要がある。
【０００５】
例えば特許文献２には、このようなオフィスの環境において関連文書を提示する技術が開示されている。特許文献２に記載の技術は、文書の作成から終了までのひとまとまりの操作内容を案件セッションとして管理し、該案件セッション毎の操作内容に基づいて文書同士の関連リンクを設ける。そして、ある文書が閲覧された際に、関連リンクに基づいて関連文書を表示している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】米国特許第６２６６６４９号明細書
【特許文献２】特開２０１１−２８４４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
オフィスなどの環境において文書を作成する際には、専門性や観点が異なり、文書を作成する目的が様々である。ユーザが同時に利用したコンテンツを提示すると、提示する文書に不要な文書が数多く出現してしまう。さらに、ユーザ間の類似度を計算して、類似するユーザが利用した文書を提示した場合も、条件によっては十分に適切な文書を提示することができない。例えば、履歴が少ない場合や、利用傾向がわずかに一致しているユーザが多数存在する場合、利用傾向が似たユーザを判断できない場合、ユーザが複数のグループに所属する場合などでは、不要な文書を数多く提示してしまう。
【０００８】
本発明は前述の問題点に鑑み、ユーザの好むコンテンツをより精度よく提示できるようにすることを目的としている。
【課題を解決するための手段】
【０００９】
本発明の文書検索装置は、文書の集合の中からユーザにより選択されたアイテムの情報を入力する入力手段と、前記文書の集合の中の複数のユーザによるアイテムごとの利用頻度の情報と、ユーザごとの前記文書の集合の中から複数のアイテムが同時に利用された頻度の情報とを記憶する記憶手段と、前記選択アイテムを選択したユーザと類似するユーザを、前記記憶手段に記憶されたアイテムごとの利用頻度の情報に基づいて決定する決定手段と、前記記憶手段に記憶された前記類似するユーザの前記複数のアイテムが同時に利用された頻度の情報に基づいて前記選択アイテムとの関連性を算出する算出手段と、前記算出手段によって算出された関連性が所定値よりも高いアイテムの情報を出力する出力手段とを有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、ユーザの好むコンテンツをより精度よく提示することができ、ユーザの操作性を向上させることができる。
【図面の簡単な説明】
【００１１】
【図１】実施形態に係る文書検索装置の構成例を示すブロック図である。
【図２】実施形態に係る文書検索システムの構成例を示す図である。
【図３】第１の実施形態におけるプロファイルを更新する処理及び文書集合の中から推薦する文書を決定する処理の手順の一例を示すフローチャートである。
【図４】ユーザ／アイテムテーブル及びアイテム／アイテムテーブルの一例を示す図である。
【図５】ユーザの操作履歴及び複数のグループの関係の一例を示す図である。
【図６】ユーザ／アイテムテーブル及びアイテム／アイテムテーブルを更新する詳細な処理手順の一例を示すフローチャートである。
【図７】第２の実施形態における文書集合の中から推薦する文書を決定する処理の手順の一例を示すフローチャートである。
【図８】第２の実施形態において、ディレクトリツリー上のアイテム間の距離及び類似度を説明する図である。
【図９】第２の実施形態において、ディレクトリツリー上のアイテム間の距離及び類似度を説明する図である。
【図１０】第２の実施形態において、ディレクトリツリー上のアイテム間の距離及び利用頻度を説明する図である。
【発明を実施するための形態】
【００１２】
（第１の実施形態）
以下、本発明の第１の実施形態について説明する。
図１は、本実施形態に係る文書検索装置１００の構成例を示すブロック図である。
図１に示す文書検索装置１００は、ＣＰＵであるデータ処理部１１５、記憶部１１１、表示部１１６、入力部１１３、及びネットワークＩ／Ｆ部１１７が含まれている。記憶部１１１には、操作履歴１２０及びプロファイル１２１が記憶されており、さらにプロファイル１２１には、ユーザ／アイテムテーブル１２２及びアイテム／アイテムテーブル１２３が格納されている。
【００１３】
ユーザ／アイテムテーブル１２２には、ユーザとアイテムとの関係が格納されている。つまり、各ユーザの各アイテムの利用頻度の情報が格納されており、ユーザの類似性の計算に使用される。アイテム／アイテムテーブル１２３には、ユーザごとにアイテム間の関係が格納されている。つまり、同時に利用したアイテムの利用頻度の情報が格納されており、文書の関連性の計算に使用される。なお、アイテム／アイテムテーブル１２３はユーザ１人あたり１つ存在する。
【００１４】
また、図１に示す文書検索装置１００は、図２に示すように、ネットワーク２０１に接続されている。図２に示す例では、本実施形態に係る文書検索装置１００は、ネットワーク２０１を介して第１のクライアント端末２０２と第２のクライアント端末２０３とに接続されている。
【００１５】
次に、本実施形態に係る文書検索装置１００における処理の流れについて、図３に基づいて説明する。なお、図３に示す各処理は、データ処理部１１５の制御により行われる。
図３（ａ）は、ユーザの操作履歴からプロファイル１２１を更新して記憶部１１１に記憶する処理手順の一例を示すフローチャートである。図３（ａ）の処理は、操作履歴１２０からユーザごとにアイテムの利用頻度を管理するユーザ／アイテムテーブルを作成する処理（Ｓ３００）と、同時に利用したアイテムを管理するアイテム／アイテムテーブルを作成する処理（Ｓ３０１）とから構成される。
【００１６】
また、図３（ｂ）は、ユーザの操作に基づいて文書集合の中から推薦する文書を決定する処理手順の一例を示すフローチャートである。図３（ｂ）の処理は、選択アイテムを取得する処理（Ｓ３１０）と、類似するユーザを決定する処理（Ｓ３１１）と、レコメンドスコアを算出する処理（Ｓ３１２）と、レコメンドアイテムを決定する処理（Ｓ３１３）とから構成される。
【００１７】
まず、図３（ａ）に示す動作例を説明する。まず、入力部１１３またはネットワークＩ／Ｆ部１１７からユーザの操作情報が入力されると、処理を開始する。ここで、操作情報とは、ユーザがどの文書に対してどのような操作を行ったかに関する情報である。
【００１８】
そして、ユーザ／アイテムテーブルを作成する処理（Ｓ３００）では、記憶部１１１のプロファイル１２１に格納されるユーザ／アイテムテーブル１２２を作成する。図４（ａ）には、ユーザ／アイテムテーブル１２２の一例を示す。Ｓ３００では、記憶部１１１に格納されているユーザの操作履歴１２０からユーザがどのアイテムを利用したかを操作履歴としてユーザ／アイテムテーブル１２２を作成する。なお、図５（ａ）には、各ユーザの操作履歴１２０の一例を示している。また、Ｓ３００の詳細な処理手順については図６（ａ）の説明において後述する。
【００１９】
次に、アイテム／アイテムテーブルを作成する処理（Ｓ３０１）では、記憶部１１１のプロファイル１２１に格納されるアイテム／アイテムテーブル１２３をユーザごとに作成する。図４（ｂ）〜図４（ｄ）には、ユーザごとのアイテム／アイテムテーブル１２３の一例を示している。Ｓ３０１では、記憶部１１１に格納されているユーザの操作履歴１２０から、図５（ａ）に示すように、ユーザごとに同時に利用していたアイテムの操作履歴を判別し、ユーザごとのアイテム／アイテムテーブル１２３を作成する。また、Ｓ３０１の詳細な処理手順については図６（ｂ）の説明において後述する。
【００２０】
次に、図３（ｂ）に示す動作例を説明する。まず、入力部１１３またはネットワークＩ／Ｆ部１１７からの入力に応じて処理を開始し、選択アイテムを取得する処理（Ｓ３１０）では、クライアント端末等でユーザが選択したアイテム（フォルダや文書）の情報を取得する。具体的には、入力部１１３またはネットワークＩ／Ｆ部１１７からの入力に応じてデータ処理部１１５が選択アイテムを判別する。
【００２１】
次に、類似するユーザを決定する処理（Ｓ３１１）では、記憶部１１１のプロファイル１２１に格納されているユーザ／アイテムテーブル１２２を用いてログインしたユーザと他の全てのユーザとの類似性を計算する。具体的には、ユーザ／アイテムテーブル１２２から、各文書の利用頻度をベクトル要素とした多次元空間上のベクトルとしてユーザを表現し、２つのベクトルを比較することによりユーザの類似度を求める。つまり、ベクトルの方向はユーザの特徴を示すものであり、２つのベクトルのなす角が小さいほどユーザの特徴が互いに似ているということになる。そこで、ユーザごとに以下の式（１）を用いてユーザの類似度sim(x,y)を算出する。
【００２２】
【数１】
2013109734.tif 000003
【００２３】
ここで、ｘはログインしたユーザを示し、ｙは比較するユーザを示している。また、ｒx,sは、ログインしたユーザのｓ番目の文書の利用頻度を示し、ｒy,sは、比較するユーザのｓ番目の文書の利用頻度を示す。さらに、Ｓxyは、文書の集合を示している。
【００２４】
次に、以下の式（２）に示す類似度正規化計算式によりユーザの類似度を正規化する。なお、正規化された類似度normalized＿sim(x,y)の最大値は１となる。
【００２５】
【数２】
2013109734.tif 000004
【００２６】
そして、ログインしたユーザとの類似度が閾値以上のユーザを類似するユーザに決定する。類似度が閾値以上となるユーザが複数いる場合は、類似度の順位で決定することも可能である。
【００２７】
図４（ａ）に示す例では、User1とUser1との間の類似度はユーザが同一人物であることから１となる。一方、式（１）及び式（２）により類似度を算出すると、User1とUser2との間の類似度は０．７６となり、User1とUser3との間の類似度は０．６５となる。さらに、User1とUser4との間の類似度は０．０７となる。したがって、閾値を０．６７とした場合、User1と類似するユーザはUser2に決定される。
【００２８】
次に、レコメンドスコアを算出する処理（Ｓ３１２）では、Ｓ３１０で取得した選択アイテムがフォルダの場合と文書の場合とでは処理が異なる。選択アイテムがフォルダの場合は、選択されたフォルダに格納されたアイテムのレコメンドスコアを算出する。一方、選択アイテムが文書の場合は、類似するユーザにおいて選択された文書と同時に利用したアイテムのレコメンドスコアを算出する。
【００２９】
具体的な計算方法は、選択アイテムがフォルダの場合、ユーザ／アイテムテーブル１２２を用いて、以下の式（３）により文書毎の利用頻度に対して重み付けしてレコメンドスコアscore(a,i)を算出する。
【００３０】
【数３】
2013109734.tif 000005
ここで、ａはログインしたユーザを示し、Ｓは類似するユーザの全てを示している。そして、ｕは類似するユーザの１人を示している。また、wapは、ログインしたユーザの印刷操作の重みを示し、wavは、ログインしたユーザｕの閲覧操作の重みを示している。同様に、wupは、類似するユーザｕの印刷操作の重みを示し、wuvは、類似するユーザの閲覧操作の重みを示している。さらに、rp(u,i)は、ユーザｕのｉ番目のアイテムに対する印刷頻度を示し、rv(u,i)は、ユーザｕのｉ番目のアイテムに対する閲覧頻度を示している。
【００３１】
次に、以下の式（４）によりレコメンドスコアを正規化する。
【００３２】
【数４】
2013109734.tif 000006
【００３３】
例えば、重みを［ログインユーザ］：［グループユーザ］＝２：１、［印刷頻度］：［閲覧頻度］＝２：１とした場合、レコメンドスコアは以下のように算出される。つまり、「ログインしたユーザが過去によく印刷している文書」のレコメンドスコアは［出現回数］×２×２であり、「ログインユーザと同一グループに属するユーザが過去によく閲覧している文書」のレコメンドスコアは［出現回数］×１×１である。
【００３４】
図４（ａ）に示す例では、Item1、Item2、及びItem3が格納されたフォルダが選択された場合、式（３）及び式（４）によりItem1、Item2、及びItem3のレコメンドスコアはそれぞれ、８５、０、１００と算出される。
【００３５】
一方、選択アイテムが文書の場合は、Ｓ３１１で決定された類似するユーザ（ログインしたユーザも含む）のアイテム／アイテムテーブル１２３を用いてレコメンドスコアを算出する。すなわち、以下の式（５）により、類似するユーザが選択アイテムと同時に利用していた頻度とユーザの類似度とからレコメンドスコアscore(a,c,d)を計算する。
【００３６】
【数５】
2013109734.tif 000007
【００３７】
ここで、ｃは選択アイテム（選択文書）を示し、ｄは選択文書と同時に利用していた文書を示す。また、p(d|c,u)は、類似するユーザｕにおける選択文書ｃと文書ｄとの遷移確率（同時に利用した確率）を示す。
【００３８】
例えば、Item4の文書が選択アイテムであり、類似するユーザがUser1（ログインユーザ）及びUser2である場合、図４（ｂ）及び図４（ｃ）に示すアイテム／アイテムテーブル１２３を用いてレコメンドスコアが算出される。前述した式（１）及び式（２）より、類似度はsim(User1,User1)＝１、sim(User1,User2)＝０．７６である。また、図４（ｂ）及び図４（ｃ）に示すようにp(Item1|Item4,User1)＝１、p(Item1|Item4,User2)＝０．５となる。したがって、式（５）より、Item1のレコメンドスコアは０．７８となり、Item5のレコメンドスコアは０．２２となる。さらに、式（４）により正規化した場合は、Item1のレコメンドスコアは１００となり、Item5のレコメンドスコアは２８となる。このように、ログインしたユーザと類似度の高いユーザとが過去に選択文書と同時に使っていた確率が高い文書ほど、レコメンドスコアは高くなる。
【００３９】
次に、レコメンドアイテムを決定する処理（Ｓ３１３）では、Ｓ３１２で算出されたレコメンドスコアの高い上位の文書（アイテム）をレコメンド結果とする。そして、設定された個数を上限に、閾値（所定値）以上のレコメンドスコアのアイテムからなるアイテムリストを作成し、ネットワークＩ／Ｆ部１１７からクライアント端末へ出力する。
【００４０】
例えば、図４に示す例の場合、類似するユーザはUser1（ログインユーザ）とUser2であり、Item4が選択されたものとする。この場合、最大個数を４、レコメンドスコアの閾値を５０とすると、Item1がレコメンドアイテムとして決定される。
【００４１】
図６（ａ）は、図３（ａ）のＳ３００におけるユーザ／アイテムテーブル１２２を作成する詳細な処理手順の一例を示すフローチャートである。図６（ａ）の処理は、関連履歴を判定する処理（Ｓ６００）、ユーザＩＤを取得する処理（Ｓ６０１）、文書ＩＤを取得する処理（Ｓ６０２）、ユーザ／アイテムテーブルを更新する処理（Ｓ６０３）、及び最終履歴を判定する処理（Ｓ６０４）から構成される。
【００４２】
まず、関連履歴を判定する処理（Ｓ６００）では、記憶部１１１に格納されている操作履歴１２０に基づいて、入力された操作情報の履歴が関連する履歴であるか否かを判定する。具体的には、操作情報におけるOpenやCheck-inなど、文書の表示や編集などに関係した履歴を判定する。この判定の結果、操作履歴１２０と関係ない履歴である場合は、最終履歴を判定する処理（Ｓ６０４）へ進む。
【００４３】
一方、Ｓ６００の判定の結果、操作履歴１２０と関係がある履歴である場合は、次のユーザＩＤを取得する処理（Ｓ６０１）において、操作情報からユーザのユーザＩＤを取得する。そして、文書ＩＤを取得する処理（Ｓ６０２）において、操作情報からユーザが利用した文書の文書ＩＤを取得する。
【００４４】
続いて、ユーザ／アイテムテーブルを更新する処理（Ｓ６０３）では、Ｓ６０１で取得したユーザＩＤとＳ６０２で取得した文書ＩＤとから、記憶部１１１に格納されたユーザ／アイテムテーブル１２２を更新する。例えば、図４（ａ）に示す例では、該当するユーザの該当する文書（Item）の欄に＋１を加える。このように、ユーザ／アイテムテーブル１２２には、ユーザごとに利用した文書の利用頻度が格納される。
【００４５】
次に、最終履歴を判定する処理（Ｓ６０４）では、操作情報の履歴が最終履歴であるか否かを判定する。この判定の結果、操作情報の履歴が最終履歴である場合は、処理を終了し、最終履歴でない場合は、Ｓ６００に戻る。
【００４６】
図６（ｂ）は、図３（ａ）のＳ３０１におけるアイテム／アイテムテーブル１２３を作成する詳細な処理手順の一例を示すフローチャートである。図６（ｂ）の処理は、関連履歴を判定する処理（Ｓ６１０）、ユーザＩＤを取得する処理（Ｓ６１１）、文書ＩＤを取得する処理（Ｓ６１２）、アイテム／アイテムテーブルを更新する処理（Ｓ６１３）、及び最終履歴を判定する処理（Ｓ６１４）から構成される。
【００４７】
まず、関連履歴を判定する処理（Ｓ６１０）では、同時に利用した文書の履歴があるか否かを判定する。このとき、操作情報の履歴から文書を開いた時間など関連した履歴を抽出し、開いた時間の間隔が閾値以下である文書を同時に利用した文書と判定する。また、文書を開いた時間及び閉じた時間の履歴を抽出し、文書を開いている時間（表示中の状態または編集中の状態の時間）が重なっている場合に同時に利用した文書と判定してもよい。
【００４８】
Ｓ６１０の判定の結果、同時に利用した文書の履歴である場合は、ユーザＩＤを取得する処理（Ｓ６１１）に進み、同時に利用した文書の履歴がない場合は、最終履歴を判定する処理（Ｓ６１４）へ進む。ユーザＩＤを取得する処理（Ｓ６１１）では、操作情報の履歴からユーザＩＤを取得し、ユーザＩＤに対応するユーザごとのアイテム／アイテムテーブル１２３を記憶部１１１から読み出す。
【００４９】
次に、文書ＩＤを取得する処理（Ｓ６１２）では、操作情報の履歴から、同時に利用された文書ＩＤのペアを取得する。そして、アイテム／アイテムテーブルを更新する処理（Ｓ６１３）では、Ｓ６１２で取得した文書ＩＤのペアからアイテム／アイテムテーブル１２３を更新する。例えば、図４（ｂ）に示す例で、Item1とItem4の文書ＩＤのペアを取得した場合は、Item1の行でItem4の列である欄と、Item4の行でItem1の列である欄とに＋１を加える。
【００５０】
最終履歴を判定する処理（Ｓ６１４）では、操作情報の履歴が最終履歴であるか否かを判定する。この判定の結果、操作情報の履歴が最終履歴である場合は、処理を終了し、最終履歴でない場合は、Ｓ６１０に戻る。
【００５１】
以上の処理により、ユーザ／アイテムテーブルとアイテム／アイテムテーブルとが作成される。このように本実施形態によれば、類似するユーザが同時に利用しているアイテムを提示することにより、精度よくユーザの好むアイテムを提示することができ、ユーザの操作の負荷を軽減することができる。
【００５２】
（第２の実施形態）
以下、本発明の第２の実施形態について説明する。第１の実施形態では、操作履歴１２０の情報が少ない場合は、類似するユーザがないと判定される状態が頻発する。また、類似度が低く同じ類似度のユーザが多数存在する状態も少なくない。そこで本実施形態では、この課題を解決するような類似するユーザを決定する方法について説明する。なお、本実施形態に係る文書検索装置の構成については図１と同様であるため、説明は省略する。また、ユーザ／アイテムテーブル１２２及びアイテム／アイテムテーブル１２３を作成する処理も第１の実施形態と同様であるため、説明は省略する。
【００５３】
図７は、ユーザの操作に基づいて文書集合の中から推薦する文書を決定する処理手順の一例を示すフローチャートである。図７の処理は、選択アイテムを取得する処理（Ｓ７００）と、類似するユーザを決定する処理（Ｓ７０２）と、レコメンドスコアを算出する処理（Ｓ７０３）と、レコメンドアイテムを決定する処理（Ｓ７０４）とを有している。る。さらに第１の実施形態とは異なり、図７の処理は、アイテム間の距離を算出する処理（Ｓ７０１）を有する。
【００５４】
まず、選択アイテムを取得する処理（Ｓ７００）は、図３（ｂ）のＳ３１０と同様である。次に、アイテム間の距離を算出する処理（Ｓ７０１）では、Ｓ７００で取得された選択アイテムと各アイテムとのディレクトリツリー上のパスの距離を算出する。比較の対象が選択したアイテム自身の場合は、距離を１とする。また、親のフォルダとの距離を２とし、同じ親のフォルダ内の異なるアイテムとの距離を３とする。同様に、親フォルダと同列のアイテムやフォルダとの距離を４とし、親フォルダと同列のフォルダに格納されているアイテムとの距離を５とする。
【００５５】
例えば、図８（ａ）に示すようなフォルダ構成であり、選択アイテムがItem1であるものとする。この場合、図８（ａ）の各Item中に記載された距離Ｌがアイテム間の距離となる。例えば、選択アイテムであるItem1とItem1自身との距離Ｌは１であり、Item1とItem2との距離Ｌは３であり、Item1とItem4との距離Ｌは５である。
【００５６】
次に、類似するユーザを決定する処理（Ｓ７０２）では、記憶部１１１のプロファイル１２１に格納されているユーザ／アイテムテーブル１２２を用いてログインしたユーザと他の全てのユーザとの類似性を計算する。まず、以下の式（６）により、ログインしたユーザのフォルダ単位頻度ｒx,Siを算出する。
【００５７】
【数６】
2013109734.tif 000008
【００５８】
ここで、ｘはログインしたユーザを示し、ｒx,sは、ログインしたユーザのｓ番目のフォルダの利用頻度を示す。また、Ｌsは、選択アイテムとｓ番目のアイテムとのアイテム間の距離を示し、Ｓiは、ｉ番目のフォルダに格納されているアイテムの集合を示している。
【００５９】
次に、ユーザごとに以下の式（７）を用いてユーザの類似度sim(x,y)を算出する。そして、前述した式（２）を用いてユーザの類似度を正規化する。
【００６０】
【数７】
2013109734.tif 000009
【００６１】
ここで、ｙは比較するユーザを示し、ｒy,Siは、比較するユーザのフォルダ単位頻度ユを示す。さらに、Ｓxyは、フォルダの集合を示している。
【００６２】
前述したように、図８（ａ）に示す例で選択アイテムがItem1である場合、図８（ａ）の各Item中に記載された距離Ｌがアイテム間の距離になる。その結果、図８（ｂ）に示すようなユーザ／アイテムテーブル１２２と類似度の計算結果とが得られ、User1と類似するユーザは類似度が０．９７であるUser2となる。また、選択アイテムがItem4である場合は、アイテム間の距離Ｌは図８（ｃ）に示すものとなり、ユーザ／アイテムテーブル１２２は図９（ｄ）に示すものとなる。この場合、User1と類似するユーザは類似度が０．９８であるUser3となる。
【００６３】
また、選択アイテムがItem9である場合は、アイテム間の距離Ｌは図９（ａ）に示すものとなり、ユーザ／アイテムテーブル１２２は図９（ｂ）に示すものとなる。この場合、User1と類似するユーザは類似度が０．７であるUser2及びUser3となる。同様に、選択アイテムとしてfolder1を選択した場合は、各アイテム間の距離Ｌは図９（ｃ）に示すものとなり、ユーザ／アイテムテーブル１２２は図９（ｄ）に示すものとなる。この場合、User1と類似するユーザは類似度が０．９６であるUser2となる。
【００６４】
以上のような例では、図５（ｂ）に示すような関係を推定し、複数のグループに所属したユーザがどちらに関連したことを現在行っているかを、選択したアイテムによって動的に推定している。また、Itemではなくfolderを選択している場合でも、User1が利用している各アイテムのアイテム間の距離を利用することにより各アイテムの関連性を推定できるため、有効である。
【００６５】
例えば、図１０（ａ）に示すようなディレクトリツリーでUser1が利用しているItem1、Item3及びItem4からのアイテム間の距離で割った値の総和を利用頻度とする場合、図１０（ｂ）に示すような利用頻度となる。そして、前述の式（６）及び式（７）により類似度を計算すると、User1に対するUser2の類似度は０．７４であり、User3の類似度は０．６８となる。したがって、類似度の閾値を０．６７に設定した場合、User2及びUser3が類似するユーザと決定することができる。
【００６６】
次のレコメンドスコアを算出する処理（Ｓ７０３）及びレコメンドアイテムを決定する処理（Ｓ７０４）についてはそれぞれ、図３（ｂ）のＳ３１２、Ｓ３１３と同様である。
【００６７】
以上のようにアイテム間の距離から類似度を求め、選択アイテムから現在の状況を推測することにより、選択したフォルダや文書がどのグループでよく利用されているかを動的に推定してレコメンデーションの精度を向上させることができる。したがって、ユーザの操作性を向上させることできる。
【００６８】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００６９】
１１１  記憶部
１１３  入力部
１１５  データ処理部
１１７  ネットワークＩ／Ｆ部
１２０  操作履歴
１２１  プロファイル
１２２  ユーザ／アイテムテーブル
１２３  アイテム／アイテムテーブル
【図１】
2013109734.tif 000010
【図２】
2013109734.tif 000011
【図３】
2013109734.tif 000012
【図４】
2013109734.tif 000013
【図５】
2013109734.tif 000014
【図６】
2013109734.tif 000015
【図７】
2013109734.tif 000016
【図８】
2013109734.tif 000017
【図９】
2013109734.tif 000018
【図１０】
2013109734.tif 000019