(57)【要約】  レーティングのみを利用して新しいユーザの人口統計情報を決定する方法は、他の複数のユーザからのレーティングと人口統計情報を含むトレーニングデータセットで推定エンジンをトレーニングするステップを含む。新しいユーザが映画レーティングなどのレーティングを入力し、推定エンジンがその新しいユーザの人口統計情報を決定する。新しいユーザの人口統計情報を用いて、そのユーザに推奨を提供し、またはターゲティングされた広告を提供する。
2015526795.tif 000002
【特許請求の範囲】
【請求項１】
ユーザから得たレーティングを利用して前記ユーザの人口統計情報を決定する方法であって、
推定エンジンをトレーニングして、他の複数のユーザから得たレーティング及び人口統計情報を含むトレーニングデータセットを用いて人口統計情報を決定するステップと、
前記ユーザからレーティングを受け取る、前記ユーザから受け取るレーティングはレーティング情報のみを有するステップと、
前記ユーザのレーティングから、前記ユーザの人口統計情報を決定する、前記決定は前記トレーニングされた推定エンジンを用いて行われるステップと、
前記決定された人口統計情報を利用して、前記ユーザに推奨を提供し、または前記ユーザにターゲティングされた広告を提供するステップと、
を有する方法。
【請求項２】
前記ユーザから得られるレーティングは映画の識別情報を含む、
請求項１に記載の方法。
【請求項３】
前記レーティングは映画のレーティング、歌のレーティング、デジタルゲームのレーティング、製品のレーティング、レストランのレーティングのうちの一つを含む、
請求項１に記載の方法。
【請求項４】
前記ユーザからレーティングを受け取るステップは、人口統計情報を含まないレーティングを受け取るステップを有する、請求項１に記載の方法。
【請求項５】
前記ユーザの決定された人口統計情報は性別情報である、請求項１に記載の方法。
【請求項６】
前記ユーザは前記トレーニングデータセットには含まれていない、
請求項１に記載の方法。
【請求項７】
前記決定するステップは、分類器を用いて前記ユーザの人口統計情報を決定するステップを有する、請求項１に記載の方法。
【請求項８】
前記分類器は、サポートベクトルマシン及びロジスティック回帰アルゴリズムのうちの一つである、請求項７に記載の方法。
【請求項９】
ユーザから得たレーティングを利用して前記ユーザの人口統計情報を決定する装置であって、
他の複数のユーザからのレーティング及び人口統計情報を含むトレーニングデータセットを入力するインタフェースと、
前記ユーザから得た、人口統計情報含まないレーティングを用いて人口統計情報を決定するコンピュータ命令を実行する、メモリへのアクセスを有するプロセッサと、
前記決定された人口統計情報に基づいて前記ユーザにターゲティングされた広告を提供する推奨システムに前記決定された人口統計情報を提供する、前記推奨システムへのインタフェースと、
を有する装置。
【請求項１０】
前記装置は前記推奨システムの一部である、請求項９に記載の装置。
【請求項１１】
前記トレーニングデータセットを入力するインタフェースは前記推奨システムへのインタフェースとしても機能する、請求項９に記載の装置。
【請求項１２】
前記ユーザから得られるレーティングは映画の識別情報と映画のレーティング値とを含む、請求項９に記載の装置。
【請求項１３】
前記ユーザの決定された人口統計情報は性別情報である、
請求項１に記載の装置。
【請求項１４】
前記ユーザの人口統計情報の決定において前記プロセッサを支援する分類器をさらに有する、請求項１に記載の装置。
【請求項１５】
前記分類器は、サポートベクトルマシン及びロジスティック回帰アルゴリズムのうちの一つである、請求項１に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概してリコメンダーシステムにおけるユーザプロファイリングとユーザプライバシーとに関する。より具体的には、本発明は人口統計情報の推定に関する。
【背景技術】
【０００２】
ユーザの人口統計推定は、異なる背景において、様々なタイプのユーザ生成データについて研究されてきた。インターラクションネットワークの場合には、人口統計の推定には、ブログとＦａｃｅｂｏｏｋのソーシャルネットワークデータのリンクベース情報を用いるグラフ構造が有用であることが示されている。その他の業績はユーザの書いたものから求めたテキスト的特徴に依存して人口統計を推定するものである。
【０００３】
テキストベース推定の主要な欠点は、ほとんどのユーザはレビューを書かないことであり、そのためこれらの方法は適用不可である。同様に、リコメンダーシステムは、詳細に推定したいユーザのソーシャルネットワークを手に入れることはできない。
【０００４】
できるだけ少ない情報に基づいたユーザ人口統計推定方法が必要であることが分かる。本発明はかかる推定方法に関する。
［関連出願への相互参照］
本願は、２０１２年  ６月２１日出願の米国仮出願第６１／６６２，６０９号（発明の名称「Ｍｅｔｈｏｄ  ａｎｄ  Ａｐｐａｒａｔｕｓ  Ｆｏｒ  Ｉｎｆｅｒｒｉｎｇ  Ｕｓｅｒ  Ｄｅｍｏｇｒａｐｈｉｃｓ  Ｂａｓｅｄ  ｏｎ  Ｒａｔｉｎｇｓ」の優先権を主張するものであり、この文献はここにすべての目的でその全体を参照援用する。
【発明の概要】
【０００５】
本欄では、発明の詳細な説明で詳しく説明するコンセプトの一部を選んで、簡単に説明する。本欄は、特許を請求する主題の重要な特徴や本質的な特徴を特定するものではなく、特許を請求する主題の範囲を限定するものでもない。
【０００６】
本発明は、新しいユーザの映画レーティングを利用してそのユーザの人口統計情報を決定する方法と装置を含む。該方法は、推定エンジンをトレーニングして、他の複数のユーザから得た映画レーティング及び人口統計情報を含むトレーニングデータセットを用いて人口統計情報を決定するステップを含む。次に、新しいユーザからの映画レーティングを受け取るが、前記ユーザからの映画レーティングは人口統計情報を有さないものである。新しいユーザの人口統計情報はトレーニングされた推定エンジンを用いて決定される。推定エンジンは、決定された人口統計情報を利用して新しいユーザに推奨を提供し、または新しいユーザにターゲティングされた広告を提供する推奨システムの一部であってもよい。
【０００７】
本発明の別のフィーチャ及び利点は、添付した図面を参照する実施形態の詳細な説明から明らかになる。
【図面の簡単な説明】
【０００８】
本発明の上記概要及び例示した実施形態の詳細な説明は、添付した図面と共に読めばより良く理解される。図面は例として含めたものであり、請求項に係る発明に関する限定としてではない。
【図１】本発明の態様による推測エンジンの実施形態の環境の一例を示す図である。
【図２Ａ】Ｆｌｉｘｓｔｅｒトレーニングデータセットの異なる分類子の受信者動作特性（ＲＯＣ）プロットを示す図である。
【図２Ｂ】Ｍｏｖｉｅｌｅｎｓトレーニングデータセットの異なる分類子の受信者動作特性（ＲＯＣ）プロットを示す図である。
【図２Ｃ】Ｆｌｉｘｓｔｅｒトレーニングデータセットのサイズによる精度の上昇を示す図である。
【図３】本発明の態様による使用の一例を示すフロー図である。
【図４】本発明の態様による推測エンジンの一例を示す図である。
【発明を実施するための形態】
【０００９】
様々な実施形態の以下の説明では、その一部である添付図面を参照する。図面には、例示により、本発明の様々な実施形態を実施できる具体的な実施形態を示した。言うまでもなく、他の実施形態を用いてもよく、本発明の範囲から逸脱することなく、構造的及び機能的な変更をすることもできる。
【００１０】
的を絞った広告及び個人向けコンテンツ配信においては、ユーザをプロファイリングして性別、年齢、収入、人種などの人口統計情報を求めることが非常に重要である。推奨システムもかかる情報により利益を得て、個人向け推奨を提供することができる。しかし、推奨システムのユーザは、多くの場合、この情報を自発的に提供してくれない。これは、自分のプライバシーを守るために意図的であったり、怠惰または無関心であるために非意図的であったりする。このように、従来の協力的フィルタリング法は、複数のユーザからユーザのレーティングを収集することにより現れるパターンから意味のある情報を抽出するものであるが、かかる情報の利用を避け、ユーザにより提供されるレーティングのみに依存する。
【００１１】
一見すると、推奨システムへのレーティングの開示は、害のない行為と見える。ユーザがこの開示から得る利便性は、すなわち関連するコンテンツやアイテムを発見する能力は、確かにある。それにもかかわらず、ユーザの人口統計はソーシャルネットワーク、ブログ、及びマイクロブログ等でのユーザ活動と相関関係にあり、それから推定できることを示す十分多くの研究がなされている。年齢、性別、人種、または政治的指向性などの人口統計情報を協力的フィルタリングシステムに開示された情報から推定できるかどうか問うことは自然である。実際、レーティング値に関わらず、ユーザがアイテムとインターラクトした（例えば、ある映画を視聴した、ある歌を聴いた、ある製品を購入した）という事実そのものが、人口統計情報と相関している。
【００１２】
かかる推測がうまくいくかどうかには幾つかの重要な影響がある。一方では、推奨者の観点から、人口統計情報に関してユーザをプロファイリングすることにより、幾つかのアプリケーションへの道が開かれる。推奨を超えて、かかるプロファイリングにより広告による追加的収益を生むことができる。広告主は特定の人口統計グループに的を絞ることに主な関心があるからである。本発明は、かかる推測手法に関する。情報のユーザは性別を推定したがっていると仮定する。それにもかかわらず、本発明の方法は、異なる人口統計的な特徴（年齢、人種、政治的指向性など）を推定すべきときにも適用できる。また、具体的な実施形態は映画のレーティングに関するものであるが、これは単なる一例である。どんなタイプのレーティングを使ってもよく、歌の、デジタルゲーム、製品、レストランなどのレーティングを含むがこれらに限定されない。理解を簡明にするため、映画のレーティングを用いて人口統計情報を決定する例を主に用いるが、他のタイプのレーティングを適用することもできる。
【００１３】
図１は、ここで説明する推定エンジンのシステム例１００または環境を示す。他の環境も可能である。図１のシステム１００は、ネットワーク１２０上のユーザにコンテンツを推奨する推奨システム１３０を示す。推奨システムの典型例は、Ｎｅｔｆｌｉｘ(R)、Ｈｕｌｕ(R)、Ａｍａｚｏｎ(R)などのコンテンツプロバイダにより運営されているコンテンツ推奨システムを含む。通常、推奨システム１００は、加入ユーザに対し候補デジタルコンテンツを提供する。かかるコンテンツには、ストリーミングビデオ、ＤＶＤメール、ブック、記事、商品が含まれる。ストリーミングビデオの一例において、候補映画がユーザに、そのユーザの過去の映画選択に基づいて、または選択されたユーザプロファイル特性に基づいて推奨され得る。一実施例として、ストリーミングビデオの例を考える。
【００１４】
本発明のコンテキストにおいて、推定エンジン１３５は、推奨システム１３０に映画のレーティングを送るユーザ１２５により提供された非人口統計情報から、人口統計情報を推定するデータ処理デバイスであり得る。推定エンジン１３５は、ユーザ１２５により提供された映画レーティングを処理し、人口統計情報を推定するように機能する。一例において、説明する人口統計情報は性別である。しかし、当業者には言うまでもなく、本発明の態様により他の人口統計情報を推定することもできる。かかる人口統計情報は、年齢、人種、政治的指向性などを含むがこれらに限定されない。
【００１５】
本発明の一態様では、以下に説明するように、推定エンジン１３５はユーザ１，２ないしｎ（１０５、１１０ないし１１５）を介して取得したトレーニングデータを用いて動作する。これらのユーザは、推奨システム１３０を介して推定エンジン１３５に、映画レーティングと人口統計情報を提供する。トレーニングデータセットは、ユーザ１０５ー１１５が推奨システムを用いるにつれて、時間的に取得される。あるいは、推定エンジンは、入力ポート１３６を介して直接インポートした一以上のデータロードにトレーニングデータセットを入力できる。ポート１３６は、ネットワーク、ディスクドライブ、またはトレーニングデータを有するその他のデータソースから、トレーニングデータセットを入力するのに用いることができる。
【００１６】
推定エンジン１３５はアルゴリズムを用いて、トレーニングデータセットを処理する。推定エンジン１３５は、その後、映画レーティングを含むユーザ１２５（ユーザＸ）の入力を利用する。映画レーティングは、映画のタイトルまたは映画インデックスまたは参照番号などの一以上の映画識別情報と、ユーザ１２５に関する人口統計情報を推定するレーティング値とを含む。この説明において用いる「映画のタイトル」またはより一般的には「映画識別子」は、映画、ショー、ドキュメンタリー、シリーズエピソード、デジタルゲーム、またはその他のユーザ１２５により視聴ｓれるデジタルコンテンツの名称またはタイトルまたはデータベースインデックスなどの識別子である。レーティング値はユーザ１２５が判断した、視聴したデジタルコンテンツの主観的測度である。通常、レーティング値はユーザ１２５によりされた質的評価であり、１−５のスケールで評価される。１は低い主観的スコアであり、５が高い主観的スコアである。当業者には言うまでもなく、１−１０の数字スケール、アルファベットスケール、五つ星スケール、ｔｅｎ  ｈａｌｆ  ｓｔａｒスケール、または「悪い」から「良い」までのワードスケールなど、その他のものも同様に使える。本発明の態様によれば、ユーザ１２５により提供される情報は人口統計情報を含まず、推定エンジン１３５はユーザ１２５の映画レーティングのみからその人口統計情報を決定する。
【００１７】
本発明の態様によれば、トレーニングデータセットを用いて推定エンジン１３５をトレーニングする。トレーニングデータセットは推奨システム１３０と推定エンジン１３５の両方で利用できる。トレーニングデータセットの特徴をここで説明する。トレーニングデータセットは、ユーザのセットＴ＝｛１，・・・，Ｎ｝を含み、各ユーザはカタログＭ中の映画のサブセットにレーティングをつける。ユーザｉ∈Ｎのレーティングがデータセット中にある映画セットはＳｉ⊆Ｍで示され、ユーザｉ∈Ｎにより映画ｊ∈Ｍに与えられたレーティングはｒｉｊ、ｊ∈Ｓｉにより示される。さらに、各ｉ∈Ｎについて、トレーニングセットはユーザの性別を示す二値変数ｙｉ∈｛０，１｝も含む（ビット０は男性ユーザにマッピングされる）。トレーニングデータセットには不純物は混じっていないと仮定する。レーティングも性別ラベルも改ざんしたり曖昧にしたりされていない。
【００１８】
ここで推奨メカニズムは、商業システムにおいて一般的に使われるので、行列因数分解されると仮定する。行列因数分解を一例として用いるが、どんな推奨メカニズムを用いても良い。代替的な推奨メカニズムには、近接法（ユーザのクラスタリング）、アイテムの文脈的類似性、または当業者に知られたその他のメカニズムが含まれる。セットＭ＼Ｓ０のレーティングは、提供されたレーティングをトレーニングデータセットのレーティングマトリックスに付加して、それを因数分解することにより生成される。より具体的には、各ユーザｉ∈Ｎ∪｛０｝に潜在的フィーチャベクトルｕｉ∈Ｒｄを関連づける。各映画ｊ∈Ｍに潜在的フィーチャベクトルｖｊ∈Ｒｄを関連づける。規格化された平均二乗誤差は
＜外１＞
2015526795.tif 000003
で定義される。ここでμはデータセット全体の平均レーティングである。ベクトルｕｉ、ｖｊは傾斜降下におけるＭＳＥを最小化することにより構成される。値ｄ＝２０及びλ＝０．３を用いる。ユーザと映画とを両方ともこのようにプロファイリングし、映画ｊ∈Ｍ＼Ｓ０’に対するユーザ０のレーティングは＜ｕ０，ｖｊ＞＋μにより予測される。
【００１９】
２つのトレーニングデータセット例ＦｌｉｘｓｔｅｒとＭｏｖｉｅｌｅｎｓを検討する。Ｆｌｉｘｓｔｅｒは映画をレーティング及びレビューする公開されたオンラインソーシャルネットワークである。ユーザは、Ｆｌｉｘｓｔｅｒにより、人口統計情報を自分のプロファイルに入力し、自分のムービーレーティングとレビューを友達や大衆と共有できる。このデータセットは１００万ユーザを有し、そのうちの３４．２千ユーザのみが年齢及び性別を共有している。この３４．２千ユーザのサブセットを考える。彼らは１７千の映画をレーティングし、５．８百万レーティングを提供している。１２．８千の男性と２１．４千の女性がそれぞれ２．４百万レーティングと３．４百万レーティングを提供している。しかし、ユーザは、Ｆｌｉｘｓｔｅｒによりハーフスター（ｈａｌｆ  ｓｔａｒ）レーティングを提供するので、評価データセットとの一貫性を保つために、レーティングを１から５までの整数に切り上げる。他のデータセットにＭｕｖｉｅｌｅｎｓがある。この第２のデータセットはＧｒｏｕｐｌｅｎｓ（登録商標）リサーチチームが公衆に提供している。このデータセットは３．７千映画と６千ユーザによる１百万レーティングよりなる。４３３１人の男性と１７０９人の女性がそれぞれ７５０千と２５０千のレーティングを提供している。
【００２０】
人口統計情報を決定するため、推定エンジンにおいて分類子（ｃｌａｓｓｉｆｉｅｒｓ）を用いる。上記の通り、人口統計情報はは多くの特徴を含み得る。人口統計の一例としての性別の決定を、本発明の一実施形態として説明する。しかし、ユーザの異なるまたは複数の人口統計的特徴の決定は、本発明の範囲内にある。
【００２１】
分類子は、トレーニングするため、トレーニングセット中の各ユーザｉ∈Ｎに、ｊ∈Ｓｉであるときｘｉｊ＝ｒｉｊとなり、その他の場合にｘｉｊ＝０となるように、特徴ベクトルｘｉ∈ＲＭを関連付ける。二値変数ｙｊはユーザｉの性別を示し、これは分類中の従属変数として機能する。特徴ベクトルのマトリックスはＸ∈ＲＮ×Ｍで示され、性別のベクトルはＹ∈｛０，１｝Ｎで示される。
【００２２】
異なる３タイプの分類子すなわちベイジアン分類子、サポートベクトルマシン（ＳＶＭ）、ロジスティック回帰を調べた。ベイジアンの場合、異なる複数の生成モデルを調べる。すべてのモデルについて、点（ｘｉ，ｙｉ）は同じ結合分布Ｐ（ｘ，ｙ）から独立にサンプリングされると仮定する。あるＰについて、特徴ベクトルｘにに起因する予測ラベルｙ＾∈｛０，１｝（訳注」：「＾」は「ｙ」の上に来る、以下同様）は尤度が最大となるものであり、すなわち、
【数１】
2015526795.tif 000004
である。
【００２３】
分類前のクラスをここで説明する。分類前のクラスは他の分類子の性能を評価するベースライン法として機能する。性別が不均等分布したポピュレーションクラスを有するデータセットでは、この基本的分類ストラテジは、すべてのユーザを多数を占める性として分類することである。これは、
【数２】
2015526795.tif 000005
としてトレーニングセットから推定される生成モデルＰ（ｙ｜ｘ）＝Ｐ（ｙ）の下で式（１）を用いることと等価である。
【００２４】
Ｂｅｒｎｏｕｌｌｉ  Ｎａｉｖｅ  Ｂａｙｅｓ分類をここで説明する。Ｂｅｒｎｏｕｌｌｉ  Ｎａｉｖｅ  Ｂａｙｅｓは実際のレーティング値を無視する単純な方法である。具体的に、ユーザは映画を独立にレーティングし、レーティングするか否かの決定はＢｅｒｎｏｕｌｌｉランダム変数であると仮定する。形式的には、特徴ベクトルをｘとすると、レーティングインジケータベクトルｘ〜∈ＲＭ（訳注：「〜」は「ｘ」の上に来る、以下同様）を、ｘ〜ｊ＝１ｘｊ＞０となるように定義する。これにより、レーティングがある映画を捕捉できる。ｘ〜ｊ、ｊ∈Ｍが独立なＢｅｒｎｏｕｌｌｉであると仮定する生成モデルはＰ（ｘ，ｙ）＝Ｐ（ｙ）Πｊ∈ＭＰ（ｘ〜ｊ｜ｙ）により与えられ、ここでＰ（ｙ）は式（２）のようなクラスプライア（ｃｌａｓｓ  ｐｒｉｏｒ）であり、条件Ｐ（ｘ〜ｊ｜ｙ）は
【数３】
2015526795.tif 000006
のトレーニングセットから計算される。
【００２５】
Ｂｅｒｎｏｕｌｌｉ  Ｎａｉｖｅ  Ｂａｙｅｓ分類をここで説明する。Ｂｅｒｎｏｕｌｌｉ  Ｎａｉｖｅ  Ｂａｙｅｓの欠点はレーティング値を考慮しないことである。レーティング値を組み込む方法の１つは、多項式Ｎａｉｖｅ  Ｂａｙｅｓによるものである。これは文書分類タスクによく用いられる。直感的には、この方法は、例えば、５つ星レーティングをＢｅｒｎｏｕｌｌｉランダム変数の５つの独立な生起としてい扱うことにより、Ｂｅｒｎｏｕｌｌｉを正整数値に拡張するものである。それゆえ、高いレーティングを受けた映画は、分類に大きな影響を与える。形式的には、生成モデルはＰ（ｘ，ｙ）＝Ｐ（ｙ）Πｊ∈ＭＰ（ｘ〜ｊ｜ｙ）により与えられ、ここでＰ（ｘｊ｜ｙ）＝Ｐ（ｘ〜ｊ｜ｙ）ｘｊであり、Ｐ（ｘ〜ｊ｜ｙ）は式（３）によるトレーニングセットから計算される。
【００２６】
本発明の一態様によるミクストＮａｉｖｅ  Ｂａｙｅｓを説明する。上記の多項式の替わりは、本発明者がミクストＮａｉｖｅ  Ｂａｙｅｓと呼ぶものである。このモデルは、ユーザが正規分布したレーティングをするとの仮定に基づく。より具体的には、
【数４】
2015526795.tif 000007
である。各映画ｊについて、平均μｙｊの推定は、データセットから、性別ｙのユーザにより与えられた映画ｊの平均レーティングとして得られ、分散σｙ２は、性別ｙのユーザにより与えられたすべてのレーティングの分散として推定される。式（１）で用いる同時尤度（ｊｏｉｎｔ  ｌｉｋｅｌｉｈｏｏｄ）は、Ｐ（ｘ，ｙ）＝Ｐ（ｙ）Πｊ∈ＭＰ（ｘ〜ｊ｜ｙ）Ｐ（ｘｊ｜ｘ〜ｊ、ｙ）により与えられ、ここでＰ（ｙ）、Ｐ（ｘｊ｜ｙ）はそれぞれ式（２）と（３）により推定される。条件Ｐ（ｘｊ｜ｘ〜ｊ、ｙ）は、レーティングがある（すなわち、ｘ〜ｊ＝１である）ときは、式（４）で与えられ、レーティングが無いときは、自明であるが、Ｐ（ｘｊ＝０｜ｘ〜ｊ＝０，ｙ）＝１で与えられる。
【００２７】
本発明におけるロジスティック回帰の利用をここで説明する。上記Ｂａｙｅｓｉａｎ法すべての重要な欠点は、映画のレーティングが独立であると仮定しているところである。それを解決するため、本発明者はロジスティック回帰を用いる。線形回帰により係数セットβ＝｛β０，β１，．．．，βΜ｝が得られることを思い起こそう。特徴ベクトルｘｉを有するユーザｉ∈Ｎの分類は、まず確率ｐｉ＝（１＋ｅｘｐ｛−（β０＋β１ｘｉ１＋・・・＋βＭｘｉＭ））｝）−１を計算することにより行われる。ユーザはｐｉ＜０．５であれば女性と分類され、そうでなければ男性と分類される。値ｐｉもユーザｉの分類の信頼値としても機能する。ロジスティック回帰の大きな利点の１つは、係数βが各映画とクラスとの間の相関の程度を捕捉することである。この例では、正の大きなβｊは映画ｊが男性のクラスと相関していることを示し、小さな負のβｊは映画ｊが女性のクラスと相関していることを示す。少なくとも１０００本の映画が非ゼロの係数を有し、各性別と相関するように、正規化パラメータを選択する。
【００２８】
マシンラーニングでは、サポートベクトルマシン（ＳＶＭ）は、データを分析し、パターンを認識する関連ラーニングアルゴリズムを有するスーパーバイズされたラーニングモデルであり、分類と回帰の分析に用いられる。直感的には、ＳＶＭは、本技術分野で周知なように、異なる性別に属するユーザを分けるハイパープレーンを見いだし、正しく分類されていないユーザのハイパープレーンからの距離を最小化するようにする。ＳＶＭはロジスティック回帰の多くの利点を有する。ＳＶＭはフィーチャスペースにおける独立性を仮定せずに係数を生成する。フィーチャスペースはすでに非常に大きいので、リニアＳＶＭを分類子（ｃｌａｓｓｉｆｉｅｒ）の評価に用いる。パラメータスペース（Ｃ）にわたる対数検索を行うことにより、本発明者はＣ＝１の場合に最良の結果が得られることを見いだした。
【００２９】
【表１】
2015526795.tif 000008
表１．平均ＡＵＣ、適合率（Ｐ）及び再現率（ｒｅｃａｌｌ）（Ｒ）
【００３０】
【表２】
2015526795.tif 000009
表２．性別ごとの適合率と再現率
すべてのアルゴリズムはＦｌｉｘｓｔｅｒ及びＭｏｖｉｅｌｅｎｓのデータセットの両方で評価した。上記２つのデータセットについて、１０フォールドクロス確認（１０−ｆｏｌｄ  ｃｒｏｓｓ  ｖａｌｉｄａｔｉｏｎ）を用い、平均適合率（ｐｒｅｃｉｓｉｏｎ）と再現率（ｒｅｃａｌｌ）を計算し、平均受信者動作特性（Ｒｅｃｅｉｖｅｒ  Ｏｐｅｒａｔｉｎｇ  Ｃｈａｒａｃｔｅｒｉｓｔｉｃ（ＲＯＣ））を複数フォールドにわたり計算した。ＲＯＣについて、ｔｒｕｅ  ｐｏｓｉｔｉｖｅ率を、データセット中の男性から正しく分類された男性の比率として計算し、ｆａｌｓｅ  ｐｏｓｉｔｉｖｅ率を、データセット中の女性から間違って男性と分類された比率を計算する。表１は、３つの測定量（ｍｅｔｒｉｃｓ）ＡＵＣ、精度、及び再現性についての、分類結果の要約を提供する。表２は、性別ごとの同じ結果を示す。ＲＯＣ曲線を図２（ａ）と図２（ｂ）に示した。表１は、３つの測定量（ｍｅｔｒｉｃｓ）ＡＵＣ、適合率、及び再現性についての、分類結果の要約を提供する。表２は、性別ごとの同じ結果を示す。
【００３１】
ＲＯＣ曲線から分かるように、ＳＶＭとロジスティック回帰は、両方のデータセットで、どのベイズモデルより性能がよい。ＳＶＭとロジステックの回帰曲線が他より優位だからである。具体的に、ロジスティック回帰はＦｌｉｘｓｔｅｒで最高の力を発揮し、一方ＳＶＭはＭｏｖｉｅｌｅｎｓで最高の力を発揮した。Ｂｅｒｎｏｕｌｌｉ、ミクスト、及び多項式モデルの性能は、互いに大きくは異ならなかった。これらの発見は表１のＡＵＣ値によりさらに確かめることができる。この表は、単純クラスプライアモデル（ｓｉｍｐｌｅ  ｃｌａｓｓ  ｐｒｉｏｒ  ｍｏｄｅｌ）の弱点も示し、他のすべての方法の方がパフォーマンスが優れている。
【００３２】
一般的に、分類タスクの適合率（ｐｒｅｃｉｓｉｏｎ）は、ｔｒｕｅ  ｐｏｓｉｔｉｖｅｓ数（すなわち、ｐｏｓｉｔｉｖｅクラスに属するとして正しくラベル付けされたアイテム数）をｐｏｓｉｔｉｖｅクラスに属するとラベル付けされた総要素数（すなわち、ｔｒｕｅ  ｐｏｓｉｔｉｖｅｓと、ｆａｌｓｅ  ｐｏｓｉｔｉｖｅｓとの合計である。ｆａｌｓｅ  ｐｏｓｉｔｉｖｅｓはそのクラスに属すると間違ってラベル付けされたアイテムである）で割ったものである。この場合に再現率（ｒｅｃａｌｌ）は、ｔｒｕｅ  ｐｏｓｉｔｉｖｅｓの数をｐｏｓｉｔｉｖｅクラスに実際に属する要素の総数（すなわち、ｔｒｕｅ  ｐｏｓｉｔｉｖｅｓとｆａｌｓｅ  ｎｅｇａｔｉｖｅｓとの合計である。ｆａｌｓｅ  ｎｅｇａｔｉｖｅｓはｐｏｓｉｔｉｖｅクラスに属するとラベル付けされなかったが、ラベル付けされるべきだったアイテムである）で割ったものとして定義される。
【００３３】
適合率と再現率に関して、表２は、Ｆｌｉｘｓｔｅｒユーザと両方の性別について、ロジスティック回帰が他のすべてのモデルよりパフォーマンスがよいことを示す。Ｍｏｖｉｅｌｅｎｓユーザの場合、ＳＶＭは他のすべてのアルゴリズムよりパフォーマンスがよく、ロジスティック回帰が２番目によい。一般的に、推定は各データセットにおいて支配的な性別（Ｆｌｉｘｓｔｅｒでは女性であり、Ｍｏｖｉｅｌｅｎｓでは男性である）に対してパフォーマンスがよい。これはＳＶＭの場合に特に顕著である。ＳＶＭは、支配的クラスについては非常に高い再現率を示すが、被支配的クラスについては再現率が低い。ミクストモデルは、Ｂｅｒｎｏｕｌｌｉモデルでは大幅に改善するが、多項式モデルでは同様の結果である。これは、ガウス分布の利用は、レーティングの分布の十分に正確な推定ではないかも知れないことを示している。
【００３４】
単純に「見たか見ていないか」という二値イベントに対するレーティング値自体（星の数やその他の主観的スケール）に関するユーザレーティングのインパクトは、レーティングを１で置き換えた二値行列（Ｘ〜（訳注：〜はＸの上に来る、以下同様）と記す）にロジスティック回帰とＳＶＭを適用することにより、評価される。表１は、Ｘにおけるこれらの２つの方法のパフォーマンスとＸ〜とを示す。興味深いことに、Ｘ〜ではなくＸを入力として用いた時、ＳＶＭとロジスティック回帰は少しだけパフォーマンスがよいが、すべての測定において２％以下の改善にとどまる。実際、表２は、支配的クラスの場合、Ｘの利用はＸ〜の利用よりパフォーマンスがよいが、被支配的クラスの場合には悪いことを示す。同様に、Ｂｅｒｎｏｕｌｌｉモデルは、レーティング値を無視するが、多項式及びミクストモデルと比較的近いパフォーマンスである。これは、ある人のプロファイルに含まれた映画が、その映画に与えられたスターレーティングの値と同じくらいインパクトがあるか否かを示す。
【００３５】
トレーニングセットサイズの効果を評価した。１０フォールドクロス確認（１０−ｆｏｌｄ  ｃｒｏｓｓ  ｖａｌｉｄａｔｉｏｎ）を用いたので、トレーニングセットは評価セットと比較して大きい。Ｆｌｉｘｓｔｅｒデータを用いて、トレーニングセットサイズのユーザ数が推定の正確性に有する効果を評価する。評価セットの３０００ユーザを与える１０フォールドクロス確認に加え、３００ユーザ評価セットを用いて１００フォールドクロス確認を実行した。また、トレーニングセットを増加的に増やし、１００ユーザから始めて各繰り返しを行うたびに１００ユーザを追加する。
【００３６】
図２（ｃ）は、２つの評価セットサイズについてＦｌｉｘｓｔｅｒにロジスティック回帰推定の適合率をプロットしている。この数字は、両方のサイズにおいて、アルゴリズムが約７０％の適合率に到達するにはトレーニングセットに約３００ユーザが十分であり、一方、７４％より高い適合率を達成するにはトレーニングセットに５０００ユーザが必要である。これは、トレーニングには比較的少数のユーザで十分であることを示す。
【００３７】
映画と性別の相関を検討した。ロジスティック回帰により計算された係数により、男性及び女性と最も相関が高い映画が分かる。表３は、各性別と相関するＦｌｉｘｓｔｅｒの映画トップ１０本を列挙したものである。これと同様のものをＭｏｖｉｅｌｅｎｓについても行える。これらの映画は１０フォールドにわたる平均ランクに基づき並べられている。係数はフォールド間で大きく変わるが、映画の順序は変わらないので、平均ランクを用いた。性別との相関が最大の映画は、入力として用いたのがＸかＸ〜かにより非常に異なる。例えば、女性及び男性との相関が高い１００本の映画のうち、男性では３５本のみが２つの入力で同じであり、女性では２７本のみが同じである。比較により、Ｊａｃｃａｒｄ距離はそれぞれ０．１９と０．１６となる。両データセットの映画の多くが、アクションとホラーは男性との相関が高く、ドラマとロマンスは女性との相関が高いという固定概念と一致した。しかし、人気のある映画の多くは両性により好まれているため、性別の推定は簡単ではない。
【００３８】
表３は、両データセットにおいて、男性との相関性が高い映画の幾つかは同性愛の男性を含むプロット（Ｌａｔｔｅｒ  Ｄａｙｓ、Ｂｅａｕｔｉｆｕｌ  Ｔｈｉｎｇ、Ｅａｔｉｎｇ  Ｏｕｔなど）を有することを示している。Ｘ〜を用いると同じ結果が得られた。これの主な理由は、これらの映画はすべてレーティングが比較的少数であり、数十から数百の範囲にあることである。この場合、クラスプライアに対する性別間のレーティング分布における分散が小さいので、映画はクラスとの相関性が高くなる。
【００３９】
【表３】
2015526795.tif 000010
表３．Ｆｌｉｘｓｔｅｒにおける男性及び女性との相関が高い映画
利用可能な２つのデータセットにおけるＳＶＭ及びリニア回帰を完全に説明し、良い結果が得られたので、推定エンジンを実現する新規な方法と装置を発明した。図３は、人口統計情報を有しないユーザレーティングから人口統計情報を生成し、その結果を有用な目的に利用する、本発明の態様による方法を示す。生成されるかかる人口統計情報を用いる最終目的は、ユーザ１２５への広告のターゲティング（ｔａｒｇｅｔｉｎｇ）、及び／または推奨システム１３０を介してよりよい推奨をすることを含む。
【００４０】
図３の方法３００は、初めに、ステップ３０５において、複数のユーザを表すレーティングと人口統計情報を有するトレーニングデータセットを推奨エンジンに入力する。図１では、推定エンジン１３５を推奨システム１３０の一部であるとして示した。このステップは、ネットワーク１２０への推奨システム接続１３７を用いて実現でき、またはポート１３６を介した推定エンジン１３５への直接入力により実現できる。入力が推奨システムネットワーク接続１３７経由である場合、トレーニングデータセットは、人口統計情報とレーティング情報の一つずつの集積であってもよいし、人口統計情報とレーティング情報を有する少なくとも一ユーザトレーニングデータセットの一以上のロードであってもよい。入力が入力ポート１３６を介して推定エンジン１３５に直接なされるとき、データは少なくとも一ユーザトレーニングデータセットの一以上のダウンロードである。ステップ２１０において、推奨システム１３５は、トレーニングデータセットからの情報を用いて推定エンジンをトレーニングする。推定エンジン１３５がポート１３６を介して直接ダウンロードを有するとき、ステップ２１０はスキップできる。いずれのイベントにおいても、ステップ２０５と２１０は、推定エンジン１３５のトレーニングを表す。トレーニングデータセットはユーザ人口統計情報とユーザレーティング情報を両方とも有する。
【００４１】
ステップ３１５において、ユーザ１２５などのトレーニングデータセットにない新しいユーザは、推奨システム１３０とインターラクトし、レーティングのみを提供する。上記の通り、これらのレーティングは、例えば、映画識別情報と主観的レーティング値情報とを有する映画レーティングである。ユーザ１２５により提供されるレーティングには、推定エンジンにより見いだされた人口統計情報は無い。新しいユーザ１２５は推奨システムに自分のレーティングを入力した後、ステップ３２０において、推定エンジン１３５は分類アルゴリズムを用いて、新しいユーザのレーティングに基づいてその新しいユーザの人口統計情報を決定する。上記の通り、分類アルゴリズムは、好ましくは、サポートベクトルマシン（ＳＶＭ）またはロジスティック回帰の一方である。
【００４２】
新しいユーザの人口統計情報が決定されると、性別などの決定された人口統計情報は、多くの有用な目的に用いることができる。２つの例を図３に示す。一例では、ステップ３２０で決定された人口統計情報は、ステップ３２５で用いられ、推奨システム１３０が新しいユーザにより良い推奨を提供する。例えば、推奨システム１３０がＮｅｔｆｌｉｘまたはＨｕｌｕにより運営された映画推奨システムであるとき、性別などの人口統計情報を用いて、新しいユーザが視聴する特定性別映画（ｇｅｎｄｅｒ−ｓｐｅｃｉｆｉｃ  ｍｏｖｉｅ）をより密接に選択することができる。代替的に、推奨システム１３０は、ステップ３２０からの決定した人口統計情報を用いて、ステップ３３０において、特定の広告を新しいユーザにターゲティング（ｔａｒｇｅｔ）することができる。例えば、新しいユーザの性別を判別すると、特定性別広告がその新しいユーザにターゲティングされる。かかる広告は、女性に対する香水の購入ディスカウントの示唆であったり、男性に対するひげそり器の購入ディスカウントの示唆を含む。推奨システムは、図示しない内部または外部のデータベースやネットワークサーバの潜在的広告にアクセスできる。
【００４３】
ステップ３２５または３３０のいずれかまたは両方は、新しいユーザ１２５により提供されるレーティングから抽出される人口統計情報を利用するのに取れる有用なアクションとして考えることができる。ステップ３１５ないし３３０は、推奨システム１３０のサービスを利用する各新しいユーザに対して繰り返してもよい。推奨システムからの改善された推奨または広告を受け取るユーザは、ユーザ１２５などのユーザに関連するディスプレイデバイスにその改善された推奨または広告を受け取る。かかるユーザディスプレイデバイスは周知であり、ホームテレビジョンシステムに関連するディスプレイデバイス、スタンドアロンテレビジョン、パーソナルコンピュータ、及びハンドヘルドデバイス（パーソナルデジタルアシスタントなど）、ラップトップ、タブレット、携帯電話、及びウェブノートブックを含む。
【００４４】
図４は推定エンジン１３５を示すブロック図である。推定エンジン１３５は、図１に示したように推奨システム１３０とインタフェースしている。推定エンジンインタフェース４１０は、推定エンジン１３５の通信コンポーネントを推奨システム１３０の通信コンポーネントに接続する機能を果たす。推奨システム４０５への推定エンジンインタフェース４１０は、シリアルリンクまたはパラレルリンクであり、組み込み機能または外部機能であり、当業者には知られている。このように、推定エンジンは推奨システムと一体であっても、推奨システムとは別のものであってもよい。推奨システム１３０は、インタフェースポート４０５により、インタフェースエンジン１３５にトレーニングデータを提供し、推奨システムに推定結果を提供する。代替的なトレーニングデータセットインタフェースは、トレーニングデータがネットワークその他のデジタルデータソース（記憶媒体ソースなど）から便利な形式で入力される入力ポート１３６である。
【００４５】
プロセッサ４２０は推定エンジン１３５に計算機能を提供する。プロセッサは、推定エンジンの要素間の通信を利用して推定エンジンの通信と計算プロセスを制御する任意形式のＣＰＵやコントローラである。当業者には言うまでもなく、バス４１５は推定エンジン１３５の様々な要素間の通信経路を提供するが、その他のポイントツーポイント相互接続も可能である。
【００４６】
プログラムメモリ４３０は図３の方法３００に関するメモリのリポジトリを提供できる。データメモリ４４０は、トレーニングデータセット、ダウンロード、アップロードまたはスクラッチパッド計算などの情報を記憶するリポジトリを提供できる。当業者には言うまでもなく、メモリ４３０と４４０は一体となっていても別のものであってもよく、プロセッサ４２０に全部または一部が組み込まれていてもよい。プロセッサ４２０は、推奨システム１３０により用いられる人口統計情報を生成するため、プログラムメモリの記憶及び読み出し特性を利用して、コンピュータ命令などの命令を実行し、方法３００のステップを実行する。
【００４７】
推定器４５０は、プロセッサ４２０とは別のものであってもその一部であってもよく、新しいユーザのレーティングから人口統計情報を決定する計算リソースを提供するように機能する。そのため、推定器４５０は、分類器、好ましくはＳＶＭまたはロジスティック回帰、に対し計算リソースを提供できる。推定器は、新しいユーザの人口統計情報の決定において、データメモリ４４０またはプロセッサ４２０に中間計算結果を提供できる。かかる中間計算結果には、新しいユーザのレーティング情報のみが与えられた場合の、そのユーザに関する人口統計情報の確率が含まれる。推定器４５０は、ハードウェアであってもよいが、好ましくはハードウェアと、ファームウェアまたはソフトウェアとの組み合わせである。
図４には推定エンジンの実施形態の具体的なアーキテクチャを示したが、当業者には言うまでもなく、コンポーネントの分散機能、コンポーネントの連結、推奨システムへのサービスとしてのサーバ中のロケーションなど、実施上のオプションがある。かかるオプションは、図示及び説明した構成の機能及び構造と等価である。
【図１】
2015526795.tif 000011
【図２Ａ】
2015526795.tif 000012
【図２Ｂ】
2015526795.tif 000013
【図２Ｃ】
2015526795.tif 000014
【図３】
2015526795.tif 000015
【図４】
2015526795.tif 000016
【手続補正書】
【提出日】平成26年12月25日(2014.12.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ユーザの映画レーティングを利用して前記ユーザの人口統計情報を決定する方法であって、
前記ユーザの映画レーティングを受け取る、前記ユーザのレーティングはレーティング情報のみを有し、前記ユーザの映画レーティングは一以上の映画識別情報及びレーティング値を含むステップと、
前記ユーザの映画レーティングから、前記ユーザの人口統計情報を決定する、前記決定はトレーニングされた推定エンジンを用いて行われるステップと、
前記決定された人口統計情報を利用して、前記ユーザに推奨を提供し、または前記ユーザにターゲティングされた広告を提供するステップと、
を有する方法。
【請求項２】
前記ユーザのレーティングを受け取るステップは、人口統計情報を含まないレーティングを受け取るステップを有する、請求項１に記載の方法。
【請求項３】
前記ユーザの決定された人口統計情報は性別情報である、請求項１に記載の方法。
【請求項４】
前記ユーザは前記トレーニングデータセットには含まれていない、
請求項１に記載の方法。
【請求項５】
前記決定するステップは、分類器を用いて前記ユーザの人口統計情報を決定するステップを有する、請求項１に記載の方法。
【請求項６】
前記分類器は、サポートベクトルマシン及びロジスティック回帰アルゴリズムのうちの一つである、請求項５に記載の方法。
【請求項７】
ユーザの映画レーティングを利用して前記ユーザの人口統計情報を決定する装置であって、
他の複数のユーザからのレーティング及び人口統計情報を含むトレーニングデータセットを入力するインタフェースと、
前記ユーザの、人口統計情報を含まないレーティングを用いて人口統計情報を決定するコンピュータ命令を実行する、前記ユーザのレーティングは一以上の映画識別情報及びレーティング値を含む、メモリへのアクセスを有するプロセッサと、
前記決定された人口統計情報に基づいて前記ユーザにターゲティングされた広告を提供する推奨システムに前記決定された人口統計情報を提供する、前記推奨システムへのインタフェースと、
を有する装置。
【請求項８】
前記装置は前記推奨システムの一部である、請求項７に記載の装置。
【請求項９】
前記トレーニングデータセットを入力するインタフェースは前記推奨システムへのインタフェースとしても機能する、請求項７に記載の装置。
【請求項１０】
前記ユーザの決定された人口統計情報は性別情報である、
請求項７に記載の装置。
【請求項１１】
前記ユーザの人口統計情報の決定において前記プロセッサを支援する分類器をさらに有する、請求項７に記載の装置。
【請求項１２】
前記分類器は、サポートベクトルマシン及びロジスティック回帰アルゴリズムのうちの一つである、請求項７に記載の装置。
【国際調査報告】
2015526795.tif 000017
2015526795.tif 000018