JP7009791B2 - 情報処理装置およびプログラム - Google Patents

情報処理装置およびプログラム Download PDF

Info

Publication number
JP7009791B2
JP7009791B2 JP2017121518A JP2017121518A JP7009791B2 JP 7009791 B2 JP7009791 B2 JP 7009791B2 JP 2017121518 A JP2017121518 A JP 2017121518A JP 2017121518 A JP2017121518 A JP 2017121518A JP 7009791 B2 JP7009791 B2 JP 7009791B2
Authority
JP
Japan
Prior art keywords
community
user
item
attribution
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017121518A
Other languages
English (en)
Other versions
JP2019008414A (ja
Inventor
シュウレ 邱
洋 岡本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2017121518A priority Critical patent/JP7009791B2/ja
Publication of JP2019008414A publication Critical patent/JP2019008414A/ja
Application granted granted Critical
Publication of JP7009791B2 publication Critical patent/JP7009791B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、情報処理装置およびプログラムに関する。
ユーザにアイテムを推薦する協調フィルタリングに係る発明として、例えば特許文献1に開示された発明がある。特許文献1に開示された装置は、ランキングアイテムのペア集合についてユーザの嗜好データを取得し、嗜好データおよびユーザ・アイテム間の相関データに基づいてユーザの嗜好ベースの確率的潜在嗜好解析モデルを構築し、確率的潜在嗜好モデルを使用することにより、ユーザの嗜好に基づくアイテムランキングを予測する。
特開2011-096255号公報
協調フィルタリングにおいて潜在意味抽出モデルの方法の場合、パラメータの学習を行う必要があり、ユーザとアイテムの特性の多様性やユーザの趣味の広さを考慮した推薦を、パラメータの学習を行わずに行うことができなかった。
本発明は、パラメータの学習を行うことなく、ユーザとアイテムの特性の多様性やユーザの趣味の広さを考慮した推薦を行う技術を提供することを目的とする。
本発明の請求項1に係る情報処理装置は、各ユーザが持つ各アイテムを表すデータを取得する取得手段と、前記データに含まれる各ユーザおよび各アイテムをそれぞれノードとし、前記ユーザに対応するノードと、そのユーザが持つ各アイテムに対応する各ノードとをリンクで結んだ二部ネットワークを生成する生成手段と、前記二部ネットワークからコミュニティの階層構造を抽出する抽出手段と、前記抽出手段で抽出された階層構造における各層のコミュニティにおけるノードの重要度を算出し、算出した重要度から前記ユーザに対応する前記ノードの各コミュニティへの帰属度を算出する第1算出手段と、前記第1算出手段が算出した帰属度と、前記コミュニティにおける前記アイテムの重要度から、前記ユーザと前記アイテムとの相性を表す指標を算出する第2算出手段と、前記抽出手段で抽出された階層構造のコミュニティから、予め定められた条件に従ってコミュニティを選択する選択手段と、を備え、前記選択手段は、前記帰属度が、最大値の予め定められた割合以上となったコミュニティを選択する。
本発明の請求項2に係る情報処理装置は、前記指標が予め定められた条件に合致したアイテムを指定されたユーザへ推薦する推薦手段を備える。
本発明の請求項3に係る情報処理装置においては、前記推薦手段は、前記選択手段が選択したコミュニティに属するアイテムを推薦する。
本発明の請求項に係る情報処理装置においては、前記選択手段は、前記帰属度が予め定められた閾値以上であるコミュニティを選択する。
本発明の請求項に係る情報処理装置においては、前記選択手段は、前記帰属度が最上位から予め定められた範囲内のコミュニティを選択する。
本発明の請求項に係る情報処理装置においては、前記第2算出手段は、前記各層のノードの各コミュニティへの帰属度と各コミュニティにおける前記アイテムの重要度により、層毎に前記ユーザと前記アイテムとの相性を表す指標を算出し、全ての層の当該指標の平均を、前記ユーザと前記アイテムとの相性を表す指標とする。
本発明の請求項に係るプログラムは、コンピュータを、各ユーザが持つ各アイテムを表すデータを取得する取得手段と、前記データに含まれる各ユーザおよび各アイテムをそれぞれノードとし、前記ユーザに対応するノードと、そのユーザが持つ各アイテムに対応する各ノードとをリンクで結んだ二部ネットワークを生成する生成手段と、前記二部ネットワークからコミュニティの階層構造を抽出する抽出手段と、前記抽出手段で抽出された階層構造における各層のコミュニティにおけるノードの重要度を算出し、算出した重要度から前記ユーザに対応する前記ノードの各コミュニティへの帰属度を算出する第1算出手段と、前記第1算出手段が算出した帰属度と、前記コミュニティにおける前記アイテムの重要度から、前記ユーザと前記アイテムとの相性を表す指標を算出する第2算出手段と、前記抽出手段で抽出された階層構造のコミュニティから、予め定められた条件に従ってコミュニティを選択する選択手段として機能させ、前記帰属度が、最大値の予め定められた割合以上となったコミュニティを前記選択手段が選択するように前記コンピュータを機能させるためのプログラムである。
本発明の請求項1、4,5に係る情報処理装置によれば、パラメータの学習を行うことなく、ユーザとアイテムの特性の多様性やユーザの趣味の広さを考慮した推薦を行うことができる。
本発明の請求項2に係る情報処理装置によれば、指定されたユーザへアイテムを推薦することができる。
本発明の請求項3に係る情報処理装置によれば、予め定められた条件に合致するコミュニティからアイテムを推薦することができる
本発明の請求項に係る情報処理装置によれば、多様なアイテムを推薦することができる。
本発明の請求項に係るプログラムによれば、パラメータの学習を行うことなく、ユーザとアイテムの特性の多様性やユーザの趣味の広さを考慮した推薦を行うことができる。
本発明の一実施形態に係る情報処理装置の構成を示した図。 制御部10が行う処理の流れを示したフローチャート。 履歴データの一例を示した図。 二部ネットワークの一例を示した図。 制御部10が行う処理の流れを示したフローチャート。 制御部10が行う処理の流れを示したフローチャート。 コミュニティの一例を示した図。 推薦するアイテムの一例を示した図。 推薦するアイテムの一例を示した図。
[実施形態]
図1は、本発明に係る情報処理装置1の構成の一例を示した図である。情報処理装置1は、コンピュータ装置であり、制御部10、記憶部11、操作部12、表示部13および通信部14を備える。
通信部14は、通信回線に接続されており、他のコンピュータ装置と通信を行う通信インターフェースの機能を有する。表示部13は、ディスプレイ装置であり、制御部10が行った処理の結果を表示する。操作部12は、例えば情報処理装置1を操作するためのキーボードやマウス等である。
記憶部11は、データを永続的に記憶する記憶装置を含み、履歴データを記憶する。履歴データは、例えば、動画配信サイトのユーザと、動画配信サイトでユーザが視聴したアイテム(例えば映画)とを対応付けたデータであり、ユーザが持つアイテムを表すデータである。履歴データは、生データから抽出された生の特徴表現のデータである。生データは、分析の対象となる個々の主体の特徴となる素性(属性)の情報を含んだデータであり、データの内容やデータ形式等に制限はない。例えば、ユーザの視聴履歴は、生データの一例である。この場合、例えば、個々のユーザを分析対象の主体とし、そのユーザが視聴した個々のアイテムをその主体の個々の素性と捉える。なお、生データにおいて、どの情報項目を主体およびその主体の素性とするかは、分析目的に応じて適宜定める事項であり、以上に説明したのはあくまで一例に過ぎない。また、記憶部11は、制御部10が実行するプログラムを記憶する。記憶部11に記憶されるプログラムは、通信部14により電気通信回線を介して取得したものや、コンピュータ読み取り可能な記録媒体から取得したものであってもよい。本実施形態においては、記憶部11が記憶するプログラムは、ユーザに推薦するアイテムを履歴データに基づいて決定するプログラムである。
制御部10は、CPU(Central Processing Unit)とRAM(Random Access Memory)を備えており、記憶部11に記憶されているプログラムを実行する。記憶部11に記憶されているプログラムを制御部10が実行すると、取得部101、生成部102、抽出部103、第1算出部104、選択部105、第2算出部106、および推薦部107が実現し、動画配信サイトのユーザに推薦するアイテムを決定する機能が実現する。
本発明に係る取得手段の一例である取得部101は、履歴データを記憶部11から取得する。本発明に係る生成手段の一例である生成部102は、取得部101が取得した履歴データから二部ネットワークを生成する。本発明に係る抽出手段の一例である抽出部103は、生成部102が生成した二部ネットワークからコミュニティの階層構造を抽出する。本発明に係る第1算出手段の一例である第1算出部104は、抽出部103で抽出された階層構造における各層のコミュニティにおけるノードの重要度を算出し、算出した重要度からノードの各コミュニティへの帰属度を算出する。本発明に係る選択手段の一例である選択部105は、抽出部103が抽出した階層構造のコミュニティから、予め定められた条件に従ってコミュニティを選択する。本発明に係る第2算出手段の一例である第2算出部106は、第1算出部104が算出した帰属度および重要度から、ユーザとアイテムとの相性を表す指標を算出する。本発明に係る推薦手段の一例である推薦部107は、第2算出部106が算出した指標が予め定められた条件に合致したアイテムを、ユーザへ推薦する。
図2は、プログラムを実行した制御部10が行う処理の流れを示したフローチャートであり、ユーザへ推薦するアイテムを決定する処理の前に行われる事前処理のフローチャートである。まず制御部10(取得部101)は、記憶部11に記憶されている履歴データを取得する(ステップSA1)。履歴データの一例を図3に示す。図3の履歴データは、動画配信サイトの個々のユーザの識別情報であり、主体であるユーザIDに対して、素性である個々のアイテムがそれぞれユーザに購入された(値「1」)か、購入されていない(値「0」)かを表している。
次に制御部10(生成部102)は、取得した履歴データから二部ネットワークを生成する(ステップSA2)。二部ネットワークとは、二部グラフとも呼ばれ、ノードの集合が2つの部分集合に分割されており、同じ部分集合内のノード同士の間にリンクがないネットワーク(グラフ)のことである。二部ネットワークの一例を図4に例示する。図4では、正方形が動画配信サイトのユーザを表すノードであり、円形がアイテムである。また、ユーザのノードとアイテムのノードを結ぶ直線がリンクである。この二部ネットワークは、例えば、図2に例示する履歴データにおいて、値が1であるユーザとアイテムのノード間をリンクで結ぶことにより生成される。この二部ネットワークでは、値が0であるユーザとアイテムのノード間にはリンクがない。
次に制御部10(抽出部103)は、ステップSA2で生成した二部ネットワークにおいて、コミュニティの階層構造を抽出する(ステップSA3)。コミュニティの階層構造を抽出する方法としては、例えば、本出願人による特開2016-218531号公報に開示された方法がある。
次に制御部10(第1算出部104)は、ステップSA3で抽出した階層構造を対象として、ネットワークのモジュール分解の手法によるクラスタリングの計算を行い、各層においてノードnの各コミュニティkへの帰属度γ(k|n)と、コミュニティkにおけるノードnの確率(重要度)p(n|k)を計算する(ステップSA4)。このネットワークのモジュール分解は、次の数1の式で表現される。
Figure 0007009791000001
数1の式において、p(n)はノードnが持つ確率(そのノードにランダムウォーカーが存在する確率)である。またπkは、コミュニティkの事前確率であり、そのコミュニティkの重要度を示す。πkのkについての総和は1である。またp(n|k)は、コミュニティkにおけるノードnの確率である。Kはコミュニティkの総数である。数1の式は、ノードnの確率p(n)が、各コミュニティkにおける当該ノードnの確率p(n|k)の組み合わせに分解できることを表している。
制御部10が行う具体的な計算手法は、特願2017-034888に記載された方法と同様でよい。以下では、具体的な計算処理として、特願2017-034888に記載された方法に基づく処理の例を、図5のフローチャートを参照して説明する。
図5の手順では、まず制御部10は、生成した二部ネットワークについての遷移確率行列Tnmを生成する(ステップSB1)。ここで、遷移確率行列Tnmは、ネットワーク内のノードmからノードnへリンクを辿ってエージェント(言い換えれば、ノードmが持つ確率値)が遷移(ランダムウォーク)する確率(すなわち遷移確率)を行列として表現したものである。例えばエージェントがノードから出る1以上のリンクを等確率で選択するとみなした場合、遷移確率行列は、ネットワーク情報が示すネットワークの構造、すなわちノード間がどのようにリンクされているか、のみに依存する。もちろん、ネットワークの構造以外の情報(例えばノードの重要度やリンクの強さ)を考慮に入れて遷移確率行列Tnmを求めることもできるが、この場合も遷移確率行列Tnmはネットワーク情報に基づく点は同様である。なお、二部ネットワークの場合、同じ部分集合に属するノード同士の間にはリンクがないので、遷移確率行列Tnmにおける同じ部分集合内のノード同士の間の遷移確率は0となる。遷移確率行列については、更に特開2013-168127号公報、特開2016-029526号公報、特開2016-218531号公報も参照されたい。
次に、制御部10は、定常リンク確率を計算する(ステップSB2)。この計算では、まずステップSB1で得られた二部ネットワークの遷移確率行列Tnmを用いて、その二部ネットワークにおける確率遷移(ランダムウォーク)の定常状態において各ノードが持つ確率(定常状態のノード確率)を計算する。この計算では、例えば次の数2の式の計算を定常状態となるまで繰り返す。
Figure 0007009791000002

数2の式において、pt(n)は、離散的な時刻tにおいてノードnが持つ確率である。数2の式を繰り返し計算して定常状態となったときのpt(n)が、ノードnの定常状態でのノード確率pstead(n)である。
次に制御部10は、各ノードnの定常状態でのノード確率pstead(n)から、定常状態でのリンク確率を次の数3の式に従って計算する。
Figure 0007009791000003
リンク確率とは、ノード確率pt(n)に対してそのノードから出るリンクl(エル)の遷移確率を乗じたものである。リンクlについての定常状態のリンク確率(数3の式の左辺)は、そのリンクlの起点のノードの定常状態のノード確率に対して、遷移確率行列Tnmに含まれる、そのリンクlの起点ノードから終点ノードへの遷移確率を乗じたものである。
特開2016-029526号公報および特開2016-218531号公報では、D回の仮想的な観測で得られる観測データである通過情報τn (d)(dは1からDまでの整数。nはノードの識別番号)を学習データとして用いた。これに対して以下に説明する例では、観測回数Dが十分大きい(ノード数Nよりもはるかに多い)という妥当な想定の下、τn (d)の代わりに実リンクlに関する通過情報として、数4の式を用いる。
Figure 0007009791000004
ここでnはノードの識別番号である。またδはクロネッカーのδである。すなわち、数4の式が定義するノードnの実リンクlに関する通過情報(学習データ)は、そのノードnがその実リンクlの終点ノード(terminal end of link l)または起点ノード(initial end of link l)に一致する場合に値が1となり、それ以外の場合は値が0となる。制御部10は、二部ネットワークの情報からこのような通過情報を学習用のデータとして生成する。生成した通過情報は、後述するEM(Expectation Maximization)アルゴリズムの計算で用いる。
また、本実施形態では、特開2016-029526号公報での仮想的な観測の各回dにおける複数のコミュニティ(成分)全体に対するコミュニティkが占める割合γ(d)(k)の代わりに、実リンクlに関して後述する数6の(3)の式で定義される割合γlk(チルダ付き)を用いる。
また、このような観測回数dから実リンクの番号lへの置き換えにより、関数の総和の表現は以下のように置き換えられる。
Figure 0007009791000005
後述する数6の(1)の式の右辺第2項は、特開2016-029526号公報等に説明した同様の式に対してこのような置き換えを行ったものである。
図5の手順の説明に戻ると、次に制御部10は、確率pt(n|k)および重要度πk new、および割合γlkの初期値を仮決めし、繰り返し回数のカウンタgの値を0に初期化する(ステップSB3)。確率pt(n|k)は、コミュニティkにおけるノードnの確率である。また、重要度πk newは、コミュニティkの重要度である。またγlkは、リンクlにおける、複数のコミュニティ全体に対するコミュニティkが占める割合である。
次に制御部10は、下記の数6の(1)、(2)、(3)の式を用いてEMアルゴリズムの繰り返し計算を行う。
Figure 0007009791000006
すなわちまず制御部10は、(3)の式を用いて割合γlkを計算する(ステップSB4)(EMアルゴリズムのEステップ)。この計算の最初の繰り返しでは、ステップSB3で仮決めした初期値を用いる。
次に制御部10は、現在の確率pt(n|k)および重要度πk newを一時刻前の値pt-1(n|k)および重要度πk oldとする置き換えを行う(ステップSB5)。そして、(1)の式および(2)の式に従って、確率pt(n|k)および重要度πk newを計算する(ステップSB6)(EMアルゴリズムのMステップ)。より詳しくは、ステップSB6では、まず(2)の式に従って新たな重要度πk newを計算し、その後、この新たな重要度を用いて(1)の式の計算を行うことで、確率pt(n|k)を求める。ここでαは、正の実数であって、コミュニティの大きさを定めるパラメータであり、予め定めた値を用いればよい。
そして、制御部10は、繰り返し計算の回数のカウンタgをインクリメントし(ステップSB7)、そのカウンタgが予め定めた値Gに達したかどうかを判定し(ステップSB8)、達していなければステップSB4~SB7の処理を繰り返す。値Gは、本実施形態の計算手法においてステップSB4~ステップSB6の計算が収束するのに必要な繰り返し回数であり、実験や経験的知識等により予め定めておく。
制御部10は、ステップSB8で、カウンタgが値Gに達したと判定した場合は、繰り返し計算が収束したものとして、処理を終了する。制御部10は、ステップSB8の判定結果がYesとなった後、数7の式に従ってノードnのコミュニティkへの帰属度γ(k|n)を計算する。
Figure 0007009791000007
この式のうちπkおよびp(n|k)は、EMアルゴリズムの計算(ステップSB4~ステップSB6)の繰り返しにより最終的に求められたπk newおよびpt(n|k)である。数7の式は、πkおよびp(n|k)から、ベイズの定理により、ノードnがコミュニティkに所属する度合い(帰属度)を示すγ(k|n)を計算する式である。制御部10は、このようにして求めた帰属度γ(k|n)とp(n|k)を記憶部11に記憶させる(ステップSA5)。
次にユーザへ推薦するアイテムを選択する処理について、図6のフローチャートを用いて説明する。図6の処理は、例えば、アイテムが推薦されるユーザuのユーザIDが操作部12で入力されることにより行われる。なお、図6の処理は、動画配信サイトへユーザuがログインしたときに、入力したユーザIDを取得して実行してもよい。制御部10は、操作部12でユーザIDが入力されると、入力されたユーザIDが表すユーザについて、新規のユーザであるか判断する(ステップSC1)。具体的には、前回のコミュニティ抽出の際に、入力されたユーザIDが表すユーザのデータが存在していたか否かで判断する。制御部10は、前回のコミュニティ抽出の際に、入力されたユーザIDが表すユーザのデータが存在していた場合には、新規のユーザではないと判断し(ステップSC1でNO)、前回のコミュニティ抽出の際に、入力されたユーザIDが表すユーザのデータが存在していない場合には、新規のユーザであると判断する(ステップSC1でYES)。
制御部10は、ステップSC1でYESと判断した場合、階層構造の各層の各コミュニティについて、ユーザuのコミュニティへの帰属度γ(k|u)を数8の式と数9の式により算出する(ステップSC2)。
Figure 0007009791000008
Figure 0007009791000009
一方、制御部10は、ステップSC1でNOと判断した場合、ユーザuのコミュニティへの帰属度γ(k|u)を、コミュニティの層毎に取得する(ステップSC3)。具体的には、制御部10は、ユーザuに対応するノードnの帰属度γ(k|n)を、ユーザuのコミュニティへの帰属度γ(k|u)として記憶部11から取得する。
次に制御部10(選択部105)は、ユーザuへ推薦するアイテムのコミュニティを選択する(ステップSC4)。本実施形態においては、ユーザuが属するコミュニティのうち、帰属度γ(k|u)が最上位からN番目までのコミュニティをユーザuに推薦するアイテムのコミュニティとする。
次に制御部10(第2算出部106)は、ユーザuとアイテムiとの相性を算出する(ステップSC5)。具体的には、制御部10は、コミュニティの層lにおける情報を使用し、全てのコミュニティにおける重要度と帰属度を用い、アイテムについて、数10の式により相性スコアを算出し、数11の式により本発明に係る指標の一例であるMDMC(Modular Decomposition of Markov Chain)推薦度を算出する。

Figure 0007009791000010
数10の式において、uはユーザを表し、iはアイテムを表し、kはコミュニティを表す。また、l(エル)は、階層構造のコミュニティの層を表し、γ(k|u)は、ユーザuのコミュニティへの帰属度を表し、p(i|k)は、コミュニティkにおけるアイテムiの重要度を表す。γ(k|u)は、ユーザが属性を持つコミュニティに興味を持つ度合いを表し(kについて足し合わせて1となる)、p(i|k)は、ユーザが属性を持つコミュニティにおけるアイテムのランキングを表す(iについて足し合わせて1となる)。γ(k|u)・p(i|k)は、ユーザの興味の高い領域における人気の高いアイテムを高く評価する。Cl(u,i)は、γ(k|u)・p(i|k)を全てのコミュニティについて合計することにより、ユーザの多様性とアイテムの多様性を考慮したスコアを表す。
l(u,i)を用いてアイテムを推薦する場合、浅い層(コミュニティ数が少ない層)からはポピュラーなアイテムが推薦され、深い層(コミュニティ数が多い層)では、ユーザの履歴を反映したアイテムが推薦される。しかし、深い層による推薦では推薦されるアイテムの多様性が低くなり、多様性が低い場合、セレンディピティが悪くなる。そこで、本発明においては、数11の式のMDMC推薦度を提案する。
Figure 0007009791000011
数11の式において、αlは、層lによる相性スコアの重みを表す。特にαl=1/L(Lは階層の数)の場合、全ての層による相性スコアを平均する。MDMC推薦度は、アイテムの多様性、ポピュラー性およびユーザの個人趣味を考慮した相性スコアを与える。
次に制御部10(推薦部107)は、ユーザuに推薦するアイテムを決定する(ステップSC6)。例えば、制御部10は、ステップSC4で選択したコミュニティに属するアイテムについて、MDMC推薦度の値が上位からN番目までのアイテムをユーザuに推薦するアイテムとする。つまり制御部10は、MDMC推薦度の値が予め定められた合致したアイテムをユーザuに推薦するアイテムとする。
例えば、図7に例示したコミュニティにおいて、ユーザuが恋愛映画を好み、恋愛映画において、同性同士の恋愛ジャンル、ファンタジー背景の恋愛ジャンル、戦争背景の恋愛ジャンルなどに幅広く興味を持つ場合を想定する。この場合、制御部10は、階層構造のコミュニティにおいて、浅い層においては、恋愛映画全体のコミュニティにおいて人気のある映画を推薦する。また、この場合、深い層においては、図8に示したように、ユーザuは、複数のコミュニティでγ(k|u)を低値として有しており、ユーザuの履歴により同性同士、ファンタジー背景、戦争背景などのコミュニティを全て好むことが分かる。制御部10は、ユーザuに推薦するアイテムのコミュニティを、ステップSC4の処理で帰属度γ(k|u)が上位N番目までのコミュニティとしており、一つのコミュニティに決めることがないため、深い層、即ち、同性同士、ファンタジー背景、戦争背景などの細かいコミュニティからなる層においては、これらのコミュニティを横断して人気のある映画を推薦し、ユーザに対するアイテムの推薦に多様性が生じる。
また、例えば、図7に示したコミュニティにおいて、ユーザuが恋愛映画を好み、恋愛映画において、戦争背景の恋愛ジャンルのみに興味を持つ場合を想定する。この場合、図9に示したように、浅い層から深い層まで、γ(k|u)の値が一つ(あるいは少ない数)のコミュニティに集まる。制御部10は、浅い層においては、恋愛映画全体のコミュニティにおいて人気のある映画を推薦する。また、制御部10は、深い層においては、ユーザuが戦争背景のコミュニティのみと相関しているため、戦争背景のコミュニティからのみ映画を推薦する。但し、深い層の重要度p(i|k)の値が浅い層のコミュニティよりも比較的大きいため、数10の式により、深い層における個人的趣味を反映したアイテムは、浅い層におけるポピュラーアイテムよりも大きい相性スコアを持ち、より優先的に推薦される。
制御部10は、ユーザuに推薦するアイテムを決定すると、決定したアイテムをユーザに推薦する(ステップSC7)。制御部10は、ユーザへのアイテムの推薦を電子メールで行ってもよく、また、動画配信サイトへユーザがログインしたときに、決定したアイテムをログイン後の画面でユーザに提示してもよい。
[変形例]
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限定されることなく、他の様々な形態で実施可能である。例えば、上述の実施形態を以下のように変形して本発明を実施してもよい。なお、上述した実施形態および以下の変形例は、各々を組み合わせてもよい。
上述した実施形態においては、ステップSC4において、ユーザuに推薦するアイテムのコミュニティを、帰属度γ(k|u)が上位N番目までのコミュニティとしているが、実施形態の構成に限定されるものではない。例えば、制御部10は、帰属度γ(k|u)の値が最大となったコミュニティを、ユーザuに推薦するアイテムのコミュニティとして決定してもよい。また、制御部10は、帰属度γ(k|u)の値の最大値を取得し、帰属度γ(k|u)の値が最大値の予め定められた割合であるa割の値以上であるコミュニティを、ユーザuに推薦するアイテムのコミュニティとして決定してもよい。また、帰属度γ(k|u)が予め定められた閾値以上となったコミュニティを、ユーザuに推薦するアイテムのコミュニティとして決定してもよい。ユーザuに推薦するアイテムのコミュニティを、帰属度γ(k|u)の値が最大値のa割の値以上であるコミュニティに決定する方法や、帰属度γ(k|u)が予め定められた閾値以上となったコミュニティに決定する方法においては、上述した実施形態と同様に、ユーザuに推薦するアイテムのコミュニティを、一つのコミュニティに決めることがないため、ユーザに対するアイテムの推薦に多様性が生じる。
本発明においては、ステップSC1の判断を行う際に、入力されたユーザIDが表すユーザについて、新規のユーザである場合、浅い層の各コミュニティにおいて重要度が上位から予め定められた範囲内のアイテムを推薦するようにしてもよい。
上述した実施形態においては、ユーザuへ推薦するアイテムのコミュニティをステップSC4において選択し、選択したコミュニティに属するアイテムについて、MDMC推薦度を算出しているが、MDMC推薦度を算出するアイテムは、ステップSC4において選択したコミュニティに属するアイテムに限定されるものではない。例えば、本発明においては、全てのアイテムについてMDMC推薦度を算出し、MDMC推薦度の値が上位からN番目までのアイテムをユーザuに推薦するアイテムとしてもよい。
1…情報処理装置、10…制御部、11…記憶部、12…操作部、13…表示部、14…通信部、101…取得部、102…生成部、103…抽出部、104…第1算出部、105…選択部、106…第2算出部、107…推薦部。

Claims (7)

  1. 各ユーザが持つ各アイテムを表すデータを取得する取得手段と、
    前記データに含まれる各ユーザおよび各アイテムをそれぞれノードとし、前記ユーザに対応するノードと、そのユーザが持つ各アイテムに対応する各ノードとをリンクで結んだ二部ネットワークを生成する生成手段と、
    前記二部ネットワークからコミュニティの階層構造を抽出する抽出手段と、
    前記抽出手段で抽出された階層構造における各層のコミュニティにおけるノードの重要度を算出し、算出した重要度から前記ユーザに対応する前記ノードの各コミュニティへの帰属度を算出する第1算出手段と、
    前記第1算出手段が算出した帰属度と、前記コミュニティにおける前記アイテムの重要度から、前記ユーザと前記アイテムとの相性を表す指標を算出する第2算出手段と
    前記抽出手段で抽出された階層構造のコミュニティから、予め定められた条件に従ってコミュニティを選択する選択手段と、
    を備え
    前記選択手段は、前記帰属度が、最大値の予め定められた割合以上となったコミュニティを選択する情報処理装置。
  2. 前記指標が予め定められた条件に合致したアイテムを指定されたユーザへ推薦する推薦手段を備える
    請求項1に記載の情報処理装置。
  3. 前記推薦手段は、前記選択手段が選択したコミュニティに属するアイテムを推薦する
    請求項2に記載の情報処理装置。
  4. 前記選択手段は、前記帰属度が予め定められた閾値以上であるコミュニティを選択する
    請求項1から3のいずれか1項に記載の情報処理装置。
  5. 前記選択手段は、前記帰属度が最上位から予め定められた範囲内のコミュニティを選択する
    請求項1から3のいずれか1項に記載の情報処理装置。
  6. 前記第2算出手段は、前記各層のノードの各コミュニティへの帰属度と各コミュニティにおける前記アイテムの重要度により、層毎に前記ユーザと前記アイテムとの相性を表す指標を算出し、全ての層の当該指標の平均を、前記ユーザと前記アイテムとの相性を表す指標とする
    請求項1からのいずれか一項に記載の情報処理装置。
  7. コンピュータを、
    各ユーザが持つ各アイテムを表すデータを取得する取得手段と、
    前記データに含まれる各ユーザおよび各アイテムをそれぞれノードとし、前記ユーザに対応するノードと、そのユーザが持つ各アイテムに対応する各ノードとをリンクで結んだ二部ネットワークを生成する生成手段と、
    前記二部ネットワークからコミュニティの階層構造を抽出する抽出手段と、
    前記抽出手段で抽出された階層構造における各層のコミュニティにおけるノードの重要度を算出し、算出した重要度から前記ユーザに対応する前記ノードの各コミュニティへの帰属度を算出する第1算出手段と、
    前記第1算出手段が算出した帰属度と、前記コミュニティにおける前記アイテムの重要
    度から、前記ユーザと前記アイテムとの相性を表す指標を算出する第2算出手段と、
    前記抽出手段で抽出された階層構造のコミュニティから、予め定められた条件に従ってコミュニティを選択する選択手段
    として機能させ、前記帰属度が、最大値の予め定められた割合以上となったコミュニティを前記選択手段が選択するように前記コンピュータを機能させるためのプログラム。
JP2017121518A 2017-06-21 2017-06-21 情報処理装置およびプログラム Active JP7009791B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017121518A JP7009791B2 (ja) 2017-06-21 2017-06-21 情報処理装置およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017121518A JP7009791B2 (ja) 2017-06-21 2017-06-21 情報処理装置およびプログラム

Publications (2)

Publication Number Publication Date
JP2019008414A JP2019008414A (ja) 2019-01-17
JP7009791B2 true JP7009791B2 (ja) 2022-01-26

Family

ID=65026007

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017121518A Active JP7009791B2 (ja) 2017-06-21 2017-06-21 情報処理装置およびプログラム

Country Status (1)

Country Link
JP (1) JP7009791B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008077403A (ja) 2006-09-21 2008-04-03 Ntt Data Corp 評価装置、評価方法及び評価プログラム
US20090259441A1 (en) 2006-05-24 2009-10-15 Nihon University Communication network designing method, communication designing apparatus, and recording medium
JP2012108738A (ja) 2010-11-17 2012-06-07 Sony Corp 情報処理装置、潜在特徴量算出方法、及びプログラム
JP2016062445A (ja) 2014-09-19 2016-04-25 ヤフー株式会社 ラベル抽出装置、ラベル抽出方法およびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090259441A1 (en) 2006-05-24 2009-10-15 Nihon University Communication network designing method, communication designing apparatus, and recording medium
JP2008077403A (ja) 2006-09-21 2008-04-03 Ntt Data Corp 評価装置、評価方法及び評価プログラム
JP2012108738A (ja) 2010-11-17 2012-06-07 Sony Corp 情報処理装置、潜在特徴量算出方法、及びプログラム
JP2016062445A (ja) 2014-09-19 2016-04-25 ヤフー株式会社 ラベル抽出装置、ラベル抽出方法およびプログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
桑田 修平、外2名,ディリクレ過程混合モデルに基づく離散データの共クラスタリング,情報処理学会論文誌 論文誌トランザクション 平成20年度(1),日本,社団法人情報処理学会,2008年11月15日,第1巻,第1号,p.60-73
石黒 七海、外2名,異種混合メンバーシップ・ブロックモデルと情報推薦への応用,日本データベース学会論文誌,日本,日本データベース学会,2013年06月21日,第12巻,第1号,p.43-48,ISSN1883-1060
邱 シュウレ、外1名,二部ネットワークからのコミュニティ検出に基づく新しい協調フィルタリング方法,一般社団法人 人工知能学会 第31回全国大会論文集DVD [DVD-ROM],日本,一般社団法人 人工知能学会,2017年05月23日,p.1-4

Also Published As

Publication number Publication date
JP2019008414A (ja) 2019-01-17

Similar Documents

Publication Publication Date Title
Sun et al. Debiasing the human-recommender system feedback loop in collaborative filtering
CN111797321B (zh) 一种面向不同场景的个性化知识推荐方法及系统
US9607264B2 (en) Providing recommendations using information determined for domains of interest
Elmachtoub et al. A practical method for solving contextual bandit problems using decision trees
CN112115377B (zh) 一种基于社交关系的图神经网络链路预测推荐方法
Selke et al. Pushing the boundaries of crowd-enabled databases with query-driven schema expansion
JP5442547B2 (ja) コンテンツ推薦装置及び方法
CN109190030B (zh) 融合node2vec和深度神经网络的隐式反馈推荐方法
CN111881350A (zh) 一种基于混合图结构化建模的推荐方法与系统
Kermarrec et al. Application of random walks to decentralized recommender systems
KR101356948B1 (ko) Sns에서 사회적 이웃의 관심사와 사회적 활동의 토픽을 통해 사용자 관심사를 추론하는 방법 및 그 시스템
CN113158071A (zh) 一种基于图神经网络的知识社交推荐方法、系统和设备
Aghdam et al. A novel non-negative matrix factorization method for recommender systems
CN115087970A (zh) 使用贝叶斯图卷积网络的推荐系统
Blédaité et al. Pairwise preferences elicitation and exploitation for conversational collaborative filtering
Truyen et al. Preference networks: Probabilistic models for recommendation systems
CN111143704A (zh) 一种融合用户影响关系的在线社区好友推荐方法及系统
CN104272304A (zh) 信息处理设备、信息处理方法以及程序
CN107346333A (zh) 一种基于链路预测的在线社交网络好友推荐方法与系统
Zhao et al. Improving Top-N Recommendation with Heterogeneous Loss.
CN113762477B (zh) 一种构建序列推荐模型的方法和序列推荐方法
CN104572915A (zh) 一种基于内容环境增强的用户事件相关度计算方法
Jalal Big data and intelligent software systems
JP7009791B2 (ja) 情報処理装置およびプログラム
CN114912984A (zh) 基于自注意力的时间评分感知上下文的推荐方法及系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200521

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210512

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210525

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210714

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211214

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211227

R150 Certificate of patent or registration of utility model

Ref document number: 7009791

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150