(57)【特許請求の範囲】
【請求項１】
ユーザにサービスを提供する端末から、データを受信する情報処理装置であって、
前記情報処理装置は、
前記端末と通信するための通信装置と、
前記サービスを受けるために前記ユーザが前記端末を操作した履歴を示す行動履歴情報を、前記通信装置を用いて受信する送受信部と、
前記送受信部で受信された前記行動履歴情報、前記ユーザに推薦するアイテムの複数の候補と前記各候補の属性の属性値とを含むアイテム情報、及び、前記ユーザの属性により分類される属性グループ毎に割り当てられた前記属性の重要度を示す重み係数を含む重み係数情報を格納する記憶装置と、
前記行動履歴情報に基づいて、前記ユーザが分類される属性グループを決定する属性グループ決定部と、
前記属性グループ決定部で決定された属性グループに割り当てられた重み係数と前記アイテム情報とに基づいて、アイテム間の属性値の類似度を算出する推薦度算出部と、を有し、
前記推薦度算出部は、
前記アイテム間の属性値の類似度に従って、前記各候補の推薦度を算出し、
前記算出された推薦度に従って、前記各候補から前記ユーザに推薦するアイテムを決定し、
前記送受信部は、前記決定されたアイテムを前記通信装置を介して前記端末へ送信することを特徴とする情報処理装置。
【請求項２】
前記情報処理装置は、前記行動履歴情報が示す前記履歴に従って、前記ユーザが重要視する第１のアイテムと、前記ユーザが重要視していない第２のアイテムとを特定する評価部を有し、
前記推薦度算出部は、
前記決定されたグループに割り当てられた重み係数と前記アイテム情報とに基づいて、前記第１のアイテムの属性値との類似度が、前記第２のアイテムの属性値との類似度よりも高い候補を、前記アイテム情報から抽出し、
前記ユーザに推薦するアイテムとして決定される順位が上がるように、前記抽出された候補の前記推薦度を算出することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記情報処理装置は、
前記ユーザに関する個人情報を有し、
前記属性グループ決定部は、前記個人情報と前記行動履歴情報とに基づいて、前記ユーザを分類するグループを決定することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記推薦度算出部は、前記決定されたユーザに推薦するアイテムを示す識別情報と前記ユーザが分類されたグループを示す識別情報とを含む、推薦データを生成し、
前記送受信部は、前記生成された推薦データに含まれる識別情報を表示させるためのデータを前記端末に送信することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記推薦度算出部は、
前記重み係数情報から、前記ユーザが分類されたグループに割り当てられた重み係数のうち前記重要度が最も高い重み係数を抽出し、
前記抽出された重み係数に対応する属性を示す識別情報を、前記推薦データに含めることを特徴とする請求項４に記載の情報処理装置。
【請求項６】
ユーザにサービスを提供する端末から、データを受信する情報処理装置による情報処理方法であって、
前記情報処理装置は、
前記端末と通信するための通信装置と、前記サービスを受けるために前記ユーザが前記端末を操作した履歴を示す行動履歴情報を、前記通信装置を用いて受信する送受信部と、記憶装置と、プロセッサとを有し、
前記情報処理方法は、前記プロセッサが、
前記送受信部で受信した前記行動履歴情報、前記ユーザに推薦するアイテムの複数の候補と前記各候補の属性値とを含むアイテム情報、及び、前記ユーザの属性により分類される属性グループ毎に割り当てられた、前記属性の重要度を示す重み係数を含む重み係数情報を前記記憶装置に格納し、
前記行動履歴情報に基づいて、前記ユーザが分類される属性グループを決定し、
前記決定されたグループに割り当てられた重み係数と前記アイテム情報とに基づいて、アイテム間の属性値の類似度を算出し、
前記アイテム間の属性値の類似度に従って、前記各候補の推薦度を算出し、
前記算出された推薦度に従って、前記各候補から前記ユーザに推薦するアイテムを決定し、
前記決定されたアイテムを前記送受信部により前記通信装置を介して前記端末へ送信することを特徴とする情報処理方法。
【請求項７】
前記方法は、前記プロセッサが、
前記行動履歴情報が示す前記履歴に従って、前記ユーザが重要視する第１のアイテムと、前記ユーザが重要視していない第２のアイテムとを特定し、
前記決定されたグループに割り当てられた重み係数と前記アイテム情報とに基づいて、前記第１のアイテムの属性値との類似度が、前記第２のアイテムの属性値との類似度よりも高い候補を、前記アイテム情報から抽出し、
前記ユーザに推薦するアイテムとして決定される順位が上がるように、前記抽出された候補の前記推薦度を算出することを特徴とする請求項６に記載の情報処理方法。
【請求項８】
前記情報処理装置は、前記ユーザに関する個人情報を有し、
前記方法は、前記プロセッサが、前記個人情報と前記行動履歴情報とに基づいて、前記ユーザを分類するグループを決定することを特徴とする請求項７に記載の情報処理方法。
【請求項９】
前記方法は、前記プロセッサが、
前記決定されたユーザに推薦するアイテムを示す識別情報と前記ユーザが分類されたグループを示す識別情報とを含む、推薦データを生成し、
前記生成された推薦データに含まれる識別情報を表示させるためのデータを前記端末に送信することを特徴とする請求項８に記載の情報処理方法。
【請求項１０】
前記方法は、前記プロセッサが、
前記重み係数情報から、前記ユーザが分類されたグループに割り当てられた重み係数のうち前記重要度が最も高い重み係数を抽出し、
前記抽出された重み係数に対応する前記属性の識別情報を、前記推薦データに含めることを特徴とする請求項９に記載の情報処理方法。
【請求項１１】
前記記憶装置は、前記アイテム情報及び前記重み係数情報を記憶する二次記憶装置を含むことを特徴とする請求項１に記載の情報処理装置。
【請求項１２】
前記記憶装置は、前記アイテム情報及び前記重み係数情報を記憶する二次記憶装置を含むことを特徴とする請求項６に記載の情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置に関し、特に、ユーザにアイテムを推薦する情報処理装置に関する。
【背景技術】
【０００２】
近年、計算機が大量のアイテムからユーザの嗜好に合致したアイテムを抽出し、抽出されたアイテムをユーザに推薦するレコメンド技術の研究及び開発が盛んに行われている。
【０００３】
例えば、近年のデジタルテレビには、ユーザが視聴又は録画した番組の特徴を抽出し、抽出された特徴に類似した特徴を有する将来の番組を、ユーザに推薦する機能が搭載されている。
【０００４】
このようなデジタルテレビのようなレコメンド技術を提供するシステムは、番組単位に「ジャンル」、「チャンネル」、又は「時間帯」などの属性の値を有し、視聴及び録画した番組の各属性の値をベクトル化することによって、ユーザの嗜好情報を取得する。一方で、推薦対象となる将来の番組の属性についてもベクトル化する。そして、レコメンド技術を提供するシステムは、それぞれの属性のベクトル間の類似度を算出し、類似度が高い将来の番組をユーザに推薦する。
【０００５】
属性ベクトルの類似度を算出する際には、ユークリッド距離又は内積を算出する方法などが用いられるが、いずれの方法においても、いずれの属性を重要視するかを示す重み係数を設定し、各属性の演算に重み係数を反映させる方法がよく用いられる。
【０００６】
従来、この重み係数には個人によらない共通の固定値が用いられていた。しかし、本来はユーザごとに重要視する属性は異なる。このため、ユーザごとに重み係数を変化させることによって、ユーザの嗜好に合致したアイテムを推薦する技術が提案されている。
【０００７】
ユーザの嗜好に合致したアイテムを推薦する技術として、ユーザがコンテンツを視聴又は録画した操作を肯定的な操作、コンテンツを削除する操作を否定的な操作と判定し、その判定結果と各属性の類似度を用いた重回帰分析に基づいて、コンテンツが持つ属性の重み係数を決定する技術が提案されている（例えば、特許文献１参照）。
【０００８】
また一方で、近年、特定のサービスにおいて、ユーザの行動又は操作からユーザの嗜好情報を抽出し、抽出された嗜好情報に基づいて、同じサービスのアイテムを推薦するだけでなく、さらに、嗜好情報が抽出されたサービスとは異なるサービスのアイテムを推薦するレコメンド技術の研究及び開発が進められている。
【０００９】
このようなレコメンド技術には、例えば、テレビにおいて健康番組をよく視聴するユーザが、ネットスーパーを用いる際に、健康グッズを薦めるレコメンド技術が挙げられる。このレコメンド技術を提供するシステムは、テレビというサービスを提供する際にユーザの嗜好情報を抽出し、ネットスーパーというサービスを提供する際に、抽出された嗜好情報に基づいて、アイテム（例えば、健康グッズ）を推薦する。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０１０−０６１６０１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
前述の通り、特許文献１などの技術によれば、対象となるサービスにおける、各アイテムへのユーザの行動又は操作に関する情報、及び、各アイテムに割り当てられた属性値に基づいて、ユーザの嗜好を反映させた各属性値の重み係数を決定する。このように決定された重み係数を用いることによって、ユーザに適切なアイテムを推薦することが可能である。
【００１２】
しかしながら、特許文献１などの技術では、嗜好情報を抽出するために使用するアイテムの属性と、推薦対象であるアイテムの属性が同一である。すなわち、同一サービスにおいて嗜好情報を抽出し、アイテムを推薦することが前提となっている。
【００１３】
このため、ユーザの嗜好情報を抽出するサービスと、ユーザにアイテムを推薦するサービスが異なる場合には、ユーザの嗜好を適切に反映させた、アイテム属性の重み係数を決定することが困難となる。その結果、サービス間を横断した場合において、ユーザに最適なアイテムを推薦することが困難であるという問題がある。
【００１４】
また、特許文献１などの技術では、推薦アイテムをユーザに提示する際に、推薦の理由を提示することを考慮しておらず、ユーザは、どのような理由でそのアイテムが推薦されたのかを把握できないため、不快感を得てしまうという問題がある。
【００１５】
本発明の課題は、大量のアイテムからユーザの状態及び嗜好に合致したアイテムを推薦する情報処理装置を提供することであり、ユーザが異なる複数のサービスを用いる場合も、最適なアイテムをユーザに推薦することを可能にする情報処理装置を提供することである。また、推薦されたアイテムをユーザに提示する際、推薦の理由も一緒に提示することで、ユーザが不快感を得ることのない情報処理装置を提供することが課題である。
【課題を解決するための手段】
【００１６】
本発明の代表的な一例を示せば以下の通りである。すなわち、ユーザにサービスを提供する端末から、データを受信する情報処理装置であって、前記情報処理装置は、前記端末と通信するための通信装置と、前記サービスを受けるために前記ユーザが前記端末を操作した履歴を示す行動履歴情報を、前記通信装置を用いて受信する送受信部と、前記送受信部で受信された前記行動履歴情報、前記ユーザに推薦するアイテムの複数の候補と前記各候補の属性の属性値とを含むアイテム情報、及び、前記ユーザの属性により分類される属性グループ毎に割り当てられた前記属性の重要度を示す重み係数を含む重み係数情報を格納する記憶装置と、前記行動履歴情報に基づいて、前記ユーザが分類される属性グループを決定する属性グループ決定部と、前記属性グループ決定部で決定された属性グループに割り当てられた重み係数と前記アイテム情報とに基づいて、アイテム間の属性値の類似度を算出する推薦度算出部と、を有し、前記推薦度算出部は、前記アイテム間の属性値の類似度に従って、前記各候補の推薦度を算出し、前記算出された推薦度に従って、前記各候補から前記ユーザに推薦するアイテムを決定し、前記送受信部は、前記決定されたアイテムを前記通信装置を介して前記端末へ送信することを特徴とする情報処理装置。
【発明の効果】
【００１７】
本発明の一実施形態によると、一つのサービスにおいて取得された行動情報から、異なるサービスのアイテムを推薦できる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態の情報処理装置の物理的な構成を示す説明図である。
【図２】本発明の実施形態のサーバのハードウェア構成を示すブロック図である。
【図３】本発明の実施形態の携帯端末のハードウェア構成を示すブロック図である。
【図４】本発明の実施形態のサーバが有する機能を示すブロック図である。
【図５】本発明の実施形態の携帯端末が有する機能を示すブロック図である。
【図６】本発明の実施形態の個人情報ＤＢを示す説明図である。
【図７】本発明の実施形態の行動履歴ＤＢを示す説明図である。
【図８】本発明の実施形態のアイテムＤＢを示す説明図である。
【図９】本発明の実施形態の重み係数ＤＢを示す説明図である。
【図１０】本発明の実施形態の推薦度を決定する処理を示すフローチャートである。
【図１１】本発明の実施形態の推薦度を示す説明図である。
【図１２Ａ】本発明の実施形態の推薦結果データの表示画面を示す説明図である。
【図１２Ｂ】本発明の実施形態の推薦結果データの表示画面を示す説明図である。
【図１３】本発明の実施形態のアイテム評価ＤＢを示す説明図である。
【図１４】本発明の実施形態の推薦度の算出方法を示す説明図である。
【発明を実施するための形態】
【００１９】
以下、本発明の実施形態を、図面を参照して説明する。
【００２０】
なお、本実施形態において、実質的に同一の機能及び構成を有する構成要素については、同一の符号を付することにより重複する説明を省略する。
【００２１】
まず、図１に本実施例の情報処理装置のシステム構成の一例を示す。
【００２２】
図１は、本発明の実施形態の情報処理システムの物理的な構成を示す説明図である。
【００２３】
本実施形態の情報処理システムは、サーバ、テレビ、ＰＣ、レコーダ、携帯電話、及び携帯端末などの単体、又は、これらの単体の組み合わせによって実装される。図１に示す情報処理システムは、サーバ及び携帯端末を備えるシステムである。以下の説明における情報処理システムは、サーバ及び携帯端末によって構成されるが、本発明の情報処理システムはこれに限られるものではない。
【００２４】
図１に示す本実施形態の情報処理システムは、サーバ１０１、ネットワーク１０２、少なくとも一つの基地局１０３、及び、少なくとも一つの携帯端末１０４を有する。
【００２５】
サーバ１０１は、ネットワーク通信機能を持つコンピュータシステム等の情報処理装置である。サーバ１０１は、携帯端末１０４から送信されたリクエストを処理し、レスポンスを携帯端末１０４に送信する。
【００２６】
携帯端末１０４は、ネットワーク通信機能を持つＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｃｅ）又は携帯電話等の機器である。携帯端末１０４は、ユーザによる操作に従って基地局１０３及びネットワーク１０２を介してサーバ１０１に接続する。
【００２７】
そして、携帯端末１０４は、ユーザによって所望されたサービスをサーバ１０１から受けるため、サーバ１０１にリクエストを送信する。そして、サーバ１０１から送信されたリクエストに対応するレスポンスを処理することによって、ユーザにサービスを提供する。
【００２８】
例えば、携帯端末１０４は、携帯端末１０４に備わる画面に、サービスが提供する情報を表示するなど、ユーザにサービスを提供する端末装置である。
【００２９】
ネットワーク１０２は、例えば、インターネット、又は、イントラネットなどのネットワークである。ここで、イントラネットには、携帯電話網、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、又は、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などが含まれる。
【００３０】
基地局１０３は、例えば、携帯電話網における末端装置、又は、無線ＬＡＮなどのアクセスポイント等である。サーバ１０１と携帯端末１０４とは、ネットワーク１０２及び基地局１０３を介して、リクエスト又はレスポンスを含むデータを送受信する。
【００３１】
図１に示す携帯端末１０４は、ユーザが携帯端末１０４を用いて行った行動に関する情報、携帯端末１０４へのユーザによる操作に関する情報、及び、携帯端末１０４にされた設定情報等を、サーバ１０１に送信する。
【００３２】
なお、本実施形態において、ユーザが携帯端末１０４を用いて行う行動には、携帯端末１０４をふる、又は、所定の装置にかざすなど、ユーザが携帯端末１０４を介してサービスを受けるために行う行動のすべてが含まれる。以降において、ユーザによる携帯端末１０４への操作に、ユーザが携帯端末１０４を用いて行う行動が含まれるものとして記載する。
【００３３】
図１に示すサーバ１０１は、携帯端末１０４から受信した情報に基づいて、サーバ１０１が保持する大量のアイテムから、ユーザへ推薦する候補となるアイテムを選択する。そして、サーバ１０１は、選択されたアイテムに関する情報と選択理由とを携帯端末１０４に送信する。
【００３４】
そして、図１に示す携帯端末１０４は、サーバ１０１から送信されたアイテムに関する情報と選択理由とを、携帯端末１０４が備える画面に表示する。
【００３５】
次に、本発明の実施形態のサーバ１０１及び携帯端末１０４のハードウェア構成の例を示す。
【００３６】
図２は、本発明の実施形態のサーバ１０１のハードウェア構成を示すブロック図である。
【００３７】
サーバ１０１は、通信装置２０１と、プロセッサ２０２と、記憶装置２０３と、二次記憶装置２０４とを少なくとも有する。なお、サーバ１０１が有する各装置は、バス２０５によって接続される。このため、各装置間で相互にデータの送受信が可能である。
【００３８】
通信装置２０１は、例えば、ＬＡＮカードなどのネットワークカードユニットであり、サーバ１０１をネットワーク１０２に接続するための装置である。
【００３９】
プロセッサ２０２は、例えば、ＣＰＵなどの装置であり、マイクロプロセッサを主体に構成されてもよい。また、プロセッサ２０２は、記憶装置２０３又は二次記憶装置２０４に格納されるプログラムを実行し、サーバ１０１における処理を制御する装置である。
【００４０】
記憶装置２０３は、例えば、ランダムアクセスメモリ（ＲＡＭ）等である。記憶装置２０３は、プロセッサ２０２によって実行されるプログラム、及び、携帯端末１０４から受信したデータ等を格納する装置であり、サーバ１０１において処理されるデータ等を格納する。
【００４１】
二次記憶装置２０４は、例えば、ハードディスク装置、又は、不揮発性メモリ等の装置である。二次記憶装置２０４は、検索対象の情報、及び、当該検索対象の情報を含むデータベースを格納する。さらに、二次記憶装置２０４は、後述する推薦度の算出処理において生成される各種データと、それらのデータを含むデータベースとを格納する。
【００４２】
図３は、本発明の実施形態の携帯端末１０４のハードウェア構成を示すブロック図である。
【００４３】
携帯端末１０４は、通信装置３０１と、プロセッサ３０２と、入力装置３０３と、記憶装置３０４と、表示装置３０５とを少なくとも有する。なお、携帯端末１０４が有する各装置は、バス３０６によって接続され、各装置間で相互にデータの送受信が可能である。
【００４４】
通信装置３０１は、例えば、携帯電話と携帯電話網とを接続するためのモジュールとそのドライバ、及び、携帯電話と無線ＬＡＮとを接続するためのモジュールとそのドライバ等によって実装される。通信装置３０１は、携帯端末１０４をネットワーク１０２に接続する。
【００４５】
プロセッサ３０２は、マイクロプロセッサを主体に構成され、記憶装置３０４に格納されるプログラムを実行し、携帯端末１０４における処理を制御する。
【００４６】
入力装置３０３は、ＰＤＡ等におけるタッチパネル及びそのドライバ等によって実装される。ユーザは、入力装置３０３によって、携帯端末１０４にサービスのリクエストを入力できる。本実施形態におけるユーザは、特に、入力装置３０３によって、映像コンテンツの視聴及び商品の購入などのサービスを受けるための操作を入力する。
【００４７】
記憶装置３０４は、例えば、ランダムアクセスメモリ（ＲＡＭ）等によって実装される。記憶装置３０４は、プロセッサ３０２によって実行されるプログラム、及び、サーバ１０１から受信され携帯端末１０４において処理されるデータ等を格納する。
【００４８】
表示装置３０５は、例えば、ＰＤＡ等に備わる液晶パネル及びそのドライバ等によって実装される。表示装置３０５は、携帯端末１０４が有するデータを表示する。本実施形態の表示装置３０５は、サーバ１０１から候補として選択されたアイテムに関する情報と選択理由とを表示する。
【００４９】
図４は、本発明の実施形態のサーバ１０１が有する機能を示すブロック図である。
【００５０】
なお、本実施形態において、サーバ１０１のすべての機能は、プロセッサ２０２が実行するソフトウェアプログラムによって実装されるものとして説明されるが、一部又はすべての機能は、ハードウェアによって実装されてもよい。
【００５１】
また、図４に示す機能に加え、サーバ１０１は、各機能の起動及び動作管理等を行うＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、並びに、制御プログラム等を有する。しかし、以降において、図４に示す機能の処理を示し、ＯＳ及び制御プログラム等についての説明及び記載を省略する。
【００５２】
サーバ１０１は、リクエストレスポンス送受信部４０１と、リクエストレスポンス処理部４０２と、推薦演算制御部４０３と、レコメンド装置４０４とを有する。
【００５３】
リクエストレスポンス送受信部４０１は、携帯端末１０４からサーバ１０１へ送信されるリクエストを、通信装置２０１を用いて受信し、サーバ１０１から携帯端末へ送信されるレスポンスを、通信装置２０１を用いて送信する機能を有する。
【００５４】
リクエストレスポンス処理部４０２は、リクエストレスポンス送受信部４０１によって送受信されるデータ、すなわち、携帯端末１０４とサーバ１０１との間で送受信されるデータを処理する機能を有する。
【００５５】
具体的には、リクエストレスポンス処理部４０２は、携帯端末１０４によって取得された個人情報を、リクエストレスポンス送受信部４０１経由で取得する。そして、リクエストレスポンス処理部４０２は、取得された個人情報を、レコメンド装置４０４内の個人情報ＤＢ４０５へ登録する。
【００５６】
また、リクエストレスポンス処理部４０２は、携帯端末１０４によって取得された行動履歴情報をリクエストレスポンス送受信部４０１経由で取得する。そして、リクエストレスポンス処理部４０２は、取得された行動履歴情報を、レコメンド装置４０４内の行動履歴ＤＢ４０６へ登録する。
【００５７】
さらに、リクエストレスポンス処理部４０２は、推薦結果データの携帯端末１０４からの取得要求を、リクエストレスポンス送受信部４０１経由で受信する。そして、推薦結果データの取得要求を受信した場合、リクエストレスポンス処理部４０２は、レコメンド装置４０４内の推薦結果データ４１４を取得し、リクエストレスポンス送受信部４０１経由で携帯端末１０４に、取得された推薦結果データを送信する。
【００５８】
推薦演算制御部４０３は、レコメンド装置４０４に推薦度を算出する処理の開始を指示する機能を有する。推薦度を算出する処理の詳細については後述する。
【００５９】
また、推薦度を算出する処理は、システム設計に依存し、いずれのタイミングにおいて開始されてもよい。例えば、１日に１回あらかじめ定められた時刻に開始されてもよいし、ユーザからの実行要求をリクエストレスポンス送受信部４０１経由で受信した際に開始されてもよい。
【００６０】
レコメンド装置４０４は、個人情報ＤＢ４０５と、行動履歴ＤＢ４０６と、アイテムＤＢ４０７と、属性グループ決定部４０８と、重み係数ＤＢ４０９と、重み係数決定部４１０と、アイテム評価ＤＢ４１１と、アイテム評価生成部４１２と、推薦演算部４１３と、推薦結果データ４１４とを有する。
【００６１】
個人情報ＤＢ４０５は、個々のユーザに関する情報を示す個人情報を格納するデータベースである。本実施形態の個人情報とは、例えば、ユーザの「年齢」、「性別」、「住所」、「身長」、及び、「体重」等を示すデータである。
【００６２】
個人情報ＤＢ４０５に格納される個人情報は、携帯端末１０４の画面を介してユーザが入力するデータ、ユーザによる携帯端末１０４への操作の履歴などに基づいて、携帯端末１０４が決定又は類推したデータである。携帯端末１０４は、リクエストレスポンス送受信部４０１、及び、リクエストレスポンス処理部４０２を経由して、レコメンド装置４０４に個人情報を送信する。
【００６３】
行動履歴ＤＢ４０６は、ユーザによる携帯端末１０４への操作の履歴を示す行動履歴を格納するデータベースである。本実施形態の行動履歴は、例えば、商品の購入、及び、映像コンテンツの視聴などの行為を示すデータである。
【００６４】
本実施形態の行動履歴は、携帯端末１０４の画面を介してユーザが行う入力操作などから、携帯端末１０４が決定又は類推したデータである。携帯端末１０４は、リクエストレスポンス送受信部４０１、及び、リクエストレスポンス処理部４０２を経由して、レコメンド装置４０４に行動履歴を送信する。
【００６５】
アイテムＤＢ４０７は、ユーザへ提示する対象となるアイテムを示すアイテム情報を格納するデータベースである。アイテムＤＢ４０７には、サービスを提供する管理者によってアイテム情報が格納される。アイテムＤＢ４０７は、ネットスーパー、又は、ヘルスケアなど様々なサービスごとのデータを保持してもよい。
【００６６】
本実施形態において、同一サービスのアイテムは、同一の属性を持ち、各アイテムは属性ごとに値をあらかじめ割り当てられる。アイテムＤＢ４０７には、アイテムに割り当てられた属性値が格納される。
【００６７】
属性グループ決定部４０８は、推薦演算制御部４０３によって起動され、個人情報ＤＢ４０５及び行動履歴ＤＢ４０６から、アイテムを推薦するユーザに関する個人情報と行動履歴とを取得する。そして、取得された個人情報と行動履歴とに基づいて、後述の処理によって、ユーザの属性グループを決定する。
【００６８】
ユーザの属性グループには、例えば、「健康志向」、「倹約家」、及び「グルメ志向」等が挙げられる。なお、個人のプライバシーの観点から個人情報が取得できない場合、属性グループ決定部４０８は、個人情報ＤＢ４０５から個人情報を取得せず、行動履歴ＤＢ４０６から行動履歴を取得し、取得された行動履歴のみに基づいて、ユーザの属性グループを決定してもよい。
【００６９】
重み係数ＤＢ４０９は、アイテムの属性の重要度を示す値（重み係数）の集まりを示す重み係数セットを、属性グループごとに格納するデータベースである。重み係数ＤＢ４０９は、サービスごとに異なる属性の重要度を含んでもよい。
【００７０】
重み係数決定部４１０は、推薦演算制御部４０３によって起動される。重み係数決定部４１０は、属性グループ決定部４０８によって決定されたユーザの属性グループをキーに、重み係数ＤＢ４０９から、対象サービスにおける、重み係数セットを取得する。そして、取得された重み係数セットを推薦演算部４１３に通知する。
【００７１】
アイテム評価ＤＢ４１１は、各アイテムをユーザが重要視しているか否かを示す評価値を格納するデータベースである。後述するアイテム評価生成部４１２によって更新される。
【００７２】
アイテム評価生成部４１２は、推薦演算制御部４０３によって起動される。アイテム評価生成部４１２は、行動履歴ＤＢ４０６からユーザに関する行動履歴を取得する。そして、取得された行動履歴に基づいて、アイテムＤＢ４０７に格納される各アイテムへのユーザの評価値を算出し、算出された評価値をアイテム評価ＤＢ４１１に格納する。
【００７３】
推薦演算部４１３は、推薦演算制御部４０３によって起動される。推薦演算部４１３は、アイテム評価ＤＢ４１１に格納される各アイテムの属性値に関する情報と、重み係数決定部４１０によって決定された重み係数と、アイテム評価ＤＢ４１１に格納される全アイテムの全ユーザの評価値を入力される。そして、推薦演算部４１３は、入力された値に基づいて各アイテムの推薦度を算出し、算出された推薦度に従って推薦結果データ４１４を生成する。
【００７４】
なお、ユーザの評価値を取得できない場合、レコメンド装置４０４は、アイテム評価ＤＢ４１１及びアイテム評価生成部４１２を有さなくてもよい。この場合、推薦演算部４１３は、アイテム評価ＤＢ４１１に格納される各アイテムの属性値に関する情報と、重み係数決定部４１０によって決定された重み係数とのみを入力され、入力された値に基づいて推薦度を算出してもよい。
【００７５】
推薦結果データ４１４は、ユーザへ推薦するアイテムに関する情報が格納される。例えば、アイテムＤＢ４０７に格納される各アイテムに対する推薦度が格納されてもよいし、推薦度が高い順に数個のアイテムの情報が格納されてもよい。
【００７６】
また、推薦結果データ４１４は、推薦理由の情報として、属性グループ決定部４０８によって決定された属性グループに関する情報を含んでもよく、重み係数決定部４１０によって決定された重み係数の中で最も値が高い（重要視している）属性に関する情報を含んでもよい。
【００７７】
推薦演算部４１３によって生成された推薦結果データ４１４は、リクエストレスポンス処理部４０２及びリクエストレスポンス送受信部４０１を介して、携帯端末１０４へ送信される。
【００７８】
なお、個人情報ＤＢ４０５、行動履歴ＤＢ４０６、アイテムＤＢ４０７、重み係数ＤＢ４０９、アイテム評価ＤＢ４１１、及び、推薦結果データ４１４は、二次記憶装置２０４に格納される。また、それぞれ必要に応じて、記憶装置２０３に一時的に読み出される。
【００７９】
図５は、本発明の実施形態の携帯端末１０４が有する機能を示すブロック図である。
【００８０】
本実施形態において、携帯端末１０４のすべての機能は、プロセッサ３０２が実行するソフトウェアプログラムによって実装されるものとして説明されるが、携帯端末１０４の一部又はすべての機能は、ハードウェアによって実装されてもよい。
【００８１】
また、図５に示す機能に加え、携帯端末１０４は、各機能の起動及び動作管理等を行うＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、並びに、制御プログラム等を有する。しかし、以降において、図５に示す機能の処理を示し、ＯＳ及び制御プログラム等についての説明及び記載を省略する。
【００８２】
携帯端末１０４は、入力部５０１と、リクエストレスポンス送受信部５０２と、リクエストレスポンス処理部５０３と、表示部５０４とを有する。
【００８３】
入力部５０１は、ユーザが、個人情報の登録、商品購入、及び、コンテンツ視聴などを示す指示を入力するための機能である。入力部５０１は、後述する表示部５０４によって表示装置３０５に表示される情報を、ユーザが、入力装置３０３を介して操作した情報を取得する。これによって、入力部５０１は、ユーザの個人情報、及び、ユーザによる携帯端末１０４への操作の履歴を取得できる。
【００８４】
リクエストレスポンス送受信部５０２は、入力部５０１によって取得されたユーザの個人情報、及び、ユーザによる携帯端末１０４への操作の履歴を示す情報を、通信装置３０１を介してサーバ１０１に送信する。また、アイテムを推薦する要求を、通信装置３０１を介してサーバ１０１に送信する。さらに、通信装置３０１を介して、サーバ１０１によって生成された推薦結果データ４１４を受信する。
【００８５】
リクエストレスポンス処理部５０３は、リクエストレスポンス送受信部５０２が受信した推薦結果データ４１４に基づいて、サーバ１０１から推薦されたアイテムと、推薦理由とに関する情報を、表示装置３０５に表示するための出力画面を生成する。
【００８６】
表示部５０４は、リクエストレスポンス処理部５０３によって生成された出力画面を表示装置３０５に表示する。
【００８７】
携帯端末１０４が、携帯端末ではなく、ＰＣ等の固定された装置であった場合、表示部５０４は、プリンタ等の装置にリクエストレスポンス処理部５０３によって生成された出力画面を印刷させてもよい。
【００８８】
本実施形態の携帯端末１０４は、例えば、「ネットスーパー」、「ＴＶ」、又は、「ヘルスケア」など様々なサービスを提供するためのアプリケーションが実行される。
【００８９】
図６は、本発明の実施形態の個人情報ＤＢ４０５を示す説明図である。
【００９０】
個人情報ＤＢ４０５は、領域６０１と、個人情報に関する情報を格納する領域６０２〜領域６０７とを含む。また、図６に示す個人情報ＤＢ４０５は、行６１１及び行６１２を含む。
【００９１】
個人情報ＤＢ４０５の各領域にどのような内容の情報が格納されるかは、管理者によってあらかじめ定められる。また、個人情報ＤＢ４０５に格納される情報は、図６に示す内容に限られない。
【００９２】
領域６０１は、ユーザを一意に識別するための識別子であり、個々のユーザ固有のＩＤである。サーバ１０１のリクエストレスポンス処理部４０２は、携帯端末１０４を用いる新規のユーザが増えたことを携帯端末１０４から取得し、領域６０１に格納されるべき新しい識別子を、新規のユーザに割り当てる。
【００９３】
領域６０２〜領域６０８の値は、携帯端末１０４にユーザが登録した情報に基づいて生成された値である。このため、個人情報ＤＢ４０５に含まれる各セルには、値が含まれないセルが存在してもよい。
【００９４】
領域６０２は、ユーザの「氏名」を示す。領域６０３は、ユーザの「年齢」を示す。領域６０４は、ユーザの「性別」を示す。
【００９５】
領域６０５は、ユーザの「趣味」を示す。領域６０６は、ユーザの「血圧値」を示す。領域６０７は、ユーザの「病歴」を示す。
【００９６】
個人情報ＤＢ４０５に含まれる値は、数値であっても文字列であってもよい。
【００９７】
本実施形態において、ユーザは、携帯端末１０４の表示装置３０５に表示された登録画面を介して自らの個人情報を登録する。携帯端末１０４のリクエストレスポンス処理部５０３は、入力部５０１を介して、入力された個人情報を受信し、サーバ１０１へ送信する信号に個人情報を含める。
【００９８】
そして、リクエストレスポンス処理部５０３は、個人情報を含む信号を、リクエストレスポンス送受信部５０２を介して、サーバ１０１に送信する。サーバ１０１のリクエストレスポンス処理部４０２は、リクエストレスポンス送受信部４０１を介して受信し、受信した個人情報を個人情報ＤＢ４０５に登録する。
【００９９】
ここで、サーバ１０１のリクエストレスポンス処理部４０２は、携帯端末１０４から送信された個人情報だけでなく、送信された個人情報から類推される情報を、個人情報ＤＢ４０５に格納してもよい。
【０１００】
例えば、ユーザが携帯端末１０４に血圧値を入力した場合、リクエストレスポンス処理部４０２は、個人情報ＤＢ４０５のユーザに対応する領域６０６に、血圧値を格納するだけでなく、血圧値に基づいて病歴を判定してもよい。具体的には、リクエストレスポンス処理部４０２は、血圧値が所定の値より高い場合、ユーザの病歴が高血圧であると判定し、判定された病歴をユーザに対応する領域６０７に格納してもよい。
【０１０１】
図７は、本発明の実施形態の行動履歴ＤＢ４０６を示す説明図である。
【０１０２】
図７に示す行動履歴ＤＢ４０６は、携帯端末１０４が専用のアプリケーション等を介して、「ネットスーパー」、「ＴＶ」、「映像コンテンツ」及び「レシピ」のサービスをユーザに提供した場合の行動履歴を示す。
【０１０３】
行７１１〜行７１７は、各ユーザの行動履歴を示す。行動履歴ＤＢ４０６は、領域７０１〜領域７０５を含む。また、図７に示す行動履歴ＤＢ４０６は、行７１１〜行７１７を含む。
【０１０４】
領域７０１と領域７０２とに格納される値は管理者によってあらかじめ定義され、領域７０３〜領域７０５に格納される値は、ユーザの操作に関する情報に基づいて格納される。
【０１０５】
領域７０１は、ユーザＩＤを示し、領域６０１に対応する。領域７０２は、ユーザに提供されたサービスの種別を示す。
【０１０６】
領域７０３は、ユーザが携帯端末１０４を操作した時刻を示す。領域７０４は、ユーザが実施した操作の種別を示す。領域７０５は、ユーザが実施した操作の対象を示す。
【０１０７】
携帯端末１０４のリクエストレスポンス処理部５０３は、ユーザが、サービスが提供する特定の対象に、特定の操作を行った場合、そのユーザに関する行動履歴を取得する。そして、取得された行動履歴を、リクエストレスポンス送受信部５０２を介して、サーバ１０１へ送信する。
【０１０８】
サーバ１０１のリクエストレスポンス処理部４０２は、リクエストレスポンス送受信部４０１を介して行動履歴を受信し、受信した行動履歴を、行動履歴ＤＢ４０６に格納する。
【０１０９】
例えば、図７に示す行７１１及び行７１２は、識別子が「１」であるユーザ（以下、ユーザ１）が、ネットスーパーのサービスにおいて、「ＡＡＡ」と呼ばれる野菜を購入し、「ＢＢＢ」と呼ばれる健康グッズの情報を閲覧したことを示す。
【０１１０】
また、行７１３は、ユーザ１がＴＶのサービスにおいて、「ＣＣＣ」と呼ばれる健康番組を録画したことを示す。また行７１４は、識別子が「２」であるユーザ（以下、ユーザ２）が、「ＤＤＤ」と呼ばれる料理番組を視聴したことを示す。
【０１１１】
また、行７１５及び行７１６は、ユーザ２が映像コンテンツのサービスにおいて、「ＥＥＥ」と呼ばれるバラエティのコンテンツをダウンロードし、「ＥＥＥ」と呼ばれるバラエティのコンテンツを視聴したことを示す。
【０１１２】
また、行７１７は、ユーザ２がレシピのサービスにおいて、「ＦＦＦ」と呼ばれる料理のレシピを閲覧したことを示す。
【０１１３】
図８は、本発明の実施形態のアイテムＤＢ４０７を示す説明図である。
【０１１４】
アイテムＤＢ４０７は、推薦度を算出するアイテムに関する情報を含む。図８に示すアイテムＤＢ４０７は、サービスが「レシピ」である場合のアイテムに関する情報を含む。
【０１１５】
アイテムＤＢ４０７は、領域８０１〜領域８０８を含む。また、図８に示すアイテムＤＢ４０７は、行８１１〜行８１５を含む。
【０１１６】
アイテムＤＢ４０７の各領域に格納される値は、管理者によってあらかじめ定められる。しかし、領域８０２〜領域８０８の値は、図８に示す値に限られない。
【０１１７】
領域８０１は、アイテムを一意に識別するための識別子を示す。領域８０２は、アイテムの名前を示す。図８に示す領域８０２には、料理の名前が格納される。領域８０３〜領域８０８は、アイテムの属性を示す。
【０１１８】
図８に示す領域８０３は、アイテムが属するメニューを示す。領域８０４は、アイテムが属するジャンルを示す。領域８０５は、アイテムのカロリーを示す。
【０１１９】
領域８０６は、アイテムに含まれる塩分量を示す。領域８０７は、アイテムに含まれるタンパク質量を示す。領域８０８は、アイテムを作るまでの料理時間を示す。
【０１２０】
アイテムＤＢ４０７の各セルには、数値が含まれてもよく、文字列が含まれてもよい。
【０１２１】
行８１１〜行８１５は、各アイテムの属性の値を示す。
【０１２２】
図８に示すアイテムＤＢ４０７は、「レシピ」のサービスが提供するアイテムを含むが、他のサービスが提供するアイテムを含んでもよい。アイテムＤＢ４０７が異なるサービスが提供するアイテムを含む場合、領域８０２〜領域８０８に異なるサービス間で異なる内容が格納されてもよい。
【０１２３】
例えば、アイテムＤＢ４０７がＴＶのサービスが提供するアイテムに関する情報を含む場合、領域８０２にテレビ番組のジャンルを示す値、領域８０３にテレビ番組の放映時間帯を示す値、領域８０４にテレビ番組の出演者を示す値が格納されてもよい。
【０１２４】
図９は、本発明の実施形態の重み係数ＤＢ４０９を示す説明図である。
【０１２５】
図９に示す重み係数ＤＢ４０９は、レシピのサービスを提供する場合の、ユーザの属性グループごとの重み係数を示す。
【０１２６】
重み係数ＤＢ４０９は、領域９０１〜領域９０８を含む。また、図９に示す重み係数ＤＢ４０９は、行９１１〜行９１７を含む。
【０１２７】
領域９０１及び領域９０２は、ユーザが属するグループを示す。図９に示す領域９０１には、ユーザが生活する上でどのようなことをこころがけているかを示すグループが含まれる。また、図９に示す領域９０２には、ユーザの体質を示す値が含まれる。領域９０１及び領域９０２の値は、行動履歴の値、又は、行動履歴の値及び個人情報の値に従って、特定される。
【０１２８】
領域９０１及び領域９０２の二つのグループに、各ユーザを分類することによって、本実施形態のサーバ１０１は、ユーザにとってどの属性が重要かを精度よく判定することができる。
【０１２９】
図９に示す重み係数ＤＢ４０９において、ユーザは二つのグループの種類に分類されるが、本実施形態のサーバ１０１は、ユーザを一つのグループの種類によって分類してもよいし、二つよりもさらに多くのグループの種類によって分類してもよい。
【０１３０】
領域９０３〜領域９０８は、図８に示すアイテムＤＢ４０７の領域８０３〜領域８０８に対応した重み係数を含む。領域９０３〜領域９０８に格納される値は、管理者によってあらかじめ格納される。
【０１３１】
領域９０３は、メニューの属性の重み係数を示す。領域９０４は、ジャンルの属性の重み係数を示す。領域９０５は、カロリーの属性の重み係数を示す。領域９０６は、塩分の属性の重み係数を示す。領域９０７は、タンパク質の属性の重み係数を示す。領域９０８は、料理時間の属性の重み係数を示す。
【０１３２】
本実施形態において、重み係数の値が高い属性は、ユーザにとって重要な属性であることを示す。
【０１３３】
図９に示す重み係数ＤＢ４０９は、アイテムの属性に割り当てられた重み係数を含むが、本実施形態の重み係数ＤＢ４０９は、属性の値に重み係数を割り当ててもよい。例えば、「メニュー」の属性の値である文字列「主食」、「メインディッシュ」及び「デザート」などに、それぞれ重み係数である「１」、「２」及び「３」が割り当てられてもよい。
【０１３４】
重み係数を設定する方法は、後述する推薦演算部４１３による推薦演算の方法に依存する。行９１１〜行９１７は、ユーザの属性グループに対する各アイテム属性の重み係数を示す。
【０１３５】
図１０は、本発明の実施形態の推薦度を決定する処理を示すフローチャートである。
【０１３６】
属性グループ決定部４０８は、定期的、又は、携帯端末１０４からアイテムを推薦するよう要求された場合に、図１０に示す処理を開始する。属性グループ決定部４０８は、図１０を示す処理を開始する際に、アイテムを推薦するユーザを、携帯端末１０４から取得する。
【０１３７】
また、属性グループ決定部４０８は、行動履歴ＤＢ４０６の領域７０１が示す各ユーザに、図１０に示す処理を行ってもよい。
【０１３８】
属性グループ決定部４０８は、アイテムを推薦するユーザに関する行動履歴を、行動履歴ＤＢ４０６から取得する。ここで、属性グループ決定部４０８は、行動履歴ＤＢ４０６の最新の行動履歴から、一つの行動履歴を取得する。そして、処理された行動履歴の数を示すカウンタ値ｉに、１を代入する（１４０１）。
【０１３９】
なお、レコメンド装置４０４が個人情報ＤＢ４０５を有する場合、属性グループ決定部４０８は、ステップ１４０１において、個人情報ＤＢ４０５からアイテムを推薦するユーザに関する個人情報を取得する。
【０１４０】
ステップ１４０１の後、属性グループ決定部４０８は、カウンタ値ｉが、所定の行動履歴数よりも大きいか否かを判定する（１４０２）。
【０１４１】
ここで、管理者は、ユーザを属性グループに分類するために必要な行動履歴の数を、ステップ１４０２における所定の行動履歴数として、属性グループ決定部４０８にあらかじめ保持させる。これによって、属性グループ決定部４０８は、ユーザを属性グループに分類するために十分な数の行動履歴を取得することができる。
【０１４２】
カウンタ値ｉが、所定の行動履歴数よりも大きい場合、属性グループ決定部４０８は、ユーザを属性グループに分類するために十分な数の行動履歴を取得できたため、ステップ１４０６を実行する。
【０１４３】
カウンタ値ｉが、所定の行動履歴数以下である場合、ユーザを属性グループに分類するために十分な数の行動履歴を取得できていないため、属性グループ決定部４０８は、ステップ１４０３を実行する。
【０１４４】
属性グループ決定部４０８は、ステップ１４０１において取得された行動履歴の領域７０３に格納される値が、現在時刻から所定の期間分過去の期間に含まれる時刻を示すか否かを判定する。
【０１４５】
ここで、管理者は、ユーザを属性グループに分類するために必要な行動履歴の所定の期間を、属性グループ決定部４０８にあらかじめ保持させる。これによって、属性グループ決定部４０８は、ユーザを属性グループに分類するために十分に新しい行動履歴を、行動履歴ＤＢ４０６から取得することができる。そして、属性グループ決定部４０８は、ユーザの最も新しい嗜好に基づいて、属性グループを決定できる。
【０１４６】
行動履歴の領域７０３に格納される値が、現在時刻から所定の期間分過去の期間に含まれる時刻を示さない場合、属性グループ決定部４０８は、行動履歴ＤＢ４０６から取得された行動履歴によって、ユーザを属性グループに分類しないため、ステップ１４０５を実行する。
【０１４７】
行動履歴の領域７０３に格納される値が、現在時刻から所定の期間分過去の期間に含まれる時刻を示す場合、属性グループ決定部４０８は、行動履歴ＤＢ４０６から取得された行動履歴の値、又は、行動履歴の値及び個人情報の値に従って、各属性グループのポイント値を算出する（１４０４）。
【０１４８】
ここで、属性グループ決定部４０８は、行動履歴の領域７０２、領域７０４及び領域７０５等が示す値に対応する、領域９０１の値又は領域９０２の値をあらかじめ保持する。また、個人情報の領域６０５〜領域６０７等が示す値に対応する、領域９０１又は領域９０２の値をあらかじめ保持する。
【０１４９】
そして、属性グループ決定部４０８は、行動履歴の各領域の値が対応する領域９０１のポイント値を算出する。また、属性グループ決定部４０８は、個人情報の各領域の値が対応する領域９０２のポイント値を算出する。
【０１５０】
例えば、属性グループ決定部４０８は、ユーザ１にアイテムを推薦する場合、ステップ１４０１において図７に示す行７１２から行７１４を取得する。そして、所定の行動履歴数が３以上であり、現在時刻から所定の期間内に行７１１〜行７１３の領域７０３の値が含まれる場合、属性グループ決定部４０８は、ステップ１４０４において、行７１１〜行７１３を用いて、属性グループのポイント値を算出する。
【０１５１】
そして、ステップ１４０４において、属性グループ決定部４０８は、行７１１の領域７０５の「野菜『ＡＡＡ』」と領域７０４の「購入」とに対応する領域９０１の属性グループ「健康志向」のポイント値に所定の値を加算する。また、属性グループ決定部４０８は、行７１２の領域７０５の「健康グッズ『ＢＢＢ』」と領域７０４の「閲覧」とに対応する領域９０１の属性グループ「健康志向」のポイント値に所定の値を加算する。また、属性グループ決定部４０８は、行７１３の領域７０５の「健康番組『ＣＣＣ』」と領域７０４の「録画」とに対応する領域９０１の属性グループ「健康志向」のポイント値に所定の値を加算する。
【０１５２】
ここで、属性グループ決定部４０８は、領域７０５に含まれる「野菜」、及び「健康」の文字列が属性グループ「健康志向」に対応することを示す情報を、あらかじめ保持する。
【０１５３】
さらに、属性グループ決定部４０８は、レコメンド装置４０４が個人情報ＤＢ４０５を有し、ユーザ１にアイテムを推薦する場合、ステップ１４０１において個人情報ＤＢ４０５の行６１１を取得する。そして、ステップ１４０４において、行６１１に基づいて領域９０２のポイント値を算出する。
【０１５４】
すなわち、属性グループ決定部４０８は、ステップ１４０４において、行６１１の領域６０７の「高血圧」に対応する領域９０２の属性グループ「高血圧」のポイント値を加算する。
【０１５５】
ここで、属性グループ決定部４０８は、領域６０６に含まれる「高血圧」の文字列が、属性グループ「高血圧」に対応することを示す情報を、あらかじめ保持する。
【０１５６】
なお、ステップ１４０４におけるポイント値を算出する方法は、前述の方法に限られず、行動履歴、又は、行動履歴及び個人情報に基づいて、ユーザの属性グループが決定されればいかなる方法でもよい。
【０１５７】
ステップ１４０４の後、属性グループ決定部４０８は、カウンタ値ｉに１を加算し（１４０５）、ステップ１４０２を実行する。
【０１５８】
ステップ１４０２においてカウンタ値ｉが、所定の行動履歴数よりも大きいと判定された場合、属性グループ決定部４０８は、属性グループの算出されたポイント値のうち、最も値が高い属性グループを、ユーザ１の属性グループに決定する（１４０６）。
【０１５９】
ステップ１４０６の後、重み係数決定部４１０は、ステップ１４０６において属性グループ決定部４０８によって決定された属性グループの値をキーとして、重み係数ＤＢ４０９から、属性グループの重み係数を取得する。そして、取得された重み係数を、推薦するアイテムの重み係数に決定する（１４０７）。
【０１６０】
例えば、ユーザ１にアイテムを推薦し、ステップ１４０６において領域９０１の属性グループが「健康志向」に決定され、かつ、ステップ１４０６において領域９０２の属性グループが「高血圧」に決定された場合、重み係数決定部４１０は、ステップ１４０７において、重み係数ＤＢ４０９の行９１３を取得する。行９１３は、"メニュー"、"ジャンル"、"カロリー"、"塩分"、"タンパク質"、及び、"料理時間"の各々の属性の重み係数が、"１"、"２"、"７"、"１０"、"５"、及び、"５"であることを示す。
【０１６１】
ステップ１４０７の後、推薦演算部４１３は、推薦度を算出したアイテムの数を示すカウンタ値ｊに１を代入する（１４０８）。
【０１６２】
ステップ１４０８の後、推薦演算部４１３は、カウンタ値ｊが所定の推薦アイテムデータ数を上回るか否かを判定する（１４０９）。ここで、管理者は、アイテムＤＢ４０７の行の数を、ステップ１４０９における推薦アイテムデータ数として、推薦演算部４１３にあらかじめ保持させる。
【０１６３】
カウンタ値ｊが所定の推薦アイテムデータ数を上回る場合、推薦演算部４１３は、すべてのアイテムの推薦度を算出したため、図１０に示す処理を終了する。
【０１６４】
カウンタ値ｊが所定の推薦アイテムデータ数以下である場合、推薦演算部４１３は、アイテムＤＢ４０７のｊ番目の行を抽出し、抽出された行の領域８０３〜領域８０８の値を正規化する（１４１０）。ここで、推薦演算部４１３は、重み係数と比較可能な尺度に変換されれば、どのような方法によって領域８０３〜領域８０８の値を正規化してもよい。
【０１６５】
例えば、推薦演算部４１３は、領域８０３に含まれる文字列を、演算を容易にするために、文字列に対応した数値に置き換えてもよい。また、推薦演算部４１３は、領域８０５に含まれる値が高ければ高いほど、領域８０５に含まれる値を低い値に変更することによって、正規化してもよい。また、推薦演算部４１３は、領域８０７に含まれる値が高ければ高いほど、領域８０７に含まれる値を高い値に変更することによって、正規化してもよい。
【０１６６】
ステップ１４１０における正規化の方法は、管理者によってあらかじめ定められる。
【０１６７】
ステップ１４１０の後、推薦演算部４１３は、ステップ１４１０において推薦対象アイテムの正規化された領域８０３〜領域８０８の値と、例えば、購入又は閲覧済アイテムの正規化された領域８０３〜領域８０８の値との距離を算出することにより、推薦対象アイテムと購入又は閲覧済アイテムとの間の類似度を計算する（１４１１）。距離が小さいほど類似度がより高いことを意味し、購入済アイテムに近いアイテムを選択することが可能となる。距離を算出する際に、ステップ１４０７において決定された重み係数の値を反映させることにより、ユーザの重要視する属性を反映させることが可能となる。重み係数を反映させた距離の算出については後述する。
【０１６８】
ステップ１４１１の後、推薦演算部４１３は、ステップ１４１１において算出された距離に基づいて各アイテムの推薦度を算出する（１４１２）。ここで、推薦演算部４１３は、距離の逆数を、アイテムの推薦度として算出する。
【０１６９】
ステップ１４１２の後、推薦演算部４１３は、カウンタ値ｊに１を加算し（１４１３）、ステップ１４０９を実行する。
【０１７０】
図１１は、本発明の実施形態の推薦度を示す説明図である。
【０１７１】
図１１に示す値は、図１０に示す処理が行われた結果、算出される推薦度を示す。図１０に示す処理によって算出される推薦度は、アイテムごとに算出される。図１１に示す領域１２０１のアイテムＩＤは、図８に示すアイテムＤＢ４０７の領域８０１に格納される値に対応する。
【０１７２】
図８に示す領域１２０２に格納される推薦度が大きければ大きい程、重み係数の高い属性の値が、購入又は視聴済みのアイテムの属性の値に近いことを示す。すなわち、領域１２０２に格納される推薦度が大きいアイテムは、ユーザが分類された属性グループに求められる属性を重要視したアイテムであることを示す。
【０１７３】
図１２Ａは、本発明の実施形態の推薦結果データ４１４の表示画面を示す説明図である。
【０１７４】
推薦演算部４１３は、図１０に示す処理によって算出された推薦度に基づいて、推薦結果データ４１４を生成する。そして、リクエストレスポンス処理部４０２及びリクエストレスポンス送受信部４０１を介して、携帯端末１０４に推薦結果データ４１４を送信する。
【０１７５】
ここで、推薦演算部４１３は、推薦理由として、ユーザの属性グループを示す識別情報（４０９の領域９０１及び領域９０２に格納される値）を推薦結果データ４１４に含める。また、推薦演算部４１３は、推薦度が大きい順に所定の数のアイテムを示す識別情報（アイテムＤＢ４０７の領域８０２に格納される値）を、推薦結果データ４１４に含める。
【０１７６】
また、推薦演算部４１３は、図８のステップ１４０７において決定された重み係数のうち、大きい値の重み係数の属性を示す識別情報を、推薦理由として推薦結果データ４１４に含めてもよい。
【０１７７】
携帯端末１０４の表示部５０４は、受信した推薦結果データ４１４に基づいて、表示装置３０５にアイテムを推薦するための画面１３０１を表示する。
【０１７８】
図１２Ａの画面１３０１は、領域１３０３及び領域１３０２を含む。領域１３０２には、図８に示す処理によって算出された推薦度が大きい順に、アイテムの名前が表示される。また、領域１３０３には、図９に示す領域９０１の属性グループが、推薦理由として表示される。
【０１７９】
ユーザは、図１２Ａの画面１３０１を参照することによって、自分はどのような属性グループに分類されたことによって、アイテムが推薦されたのかを示す推薦理由を把握することができる。
【０１８０】
図１２Ｂは、本発明の実施形態の推薦結果データ４１４の表示画面を示す説明図である。
【０１８１】
図８のステップ１４０７において決定された重み係数の属性を示す識別情報が推薦結果データ４１４に含まれる場合、表示部５０４は、図１２Ｂの画面１３０１を表示してもよい。
【０１８２】
図１２Ｂの画面１３０１は、領域１３０２と領域１３０４とを含む。領域１３０２には、優先度が大きい順に、アイテムの名前が表示される。
【０１８３】
領域１３０４には、推薦結果データ４１４に含まれる重み係数の属性を示す識別情報に、所定の文字列が付加された文字列が、推薦理由として表示される。これにより、ユーザは、自分がどのような属性グループに分類されたことによって、どのような属性が重要視されたのかを示す推薦理由を把握することができる。
【０１８４】
前述の図１０に示す推薦度の算出方法は、重み係数のより大きい属性が、推薦度により大きく反映できる方法であれば、推薦度を算出する方法を限定するものではない。
【０１８５】
推薦演算部４１３は、ユーザによって指定されたアイテムに対する評価値を用いて優先度を算出してもよい。これによって、ユーザは、ユーザの嗜好により合致した推薦結果を得ることができる。
【０１８６】
図１３は、本発明の実施形態のアイテム評価ＤＢ４１１を示す説明図である。
【０１８７】
アイテム評価ＤＢ４１１は、領域１００１〜領域１００３を含む。図１３に示す行１０１１〜行１０１５を含む。
【０１８８】
領域１００１は、アイテムを一意に示す識別子を含み、図８のアイテムＤＢ４０７の領域８０１に格納される値に対応する。領域１００２及び領域１００３は、各ユーザが評価したアイテムに対する評価値を示す。
【０１８９】
図１３に示す領域１００２は、ユーザ１の各アイテムに対する評価値を示す。図１３に示す領域１００３は、ユーザ２の各アイテムに対する評価値を示す。行１０１１〜行１０１５は、各アイテムの各ユーザによる評価値を示す。
【０１９０】
アイテム評価生成部４１２は、アイテムに対するユーザの評価値を取得し、アイテム評価ＤＢ４１１に評価値を格納する。具体的には、ユーザが入力した各アイテムに対する評価値を、アイテム評価ＤＢ４１１に格納する。
【０１９１】
例えば、携帯端末１０４の表示部５０４は、アイテムの評価値を入力させる画面を表示装置３０５に表示し、ユーザが入力した評価値をサーバ１０１に送信する。そして、サーバ１０１のアイテム評価生成部４１２は、リクエストレスポンス送受信部４０１を介して、アイテムの評価値を受信する。そして、受信したアイテムの評価値をアイテム評価ＤＢ４１１に格納する。
【０１９２】
また、アイテム評価生成部４１２は、行動履歴ＤＢ４０６に格納される行動履歴に基づいて、アイテム評価ＤＢ４１１に値を格納してもよい。例えば、図７に示す行動履歴ＤＢ４０６の行７１７の領域７０４及び領域７０５は、ユーザ２が、料理のアイテム「ＦＦＦ」を閲覧したことを示す。このためアイテム評価生成部４１２は、ユーザ２はアイテムＦＦＦに肯定的な操作を行ったと判定し、ユーザ２のアイテムＦＦＦに対する評価値を増加させる。
【０１９３】
推薦演算部４１３は、図１０に示すステップ１４１２において、ステップ１４１１において算出された距離と、アイテム評価ＤＢ４１１に格納されるユーザの評価値とを用いて、アイテムの推薦度を算出してもよい。これによって、よりユーザの嗜好に合致したアイテムを推薦することが可能となる。
【０１９４】
例えば、アイテム評価ＤＢ４１１において、塩分の少ないアイテムに高評価が与えられ、かつ、塩分の属性の重み係数が高い場合、推薦演算部４１３は、評価値を用いることによって、塩分の少ないアイテムの推薦度を大きくすることができる。
【０１９５】
図１４は、本発明の実施形態の推薦度の算出方法を示す説明図である。
【０１９６】
図１４に示すグラフは、各アイテムを示す点を、各アイテムの属性値によって配置したグラフである。×印によって示される点は、ユーザによって評価されたアイテムを示し、●印によって示される点は、ユーザによって評価されていないアイテムを示す。
【０１９７】
推薦演算部４１３は、評価されたアイテムを、評価の高い高評価アイテムグループ１１０１と、評価の低い低評価アイテムグループ１１０２に分類する。そして、評価されていないアイテム１１０３及びアイテム１１０４からの距離が最も短い、高評価アイテムグループ１１０１内のアイテムを選択する。
【０１９８】
そして、推薦演算部４１３は、アイテム１１０３及びアイテム１１０４のうち、選択されたアイテムとの距離がアイテム１１０３よりも大きいアイテム１１０４の推薦度を、類似度が低いことから低と判定し、選択されたアイテムとの距離が小さいアイテム１１０３の推薦度を、類似度が高いことから高と判定する。
【０１９９】
なお、推薦演算部４１３は、未評価のアイテムの属性値と高評価アイテムグループとの距離、及び、未評価のアイテムの属性値と低評価アイテムグループとの距離を算出し、高評価アイテムグループとの距離の方が、低評価アイテムグループとの距離よりも小さいアイテムを、推薦度が高いと判定してもよい。
【０２００】
そして、推薦演算部４１３は、推薦度が高いと判定されたアイテムに対して、ステップ１４１２において算出された推薦度に、所定の値を加算することによって、推薦するアイテムとして決定される順位を上げてもよい。すなわち、推薦度が高いと判定されたアイテムを、ユーザに推薦するアイテムとして選択されやすいように、推薦度を算出してもよい。
【０２０１】
なお、図１４に示すグラフは、二つの属性値によって図示されたグラフであるが、本実施形態のグラフは、アイテムの属性数に従った次元によって図示される。また、推薦演算部４１３は、他のアイテムとの距離を算出するために、一般的なユークリッド距離を用いてもよく、さらに、ユークリッド距離以外の距離を用いてもよい。また、アイテム間の類似度を求めるために、距離以外の算出方法を使用してもよい。
【０２０２】
また、重み係数決定部４１０がステップ１４０７においてアイテムの重み係数を決定した後、推薦演算部４１３は、各属性の値に重み係数を乗算することによって、各属性の値を拡大又は縮小してもよい。これによって、各アイテム間の属性の値に重み係数を反映させて、各アイテム間の距離を算出できる。そして、ユーザの評価値とアイテムの重み係数との双方を反映された推薦度を算出することが可能となる。
【０２０３】
なお、推薦演算部４１３は、推薦対象ユーザの評価値だけでなく、他のユーザの評価値を考慮して、推薦度を算出してもよい。例えば、アイテムを推薦するユーザと同じ属性グループのユーザの評価値を、アイテムを推薦するユーザの評価値に反映させて推薦度を算出してもよい。
【０２０４】
本実施形態によれば、複数のサービスをユーザに提供した結果取得された、ユーザの行動履歴に基づいてユーザの属性グループを決定し、決定された属性グループをキーにしてアイテムの属性の重み係数を決定する。そして、決定された重み係数に従って、ユーザに推薦するアイテムを抽出する。すなわち、属性グループのような抽象的な項目をユーザに割り当て、抽象的な項目に従った重み係数を用いることによって、異なるサービス間においてもユーザに推薦するアイテムとして最適なアイテムを決定することが可能となる。
【０２０５】
具体的には、あるサービスのみを受けたユーザに、別のサービスのアイテムを推薦することが可能となる。
【０２０６】
また、本実施形態によれば、行動履歴に基づいて、ユーザがいずれのアイテムを重要視しているかを取得する。そして、ユーザが重要視しているアイテムの属性に近い属性を持つアイテムを、推薦するアイテムに選ばれやすくする。これによって、各ユーザ個人の嗜好に合致したアイテムを推薦することができる。
【０２０７】
また、ユーザが重要視しているアイテムだけではなく、ユーザが重要視しているアイテムに似た属性のアイテムをユーザに推薦することができ、ユーザの嗜好に合致したアイテムを推薦することができる。
【０２０８】
また、本実施形態によれば、行動履歴に加え、さらに、個人情報に基づいて属性グループを決定する。これによって、行動履歴のみでは取得することができない、各ユーザの状態又は嗜好を取得し、属性グループを決定することができる。そして、ユーザによって異なるアイテムを推薦することができる。
【０２０９】
また、本実施形態によれば、推薦するアイテムとして決定されたアイテムを、ユーザに提示する際に、推薦理由としてユーザが分類された属性グループを示す情報をユーザに提示する。これによって、ユーザは、自らがどのようなグループに分類されたかを把握することができ、アイテムを推薦された根拠を把握することができる。そして、ユーザが感じる不快感を低減することができる。
【０２１０】
また、本実施形態によれば、重み係数の最も高い属性に関する情報も、推薦理由としてユーザに提示する。これによって、ユーザはいずれの属性が自らにとって重要であると判定されたかを把握することができる。そして本実施形態は、ユーザが感じる不快感を低減することができる。
【産業上の利用可能性】
【０２１１】
本発明は、情報を格納及び検索するサーバ、テレビ、ＰＣ、レコーダ、携帯電話、携帯端末、及びこれらの組み合わせに適用できる。
【符号の説明】
【０２１２】
１０１  サーバ、１０２  ネットワーク、１０３  基地局、１０４  携帯端末、２０１  通信装置、２０２  プロセッサ、２０３  記憶装置、２０４  二次記憶装置、３０１  通信装置、３０２  プロセッサ、３０３  入力装置、３０４  記憶装置、３０５  表示装置４０１  リクエストレスポンス送受信部、４０２  リクエストレスポンス処理部、４０３  推薦演算制御部、４０４  レコメンド装置、４０５  個人情報ＤＢ、４０６  行動履歴ＤＢ、４０７  アイテムＤＢ、４０８  属性グループ決定部、４０９  重み係数ＤＢ、４１０  重み係数決定部、４１１  アイテム評価ＤＢ、４１２  アイテム評価生成部、４１３  推薦演算部、４１４  推薦結果データ、５０１  入力部、５０２  リクエストレスポンス送受信部、５０３  リクエストレスポンス処理部、５０４  表示部
【図１】
0005805548.tif 000002
【図２】
0005805548.tif 000003
【図３】
0005805548.tif 000004
【図４】
0005805548.tif 000005
【図５】
0005805548.tif 000006
【図６】
0005805548.tif 000007
【図７】
0005805548.tif 000008
【図８】
0005805548.tif 000009
【図９】
0005805548.tif 000010
【図１０】
0005805548.tif 000011
【図１１】
0005805548.tif 000012
【図１２Ａ】
0005805548.tif 000013
【図１２Ｂ】
0005805548.tif 000014
【図１３】
0005805548.tif 000015
【図１４】
0005805548.tif 000016