次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一または類似の部分には同一または類似の符号を付している。
図1を参照して、本発明の実施の形態に係る推薦データ成形装置1を説明する。本発明の実施の形態に係る推薦データ成形装置1は、記憶装置10、中央処理制御装置20、通信制御装置(図示せず)などを備える一般的なコンピュータである。本発明の実施の形態に係る推薦データ成形装置1は、所定の処理を実行するための推薦データ成形プログラムが、一般的なコンピュータにインストールされ実行されることにより、実現される。
推薦データ成形装置1は、ユーザに推薦するコンテンツを、複数のグループにわけて出力する。本発明の実施の形態においてコンテンツは、映像データである場合について説明する。推薦データ成形装置1は、推薦装置100から、ユーザに推薦するコンテンツの識別子と、その適合度を含む推薦コンテンツデータ101aを取得し、推薦コンテンツデータ11aとして、記憶装置10に記憶する。推薦データ成形装置1は、コンテンツメタデータ記憶部102に記憶されたコンテンツメタデータ102a、102b、…と、クエリログデータ記憶部103に記憶されたクエリログデータ103aに基づいて、推薦コンテンツデータ11aに含まれる所定数のコンテンツを、所定数のグループに分割して成形した推薦成形データ16aを、情報提供装置104に出力する。情報提供装置104は、ユーザ端末105に、推薦成形データ16aを出力する。
ここで、推薦成形データ16aは、図2に示すようにユーザ端末105に表示される。図2に示す推薦成形データ表示画面P101は、第1グループGR1、第2グループGR2および第3グループGR3と、複数のグループにわけて、ユーザに推薦するコンテンツが表示される。このグループは、推薦データ成形装置1が、推薦装置100から取得した推薦コンテンツデータ11aを、所定の処理に従って分割されたものである。例えば、第1グループGR1は、キャストの”トニー・デッブ”に関するコンテンツが含まれている。第2グループGR2は、キーワードの”イカデミー”に関するコンテンツが含まれている。第3グループGR3は、キーワードの”ファンタジー”に関するコンテンツが含まれている。このように、推薦データ成形装置1は、推薦コンテンツデータ11aを、キャストやキーワードでグルーピングして出力する。
さらに、各グループに含まれるコンテンツについて、サムネイルと、このコンテンツを説明するスニペットN11、…、N21、…、N31、…が設けられている。これらスニペットN11、…、N21、…、N31、…は、各コンテンツのシノプシス情報に基づいて、ユーザの興味をひくキャスト情報やキーワードを強調表示して、作成される。ここでシノプシス情報とは、コンテンツのあらすじの情報である。
このような推薦成形データ表示画面P101によると、ユーザは、ユーザの興味の単位で設けられたグループから、所望のコンテンツを選択しやすい。また、ユーザの興味をひくキャスト情報やキーワードに基づいてスニペットが生成されることにより、ユーザはさらに、所望のコンテンツを選択しやすい。
図2に示す例では、推薦成形データ表示画面P101に3つのグループが表示され、各グループに3つのコンテンツが含まれる。推薦データ成形装置1は、キャストまたはキーワードが類似する3つのコンテンツを抽出して一つのグループを生成し、生成したグループのうち、3つのグループを出力する。本発明の実施の形態においては、各グループに含まれるコンテンツの数n=3の場合を説明する。
以下、図1に示す各要素について詳述する。
推薦装置100は、ユーザUiに推薦するコンテンツについて、ユーザUiへの適合度を算出する。ここで適合度とは、推薦装置100が採用する推薦アルゴリズムにおいて、ユーザUiへ当該コンテンツを推薦することの適切さを示す指標である。例えば、適合度が高いコンテンツが、ユーザUiにより推薦しやすいコンテンツとなる。この推薦装置100が採用する推薦アルゴリズムは、どのようなものでも構わない。
推薦装置100は、推薦コンテンツデータ101aが記憶された推薦コンテンツデータ記憶部101を備える。この推薦コンテンツデータ101aは、図3に示すように、ユーザUiの識別子、ユーザUiに推薦するコンテンツの識別子および適合度を対応づけたデータである。図3に示す例では、コンテンツの識別子として、CRID(Content Reference ID:コンテンツ参照識別子)を採用している。
コンテンツメタデータ記憶部102は、コンテンツメタデータ102a、102b…が記憶された記憶領域である。コンテンツメタデータ記憶部102は、どのような装置が備えても良い。例えば、コンテンツを管理するサーバの記憶装置に、コンテンツメタデータ記憶部102が実装されても良い。
コンテンツメタデータ102a、102b…は、推薦コンテンツデータ101aにおいて、推薦対象となりうるすべてのコンテンツのメタデータを蓄積する。本発明の実施の形態においては、コンテンツごとに、コンテンツメタデータ102a、102b…が設定される。図4に示すコンテンツメタデータ102aは、CRIDが、”//XXX.co.jp/13546”のコンテンツに関するコンテンツメタデータである。図4に示すコンテンツメタデータ102aは、TV−anytime Forum(http://WWW.tv−anytime.org/)で規定されたスキーマを参考にして作成され、XMLで記述されている。ここで、TV−anytime Forumは、サーバ型放送に関連した標準化を行っている団体である。
図4に示すコンテンツメタデータ102aには、タイトルを示す<Title>タグ、解説やあらましなどを示す<Synopsis>タグ、出演者などを示す<Cast>タグ、コンテンツのジャンルを示す<Genre>タグなどが設けられている。
<Title>タグには、このコンテンツのタイトル情報が設定される。<Synopsis>タグには、このコンテンツのシノプシス情報が設定される。<Cast>タグには、このコンテンツのキャスト情報が設定される。このキャスト情報は、複数のキャスト名を含む場合がある。<Genre>タグには、このコンテンツのジャンル情報が設定される。本発明の実施の形態においては、これらのタグの設定値を使用するので、これらのタグには予め有効な値が設定されているものとする。
ここで、コンテンツメタデータ記憶部102のデータ形式は、XML形式などのツリー構造のデータ形式とは限らない。コンテンツメタデータ記憶部102は、例えば、RDB、XML−DBなどで実現されても良い。推薦データ成形装置1が、コンテンツのID、要素、属性名などを参照できればどのように実装されても良い。
クエリログデータ記憶部103は、クエリログデータ103aが記憶された記憶領域である。クエリログデータ記憶部103は、どのような装置が備えても良い。例えば、番組紹介サイトや一般的な検索サイトなどが、クエリログデータ記憶部103を備える。このようなサイトは、検索窓を設け、ユーザが検索窓にクエリを入力する度に、クエリログをクエリログデータ記憶部103に蓄積する。
クエリログデータ103aは、例えば、図5に示すデータである。クエリログデータ103aは、時刻、検索したユーザのユーザIDおよびクエリを対応づけている。このクエリは、例えば、検索窓にユーザが入力した検索キーワードである。
情報提供装置104は、例えば、ユーザに推薦成形データ16aを表示する。本発明の実施の形態において情報提供装置104は、例えば、映像視聴サービスの番組紹介サイトを提供する。情報提供装置104は、会員用ページにおいて、当該サービスの会員であるユーザUiに対して、コンテンツの推薦結果を提示する。このとき情報提供装置104は、推薦データ成形装置1が出力した推薦成形データ16aを、ユーザ端末105に表示する。この推薦成形データ16aは、推薦装置100が出力した推薦コンテンツデータ101aに含まれるk件のコンテンツのうち、ユーザ端末105に最終的に提示するコンテンツの組み合わせと、その表示方法を、示したデータである。
ユーザ端末105は、コンピュータ、携帯電話機、スマートフォンなど、映像を視聴可能な情報機器である。ユーザは、ユーザ端末105の表示装置に表示された推薦成形データ16aに基づいて、所望のコンテンツを選択することができる。
(推薦データ成形方法)
図6を参照して、本発明の実施の形態に係る推薦データ成形方法の概要を説明する。
まずステップS1において推薦データ成形装置1は、推薦装置100から、推薦コンテンツデータ11aを取得する。ここで推薦データ成形装置1は、例えば、ユーザUiに関する推薦コンテンツデータ11aを取得するとする。さらにステップS2において推薦データ成形装置1は、推薦コンテンツデータ11aに含まれる各コンテンツについて、コンテンツメタデータ記憶部102からコンテンツメタデータ102a、102b…を取得し、メタデータ11b、11c…として、記憶装置10の推薦コンテンツメタデータ記憶部11に記憶する。
ステップS3において推薦データ成形装置1は、ステップS1で受信した推薦コンテンツデータ11aの各コンテンツについて、キャスト情報に基づいてグルーピングする。ここで推薦データ成形装置1は、キャスト情報が類似するコンテンツが一つのグループになるように、グルーピングして、キャスト情報グルーピングデータ12aを出力する。図2に示す例では、コンテンツ3つを一つのグループとして表示するので、推薦データ成形装置1は、キャスト情報が類似するコンテンツが3つ以上ある場合、そのコンテンツに基づいて一つのグループを生成する。
さらにステップS4において推薦データ成形装置1は、ステップS1で受信した推薦コンテンツデータ11aのうち、ステップS3でグルーピングされなかった各コンテンツについて、シノプシス情報に基づいてグルーピングする。ここで推薦データ成形装置1は、例えば、ユーザの嗜好を示すキーワードに基づいて、そのキーワードに関連するコンテンツが一つのグループになるように、グルーピングして、シノプシス情報グルーピングデータ14aを出力する。図2に示す例では、コンテンツ3つを一つのグループとして表示するので、推薦データ成形装置1は、所定のキーワードに関連するコンテンツが3つ以上ある場合、そのコンテンツに基づいて一つのグループを生成する。
ステップS5において推薦データ成形装置1は、ステップS3で生成したキャスト情報グルーピングデータ12aと、ステップS4で生成したシノプシス情報グルーピングデータ14aとから、ユーザに表示するグループを選択する。例えば、図2で示す例では、3つのグループが表示されているので、ステップS3およびステップS4で生成されたグループから3つを選択する。
ステップS5において推薦データ成形装置1は、ステップS5で選択されたグループについて、スニペットを生成する。推薦データ成形装置1は、グループを構成する各コンテンツのシノプシス情報に基づいて、ステップS3で生成したグループについてはキャスト名を、ステップS4で生成したグループについてはキーワードを、それぞれ強調したスニペットを生成し、推薦成形データ16aを生成する。
このように生成された推薦成形データ16aは、情報提供装置104に出力され、情報提供装置104を介して、ユーザ端末105に表示される。
(推薦データ成形装置)
次に図1を参照して、推薦データ成形装置1を詳述する。
推薦データ成形装置1の記憶装置10は、推薦データ成形プログラムを記憶するとともに、推薦コンテンツメタデータ記憶部11、キャスト情報グルーピングデータ記憶部12、キーワードデータ記憶部13、シノプシス情報グルーピングデータ記憶部14、グルーピングデータ記憶部15および推薦成形データ記憶部16を備える。
推薦コンテンツメタデータ記憶部11は、記憶装置10のうち、推薦コンテンツデータ11aと、推薦コンテンツのメタデータ11b、11c、…が記憶された記憶領域である。キャスト情報グルーピングデータ記憶部12は、記憶装置10のうち、キャスト情報グルーピングデータ12aが記憶された記憶領域である。キーワードデータ記憶部13は、記憶装置10のうち、キーワードデータ13aが記憶された記憶領域である。シノプシス情報グルーピングデータ記憶部14は、記憶装置10のうち、シノプシス情報グルーピングデータ14aが記憶された記憶領域である。グルーピングデータ記憶部15は、記憶装置10のうち、グルーピングデータ15aが記憶された記憶領域である。推薦成形データ記憶部16は、記憶装置10のうち、推薦成形データ16aが記憶された記憶領域である。
推薦コンテンツデータ11a、メタデータ11b、11c…、キャスト情報グルーピングデータ12a、キーワードデータ13a、シノプシス情報グルーピングデータ14a、グルーピングデータ15aおよび推薦成形データ16aは、中央処理制御装置20の各処理手段によって出力される。
中央処理制御装置20は、推薦コンテンツメタデータ取得手段21、キャスト情報分析手段22、キーワード生成手段23、シノプシス情報分析手段24、集計手段25、スニペット生成手段26および出力手段27を備える。
推薦コンテンツメタデータ取得手段21は、ユーザに推薦するCRID(コンテンツの識別子)を含む推薦コンテンツデータ11aと、当該コンテンツのキャスト名であるキャスト情報を含むメタデータ11b、11c、…とを取得する。推薦コンテンツメタデータ取得手段21は、これらのデータを、推薦コンテンツメタデータ記憶部11に記憶する。
推薦コンテンツメタデータ取得手段21は、推薦装置100から、ユーザUiのための推薦コンテンツデータ11aを取得する。推薦コンテンツデータ11aは、図3を参照して説明したように、CRIDと、その適合度と、を対応づけたデータである。本発明の実施の形態において、推薦コンテンツデータ11aは、ユーザUiに推薦するk件のコンテンツと、そのコンテンツの適合度を対応づけている。
さらに推薦コンテンツメタデータ取得手段21は、コンテンツメタデータ記憶部102から、推薦コンテンツデータ11aに含まれるコンテンツ識別子のそれぞれについて、各コンテンツ識別子に対応するメタデータ11b、11c、…を取得する。このメタデータ11b、11c、…は、図4を参照して説明したように、タイトル、キャスト、シノプシス、ジャンル、公開年などの各項目が設定されているデータである。推薦コンテンツメタデータ取得手段21は、推薦コンテンツデータ11aと、推薦コンテンツそれぞれのメタデータ11b、11c、…を、推薦コンテンツメタデータ記憶部11に記憶する。
キャスト情報分析手段22は、キャスト情報の一致度の高い所定数のコンテンツをグルーピングし、グループ識別子と、当該グループに含まれるCRID(コンテンツの識別子)と、を対応づけたキャスト情報グルーピングデータ12aを、出力する。キャスト情報分析手段22は、キャスト情報グルーピングデータ12aを、キャスト情報グルーピングデータ記憶部12に記憶する。
キャスト情報分析手段22は、推薦コンテンツデータ11aに含まれるコンテンツのキャスト情報に基づいて、類似するキャスト情報を持つコンテンツをグルーピングする。キャスト情報分析手段22は、グループに含まれるコンテンツの数n=3であるので、キャスト情報の一致度の高いコンテンツが3つある場合、それらのコンテンツを一つのグループとして出力する。
キャスト情報分析手段22が出力するキャスト情報グルーピングデータ12aは、図7に示すように、グループID、コンテンツの識別子(CRID)、キャスト情報および適合度を対応づけたデータである。図7に示すグループID”GR001”のグループでは、このグループに含まれるすべてのコンテンツのキャスト情報に、”トニー・デッブ”が含まれていることにより、キャスト情報の一致度が高くなっている。
このように、キャスト情報分析手段22は、キャスト情報の一致度が高いコンテンツは、ユーザの興味を強く表していると考える。キャスト情報分析手段22は、キャスト情報の一致度が高いコンテンツを優先的にグルーピングすることにより、ユーザの興味を反映したコンテンツグループを出力する。
図8を参照して、キャスト情報分析手段22によるキャスト情報分析処理を説明する。
まずステップS101においてキャスト情報分析手段22は、推薦コンテンツデータ11aから、上位m件の適合度を持つコンテンツについて、そのメタデータ11b、11c、…から、キャスト情報を取得する。このときキャスト情報分析手段22は、コンテンツのCRIDと対応づけてキャスト情報を取得する。図4に示すようなメタデータの場合、キャスト情報分析手段22は、各メタデータについて<Cast>タグに設定された値を、キャスト情報として取得する。<Cast>タグに複数のキャスト名が含まれている場合、キャスト情報分析手段22は、個々のキャスト名を、CRIDと対応づけて取得する。
ここで、コンテンツID”//XXX.co.jp/13546”のコンテンツの<Cast>タグの<PersonName>属性の値に、{トニー・デッブ, フアン・ロドリゲス, デイビッド・スコフィールド}と3名のキャスト名が設定され、コンテンツID”//XXX.co.jp/98765”のコンテンツの<Cast>タグの<PersonName>属性の値に、{古川玲子, 小西里美, トニー・デッブ, 大竹たかひろ, ジョン・ブラウン}と5名のキャスト名が設定され、コンテンツID”//XXX.co.jp/38765”のコンテンツの<Cast>タグの<PersonName>属性の値に、{アレックス佐藤, トニー・デッブ, ジョン・ブラウン}と3名のキャスト名が設定された場合を考える。
この場合、キャスト情報分析手段22は、これらの各コンテンツから、キャスト名として、{トニー・デッブ, ジョン・ブラウン,フアン・ロドリゲス, デイビッド・スコフィールド,古川玲子, 小西里美, 大竹たかひろ,アレックス佐藤}を取得する。ここでキャスト情報分析手段22は、キャスト名が重複しないように、キャスト名を取得する。さらにキャスト情報分析手段22は、取得したキャスト名のそれぞれについて、そのキャスト名が対応づけられたCRIDを対応づける。具体的にキャスト情報分析手段22は、トニー・デッブについて、{//XXX.co.jp/13546, //XXX.co.jp/98765, //XXX.co.jp/38765}の3つのCRIDを、ジョン・ブラウンについて、{//XXX.co.jp/98765, //XXX.co.jp/38765}の2つのCRIDを、フアン・ロドリゲスについて、{//XXX.co.jp/13546}の1つのCRIDを対応づける。取得したすべてのキャスト名について、CRIDの対応づけが終了すると、ステップS102に進む。
ステップS102においてキャスト情報分析手段22は、上位m件のコンテンツにおける各キャスト名に基づいて、一致度の高い組み合わせがあるか否かを判定する。
本発明の実施の形態において、キャスト情報の一致度とは、所定のキャスト名について、それを含むコンテンツの数とする。トニー・デッブについては、3つのCRIDが対応づけられているので、一致度は「3」となる。ジョン・ブラウンについては、2つのCRIDが対応づけられているので、一致度は「2」となる。フアン・ロドリゲスについては、1つのCRIDが対応づけられているので、一致度は「1」となる。
また本発明の実施の形態において、「一致度の高い」とは、所定のキャスト名に対応づけられたCRIDの数が、各グループに含まれるコンテンツの数n以上の場合をいう。従って、所定のキャスト名に対応づけられたCRIDの数がn以上の場合、このキャスト名に対応づけられたCRIDのコンテンツの組み合わせを、「一致度の高い組み合わせ」という。例えば、各グループに含まれるコンテンツの数n=3で、トニー・デッブに3つのCRIDが対応づけられている場合を考える。この場合、キャスト情報分析手段22は、トニー・デッブのキャスト情報が対応づけられたCRID{//XXX.co.jp/13546, //XXX.co.jp/98765, //XXX.co.jp/38765}のコンテンツの組み合わせを、「一致度の高い組み合わせ」として、グループを生成する。
ここで、所定のキャスト名に対応づけられるCRIDの数が、nより多い場合、具体的にはn=3とすると4以上の場合、キャスト情報分析手段22は、このキャスト名に対応づけられるCRIDのうち、n個のCRIDを選択して、コンテンツの組み合わせを生成する。例えば、キャスト情報分析手段22は、選択したコンテンツを、適合度の順にn段階に分割し、各段階から一つのコンテンツを選択して、グルーピングに含めるn個のコンテンツを決定することができる。
ステップS102において一致度の高い組み合わせがある場合、ステップS103においてキャスト情報分析手段22は、一致度の高い組み合わせを、キャスト情報グルーピングデータ12aに記憶するグループとする。キャスト情報分析手段22は、グループIDを採番し、この組み合わせに含まれるコンテンツのCRID、キャスト情報および適合度を対応づけたキャスト情報グルーピングデータ12aを生成する。
一方、ステップS102において一致度の高い組み合わせがない場合、ステップS104に進む。ステップS104において、条件を緩和して、さらにキャスト情報によるグルーピングを続けるか否かを判定する。例えば、キャスト情報のグルーピング条件について、一致度が高いグループのみを出力する、一致度の高いグループがない場合、条件を緩和したグループを出力する、一致度の高いグループがない場合でも条件を緩和したグループを出力しない、などのフラグが予め設定されている。「一致度が高いグループのみを出力する」または「一致度の高いグループがない場合でも条件を緩和したグループを出力しない」フラグが設定されている場合、キャスト情報分析手段22は、ステップS106に進む。一方、「一致度の高いグループがない場合、条件を緩和したグループを出力する」フラグが設定されている場合、キャスト情報分析手段22は、ステップS105に進む。
ステップS105においてキャスト情報分析手段22は、ステップS102での一致度の判定より条件を緩和して、キャスト情報によるグルーピングを試みる。
ここで、条件を緩和したキャスト情報によるグルーピング処理を説明する。キャスト情報分析手段22は、推薦コンテンツデータ11aのすべてのメタデータを読み出すとともに、推薦コンテンツデータ11aの適合度の上位m件のコンテンツのキャスト情報を取得する。さらにキャスト情報分析手段22は、推薦コンテンツデータ11aのすべてのコンテンツから、取得したキャスト情報と類似するコンテンツを選択して、キャスト情報グルーピングデータ12aを生成する。
例えば、上位m件に属するコンテンツID”//XXX.co.jp/13546/”のコンテンツの<Cast>タグの<PersonName>属性の値が{トニー・デッブ, フアン・ロドリゲス, デイビッド・スコフィールド}であるとする。キャスト情報分析手段22は、このキャスト情報に類似する<Cast>タグの<PersonName>属性の値を持つコンテンツを検索する。キャスト情報分析手段22は、例えば、このコンテンツの<Cast>タグの<PersonName>属性の値をクエリとして、その他のコンテンツの<Cast>タグの<PersonName>属性の値を検索対象として検索し、一致したコンテンツのCRIDを取得する。
また<Cast>タグの<PersonName>属性の値が、コンテンツID”//XXX.co.jp/13546/”のコンテンツのように複数ある場合、キャスト情報分析手段22は、それぞれの値ごとに、検索しても良い。コンテンツID”//XXX.co.jp/13546/”の場合、キャスト情報分析手段22は、”トニー・デッブ”をクエリとして検索し、”フアン・ロドリゲス”をクエリとして検索し、”デイビッド・スコフィールド”をクエリとして検索しても良い。
この場合、キャスト情報分析手段22は、それぞれで取得したCRIDのうち、最も重複してヒットした数が多いものから、グループを構成するコンテンツの数nに至るまで、コンテンツを選択する。コンテンツID”//XXX.co.jp/13546/”の場合、キャスト数は3なので、ヒット数の最大値は3である。ヒット数が同じコンテンツがグループを構成するコンテンツの数n以上ある場合、キャスト情報分析手段22は、その中でランダムにn件のコンテンツを選択しても良い。
このようにしてキャスト情報分析手段22は、このようにn件のグループを生成する処理を、上位m件に属するコンテンツすべてについて実行する。キャスト情報分析手段22は、このように生成した組み合わせについて、グループIDを採番し、このグループに含まれるコンテンツのCRID、キャスト情報および適合度を対応づけたキャスト情報グルーピングデータ12aを生成する。
ここで、上位m件すべてについてこの処理を行うのではなく、m件中でさらに上位の j 件のコンテンツについてのみ、グループを作成することにより、キャスト情報分析手段22の処理を軽減しても良い。
ステップS103またはステップS105の処理により、キャスト情報グルーピングデータ12aを生成すると、あるいは、ステップS104において条件を緩和したキャスト情報によるグルーピングを実行しない場合、ステップS106に進む。ステップS106においてキャスト情報分析手段22は、推薦コンテンツデータ11aのうち、キャスト情報グルーピングデータ12aに含まれないコンテンツのCRIDを特定する。キャスト情報分析手段22は、特定したコンテンツのCRIDを、シノプシス情報分析手段24に入力する。
キーワード生成手段23は、ユーザのクエリログデータ103aから、当該ユーザのキーワードを生成する。キーワード生成手段23が生成するキーワードは、シノプシス情報分析手段24で利用される。キーワード生成手段23は、推薦成形データ16aの出力の処理とは非同期に、逐次実行されても良い。
このクエリログデータ103aが、番組紹介サイトなどにおいて映像データの推薦に関するクエリによって生成されている場合、キーワード生成手段23は、このクエリログデータ103aのクエリに基づいて、キーワードを生成する。例えばキーワード生成手段23は、出現の多い所定数のクエリを、キーワードとして出力する。また、クエリログデータ103aが、一般的な検索サイトなどにおいて生成されている場合、キーワード生成手段23は、「映画」、「動画」などの映像視聴と関係の深いクエリと共起するクエリに基づいて、キーワードを生成する。例えば、一般的な検索サイトにおいて「映画 トニー・デッブ」とクエリが入力された場合、キーワード生成手段23は、キーワードとして「トニー・デッブ」を出力する。
キーワード生成手段23は、ユーザごとにキーワードを生成して、キーワードデータ13aを出力する。キーワードデータ13aは、例えば図9に示すようなデータ構造を備える。図9に示すようにキーワードデータ13aは、ユーザIDと、そのユーザのキーワードが対応づけられたデータである。
図10を参照して、キーワード生成手段23によるキーワード生成処理を説明する。
まずステップS201においてキーワード生成手段23は、クエリログデータ記憶部103から、ユーザUiの最近N日分のクエリログデータ103aを取得する。ステップS202においてキーワード生成手段23は、取得したクエリログデータ103aからユーザUiのキーワードを生成する。
さらにステップS203においてキーワード生成手段23は、ユーザUiのユーザID、およびステップS202で生成したキーワードを関連づけて、キーワードデータ13aを生成する。
シノプシス情報分析手段24は、シノプシス情報に含まれる有意味語とキーワードデータ13aのキーワードとの類似度に基づいて、類似度の高い所定数のコンテンツをグルーピングする。シノプシス情報分析手段24は、グループ識別子と、当該グループに含まれるコンテンツの識別子(CRID)と、当該キーワードとを対応づけたシノプシス情報グルーピングデータ14aを出力する。
シノプシス情報分析手段24は、推薦コンテンツデータ11aのうち、キャスト情報分析手段22によりグルーピングの対象とならなかったコンテンツについて、シノプシス情報およびキーワードに基づいて、グルーピングする。シノプシス情報分析手段24は、ジャンルごとに、グルーピング対象となるコンテンツを検索する。
シノプシス情報分析手段24は、所定のジャンルについて、このジャンルに属するすべてのコンテンツのそれぞれについて、メタデータのシノプシス情報を形態素解析し、名詞などの有意味語を抽出する。シノプシス情報分析手段24は、各コンテンツについて、キーワードデータ13aのキーワードと、各コンテンツのシノプシス情報から抽出された有意味語を比較して、各コンテンツの類似度を判定する。ここで、シノプシス情報分析手段24は、キーワードと有意味語が一致すれば、その一致した数を類似度としても良い。ここでシノプシス情報分析手段24は、シソーラス辞書を参照してキーワードを拡張した上で、各コンテンツのシノプシス情報の有意味語との類似度を算出しても良い。シノプシス情報分析手段24は、当該コンテンツとの類似度が、既定値より高いコンテンツを、グルーピング候補のコンテンツとして選択する。
所定のジャンルに属するすべてのコンテンツについて類似度が算出され、グルーピング候補のコンテンツが選択されると、シノプシス情報分析手段24は、選択されたコンテンツから、グルーピングするコンテンツn個を抽出する。シノプシス情報分析手段24は、選択したコンテンツを、適合度の順にn段階に分割し、各段階から一つのコンテンツを選択して、グルーピングに含めるn個のコンテンツを決定することができる。
すべてのジャンルについて、グルーピングに含めるn個のコンテンツを決定すると、各グループについて、グループIDを採番して、そのグループに含めるコンテンツのCRID、キーワードおよび適合度を対応づけたシノプシス情報グルーピングデータ14aを出力する。
シノプシス情報分析手段24が出力するシノプシス情報グルーピングデータ14aは、図11に示すように、グループID、コンテンツの識別子(CRID)、キーワードおよび適合度を対応づけたデータである。図11に示すように、グループIDには、グループを構成するコンテンツの数nのCRIDが対応づけられる。さらにグループID”GR0101”のグループでは、キーワード”ファンタジー”が対応づけられる。このグループIDに対応づけられたCRIDのコンテンツは、キーワード”ファンタジー”と類似度の高い有意味語を含むシノプシス情報が対応づけられたコンテンツである。
図12を参照して、シノプシス情報分析手段24によるシノプシス情報分析処理を説明する。
まずステップS201においてシノプシス情報分析手段24は、キャスト情報分析手段22より、推薦コンテンツデータ11aに含まれるコンテンツのCRIDのうち、キャスト情報分析手段22によってグルーピングされなかったコンテンツのCRIDを取得する。
さらにステップS202においてシノプシス情報分析手段24は、キーワードデータ13aから、ユーザUiのキーワードを取得する。ここで、シノプシス情報分析手段24は、取得したキーワードが十分であるか否かを判定する。例えば、ユーザUiに関するクエリログデータ103aの数が十分でない場合、キーワードデータ13aのキーワードが十分でない可能性が考えられる。その場合シノプシス情報分析手段24は、推薦コンテンツデータ11aに含まれる各コンテンツのメタデータ11b、11c、…から、新たにキーワードを生成しても良い。
例えばシノプシス情報分析手段24は、推薦コンテンツメタデータ記憶部11に記憶された推薦コンテンツのメタデータのシノプシス情報を形態素解析し、頻繁に出てくる単語を特定し、特定した単語から、コンテンツの内容を表す単語として不適切な単語を除いたリストを生成する。シノプシス情報分析手段24は、生成したリストからランダムに選択した単語を、キーワードとして使用しても良い。
ステップS203においてシノプシス情報分析手段24は、キャスト情報分析手段22によってグルーピングされなかったCRIDに対応するメタデータから、<Synopsis>タグのシノプシス情報と、コンテンツのジャンルを示す<Genre>タグのジャンル情報を取得する。
ステップS203で取得したジャンルのそれぞれについて、シノプシス情報分析手段24は、ステップS304ないしステップS306の処理を繰り返す。さらに、所定のジャンルのすべてのコンテンツについて、シノプシス情報分析手段24は、ステップS304およびステップS305の処理を繰り返す。
ステップS304においてシノプシス情報分析手段24は、所定のジャンルの所定のコンテンツについて、シノプシス情報を形態素解析して、有意味語を抽出する。ここで有意味語とは、形態素解析の結果得られた名詞、形容詞、形容動詞、動詞の各形態素である。ここで、有意味語のみを抽出することにより、後述の処理を効率化し、また精度を向上させることができる。また形態素解析をする際、シソーラス辞書を参照して、有意味語の類義語を保持しても良い。
ステップS305においてシノプシス情報分析手段24は、ステップS304で抽出した有意味語と、ステップS302で取得したキーワードの類似度を算出する。例えばここで、シノプシス情報分析手段24は、シソーラス辞書を参照してキーワードを拡張した上で、各コンテンツのシノプシス情報の有意味語との類似度を算出しても良い。シノプシス情報分析手段24は、当該コンテンツの類似度が、既定値より高いコンテンツを、グルーピング候補のコンテンツとして選択する。
所定のジャンルに属するすべてのコンテンツについて、ステップS304およびステップS305の処理が終了すると、ステップS306においてシノプシス情報分析手段24は、ステップS305で選択されたコンテンツからグループに含めるべきコンテンツをn個選択して、グループを作成する。シノプシス情報分析手段24は、例えば、ステップS305で選択したコンテンツを適合度の高さ順にn段階にわける。シノプシス情報分析手段24は、各段階から一つのコンテンツを選択したn個のコンテンツを、一つのグループに含めるコンテンツとして決定することができる。
当該ジャンルのすべてのコンテンツについて、ステップS305およびステップS306の処理が終了すると、シノプシス情報分析手段24は、新たなジャンルについて、ステップS304ないしステップS306の処理を繰り返す。
すべてのジャンルについて、ステップS304ないしステップS306の処理が終了すると、シノプシス情報分析手段24は、ステップS306で生成した各グループについてグループIDを採番し、グループID、コンテンツの識別子(CRID)、キーワードおよび適合度を対応づけて、シノプシス情報グルーピングデータ14aを生成する。
ここで、クエリログデータ103aにおけるキーワードは、ユーザが入力した状況や意図がわからない。従って、キーワードが一致するシノプシス情報を持つコンテンツを抽出しても、全く関連性のないコンテンツが抽出されてしまう場合がある。そこでシノプシス情報分析手段24は、一つのジャンルに関連するコンテンツから、一つのグループを生成することにより、同一ジャンル内で、キーワードに一致するコンテンツを特定し、グルーピングの対象とすることができる。これにより、シノプシス情報分析手段24は、同一グループに関連性の高いコンテンツを含めることができる。
集計手段25は、キャスト情報グルーピングデータ12aおよびシノプシス情報グルーピングデータ14aに含まれる複数のグループから、推薦成形データ16aに含むグループを決定する。例えば、図2に示す例では、推薦成形データに、3つのグループが含まれている。従って、キャスト情報グルーピングデータ12aおよびシノプシス情報グルーピングデータ14aに含まれるグループの合計が4以上の場合、集計手段25は、これらのグループから推薦成形データ16aに含ませるグループを決定し、グルーピングデータ15aを生成する。
グルーピングデータ15aは、図13に示すように、グループID、CRID、キャスト情報/キーワードおよび適合度が対応づけられたデータである。グルーピングデータ15aのキャスト情報/キーワードの項目において、キャスト情報グルーピングデータ12aから生成されたグループについては、当該コンテンツのキャスト情報が設定される。また、グルーピングデータ15aのキャスト情報/キーワードの項目において、シノプシス情報グルーピングデータ14aから生成されたグループについては、当該コンテンツに関連するキーワードが設定される。
図14を参照して、集計手段25による集計処理を説明する。まずステップS401において集計手段25は、記憶装置10から、キャスト情報グルーピングデータ12aおよびシノプシス情報グルーピングデータ14aを読み出し、ステップS402において、これらに含まれるグループの数をカウントする。
ステップS403において集計手段25は、推薦成形データ16aに含ませる規定のグループ数と比べて、同等以下かどうかを判定する。同等以下の場合、集計手段25は、ステップS405に進む。
多い場合、ステップS404において、キャスト情報グルーピングデータ12aおよびシノプシス情報グルーピングデータ14aに含まれるグループから、規定数のグループを選択する。集計手段25は、例えば、各グループにおいて最も適合度の高いコンテンツ同士を比較する。集計手段25は、高い適合度を持つコンテンツを含むグループを、適合度の高い順に規定のグループ数だけ選択し、ステップS405に進む。
ステップS405において集計手段25は、キャスト情報グルーピングデータ12aおよびシノプシス情報グルーピングデータ14aから、グルーピングデータ15aを生成する。
スニペット生成手段26は、グルーピングデータ15aに含まれる各コンテンツについて、各コンテンツのシノプシス情報に含まれる、キャスト情報またはキーワードのフォントを強調フォントにして、スニペットを生成して、推薦成形データ16aを出力する。推薦成形データ16aは、グループIDと、グループに含まれるCRIDと、シノプシス情報から生成されたスニペットと、が対応づけられたデータである。
具体的にはスニペット生成手段26は、グルーピングデータ15aのうち、キャスト情報グルーピングデータ12aに含まれていた各グループについて、当該グループに対応づけられたコンテンツの識別子に対応するメタデータのシノプシス情報を取得する。さらにスニペット生成手段26は、当該グループのすべてのコンテンツに共通して含まれるキャスト名に基づいて、シノプシス情報からスニペットを生成する。例えば、図13に示すグループID”GR001”については、キャスト名”トニー・デッブ”すべてのコンテンツに含まれている。従って、スニペット生成手段26は、グループID”GR001”に含まれる各コンテンツのシノプシス情報について、各コンテンツに共通するキャスト名”トニー・デッブ”に強調表示のための加工を施して、スニペット情報を生成する。ここで強調表示のための加工とは、フォントを変える、ハイライト表示するなどである。
またスニペット生成手段26は、グルーピングデータ15aのうち、シノプシス情報グルーピングデータ14aに含まれていた各グループについて、各グループに対応づけられたコンテンツの識別子に対応するメタデータのシノプシス情報を取得する。スニペット生成手段26は、当該キーワードに基づいて、シノプシス情報からスニペットを生成する。例えば、図13に示すグループID”GR101”については、キーワードとして”ファンタジー”が対応づけられている。従って、スニペット生成手段26は、グループID”GR1001”に含まれる各コンテンツのシノプシス情報について、”ファンタジー”に強調表示のための加工を施して、スニペット情報を生成する。ここで強調表示のための加工とは、フォントを変える、ハイライト表示するなどである。
ここでスニペット情報を生成する際、スニペット生成手段26は、シノプシス情報から、キャスト情報またはキーワードが完全に一致する単語を含む文節を抽出する。あるいは、スニペット生成手段26は、検索エンジンで検索結果のページのスニペットを生成する従来技術を用いて、スニペットを生成しても良い。このようにスニペットを生成することにより、ユーザの嗜好を導くキャスト情報やキーワードを、明示的に表示することができる。これにより、シノプシス情報が長く、すべてのシノプシス情報を表示するための十分なスペースを確保しづらい問題や、すべてのシノプシス情報を表示すると、視認性が低下する問題を、回避することができる。
スニペット生成手段26は、グループID、グループに含まれるCRID、およびスニペット情報を関連づけて、推薦成形データ16aを出力する。ここで、推薦成形データ16aに、各コンテンツのサムネイルや公開年などの情報が含まれても良い。
図15を参照して、スニペット生成手段26によるスニペット生成処理を説明する。スニペット生成手段26は、グルーピングデータ15aのすべてのコンテンツについて、ステップS501ないしステップS503の処理を繰り返す。
ステップS501においてスニペット生成手段26は、当該コンテンツが、キャスト情報グルーピングデータに含まれたデータでキャスト情報が対応づけられているか、あるいはシノプシス情報グルーピングデータに含まれたデータでキーワードが対応づけられているかを判定する。キャスト情報が対応づけられている場合、ステップS502においてスニペット生成手段26は、当該コンテンツのシノプシス情報に含まれるキャスト情報に基づいて、スニペットを生成する。一方、キーワードが対応づけられている場合、ステップS503においてスニペット生成手段26は、当該コンテンツのシノプシス情報に含まれるキーワードに基づいて、スニペットを生成する。
すべてのコンテンツについて、ステップS501ないしステップS503の処理が終了すると、スニペット生成手段26は、処理を終了する。
出力手段27は、記憶装置10から推薦成形データ16aを読み出し、情報提供装置104に出力する。情報提供装置104は、例えば、ユーザ端末105からのリクエストに応じて、図2に示すような推薦成形データ表示画面P101をユーザ端末105に出力する。
本発明の実施の形態に係る推薦データ成形装置1によれば、ユーザの興味のあるキャスト情報やキーワードをもとに、ユーザに推薦するコンテンツをグルーピングしてユーザに表示することができる。これにより、ユーザの興味に応じて推薦結果を表示することができ、推薦するコンテンツに対するユーザの興味を高めることができる。また、ユーザに推薦するコンテンツに対応して表示するスニペットにおいて、ユーザの興味のあるキャスト情報やキーワードを強調表示することにより、よりユーザの興味を高めることができる。
(その他の実施の形態)
上記のように、本発明の実施の形態によって記載したが、この開示の一部をなす論述および図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例および運用技術が明らかとなる。
例えば、本発明の実施の形態に記載した推薦データ成形装置は、図1に示すように一つのハードウェア上に構成されても良いし、その機能や処理数に応じて複数のハードウェア上に構成されても良い。また、既存の情報処理システム上に実現されても良い。
本発明はここでは記載していない様々な実施の形態等を含むことは勿論である。従って、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。