(57)【要約】【課題】コンテンツに対して、そのコンテンツの閲覧を薦める対象者の属性を付与する情報処理装置等を提供すること。【解決手段】情報処理装置は、人物の属性を取得する属性取得部と、コンテンツに関する情報と推奨対象者の属性とを関連付けて記録した第１記録部を参照して、前記属性取得部が取得した属性に関連付けられたコンテンツに関する情報を出力するコンテンツ出力部と、前記コンテンツ出力部が出力したコンテンツに関する情報に対するフィードバックを取得するフィードバック取得部と、前記フィードバック取得部が取得したフィードバックに基づいて、前記第１記録部に記録した関連付けを更新する第１更新部とを備える。【選択図】図１
2018197927.tif 000002
【特許請求の範囲】
【請求項１】
人物の属性を取得する属性取得部と、
コンテンツに関する情報と推奨対象者の属性とを関連付けて記録した第１記録部を参照して、前記属性取得部が取得した属性に関連付けられたコンテンツに関する情報を出力するコンテンツ出力部と、
前記コンテンツ出力部が出力したコンテンツに関する情報に対するフィードバックを取得するフィードバック取得部と、
前記フィードバック取得部が取得したフィードバックに基づいて、前記第１記録部に記録した関連付けを更新する第１更新部と
を備える情報処理装置。
【請求項２】
コンテンツの特徴量と推奨対象者の属性とを関連付けた教師データに基づいて、コンテンツの特徴量から推奨対象者の属性を算出するモデルを作成するモデル作成部と、
前記フィードバック取得部が取得したフィードバックに基づいて前期教師データを更新する第２更新部とを備え、
前記第１更新部は、前記第２更新部が更新した前記教師データに基づいて前記モデル作成部が作成したモデルを用いて、前記第１記録部に記録した関連付けを更新する
請求項１に記載の情報処理装置。
【請求項３】
前記フィードバック取得部は、前記コンテンツ出力部が出力したコンテンツに関する情報に関連して発行されたクーポンの利用状況を取得する
請求項１または請求項２に記載の情報処理装置。
【請求項４】
前記人物を撮影した画像に基づいて該人物の属性を判定する属性判定部を備え、
前記属性取得部は、前記属性判定部が判定した属性を取得する
請求項１から請求項３のいずれか一つに記載の情報処理装置。
【請求項５】
サーバと、案内クライアントとを備える情報処理システムにおいて、
前記案内クライアントは、
人物の属性を取得する属性取得部を備え、
前記サーバは、
コンテンツに関する情報と推奨対象者の属性とを関連付けて記録した第１記録部を参照して、前記属性取得部が取得した属性に関連付けられたコンテンツに関する情報を出力するコンテンツ出力部を備え、
前記案内クライアントは、
前記コンテンツ出力部が出力するコンテンツに関する情報に対応するコンテンツを表示する表示部をさらに備え、
前記サーバは、
前記表示部が表示したコンテンツに対するフィードバックを取得するフィードバック取得部と、
前記フィードバック取得部が取得したフィードバックに基づいて、前記第１記録部に記録した関連付けを更新する第１更新部とをさらに備える
情報処理システム。
【請求項６】
人物の属性を取得し、
取得した前記属性に関連付けられたコンテンツを出力し、
出力したコンテンツに対するフィードバックを取得し、
取得したフィードバックに基づいて前記属性と前記コンテンツとの関連付けを更新する
処理をコンピュータに実行させる情報処理方法。
【請求項７】
人物の属性を取得し、
取得した前記属性に関連付けられたコンテンツを出力し、
出力したコンテンツに対するフィードバックを取得し、
取得したフィードバックに基づいて前記属性と前記コンテンツとの関連付けを更新する
処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、情報処理方法およびプログラムに関する。
【背景技術】
【０００２】
写真等の画像データを解析して得た特徴データに基づいて、画像データ中の被写体に対応するタグデータを自動的に生成する、自動タグ生成装置が提案されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−６２１６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
画像と文字とが混在するＷＥＢ（World Wide Web）サイト等のコンテンツが日々作成され、更新されている。しかしながら、特許文献１に開示された自動タグ生成装置では、コンテンツに対して、そのコンテンツの閲覧を薦める対象者の性別、年齢等の属性を付与することはできない。
【０００５】
一つの側面では、コンテンツに対して、そのコンテンツの閲覧を薦める対象者の属性を付与する情報処理装置等を提供することを目的とする。
【課題を解決するための手段】
【０００６】
情報処理装置は、人物の属性を取得する属性取得部と、コンテンツに関する情報と推奨対象者の属性とを関連付けて記録した第１記録部を参照して、前記属性取得部が取得した属性に関連付けられたコンテンツに関する情報を出力するコンテンツ出力部と、前記コンテンツ出力部が出力したコンテンツに関する情報に対するフィードバックを取得するフィードバック取得部と、前記フィードバック取得部が取得したフィードバックに基づいて、前記第１記録部に記録した関連付けを更新する第１更新部とを備える。
【発明の効果】
【０００７】
一つの側面では、コンテンツに対して、そのコンテンツの閲覧を薦める対象者の属性を付与する情報処理装置等を提供することができる。
【図面の簡単な説明】
【０００８】
【図１】案内段階の処理の概要を説明する説明図である。
【図２】機械学習段階の処理の概要を説明する説明図である。
【図３】推奨ＤＢ作成段階の処理の概要を説明する説明図である。
【図４】運用段階の情報処理システムの構成を説明する説明図である。
【図５】初期データ取得段階の情報処理システムの構成を説明する説明図である。
【図６】教師ＤＢのレコードレイアウトを説明する説明図である。
【図７】コンテンツＤＢのレコードレイアウトを説明する説明図である。
【図８】特徴量ＤＢのレコードレイアウトを説明する説明図である。
【図９】推奨ＤＢのレコードレイアウトを説明する説明図である。
【図１０】候補ＤＢのレコードレイアウトを説明する説明図である。
【図１１】入力クライアントが表示する画面を示す説明図である。
【図１２】案内クライアントが表示する画面を示す説明図である。
【図１３】案内クライアントが表示する画面を示す説明図である。
【図１４】案内クライアントが表示する画面を示す説明図である。
【図１５】案内クライアントが表示する画面を示す説明図である。
【図１６】ＤＢ構築段階のプログラムの処理の流れを説明するフローチャートである。
【図１７】初期データ取得のサブルーチンの処理の流れを説明するフローチャートである。
【図１８】モデル作成のサブルーチンの処理の流れを説明するフローチャートである。
【図１９】推奨ＤＢ作成のサブルーチンの処理の流れを説明するフローチャートである。
【図２０】案内段階のプログラムの処理の流れを説明するフローチャートである。
【図２１】コンテンツ抽出のサブルーチンの処理の流れを説明するフローチャートである。
【図２２】実施の形態２の利用段階の処理の概要を説明する説明図である。
【図２３】実施の形態２の情報処理システムの構成を説明する説明図である。
【図２４】クーポンＤＢのレコードレイアウトを説明する説明図である。
【図２５】ユーザクライアントが表示する画面を示す説明図である。
【図２６】実施の形態２の案内段階のプログラムの処理の流れを説明するフローチャートである。
【図２７】実施の形態２のクーポン利用段階のプログラムの処理の流れを説明するフローチャートである。
【図２８】実施の形態３の情報処理システムの構成を説明する説明図である。
【図２９】実施の形態３の案内段階の処理の概要を説明する説明図である。
【図３０】実施の形態３の教師ＤＢのレコードレイアウトを説明する説明図である。
【図３１】実施の形態３の案内段階のプログラムの処理の流れを説明するフローチャートである。
【図３２】コンテンツ抽出２のサブルーチンの処理の流れを説明するフローチャートである。
【図３３】コンテンツ抽出２のサブルーチンの処理の流れを説明するフローチャートである。
【図３４】実施の形態４の情報処理装置の機能ブロック図である。
【図３５】実施の形態５の情報処理システムの構成を説明する説明図である。
【発明を実施するための形態】
【０００９】
［実施の形態１］
図１は、案内段階の処理の概要を説明する説明図である。本実施の形態は、ユーザに対して、たとえば食事場所等を案内する情報処理システム１０に関する。情報処理システム１０は、ロボット型の案内クライアント２１を備える。案内クライアント２１は、たとえば観光案内所、駅、バス停または公園等の施設に設置される。
【００１０】
案内クライアント２１は、タッチパネル２８を備える。案内クライアント２１は、さらにマイク、スピーカ、人感センサ、カメラ等を備えても良い。案内クライアント２１は、タッチパネル２８等を介してユーザの属性および要望を取得する。属性は、たとえば性別および年齢層である。要望は、たとえば食事場所等、ユーザの求める情報の分野である。
【００１１】
案内クライアント２１は、ユーザの属性および要望に基づいて、推奨ＤＢ（Database）５３からユーザの希望に合致するコンテンツを取得して、タッチパネル２８に表示する。推奨ＤＢ５３は、コンテンツと、そのコンテンツを推奨する対象者の属性とを関連付けて記録するＤＢである。なお、以後の説明では、コンテンツを推奨する対象者を推奨対象者と記載する。推奨ＤＢ５３の構成については後述する。
【００１２】
案内クライアント２１は、表示したコンテンツがユーザの好みに合致したか否か等のフィードバックを取得する。取得したフィードバックは、教師ＤＢ５１に蓄積される。教師ＤＢ５１は、コンテンツに固有に付与されたコンテンツＩＤ（Identifier）と、推奨対象者の属性とを関連付けた教師データを記録するデータベースである。教師ＤＢ５１の構成については後述する。
【００１３】
図２は、機械学習段階の処理の概要を説明する説明図である。機械学習段階は、いわゆる教師あり機械学習により、未知のコンテンツに対して推奨対象者の属性を付与する属性付与モデルを作成する段階である。機械学習段階は、サーバ１１（図４参照）で実行される。なお、サーバ１１は、別のコンピュータで作成された属性付与モデルを取得しても良い。
【００１４】
サーバ１１は、教師ＤＢ５１に記録されているコンテンツＩＤに対応するコンテンツの特徴量を抽出する。特徴量は、多数の要素を有するベクトルで表現される。特徴量の詳細については後述する。サーバ１１は、教師ＤＢ５１に記録されたそれぞれのコンテンツＩＤに対応するコンテンツの特徴量を入力層に入力した場合に、コンテンツＩＤに関連付けられた属性を出力層に出力するように、機械学習を行う。機械学習には、たとえばディープラーニングの手法を利用できるが、ディープラーニング以外の任意の学習手法を用いても良い。
【００１５】
機械学習の結果、任意のコンテンツの特徴量を入力した場合に、推奨対象者の属性を出力する属性付与モデルが完成する。一般的に属性付与モデルの精度は、機械学習に用いる教師データの量に依存する。正確な教師データを大量に用いることにより、精度の高い属性付与モデルを作成可能である。
【００１６】
図３は、推奨ＤＢ５３作成段階の処理の概要を説明する説明図である。推奨ＤＢ５３作成段階も、サーバ１１で実行される。なお、サーバ１１は、別のコンピュータで作成された推奨ＤＢ５３を取得しても良い。
【００１７】
サーバ１１は、案内クライアント２１が表示するコンテンツの候補を取得する。サーバ１１は、コンテンツの特徴量を抽出する。サーバ１１は、コンテンツの特徴量を属性付与モデルに入力し、推奨対象者の属性を得る。サーバ１１は、コンテンツに固有に付与されたコンテンツＩＤと、推奨対象者の属性とを関連付けて、推奨ＤＢ５３に記録する。
【００１８】
なお、本実施の形態の情報処理システム１０においては、運用開始の段階では教師ＤＢ５１には情報処理システム１０の運営者等により教師データが記録される。その後、図１を使用して説明した利用段階で収集した教師データに基づいて、属性付与モデルおよび推奨ＤＢ５３が適宜更新される。これにより、運用しながら学習する情報処理システム１０を実現できる。以後の説明では、図２および図３を使用して説明した段階をまとめて、ＤＢ構築段階と記載する。
【００１９】
図４は、運用段階の情報処理システム１０の構成を説明する説明図である。情報処理システム１０は、インターネット、公衆通信回線またはＬＡＮ（Local Area Network）等のネットワークを介して接続されたサーバ１１および案内クライアント２１を備える。
【００２０】
サーバ１１は、サーバＣＰＵ（Central Processing Unit）１２、主記憶装置１３、補助記憶装置１４、通信部１５およびバスを備える。本実施の形態のサーバ１１は汎用のパーソナルコンピュータ、サーバマシン等の情報処理装置である。また、本実施の形態のサーバ１１は、大型計算機上で動作する仮想マシンでも良い。
【００２１】
サーバＣＰＵ１２は、本実施の形態にかかるプログラムを実行する演算制御装置である。サーバＣＰＵ１２には、一または複数のＣＰＵまたはマルチコアＣＰＵ等が使用される。サーバＣＰＵ１２は、バスを介してサーバ１１を構成するハードウェア各部と接続されている。
【００２２】
主記憶装置１３は、ＳＲＡＭ（Static Random Access Memory）、ＤＲＡＭ（Dynamic Random Access Memory）、フラッシュメモリ等の記憶装置である。主記憶装置１３には、サーバＣＰＵ１２が行う処理の途中で必要な情報およびサーバＣＰＵ１２で実行中のプログラムが一時的に保存される。
【００２３】
補助記憶装置１４は、ＳＲＡＭ、フラッシュメモリ、ハードディスクまたは磁気テープ等の記憶装置である。補助記憶装置１４には、サーバＣＰＵ１２に実行させるプログラム、教師ＤＢ５１、特徴量ＤＢ５２、推奨ＤＢ５３、コンテンツＤＢ５４、候補ＤＢ５５およびプログラムの実行に必要な各種情報が保存される。
【００２４】
教師ＤＢ５１、特徴量ＤＢ５２、推奨ＤＢ５３、コンテンツＤＢ５４および候補ＤＢ５５は、ネットワーク等を介してサーバ１１に接続された別の記憶装置に記憶されても良い。各ＤＢの詳細については後述する。通信部１５は、ネットワークとの通信を行うインターフェイスである。
【００２５】
案内クライアント２１は、案内ＣＰＵ２２、主記憶装置２３、補助記憶装置２４、通信部２５、タッチパネル２８およびバスを備える。本実施の形態の案内クライアント２１は、ロボット型の案内クライアント２１の動作を制御する制御装置を兼ねても良い。案内クライアント２１は、ロボットまたは人形に取り付けた汎用のタブレット等の情報機器であっても良い。案内クライアント２１は、汎用のパソコンまたはタブレット等の情報機器であっても良い。
【００２６】
案内ＣＰＵ２２は、本実施の形態にかかるプログラムを実行する演算制御装置である。案内ＣＰＵ２２には、一または複数のＣＰＵまたはマルチコアＣＰＵ等が使用される。案内ＣＰＵ２２は、バスを介して案内クライアント２１を構成するハードウェア各部と接続されている。
【００２７】
主記憶装置２３は、ＳＲＡＭ、ＤＲＡＭ、フラッシュメモリ等の記憶装置である。主記憶装置２３には、案内ＣＰＵ２２が行う処理の途中で必要な情報および案内ＣＰＵ２２で実行中のプログラムが一時的に保存される。
【００２８】
補助記憶装置２４は、ＳＲＡＭ、フラッシュメモリ、ハードディスクまたは磁気テープ等の記憶装置である。補助記憶装置２４には、案内ＣＰＵ２２に実行させるプログラムおよびプログラムの実行に必要な各種情報が保存される。
【００２９】
通信部２５は、ネットワークとの通信を行うインターフェイスである。タッチパネル２８は、液晶表示パネル等の表示部２６と、表示部２６に積層された入力部２７とを備える。
【００３０】
図５は、初期データ取得段階の情報処理システム１０の構成を説明する説明図である。図５は、情報処理システム１０の運営者等が、初期の教師データを作成する際の情報処理システム１０の構成を示す。
【００３１】
情報処理システム１０は、ネットワークを介して接続されたサーバ１１および入力クライアント７１を備える。サーバ１１の構成は、図４を使用して説明した運用段階と同一である。
【００３２】
入力クライアント７１は、入力ＣＰＵ７２、主記憶装置７３、補助記憶装置７４、通信部７５、表示部７６、入力部７７およびバスを備える。入力ＣＰＵ７２は、本実施の形態にかかるプログラムを実行する演算制御装置である。入力ＣＰＵ７２には、一または複数のＣＰＵまたはマルチコアＣＰＵ等が使用される。入力ＣＰＵ７２は、バスを介して入力クライアント７１を構成するハードウェア各部と接続されている。
【００３３】
主記憶装置７３は、ＳＲＡＭ、ＤＲＡＭ、フラッシュメモリ等の記憶装置である。主記憶装置７３には、入力ＣＰＵ７２が行う処理の途中で必要な情報および入力ＣＰＵ７２で実行中のプログラムが一時的に保存される。
【００３４】
補助記憶装置７４は、ＳＲＡＭ、フラッシュメモリ、ハードディスクまたは磁気テープ等の記憶装置である。補助記憶装置７４には、入力ＣＰＵ７２に実行させるプログラムおよびプログラムの実行に必要な各種情報が保存される。通信部７５は、ネットワークとの通信を行うインターフェイスである。表示部７６は、たとえば液晶表示パネル等である。入力部７７は、たとえばキーボードおよびマウス等である。
【００３５】
入力クライアント７１は、汎用のパソコン、タブレットまたはスマートフォン等の情報機器である。サーバ１１が、入力クライアント７１を兼ねても良い。
【００３６】
図６は、教師ＤＢ５１のレコードレイアウトを説明する説明図である。前述のとおり教師ＤＢ５１は、コンテンツと、推奨対象者の属性とを関連付けた教師データを記録するデータベースである。
【００３７】
教師ＤＢ５１は、コンテンツＩＤフィールド、分野フィールド、属性フィールドおよび点数フィールドを有する。属性フィールドは、年代フィールドおよび性別フィールドを有する。
【００３８】
コンテンツＩＤフィールドには、案内クライアント２１がタッチパネル２８に表示するコンテンツに固有に付与されたＩＤが記録されている。コンテンツのＩＤには、たとえば、コンテンツのＵＲＬ（Uniform Resource Locator）を使用することができる。
【００３９】
分野フィールドには、コンテンツの分野が記録されている。コンテンツの分野は、たとえば「グルメ」、「美容と健康」、「学ぶ」、「暮らしの相談」等である。年代フィールドには、推奨対象者の年代が記録されている。性別フィールドには、推奨対象者の性別が記録されている。
【００４０】
点数フィールドには、それぞれのレコードの点数が記録されている。サーバＣＰＵ１２は。たとえば運営者が作成したレコード等、信頼性の高いレコードの点数フィールドには高い点数を記録し、一般ユーザのフィードバックには低い点数を記録する。教師ＤＢ５１は、一つのコンテンツＩＤについて一つのレコードを有する。
【００４１】
なお、サーバＣＰＵ１２は定期的に教師ＤＢ５１を更新して、古いレコードの点数を低く、新しいレコードの点数を高くしても良い。ユーザの好みの変化や流行に合わせて、属性付与モデルを更新する情報処理システム１０を提供することができる。
【００４２】
図７は、コンテンツＤＢ５４のレコードレイアウトを説明する説明図である。コンテンツＤＢ５４は、案内クライアント２１がユーザに案内するコンテンツのコンテンツＩＤと分野とを関連付けて記録するＤＢである。
【００４３】
コンテンツＤＢ５４は、コンテンツＩＤフィールドおよび分野フィールドを有する。コンテンツＩＤフィールドには、コンテンツに固有に付与されたＩＤが記録されている。分野フィールドには、コンテンツの分野が記録されている。コンテンツＤＢ５４は、一つのコンテンツＩＤについて一つのレコードを有する。
【００４４】
なお、コンテンツＤＢ５４にコンテンツ自体を記録しても良い。サーバ１１が、コンテンツＤＢ５４に記録されたコンテンツを案内クライアント２１に配信するＷＥＢ配信サーバを兼ねても良い。このようにすることにより、情報処理システム１０の運営者が意図しない改変または改竄等が行われたコンテンツを、案内クライアント２１が表示することを防止できる。
【００４５】
図８は、特徴量ＤＢ５２のレコードレイアウトを説明する説明図である。特徴量ＤＢ５２は、コンテンツＩＤと、コンテンツの特徴量とを関連付けて記録するＤＢである。コンテンツの特徴量は、コンテンツの種々の特徴をそれぞれの項目ごとに数値で表現したものである。自然言語のテキストおよび画像等の種々の情報について、様々な特徴量の項目および算出方法が提案されている。
【００４６】
自然言語テキストでは、文字数、文章数、一文の長さ、キーワードの出現頻度などの統計量および使用している言語などを特徴量に使用することができる。たとえば言語等の数値以外の情報の場合には、日本語は「１」、英語は「２」のように、あらかじめ定めた対応表に基づいて数値への変換を行う。
【００４７】
画像では、枚数、画素数、平均輝度などの統計量および画像認識により得た被写体の種類、画像フォーマットの種類などを特徴量に使用することができる。デジタルカメラ等により撮影されたＥｘｉｆ（Exchangeable image file format）の画像の場合には、画像に埋め込まれたメタデータも、特徴量に使用することができる。
【００４８】
以下に説明する特徴量ＤＢ５２中の特徴量の項目は一例であり、これに限定されるものではない。
【００４９】
特徴量ＤＢ５２は、コンテンツＩＤフィールドおよび特徴量フィールドを有する。特徴量フィールドは、文字情報フィールド、画像情報フィールドおよび書誌情報フィールドを有する。文字情報フィールドは、文字数フィールド、文章数フィールド、キーワード１頻度フィールド、キーワード２頻度フィールド等を有する。画像情報フィールドは、画像数フィールド等を有する。書誌情報フィールドは、公開日フィールド等を有する。
【００５０】
コンテンツＩＤフィールドには、コンテンツに固有に付与されたＩＤが記録されている。文字数フィールドには、コンテンツの文字数が記録されている。文章数フィールドには、コンテンツの文章数が記録されている。キーワード１フィールドには、１番目のキーワードがコンテンツ中に登場する頻度が記録されている。キーワード２フィールドには、２番目のキーワードがコンテンツ中に登場する頻度が記録されている。画像数フィールドには、コンテンツに含まれる画像の数が記録されている。公開日フィールドには、コンテンツが公開された日付が記録されている。
【００５１】
特徴量フィールドの各サブフィールドは、コンテンツから自動的に抽出される。なお、前述のとおり特徴量の項目は一例であるので、特徴量フィールドの各サブフィールドも例示である。特徴量フィールドには、コンテンツの特徴を表す任意のサブフィールドを設けることができる。特徴量ＤＢ５２は、一つのコンテンツＩＤについて一つのレコードを有する。
【００５２】
図９は、推奨ＤＢ５３のレコードレイアウトを説明する説明図である。前述のとおり、推奨ＤＢ５３は、コンテンツと、推奨対象者の属性とを関連付けて記録するＤＢである。推奨ＤＢ５３は、本実施の形態の第１記録部の一例である。
【００５３】
推奨ＤＢ５３は、コンテンツＩＤフィールド、分野フィールドおよび属性フィールドを有する。属性フィールドは、年代フィールドおよび性別フィールドを有する。
【００５４】
コンテンツＩＤフィールドには、コンテンツに固有に付与されたＩＤが記録されている。分野フィールドには、コンテンツの分野が記録されている。年代フィールドには、推奨対象者の年代が記録されている。性別フィールドには、推奨対象者の性別が記録されている。推奨ＤＢ５３は、一つのコンテンツＩＤについて一つのレコードを有する。
【００５５】
なお、推奨ＤＢ５３にコンテンツ自体を記録しても良い。サーバ１１が、推奨ＤＢ５３に記録されたコンテンツを案内クライアント２１に配信するＷＥＢ配信サーバを兼ねても良い。このようにすることにより、情報処理システム１０の運営者が意図しない改変または改竄等が行われたコンテンツを、案内クライアント２１が表示することを防止できる。
【００５６】
図１０は、候補ＤＢ５５のレコードレイアウトを説明する説明図である。候補ＤＢ５５は、コンテンツＩＤと個々のユーザに対するコンテンツの推薦度を示す推薦点とを関連付けて記録するＤＢである。候補ＤＢ５５は、案内を要求するユーザごとに随時作成される。
【００５７】
候補ＤＢ５５は、コンテンツＩＤフィールドと推薦点フィールドとを有する。コンテンツＩＤフィールドには、コンテンツに固有に付与されたＩＤが記録されている。推薦点フィールドには、ユーザの属性およびコンテンツの特徴に基づいて、サーバＣＰＵ１２が算出した推薦点が記録されている。候補ＤＢ５５は、一つのコンテンツＩＤについて一つのレコードを有する。
【００５８】
図１１は、入力クライアント７１が表示する画面を示す説明図である。図１１は、情報処理システム１０の運営者等が、初期の教師データを作成する際に、入力ＣＰＵ７２が表示部７６に表示する画面の例を示す。
【００５９】
図１１に示す画面には、コンテンツ表示欄６７とボタン表示欄６８とが表示されている。ボタン表示欄６８には、１２個の属性選択ボタン６２、および、次へボタン６４が表示されている。
【００６０】
入力ＣＰＵ７２は、コンテンツＤＢ５４から所定の方法によりレコードを抽出し、コンテンツＩＤに関連付けられたコンテンツをコンテンツ表示欄６７に表示する。情報処理システム１０の運営者等は、コンテンツ表示欄６７を閲覧し、推奨対象者の属性を判断して、該当する属性選択ボタン６２を選択する。
【００６１】
次へボタン６４の選択を受け付けた場合、入力ＣＰＵ７２は、コンテンツＩＤと選択を受け付けた属性とサーバＣＰＵ１２に送信する。サーバＣＰＵ１２は、コンテンツＩＤと属性とを関連付けて、教師ＤＢ５１に記録する。その後、入力ＣＰＵ７２は次のコンテンツをコンテンツ表示欄６７に表示するとともに、属性選択ボタン６２を初期状態に戻す。
【００６２】
入力ＣＰＵ７２は、各分野について所定の数、たとえば２０個以上のレコードの属性を受け付けた後に、処理を終了する。
【００６３】
図１２は、案内クライアント２１が表示する画面を示す説明図である。図１２は、ユーザがタッチパネル２８に触れた場合等に、案内ＣＰＵ２２がタッチパネル２８の表示部２６に表示する画面の例を示す。
【００６４】
図１２に示す画面には、分野選択ボタン６１、属性選択ボタン６２および次へボタン６４が表示されている。案内ＣＰＵ２２は、分野選択ボタン６１を介してからユーザが情報を望む分野の選択を受け付ける。案内ＣＰＵ２２は、属性選択ボタン６２を介して、ユーザの性別および年代の選択を受け付ける。属性選択ボタン６２は、本実施の形態の属性取得部の一例である。
【００６５】
分野選択ボタン６１および属性選択ボタン６２の選択を受け付けた後、案内ＣＰＵ２２は次へボタン６４を選択の受付が可能な状態に設定する。
【００６６】
図１３は、案内クライアント２１が表示する画面を示す説明図である。図１３は、図１２に示す次へボタン６４の選択を受け付けた後に、案内ＣＰＵ２２がタッチパネル２８の表示部２６に表示する画面の例を示す。
【００６７】
図１３に示す画面には、キーワード選択ボタン６３と次へボタン６４が表示されている。案内ＣＰＵ２２は、複数のキーワード選択ボタン６３の選択を受け付ける。次へボタン６４の選択を受け付けた場合、案内ＣＰＵ２２は、図１２を使用して説明した画面から受け付けた分野と属性、および、図１３を使用して説明した画面から受け付けたキーワードをサーバＣＰＵ１２に送信する。
【００６８】
なお、図１３に示すキーワードは一例である。案内ＣＰＵ２２は、分野選択ボタン６１により受け付けた分野に対応するキーワードを示すキーワード選択ボタン６３を表示することが望ましい。
【００６９】
図１４は、案内クライアント２１が表示する画面を示す説明図である。図１４は、図１３に示す次へボタン６４の選択を受け付けた後に、案内ＣＰＵ２２がタッチパネル２８の表示部２６に表示する画面の例を示す。
【００７０】
図１４に示す画面には、コンテンツ表示欄６７とボタン表示欄６８とが表示されている。ボタン表示欄６８には、前の店ボタン６８１、次の店ボタン６８２および終了ボタン６８３が表示されている。
【００７１】
コンテンツ表示欄６７に表示するコンテンツの選択方法の概要を説明する。サーバＣＰＵ１２は、案内ＣＰＵ２２から受信した分野をキーとして、推奨ＤＢ５３を検索し、分野が一致するレコードを抽出する。サーバＣＰＵ１２は、案内ＣＰＵ２２から受信した属性と、抽出したレコードの属性フィールドに記録された属性とが一致する場合に、推薦点を加算する。
【００７２】
サーバＣＰＵ１２は、抽出したレコードのコンテンツＩＤに対応するコンテンツを取得し、案内ＣＰＵ２２から受信したキーワードが含まれる場合に、推薦点を加算する。サーバＣＰＵ１２は、コンテンツＩＤと推薦点とを関連付けて候補ＤＢ５５に記録する。
【００７３】
抽出したすべてのレコードの処理が終了した後、サーバＣＰＵ１２は、推薦点の高い方から所定の数のレコードを残し、残りのレコードを候補ＤＢ５５から削除する。サーバＣＰＵ１２は、残ったレコードを案内ＣＰＵ２２に送信する。以上の処理により、案内ＣＰＵ２２は、図１２を使用して説明した画面から受け付けた分野およびユーザの属性と、図１３を使用して説明した画面から受け付けたキーワードとに基づいて抽出されたコンテンツのコンテンツＩＤおよび推薦点を得る。
【００７４】
案内ＣＰＵ２２は、サーバＣＰＵ１２から受信したコンテンツＩＤのうち、推薦点が高いコンテンツＩＤに対応するコンテンツをコンテンツ表示欄６７に表示する。コンテンツ表示欄６７内のボタンの選択を受け付けた場合、案内ＣＰＵ２２は、選択されたボタンに応じてコンテンツ表示欄６７の表示を切り替える。
【００７５】
前の店ボタン６８１の選択を受け付けた場合、案内ＣＰＵ２２は一つ前に表示したコンテンツをコンテンツ表示欄６７に表示する。次の店ボタン６８２の選択を受け付けた場合、案内ＣＰＵ２２は次のコンテンツをコンテンツ表示欄６７に表示する。
【００７６】
図１５は、案内クライアント２１が表示する画面を示す説明図である。図１５は、図１４に示す終了ボタン６８３の選択を受け付けた後に、案内ＣＰＵ２２がタッチパネル２８の表示部２６に表示する画面の例を示す。
【００７７】
図１５に示す画面には、フィードバックボタン６６が表示されている。案内ＣＰＵ２２は、フィードバックボタン６６を介してユーザによるフィードバックを受け付け、サーバＣＰＵ１２に送信する。サーバＣＰＵ１２は、教師ＤＢ５１に新しいレコードを作成し、直前に表示していたコンテンツのコンテンツＩＤおよび分野と、図１２を使用して説明した画面を介して受け付けたユーザの属性と、点数とを、それぞれのフィールドに記録する。点数フィールドには、たとえば「とても好み」は２点、「まあまあ好み」は１点、「あまり好みではない」はマイナス１点、「全く好みではない」はマイナス２点等、ユーザによる評価が高いほど高い点数を記録する。
【００７８】
サーバＣＰＵ１２は、ユーザのＩＤ認証を行い、信頼性の高いフィードバックが期待できるユーザによるフィードバックに高い点数を記録しても良い。サーバＣＰＵ１２は、重視したい属性を有するユーザによるフィードバックに対して、高い点数を記録しても良い。
【００７９】
図１６は、ＤＢ構築段階のプログラムの処理の流れを説明するフローチャートである。図１６を使用して、図２および図３を使用して説明したＤＢ構築段階においてサーバＣＰＵ１２が行う処理の流れを説明する。
【００８０】
サーバＣＰＵ１２は、初期データ取得のサブルーチンを起動する（ステップＳ４０１）。初期データ取得のサブルーチンは、図１１を使用して説明した画面を使用して、初期の学習データを取得するサブルーチンである。初期データ取得のサブルーチンの処理の流れは後述する。
【００８１】
サーバＣＰＵ１２は、モデル作成のサブルーチンを起動する（ステップＳ４０２）。モデル作成のサブルーチンは、図２を使用して説明した属性付与モデルを作成するサブルーチンである。モデル作成のサブルーチンの処理の流れは後述する。
【００８２】
サーバＣＰＵ１２は、推奨ＤＢ作成のサブルーチンを起動する（ステップＳ４０３）。推奨ＤＢ作成のサブルーチンは、図３を使用して説明したように、属性付与モデルを用いて推奨ＤＢ５３を作成するサブルーチンである。推奨ＤＢ作成のサブルーチンの処理の流れは後述する。
【００８３】
推奨ＤＢ作成のサブルーチンにより、各分野についてたとえば２０個ずつのコンテンツに属性を付与した初期データに基づいて作成した属性付与モデルを使用して、数百個以上のコンテンツに属性を付与することが可能である。
【００８４】
サーバＣＰＵ１２は、推奨ＤＢ５３を更新するか否かを判定する（ステップＳ４０４）。たとえば、前回のステップＳ４０４の実行から所定の期間が経過した場合に、サーバＣＰＵ１２は推奨ＤＢ５３を更新すると判定する。これにより、サーバＣＰＵ１２は、コンテンツが更新された場合に、新しいコンテンツに合わせた属性を推奨ＤＢ５３に記録することができる。
【００８５】
推奨ＤＢ５３を更新すると判定した場合（ステップＳ４０４でＹＥＳ）、サーバＣＰＵ１２はステップＳ４０３に戻る。推奨ＤＢ５３を更新しないと判定した場合（ステップＳ４０４でＮＯ）、サーバＣＰＵ１２は属性付与モデルを更新するか否かを判定する（ステップＳ４０５）。
【００８６】
たとえば、前回のステップＳ４０２の実行から所定の期間が経過した場合に、サーバＣＰＵ１２は属性付与モデルを更新すると判定する。これによりサーバＣＰＵ１２は、案内ＣＰＵ２２が取得したフィードバックを教師データに追加して、精度の高い属性付与モデルを作成することができる。
【００８７】
属性付与モデルを更新すると判定した場合（ステップＳ４０５でＹＥＳ）、サーバＣＰＵ１２はステップＳ４０２に戻る。属性付与モデルを更新しないと判定した場合（ステップＳ４０５でＮＯ）、サーバＣＰＵ１２は処理を終了するか否かを判定する（ステップＳ４０６）。
【００８８】
たとえば、情報処理システム１０の運用を停止する指示を受け付けた場合に、サーバＣＰＵ１２は処理を終了すると判定する。処理を終了しないと判定した場合（ステップＳ４０６でＮＯ）、サーバＣＰＵ１２はステップＳ４０４に戻る。処理を終了すると判定した場合（ステップＳ４０６でＹＥＳ）、サーバＣＰＵ１２は処理を終了する。
【００８９】
サーバＣＰＵ１２は、２回目以降のステップＳ４０２からステップＳ４０６までを、サーバＣＰＵ１２の負荷の少ない時間等に適時実行することにより、追加された教師データを属性付与モデルに反映させて、推奨ＤＢ５３を更新することができる。
【００９０】
サーバＣＰＵ１２は、２回目以降のステップＳ４０３からステップＳ４０４までを、サーバＣＰＵ１２の負荷の少ない時間等に適時実行することにより、追加または更新されたコンテンツに関連付けられた推奨対象者の属性を再算出して、推奨ＤＢ５３を更新することができる。
【００９１】
図１６を使用して説明したフローチャートは、サーバ１１とは異なるコンピュータで実行され、属性付与モデルおよび推奨ＤＢ５３がネットワークを介してサーバ１１に転送されても良い。
【００９２】
図１７は、初期データ取得のサブルーチンの処理の流れを説明するフローチャートである。初期データ取得のサブルーチンは、図１１を使用して説明した画面を使用して、初期の学習データを取得するサブルーチンである。
【００９３】
サーバＣＰＵ１２は、すべての分野の学習データの取得処理が終了したか否かを判定する（ステップＳ４１１）。終了したと判定した場合（ステップＳ４１１でＹＥＳ）、サーバＣＰＵ１２は処理を終了する。
【００９４】
終了してないと判定した場合（ステップＳ４１１でＮＯ）、サーバＣＰＵ１２はコンテンツＤＢ５４から一つの分野のレコードを抽出する（ステップＳ４１２）。サーバＣＰＵ１２は、ステップＳ４１２で抽出したレコードから１個の候補レコードをランダムに抽出する（ステップＳ４１３）。
【００９５】
サーバＣＰＵ１２は、ステップＳ４１３で抽出した候補レコードを案内ＣＰＵ２２に送信する（ステップＳ４１４）。案内ＣＰＵ２２は、候補レコードを受信する（ステップＳ９０１）。案内ＣＰＵ２２は、候補レコードに記録されたコンテンツＩＤに対応するコンテンツを取得して、図１１を使用して説明した画面を表示部２６に表示する（ステップＳ９０２）。
【００９６】
案内ＣＰＵ２２は、属性選択ボタン６２を介して、属性の入力を受け付ける（ステップＳ９０４）。次へボタン６４の選択を受け付けた場合、入力ＣＰＵ７２は、ステップＳ９０４で受け付けた属性をサーバＣＰＵ１２に送信する（ステップＳ９０５）。
【００９７】
サーバＣＰＵ１２は、属性を受信する（ステップＳ４１６）。サーバＣＰＵ１２は、ステップＳ４１３で抽出した候補レコードに記録されたコンテンツＩＤと、ステップＳ４１６で受信した属性とを関連付けて、教師ＤＢ５１に記録する（ステップＳ４１７）。
【００９８】
サーバＣＰＵ１２は、処理中の分野について所定数、たとえば２０個のレコードの処理を終了したか否かを判定する（ステップＳ４１８）。終了していないと判定した場合（ステップＳ４１８でＮＯ）、サーバＣＰＵ１２はステップＳ４１３に戻る。終了したと判定した場合（ステップＳ４１８でＹＥＳ）、サーバＣＰＵ１２はステップＳ４１１に戻る。
【００９９】
図１８は、モデル作成のサブルーチンの処理の流れを説明するフローチャートである。モデル作成のサブルーチンは、図２を使用して説明した属性付与モデルを作成するサブルーチンである。
【０１００】
サーバＣＰＵ１２は、教師ＤＢ５１に未処理の教師レコードがあるか否かを判定する（ステップＳ４２１）。あると判定した場合（ステップＳ４２１でＹＥＳ）、サーバＣＰＵ１２は未処理の教師レコードを１個取得する（ステップＳ４２２）。サーバＣＰＵ１２は、ステップＳ４２２で取得したレコードに記録されたコンテンツＩＤに対応するコンテンツＩＤをキーとして特徴量ＤＢ５２を検索し、コンテンツＩＤに対応する特徴量を取得する（ステップＳ４２３）。
【０１０１】
なお、特徴量ＤＢ５２を使用する代わりに、サーバＣＰＵ１２は、コンテンツＩＤで指定されたコンテンツを解析することにより、特徴量を算出しても良い。
【０１０２】
サーバＣＰＵ１２は、ステップＳ４２２で取得した教師レコードと、ステップＳ４２３で取得した特徴量とを関連付けて、補助記憶装置１４に一時的に記憶する（ステップＳ４２４）。サーバＣＰＵ１２は、ステップＳ４２１に戻る。
【０１０３】
未処理の教師レコードがないと判定した場合（ステップＳ４２１でＮＯ）、サーバＣＰＵ１２は属性付与モデルを作成する（ステップＳ４２５）。属性付与モデルは、図２を使用して説明したように、入力層をコンテンツの特徴量、出力層を推奨対象者の属性とする機械学習により作成する。機械学習の詳細については、説明を省略する。作成した属性付与モデルを補助記憶装置１４に記憶した後に、サーバＣＰＵ１２は処理を終了する。
【０１０４】
なお、サーバＣＰＵ１２はすべての分野に共通の属性付与モデルを１個作成しても良いし、分野ごとに別々に属性付与モデルを作成しても良い。モデル作成のサブルーチンにより、サーバＣＰＵ１２は、コンテンツの特徴量から推奨対象者の属性を算出するモデルを作成するモデル作成部の機能を果たす。
【０１０５】
図１９は、推奨ＤＢ５３作成のサブルーチンの処理の流れを説明するフローチャートである。推奨ＤＢ５３作成のサブルーチンは、図３を使用して説明したように、属性付与モデルを用いて推奨ＤＢ５３を作成するサブルーチンである。
【０１０６】
サーバＣＰＵ１２は、コンテンツＤＢ５４に未処理のコンテンツレコードがあるか否かを判定する（ステップＳ４３１）。あると判定した場合（ステップＳ４３１でＹＥＳ）、サーバＣＰＵ１２は未処理のコンテンツレコードを１個取得する（ステップＳ４３２）。サーバＣＰＵ１２は、ステップＳ４３２で取得したコンテンツレコードに記録されたコンテンツＩＤをキーとして特徴量ＤＢ５２を検索し、コンテンツＩＤに対応する特徴量を取得する（ステップＳ４３３）。
【０１０７】
なお、特徴量ＤＢ５２を使用する代わりに、サーバＣＰＵ１２は、コンテンツＩＤで指定されたコンテンツを解析することにより、特徴量を算出しても良い。
【０１０８】
サーバＣＰＵ１２は、ステップＳ４３３で取得したコンテンツの特徴量を、図１８を使用して説明したモデル作成のサブルーチンで作成した属性付与モデルに入力して、推奨対象者の属性を算出する（ステップＳ４３４）。サーバＣＰＵ１２は、推奨ＤＢ５３にステップＳ４３１で取得したコンテンツレコードに記録されたコンテンツＩＤおよび分野と、ステップＳ４３４で算出した推奨対象者の属性とを記録する（ステップＳ４３５）。
【０１０９】
サーバＣＰＵ１２は、ステップＳ４３１に戻る。未処理のコンテンツレコードがないと判定した場合（ステップＳ４３１でＮＯ）、サーバＣＰＵ１２は処理を終了する。
【０１１０】
図１６を使用して説明したように、推奨ＤＢ作成のサブルーチンは繰り返し実行される。２回目以降に実行される推奨ＤＢ作成のサブルーチンにより、サーバＣＰＵ１２は本実施の形態の第１更新部の機能を果たす。
【０１１１】
図２０は、案内段階のプログラムの処理の流れを説明するフローチャートである。図２０を使用して、図１を使用して説明した案内段階においてサーバＣＰＵ１２と案内ＣＰＵ２２とが連携して行う処理の流れを説明する。
【０１１２】
案内ＣＰＵ２２は、図１２を使用して説明した画面を表示部２６に表示し、入力部２７を介してユーザが情報提供を望む分野およびユーザの属性の入力を取得する（ステップＳ６０１）。
【０１１３】
案内ＣＰＵ２２は、図１３を使用して説明した画面を表示部２６に表示し、入力部２７を介してキーワードを取得する（ステップＳ６０２）。なお、案内ＣＰＵ２２は、ステップＳ６０１で取得した分野および属性に応じた所定のキーワードを表示することが望ましい。案内ＣＰＵ２２は、取得した分野、属性およびキーワードをサーバＣＰＵ１２に送信する（ステップＳ６０３）。
【０１１４】
サーバＣＰＵ１２は、分野、属性およびキーワードを受信する（ステップＳ５２１）。サーバＣＰＵ１２は、コンテンツ抽出のサブルーチンを起動する（ステップＳ５２２）。コンテンツ抽出のサブルーチンは、分野、属性およびキーワードに基づいて、ユーザに提示するコンテンツを抽出するサブルーチンである。抽出した結果は、推奨ＤＢ５３に記録される。コンテンツ抽出のサブルーチンの処理の流れは後述する。
【０１１５】
サーバＣＰＵ１２は、コンテンツ抽出のサブルーチンで候補ＤＢ５５に記録されたコンテンツＩＤと推薦点とを、案内ＣＰＵ２２に送信する（ステップＳ５２３）。ステップＳ５２３によりサーバＣＰＵ１２は本実施の形態のコンテンツ出力部の機能を果たす。案内ＣＰＵ２２は、コンテンツＩＤおよび推薦点を受信して、補助記憶装置２４に記憶する（ステップＳ６１１）。
【０１１６】
案内ＣＰＵ２２は、図１４を使用して説明した画面を表示部２６に表示する（ステップＳ６１２）。案内ＣＰＵ２２は、推薦点が最も高いコンテンツをコンテンツ表示欄６７に表示することが望ましい。次の店ボタン６８２の入力を受け付けた場合、案内ＣＰＵ２２は推薦点が次に高いコンテンツをコンテンツ表示欄６７に取得する。前の店ボタン６８１の入力を受け付けた場合、案内ＣＰＵ２２は一つ前に表示していたコンテンツをコンテンツ表示欄６７に表示する。コンテンツ中のリンク等の選択を受け付けた場合、案内ＣＰＵ２２は適宜リンク先を表示する。
【０１１７】
案内ＣＰＵ２２は終了ボタン６８３の選択を受け付ける（ステップＳ６１３）。案内ＣＰＵ２２は図１５を使用して説明した画面を表示部２６に表示する（ステップＳ６１４）。案内ＣＰＵ２２は、フィードバックボタン６６を介してユーザによる回答を取得する（ステップＳ６１５）。案内ＣＰＵ２２は、直前にコンテンツ表示欄６７に表示していたコンテンツのコンテンツＩＤと、分野と、ステップＳ６１５で取得した回答に関連付けられた点数とを、サーバＣＰＵ１２に送信する（ステップＳ６１６）。案内ＣＰＵ２２は、処理を終了する。
【０１１８】
サーバＣＰＵ１２は、コンテンツＩＤと分野と点数とを受信する（ステップＳ５３１）。サーバＣＰＵ１２は、ステップＳ５３１により本実施の形態のフィードバック取得部の機能を果たす。サーバＣＰＵ１２は、教師ＤＢ５１に新しいレコードを作成し、コンテンツＩＤと分野と点数とを、それぞれのフィールドに記録する（ステップＳ５３２）。ステップＳ５３２により、サーバＣＰＵ１２は本実施の形態の第２更新部の機能を果たす。
【０１１９】
案内ＣＰＵ２２は、たとえばユーザがコンテンツを印刷した場合、一つのコンテンツを長時間閲覧した場合、または一つのコンテンツを繰り返して表示した場合等に、高い点数を付与しても良い。この場合、案内ＣＰＵ２２はステップＳ６１４を省略しても良い。
【０１２０】
案内ＣＰＵ２２は、ユーザの視線、呼吸数、または、脈拍数等の生体情報に基づいて、各コンテンツに対するユーザの好みのレベルを取得して、点数を付与しても良い。
【０１２１】
図２１は、コンテンツ抽出のサブルーチンの処理の流れを説明するフローチャートである。コンテンツ抽出のサブルーチンは、分野、属性およびキーワードに基づいて、ユーザに提示するコンテンツを抽出するサブルーチンである。
【０１２２】
サーバＣＰＵ１２は、候補ＤＢ５５をレコードが含まれない状態に初期化する（ステップＳ５４０）。サーバＣＰＵ１２は、推奨ＤＢ５３から１個のレコードを取得する（ステップＳ５４２）。なお、２回目以降のステップＳ５４２においては、サーバＣＰＵ１２は推奨ＤＢ５３から未処理のレコードを取得する。サーバＣＰＵ１２は、ステップＳ５４２で取得したレコードの分野と、ユーザが指定した分野とが一致するか否かを判定する（ステップＳ５４３）。
【０１２３】
一致すると判定した場合（ステップＳ５４３でＹＥＳ）、サーバＣＰＵ１２は変数「推薦点」を初期値０に設定する（ステップＳ５４４）。サーバＣＰＵ１２は、ステップＳ５４２で取得したレコードの年代フィールドに記録された年代が、ユーザの年代を含むか否かを判定する（ステップＳ５４５）。含むと判定した場合（ステップＳ５４５でＹＥＳ）、サーバＣＰＵ１２は変数「推薦点」に所定の年代点を加算する（ステップＳ５４６）。
【０１２４】
含まないと判定した場合（ステップＳ５４５でＮＯ）、またはステップＳ５４６の終了後、サーバＣＰＵ１２は、ステップＳ５４２で取得したレコードの性別フィールドに記録された性別と、ユーザの性別とが一致するか否かを判定する（ステップＳ５４７）。一致すると判定した場合（ステップＳ５４７でＹＥＳ）、サーバＣＰＵ１２は変数「推薦点」に所定の性別点を加算する（ステップＳ５４８）。
【０１２５】
一致しないと判定した場合（ステップＳ５４７でＮＯ）、またはステップＳ５４８の終了後、サーバＣＰＵ１２は、ステップＳ５４２で取得したレコードのコンテンツＩＤフィールドで指定されるコンテンツを解析して、キーワード点を算出する（ステップＳ５４９）。キーワード点は、たとえばコンテンツ内に含まれるユーザが選択したキーワードの数に所定の定数を積算して算出する。なお、一つのコンテンツに同一のキーワードが複数回登場する場合、１回分と扱っても良いし、登場する回数を加味してキーワード点を算出しても良い。
【０１２６】
サーバＣＰＵ１２は変数「推薦点」にキーワード点を加算する（ステップＳ５５０）。サーバＣＰＵ１２は、候補ＤＢ５５にレコードを作成して、ステップＳ５４２で取得したコンテンツＩＤと、推薦点とをそれぞれのフィールドに記録する（ステップＳ５５１）。
【０１２７】
分野が一致しないと判定した場合（ステップＳ５４３でＮＯ）、またはステップＳ５５１の終了後、サーバＣＰＵ１２は、推奨ＤＢ５３のすべてのレコードの処理を終了したか否かを判定する（ステップＳ５５２）。終了していないと判定した場合（ステップＳ５５２でＮＯ）、サーバＣＰＵ１２はステップＳ５４２に戻る。
【０１２８】
終了したと判定した場合（ステップＳ５５２でＹＥＳ）、サーバＣＰＵ１２は推薦点フィールドをキーとして推奨ＤＢ５３を降順にソートし、上位から所定数以外のレコードを削除する（ステップＳ５５４）。その後、サーバＣＰＵ１２は処理を終了する。
【０１２９】
ステップＳ５４９において、サーバＣＰＵ１２は、コンテンツ中のキーワードを検出する代わりに、たとえば特許文献１に記載された手法等を用いて事前にコンテンツに付与されたタグに基づいて、キーワード点を算出しても良い。
【０１３０】
本実施の形態によると、コンテンツに対して、推奨対象者の属性を付与する情報処理システム１０を提供することができる。サーバＣＰＵ１２の負荷が少ない時間に、属性付与モデルの更新および推奨ＤＢ５３の更新を実行することにより、ユーザの好みや流行の変化、および、コンテンツの更新に対応して、適切な属性を付与する情報処理システム１０を提供することができる。
【０１３１】
本実施の形態によると、ユーザの属性に応じて、適切なコンテンツを提示する情報処理システム１０を提供することができる。コンテンツＤＢ５４を使用することにより、たとえば広告主が提供するコンテンツまたは地方自治体が認定したコンテンツ等、あらかじめ定めたコンテンツ群の中から、ユーザに応じたコンテンツを提示することができる。
【０１３２】
本実施の形態によると、最初に設定した教師データの属性フィールドには含まれない属性のユーザに、コンテンツを提示する情報処理システム１０を提供することができる。たとえば運営業者の想定と実際のユーザの好みとが異なっていても、学習により適切な属性付与モデルを作成する情報処理システム１０を提供することができる。
【０１３３】
なお、図１２を使用して説明した画面において、案内ＣＰＵ２２は、たとえば、ユーザの職種、年収、出身地、家族構成、同行者の有無等の属性の入力を求めても良い。これらの属性を教師ＤＢ５１に記録し、属性付与モデルを生成することにより、ユーザに好みに応じたコンテンツを提示する情報処理システム１０を提供できる。
【０１３４】
［実施の形態２］
本実施の形態は、クーポンを発行し、その使用状況に基づいてユーザのフィードバックを記録する情報処理システム１０に関する。実施の形態１と共通する部分については、説明を省略する。
【０１３５】
図２２は、実施の形態２の利用段階の処理の概要を説明する説明図である。案内ＣＰＵ２２は、図１４を使用して説明した画面に、クーポン発行ボタンを追加で表示する。提示されたコンテンツをユーザが気に入って、クーポン発行ボタンを選択した場合、案内ＣＰＵ２２は表示部２６にクーポン発行画面のＵＲＬを示すバーコードを表示する。ここで、クーポン発行画面のＵＲＬは、クーポンに固有に付与されたクーポンＩＤを示す情報を含む。
【０１３６】
ユーザは、スマートフォン等のユーザクライアント４１でバーコードを撮影することにより、クーポンのＵＲＬを取得する。ユーザは、コンテンツ提供元の店舗に行き、ユーザクライアント４１を用いて取得したＵＲＬにアクセスして、クーポン画面を提示する。クーポン画面に含まれるバーコードを、店舗クライアント３１に付属するバーコードリーダで読み取ることなどにより、使用されたクーポンのクーポンＩＤがサーバＣＰＵ１２に通知される。サーバＣＰＵ１２は、使用されたクーポンのクーポンＩＤに関する情報を教師ＤＢ５１に記録する。
【０１３７】
クーポンを取得して使用するという、ユーザの実際の行動に基づいて付与した点数を教師ＤＢ５１に記録することにより、精度の高い教師データを収集することができる。
【０１３８】
図２３は、実施の形態２の情報処理システム１０の構成を説明する説明図である。情報処理システム１０は、インターネット、公衆通信回線またはＬＡＮ等のネットワークを介して接続されたサーバ１１、案内クライアント２１、店舗クライアント３１およびユーザクライアント４１を備える。
【０１３９】
サーバ１１の補助記憶装置１４には、サーバＣＰＵ１２に実行させるプログラム、教師ＤＢ５１、特徴量ＤＢ５２、推奨ＤＢ５３、コンテンツＤＢ５４、候補ＤＢ５５およびプログラムの実行に必要な各種情報に加えて、クーポンＤＢ５６が保存される。
【０１４０】
店舗クライアント３１は、店舗ＣＰＵ３２、主記憶装置３３、補助記憶装置３４、通信部３５、表示部３６、入力部３７およびバスを備える。本実施の形態の店舗クライアント３１は、ＰＯＳ（Point Of Sales）機能付きのキャッシュレジスターである。店舗クライアント３１は、レジの近くに配置された汎用のパソコンまたはタブレット等でも良い。
【０１４１】
店舗ＣＰＵ３２は、本実施の形態にかかるプログラムを実行する演算制御装置である。店舗ＣＰＵ３２には、一または複数のＣＰＵまたはマルチコアＣＰＵ等が使用される。店舗ＣＰＵ３２は、バスを介して店舗クライアント３１を構成するハードウェア各部と接続されている。
【０１４２】
主記憶装置３３は、ＳＲＡＭ、ＤＲＡＭ、フラッシュメモリ等の記憶装置である。主記憶装置３３には、店舗ＣＰＵ３２が行う処理の途中で必要な情報および店舗ＣＰＵ３２で実行中のプログラムが一時的に保存される。
【０１４３】
補助記憶装置３４は、ＳＲＡＭ、フラッシュメモリ、ハードディスクまたは磁気テープ等の記憶装置である。補助記憶装置３４には、店舗ＣＰＵ３２に実行させるプログラムおよびプログラムの実行に必要な各種情報が保存される。
【０１４４】
通信部３５は、ネットワークとの通信を行うインターフェイスである。表示部３６は、たとえば液晶表示パネルである。入力部２７は、たとえばハンディスキャナ等のバーコードリーダとテンキーである。
【０１４５】
ユーザクライアント４１は、ユーザＣＰＵ４２、主記憶装置４３、補助記憶装置４４、通信部４５、タッチパネル４８およびバスを備える。本実施の形態のユーザクライアント４１は、ユーザが携帯する汎用のスマートフォンまたはタブレット等の携帯用電子機器である。
【０１４６】
ユーザＣＰＵ４２は、本実施の形態にかかるプログラムを実行する演算制御装置である。ユーザＣＰＵ４２には、一または複数のＣＰＵまたはマルチコアＣＰＵ等が使用される。ユーザＣＰＵ４２は、バスを介してユーザクライアント４１を構成するハードウェア各部と接続されている。
【０１４７】
主記憶装置４３は、ＳＲＡＭ、ＤＲＡＭ、フラッシュメモリ等の記憶装置である。主記憶装置４３には、ユーザＣＰＵ４２が行う処理の途中で必要な情報およびユーザＣＰＵ４２で実行中のプログラムが一時的に保存される。
【０１４８】
補助記憶装置４４は、ＳＲＡＭ、フラッシュメモリ、ハードディスクまたは磁気テープ等の記憶装置である。補助記憶装置４４には、ユーザＣＰＵ４２に実行させるプログラムおよびプログラムの実行に必要な各種情報が保存される。
【０１４９】
通信部４５は、ネットワークとの通信を行うインターフェイスである。タッチパネル４８は、液晶表示パネル等の表示部４６と、表示部２６に積層された入力部４７とを備える。
【０１５０】
図２４は、クーポンＤＢ５６のレコードレイアウトを説明する説明図である。クーポンＤＢ５６は、クーポンＩＤと、クーポンＩＤ、分野、クーポンを受け取ったユーザの属性およびクーポンの使用状況を関連付けて記録するＤＢである。
【０１５１】
クーポンＤＢ５６は、クーポンＩＤフィールド、コンテンツＩＤフィールド、分野フィールド、属性フィールドおよび使用状況フィールドを有する。属性フィールドは、年代フィールドおよび性別フィールドを有する。
【０１５２】
クーポンＩＤフィールドには、クーポンに固有に付与されたクーポンＩＤが記録される。クーポンＩＤは、クーポンが発行される都度生成される。コンテンツＩＤフィールドには、クーポンを発行したコンテンツに固有に付与されたＩＤが記録されている。分野フィールドには、コンテンツの分野が記録されている。
【０１５３】
年代フィールドには、クーポンを発行したユーザの年代が記録されている。性別フィールドには、クーポンを発行したユーザの性別が記録されている。使用状況フィールドには、クーポンの使用状況が記録されている。クーポンＤＢ５６は、一つのクーポンＩＤについて一つのレコードを有する。クーポンＤＢ５６は、本実施の形態の第２記録部の一例である。
【０１５４】
図２５は、ユーザクライアント４１が表示する画面を示す説明図である。案内クライアント２１が表示したバーコードに記載されたＵＲＬにアクセスすることにより、ユーザＣＰＵ４２は表示部４６に図２５に示す画面を表示する。
【０１５５】
図２５に示す画面には、クーポンの内容を示す文字と画像、および、バーコードが表示されている。バーコードには、クーポンＩＤが記録されている。店舗クライアント３１の入力部３７は、クーポンのバーコードを読み取ることができる。
【０１５６】
なお、店舗ＣＰＵ３２は、たとえばＮＦＣ（Near Field Communication）により、ユーザＣＰＵ４２からクーポンＩＤを受信しても良い。ユーザＣＰＵ４２は表示部４６に文字によりクーポンＩＤを表示し、店舗クライアント３１のユーザが入力部３７のキーボード等を用いて入力したクーポンＩＤを店舗ＣＰＵ３２が取得しても良い。
【０１５７】
案内ＣＰＵ２２は、紙でクーポンを発行しても良い。紙のクーポンには、文字またはバーコードによりクーポンＩＤを印刷する。ユーザは、ユーザクライアント４１を使用する代わりに、紙のクーポンを店舗で提示してクーポンを使用することができる。スマートフォン等の扱いに不慣れな高齢者等でも、容易にクーポンを利用できる。
【０１５８】
図２６は、実施の形態２の案内段階のプログラムの処理の流れを説明するフローチャートである。図２６は、図２０を使用して説明したプログラムの代わりに使用するプログラムを示す。ステップＳ６１１までは図２０と同一であるので説明を省略する。
【０１５９】
案内ＣＰＵ２２は、図１４を使用して説明した画面にクーポン発行ボタンを追加した画面を表示部２６に表示する（ステップＳ６２１）。なお、クーポンを発行するコンテンツと発行しないコンテンツとが混在する場合には、案内ＣＰＵ２２はクーポンを発行するコンテンツをコンテンツ表示欄６７に表示する場合にのみクーポン発行ボタンを表示する。
【０１６０】
案内ＣＰＵ２２は、推薦点が最も高いコンテンツをコンテンツ表示欄６７に表示することが望ましい。次の店ボタン６８２の入力を受け付けた場合、案内ＣＰＵ２２は推薦点が次に高いコンテンツをコンテンツ表示欄６７に取得する。前の店ボタン６８１の入力を受け付けた場合、案内ＣＰＵ２２は一つ前に表示していたコンテンツをコンテンツ表示欄６７に表示する。コンテンツ中のリンク等の選択を受け付けた場合、案内ＣＰＵ２２は適宜リンク先を表示する。
【０１６１】
案内ＣＰＵ２２は、クーポン発行ボタンの選択を受け付けたか否かを判定する（ステップＳ６２２）。選択を受け付けたと判定した場合（ステップＳ６２２でＹＥＳ）、案内ＣＰＵ２２は、コンテンツ表示欄６７に表示中のコンテンツのコンテンツＩＤ、および、ステップＳ６０１で取得した分野とユーザの属性とを、サーバＣＰＵ１２に送信する（ステップＳ６２３）。
【０１６２】
サーバＣＰＵ１２は、コンテンツＩＤおよび属性を受信する（ステップＳ５６１）。サーバＣＰＵ１２は、クーポンＤＢ５６に新しいレコードを作成する。サーバＣＰＵ１２は、固有のクーポンＩＤを生成して、クーポンＩＤフィールドに記録する。サーバＣＰＵ１２は、受信したコンテンツＩＤ、分野および属性をそれぞれのフィールドに記録する（ステップＳ５６２）。サーバＣＰＵ１２は、使用状況フィールドに未使用であることを意味する初期値「未」を記録する。サーバＣＰＵ１２は、クーポンＩＤを案内ＣＰＵ２２に送信する（ステップＳ５６３）。
【０１６３】
案内ＣＰＵ２２は、クーポンＩＤを受信する（ステップＳ６３１）。案内ＣＰＵ２２は、表示部２６にクーポンＩＤに対応するクーポン発行画面のＵＲＬを示すバーコードを表示することにより、クーポンを出力する（ステップＳ６３２）。ステップＳ６３２により、表示部２６は、コンテンツに関連付けられたクーポンに関する情報を出力するクーポン出力部の機能を果たす。なお、案内ＣＰＵ２２は紙またはＮＦＣによりクーポンを出力しても良い。
【０１６４】
ユーザがユーザクライアント４１を起動して、バーコードを撮影することにより、ユーザＣＰＵ４２はクーポンを読み取る（ステップＳ７０１）。ユーザＣＰＵ４２は、読み取ったクーポンを補助記憶装置４４に記憶する（ステップＳ７０２）。
【０１６５】
クーポンボタンの選択を受け付けていないと判定した場合（ステップＳ６２２でＮＯ）、または、ステップＳ６３２の終了後、案内ＣＰＵ２２は処理を終了するか否かを判定する（ステップＳ６３３）。たとえば、終了ボタン６８３の選択を受け付けた場合、または、所定の時間ユーザによる操作が行われなかった場合等に、案内ＣＰＵ２２は処理を終了すると判定する。
【０１６６】
終了しないと判定した場合（ステップＳ６３３でＮＯ）、案内ＣＰＵ２２はステップＳ６２１に戻る。終了すると判定した場合（ステップＳ６３３でＹＥＳ）、案内ＣＰＵ２２は処理を終了する。
【０１６７】
図２７は、実施の形態２のクーポン利用段階のプログラムの処理の流れを説明するフローチャートである。ユーザＣＰＵ４２は、表示部４６にクーポンを表示する（ステップＳ７１１）。ユーザＣＰＵ４２は、その後処理を終了する。
【０１６８】
店舗ＣＰＵ３２は、表示されたクーポンを読み取り、クーポンＩＤを取得する（ステップＳ８０１）。店舗ＣＰＵ３２は、クーポンＩＤをサーバＣＰＵ１２に送信する（ステップＳ８０２）。サーバＣＰＵ１２は、クーポンＩＤを受信する（ステップＳ５７１）。ステップＳ５７１により、サーバＣＰＵ１２は、クーポンの利用状況を取得する利用状況取得部の機能を果たす。
【０１６９】
サーバＣＰＵ１２は、クーポンＩＤをキーとしてクーポンＤＢ５６を検索し、レコードを抽出する（ステップＳ５７２）。サーバＣＰＵ１２は、抽出したレコードの使用状況フィールドに、使用済みであることを示す「済」を記録する（ステップＳ５７３）。サーバＣＰＵ１２は抽出したレコードからコンテンツＩＤ、分野および属性を取得する。
【０１７０】
サーバＣＰＵ１２は、教師ＤＢ５１に新しいレコードを作成し、コンテンツＩＤと分野と点数とを、それぞれのフィールドに記録する。（ステップＳ５７４）。ここで、点数はクーポンが使用されたことに対応する所定の点数である。
【０１７１】
本実施の形態によると、クーポンを取得し、使用するという、ユーザの実際の行動に基づいて付与した点数を教師ＤＢ５１に記録することにより、精度の高い教師データを収集することができる。
【０１７２】
クーポンの発行、クーポン表示用サイトへのアクセス、および、クーポンの使用のそれぞれについて、教師ＤＢ５１にレコードを作成し、記録しても良い。ユーザの行動の様々な段階を教師ＤＢ５１に記録することにより、さらに精度の高い教師データを収集することができる。
【０１７３】
［実施の形態３］
本実施の形態は、ユーザの外観に基づいて案内ＣＰＵ２２がユーザの属性を判定する情報処理システム１０に関する。実施の形態１と共通する部分については、説明を省略する。
【０１７４】
図２８は、実施の形態３の情報処理システム１０の構成を説明する説明図である。本実施の形態の案内クライアント２１は、案内ＣＰＵ２２、主記憶装置２３、補助記憶装置２４、通信部２５およびタッチパネル２８に加えて、カメラ２９を備える。案内ＣＰＵ２２は、カメラ２９が撮影した画像を解析することができる。
【０１７５】
図２９は、実施の形態３の案内段階の処理の概要を説明する説明図である。図２９は、カメラ２９が撮影したユーザの画像を、案内ＣＰＵ２２が解析した状態を示す。案内ＣＰＵ２２は、画像解析に基づいて３８歳の男性、８歳の男性および６２歳の女性が撮影されていると判定する。画像解析については、様々な手法が提案されているので、詳細な説明は省略する。
【０１７６】
案内ＣＰＵ２２は、成人と子供を含む少人数のグループであることから、撮影されたユーザのグループの特性を示すグループ属性は「家族」であると判定する。なお、案内ＣＰＵ２２は、ユーザが単独である場合には、グループ属性は「一人」であると判定する。案内ＣＰＵ２２は、ユーザが同年代の男女２人である場合には、グループ属性は「カップル」であると判定する。案内ＣＰＵ２２は、同年代の３人以上または同性の２人組である場合には、グループ属性は「友人」であると判定する。
【０１７７】
図３０は、実施の形態３の教師ＤＢ５１のレコードレイアウトを説明する説明図である。教師ＤＢ５１は、コンテンツと、推奨対象者の属性とを関連付けた教師データを記録するデータベースである。
【０１７８】
教師ＤＢ５１は、コンテンツＩＤフィールド、分野フィールド、属性フィールドおよび点数フィールドを有する。属性フィールドは、グループ属性フィールドおよび個人属性フィールドを有する。個人属性フィールドは、年代フィールドおよび性別フィールドを有する。
【０１７９】
コンテンツＩＤフィールドには、案内クライアント２１がタッチパネル２８に表示するコンテンツに固有に付与されたＩＤが記録されている。分野フィールドには、コンテンツの分野が記録されている。
【０１８０】
グループ属性フィールドには、推奨対象者のグループ属性が記録されている。年代フィールドには、推奨対象者の年代が記録されている。性別フィールドには、推奨対象者の性別が記録されている。点数フィールドには、それぞれのレコードの点数が記録されている。
【０１８１】
なお、図示を省略するが、本実施の形態においては、推奨ＤＢ５３の属性フィールドも、図３０に示す教師ＤＢ５１の属性フィールドと同様の構成である。
【０１８２】
図３１は、実施の形態３の案内段階のプログラムの処理の流れを説明するフローチャートである。図３１は、図２０を使用して説明したプログラムの代わりに使用するプログラムを示す。
【０１８３】
案内ＣＰＵ２２は、カメラ２９によりユーザを撮影する（ステップＳ６４１）。撮影は、静止画でも動画でも良い。案内ＣＰＵ２２は、撮影した画像を解析して、所定の領域に写っている人物の年齢および性別等の個人属性を判定する（ステップＳ６４２）。なお、案内ＣＰＵ２２は、たとえば面積の大きい順に４人まで等のように、個人属性を判定する人数を限定しても良い。
【０１８４】
案内ＣＰＵ２２は、個人属性に基づいてユーザのグループ属性を判定する（ステップＳ６４３）。たとえば案内ＣＰＵ２２は、成人と子供を含む少人数のグループである場合には、グループ属性は「家族」であると判定する。案内ＣＰＵ２２は、ユーザが単独である場合には、グループ属性は「一人」であると判定する。案内ＣＰＵ２２は、ユーザが同年代の男女２人である場合には、グループ属性は「カップル」であると判定する。案内ＣＰＵ２２は、同年代の３人以上または同性の２人組である場合には、グループ属性は「友人」であると判定する。
【０１８５】
ステップＳ６４２およびステップＳ６４３により、案内ＣＰＵ２２は本実施の形態の属性取得部の機能を果たす。
【０１８６】
案内ＣＰＵ２２は、図１２を使用して説明した画面の上半分を表示部２６に表示し、入力部２７を介してユーザが情報提供を望む分野を取得する（ステップＳ６４４）。なお、案内ＣＰＵ２２は表示部２６および入力部２７を介してユーザのグループ属性および個人属性を取得しても良い。このようにすることで、案内ＣＰＵ２２は画像からユーザの属性を判定する際の教師データを取得することができる。
【０１８７】
案内ＣＰＵ２２は、図１３を使用して説明した画面を表示部２６に表示し、入力部２７を介してキーワードを取得する（ステップＳ６４５）。案内ＣＰＵ２２は、取得した分野、属性およびキーワードをサーバＣＰＵ１２に送信する（ステップＳ６４６）。ここで属性は、グループ属性およびグループ内の各個人の年齢および性別を含む。
【０１８８】
サーバＣＰＵ１２は、分野、属性およびキーワードを受信する（ステップＳ５８１）。サーバＣＰＵ１２は、コンテンツ抽出２のサブルーチンを起動する（ステップＳ５８２）。コンテンツ抽出２のサブルーチンは、分野、属性およびキーワードに基づいて、ユーザに提示するコンテンツを抽出するサブルーチンである。抽出した結果は、推奨ＤＢ５３に記録される。コンテンツ抽出２のサブルーチンの処理の流れは後述する。
【０１８９】
サーバＣＰＵ１２は、推奨ＤＢ５３に記録されたコンテンツＩＤおよび推薦点を案内ＣＰＵ２２に送信する（ステップＳ５８３）。案内ＣＰＵ２２は、コンテンツＩＤおよび推薦点を受信して、補助記憶装置２４に記憶する（ステップＳ６５１）。
【０１９０】
案内ＣＰＵ２２は、図１４を使用して説明した画面を表示部２６に表示する（ステップＳ６１２）。以後の処理は図２０と同一であるので説明を省略する。
【０１９１】
図３２および図３３は、コンテンツ抽出２のサブルーチンの処理の流れを説明するフローチャートである。コンテンツ抽出２のサブルーチンは、分野、属性およびキーワードに基づいて、ユーザに提示するコンテンツを抽出するサブルーチンである。
【０１９２】
サーバＣＰＵ１２は、候補ＤＢ５５をレコードが含まれない状態に初期化する（ステップＳ７４０）。サーバＣＰＵ１２は、推奨ＤＢ５３から１個のレコードを取得する（ステップＳ７４２）。なお、２回目以降のステップＳ７４２においては、サーバＣＰＵ１２は推奨ＤＢ５３から未処理のレコードを取得する。
【０１９３】
サーバＣＰＵ１２は、ステップＳ７４２で取得したレコードの分野と、ユーザが指定した分野とが一致するか否かを判定する（ステップＳ７４３）。一致すると判定した場合（ステップＳ７４３でＹＥＳ）、サーバＣＰＵ１２は変数「推薦点」を初期値０に設定する（ステップＳ７４４）。
【０１９４】
サーバＣＰＵ１２は、ステップＳ７４２で取得したレコードのグループ属性フィールドに記録されたグループ属性が、ユーザのグループ属性を含むか否かを判定する（ステップＳ７４５）。含むと判定した場合（ステップＳ７４５でＹＥＳ）、サーバＣＰＵ１２は変数「推薦点」に所定のグループ点を加算する（ステップＳ７４６）。
【０１９５】
グループ属性を含まないと判定した場合（ステップＳ７４５でＮＯ）、またはステップＳ７４６の終了後、サーバＣＰＵ１２は、ステップＳ７４２で取得したレコードのコンテンツＩＤフィールドで指定されるコンテンツを解析して、キーワード点を算出する（ステップＳ７４７）。サーバＣＰＵ１２は変数「推薦点」にキーワード点を加算する（ステップＳ７４８）。
【０１９６】
サーバＣＰＵ１２は、ステップＳ７４２で取得したレコードの年代フィールドに記録された年代が、カメラ２９により撮影された一人のユーザの年代を含むか否かを判定する（ステップＳ７５２）。なお、２回目以降のステップＳ７５２においては、サーバＣＰＵ１２は未処理のユーザについて判定を行う。含むと判定した場合（ステップＳ７５２でＹＥＳ）、サーバＣＰＵ１２は変数「推薦点」に所定の年代点を加算する（ステップＳ７５４）。
【０１９７】
含まないと判定した場合（ステップＳ７５２でＮＯ）、またはステップＳ７５４の終了後、サーバＣＰＵ１２は、ステップＳ５４２で取得したレコードの性別フィールドに記録された性別と、ステップＳ７５２と同一のユーザの性別とが一致するか否かを判定する（ステップＳ７５６）。一致すると判定した場合（ステップＳ７５６でＹＥＳ）、サーバＣＰＵ１２は変数「推薦点」に所定の性別点を加算する（ステップＳ７５７）。
【０１９８】
一致しないと判定した場合（ステップＳ７５６でＮＯ）、またはステップＳ７５７の終了後、サーバＣＰＵ１２はユーザ全員の処理が終了したか否かを判定する（ステップＳ７５８）。終了していないと判定した場合（ステップＳ７５８でＮＯ）、サーバＣＰＵ１２はステップＳ７５２に戻る。
【０１９９】
終了したと判定した場合（ステップＳ７５８でＹＥＳ）、サーバＣＰＵ１２は、候補ＤＢ５５にレコードを作成して、ステップＳ７４２で取得したコンテンツＩＤと、推薦点とをそれぞれのフィールドに記録する（ステップＳ７６１）。
【０２００】
分野が一致しないと判定した場合（ステップＳ７４３でＮＯ）、またはステップＳ７６１の終了後、サーバＣＰＵ１２は、推奨ＤＢ５３のすべてのレコードの処理を終了したか否かを判定する（ステップＳ７６２）。終了していないと判定した場合（ステップＳ７６２でＮＯ）、サーバＣＰＵ１２はステップＳ７４２に戻る。
【０２０１】
終了したと判定した場合（ステップＳ７６２でＹＥＳ）、サーバＣＰＵ１２は推薦点フィールドをキーとして推奨ＤＢ５３を降順にソートし、上位から所定数以外のレコードを削除する（ステップＳ７６３）。その後、サーバＣＰＵ１２は処理を終了する。
【０２０２】
本実施の形態によると、ユーザの外観に基づいて案内ＣＰＵ２２がユーザの属性を判定する情報処理システム１０を提供できる。ユーザは、年齢、性別等の属性を入力する手間を掛けずに、容易に情報を得ることができる。また、ユーザによる誤入力の影響を受けずに教師データを得ることができる。
【０２０３】
さらに本実施の形態によると、ユーザのグループ属性も含めた学習データを得る情報処理システム１０を提供できる。たとえば、同一のユーザであっても、一人で行動する場合と、家族同伴で行動する場合とでは、求める情報が異なる。本実施の形態によると、ユーザの状況に応じた情報を提供する情報処理システム１０を提供できる。
【０２０４】
［実施の形態４］
図３４は、実施の形態４の情報処理装置１１の機能ブロック図である。情報処理装置１１は、属性取得部８１、コンテンツ出力部８２、フィードバック取得部８３および第１更新部８４を備える。属性取得部８１は、人物の属性を取得する。コンテンツ出力部８２は、コンテンツに関する情報と推奨対象者の属性とを関連付けて記録した第１記録部を参照して、属性取得部８１が取得した属性に関連付けられたコンテンツに関する情報を出力する。フィードバック取得部８３は、コンテンツ出力部８２が出力したコンテンツに関する情報に対するフィードバックを取得する。第１更新部８４は、フィードバック取得部８３が取得したフィードバックに基づいて、第１記録部に記録した関連付けを更新する。
【０２０５】
［実施の形態５］
本実施の形態は、汎用のコンピュータとプログラム９７とを組み合わせて動作させることにより、本実施の形態の情報処理システム１０を実現する形態に関する。図３５は、実施の形態５の情報処理システム１０の構成を示す説明図である。なお、実施の形態１と共通する部分の説明は省略する。
【０２０６】
本実施の形態の情報処理システム１０は、ネットワークを介して接続されたサーバコンピュータ９１と、案内クライアント２１とを含む。
【０２０７】
サーバコンピュータ９１は、サーバＣＰＵ１２、主記憶装置１３、補助記憶装置１４、通信部１５、読取部９２およびバスを備える。サーバコンピュータ９１は、汎用のパーソナルコンピュータ、大型計算機等の情報機器等である。また、本実施の形態のサーバコンピュータ９１は、大型計算機上で動作する仮想マシンでも良い。
【０２０８】
プログラム９７は、可搬型記録媒体９６に記録されている。サーバＣＰＵ１２は、読取部９２を介してプログラム９７を読み込み、補助記憶装置１４に保存する。またサーバＣＰＵ１２は、サーバコンピュータ９１に実装されたフラッシュメモリ等の半導体メモリ９８に記憶されたプログラム９７を読出しても良い。さらに、サーバＣＰＵ１２は、通信部１５および図示しないネットワークを介して接続される図示しない他のサーバコンピュータからプログラム９７をダウンロードして補助記憶装置１４に保存しても良い。
【０２０９】
プログラム９７は、サーバコンピュータ９１の制御プログラムとしてインストールされ、主記憶装置１３にロードして実行される。これにより、サーバコンピュータ９１は上述したサーバ１１として機能する。
【０２１０】
案内クライアント２１は、ネットワークを介してサーバコンピュータ９１からプログラム９７を取得し、サーバコンピュータ９１と連携して上述した案内クライアント２１として機能する。
【０２１１】
各実施例で記載されている技術的特徴（構成要件）はお互いに組合せ可能であり、組み合わせすることにより、新しい技術的特徴を形成することができる。
今回開示された実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０２１２】
１０  情報処理システム
１１  サーバ（情報処理装置）
１２  サーバＣＰＵ
１３  主記憶装置
１４  補助記憶装置
１５  通信部
２１  案内クライアント
２２  案内ＣＰＵ
２３  主記憶装置
２４  補助記憶装置
２５  通信部
２６  表示部
２７  入力部
２８  タッチパネル
２９  カメラ
３１  店舗クライアント
３２  店舗ＣＰＵ
３３  主記憶装置
３４  補助記憶装置
３５  通信部
３６  表示部
３７  入力部
４１  ユーザクライアント
４２  ユーザＣＰＵ
４３  主記憶装置
４４  補助記憶装置
４５  通信部
４６  表示部
４７  入力部
４８  タッチパネル
５１  教師ＤＢ
５２  特徴量ＤＢ
５３  推奨ＤＢ
５４  コンテンツＤＢ
５５  候補ＤＢ
５６  クーポンＤＢ
６１  分野選択ボタン
６２  属性選択ボタン
６３  キーワード選択ボタン
６４  次へボタン
６６  フィードバックボタン
６７  コンテンツ表示欄
６８  ボタン表示欄
６８１  前の店ボタン
６８２  次の店ボタン
６８３  終了ボタン
７１  入力クライアント
７２  入力ＣＰＵ
７３  主記憶装置
７４  補助記憶装置
７５  通信部
７６  表示部
７７  入力部
８１  属性取得部
８２  コンテンツ出力部
８３  フィードバック取得部
８４  第１更新部
９１  サーバコンピュータ
９２  読取部
９６  可搬型記録媒体
９７  プログラム
９８  半導体メモリ
【図１】
2018197927.tif 000003
【図２】
2018197927.tif 000004
【図３】
2018197927.tif 000005
【図４】
2018197927.tif 000006
【図５】
2018197927.tif 000007
【図６】
2018197927.tif 000008
【図７】
2018197927.tif 000009
【図８】
2018197927.tif 000010
【図９】
2018197927.tif 000011
【図１０】
2018197927.tif 000012
【図１１】
2018197927.tif 000013
【図１２】
2018197927.tif 000014
【図１３】
2018197927.tif 000015
【図１４】
2018197927.tif 000016
【図１５】
2018197927.tif 000017
【図１６】
2018197927.tif 000018
【図１７】
2018197927.tif 000019
【図１８】
2018197927.tif 000020
【図１９】
2018197927.tif 000021
【図２０】
2018197927.tif 000022
【図２１】
2018197927.tif 000023
【図２２】
2018197927.tif 000024
【図２３】
2018197927.tif 000025
【図２４】
2018197927.tif 000026
【図２５】
2018197927.tif 000027
【図２６】
2018197927.tif 000028
【図２７】
2018197927.tif 000029
【図２８】
2018197927.tif 000030
【図２９】
2018197927.tif 000031
【図３０】
2018197927.tif 000032
【図３１】
2018197927.tif 000033
【図３２】
2018197927.tif 000034
【図３３】
2018197927.tif 000035
【図３４】
2018197927.tif 000036
【図３５】
2018197927.tif 000037