JP2019114053A - 推薦装置、推薦方法及び推薦プログラム - Google Patents

推薦装置、推薦方法及び推薦プログラム Download PDF

Info

Publication number
JP2019114053A
JP2019114053A JP2017247025A JP2017247025A JP2019114053A JP 2019114053 A JP2019114053 A JP 2019114053A JP 2017247025 A JP2017247025 A JP 2017247025A JP 2017247025 A JP2017247025 A JP 2017247025A JP 2019114053 A JP2019114053 A JP 2019114053A
Authority
JP
Japan
Prior art keywords
matrix
evaluation
factor matrix
value
elements
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.)
Granted
Application number
JP2017247025A
Other languages
English (en)
Other versions
JP6787876B2 (ja
Inventor
清良 披田野
Seira Hidano
清良 披田野
清本 晋作
Shinsaku Kiyomoto
晋作 清本
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.)
KDDI Corp
Original Assignee
KDDI 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 KDDI Corp filed Critical KDDI Corp
Priority to JP2017247025A priority Critical patent/JP6787876B2/ja
Publication of JP2019114053A publication Critical patent/JP2019114053A/ja
Application granted granted Critical
Publication of JP6787876B2 publication Critical patent/JP6787876B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】ポイゾニング攻撃への耐性を少ない計算量で実現できる推薦装置、推薦方法及び推薦プログラムを提供すること。【解決手段】推薦装置1は、評価行列の列毎に各評価値を平均値からの差分で中心化する初期処理部11と、評価値を複数の部分集合にランダムに分割した後、1番目の部分集合に対応する評価行列を特異値分解し、初期ユーザ因子行列及び主成分アイテム因子行列を算出する抽出処理部12と、複数の部分集合それぞれに対応する各評価行列に主成分アイテム因子行列を掛け、各行の総和が大きい方から所定の割合を残して他の行の評価値をゼロに更新する削除処理部13と、2番目以降の部分集合を順に用いて、交互最小二乗法によりアイテム因子行列及びユーザ因子行列を交互に算出する算出処理部14と、算出されたユーザ因子行列及びアイテム因子行列の転置の積に対して、列毎に平均値を加算した補完行列を出力する出力部15と、を備える。【選択図】図1

Description

本発明は、協調フィルタリングに基づく推薦システムに関する。
従来、行列分解を用いた協調フィルタリグに基づく推薦システムは、各ユーザの各アイテムに対する評価データを行列化した評価行列を、相互最小二乗法によりユーザ及びアイテムのそれぞれの因子行列に分解し、さらにこれらを掛け合わせて評価行列を再構築することで欠損値の補完を行う。そして、推薦システムは、補完された値をユーザによる未評価のアイテムに対する評価の予測値として利用し、ユーザにアイテムの推薦を行う(例えば、非特許文献1参照)。
協調フィルタリングに対する攻撃としては、攻撃者が正規のユーザとして不正にアイテムを評価し、評価データに毒データを混入することにより、予測性能の劣化、又は特定商品の人気向上若しくは低下を招くポイゾニング攻撃がある。また、近年では、ポイゾニングを用いて評価の予測値を意図的に操作することで、推薦されたアイテムからユーザの商品履歴を推定するプライバシ暴露の攻撃の可能性が報告されている。
B. Li, Y. Wang, A. Singh, and Y. Vorobeychik, Data Poisoning Attacks on Factorization−Based Collaborative Filtering, Proceedings of the 3rd Neural Information Processing Systems (NIPS 2016), pp. 1−13, 2016. Bhaskar Mehta, Thomas Hofmann, Peter Fankhauser, Lies and propaganda: detecting spam users in collaborative filtering, Proceedings of the 12th international conference on Intelligent user interfaces (IUI 2017), pp. 14−21, 2007.
ところで、ポイゾニング攻撃における毒データは、作意のあるデータであるため、正常なデータよりも分散が小さくなるといった特性が知られている(例えば、非特許文献2参照)。
そこで、ポイゾニング攻撃への対策として、ユーザの評価データに主成分分析を適用し、分散の大きい、例えば第3主成分までの主成分に対して貢献度の高いユーザを正常なユーザと考え、それ以外のユーザを削除する方法がある。
しかしながら、この主成分分析を用いた方法は、行列分解により行列補完を行う処理とは別に実行する必要がある。主成分分析の計算量は行列の次数の3乗オーダであり、さらに、行列補完のための交互最小化アルゴリズムによる行列分解にも同等の計算量が必要なため、評価行列が大きくなるほど、計算量が膨大になっていた。
本発明は、ポイゾニング攻撃への耐性を少ない計算量で実現できる推薦装置、推薦方法及び推薦プログラムを提供することを目的とする。
本発明に係る推薦装置は、複数ユーザの複数アイテムに対する評価値を要素とする評価行列を入力として、当該評価行列を分解したユーザ因子行列及びアイテム因子行列を掛け合わせることにより、評価値を補完した補完行列を出力する推薦装置であって、前記評価行列の列毎に、観測された各評価値について平均値からの差分で当該評価値を更新する初期処理部と、前記観測された各評価値を複数の部分集合にランダムに分割した後、前記評価行列の各要素のうち、1番目の部分集合に対応する要素以外をゼロとした行列を特異値分解し、所定数の左特異ベクトルからなる初期ユーザ因子行列、及び設定された主成分数の右特異ベクトルからなる主成分アイテム因子行列を算出する抽出処理部と、前記評価行列の要素のうち、前記複数の部分集合それぞれに対応する要素以外をゼロとした各行列に、前記主成分アイテム因子行列を掛け、各行の総和が大きい方から前記部分集合の数に応じた所定の割合を残して、他の行に対応する当該部分集合の評価値をゼロに更新する削除処理部と、前記初期ユーザ因子行列の各行のうち、前記削除処理部により前記1番目の部分集合の評価値を更新した行の値をゼロに更新した後、前記削除処理部により更新された2番目以降の部分集合を順に用いて、交互最小二乗法により、前記ユーザ因子行列及び前記アイテム因子行列の転置の積と当該部分集合との2次のフロベニウスノルムを最小化する前記アイテム因子行列及び前記ユーザ因子行列を交互に算出する算出処理部と、前記算出処理部により算出された前記ユーザ因子行列及び前記アイテム因子行列の転置の積に対して、列毎に前記平均値を加算した前記補完行列を出力する出力部と、を備える。
前記削除処理部は、ポイゾニング攻撃に用いられる毒データの最小量に基づいて、前記所定の割合を決定してもよい。
本発明に係る推薦方法は、コンピュータが複数ユーザの複数アイテムに対する評価値を要素とする評価行列を入力として、当該評価行列を分解したユーザ因子行列及びアイテム因子行列を掛け合わせることにより、評価値を補完した補完行列を出力する推薦方法であって、前記評価行列の列毎に、観測された各評価値について平均値からの差分で当該評価値を更新する初期処理ステップと、前記観測された各評価値を複数の部分集合にランダムに分割した後、前記評価行列の各要素のうち、1番目の部分集合に対応する要素以外をゼロとした行列を特異値分解し、所定数の左特異ベクトルからなる初期ユーザ因子行列、及び設定された主成分数の右特異ベクトルからなる主成分アイテム因子行列を算出する抽出処理ステップと、前記評価行列の要素のうち、前記複数の部分集合それぞれに対応する要素以外をゼロとした各行列に、前記主成分アイテム因子行列を掛け、各行の総和が大きい方から前記部分集合の数に応じた所定の割合を残して、他の行に対応する当該部分集合の評価値をゼロに更新する削除処理ステップと、前記初期ユーザ因子行列の各行のうち、前記削除処理ステップにおいて前記1番目の部分集合の評価値を更新した行の値をゼロに更新した後、前記削除処理ステップにおいて更新された2番目以降の部分集合を順に用いて、交互最小二乗法により、前記ユーザ因子行列及び前記アイテム因子行列の転置の積と当該部分集合との2次のフロベニウスノルムを最小化する前記アイテム因子行列及び前記ユーザ因子行列を交互に算出する算出処理ステップと、前記算出処理ステップにおいて算出された前記ユーザ因子行列及び前記アイテム因子行列の転置の積に対して、列毎に前記平均値を加算した前記補完行列を出力する出力ステップと、を実行する。
本発明に係る推薦プログラムは、コンピュータに、複数ユーザの複数アイテムに対する評価値を要素とする評価行列を入力として、当該評価行列を分解したユーザ因子行列及びアイテム因子行列を掛け合わせることにより、評価値を補完した補完行列を出力させるための推薦プログラムであって、前記評価行列の列毎に、観測された各評価値について平均値からの差分で当該評価値を更新する初期処理ステップと、前記観測された各評価値を複数の部分集合にランダムに分割した後、前記評価行列の各要素のうち、1番目の部分集合に対応する要素以外をゼロとした行列を特異値分解し、所定数の左特異ベクトルからなる初期ユーザ因子行列、及び設定された主成分数の右特異ベクトルからなる主成分アイテム因子行列を算出する抽出処理ステップと、前記評価行列の要素のうち、前記複数の部分集合それぞれに対応する要素以外をゼロとした各行列に、前記主成分アイテム因子行列を掛け、各行の総和が大きい方から前記部分集合の数に応じた所定の割合を残して、他の行に対応する当該部分集合の評価値をゼロに更新する削除処理ステップと、前記初期ユーザ因子行列の各行のうち、前記削除処理ステップにおいて前記1番目の部分集合の評価値を更新した行の値をゼロに更新した後、前記削除処理ステップにおいて更新された2番目以降の部分集合を順に用いて、交互最小二乗法により、前記ユーザ因子行列及び前記アイテム因子行列の転置の積と当該部分集合との2次のフロベニウスノルムを最小化する前記アイテム因子行列及び前記ユーザ因子行列を交互に算出する算出処理ステップと、前記算出処理ステップにおいて算出された前記ユーザ因子行列及び前記アイテム因子行列の転置の積に対して、列毎に前記平均値を加算した前記補完行列を出力する出力ステップと、を実行させるためのものである。
本発明によれば、ポイゾニング攻撃への耐性を少ない計算量で実現できる。
実施形態に係る推薦装置の機能構成を示す図である。 実施形態に係る推薦装置における補完行列の生成処理を示すフローチャートである。
以下、本発明の実施形態の一例について説明する。
図1は、本実施形態に係る推薦装置1の機能構成を示す図である。
推薦装置1は、サーバ装置又はパーソナルコンピュータ等の情報処理装置(コンピュータ)であり、制御部10、記憶部20、及び各種の入出力デバイスを備える。
制御部10は、推薦装置1の全体を制御する部分であり、記憶部20に記憶された各種プログラムを適宜読み出して実行することにより、本実施形態における機能を実現している。制御部10は、CPUであってよい。
記憶部20は、ハードウェア群を推薦装置1として機能させるための各種プログラム、及び各種データ等の記憶領域であり、ROM、RAM、フラッシュメモリ又はハードディスク(HDD)等であってよい。具体的には、記憶部20は、本実施形態の機能を制御部10に実行させるための推薦プログラムの他、後述の入力データとしての評価行列、出力データとしての補完行列、処理途中に生成される因子行列等の各種データを記憶する。
また、制御部10は、初期処理部11と、抽出処理部12と、削除処理部13と、算出処理部14と、出力部15とを備える。
推薦装置1は、これらの機能部が協働することで、ユーザに対する協調フィルタリングによるアイテム推薦を実現する。すなわち、推薦装置1は、複数ユーザの複数アイテムに対する評価値を要素とする評価行列を入力として、この評価行列を分解したユーザ因子行列及びアイテム因子行列を掛け合わせることにより、評価値を補完した補完行列を出力する。
初期処理部11は、入力された評価行列の列毎に、観測された各評価値について、これらの平均値からの差分で評価値を更新する。
抽出処理部12は、観測された各評価値を複数の部分集合にランダムに分割した後、評価行列の各要素のうち、1番目の部分集合に対応する要素以外をゼロとした行列を特異値分解する。これにより、抽出処理部12は、所定数(k列)の左特異ベクトルからなる初期ユーザ因子行列、及び設定された主成分数(例えば、第3主成分まで)の右特異ベクトルからなる主成分アイテム因子行列を算出する。
削除処理部13は、評価行列の要素のうち、複数の部分集合それぞれに対応する要素以外をゼロとした各行列に、主成分アイテム因子行列を掛け、各行の総和が大きい方から部分集合の数に応じた所定の割合を残して、他の行に対応する部分集合の評価値をゼロに更新する。
このとき、削除処理部13は、想定されるポイゾニング攻撃に用いられる毒データの最小量に基づいて、所定の割合を決定する。
算出処理部14は、まず、初期ユーザ因子行列の各行のうち、削除処理部13により1番目の部分集合の評価値を更新した該当行の値をゼロに更新する。続いて、算出処理部14は、削除処理部13により更新された2番目以降の部分集合を順に用いて、交互最小二乗法により、ユーザ因子行列及びアイテム因子行列の転置の積と部分集合との2次のフロベニウスノルムを最小化するアイテム因子行列及びユーザ因子行列を交互に算出する。
出力部15は、算出処理部14により算出されたユーザ因子行列及びアイテム因子行列の転置の積に対して、列毎に初期処理部11が用いた平均値を加算し、補完行列を算出して出力する。
次に、推薦装置1において補完行列を生成する手順を詳述する。
Mをm人のユーザのn個のアイテムに対する評価行列とする。Mi,jは、評価行列Mのi番目の行(ユーザ)のj番目の列(アイテム)の評価を示す。
Ωを評価行列Mにおいて評価が観測された要素のインデックス集合とする。RΩ(A)は、行列Aが与えられたときに、(i,j)∈ΩであればAi,jを返し、そうでなければ0を返す関数とする。
評価行列Mが与えられたとき、推薦装置1は、RΩ(M−X)の2次のフロベニウスノルムを最小化するkランクのm行n列の補完行列Xを求める。補完行列Xでは、元の評価行列Mで評価が観測されなかった要素において何らかの値が補完されている。
推薦装置1は、これらの補完された値を評価の予測値として利用し、予測値が高いアイテムをユーザに推薦する。
推薦装置1は、評価行列Mの補完行列Xを、交互最小二乗法を応用した以下の手順で求める。
図2は、本実施形態に係る推薦装置1における補完行列の生成処理を示すフローチャートである。
ステップS1において、初期処理部11は、評価行列Mの列毎に、0も含む観測された評価値の平均を求める。uをj列の平均値とし、全ての(i,j)∈Ωに対してMi,j−uを計算し、評価値を列毎に中心化する。
ステップS2において、抽出処理部12は、評価行列Mのインデックス集合Ωを2T+1個の部分集合Ω、・・・、Ω2Tに分割する。ただし、Ωの要素は全てΩ、・・・、Ω2Tのいずれかの部分集合に含まれ、重複はないとする。また、抽出処理部12は、この分割の処理を、集合Ωからランダムに要素を選択して行う。
ステップS3において、抽出処理部12は、RΩ0(M)を特異値分解し、m行m列の左特異ベクトルUとn行n列の右特異ベクトルVとを求める。続いて、抽出処理部12は、Uのk+1列目以降の列を削除し、m行k列のユーザ因子行列U を得る。さらに、抽出処理部12は、右特異ベクトルVのうち、寄与率の高い例えば第3主成分までを採用するように設定された場合、Vの4列目以降を削除し、n行3列のアイテム因子行列V を得る。
なお、V は、RΩ0(M)から導出されるため、未観測の評価値にも0が補完されており、n行3列の全ての要素に値が設定される。
ステップS4において、削除処理部13は、RΩ0(M)・V を計算し、さらに各行の総和を第3主成分までへの貢献度として計算する。そして、削除処理部13は、総和の大きさが(1−r)m/(2T+1)+1番目以降に大きい行の評価値を全て0とみなし、ユーザ因子行列U の該当行の要素を0に更新してU ’とする。ただし、rは、想定されるポイゾニング攻撃の種類に応じて設定される削除したい毒データの割合であり、0<r<1とする。
ステップS5において、算出処理部14は、以下のステップS6〜S9をt=0から始め、t=T−1まで繰り返す。
ステップS6において、算出処理部14は、RΩt+1(M)・V を計算し、さらに各行の総和を第3主成分までへの貢献度として計算する。算出処理部14は、総和が(1−r)m/(2T+1)+1番目以降に大きい行に該当するインテックスをΩt+1から削除し、この操作後に得られるインデックス集合をΩt+1’とする。
ステップS7において、算出処理部14は、インデックス集合Ωt+1’の範囲で、観測された実際の評価値と補完行列の評価値との差分を最適化するために、RΩt+1’(U ’・tr(V)−M)の2次のフロベニウスノルムを最小化するn行k列のアイテム因子行列Vを選択し、これをVt+1 とする。ただし、tr(A)は、Aの転置行列である。
ステップS8において、算出処理部14は、RΩT+t+1(M)・V を計算し、さらに各行の総和を第3主成分までへの貢献度として計算する。算出処理部14は、総和が(1−r)m/(2T+1)+1番目以降に大きい行に該当するインテックスをΩT+t+1から削除し、この操作後に得られるインデック集合をΩT+t+1’とする。
ステップS9において、算出処理部14は、インデックス集合ΩT+t+1’の範囲で、観測された実際の評価値と補完行列の評価値との差分を最適化するために、RΩT+t+1’(U・tr(Vt+1 )−M)の2次のフロベニウスノルムを最小化するm行k列のユーザ因子行列Uを選択し、これをUt+1 ’とする。
ステップS10において、出力部15は、U ’及びV から行列U ’・tr(V )を算出し、さらにステップS1で用いた列毎の平均値を算出した行列の各要素に加算して補完行列Xを生成する。
このように、推薦装置1は、交互最小二乗法を用いてm人のユーザのn個のアイテムに対する評価行列を低ランクのユーザの因子行列とアイテムの因子行列とに分解する際、評価行列をそのままではなく、評価値から各列の平均を引き列毎に評価値を中心化してから特異値分解を行う。これにより得られる右特異ベクトル、すなわちアイテム因子行列の列ベクトルは分散が大きい順に並ぶ。
推薦装置1は、アイテム因子行列のうち、例えば第3主成分より右の4列目以降を削除し、評価行列に右から掛け合わせ、行毎に総和を計算し、総和の大きさが下位のものについては評価行列から該当する行を削除する。4列目以降を削除したアイテム因子行列を評価行列に右から掛け合わせて行の総和を取ることで、因子の重要度を考慮した各ユーザの第1因子から第3因子までの貢献度が得られる。
したがって、推薦装置1は、総和の大きさが下位の行を評価行列から削除することで、分散が小さい因子へ貢献しているユーザを削除できる。毒データは特定の目的をもって作られることから分散が小さいため、この方法により毒データが削除される。
さらに、推薦装置1は、このような毒データに共通な特性を用いているため、異なる種類のポイゾニング攻撃に包括して有効である。
また、推薦装置1は、交互最小二乗法による行列分解において、評価データの集合を複数の部分集合に分解した後、最初の部分集合に対応する評価行列に対して特異値分解を適用し、得られた左特異ベクトルをユーザ因子行列の初期値とする。推薦装置1は、次の部分集合に対してはユーザ因子行列を固定してアイテム因子行列の最適化を図り、その次の部分集合に対してはアイテム因子行列を固定してユーザ因子行列の最適化を図る。そして、推薦装置1は、評価データを分割した部分集合の数だけこの処理を繰り返し、最終的なユーザ因子行列とアイテム因子行列とを得る。
各部分集合には、それぞれ毒データが混入している可能性があるため、推薦装置1は、最初の特異値分解で得られた右特異ベクトルについて4列目以降を削除した状態で保管しておき、他の部分集合に対応する評価行列それぞれに、保管しておいた右特異ベクトルを右から掛け合わせ、行毎の総和を計算し、総和の大きさが下位の評価値を削除する。ここで、部分集合は評価行列からランダムに生成されるため、削除する割合はすべての部分集合で同じとする。これにより、部分集合毎に行列分解を行う必要がないため、計算量が交互最小二乗法における元のオーダと変わらない。
したがって、推薦装置1は、従来、交互最小二乗法による行列分解に加えて主成分分析による計算量を必要としていたところ、評価行列に含まれる毒データを排除する仕組みがなかった交互最小二乗法に対して、主成分分析による対策に相当するアルゴリズムを導入したことで、ポイゾニング攻撃への耐性を少ない計算量で実現できた。
また、推薦装置1は、評価値を削除する量を、既存のポイゾニング攻撃の中で、攻撃を達成するために必要な毒データ数が最も小さいものを基準とする。これにより、想定される既存のポイゾニング攻撃の全てに対応できる。さらに、推薦装置1は、毒データ量の見積もりに従い、必要以上にデータを削除しないため、予測性能が低下しない。
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、前述した実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されるものではない。
推薦装置1による推薦方法は、ソフトウェアにより実現される。ソフトウェアによって実現される場合には、このソフトウェアを構成するプログラムが、情報処理装置(コンピュータ)にインストールされる。また、これらのプログラムは、CD−ROMのようなリムーバブルメディアに記録されてユーザに配布されてもよいし、ネットワークを介してユーザのコンピュータにダウンロードされることにより配布されてもよい。さらに、これらのプログラムは、ダウンロードされることなくネットワークを介したWebサービスとしてユーザのコンピュータに提供されてもよい。
1 推薦装置
10 制御部
11 初期処理部
12 抽出処理部
13 削除処理部
14 算出処理部
15 出力部
20 記憶部

Claims (4)

  1. 複数ユーザの複数アイテムに対する評価値を要素とする評価行列を入力として、当該評価行列を分解したユーザ因子行列及びアイテム因子行列を掛け合わせることにより、評価値を補完した補完行列を出力する推薦装置であって、
    前記評価行列の列毎に、観測された各評価値について平均値からの差分で当該評価値を更新する初期処理部と、
    前記観測された各評価値を複数の部分集合にランダムに分割した後、前記評価行列の各要素のうち、1番目の部分集合に対応する要素以外をゼロとした行列を特異値分解し、所定数の左特異ベクトルからなる初期ユーザ因子行列、及び設定された主成分数の右特異ベクトルからなる主成分アイテム因子行列を算出する抽出処理部と、
    前記評価行列の要素のうち、前記複数の部分集合それぞれに対応する要素以外をゼロとした各行列に、前記主成分アイテム因子行列を掛け、各行の総和が大きい方から前記部分集合の数に応じた所定の割合を残して、他の行に対応する当該部分集合の評価値をゼロに更新する削除処理部と、
    前記初期ユーザ因子行列の各行のうち、前記削除処理部により前記1番目の部分集合の評価値を更新した行の値をゼロに更新した後、前記削除処理部により更新された2番目以降の部分集合を順に用いて、交互最小二乗法により、前記ユーザ因子行列及び前記アイテム因子行列の転置の積と当該部分集合との2次のフロベニウスノルムを最小化する前記アイテム因子行列及び前記ユーザ因子行列を交互に算出する算出処理部と、
    前記算出処理部により算出された前記ユーザ因子行列及び前記アイテム因子行列の転置の積に対して、列毎に前記平均値を加算した前記補完行列を出力する出力部と、を備える推薦装置。
  2. 前記削除処理部は、ポイゾニング攻撃に用いられる毒データの最小量に基づいて、前記所定の割合を決定する請求項1に記載の推薦装置。
  3. コンピュータが複数ユーザの複数アイテムに対する評価値を要素とする評価行列を入力として、当該評価行列を分解したユーザ因子行列及びアイテム因子行列を掛け合わせることにより、評価値を補完した補完行列を出力する推薦方法であって、
    前記評価行列の列毎に、観測された各評価値について平均値からの差分で当該評価値を更新する初期処理ステップと、
    前記観測された各評価値を複数の部分集合にランダムに分割した後、前記評価行列の各要素のうち、1番目の部分集合に対応する要素以外をゼロとした行列を特異値分解し、所定数の左特異ベクトルからなる初期ユーザ因子行列、及び設定された主成分数の右特異ベクトルからなる主成分アイテム因子行列を算出する抽出処理ステップと、
    前記評価行列の要素のうち、前記複数の部分集合それぞれに対応する要素以外をゼロとした各行列に、前記主成分アイテム因子行列を掛け、各行の総和が大きい方から前記部分集合の数に応じた所定の割合を残して、他の行に対応する当該部分集合の評価値をゼロに更新する削除処理ステップと、
    前記初期ユーザ因子行列の各行のうち、前記削除処理ステップにおいて前記1番目の部分集合の評価値を更新した行の値をゼロに更新した後、前記削除処理ステップにおいて更新された2番目以降の部分集合を順に用いて、交互最小二乗法により、前記ユーザ因子行列及び前記アイテム因子行列の転置の積と当該部分集合との2次のフロベニウスノルムを最小化する前記アイテム因子行列及び前記ユーザ因子行列を交互に算出する算出処理ステップと、
    前記算出処理ステップにおいて算出された前記ユーザ因子行列及び前記アイテム因子行列の転置の積に対して、列毎に前記平均値を加算した前記補完行列を出力する出力ステップと、を実行する推薦方法。
  4. コンピュータに、複数ユーザの複数アイテムに対する評価値を要素とする評価行列を入力として、当該評価行列を分解したユーザ因子行列及びアイテム因子行列を掛け合わせることにより、評価値を補完した補完行列を出力させるための推薦プログラムであって、
    前記評価行列の列毎に、観測された各評価値について平均値からの差分で当該評価値を更新する初期処理ステップと、
    前記観測された各評価値を複数の部分集合にランダムに分割した後、前記評価行列の各要素のうち、1番目の部分集合に対応する要素以外をゼロとした行列を特異値分解し、所定数の左特異ベクトルからなる初期ユーザ因子行列、及び設定された主成分数の右特異ベクトルからなる主成分アイテム因子行列を算出する抽出処理ステップと、
    前記評価行列の要素のうち、前記複数の部分集合それぞれに対応する要素以外をゼロとした各行列に、前記主成分アイテム因子行列を掛け、各行の総和が大きい方から前記部分集合の数に応じた所定の割合を残して、他の行に対応する当該部分集合の評価値をゼロに更新する削除処理ステップと、
    前記初期ユーザ因子行列の各行のうち、前記削除処理ステップにおいて前記1番目の部分集合の評価値を更新した行の値をゼロに更新した後、前記削除処理ステップにおいて更新された2番目以降の部分集合を順に用いて、交互最小二乗法により、前記ユーザ因子行列及び前記アイテム因子行列の転置の積と当該部分集合との2次のフロベニウスノルムを最小化する前記アイテム因子行列及び前記ユーザ因子行列を交互に算出する算出処理ステップと、
    前記算出処理ステップにおいて算出された前記ユーザ因子行列及び前記アイテム因子行列の転置の積に対して、列毎に前記平均値を加算した前記補完行列を出力する出力ステップと、を実行させるための推薦プログラム。
JP2017247025A 2017-12-22 2017-12-22 推薦装置、推薦方法及び推薦プログラム Active JP6787876B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017247025A JP6787876B2 (ja) 2017-12-22 2017-12-22 推薦装置、推薦方法及び推薦プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017247025A JP6787876B2 (ja) 2017-12-22 2017-12-22 推薦装置、推薦方法及び推薦プログラム

Publications (2)

Publication Number Publication Date
JP2019114053A true JP2019114053A (ja) 2019-07-11
JP6787876B2 JP6787876B2 (ja) 2020-11-18

Family

ID=67222689

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017247025A Active JP6787876B2 (ja) 2017-12-22 2017-12-22 推薦装置、推薦方法及び推薦プログラム

Country Status (1)

Country Link
JP (1) JP6787876B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112785331A (zh) * 2021-01-07 2021-05-11 之江实验室 一种结合评价文本的抗注入攻击的鲁棒推荐方法和系统
CN112905873A (zh) * 2019-12-03 2021-06-04 京东数字科技控股有限公司 数据处理方法、装置和计算机可读存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112905873A (zh) * 2019-12-03 2021-06-04 京东数字科技控股有限公司 数据处理方法、装置和计算机可读存储介质
CN112785331A (zh) * 2021-01-07 2021-05-11 之江实验室 一种结合评价文本的抗注入攻击的鲁棒推荐方法和系统

Also Published As

Publication number Publication date
JP6787876B2 (ja) 2020-11-18

Similar Documents

Publication Publication Date Title
CN109299728B (zh) 基于构建梯度树模型的样本联合预测方法、系统及介质
McInerney et al. Counterfactual evaluation of slate recommendations with sequential reward interactions
US10140342B2 (en) Similarity calculation system, method of calculating similarity, and program
CN112818290B (zh) 多方联合确定隐私数据中对象特征相关性的方法及装置
US10678765B2 (en) Similarity calculation system, method of calculating similarity, and program
CN110837603B (zh) 一种基于差分隐私保护的集成推荐方法
JP2019114053A (ja) 推薦装置、推薦方法及び推薦プログラム
CN114611128A (zh) 一种纵向联邦学习方法、装置、系统、设备及存储介质
CN111241381A (zh) 信息推荐方法、装置、电子设备及计算机可读存储介质
Yang et al. Local matrix approximation based on graph random walk
US10579752B2 (en) Generating a model based on input
Wang et al. QPIN: a quantum-inspired preference interactive network for E-commerce recommendation
US20170302437A1 (en) Nondecreasing sequence determining device, method and program
JP2018055057A (ja) データ撹乱装置、方法及びプログラム
KR101630642B1 (ko) 사용자 맞춤형 항목 추천 방법 및 장치
Thirunavukarasu et al. People to people recommendation using coupled nonnegative boolean matrix factorization
Diop et al. Binary Matrix Factorization applied to Netflix dataset analysis
Chen et al. Using nonregular designs to generate space-filling designs
US20210357955A1 (en) User search category predictor
JP7017528B2 (ja) 学習装置、学習方法及び学習プログラム
JP2020017101A (ja) 匿名化装置、匿名化方法及び匿名化プログラム
US20190266216A1 (en) Distributed processing of a large matrix data set
JP6474741B2 (ja) 秘匿決定木計算システム、装置、方法及びプログラム
JP5632506B1 (ja) 情報推薦装置、情報推薦方法及び情報推薦プログラム
CN108295475B (zh) 一种数据处理方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200108

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: 20201027

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201029

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201030

R150 Certificate of patent or registration of utility model

Ref document number: 6787876

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150