(57)【要約】【課題】ユーザが望むアイテムが確実にレコメンドされるようにし、レコメンドアイテムに効率的にアクセス可能にすること。【解決手段】ユーザによるアイテムの選択に応じて、レコメンド結果算出部３１３が、レコメンド情報管理部３１４内のレコメンド情報に基づき、前記ユーザに推薦するレコメンド文書のリストをレコメンド結果として算出し、レコメンド結果更新部３１６が、該レコメンド結果を、優先度レベル情報管理部３１７内の優先度レベル情報に基づいて更新し、ＵＩ表示部３０２を介して前記ユーザに提示する。また、優先度レベル制御部３１５が、提示されたレコメンド結果に含まれるレコメンド文書の優先度の前記ユーザによる設定を、ＵＩ入力部３０１を介して受け付け、該設定された優先度を優先度レベル情報管理部３１７内の優先度レベル情報に反映し、以後この優先度レベル情報を用いてレコメンド結果が更新されてユーザに提示されるようにする。【選択図】図３
2014119945.tif 000002
【特許請求の範囲】
【請求項１】
複数のアイテムからユーザに推薦する１又は複数のレコメンドアイテムを、予め取得されている前記ユーザおよび他のユーザの嗜好情報に基づいて特定し、該特定したレコメンドアイテムのリストを生成するレコメンド手段と、
前記各ユーザに対応して設定される前記各レコメンドアイテムの優先度を記憶可能な記憶手段と、
前記記憶手段に記憶される前記ユーザに対応する前記各レコメンドアイテムの優先度に基づいて、前記レコメンドアイテムのリストを更新する更新手段と、
前記更新手段により更新されたレコメンドアイテムのリストを前記ユーザに提示する提示手段と、
前記提示手段で提示されたリストに含まれるレコメンドアイテムの前記ユーザに対応する優先度の設定を受け付ける設定手段と、
前記設定手段により受け付けた優先度を前記記憶手段に反映する反映手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記更新手段は、前記ユーザに対応する優先度が前記記憶手段に記憶されている各レコメンドアイテムのうち、前記レコメンドアイテムのリストに含まれていないレコメンドアイテムを、前記レコメンドアイテムのリストに追加することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記更新手段は、前記ユーザに対応する所定の優先度より高い優先度が前記記憶手段に記憶されている各レコメンドアイテムのうち、前記レコメンドアイテムのリストに含まれていないアイテムを、前記レコメンドアイテムのリストに追加することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記更新手段は、前記ユーザに対応する所定の優先度より低い優先度が前記記憶手段に記憶されているレコメンドアイテムを、前記レコメンドアイテムのリストに含めない制御を行うことを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記更新手段は、前記記憶手段に記憶される前記ユーザに対応する前記レコメンドアイテムの優先度に基づいて、前記レコメンドアイテムのリストをソートすることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記レコメンドアイテムのリストは、前記レコメンドアイテムの推薦順を特定可能なものであり、
前記更新手段は、前記優先度が等しいレコメンドアイテムについては、前記推薦順にソートすることを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記レコメンド手段は、前記ユーザにより前記いずれかのアイテムが選択された場合に、前記ユーザおよび前記選択されたアイテムの組に対応して推薦するレコメンドアイテムのリストを生成するものであり、
前記記憶手段は、前記各ユーザおよび前記各レコメンドアイテムの組に対応して設定される前記各アイテムの優先度を記憶可能であり、
前記更新手段は、前記記憶手段に記憶される前記ユーザおよび前記選択されたアイテムの組に対応する各レコメンドアイテムの優先度に基づいて、前記レコメンドアイテムのリストを更新するものであり、
前記設定手段は、前記ユーザおよび前記選択されたアイテムの組に対応する、前記提示手段で提示されたリストに含まれるレコメンドアイテムの優先度の前記ユーザによる設定を受け付けることを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
情報処理装置の制御方法であって、
複数のアイテムからユーザに推薦する１又は複数のレコメンドアイテムを、予め取得されている前記ユーザおよび他のユーザの嗜好情報に基づいて特定し、該特定したレコメンドアイテムのリストを生成するレコメンドステップと、
前記各ユーザに対応して設定される前記各レコメンドアイテムの優先度を記憶可能な記憶手段に記憶される前記ユーザに対応する前記各レコメンドアイテムの優先度に基づいて、前記レコメンドアイテムのリストを更新する更新ステップと、
前記更新ステップにより更新されたレコメンドアイテムのリストを前記ユーザに提示する提示ステップと、
前記提示ステップで提示されたリストに含まれるレコメンドアイテムの前記ユーザに対応する優先度の設定を受け付ける設定ステップと、
前記設定ステップにより受け付けた優先度を前記記憶手段に反映する反映ステップと、
を有することを特徴とする情報処理装置の制御方法。
【請求項９】
コンピュータを、請求項１乃至７のいずれか１項に記載された手段として機能させるためのプログラム。
【請求項１０】
コンピュータを、請求項１乃至７のいずれか１項に記載された手段として機能させるためのプログラムをコンピュータ読み取り可能に記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザにアイテムのレコメンドを提示する制御に関する。
【背景技術】
【０００２】
近年、ＥＣサイトに代表されるように、アイテムのレコメンドが盛んに行われている。なお、ＥＣとは、電子商取引（Electronic commerce）を示す。ＥＣサイトでは、商品をレコメンドの対象とし、ユーザ自身の商品の購入履歴を基にユーザ自身の商品の嗜好を算出し、又、他者の商品の購入履歴を基に他者の嗜好を算出している。そして、ＥＣサイトでは、上記算出したユーザ自身および他者の嗜好からユーザにレコメンドする商品を決定している。
【０００３】
例えば、商品Ａのページにアクセスした際に、「この商品（商品Ａ）を購入した人はこんな商品も購入しています」といったような協調フィルタリングを利用したレコメンドが行なわれている。
【０００４】
一般的に、協調フィルタリングを利用したレコメンドの効果としては、ユーザ自身の嗜好のみならず他者の嗜好も考慮してアイテムがレコメンドされるため、ユーザ自身が今まで知らなかったアイテムを知ることができる。また、アイテムがレコメンドされることによって、ユーザ自身がアイテムを探す手間を減らすことができる。
【０００５】
レコメンドされるアイテム（以下、レコメンドアイテム）の対象がオフィスで利用される文書である場合にも、商品のレコメンドと同様に上記の効果が期待できる。
文書は繰り返し利用したり、複数の文書を同時に利用したりすることがある。そのため、文書がレコメンドされることにより、ユーザが利用したい文書を探す手間を軽減し、効率的に文書にアクセスできることが期待できる。
【０００６】
上記の効果が期待できる一方で、一般的に、操作履歴（商品の購入履歴）から算出されたユーザ自身の嗜好や他者の嗜好は潜在的なものであり、結果としてレコメンドアイテムは必ずしもユーザ自身にとって必要とされるアイテムであるとは限らなかった。
【０００７】
そこで、特許文献１では、ユーザ自身のアイテムの嗜好からアイテムをレコメンドするシステムにおいて、アイテムに対するユーザ自身の評価（好き、嫌い等）をシステムにフィードバックする技術が提案されている。ユーザ自身の評価により、アイテムに対するユーザの顕在的な評価をユーザ自身の嗜好に反映することで、よりユーザの嗜好に合致したアイテムがレコメンドされやすくなることが期待できる。
【０００８】
また、例えば、インターネットの通販サイトのように、ユーザ自身や他者の嗜好からアイテムをレコメンドするシステムには、アイテムに対するユーザの顕在的な評価（よい、既に持っている、興味がない等）をシステム側にフィードバックし、ユーザの嗜好に反映しているものがある。これにより、特許文献１と同様に、よりユーザの嗜好に合致したアイテムがレコメンドされやすくなることが期待できる。また、このようなシステムでは、高評価したアイテムが、高評価したアイテムの一覧リストにまとめられるものがある。これにより、後で購入したい場合等に、ユーザは、その高評価したアイテムの一覧リストからアイテムを確認することができる。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００６−３３９７９４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかし、従来技術においては、ユーザが高評価したアイテムが必ず優先的にレコメンドされるとは限らなかった。
例えば、アイテムＡに対してレコメンドされたアイテムＢを高評価した場合には、その後、その評価をユーザの嗜好情報に反映してレコメンドが行われるようになる。よって、その後のレコメンドにおいて、アイテムＢおよびアイテムＢと関連度の高い他のアイテムがレコメンドされる傾向が評価前よりも高くなる。しかし、他者の嗜好がレコメンド結果に影響を及ぼすため、そのユーザに対して、確実にアイテムＡに対してアイテムＢが優先的にレコメンドされるというわけではない。また、高評価したアイテムＢは、高評価したアイテムの一覧リストの中に追加されることにはなるが、高評価したアイテムが増えると、高評価したアイテムの一覧リストの中から所望のアイテムＢを探す手間が発生する。
【００１１】
このように、従来では、特にレコメンドされるアイテムの対象が文書であり、レコメンドを利用して関連する文書に効率的にアクセスしたい場合、レコメンドしてほしい文書が確実にレコメンドされないという課題があった。
【００１２】
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、ユーザ自身や他者の嗜好による潜在的な観点によるレコメンドを利用しつつも、ユーザの設定したレコメンドアイテムに対する優先度という顕在的な観点も考慮することで、その優先度に応じてユーザが望むアイテムが確実にレコメンドされるようになるため、レコメンドアイテムに効率的にアクセスできる仕組みを提供することである。
【課題を解決するための手段】
【００１３】
本発明は、複数のアイテムからユーザに推薦する１又は複数のレコメンドアイテムを、予め取得されている前記ユーザおよび他のユーザの嗜好情報に基づいて特定し、該特定したレコメンドアイテムのリストを生成するレコメンド手段と、前記各ユーザに対応して設定される前記各レコメンドアイテムの優先度を記憶可能な記憶手段と、前記記憶手段に記憶される前記ユーザに対応する前記各レコメンドアイテムの優先度に基づいて、前記レコメンドアイテムのリストを更新する更新手段と、前記更新手段により更新されたレコメンドアイテムのリストを前記ユーザに提示する提示手段と、前記提示手段で提示されたリストに含まれるレコメンドアイテムの前記ユーザに対応する優先度の設定を受け付ける設定手段と、前記設定手段により受け付けた優先度を前記記憶手段に反映する反映手段と、を有することを特徴とする。
【発明の効果】
【００１４】
本発明によれば、ユーザ自身や他者の嗜好による潜在的な観点によるレコメンドを利用しつつも、ユーザの設定したレコメンドアイテムに対する優先度という顕在的な観点も考慮することで、その優先度に応じてユーザが望むアイテムが確実にレコメンドされるようになるため、レコメンドアイテムに効率的にアクセスすることができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施例を示す文書レコメンドシステムの構成の一例を示す概略図である。
【図２】本発明の一実施例を示す文書レコメンドシステムを構成する各ＰＣのハードウェア構成の一例を示すブロック図である。
【図３】本発明の文書レコメンドシステムのソフトウェアモジュール構成の一例を示す図である。
【図４Ａ】本発明の文書レコメンドシステムにおけるクライアントＵＩの一例を示す図である。
【図４Ｂ】本発明の文書レコメンドシステムにおけるクライアントＵＩの一例を示す図である。
【図４Ｃ】本発明の文書レコメンドシステムにおけるクライアントＵＩの一例を示す図である。
【図５】優先度レベル情報管理部３１７における優先度レベル情報の管理構成の一例を示す図である。
【図６】本発明の文書レコメンドシステムにおける優先度レベル情報の設定処理の一例を示すフローチャートである。
【図７】本発明の文書レコメンドシステムの実施例１におけるレコメンド結果の更新処理の一例を示すフローチャートである。
【図８】レコメンド結果算出部３１３が算出したレコメンド結果の一例を示す図である。
【図９】本発明の文書レコメンドシステムの実施例２におけるレコメンド結果の更新処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１６】
以下、本発明を実施するための形態について図面を用いて説明する。本実施形態では、レコメンドアイテムの対象を文書（以下、レコメンド文書）として説明する。なお、本発明は文書以外のアイテム（商品等）がレコメンドの対象であるレコメンドシステムにも適応することが可能である。
【実施例１】
【００１７】
本発明の実施例１を図１〜図８を用いて説明する。
図１は、本発明の一実施例を示す文書レコメンドシステムの構成の一例を示す概略図である。
図１に示すように、本実施例のシステムには、クライアントＰＣ１０１と、文書レコメンドサーバＰＣ１０２が存在し、それぞれがインターネットやＬＡＮ等のネットワーク１０３を介して接続されている。
【００１８】
なお、図１には図示されていないが、クライアントＰＣ１０１の他にもクライアントＰＣがネットワーク１０３に接続されていても構わない。また、文書レコメンドサーバＰＣ１０２は、文書管理機能を有する文書管理サーバＰＣとレコメンド機能を有するレコメンドサーバＰＣのように、複数のサーバで構成されていても構わない。
【００１９】
＜ハードウェア構成＞
図２は、本発明の一実施例を示す文書レコメンドシステムを構成する各ＰＣ（クライアントＰＣ１０１、文書レコメンドサーバＰＣ１０２）のハードウェア構成の一例を示すブロック図である。図示されるハードウェア構成図は、一般的な情報処理装置のハードウェア構成図に相当するものとし、本実施形態の各ＰＣは一般的な情報処理装置のハードウェア構成を適用できる。
【００２０】
図２において、ＣＰＵ２０１は、ＲＯＭ２０３のプログラムＲＯＭ或いは外部メモリ２１０からＲＡＭ２０２にロードされた各種プログラム（ＢＩＯＳ、ＯＳ、アプリケーション等のプログラム）を実行する。ここで、ＢＩＯＳとは、ベーシックインプット／アウトプットシステムの略語である。また、ＯＳとはコンピュータ上で稼働するオペレーティングシステムの略語であり、以下オペレーティングシステムのことをＯＳと呼ぶ。後述するフローチャートの各処理は、このＣＰＵ２０１により実行されるプログラムによって実現される。
【００２１】
ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＲＯＭ２０３は、プログラムやデータ等を記憶する。
キーボードコントローラ２０４は、キーボード２０８や図示しないマウスなどのポインティングデバイスからのキー入力を制御する。ディスプレイコントローラ２０５は、表示用デバイスであるディスプレイ２０９の表示を制御する。
【００２２】
ディスクコントローラ２０６は、各種データを記憶するＨＤ（ハードディスク）、ＦＤ（フレキシブルディスク）、ＳＳＤ（Solid State Drive）等の外部メモリ２１０におけるデータアクセスを制御する。外部メモリ２１０には、ＯＳやアプリケーション等のプログラムが格納されると共に、ＯＳによりファイルシステムが構築され、ＯＳの管理下で各種ファイルが格納される。
【００２３】
ＮＩＣ２０７は、ネットワークインターフェースであり、ネットワーク１０３に接続されて、ネットワークに接続された他の機器との通信制御処理を実行する。相互接続バス２１１は、ＣＰＵ２０１により各ブロック間の通信を仲介する。
【００２４】
＜文書レコメンドシステムの構成＞
図３は、本発明の一実施例を示す文書レコメンドシステムのソフトウェアモジュール構成の一例を示す図である。
【００２５】
図３に示すように、本実施例の文書レコメンドシステムは、クライアントＰＣ１０１のソフトウェアモジュールと、文書レコメンドサーバＰＣ１０２のソフトウェアモジュールを有する。
【００２６】
まず、クライアントＰＣ１０１のソフトウェアモジュールについて説明する。
クライアントＰＣ１０１の各ソフトウェアモジュールは、クライアントＰＣ１０１のＣＰＵ２０１が、外部メモリ２１０にコンピュータ読み取り可能に記録されているプログラムをメモリ（ＲＡＭ２０２）にロードして実行することにより実現されるものである。
【００２７】
ＵＩ入力部３０１とＵＩ表示部３０２は、ユーザインターフェース（ＵＩ）であり、例えばＷｅｂブラウザ等からアクセスできる。
ＵＩ入力部３０１は、ユーザから文書やレコメンド結果の取得や操作（表示や優先度レベル設定）の要求を受け取り、文書レコメンドサーバＰＣ１０２にその要求を送信する。
ＵＩ表示部３０２は、ＵＩ入力部３０１で受け取ったユーザの要求に対して文書レコメンドサーバＰＣ１０２がクライアントＰＣ１０１に返した応答に応じて、ＵＩに情報を表示する。
【００２８】
次に、文書レコメンドサーバＰＣ１０２のソフトウェアモジュールについて説明する。
文書レコメンドサーバＰＣ１０２の各ソフトウェアモジュールは、文書レコメンドサーバＰＣ１０２のＣＰＵ２０１が、外部メモリ２１０にコンピュータ読み取り可能に記録されているプログラムをメモリ（ＲＡＭ２０２）にロードして実行することにより実現されるものである。
【００２９】
３１１は文書データ制御部であり、３１２は文書データ管理部である。文書データ制御部３１１は、クライアントＰＣ１０１から受信した文書に関するデータの取得や操作要求に応じて、文書データ管理部３１２で管理されている文書に関するデータの取得や操作を行う。文書データ管理部３１２は、文書データを記憶管理する。
【００３０】
３１３はレコメンド結果算出部であり、３１４はレコメンド情報管理部である。レコメンド結果算出部３１３は、クライアントＰＣ１０１から受信したレコメンド結果の取得要求に応じて、レコメンド情報管理部３１４のデータを参照し、レコメンド結果を算出する。レコメンド情報管理部３１４は、レコメンドに関するデータを記憶管理する。
【００３１】
なお、上記レコメンド結果取得要求には、レコメンド結果取得要求を行ったユーザ（対象ユーザ）の識別情報、及び、ユーザが選択しているアイテム（対象アイテム（本実施例では、対象文書データ））の識別情報が含まれている。また、レコメンド情報管理部３１４は、ユーザ毎の嗜好情報（本実施例で、文書データ管理部３１２に記憶される各文書データに対する操作履歴等）を記憶管理する。さらに、レコメンド情報管理部３１４は、ユーザ毎に特定のアイテム同士が一定時間以内にアクセスされた回数の情報などをも記憶管理するものでもよい。
【００３２】
また、レコメンド結果算出部３１３は、前記レコメンド結果取得要求に含まれる対象ユーザの識別情報、対象アイテムの識別情報、及び、レコメンド情報管理部３１４に記憶される対象ユーザの履歴情報および他のユーザの履歴情報などを用いて、前記文書データ管理部３１２に記憶される各文書データについて、前記ユーザおよび前記選択されたアイテムの組に対応するレコメンドスコアを算出する。さらに、レコメンド結果算出部３１３は、算出したレコメンドスコアが上位の文書データ（レコメンド文書）とレコメンドスコアのリストを、前記ユーザおよび前記選択されたアイテムの組に対して推薦するレコメンド結果として生成する。
なお、本発明において、レコメンド結果の算出方法およびレコメンド情報管理部３１４のデータの記録方法については、特にその形式は問わないため説明は省略するが、レコメンド結果算出部３１３は、アイテムに対するユーザ毎の操作履歴などからユーザ毎の嗜好を学習し、レコメンド結果取得要求したユーザ自身の嗜好情報や他ユーザの嗜好情報を用いて、所定の算出方法により、レコメンドスコアを算出し、レコメンドスコアが高い順にレコメンドアイテムをレコメンドするためのレコメンド結果（レコメンドアイテムのリスト）を生成するものとする。
【００３３】
３１５は優先度レベル制御部であり、３１６はレコメンド結果更新部であり、３１７は優先度レベル情報管理部である。優先度レベル制御部３１５は、クライアントＰＣ１０１から受信したレコメンド結果のレコメンド文書の優先度レベルの操作要求に応じて、優先度レベル情報管理部３１７に、その情報を反映する。なお、レコメンド文書の優先度レベルの操作については後述する。レコメンド結果更新部３１６は、優先度レベル情報管理部３１７を参照して、レコメンド結果算出部３１３が算出したレコメンド結果を更新し、該更新したレコメンド結果をクライアントＰＣ１０１に送信する。優先度レベル情報管理部３１７は、後述する図５に例示するような優先度レベル情報を記憶管理する（記憶可能である）。
【００３４】
図４Ａ〜図４Ｃは、本発明の文書レコメンドシステムにおけるクライアントＵＩの一例を示す図である。
以下、図４Ａを用いて説明する。
文書管理クライアントＵＩ４０１は、現在文書レコメンドシステムにログインしているユーザＡ４０２（対象ユーザ）が、文書Ａ４０３（対象文書）を選択したときの状態である。そして、レコメンド結果表示領域４０４には、レコメンド処理情報４０５や、レコメンド結果４０６が表示されている。
【００３５】
レコメンド処理情報４０５は、「「文書Ａ」に対する２０１２／０６／０１ １０：００：００」時点のレコメンド結果であることを示している。また、レコメンド結果４０６には、文書Ａ４０３に対する５つのレコメンド文書（文書Ｂ、文書Ｃ、文書Ｄ、文書Ｅ、文書Ｆ）が提示されている。
【００３６】
レコメンド結果４０６に提示される各レコメンド文書には、文書名等の文書を示す情報４０７と、レコメンド結果算出部３１３が算出したレコメンドスコア４０８の値が表示される。
【００３７】
さらに、これら４０７、４０８の情報とともに、各レコメンド文書には、優先度レベルを設定する優先度レベルプラスボタン４０９、優先度レベルマイナスボタン４１０、優先度レベル領域４１１が表示されている。
【００３８】
優先度レベルプラスボタン４０９が押下されることで、現在のレコメンドトリガーすなわち文書Ａに対するレコメンド時におけるレコメンド文書として、文書Ｂの優先度が１上がる（インクリメントされる）。一方、優先度レベルマイナスボタン４１０が押下されることで、現在のレコメンドトリガーすなわち文書Ａに対するレコメンド時におけるレコメンド文書として、文書Ｂの優先度が１下がる（デクリメントされる）。
このように、文書管理クライアントＵＩ４０１では、優先度レベルプラスボタン４０９や優先度レベルマイナスボタン４１０により、ユーザ（ユーザＡ）および該ユーザが選択したアイテム（文書Ａ）の組に対応する、提示されたレコメンド結果に含まれるレコメンドアイテム（レコメンド文書）の優先度の、前記ユーザによる設定を受け付けることができる。
【００３９】
優先度レベルプラスボタン４０９や優先度レベルマイナスボタン４１０によって、設定された優先度レベルの値が、優先度レベル領域４１１に表示される。レコメンド結果の初期状態では、各レコメンド文書の優先度レベル４１１の値は"±０"である。そのため、初期状態では、各レコメンド文書は、レコメンドスコア４０８が高い順に提示される。レコメンド結果４０６は、ユーザ自身や他者の文書の操作傾向から算出された嗜好に基づいてレコメンドされたものである。
【００４０】
図５は、優先度レベル情報管理部３１７における優先度レベル情報の管理構成の一例を示す図である。優先度レベル情報管理部３１７は、例えば、優先度レベル情報テーブル５００のようなテーブルで優先度レベル情報を記憶可能に管理する。
【００４１】
優先度レベル情報テーブル５００には、少なくともユーザ５０１、レコメンドトリガー５０２、レコメンド文書５０３、優先度レベル５０４の情報が記録されている。即ち、優先度レベル情報は、少なくともユーザ５０１、レコメンドトリガー５０２、レコメンド文書５０３、優先度レベル５０４の情報を含む。
【００４２】
ユーザ５０１には、ユーザを識別する情報が格納される。レコメンドトリガー５０２には、優先度レベル設定対象のレコメンドトリガーを識別する情報が格納される。レコメンド文書５０３には、優先度レベル設定対象のレコメンド文書を識別する情報が格納される。優先度レベル５０４には、ユーザによって設定された優先度レベルの情報が格納される。
【００４３】
例えば、図４Ｂのように、ユーザＡに対する文書Ａのレコメンド結果において、ユーザＡが、各レコメンド文書に対して、文書Ｂは"−１"、文書Ｃは、"＋１"、文書Ｅは、"＋１"、文書Ｆは"＋２"という優先度レベルを設定したとする。このように優先度レベルが設定されたことで、優先度レベル情報テーブル５００の１〜４行目のようなレコードが記録されて、現在の各レコメンド文書の優先度レベル５０４の値が、各優先度レベル４２１に表示される。なお、本実施例では、優先度レベル情報テーブル５００には、優先度レベル５０４の値が現在"±０"のレコードは記録しない。ただし、優先度レベル情報テーブル５００に、優先度レベル５０４の値が現在"±０"のレコードも記録する構成も本発明に含まれるものとする。
【００４４】
さらに、ユーザＢが、例えば、ユーザＢに対する文書Ａのレコメンド結果において、レコメンド文書Ｄに対して"＋１"という優先度レベルを設定すれば、優先度レベル情報テーブル５００の５行目のようなレコードが記録される。
【００４５】
さらに、ユーザＡが、ユーザＡに対する文書Ｚのレコメンド結果において、レコメンド文書Ｘに対して"＋１"という優先度レベルを設定すれば、優先度レベル情報テーブル５００の６行目のようなレコードが記録される。
このように、優先度レベル情報テーブル５００は、各ユーザ（ユーザ５０１）および各アイテム（レコメンドトリガー５０２）の組に対応して設定される各レコメンドアイテム（レコメンド文書５０３）の優先度レベル（５０４）を記憶可能である。
【００４６】
以下、本発明の文書レコメンドシステムにおける各処理の詳細をフローチャートを用いて説明する。
＜優先度レベル情報の設定処理＞
以下、図５、図６を用いて、優先度レベル情報の設定処理について説明する。
図６は、本発明の文書レコメンドシステムにおける優先度レベル情報の設定処理の一例を示すフローチャートである。なお、図６に示すクライアントＰＣ１０１側の処理は、クライアントＰＣ１０１のソフトウェアモジュールにより実行される。即ち、これらの処理は、クライアントＰＣ１０１のＣＰＵ２０１が、外部メモリ２１０にコンピュータ読み取り可能に記録されているプログラムをメモリ（ＲＡＭ２０２）にロードして実行することにより実現される。また、図６に示す文書レコメンドサーバＰＣ１０２の処理は、文書レコメンドサーバＰＣ１０２のソフトウェアモジュールにより実行される。即ち、これらの処理は、文書レコメンドサーバＰＣ１０２のＣＰＵ２０１が、外部メモリ２１０にコンピュータ読み取り可能に記録されているプログラムをメモリ（ＲＡＭ２０２）にロードして実行することにより実現される。
【００４７】
クライアントＰＣ１０１のＵＩ入力部３０１は、文書管理クライアントＵＩ４０１上における、ユーザによる優先度レベル設定情報の設定操作を検知すると、ステップＳ６０１の処理を実行する。
【００４８】
ステップＳ６０１では、ＵＩ入力部３０１は、ユーザが入力した優先度レベル設定情報を、文書レコメンドサーバＰＣ１０２の優先度レベル制御部３１５に送信する。なお、優先度レベル設定情報には、優先度レベル情報テーブル５００に記録される４つの情報（５０１〜５０４）が含まれる。
【００４９】
ステップＳ６０２において、文書レコメンドサーバＰＣ１０２の優先度レベル制御部３１５は、上記ステップＳ６０１でＵＩ入力部３０１が送信した優先度レベル設定情報を受信すると、ステップＳ６０３に処理を進める。
【００５０】
ステップＳ６０３では、優先度レベル制御部３１５は、優先度レベル情報テーブル５００に既に、上記ステップＳ６０２で受信した優先度レベル設定情報に関するレコードが記録されているか否かを判定する。
【００５１】
そして、上記ステップＳ６０２で受信した優先度レベル設定情報に関するレコードが記録されていないと判定した場合(Ｓ６０３で「ない」の場合)、優先度レベル制御部３１５は、ステップＳ６０４に処理を進める。
【００５２】
ステップＳ６０４では、優先度レベル制御部３１５は、上記ステップＳ６０２で受信した優先度レベル設定情報を、新たなレコードとして優先度レベル情報テーブル５００に記録し（ただし、優先度レベル５０４の値を"±０"とする）、ステップＳ６０５に処理を進める。
【００５３】
一方、上記ステップＳ６０２で受信した優先度レベル設定情報に関するレコードが既に記録されていると判定した場合(Ｓ６０３で「ある」の場合)、優先度レベル制御部３１５は、そのままステップＳ６０５に処理を進める。
【００５４】
ステップＳ６０５では、優先度レベル制御部３１５は、上記ステップＳ６０２で受信した優先度レベル設定情報の優先度レベル５０４の値が"プラス"か、あるいは"マイナス"であるかを判定する。
【００５５】
そして、上記ステップＳ６０２で受信した優先度レベル設定情報の優先度レベル５０４の値が"プラス"である（所定の優先度より高い）と判定した場合(Ｓ６０５で「プラス」の場合)、優先度レベル制御部３１５は、ステップＳ６０６に処理を進める。
【００５６】
ステップＳ６０６では、優先度レベル制御部３１５は、優先度レベル情報テーブル５００に既に記録されている、上記ステップＳ６０２で受信した優先度レベル設定情報に関するレコードの優先度レベル５０４の値を１つ上げ（インクリメントし）、ステップＳ６０８に処理を進める。
【００５７】
一方、上記ステップＳ６０２で受信した優先度レベル設定情報の優先度レベル５０４の値が"マイナス"である（所定の優先度より低い）と判定した場合(Ｓ６０５で「マイナス」の場合)、優先度レベル制御部３１５は、ステップＳ６０７に処理を進める。
【００５８】
ステップＳ６０７では、優先度レベル制御部３１５は、優先度レベル情報テーブル５００に既に記録されている、上記ステップＳ６０２で受信した優先度レベル設定情報に関するレコードの優先度レベル５０４の値を１つ下げ（デクリメントし）、ステップＳ６０８に処理を進める。
【００５９】
ステップＳ６０８では、優先度レベル制御部３１５は、上記ステップＳ６０６あるいは上記ステップＳ６０７で優先度レベル５０４の値を変更した優先度レベル情報テーブル５００のレコードの優先度レベル５０４の値を確認する。
【００６０】
そして、上述の値を変更した優先度レベル情報テーブル５００のレコードの優先度レベル５０４の値が"プラス"あるいは"マイナス"であると判定した場合(Ｓ６０８で「通常レベル以外」の場合)、優先度レベル制御部３１５は、そのまま本フローチャートの処理を終了する。
【００６１】
一方、上述の値を変更した優先度レベル情報テーブル５００のレコードの優先度レベル５０４の値が"±０"であると判定した場合(Ｓ６０８で「通常レベル（±０）」の場合)、優先度レベル制御部３１５は、ステップＳ６０９へ処理を進める。
【００６２】
ステップＳ６０９では、優先度レベル制御部３１５は、上記ステップＳ６０８で優先度レベル５０４の値が"±０"であると判定した優先度レベル情報テーブル５００のレコードを削除し、本フローチャートの処理を終了する。
【００６３】
以上のように、提示されたレコメンド結果に含まれるレコメンド文書の優先度レベルのユーザによる設定を受け付け、該受け付けたユーザ設定の優先度レベルを、優先度レベル情報管理部３１７に記憶される優先度レベル情報に反映（フィードバック）し、以後、この優先度レベル情報を用いて、レコメンド結果が更新されて提示されることとなる。
【００６４】
＜レコメンド結果の更新処理（実施例１）＞
以下、図４Ｃ、図５、図７、図８を用いて、レコメンド結果の更新処理（実施例１）について説明する。
【００６５】
図７は、本発明の文書レコメンドシステムの実施例１におけるレコメンド結果の更新処理の一例を示すフローチャートである。なお、図７に示すクライアントＰＣ１０１側の処理は、クライアントＰＣ１０１のソフトウェアモジュールが実行する。即ち、これらの処理は、クライアントＰＣ１０１のＣＰＵ２０１が、外部メモリ２１０にコンピュータ読み取り可能に記録されているプログラムをメモリ（ＲＡＭ２０２）にロードして実行することにより実現される。また、図７に示す文書レコメンドサーバＰＣ１０２の処理は、文書レコメンドサーバＰＣ１０２のソフトウェアモジュールが実行する。即ち、これらの処理は、文書レコメンドサーバＰＣ１０２のＣＰＵ２０１が、外部メモリ２１０にコンピュータ読み取り可能に記録されているプログラムをメモリ（ＲＡＭ２０２）にロードして実行することにより実現される。
【００６６】
以下の説明では、「ユーザＡ」が、図４Ｃのように、「２０１２／０６／１５ １５：００：３０」に、「文書Ａ」を選択したときのレコメンド処理を例として説明する。また、その時点での優先度レベル情報テーブル５００には、１〜６行目のレコードが記録されているものとする。
【００６７】
クライアントＰＣ１０１のＵＩ入力部３０１は、文書管理クライアントＵＩ４０１上における、ユーザによる文書選択操作を検知すると、ステップＳ７０１の処理を実行する。
ステップＳ７０１では、ＵＩ入力部３０１は、ユーザ（ユーザＡ）が選択した文書（文書Ａ）に対するレコメンド結果の取得のリクエスト（ユーザ名（ユーザＡ）、レコメンドトリガー（文書Ａ）の情報を含む）を、文書レコメンドサーバＰＣ１０２のレコメンド結果算出部３１３に送信する。
【００６８】
ステップＳ７０２において、文書レコメンドサーバＰＣ１０２のレコメンド結果算出部３１３は、上記ステップＳ７０１でＵＩ入力部３０１が送信したレコメンド結果の取得のリクエストを受信すると、ステップＳ７０３に処理を進める。
【００６９】
ステップＳ７０３では、レコメンド結果算出部３１３は、上記ステップＳ７０２で受信したリクエスト（対象ユーザとレコメンドトリガーの組を含む）に対応するレコメンド結果を算出（生成）する。ここでは、図８に示すレコメンド結果８０１を算出（生成）したとして説明する。
【００７０】
図８は、レコメンド結果算出部３１３が算出したレコメンド結果の一例を示す図である。
図８に示すように、レコメンド結果は、少なくとも、レコメンド文書を識別する識別子（図８では文書名）と、推薦順を特定可能な情報（本実施例ではレコメンドスコア）の情報を含む。レコメンド結果８０１に含まれる各レコメンド文書は、レコメンドスコアが高い順（推薦順）に文書Ｂ、文書Ｅ、文書Ｄ、文書Ｃ、文書Ｙとなっている。
【００７１】
以下、図７のフローチャートの説明に戻る。
次に、ステップＳ７０４において、レコメンド結果更新部３１６は、上記ステップＳ７０３でレコメンド結果算出部３１３により算出されたレコメンド結果８０１を取得する。そして、レコメンド結果更新部３１６は、該レコメンド結果８０１の各レコード、即ち、各レコメンド文書（文書Ｂ、文書Ｅ、文書Ｄ、文書Ｃ、文書Ｙ）を処理の対象として、それぞれにステップＳ７０５〜Ｓ７０９の処理をそれぞれ実行するように制御する。レコメンド結果更新部３１６は、レコメンド結果８０１から未処理のレコードのレコメンド文書を１つ取得し（以下、処理中のレコメンド文書）、ステップＳ７０５に処理を進める。なお、ここでは、「レコメンドスコア」の高い順に、処理中のレコメンド文書を決定するものとする。
【００７２】
まず、ステップＳ７０５において、レコメンド結果更新部３１６は、上記ステップＳ７０２で受信したリクエストの情報（ユーザ名、レコメンドトリガー）と、処理中のレコメンド文書に一致するデータが、優先度レベル情報テーブル５００（図５）に記録されているか否かを判定する。
【００７３】
そして、リクエストの情報と処理中のレコメンド文書に一致するデータが優先度レベル情報テーブル５００（図５）に記録されていると判定した場合(Ｓ７０５で「はい」の場合)、レコメンド結果更新部３１６は、ステップＳ７０６に処理を進める。
【００７４】
ステップＳ７０６では、レコメンド結果更新部３１６は、リクエストの情報と処理中のレコメンド文書に一致するデータが記録されている、優先度レベル情報テーブル５００のレコードの優先度レベル５０４の値が"プラス"であるか"マイナス"であるかを判定する。
【００７５】
そして、リクエストの情報と処理中のレコメンド文書に一致するレコードの優先度レベル５０４の値が"プラス"であると判定した場合(Ｓ７０６で「プラス」の場合)、レコメンド結果更新部３１６は、ステップＳ７０７に処理を進める。
【００７６】
ステップＳ７０７では、レコメンド結果更新部３１６は、レコメンド結果８０１の処理中のレコメンド文書に対応するレコードを、優先度高レベルのグループ８０２に追加し（振り分け）、Ｓ７１０に処理を進める。
【００７７】
一方、リクエストの情報と処理中のレコメンド文書に一致するレコードの優先度レベル５０４の値が"マイナス"であると判定した場合(Ｓ７０６で「マイナス」の場合)、レコメンド結果更新部３１６は、ステップＳ７０８に処理を進める。
【００７８】
ステップＳ７０８では、レコメンド結果更新部３１６は、レコメンド結果８０１の処理中のレコメンド文書に対応するレコードを、優先度低レベルのグループ８０４に追加し（振り分け）、Ｓ７１０に処理を進める。
【００７９】
また、上記ステップＳ７０５において、リクエストの情報と処理中のレコメンド文書に一致するデータが優先度レベル情報テーブル５００に記録されていないと判定した場合(Ｓ７０５で「いいえ」の場合)、レコメンド結果更新部３１６は、ステップＳ７０９に処理を進める。
【００８０】
ステップＳ７０９では、レコメンド結果更新部３１６は、レコメンド結果８０１の処理中のレコメンド文書に対応するレコードを、優先度通常レベルのグループ８０３に追加し（振り分け）、Ｓ７１０に処理を進める。
【００８１】
なお、優先度高レベルのグループ８０２、優先度通常レベルのグループ８０３、優先度低レベルのグループ８０４は、レコメンド結果更新部３１６が管理するメモリ上に作成されるものとする。
【００８２】
ステップＳ７１０では、レコメンド結果更新部３１６は、上記ステップＳ７０５〜Ｓ７０９の処理の対象となるレコメンド結果８０１のレコメンド文書（未処理のレコメンド文書）がまだ存在するか否かを判定する。
【００８３】
そして、未処理のレコメンド文書がまだ存在すると判定した場合、レコメンド結果更新部３１６は、レコメンド結果８０１の次のレコメンド文書を、新たに、処理中のレコメンド文書とし、ステップＳ７０５に処理を移行させる。なお、ここでは「レコメンドスコア」の高い順に、処理中のレコメンド文書を決定するものとする。
【００８４】
一方、未処理のレコメンド文書が存在しないと判定した場合、レコメンド結果更新部３１６は、ステップＳ７１１に処理を移行させる。
上記ステップＳ７０５〜Ｓ７０９の処理を、レコメンド結果８０１の各レコメンド文書（文書Ｂ、文書Ｅ、文書Ｄ、文書Ｃ、文書Ｙ）に対して実行した状態を、図８の８０５に示す。
【００８５】
次に、ステップＳ７１１において、レコメンド結果更新部３１６は、優先度レベル情報テーブル５００に記録されているレコメンド対象のユーザ（ユーザＡ）の現レコメンドトリガー（文書Ａ）の各レコードを処理の対象として、それぞれにステップＳ７１２〜Ｓ７１５の処理を実行するように制御する。ここでは、ユーザ５０１の値が"ユーザＡ"であり、レコメンドトリガー５０２の値が"文書Ａ"である１、２、３、４行目のレコードが処理の対象となる。レコメンド結果更新部３１６は、処理の対象のレコードから未処理のレコードを１つ取得し（以下、処理中のレコード）、ステップＳ７１２に処理を進める。
【００８６】
ステップＳ７１２では、レコメンド結果更新部３１６が、処理中のレコードが、優先度高レベルのグループ８０２、優先度低レベルのグループ８０４、あるいは、優先度通常レベルのグループ８０３のいずれかに既に追加されているか否かを判定する。
【００８７】
そして、処理中のレコードが既にいずれかのグループに追加されていると判定した場合(Ｓ７１２で「はい」の場合)、レコメンド結果更新部３１６は、そのままステップＳ７１６に処理を進める。
【００８８】
一方、処理中のレコードが未だいずれのグループにも追加されていないと判定した場合(Ｓ７１２で「いいえ」の場合)、レコメンド結果更新部３１６は、ステップＳ７１３に処理を進める。
【００８９】
ステップＳ７１３では、レコメンド結果更新部３１６は、処理中のレコードの優先度レベル５０４の値を判定する。
そして、処理中のレコードの優先度レベル５０４の値が"プラス"であると判定した場合(Ｓ７１３で「プラス」の場合)、レコメンド結果更新部３１６は、ステップＳ７１４に処理を進める。
【００９０】
ステップＳ７１４では、レコメンド結果更新部３１６は、処理中のレコードのレコメンド文書５０３が示す文書を、優先度高レベルのグループ８０２に追加し、ステップＳ７１６に処理を進める。
【００９１】
一方、処理中のレコードの優先度レベル５０４の値が"マイナス"であると判定した場合(Ｓ７１３で「マイナス」の場合)、レコメンド結果更新部３１６は、ステップＳ７１５に処理を進める。
【００９２】
ステップＳ７１５では、レコメンド結果更新部３１６は、処理中のレコードのレコメンド文書５０３が示す文書を、優先度低レベルのグループ８０４に追加し、ステップＳ７１６に処理を進める。
【００９３】
次に、ステップＳ７１６において、レコメンド結果更新部３１６は、上記ステップＳ７１２〜Ｓ７１５の処理の対象となる優先度レベル情報テーブル５００のレコードのうち未処理のレコードがまだ存在するか否かを判定する。
【００９４】
そして、処理の対象のレコードの中に、未処理のレコードが存在すると判定した場合、レコメンド結果更新部３１６は、処理の対象の次のレコードを、新たに、処理中のレコードとし、ステップＳ７１２に処理を移行させる。
【００９５】
一方、処理の対象のレコードの中に、未処理のレコードが存在しないと判定した場合、レコメンド結果更新部３１６は、ステップＳ７１７に処理を移行させる。
【００９６】
上記ステップＳ７１２〜Ｓ７１５の処理を、優先度レベル情報テーブル５００の処理対象の各レコードに対して実行した状態を図８の８０６に示す。この状態では、図８の８０６に示すように、優先度レベル情報テーブル５００の４行目のレコードのレコメンド文書（文書Ｆ）が優先高レベルのグループ８０２に追加されている。なお、レコメンド文書（文書Ｆ）は、レコメンド結果８０１には含まれていないため、レコメンドスコアの値は無いものとし、図８では「-」と記載している。
【００９７】
次に、ステップＳ７１７において、レコメンド結果更新部３１６は、優先度高レベルのグループ８０２に含まれるレコメンド文書を、優先度レベル５０４の値で降順にソートする。さらに、レコメンド結果更新部３１６は、優先度レベル５０４の値が同じレコメンド文書は、「レコメンドスコア」の値で降順にソートする。
【００９８】
次に、ステップＳ７１８において、レコメンド結果更新部３１６は、優先度低レベルのグループ８０４に含まれるレコメンド文書を優先度レベル５０４の値で降順にソートする。さらに、レコメンド結果更新部３１６は、優先度レベル５０４の値が同じレコメンド文書は、「レコメンドスコア」の値で降順にソートする。
【００９９】
なお、本実施例では、この段階で、優先度通常レベルのグループ８０３に含まれるレコメンド文書は、既に「レコメンドスコア」の値で降順となっているが、そうでない場合には、「レコメンドスコア」の値で降順にソートしてもよい。
【０１００】
上記ステップ７１８までの処理を実行した状態を図８の８０７に示す。この状態では、図８の８０７に示すように、優先度高レベルのグループ８０２のレコメンド文書の順番が、８０６の状態から変更されている。
【０１０１】
次に、ステップＳ７１９において、レコメンド結果更新部３１６は、各優先度レベルのグループのレコメンド文書をまとめる。レコメンド結果更新部３１６は、まず、優先度高レベルのグループ８０２のレコメンド文書を上から順に並べ、次に、優先度通常レベルのグループ８０３の文書を上から順に並べ、最後に、優先度低レベルのグループ８０４の文書を上から順に並べて１つのリストに結合する。
【０１０２】
ステップＳ７１９までの処理を実行した状態が図８の８０８である。レコメンド結果８０８がレコメンド文書の提示順番になる。以上のように、レコメンド結果更新部３１６は、優先度レベル情報管理部３１７に記憶される、リクエストの対象ユーザおよびレコメンドトリガー（選択された文書）の組に対応する各レコメンドアイテムの優先度レベル情報（５０４）に基づいて、レコメンド結果を更新する。例えば、リクエストの対象ユーザおよびレコメンドトリガーの組に対応する優先度レベルが優先度レベル情報管理部３１７に記憶されている各レコメンド文書のうち、レコメンド結果に含まれていないレコメンドアイテムを、レコメンド結果に追加する。
【０１０３】
次に、ステップＳ７２０において、レコメンド結果更新部３１６は、上記ステップＳ７０１のリクエストに対するレスポンスとして、レコメンド結果８０８を、クライアントＰＣ１０１のＵＩ表示部３０２に送信する。
【０１０４】
ステップＳ７２１において、クライアントＰＣ１０１のＵＩ表示部３０２は、上記ステップＳ７２０で文書レコメンドサーバＰＣ１０２のレコメンド結果更新部３１６によって、送信されたレコメンド結果８０８を受信すると、ステップＳ７２２に処理を進める。
【０１０５】
ステップＳ７２２では、ＵＩ表示部３０２は、上記ステップＳ７２１で受信したレコメンド結果８０８を文書管理クライアントＵＩ４０１に表示する。本処理によって、図４Ｃに示すようなレコメンド結果４３１が、文書管理クライアントＵＩ４０１に表示される。
【０１０６】
＜実施例１の効果＞
ユーザ自身や他者の嗜好によるレコメンド（レコメンド結果算出部３１３の算出したレコメンド結果）を利用しつつも、ユーザが望むアイテムがユーザの設定した優先度に応じてレコメンドされるようになるため、ユーザは、レコメンドアイテムに効率的にアクセスすることができるようになる。
【実施例２】
【０１０７】
本発明の実施例２を図９に基づき説明する。なお、システム構成やハードウェア構成およびソフトウェア構成は実施例１と同様である。
＜レコメンド結果の更新処理（実施例２）＞
以下、図９を用いて、レコメンド結果の更新処理（実施例２）について説明する。
図９は、本発明の文書レコメンドシステムの実施例２におけるレコメンド結果の更新処理の一例を示すフローチャートである。なお、実施例１と同様に、図９に示すクライアントＰＣ１０１側の処理は、クライアントＰＣ１０１のソフトウェアモジュールにより実行される。即ち、これらの処理は、クライアントＰＣ１０１のＣＰＵ２０１が、外部メモリ２１０にコンピュータ読み取り可能に記録されているプログラムをメモリ（ＲＡＭ２０２）にロードして実行することにより実現される。また、図９に示す文書レコメンドサーバＰＣ１０２の処理は、文書レコメンドサーバＰＣ１０２のソフトウェアモジュールにより実行される。即ち、これらの処理は、文書レコメンドサーバＰＣ１０２のＣＰＵ２０１が、外部メモリ２１０にコンピュータ読み取り可能に記録されているプログラムをメモリ（ＲＡＭ２０２）にロードして実行することにより実現される。
【０１０８】
なお、図９の処理は、図７の処理に対して、優先度レベル５０４の値が"マイナス"であるレコメンド文書に対する処理のみが異なる。そのため、図７のフローチャートとの差分についてのみ説明し、同一の部分の説明は省略する。
【０１０９】
まず、図９のＳ９０１〜Ｓ９０６で「プラス」→Ｓ９０７は、図７のＳ７０１〜Ｓ７０６で「プラス」→Ｓ７０７と同一の処理のため、説明は省略する。
ステップＳ９０６において、レコメンド結果更新部３１６が、リクエストの情報と処理中のレコメンド文書に一致する優先度レベル情報テーブル５００のレコードの優先度レベル５０４の値が"マイナス"であると判定した場合(Ｓ９０６で「マイナス」の場合)、レコメンド結果更新部３１６は、そのままステップＳ９０９に処理を進める。即ち、実施例２では、レコメンド結果更新部３１６は、優先度レベル５０４の値が"マイナス"である（所定の優先度より低い）レコメンド文書を、レコメンド結果（レコメンド文書のリスト）に含まない制御を行う（レコメンド結果から除く制御を行う）。
【０１１０】
なお、図９のＳ９０８〜Ｓ９１２で「プラス」→Ｓ９１３は、図７のＳ７０９〜Ｓ７１３で「プラス」→Ｓ７１４と同一の処理のため、説明は省略する。
【０１１１】
ステップＳ９１２において、優先度レベル情報テーブル５００の処理中のレコードの優先度レベル５０４の値が"マイナス"であると判定した場合(Ｓ９１２で「マイナス」の場合)、レコメンド結果更新部３１６は、そのままステップＳ９１４に処理を進める。即ち、実施例２では、レコメンド結果更新部３１６は、優先度レベル５０４の値が"マイナス"である（所定の優先度より低い）レコメンド文書を、レコメンド結果（レコメンド文書のリスト）に追加しない制御を行う。一方、優先度レベル５０４の値が"プラス"である（所定の優先度より高い）レコメンド文書については、実施例１と同様に、レコメンド結果更新部３１６は、レコメンド結果（レコメンド文書のリスト）に追加する制御を行う。
【０１１２】
なお、図９のＳ９１４、Ｓ９１５は、図７のＳ７１６、Ｓ７１７と同一の処理のため、説明は省略する。また、図９のＳ９１６〜Ｓ９１９は、図７のＳ７１９〜Ｓ７２２と同一の処理のため、説明は省略する。
【０１１３】
上述のように、実施例２の更新処理では、レコメンド結果更新部３１６は、優先度レベル５０４の値が"マイナス"であるレコメンド文書については、＜レコメンド結果の更新処理（実施例１）＞におけるステップＳ７０８、ステップＳ７１５に相当する処理を行わない。さらに、レコメンド結果更新部３１６は、優先度低レベルのグループ８０４内のレコメンド文書をソートする処理も行わないため、ステップＳ７１８に相当する処理も行わないように制御する。
【０１１４】
＜実施例２の効果＞
実施例２では、優先度レベル５０４の値が"マイナス"であるレコメンド文書については、レコメンド結果を更新するための処理が行なわれず、更新後のレコメンド結果には含まれない。そのため、処理時間の短縮化や、ネットワーク１０３を介してレコメンド結果のレスポンスをクライアントＰＣ１０１に送信する際のデータ量の削減化が図れる。
【０１１５】
従来では、ユーザ自身や他者のアイテムに対する操作傾向から算出された嗜好に基づき、アイテムをレコメンドするレコメンドシステムにおいて、特にレコメンドの対象が文書である場合に、ユーザが望む文書にレコメンドを利用して、確実に効率的にアクセスすることができなかった。そこで、本発明のレコメンドシステムは、ユーザから入力されたレコメンドの優先度を管理し、ユーザ自身や他者の嗜好から決定されたレコメンド結果を、ユーザ自身が設定したレコメンドの優先度を反映して更新することにより、ユーザ自身や他者の嗜好による潜在的な観点およびユーザ自身が設定したレコメンドの優先度による顕在的な観点を考慮したレコメンド結果を算出して提示する優れたレコメンドシステムを構築することができる。
【０１１６】
すなわち、協調フィルタリングを利用したアイテムのレコメンドにおいて、ユーザ自身の嗜好と他者の嗜好という潜在的な観点、およびレコメンドされるアイテムに対してユーザが設定したレコメンドの優先度という顕在的な観点を考慮した、レコメンドを行うことができる。
【０１１７】
従って、本発明の各実施例によれば、ユーザ自身や他者のアイテム（例えば文書）に対する操作傾向から算出された嗜好に基づき、アイテムをレコメンドするレコメンドシステムにおいて、ユーザが望むアイテムに、レコメンドを利用して、より確実に且つ効率的にアクセスすることができる。
【０１１８】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
【０１１９】
（他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体（記録媒体）を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【０１２０】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０１２１】
１０１    クライアントＰＣ
１０２    文書レコメンドサーバＰＣ
１０３    ネットワーク
３１５    優先度レベル制御部
３１６    レコメンド結果更新部
３１７    優先度レベル情報管理部
【図１】
2014119945.tif 000003
【図２】
2014119945.tif 000004
【図３】
2014119945.tif 000005
【図４Ａ】
2014119945.tif 000006
【図４Ｂ】
2014119945.tif 000007
【図４Ｃ】
2014119945.tif 000008
【図５】
2014119945.tif 000009
【図６】
2014119945.tif 000010
【図７】
2014119945.tif 000011
【図８】
2014119945.tif 000012
【図９】
2014119945.tif 000013