JP6566515B2 - Item recommendation system and item recommendation method - Google Patents

Item recommendation system and item recommendation method Download PDF

Info

Publication number
JP6566515B2
JP6566515B2 JP2015147269A JP2015147269A JP6566515B2 JP 6566515 B2 JP6566515 B2 JP 6566515B2 JP 2015147269 A JP2015147269 A JP 2015147269A JP 2015147269 A JP2015147269 A JP 2015147269A JP 6566515 B2 JP6566515 B2 JP 6566515B2
Authority
JP
Japan
Prior art keywords
similarity
item
evaluation value
user
hub
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
JP2015147269A
Other languages
Japanese (ja)
Other versions
JP2017027480A (en
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.)
Inter University Research Institute Corp Research Organization of Information and Systems
Original Assignee
Inter University Research Institute Corp Research Organization of Information and Systems
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 Inter University Research Institute Corp Research Organization of Information and Systems filed Critical Inter University Research Institute Corp Research Organization of Information and Systems
Priority to JP2015147269A priority Critical patent/JP6566515B2/en
Publication of JP2017027480A publication Critical patent/JP2017027480A/en
Application granted granted Critical
Publication of JP6566515B2 publication Critical patent/JP6566515B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明はアイテム推薦システム及びアイテム推薦方法に関する。詳しくは、ユーザベースあるいはアイテムベースに代表される協調フィルタリング(CF)において、シリングアタック、すなわち、システムがユーザに推薦するアイテムを決定する工程に介入するために偽ユーザを不正投入する攻撃に対して、頑健なアイテム推薦システム及びアイテム推薦方法に関する。   The present invention relates to an item recommendation system and an item recommendation method. Specifically, in collaborative filtering (CF) typified by a user base or item base, against a shilling attack, that is, an attack that illegally inputs a fake user to intervene in the process of determining an item recommended to the user by the system The present invention relates to a robust item recommendation system and item recommendation method.

ユーザベースのCFは、類似度演算に例えばk近傍法を用い、アイテムに対する嗜好が類似する他のユーザの過去の評価値を参照してアイテムをユーザに推薦するシステムである。すなわち、アイテムに対する評価値の与え方が類似する他のユーザk人を選んで、アイテムに係る評価値を予測し、高い評価値が得られたアイテムをユーザに推薦する。
しかしながら、例えばアイテムが商品で、評価値が嗜好度の場合、平均的な嗜好度を有するように設計された偽ユーザがユーザベースのCFシステムに投入される(アベレジアタックと呼ばれるシリングアタック)と、偽ユーザはどのユーザとも高い類似度を示すハブユーザ、すなわち、インフルエンサとなるため、偽ユーザの嗜好する商品が何時も推薦されるようになるおそれがある。
アイテムベースのCF、すなわち、類似する他のアイテムに対するユーザの過去の評価を参照してユーザに推薦するアイテムを決める推薦システム及び推薦方法に対しては、セグメントアタックあるいはポピュラーアタックと呼ばれるシリングアタックが効果を持つ。
The user-based CF is a system that recommends an item to a user by using, for example, a k-nearest neighbor method for similarity calculation and referring to past evaluation values of other users with similar preferences for the item. In other words, k other users who are similar in how to give an evaluation value to an item are selected, an evaluation value related to the item is predicted, and an item with a high evaluation value is recommended to the user.
However, for example, when the item is a product and the evaluation value is a preference level, a fake user designed to have an average preference level is inserted into a user-based CF system (shilling attack called average attack). Since the fake user becomes a hub user that shows a high degree of similarity with any user, that is, an influencer, there is a possibility that a product that the fake user likes is always recommended.
A shilling attack called segment attack or popular attack is effective for item-based CF, that is, a recommendation system and a recommendation method for determining an item to be recommended to a user by referring to the user's past evaluation of other similar items. have.

他方、発明者達は、k近傍法でハブを軽減する方法を提案した。すなわち、大規模高次元データセットに対して類似度尺度にラプラシアンベースのカーネルを適用する方法(非特許文献1参照)、センタリングを適用する方法(非特許文献2参照)、及び、局在的センタリングを適用する方法(非特許文献3参照)を提案した。
これらのハブを軽減する方法をユーザベースのCFあるいはアイテムベースのCFに適用することにより、ターゲットアイテムの評価を不正に高めるために攻撃者により偽ユーザが投入されたとしても、ターゲットアイテムの評価が変動しないようにするアイテム推薦システム及びアイテム推薦方法を提供できると期待される。
On the other hand, the inventors have proposed a method of reducing the hub by the k-nearest neighbor method. That is, a method of applying a Laplacian-based kernel to a similarity measure for a large-scale high-dimensional data set (see Non-Patent Document 1), a method of applying centering (see Non-Patent Document 2), and local centering Has proposed a method (see Non-Patent Document 3).
By applying these hub mitigation methods to user-based CF or item-based CF, even if a fake user is introduced by an attacker to illegally increase the evaluation of the target item, the evaluation of the target item It is expected that an item recommendation system and an item recommendation method that prevent fluctuations can be provided.

Ikumi Suzuki,Kazuo Hara,Masashi Shimbo,Yuji Matsumoto,Marco Saerens,「Investigating the Effectiveness of Laplacian−based Kernels in Hub Reduction」、In Proc.26th AAAI Conference on Artificial Intelligence、pp.1112−1118、2012年“Ikumi Suzuki, Kazuo Hara, Masashi Shimbo, Yuji Matsumoto, Marco Saerens,“ Investigating the Effect of Produced-Lanced Intensive In Kern. ” 26th AAAI Conference on Artificial Intelligence, pp. 1112-1118, 2012 鈴木郁美、原一夫、新保仁「k近傍法でハブを軽減する類似度尺度」、情報処理学会研究報告、自然言語処理研究会、2012−NL−209、No.11、pp.1−8、2012年Satomi Suzuki, Kazuo Hara, Hitoshi Shinho, “Similarity Measure to Reduce Hubs with k-Nearest Method”, Information Processing Society of Japan Research Report, Natural Language Processing Study Group, 2012-NL-209, No. 11, pp. 1-8, 2012 Kazuo Hara,Ikumi Suzuki,Masashi Shimbo,Kei Kobayashi,Kenji Fukumizu,Milos Radovanovic,「Localized Centering:Reducing Hubness in Large−Sample Data」、In Proc.29th AAAI Conference on Artificial Intelligence、pp.2645−2651、2015年Kazuo Hara, Ikumi Suzuki, Masashi Shimbo, Kei Kobayashi, Kenji Fukumizu, Milos Radovanovic, “Localized Centering: Reducating HubLense. 29th AAAI Conference on Artificial Intelligence, pp. 2645-2651, 2015

ユーザベースのCFは、アベレジアタックと呼ばれる攻撃、すなわち、どのユーザとも高い類似度を示す多数の偽ユーザを投入する攻撃を受けると、偽ユーザの嗜好する商品が何時も推薦されるようになるおそれがある。
また、アイテムベースのCFは、セグメントアタックあるいはポピュラーアタックと呼ばれる攻撃、すなわち、ある特定のトピック(例えば、アクション映画、ホラー映画などのトピック)において、ポピュラーなアイテムと高い類似度をターゲットアイテムに持たせるために、ターゲットアイテムとポピュラーアイテムの両方に高い評価値を与える偽ユーザを多数投入する攻撃を受けると、当該トピックに属するアイテムを好むユーザに対して、ターゲットアイテムが推薦され易くなる。
上記のような推薦は不自然であり、推薦システムの本来の機能を阻害するという問題があった。
When a user-based CF receives an attack called average attack, that is, an attack in which a large number of fake users showing high similarity with any user are injected, the product preferred by the fake user may be recommended at any time. There is.
In addition, the item-based CF has an attack called a segment attack or a popular attack, that is, a target item having a high degree of similarity to a popular item in a specific topic (for example, a topic such as an action movie or a horror movie). For this reason, when an attack is performed in which a large number of fake users who give high evaluation values to both the target item and the popular item are input, the target item is easily recommended to a user who likes an item belonging to the topic.
The recommendation as described above is unnatural and has a problem of hindering the original function of the recommendation system.

本発明は、ハブの出現が抑制された類似度尺度を用いる、あるいは、与えられた類似度尺度をハブが出現しにくくなるように変換して用いることにより、インフルエンサとなるユーザ、あるいは、インフルエンサとなるアイテムの出現を抑制し、これらの影響力を低減することによって、結果的に攻撃者の意図通りにターゲットアイテムの評価値を変更されることがないようにする。
本発明は、偽ユーザを投入する攻撃を受けても、結果として攻撃の影響を受けることが少ない、アイテム推薦システム及びアイテム推薦方法を提供することを目的とする。
The present invention uses a similarity measure in which the appearance of a hub is suppressed, or converts a given similarity measure so that the hub is less likely to appear. By suppressing the appearance of items serving as sensors and reducing their influence, the evaluation value of the target item is not changed as intended by the attacker.
An object of the present invention is to provide an item recommendation system and an item recommendation method that are less affected by an attack as a result even when subjected to an attack that introduces a fake user.

上記課題を解決するために、本発明の第1の態様に係るアイテム推薦システム1は、例えば図5に示すように、ユーザuのアイテムiに係る評価値R(u,i)を記入する評価マトリックスRを記憶する評価マトリックス記憶部21と、ハブの出現を抑制する類似度尺度を用いてユーザ間の類似度を演算する第1の類似度演算部131と、第1の類似度演算部131にて演算された類似度を用いて、対象ユーザとの類似度の高い方からk人のユーザを抽出する第1の近傍データ抽出部141と、第1の近傍データ抽出部141にて抽出されたk人のユーザのアイテムに係る評価値を用いて、対象ユーザに係る未記入のセルに記入すべき評価値を予測する第1の評価値予測部151と、第1の評価値予測部151にて予測された評価値の高いアイテムから対象ユーザに推薦すべきアイテムを抽出して、対象ユーザに推薦するアイテム推薦部16とを備える。   In order to solve the above-described problem, the item recommendation system 1 according to the first aspect of the present invention is an evaluation in which an evaluation value R (u, i) related to an item i of the user u is entered as shown in FIG. An evaluation matrix storage unit 21 that stores the matrix R, a first similarity calculation unit 131 that calculates similarity between users using a similarity measure that suppresses the appearance of a hub, and a first similarity calculation unit 131 Are extracted by the first neighborhood data extraction unit 141 and the first neighborhood data extraction unit 141 that extract k users from the ones with higher similarity to the target user, using the similarity degree calculated in (1). A first evaluation value predicting unit 151 that predicts an evaluation value to be entered in an unfilled cell related to the target user using an evaluation value related to the items of k users, and a first evaluation value predicting unit 151 A high evaluation value predicted by It extracts an item to be recommended to the target user from Temu, and a item recommendation unit 16 to be recommended to the target user.

ここにおいて、アイテムは典型的には商品又はサービスである。さらに、商品又はサービスの種類、提供時期、提供地方、価格帯を限定する(夏季果物、X月公開映画等)等の条件を定めても良い。ただし、商品又はサービスに限定されず、評価可能であれば動植物、山河、都市、建築、絵画、音楽、演劇、武道、学問、生産性、効果でも良い。
また、マトリックスRは典型的にはユーザ数×アイテム数の評価マトリックスである。評価値R(u,i)として、典型的にはユーザuのアイテムiに係る嗜好度が使用される。ただし、嗜好度に限られず、定量的に評価可能であれば良い。例えば、健康への寄与度でも、不動産の価値でも、目的地への所要時間でも良い。また、定量的な評価はランク、レベルで表現するものでも良い。
Here, the item is typically a product or service. Furthermore, conditions such as limiting the type of product or service, the provision period, the provision region, and the price range (summer fruits, movies released in X month, etc.) may be defined. However, it is not limited to goods or services, and may be animals and plants, mountains, cities, architecture, paintings, music, theater, martial arts, academics, productivity, and effects as long as they can be evaluated.
The matrix R is typically an evaluation matrix of the number of users × the number of items. As the evaluation value R (u, i), typically, the preference degree related to the item i of the user u is used. However, it is not limited to the degree of preference, and it is sufficient if it can be quantitatively evaluated. For example, the degree of contribution to health, the value of real estate, or the time required for the destination may be used. Further, quantitative evaluation may be expressed by rank and level.

また、類似度尺度とは、2つのデータの類似性を測る尺度として使用できるものすべてを含む。典型的には、内積、コサイン、ピアソン相関、距離が使用される。内積は2つのベクトルデータのスカラー積であり、コサインは長さ1に規格化されたベクトルデータの内積である。ピアソン相関は要素和がゼロになるように各要素値から要素和を差し引いた後に長さ1に規格化されたベクトルデータの内積である。さらに、内積の一般化とみなせる(機械学習分野で主に呼ばれるところの各種の)カーネルも含む。距離の典型は、2つのベクトルデータ間のユークリッド距離(L2ノルム)であるが、ユークリッド距離を一般化した距離(マンハッタン距離やLpノルムなど)も含む。さらに、ドメインの知識を持つ人間が各タスクの目的に応じて適宜定めた類似度スコア計算方法(BLASTなど)が出力する類似度も、ここでの類似度尺度に含まれる。これらを一般的な類似度尺度ということとする。   The similarity measure includes all those that can be used as a measure for measuring the similarity between two data. Typically, dot product, cosine, Pearson correlation, distance are used. The inner product is a scalar product of two vector data, and the cosine is an inner product of vector data normalized to length 1. The Pearson correlation is an inner product of vector data normalized to length 1 after subtracting the element sum from each element value so that the element sum becomes zero. It also includes kernels (various that are mainly called in the field of machine learning) that can be regarded as generalizations of inner products. A typical distance is the Euclidean distance (L2 norm) between two vector data, but also includes a generalized distance (Manhattan distance, Lp norm, etc.). Further, the similarity level output by a similarity score calculation method (BLAST or the like) appropriately determined by a person having domain knowledge according to the purpose of each task is also included in the similarity scale here. These are called general similarity measures.

また、ハブの出現を抑制する類似度尺度として、例えば全てのデータ対象がデータ中心に同等に類似になるように変換された類似度尺度、すなわちSpatial Centralityのない類似度尺度が該当する。例えば、上記一般的な類似度尺度に対して、原点をデータセットの平均(グローバルセントロイド)に移動する「(グローバル)センタリング」を適用して変換したもの、原点をローカルな部分集合の中心としてのローカルセントロイドに移動する「局在的センタリング」を適用して変換したものが挙げられる。さらに、ラプラシアンベースのカーネル、たとえば「コミュートタイムカーネル」(Marco Saerens,Francois Fouss,Luh Yen,and Pierre Dupont.「The principal components analysis of graph,and its relationships to spectral clustering」、In Proc. 15th European Conference on Machine Learning(ECML),pp.371−383、2004年)を適用して変換したものが該当する。
また、ハブの出現を抑制する類似度尺度として、全てのデータ対象がデータ中心に同等に類似になるように変換された類似度尺度以外にも、ミューチュアルプロキシミティ、ローカルスケーリング等が挙げられる。
In addition, as a similarity measure that suppresses the appearance of the hub, for example, a similarity measure that is converted so that all data objects are equally similar to the data center, that is, a similarity measure that does not have Spatial Centrality is applicable. For example, for the above general similarity measure, transformed by applying “(global) centering” that moves the origin to the average (global centroid) of the data set, with the origin as the center of the local subset And applying “local centering” that moves to the local centroid. In addition, Laplacian-based kernels, such as “commuted time kernels” (Marco Saerens, Francois Focuses, Luh Yen, and Pierre du ce nt and sir ent es s s s s s s s and s i s e s s s s s s s e s s s s s e s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s This corresponds to the one converted by applying Machine Learning (ECML), pp. 371-383 (2004).
In addition to the similarity measure that is converted so that all data objects are equally similar to the data center, there are mutual proximity, local scaling, and the like as the similarity measure that suppresses the appearance of the hub.

また、「ユーザとの類似度の高い方からk人のユーザを抽出する」とは、典型的にはk近傍法を使用して抽出することをいう。kとして任意の数値が可能であるが、たとえば、ムービーレンズデータセットでは、教師あり学習の結果、予測精度を高くするには、30<=k<=100が好ましく、40<=k<=70がより好ましく、k=50が最も好ましい(図7参照)。
また、評価値を予測する際に、k人の平均値を使用できる。さらに、平均値を用いる際に、後述のように重み付けした平均値を用いると好ましい。重み付けには例えばユーザ間の類似度、季節による係数(果物の品質は季節に影響を受ける)等を使用できる。
In addition, “extracting k users from those with a high degree of similarity to users” typically means extraction using the k-nearest neighbor method. An arbitrary numerical value can be used as k. For example, in a movie lens data set, 30 <= k <= 100 is preferable and 40 <= k <= 70 in order to increase prediction accuracy as a result of supervised learning. Is more preferable, and k = 50 is most preferable (see FIG. 7).
Moreover, when predicting an evaluation value, an average value of k people can be used. Furthermore, when using the average value, it is preferable to use a weighted average value as described later. For weighting, for example, a similarity between users, a coefficient depending on the season (the quality of the fruit is influenced by the season), and the like can be used.

ユーザベースのCFは、最近傍のk人(k近傍法(kNN)により抽出された最も近い方、及び類似度が高い方からk個のデータ)のユーザの過去の評価値を参照して未評価アイテムに対するユーザの評価値を予測する形態の推薦システムである。ユーザベースのCFの想定可能な欠点は、シリングアタックへの脆弱性である。シリングアタックは、システムに攻撃者によるバイアスのかかった(恣意的な)推薦を強制させるために、偽ユーザを推薦システムに投入する。ユーザベースのCFは、アイテムの特徴に基づく推薦を行わず、アイテムに対する他のユーザの過去の評価値に基づいて推薦を行う。このため、ユーザベースのCFは、どのユーザとも似るように偽ユーザを設計し、これを投入してシステムによる推薦アイテムの決定を変えさせようとする攻撃に対して、脆弱性を持つ。   The user-based CF is not yet referred to the past evaluation values of the k nearest users (k data from the closest one extracted by the k-nearest neighbor method (kNN) and the data having the highest similarity). It is the recommendation system of the form which estimates the user's evaluation value with respect to an evaluation item. A possible drawback of user-based CF is vulnerability to shilling attacks. Shilling attacks throw fake users into the recommendation system to force the system to make biased (arbitrary) recommendations by attackers. The user-based CF does not make a recommendation based on the feature of the item, but makes a recommendation based on a past evaluation value of another user for the item. For this reason, the user-based CF is vulnerable to an attack that attempts to change the decision of the recommended item by the system by designing a fake user to be similar to any user.

他方、高次元データセットには、いわゆる「次元の呪い」の結果として、ハブデータが出現し易いことが見出された(Milos Radovanovic, Alexandros Nanopoulos, Nirjana Ivanovic.「Hubs in Space: Popular Nearest Neighbors in High-Dimensional Data」、Journal of Machine Learning Research, pp. 2487−2531, 2010年)。すなわち、高次元ではハブと呼ばれる少数のデータが他のデータのkNNに頻繁に現れる。ユーザベースのCFシステムにおいて、kNNが計算される時、各々のユーザはアイテム数の次元を持つベクトルとして表されるが、アイテムは一般に数多く存在するため、ベクトルは高次元ベクトルとなる。したがって、ハブとなるデータ(ハブデータ)が出現する。ハブユーザは推薦工程にインフルエンサとして寄与するので、推薦システムによる推薦アイテムの決定に大きな影響を与える。
シリングアタックは、ハブを利用する攻撃と見て取れる。ユーザベースのCFに対する攻撃では、システムによる推薦アイテムの決定を意図的にコントロールすることを目的とし、インフルエンサ、すなわち、ハブとなる偽ユーザを投入する。具体的には、偽ユーザをユーザに関するデータ中心に類似するように設計し、投入する。
On the other hand, it was found that hub data is likely to appear in high-dimensional data sets as a result of so-called “curse of dimension” (Milos Radovanovic, Alexandros Nanopoulos, Nirjana Ivanovic. High-Dimensional Data ", Journal of Machine Learning Research, pp. 2487-2531, 2010). That is, in a high dimension, a small number of data called hubs frequently appear in the kNN of other data. In a user-based CF system, when kNN is calculated, each user is represented as a vector having a dimension of the number of items, but since there are generally many items, the vector is a high-dimensional vector. Therefore, data that serves as a hub (hub data) appears. Since the hub user contributes to the recommendation process as an influencer, it greatly affects the determination of recommended items by the recommendation system.
A shilling attack can be seen as an attack using a hub. In the attack on the user-based CF, an influencer, that is, a fake user serving as a hub is introduced for the purpose of intentionally controlling the determination of recommended items by the system. Specifically, a fake user is designed and put in a manner similar to the data center related to the user.

そこで、攻撃の影響を回避するために、kNNを求めるために使用される類似度尺度を全てのユーザがデータ中心に同等に類似するように変換することによって、ハブユーザ、すなわち、インフルエンサの出現自体を抑制し、偽ユーザをインフルエンサとしてシステムに送り込む攻撃者の企てを無効化することを提案する。ハブの出現を抑制する方法はいくつか提案されているが、たとえば、与えられた類似度マトリックスからコミュートタイムカーネルを計算することによって、又はより簡易に類似度マトリックスをセンタリングすることによって達成できる。ムービーレンズデータセットを用いて、かかる方法適用後に、偽ユーザがハブユーザと成りにくくなる傾向の存在を確認した(図8及び図9参照)。結果として、かかる類似度尺度の変換は、アイテム推薦の精度を劣化させることなく(図7参照)、攻撃に対して耐性の有るシステムを提供する。   Therefore, in order to avoid the impact of the attack, the similarity measure used to determine kNN is transformed so that all users are equally similar to the data center, so that the appearance of the hub user, ie the influencer itself We propose to disable attackers' attempts to send fake users to the system as influencers. Several methods for suppressing the appearance of hubs have been proposed, but can be achieved, for example, by calculating a commute time kernel from a given similarity matrix, or more simply by centering the similarity matrix. Using a movie lens data set, it was confirmed that a fake user tends not to be a hub user after applying this method (see FIGS. 8 and 9). As a result, such similarity scale conversion provides a system that is resistant to attack without degrading the accuracy of item recommendation (see FIG. 7).

本態様のように構成すると、ハブの出現を抑制する類似度尺度を使用して類似度を演算するのでハブの出現を抑制でき、偽ユーザを投入する攻撃を受けても、結果として攻撃の影響を受けることが少ないアイテム推薦システムを提供することができる。   When configured in this manner, the similarity is calculated using a similarity scale that suppresses the appearance of the hub, so the appearance of the hub can be suppressed. It is possible to provide an item recommendation system that is rarely received.

上記課題を解決するために、本発明の第2の態様に係るアイテム推薦システム1は、例えば図5に示すように、ユーザuのアイテムiに係る評価値R(u,i)を記入する評価マトリックスRを記憶する評価マトリックス記憶部21と、ハブの出現を抑制する類似度尺度を用いてアイテム間の類似度を演算する第2の類似度演算部132と、第2の類似度演算部132にて演算された類似度を用いて、対象アイテムとの類似度の高い方からk個のアイテムを抽出する第2の近傍データ抽出部142と、第2の近傍データ抽出部142にて抽出されたk個のアイテムに係る対象ユーザの評価値を用いて、対象ユーザに係る未記入のセルに記入すべき評価値を予測する第2の評価値予測部152と、第2の評価値予測部152にて予測された評価値の高いアイテムから対象ユーザに推薦すべきアイテムを抽出して、対象ユーザに推薦するアイテム推薦部16を備える。   In order to solve the above-mentioned problem, the item recommendation system 1 according to the second aspect of the present invention is an evaluation in which an evaluation value R (u, i) related to an item i of a user u is entered, as shown in FIG. An evaluation matrix storage unit 21 that stores the matrix R, a second similarity calculation unit 132 that calculates the similarity between items using a similarity measure that suppresses the appearance of a hub, and a second similarity calculation unit 132 Are extracted by the second neighborhood data extraction unit 142 that extracts k items from the one with the higher similarity to the target item, and the second neighborhood data extraction unit 142 using the similarity calculated in A second evaluation value predicting unit 152 that predicts an evaluation value to be entered in an unfilled cell related to the target user using the evaluation values of the target user related to the k items, and a second evaluation value predicting unit Evaluation predicted at 152 Extracts an item to be recommended to the target user from the highest item comprises an item recommendation unit 16 to be recommended to the target user.

第1の態様では、ユーザ間の類似度に基づいて評価値を求めたが、本態様ではアイテム間の類似度に基づいて評価値を求める。第1の態様では、k人の平均値を使用したが、本態様ではk個のアイテムの平均値を用いる。しかし、その他のシステム構成は第1の態様と同様であり、第1の態様と同様に、ハブの出現を低減できるので、偽ユーザが投入されても、結果として推薦アイテムの決定が偽ユーザの投入に影響されにくい、すなわち、攻撃に対して頑健なアイテム推薦システムを提供することができる。
このように構成すると、ハブの出現を抑制する類似度尺度を使用するので、偽ユーザを投入する攻撃を受けても、結果として攻撃の影響を受けることが少ないアイテム推薦システムを提供することができる。
In the first aspect, the evaluation value is obtained based on the similarity between users, but in this aspect, the evaluation value is obtained based on the similarity between items. In the first aspect, an average value of k people is used, but in this aspect, an average value of k items is used. However, other system configurations are the same as in the first aspect, and as in the first aspect, the appearance of a hub can be reduced. Therefore, even if a fake user is entered, the recommended item is determined as a result of the fake user. It is possible to provide an item recommendation system that is not easily affected by input, that is, robust against attacks.
With this configuration, since the similarity measure that suppresses the appearance of the hub is used, it is possible to provide an item recommendation system that is less affected by an attack even when subjected to an attack that introduces a fake user. .

また、本発明の第3の態様に係るアイテム推薦システム1は、第1又は第2の態様において、ハブの出現を抑制する類似度尺度を記憶する類似度尺度記憶部22を備える。
このように構成すると、システムに記憶されたハブの出現を抑制する類似度尺度を使用して類似度を演算するのでハブの出現を抑制でき、アイテム推薦時に偽ユーザによる影響を少なくすることができる。
In addition, the item recommendation system 1 according to the third aspect of the present invention includes a similarity measure storage unit 22 that stores a similarity measure that suppresses the appearance of a hub in the first or second aspect.
If comprised in this way, since similarity is calculated using the similarity scale which suppresses the appearance of the hub memorize | stored in the system, the appearance of a hub can be suppressed and the influence by a fake user at the time of item recommendation can be reduced. .

また、本発明の第4の態様に係るアイテム推薦システムは、第3の態様において、一般的な類似度尺度に基づく類似度を前記ハブの出現を抑制する類似度尺度に基づく類似度に変換する類似度尺度変換部135を備える。
ここにおいて、類似度の変換には、例えば一般的な類似度尺度の式をハブの出現を抑制する類似度尺度の式に変換して類似度を求める方法、一般的な類似度尺度で求めた類似度を行列によりハブの出現を抑制する類似度尺度に基づく類似度に変換する方法等が使用される。
このように構成すると、一般的な類似度尺度をハブの出現を抑制する類似度尺度に変換して使用することによりハブの出現を抑制でき、アイテム推薦時に偽ユーザによる影響を少なくすることができる。
The item recommendation system according to the fourth aspect of the present invention converts the similarity based on a general similarity scale into a similarity based on a similarity scale that suppresses the appearance of the hub in the third aspect. A similarity scale conversion unit 135 is provided.
Here, for similarity conversion, for example, a general similarity scale formula is converted to a similarity scale formula that suppresses the appearance of the hub, and the similarity is calculated, or the general similarity scale is used. A method of converting the similarity into a similarity based on a similarity measure that suppresses the appearance of a hub by a matrix is used.
If comprised in this way, the appearance of a hub can be suppressed by converting and using a general similarity scale to the similarity scale which suppresses the appearance of a hub, and the influence by a fake user at the time of item recommendation can be reduced. .

また、本発明の第5の態様に係るアイテム推薦システムは、第1ないし第4のいずれかの態様において、対象ユーザに係る未記入のセルに記入すべき評価値を予測するに際し、記入すべき評価値として、重み付けをした平均値を用いる。
ここにおいて、重み付けには例えばユーザ間あるいはアイテム間の類似度、季節による係数(果物の品質は季節に影響を受ける)等を使用できる。本態様のように構成すると予測精度を向上できる。
The item recommendation system according to the fifth aspect of the present invention should be filled in when predicting an evaluation value to be written in an unfilled cell related to the target user in any of the first to fourth aspects. A weighted average value is used as the evaluation value.
Here, for example, similarity between users or items, a coefficient by season (the quality of the fruit is influenced by the season), and the like can be used for weighting. When configured as in this aspect, prediction accuracy can be improved.

上記課題を解決するために、本発明の第6の態様に係るアイテム推薦方法は、例えば図6(a)に示すように、ユーザuのアイテムiに係る評価値R(u,i)を記入する評価マトリックスRを記憶する評価マトリックス記憶工程(S104)と,ハブの出現を抑制する類似度尺度を用いてユーザ間の類似度を演算する第1の類似度演算工程(S107)と,第1の類似度演算工程(S107)にて演算された類似度を用いて、対象ユーザとの類似度の高い方からk人のユーザを抽出する第1の近傍データ抽出工程(S108)と、第1の近傍データ抽出工程(S108)にて抽出されたk人のユーザのアイテムに係る評価値を用いて、対象ユーザに係る未記入のセルに記入すべき評価値を予測する第1の評価値予測工程(S109)と、第1の評価値予測工程(S109)にて予測された評価値の高いアイテムから対象ユーザに推薦すべきアイテムを抽出して、対象ユーザに推薦するアイテム推薦工程(S110)とを備える。   In order to solve the above-described problem, the item recommendation method according to the sixth aspect of the present invention fills in an evaluation value R (u, i) related to the item i of the user u as shown in FIG. An evaluation matrix storage step (S104) for storing an evaluation matrix R to be performed, a first similarity calculation step (S107) for calculating a similarity between users using a similarity measure for suppressing the appearance of a hub, a first A first neighborhood data extraction step (S108) for extracting k users from those having a higher similarity to the target user using the similarity calculated in the similarity calculation step (S107) of the first, First evaluation value prediction that predicts an evaluation value to be entered in an unfilled cell of the target user using the evaluation value of the k users' items extracted in the neighborhood data extraction step (S108) Step (S109) From high prediction evaluation value item in the evaluation value prediction step (S109) extracting the item to be recommended to the target user of, and a item recommendation process to be recommended to the target user (S110).

本態様は第1の態様に係るアイテム推薦システムに対応するアイテム推薦方法である。
本態様のように構成すると、ハブユーザの出現を低減できるので、偽ユーザを投入する攻撃を受けても、結果として攻撃の影響を受けることが少ないアイテム推薦方法を提供することができる。
This aspect is an item recommendation method corresponding to the item recommendation system according to the first aspect.
By configuring as in this aspect, it is possible to reduce the appearance of hub users, and thus it is possible to provide an item recommendation method that is less affected by an attack as a result even when subjected to an attack that introduces a fake user.

上記課題を解決するために、本発明の第7の態様に係るアイテム推薦方法は、例えば図6(b)に示すように、ユーザuのアイテムiに係る評価値R(u,i)を記入する評価マトリックスRを記憶する評価マトリックス記憶工程(S104)と,ハブの出現を抑制する類似度尺度を用いてアイテム間の類似度を演算する第2の類似度演算工程(S207)と,第2の類似度演算工程(S207)にて演算された類似度を用いて、対象アイテムとの類似度の高い方からk個のアイテムを抽出する第2の近傍データ抽出工程(S208)と、第2の近傍データ抽出工程(S208)にて抽出されたk個のアイテムに係る対象ユーザの評価値を用いて、対象ユーザに係る未記入のセルに記入すべき評価値を予測する第2の評価値予測工程(S209)と、第2の評価値予測工程(S209)にて予測された評価値の高いアイテムから対象ユーザに推薦すべきアイテムを抽出して、対象ユーザに推薦するアイテム推薦工程(S110)とを備える。   In order to solve the above-described problem, the item recommendation method according to the seventh aspect of the present invention fills in the evaluation value R (u, i) related to the item i of the user u as shown in FIG. An evaluation matrix storage step (S104) for storing an evaluation matrix R to be performed, a second similarity calculation step (S207) for calculating a similarity between items using a similarity measure that suppresses the appearance of a hub, and a second A second neighborhood data extraction step (S208) for extracting k items from the higher similarity to the target item using the similarity calculated in the similarity calculation step (S207) of the second, A second evaluation value for predicting an evaluation value to be entered in an unfilled cell relating to the target user, using the evaluation value of the target user relating to the k items extracted in the neighborhood data extraction step (S208) Prediction process (S20 And an item recommendation step (S110) for extracting an item to be recommended to the target user from the items having a high evaluation value predicted in the second evaluation value prediction step (S209) and recommending it to the target user. .

本態様は第2の態様に係るアイテム推薦システムに対応するアイテム推薦方法である。
本態様のように構成すると、ハブアイテムの出現を低減できるので、偽ユーザを投入する攻撃を受けても、結果として攻撃の影響を受けることが少ないアイテム推薦方法を提供することができる。
This aspect is an item recommendation method corresponding to the item recommendation system according to the second aspect.
By configuring as in this aspect, it is possible to reduce the appearance of hub items, and thus it is possible to provide an item recommendation method that is less affected by an attack as a result even when subjected to an attack that introduces a fake user.

また、本発明の第8の態様に係るアイテム推薦システムは、第6又は第7の態様において、一般的な類似度尺度に基づく類似度をハブの出現を抑制する類似度尺度に基づく類似度に変換する類似度尺度変換工程(S106)を備える。
このように構成すると、一般的な類似度尺度に基づく類似度をハブの出現を抑制する類似度尺度に基づく類似度に変換して使用することによりハブの出現を抑制でき、アイテム推薦時に偽ユーザによる影響を少なくすることができる。
The item recommendation system according to the eighth aspect of the present invention is the sixth or seventh aspect, wherein the similarity based on the general similarity measure is changed to the similarity based on the similarity measure that suppresses the appearance of the hub. A similarity scale conversion step (S106) for conversion is provided.
With this configuration, it is possible to suppress the appearance of the hub by converting the similarity based on the general similarity scale into the similarity based on the similarity scale that suppresses the appearance of the hub, and the fake user at the time of item recommendation Can reduce the influence of.

また、本発明の第9の態様に係るプログラムは、第6ないし第8のいずれかの態様のアイテム推薦方法をコンピュータに実行させるためのプログラムである。   A program according to the ninth aspect of the present invention is a program for causing a computer to execute the item recommendation method according to any of the sixth to eighth aspects.

また、本発明の第10の態様に係る記録媒体は、第9の態様に係るプログラムを記録したコンピュータ読み取り可能な記録媒体である。   A recording medium according to the tenth aspect of the present invention is a computer-readable recording medium recording the program according to the ninth aspect.

本発明によれば、偽ユーザを投入する攻撃を受けても、結果として攻撃の影響を受けることが少ないアイテム推薦システム及びアイテム推薦方法を提供できる。   ADVANTAGE OF THE INVENTION According to this invention, even if it receives the attack which throws in a fake user, it can provide the item recommendation system and the item recommendation method which are hardly influenced by an attack as a result.

評価マトリックスRの例を示す図である。It is a figure which shows the example of the evaluation matrix R. ユーザ間の相関を示す図である。図2(a)はユーザuとユーザvとの相関を説明するための図、図2(b)は相関が強い場合の散布図、図2(c)は相関が弱い場合の散布図である。It is a figure which shows the correlation between users. 2A is a diagram for explaining the correlation between the user u and the user v, FIG. 2B is a scatter diagram when the correlation is strong, and FIG. 2C is a scatter diagram when the correlation is weak. . 低次元と高次元におけるN10分布を示す図である。図3(a)は低次元、図3(b)は高次元におけるN10のヒストグラムである。Is a diagram showing an N 10 distribution in low-dimensional and higher-dimensional. 3 (a) is low-dimensional, 3 (b) is a histogram of the N 10 in high level. 10値とデータ中心への類似度の関係を示す散布図である。図4(a)は低次元、図4(b)は高次元における図である。It is a scatter diagram showing a similarity relationship to N 10 value and the data center. FIG. 4A is a diagram in a low dimension, and FIG. 4B is a diagram in a high dimension. 実施例1及び実施例2におけるアイテム推薦システム1の構成例を示す図である。It is a figure which shows the structural example of the item recommendation system 1 in Example 1 and Example 2. FIG. 実施例1及び実施例2におけるアイテム推薦方法の処理フロー例を示す図である。図6(a)は実施例1における処理フロー例を示す図、図6(b)は実施例2における処理フロー例を示す図である。It is a figure which shows the example of a processing flow of the item recommendation method in Example 1 and Example 2. FIG. FIG. 6A is a diagram illustrating an example of a processing flow in the first embodiment, and FIG. 6B is a diagram illustrating an example of a processing flow in the second embodiment. 最近傍パラメータkを横軸、平均絶対誤差(MAE)を縦軸とし、異なる類似度尺度を用いたアイテム推薦システムを比較する図である。It is a figure which compares the item recommendation system which used the nearest neighbor parameter k as a horizontal axis | shaft, made the average absolute error (MAE) the vertical axis | shaft, and used a different similarity measure. ユーザ間類似度尺度として一般的なピアソン相関を用いた場合、投入された偽ユーザがハブになっていることを示す図(その1)で、誠実なユーザ(偽ユーザ以外のユーザ)を含む全ユーザに関するN50とデータ中心への類似度に係る散布図である。When general Pearson correlation is used as a measure of similarity between users, it is a diagram (part 1) showing that the input fake user is a hub, including all sincere users (users other than fake users) it is a scatter diagram relating to the similarity of the N 50 and the data center about the user. ユーザ間類似度尺度として一般的なピアソン相関を用いた場合、投入された偽ユーザが(a)ハブとなること、(b),(c)類似度尺度の変換によってハブとなりにくくなることを示す図(その2)である。図9(a)はユーザ間類似度尺度として一般的なピアソン相関を用いた場合のN50に関するヒストグラムである。図9(bc)はセンタリングによる変換後のN50に関するヒストグラム、図9(c)はコミュートタイムカーネルによる変換後のN50に関するヒストグラムである。When general Pearson correlation is used as a similarity measure between users, it is shown that the input false user becomes (a) a hub, and (b) and (c) it becomes difficult to become a hub by conversion of the similarity measure. It is a figure (the 2). FIG. 9A is a histogram regarding N 50 when a general Pearson correlation is used as the similarity measure between users. FIG. 9B is a histogram regarding N 50 after conversion by centering, and FIG. 9C is a histogram regarding N 50 after conversion by the commuting time kernel.

図面を参照して以下に本発明の実施の形態について説明する。なお、各図において、互いに同一又は相当する部分には同一符号を付し、重複した説明は省略する。   Embodiments of the present invention will be described below with reference to the drawings. In the drawings, the same or corresponding parts are denoted by the same reference numerals, and redundant description is omitted.

〔ユーザベースのCF〕
ユーザ数Nuser×アイテム数NitemのマトリックスRを、アイテムに対するユーザの過去の反応(評価値)からなるデータセットとする。R(u,i)はu番目のユーザのi番目のアイテムへの評価値を示す。マトリックスRはnilと称する値の無い空欄を含んでいる。このnilの値は、ユーザのアイテムに対する評価がまだ与えられていないことを意味する。一般に、マトリックスRは空欄が多く、大部分がnilである。ユーザベースのCFは(後述するアイテムベースのCFも)、k近傍法を利用してこれらの値を予測するものである。
[User-based CF]
The matrix R of the number of users N user × the number of items N item is a data set composed of user's past responses (evaluation values) to the items. R (u, i) represents an evaluation value for the i-th item of the u-th user. The matrix R contains a blank with no value called nil. This nil value means that the user's item has not yet been rated. In general, the matrix R is blank and most is nil. The user-based CF (and the item-based CF described later) predicts these values using the k-nearest neighbor method.

Figure 0006566515
式(1)はu番目のユーザのi番目のアイテムへの評価値R(u,i)を予測する予測関数Pred(u,i)を示す。ユーザuとユーザv間の類似度をSim(u,v)、類似度Simのもとでユーザuと最近傍となるk人のユーザの集合をUとし、Uに属するユーザnについて使用する評価値は、R(n,i)≠nilを満たす。
Figure 0006566515
Expression (1) represents a prediction function Pred (u, i) for predicting an evaluation value R (u, i) for the i-th item of the u-th user. Assume that the similarity between the user u and the user v is Sim (u, v), the set of k users closest to the user u under the similarity Sim is U, and the user n belonging to U is used for evaluation The value satisfies R (n, i) ≠ nil.

さらに

Figure 0006566515
である。
Figure 0006566515
はユーザuが評価したアイテムに対する平均の評価値である。δ〔.〕は〔〕内の条件が満たされれば1、それ以外は0となる指示関数である。 further
Figure 0006566515
It is.
Figure 0006566515
Is an average evaluation value for the items evaluated by the user u. δ [. ] Is an indicator function that is 1 if the condition in [] is satisfied, and 0 otherwise.

図1にマトリックスRの例を示す。図1(a)は偽ユーザ投入前、図1(b)は偽ユーザ投入後の例を示す。列方向にアイテムiを、行方向にユーザuを配置し、その交点となるセル(欄)に評価値R(u,i)が記入されている。ここでは評価値R(u,i)は1から5の5段階の整数で評価されている。ターゲットアイテムの評価値の引き上げを目的とするアベレジアタックでは、図1(b)の下側のように、ターゲットアイテムであるアイテム1に高い評価を、その他のアイテムには過去にそのアイテムに対して評価を与えたユーザが付与した評価の平均に近い値を与える偽ユーザが投入される。   FIG. 1 shows an example of the matrix R. FIG. 1A shows an example before the fake user is input, and FIG. 1B shows an example after the fake user is input. The item i is arranged in the column direction and the user u is arranged in the row direction, and the evaluation value R (u, i) is entered in the cell (column) that is the intersection. Here, the evaluation value R (u, i) is evaluated by an integer of 5 levels from 1 to 5. In the average attack for the purpose of raising the evaluation value of the target item, as shown in the lower part of FIG. The fake user who gives a value close to the average of the evaluations given by the users who gave the evaluations is input.

図2を用いて、ユーザ間の類似度を、アイテムに与える評価値のピアソン相関により測る方法について説明する。図2(a)はユーザuとユーザvの相関を説明するための図である。図1(a)に示したアイテム2(R(u,2)=1,R(v,2)=1)、および、アイテム3(R(u,3)=5,R(v,3)=4)が図2(a)にプロットされている。図2(b)(c)は全アイテムi(R(u,i)、R(v,i))をプロットした散布図であり、図2(b)はユーザuとユーザvの(正の)相関が強い場合、図2(c)はユーザuとユーザvの相関が弱い場合の例である。相関が強い場合は、全アイテムのプロットは直線に乗り、相関が弱い場合はアトランダムとなる。 A method of measuring the similarity between users by the Pearson correlation of evaluation values given to items will be described with reference to FIG. FIG. 2A is a diagram for explaining the correlation between the user u and the user v. Item 2 (R (u, 2) = 1, R (v, 2) = 1) and item 3 (R (u, 3) = 5, R (v, 3) shown in FIG. = 4) is plotted in FIG. Figure 2 (b), (c) the total item i (R (u, i) , R (v, i)) is a scatter diagram plotting, FIG. 2 (b) of the user u and user v (positive (C) is an example when the correlation between the user u and the user v is weak. When the correlation is strong, the plots of all items are on a straight line, and when the correlation is weak, they are at random.

〔ユーザベースのCFに一般的に使用されるユーザ間類似度尺度〕
ユーザベースのCFにおいて、ユーザ間類似度を与える関数Sim(.,.)を適切に選定することはが重要である。なぜなら、類似度関数はkNNに入るユーザ、及び式(1)に係るkNNに入るユーザの重みを決定するからである。
一般的な類似度尺度関数として、マトリックスRのnilを0に置換した後に、行ベクトル(各ユーザが与えた評価値のベクトル)がなす角度のコサイン(cos)を計算するコサイン類似度がある。式(2)にこれを示す。
[Inter-user similarity measure commonly used for user-based CF]
In the user-based CF, it is important to appropriately select the function Sim (.,.) That gives the similarity between users. This is because the similarity function determines the weight of the user who enters kNN and the user who enters kNN according to Equation (1).
As a general similarity measure function, there is a cosine similarity for calculating a cosine (cos) of an angle formed by a row vector (a vector of evaluation values given by each user) after replacing nil of the matrix R with 0. This is shown in equation (2).

Figure 0006566515
ここに、xはNitem次元ベクトルで、その成分はR(u,i)≠nilならばx(i)=R(u,i)、それ以外はx(i)=0となる。上記関数使用の1つの欠点は、各々のユーザuがアイテムに与える平均的評価
Figure 0006566515
の違いに基づくバイアスが無視されるという点である。それ故、上記欠点の修正方法として、各ベクトル成分から
Figure 0006566515
を差し引く方法が一般的に使用される。
Figure 0006566515
Here, x u is an N item dimensional vector, and its component is x u (i) = R (u, i) if R (u, i) ≠ nil, and x u (i) = 0 otherwise. . One drawback of using the above function is that the average rating that each user u gives to the item
Figure 0006566515
The bias based on the difference is ignored. Therefore, as a correction method for the above-mentioned defects, from each vector component
Figure 0006566515
The method of subtracting is generally used.

ユーザのバイアス

Figure 0006566515
を差し引いたベクトルを用いた類似度は、式(3)のように計算され、これはユーザ間のピアソン(Pearson)相関と呼ばれる。
Figure 0006566515
ここに、もし、R(u,i)≠nilかつR(v,i)≠nilならば、
Figure 0006566515
であり、そうでなければx’(i)=0、x’(i)=0となる。 User bias
Figure 0006566515
Similarity using a vector obtained by subtracting is calculated as shown in Equation (3), which is called Pearson correlation between users.
Figure 0006566515
Here, if R (u, i) ≠ nil and R (v, i) ≠ nil,
Figure 0006566515
Otherwise, x ′ u (i) = 0 and x ′ v (i) = 0.

〔CFへのアタック〕
ユーザベースのCF、すなわち、ユーザと類似する他のユーザの過去の評価を参照してユーザに推薦するアイテムを決める推薦システム及び推薦方法に対しては、アベレジアタックと呼ばれるシリングアタックが効果を持つ。システムが持つ評価値マトリックスRを、不正な評価値を加えることによって改ざんすれば、推薦されるアイテムは変更される。この目的で偽ユーザを投入する攻撃をシリングアタックと呼び、アベレジアタックはその一つである。この攻撃を受けると、どのユーザも偽ユーザとの類似度が高くなる。つまり、偽ユーザは、推薦アイテムの決定に影響力を持つインフルエンサ、すなわち、ハブユーザとなる。
アベレジアタックにおいて投入される偽ユーザは、ターゲットアイテム(攻撃対象アイテム)を好む振る舞いをし、他のアイテムに対しては誠実なユーザ(偽ユーザ以外のユーザ)の平均的な振る舞いをする。すなわち、偽ユーザはターゲットアイテムには高い評価値点を与え、残りのアイテムには平均的な評価値を与える。結果として、偽ユーザはターゲットアイテムを好み、かつ、任意の誠実なユーザとの類似が高くなる。それ故に、ユーザベースのCFは、アベレジアタックを受けると、偽ユーザが高い評価を与えるターゲットアイテムを全ての誠実なユーザに推薦しやすくなる。
[Attack on CF]
A shilling attack called average attack is effective for a user-based CF, that is, a recommendation system and a recommendation method for determining items recommended to a user by referring to past evaluations of other users similar to the user. . If the evaluation value matrix R possessed by the system is altered by adding an illegal evaluation value, the recommended item is changed. An attack that introduces a fake user for this purpose is called a shilling attack, and the average attack is one of them. When subjected to this attack, every user becomes highly similar to a fake user. That is, the fake user is an influencer who has an influence on the determination of the recommended item, that is, a hub user.
The fake user thrown in the average attack behaves like the target item (attack target item), and acts like an honest user (user other than the fake user) on the other items. That is, the fake user gives a high evaluation value point to the target item and gives an average evaluation value to the remaining items. As a result, the fake user likes the target item and becomes more similar to any sincere user. Therefore, when the user-based CF receives an average attack, the user-based CF easily recommends a target item to which a fake user gives a high evaluation to all sincere users.

アイテムベースのCF、すなわち、類似する他のアイテムに対するユーザの過去の評価を参照してユーザに推薦するアイテムを決める推薦システム及び推薦方法に対しては、セグメントアタックあるいはポピュラーアタックと呼ばれるシリングアタックが効果を持つ。この攻撃を受けると、攻撃対象となるターゲットアイテムは、どのユーザも高い評価を与えるポピュラーアイテムとの類似度が高くなる。攻撃者は、ポピュラーアイテムが推薦アイテムの決定に影響力を持つインフルエンサ、すなわち、ハブアイテムであることを悪用し、システムによるターゲットアイテムの評価値を不当に高く変更しようとする。   A shilling attack called segment attack or popular attack is effective for item-based CF, that is, a recommendation system and a recommendation method for determining an item recommended to a user by referring to a user's past evaluation of other similar items. have. Upon receiving this attack, the target item to be attacked becomes highly similar to a popular item that is highly evaluated by any user. The attacker misuses that the popular item is an influencer that influences the determination of the recommended item, that is, a hub item, and tries to change the evaluation value of the target item by the system to be unreasonably high.

〔ハブ現象〕
ハブ現象は、「次元の呪い」の結果として起こる現象の一つである。Dをd次元データの集合とし、N(x)は、D内のデータx∈DがD内の他のデータのkNN内に入る回数を示す。次元dが増加すると、Nの分布形状は右に長い尾を引くように変わる(図3参照)。又は、少数のデータが大きなN値をとるようになる。かかる大きなN値を示すデータをハブといい、かかる現象をハブネス(ハブ現象)という。
[Hub phenomenon]
The hub phenomenon is one of the phenomena that occurs as a result of the “dimensional curse”. Let D be a set of d-dimensional data, and N k (x) represents the number of times data xεD in D falls within kNN of other data in D. As the dimension d increases, the distribution shape of Nk changes to have a long tail on the right (see FIG. 3). Alternatively, a small number of data has a large N k value. Data showing such a large N k value is called a hub, and this phenomenon is called hubness (hub phenomenon).

ここでは、人工データセットを用いてハブ現象について説明する。推薦システムでは一般に各ユーザは数個のアイテムに対してのみ評価値を与えるため、評価マトリックスRは空欄の多いスパースなマトリックスとなるが、この情況を模してスパースなデータセットを人工的に生成した。データセットは2000個のデータからなり、それぞれd次元ベクトルである。各データの生成方法は次の通りである:まず、各次元i=1,...,dに対して、Lognormal(5;1)分布にしたがって発生させた正の実数を丸め、整数niを得る。そして、2000個のデータからランダムにn個を選択し、その各々に対して、範囲〔0,1〕から一様に乱数を発生させ、それを各々のベクトルのi番目の要素(i次元成分)とする。 Here, the hub phenomenon will be described using an artificial data set. In the recommendation system, each user generally gives an evaluation value to only a few items, so the evaluation matrix R is a sparse matrix with many blanks, but a sparse data set is artificially generated to mimic this situation. did. The data set consists of 2000 pieces of data, each of which is a d-dimensional vector. The method of generating each data is as follows: First, each dimension i = 1,. . . , D, a positive real number generated according to the Lognomal (5; 1) distribution is rounded to obtain an integer ni. Then, select the n i pieces randomly from 2000 pieces of data, with respect to each, to generate a uniform random number in the range [0,1], i-th element of each vector it (i dimension Component).

図3は、データ間の類似度をベクトル間の角度、すなわち、cos(コサイン類似度)を用いて測ったときの、N10分布を示すヒストグラムである。図3(a)は低次元、図3(b)は高次元の場合のヒストグラムである。ハブ現象の出現を説明するために、次元が低い場合(d=50)と高い場合(d=1000)の2ケースにおいてN10分布を比較した。図3は、高次元では大きなN10値を持つデータが出現し、結果としてN10の分布が歪む(対称でなくなる)ことを示す。最大となるN10は図3(a)で38、図3(b)で133である。 3, the angle between the vectors of the similarities between the data, that is, when measured with cos (cosine similarity) is a histogram showing the N 10 distribution. FIG. 3A is a histogram in the case of low dimensions, and FIG. 3B is a histogram in the case of high dimensions. In order to explain the appearance of the hub phenomenon, N 10 distributions were compared in two cases, when the dimension was low (d = 50) and when the dimension was high (d = 1000). FIG. 3 shows that data having a large N 10 value appears in a high dimension, and as a result, the distribution of N 10 is distorted (not symmetric). The maximum N 10 is 38 in FIG. 3A and 133 in FIG.

図4はN10値とデータ中心への類似度の関係を示す散布図である。図4(a)は低次元、図4(b)は高次元における図である。N10値とデータ中心への類似度との間には、高次元で強い相関がみられることから、ハブ現象の起源は、高次元で発生するデータ中心へのバイアス、すなわち、Spatial Centralityであることが分かる。 Figure 4 is a scatter diagram showing a similarity relationship to N 10 value and the data center. FIG. 4A is a diagram in a low dimension, and FIG. 4B is a diagram in a high dimension. Since a strong correlation is observed in the high dimension between the N 10 value and the similarity to the data center, the hub phenomenon is originated from a bias to the data center occurring in the high dimension, that is, Spatial Centrality. I understand that.

〔攻撃シリングアタックとハブ現象との関係〕
ナノポウラス達(A.Nanopoulos, and M.Radovanovic, M.Ivanovic. How does high dimensionality affect collaborative filtering? In Proc. 3rd ACM Conf. on Recommender Systems (RecSys), pages 293−296, 2009.)及びニース達(P.Knees,D.Schnitzer,and A.Flexer. 「Improving neighborhood−based collaborative filtering by reducing hubness」、 In Proc. ICMR’14,pages 161−168,2014年)は、ユーザベースあるいはアイテムベースのCFにおいては、kNNは高次元で計算されるので、ハブ現象が出現すると報告した。通常、ユーザ数及びアイテム数は大きいので、コサイン類似度やピアソン相関のような類似度の計算に使用されるベクトルは高次元となり、ハブ現象が生じる。そして、他のデータのkNN内に頻繁に現れるハブデータは、多くの推薦を決定するのに影響する。しかし、ハブデータは多くのデータにとってあまり意味を持たないデータである。なぜなら、ハブデータは高次元でデータ中心に類似するという理由によってのみkNNの中に頻繁に生じるのであり、個々のデータを特徴付けるための役には立たないからである。事実、ニース達の文献によれば、推薦システムのパフォーマンスはハブデータの存在により悪化する。さらに、ハブデータはシステムによる推薦アイテムの決定に強い影響を持つデータなので、もしもシステム外からハブデータを操ることができれば、システムを効果的に攻撃することが可能となる。
実際、ハブ現象は推薦システムを攻撃に対して危うくする。例えば、アベレジアタックによりシステムに投入された偽ユーザは、ハブデータとなることで、システムに大きな影響を与える。よって、ハブ現象の発生を抑えることは攻撃回避につながると考えられる。
[Relationship between Attack Shilling Attack and Hub Phenomenon]
(A. Nanopoulos, and M. Radovanovic, M. Ivanovic. How does high dimensionality impact collaborative filtering? 29 Proc. 3rd ACM Cons. 3rd ACM. P. Knees, D. Schnitzer, and A. Flexer, “Improving neighborhood-based collaborative filtering by reducing hubness”, In Proc. ICMR'14, pages 161-168. In item-based CF, kNN is because it is calculated at a high level, it reported that the hub phenomenon appears. Usually, since the number of users and the number of items are large, vectors used for calculation of similarity such as cosine similarity and Pearson correlation are high-dimensional, and a hub phenomenon occurs. And hub data that frequently appears in the kNN of other data affects the determination of many recommendations. However, hub data is data that does not have much meaning for many data. This is because hub data frequently occurs in kNN only because it is high-dimensional and similar to the data center, and is not useful for characterizing individual data. In fact, according to Nice et al., The performance of the recommendation system is exacerbated by the presence of hub data. Furthermore, since hub data is data that has a strong influence on the determination of recommended items by the system, if the hub data can be manipulated from outside the system, the system can be effectively attacked.
In fact, the hub phenomenon compromises the recommendation system against attacks. For example, a fake user entered into the system due to an average attack becomes hub data, which greatly affects the system. Therefore, suppressing the occurrence of the hub phenomenon is thought to lead to attack avoidance.

〔データ中心へのバイアス削減によるハブの抑制〕
データ中心との類似度が高い少数のデータがハブになるというのであれば、類似度尺度を全てのデータ対象がデータ中心に同等に類似になる類似度尺度に変換することにより、ハブ現象を抑制できると考えられる。かかる類似度(尺度)の変換は、与えられた類似度からコミュートタイムカーネルを計算することによって得られ、より簡易には、与えられた類似度をセンタリングすることによって得られる。
Nをデータ数とし、KをサイズNの類似度行列とする。Kに対するコミュートタイムカーネルKCTは、式(4)で与えられる。

CT=L(Lの一般化逆行列)・・・(4)

ここに、L=D−Kはグラフラプラシアンと呼ばれる。DはDii=Σijとなる対角行列である。
[Hub suppression by reducing bias toward data center]
If a small number of data with high similarity to the data center is a hub, the hub phenomenon is suppressed by converting the similarity scale to a similarity scale that makes all data objects equally similar to the data center. It is considered possible. Such conversion of the degree of similarity (scale) is obtained by calculating a commutation time kernel from a given degree of similarity, and more simply by centering the given degree of similarity.
Let N be the number of data and K be a similarity matrix of size N. The commutation time kernel K CT for K is given by equation (4).

K CT = L + (generalized inverse matrix of L) (4)

Here, L = D−K is called a graph Laplacian. D is a diagonal matrix such that D ii = Σ j K ij .

次に、Iを単位行列、

Figure 0006566515
を全要素が1であるN次元ベクトルとする。Kをセンタリングした類似度行列KCENTは式(5)のように計算される。
Figure 0006566515
Next, I is the identity matrix,
Figure 0006566515
Is an N-dimensional vector with all elements being 1. A similarity matrix K CENT centered on K is calculated as shown in Equation (5).
Figure 0006566515

図5に実施例1におけるアイテム推薦システム1の構成例を示す。
本実施例では、アイテム推薦システム1としてユーザベースのCFを説明する。すなわち、類似度演算に例えばk近傍法を用い、対象ユーザと評価が似ている他のユーザの過去の評価値を参照してアイテムを推薦するシステムである。アイテムが商品で、評価値が嗜好度の場合は、対象ユーザと嗜好が似ている他のユーザの過去の嗜好度を参照して商品を推薦するシステムである。
なお、図5の構成は実施例1(ユーザベースのCF)及び実施例2(アイテムベースのCF)の両者に適用可能な構成である。このため、ユーザベースのCF及びアイテムベースのCFに共通する説明は本実施例で行うこととし、実施例2では差異を説明する程度とする。
FIG. 5 shows a configuration example of the item recommendation system 1 in the first embodiment.
In this embodiment, a user-based CF will be described as the item recommendation system 1. In other words, this is a system that recommends items by using, for example, the k-nearest neighbor method for similarity calculation and referring to past evaluation values of other users whose evaluation is similar to that of the target user. When the item is a product and the evaluation value is the preference level, the system recommends the product with reference to the past preference levels of other users who have similar preferences to the target user.
The configuration in FIG. 5 is applicable to both the first embodiment (user-based CF) and the second embodiment (item-based CF). For this reason, the description common to the user-based CF and the item-based CF will be described in the present embodiment, and in the second embodiment, the difference will be described to an extent.

アイテム推薦システム1は、データ及びコマンドを処理するパーソナルコンピュータ(PC)10、各部で処理された又は入出力されたデータ・コマンド等を表示する表示部18、データ及びコマンドを入出力するための入出力部19、及び各部で処理された又は入出力されたデータ・コマンド等を記憶する記憶部20を含んで構成される。
パーソナルコンピュータ(PC)10は、ユーザ及びアイテムを登録する登録部11、ユーザのアイテムに係る評価の程度を表す評価値を評価マトリックスに記入する評価部12、類似度尺度を用いてユーザ間の類似度及び/又はアイテム間の類似度を演算する類似度演算部13、類似度の高い方から例えばk個の対象データ(ユーザ及び/又はアイテム)を抽出する近傍データ抽出部14、評価マトリックスRのセルに評価値が記入されていない時に、近傍データ抽出部14で抽出された評価値に基づいて、セルに記入されるであろうと予測される評価値を予測する評価値予測部15、評価値予測部15にて高い評価値を予測されたアイテムを推薦するアイテム推薦部16、アイテム推薦システム1の各部を制御して、アイテム推薦システムとして機能させる制御部17を備える。
The item recommendation system 1 includes a personal computer (PC) 10 for processing data and commands, a display unit 18 for displaying data / commands processed or input / output by each unit, and an input / output for inputting / outputting data and commands. The output unit 19 includes a storage unit 20 that stores data commands and the like processed or input / output by each unit.
A personal computer (PC) 10 includes a registration unit 11 for registering users and items, an evaluation unit 12 for entering an evaluation value indicating the degree of evaluation of a user's item in an evaluation matrix, and similarity between users using a similarity scale The similarity calculation unit 13 that calculates the degree and / or similarity between items, the neighborhood data extraction unit 14 that extracts, for example, k target data (users and / or items) from the higher similarity, the evaluation matrix R An evaluation value prediction unit 15 for predicting an evaluation value predicted to be written in the cell based on the evaluation value extracted by the neighborhood data extraction unit 14 when the evaluation value is not written in the cell; An item recommendation system that controls an item recommendation unit 16 that recommends an item for which a high evaluation value is predicted by the prediction unit 15 and the item recommendation system 1 is controlled. And a control unit 17 to function as a.

ここにおいて、登録部11はユーザを登録するユーザ登録部111とアイテムを登録するアイテム登録部112を有する。本実施例では、類似度演算部13は、類似度尺度として、ハブを抑制する類似度尺度を用いて、ユーザ間の類似度及び/又はアイテム間の類似度を演算する。詳しくは、類似度演算部13はハブを抑制する類似度尺度を用いて、評価マトリックスRの各行のユーザの評価値に着目してユーザ間の類似度を演算する第1の類似度演算部131と、各列のアイテムの評価値に着目してアイテム間の類似度を演算する第2の類似度演算部132を有する。また、一般的な類似度尺度に基づく類似度からハブを抑制する類似度尺度に基づく類似度への変換を行う類似度尺度変換部135を有する。近傍データ抽出部14は、類似度の高い方から例えばk個のユーザを抽出する第1の近傍データ抽出部141と、類似度の高い方から例えばk個のアイテムを抽出する第2の近傍データ抽出部142を有する。評価値予測部15は、第1の近傍データ抽出部141で抽出された評価値に基づいて、対象ユーザの評価値を予測する第1の評価値予測部151と、第2の近傍データ抽出部142で抽出された評価値に基づいて、対象ユーザの評価値を予測する第2の評価値予測部152を有する。第1の評価値予測部151及び第2の評価値予測部は、対象ユーザに係る未記入のセルに記入すべき評価値を予測するに際し、記入すべき評価値として例えば平均値を用いることができる。また、重み付けをした平均値を用いるのが、推薦精度を高くできるので好ましい。   Here, the registration unit 11 includes a user registration unit 111 that registers users and an item registration unit 112 that registers items. In the present embodiment, the similarity calculation unit 13 calculates the similarity between users and / or the similarity between items using a similarity scale that suppresses the hub as a similarity scale. Specifically, the similarity calculation unit 13 uses a similarity measure that suppresses the hub, and pays attention to the evaluation value of the user in each row of the evaluation matrix R to calculate the similarity between users. And the 2nd similarity calculation part 132 which calculates the similarity between items paying attention to the evaluation value of the item of each row | line | column. In addition, a similarity scale conversion unit 135 that performs conversion from similarity based on a general similarity scale to similarity based on a similarity scale that suppresses the hub is provided. The neighborhood data extraction unit 14 includes, for example, a first neighborhood data extraction unit 141 that extracts, for example, k users from the higher degree of similarity, and second neighborhood data that extracts, for example, k items from the higher degree of similarity. An extraction unit 142 is included. The evaluation value prediction unit 15 includes a first evaluation value prediction unit 151 that predicts an evaluation value of the target user based on the evaluation value extracted by the first neighborhood data extraction unit 141, and a second neighborhood data extraction unit. Based on the evaluation value extracted in 142, the second evaluation value prediction unit 152 that predicts the evaluation value of the target user is included. The first evaluation value prediction unit 151 and the second evaluation value prediction unit use, for example, an average value as an evaluation value to be entered when predicting an evaluation value to be entered in an unfilled cell related to the target user. it can. In addition, it is preferable to use a weighted average value because recommendation accuracy can be increased.

また、記憶部20は評価マトリックスRを記憶する評価マトリックス記憶部21、類似度尺度及び第1の類似度演算部131で演算されたユーザに関する類似度データ、及び/又は、第2の類似度演算部132で演算されたアイテムに関する類似度データを記憶する類似度尺度記憶部22を有する。第1の類似度演算部131及び第2の類似度演算部132の演算データはハブデータが出現しにくい類似度尺度を用いて演算したものである。類似度尺度記憶部22は、一般的な類似度尺度を記憶してもよい。また、記憶部20は近傍データ抽出部14にて抽出されたデータ(ユーザ及び/又はアイテム)を記憶する近傍データ記憶部23、評価値推定部15で推定されたアイテムを記憶する推薦アイテム記憶部24を有する。類似度尺度記憶部22は、類似度データの他に一般的な類似度尺度及び/又はハブの出現を抑制する類似度尺度を記憶する。ハブの出現を抑制する類似度尺度を記憶せず、一般的な類似度尺度を記憶している場合には、類似度尺度変換部135にて一般的な類似度尺度をハブの出現を抑制する類似度尺度へ変換し、類似度尺度記憶部22には得られたハブの出現を抑制する類似度尺度が記憶し直される。類似度の変換には、例えば一般的な類似度尺度の式をハブの出現を抑制する類似度尺度の式に変換して類似度を求める方法、一般的な類似度尺度で求めた類似度を行列によりハブの出現を抑制する類似度尺度に基づく類似度に変換する方法等が使用される。この場合、変換前の一般的な類似度尺度を消去せずに残しておいても良い。一般的な類似度尺度とハブの出現を抑制する類似度尺度を共に記憶しておくと、類似度演算結果及びアイテム推薦に係る評価値予測結果を組み合わせて用いたり、比較したりすることができる。近傍データ記憶部23は、第1の近傍データ抽出部141にて抽出されたユーザを記憶する第1の近傍データ記憶部231と、第2の近傍データ抽出部142にて抽出されたアイテムを記憶する第2の近傍データ記憶部232を有する。推薦アイテム記憶部24には、ユーザに対してアイテム推薦時に表示したい内容が記憶される。例えば、アイテム名の他に、アイテムについての説明、アイテムを使用するための説明、アイテムの画像等を記憶する。これらの内容は推薦時に表示部18に表示される。   In addition, the storage unit 20 stores the evaluation matrix R for storing the evaluation matrix R, the similarity measure for the user calculated by the similarity measure and the first similarity calculation unit 131, and / or the second similarity calculation. The similarity measure storage unit 22 stores similarity data related to the item calculated by the unit 132. The calculation data of the first similarity calculation unit 131 and the second similarity calculation unit 132 are calculated using a similarity measure that makes it difficult for hub data to appear. The similarity scale storage unit 22 may store a general similarity scale. In addition, the storage unit 20 includes a neighborhood data storage unit 23 that stores data (user and / or item) extracted by the neighborhood data extraction unit 14, and a recommended item storage unit that stores items estimated by the evaluation value estimation unit 15. 24. The similarity scale storage unit 22 stores a general similarity scale and / or a similarity scale that suppresses the appearance of a hub in addition to the similarity data. When the similarity measure that suppresses the appearance of the hub is not stored but the general similarity measure is stored, the similarity measure conversion unit 135 suppresses the appearance of the hub with the general similarity measure. The similarity scale is converted into a similarity scale, and the similarity scale storage unit 22 stores the obtained similarity scale that suppresses the appearance of the hub. For similarity conversion, for example, a general similarity scale formula is converted to a similarity scale formula that suppresses the appearance of hubs, and the similarity is calculated. A method of converting to a similarity based on a similarity measure that suppresses the appearance of a hub by a matrix is used. In this case, a general similarity measure before conversion may be left without being deleted. If a general similarity measure and a similarity measure that suppresses the appearance of a hub are stored together, the similarity calculation result and the evaluation value prediction result related to item recommendation can be used in combination or compared. . The neighborhood data storage unit 23 stores the first neighborhood data storage unit 231 that stores the users extracted by the first neighborhood data extraction unit 141 and the items extracted by the second neighborhood data extraction unit 142. A second neighborhood data storage unit 232 is provided. The recommended item storage unit 24 stores contents to be displayed when recommending items to the user. For example, in addition to the item name, a description about the item, a description for using the item, an image of the item, and the like are stored. These contents are displayed on the display unit 18 at the time of recommendation.

なお、本実施例では、ユーザと類似度の高い方からk人を抽出し、k人の評価値の平均としてユーザの評価値を予測するので、類似度演算部13として第1の類似度演算部131、近傍データ抽出部14として第1の近傍データ抽出部141、評価値予測部15として第1の評価値予測部151、近傍データ記憶部23としての近傍ユーザ記憶部231を使用できれば良く、第2の類似度演算部132、第2の近傍データ抽出部142、第2の評価値予測部152、近傍アイテム記憶部232は無くても良い。これらは実施例2で使用される。   In the present embodiment, k people are extracted from those having higher similarity to the user, and the user evaluation value is predicted as an average of the k evaluation values, so that the similarity calculation unit 13 performs the first similarity calculation. Unit 131, first neighborhood data extraction unit 141 as neighborhood data extraction unit 14, first assessment value prediction unit 151 as assessment value prediction unit 15, and neighborhood user storage unit 231 as neighborhood data storage unit 23 may be used. The second similarity calculation unit 132, the second neighborhood data extraction unit 142, the second evaluation value prediction unit 152, and the neighborhood item storage unit 232 may be omitted. These are used in Example 2.

図6に実施例1におけるアイテム推薦方法の処理フロー例を示す。図6(a)は実施例1における処理フロー例を示す図、図6(b)は後述する実施例2における処理フロー例を示す図である。
まず、評価マトリックスRにアイテムi(S101:アイテム登録工程)、及びユーザuを登録する(S102:ユーザ登録工程)。アイテムiの登録とユーザuの登録はどちらが先でも良く、並行して行っても良い。次に、評価マトリックスRにユーザuのアイテムiに係る評価の程度を表す評価値R(u,i)を登録する(S103:評価値登録工程)。本実施例ではアイテムを商品とし、評価値を嗜好度とし、評価マトリックスRを嗜好度マトリックスとする。評価は例えば5段階評価(1〜5の整数))で行う。ユーザ自身が登録しても良く、システム側で過去のユーザの当該アイテムに係る振る舞いを参照して登録しても良い。必ずしもマトリックスR全体を記入する必要はなく、空欄のセルがあっても良く、通常は大部分が空欄になっている。評価マトリックスRは評価マトリックス記憶部21に記憶される(S104:評価マトリックス記憶工程)。
FIG. 6 shows a processing flow example of the item recommendation method in the first embodiment. FIG. 6A is a diagram illustrating an example of a processing flow in the first embodiment, and FIG. 6B is a diagram illustrating an example of a processing flow in the second embodiment described later.
First, an item i (S101: item registration process) and a user u are registered in the evaluation matrix R (S102: user registration process). Either the item i registration or the user u registration may be performed first or in parallel. Next, an evaluation value R (u, i) indicating the degree of evaluation related to the item i of the user u is registered in the evaluation matrix R (S103: evaluation value registration step). In this embodiment, an item is a product, an evaluation value is a preference level, and an evaluation matrix R is a preference matrix. Evaluation is performed by, for example, a five-step evaluation (an integer of 1 to 5). The user himself / herself may be registered, or may be registered by referring to the behavior related to the item of the past user on the system side. It is not always necessary to fill in the entire matrix R, and there may be blank cells, and most of them are usually blank. The evaluation matrix R is stored in the evaluation matrix storage unit 21 (S104: evaluation matrix storage step).

次に、評価マトリックスRに基づいて各ユーザに対して推薦すべきアイテムを定める。まず、ユーザ本人に似た他のユーザを求めるための類似度演算を行う。類似度演算を行うに際し、類似度尺度記憶部22には類似度尺度として予め一般的な類似度尺度又はハブの出現を抑制する類似度尺度が記憶されているものとする。まず、類似度尺度記憶部22にハブの出現を抑制する類似度尺度が有るか無いかを判定する(S105:ハブ抑制類似度尺度の有無判定工程)。類似度尺度記憶部22に、ハブの出現を抑制する類似度尺度が記憶されておらず、一般的な類似度尺度が記憶されている場合には(S105でNoの場合)、一般的な類似度尺度に基づく類似度をハブの出現を抑制する類似度尺度に基づく類似度に変換する(S106:類似度尺度変換工程)。ハブの出現を抑制する類似度尺度として、例えば全てのデータ対象がデータ中心に同等に類似になる類似度尺度、すなわちSpatial Centralityのない類似度尺度を使用できる。具体的には、例えば、センタリングを行う又はコミュートタイムカーネルへの変換を行う。変換されたハブを抑制する類似度尺度は類似度尺度記憶部22に記憶される。次に、ハブの出現を抑制する類似度尺度を用いてユーザ間の類似度を演算する(S107:第1の類似度演算工程)。なお、類似度の変換を行列で行う場合には類似度尺度変換工程(S106)と第1の類似度演算工程(S107)とが一括して行われる。この場合類似度尺度は必ずしも式として残るとは限らないが、演算結果においてハブを抑制する類似度尺度に基づく類似度データに内在して残ることになる。類似度尺度記憶部22に、ハブの出現を抑制する類似度尺度がすでに記憶されている場合には(S105でYesの場合)、類似度尺度変換工程(S106)を省略し、ハブの出現を抑制する類似度尺度を用いてユーザ間の類似度を演算する(S107:第1の類似度演算工程)。ハブの出現を抑制する類似度尺度を用いて演算された結果は、類似度尺度記憶部22に記憶される。   Next, an item to be recommended to each user is determined based on the evaluation matrix R. First, similarity calculation is performed to obtain another user similar to the user himself / herself. When performing the similarity calculation, it is assumed that a similarity measure storage unit 22 stores a general similarity measure or a similarity measure that suppresses the appearance of a hub in advance as a similarity measure. First, it is determined whether or not there is a similarity measure that suppresses the appearance of the hub in the similarity measure storage unit 22 (S105: presence / absence determination step of a hub suppression similarity measure). When the similarity measure storage unit 22 does not store the similarity measure that suppresses the appearance of the hub and stores a general similarity measure (in the case of No in S105), the general similarity is stored. The similarity based on the degree scale is converted into the similarity based on the similarity scale that suppresses the appearance of the hub (S106: similarity scale conversion step). As a similarity measure for suppressing the appearance of the hub, for example, a similarity measure in which all data objects are equally similar to the data center, that is, a similarity measure without Spatial Centrality can be used. Specifically, for example, centering or conversion to a commuted time kernel is performed. The similarity measure for suppressing the converted hub is stored in the similarity measure storage unit 22. Next, the similarity between users is calculated using the similarity measure that suppresses the appearance of the hub (S107: first similarity calculation step). Note that when the similarity conversion is performed in a matrix, the similarity scale conversion step (S106) and the first similarity calculation step (S107) are performed in a lump. In this case, the similarity measure does not necessarily remain as an expression, but remains in the similarity data based on the similarity measure that suppresses the hub in the calculation result. When the similarity measure that suppresses the appearance of the hub is already stored in the similarity measure storage unit 22 (Yes in S105), the similarity measure conversion step (S106) is omitted, and the appearance of the hub is determined. The similarity between users is calculated using the similarity measure to suppress (S107: 1st similarity calculation process). The result calculated using the similarity measure that suppresses the appearance of the hub is stored in the similarity measure storage unit 22.

次に、類似度尺度記憶部22に記憶された類似度が高い方から例えばk人のユーザを抽出する(S108:第1の近傍データ抽出工程)。そして、抽出されたk人のユーザの平均評価値等に基づき、対象ユーザの空欄になっている評価値を予測する(S109:第1の評価値予測工程)。第1の評価値予測工程(S109)では、対象ユーザに係る未記入のセルに記入すべき評価値を予測するに際し、例えば平均値を用いて予測することができる。また、重み付けをした平均値を用いるのが好ましい。最後に、予測値の高いアイテムを推薦する(S110:アイテム推薦工程)。例えば、アイテムを提供するインターネットのサイトにユーザが訪れた時に、当該ユーザに関して予測値の高い順にアイテムを提示する。また、電子メールで当該ユーザ宛に配信しても良い。   Next, for example, k users are extracted from the one with the higher similarity stored in the similarity scale storage unit 22 (S108: first neighborhood data extraction step). Then, based on the extracted average evaluation values of k users and the like, an evaluation value that is blank for the target user is predicted (S109: first evaluation value prediction step). In the first evaluation value predicting step (S109), when an evaluation value to be entered in an unfilled cell related to the target user is predicted, it can be predicted using, for example, an average value. It is preferable to use a weighted average value. Finally, an item with a high predicted value is recommended (S110: item recommendation step). For example, when a user visits an Internet site that provides an item, items are presented in descending order of the predicted value for the user. Moreover, you may deliver to the said user with an email.

〔実験〕
ハブデータの出現を抑制することが、ユーザベースのCFを、アベレジアタックに対して頑健にすることを確かめる実験を行った。実験には、推薦タスクのベンチマークデータとして使用されるムービーレンズ1Mデータセット(m1−1m)を用いた。このデータセットは、6,040ユーザ、3,706アイテムに対する1,000,209個の評価値(整数1〜5の5段階評価)から成る。どのユーザも少なくとも20アイテムを評価している。ベースラインとなるユーザ間の類似度尺度として、一般的に使われるコサイン類似度(Cos)、及び、ピアソン相関とshrunkenピアソン相関(Pearson)を用い、式(1)を用いて評価値を予測した。shrunkenピアソン相関がピアソン相関より良い精度が出ることが知られているので、今回はピアソン相関として、shrunkenピアソン相関を使用する。今後は、shrunkenピアソン相関をピアソン相関(Pearson)と表記する。ピアソン相関(Pearson)のパラメータβは、過去の研究報告に倣い、β=100に設定した。ハブデータの出現を抑制するための方法として、ベースラインとなる類似度を式(4)によりコミュートタイムカーネルに変換する方法(CT)、又は、式(5)によりセンタリング変換する方法(CENT)を用いた。この実験の主な目的は変換の前後における攻撃に対するシステムのロバスト性(耐性)を比較することである。
[Experiment]
Experiments were conducted to ensure that suppressing the appearance of hub data makes user-based CF robust against average attacks. In the experiment, a movie lens 1M data set (m1-1m) used as benchmark data for a recommended task was used. This data set consists of 1,000,209 evaluation values (5-level evaluation of integers 1 to 5) for 6,040 users and 3,706 items. Every user has rated at least 20 items. The evaluation value was predicted using the formula (1) by using commonly used cosine similarity (Cos) and Pearson correlation and shrunken Pearson correlation (Pearson) as the similarity measure between users serving as baselines. . Since it is known that the shrunken Pearson correlation is more accurate than the Pearson correlation, this time, the shrunken Pearson correlation is used as the Pearson correlation. From now on, the shrunken Pearson correlation will be referred to as Pearson correlation (Pearson). The Pearson correlation parameter (Pearson) parameter β was set to β = 100 in accordance with past research reports. As a method for suppressing the appearance of hub data, a method of converting the similarity as a baseline into a commuted time kernel (CT) according to equation (4), or a method of centering conversion according to equation (5) (C ENT ) Was used. The main purpose of this experiment is to compare the robustness (resistance) of the system to attacks before and after conversion.

〔攻撃が無いときの予測精度〕
攻撃に対するロバスト性を調べる前に、攻撃が無いときに、CT変換及びCENT変換が評価値の予測精度を劣化させることがないか否かを検証した。推薦業務をシミュレートするために、データセット中の1,000,209個の評価値を、939,809個の訓練データ(テストデータの予測に使用するデータ)と60,400個のテストデータ(予測の対象となるデータ)に分割した。CFアルゴリズムの評価に一般的に使用される平均絶対誤差(MAE)を用いて、変換前後の類似度尺度の良し悪しを比較した。

MAE=1/|T|Σ(u,i)∈T|Pred(u,i)−R(u,i)|

として計算した。ここにTはテストデータ(|T|=60400)として与えられたユーザ−アイテムのペアの組である。
[Prediction accuracy when there is no attack]
Before examining the robustness against the attack, it was verified whether or not the CT conversion and the CENT conversion do not deteriorate the prediction accuracy of the evaluation value when there is no attack. In order to simulate the recommendation work, 1,000,209 evaluation values in the data set are converted into 939,809 training data (data used for prediction of test data) and 60,400 test data ( Divided into data subject to prediction). The average absolute error (MAE) generally used for the evaluation of the CF algorithm was used to compare the similarity measures before and after the conversion.

MAE = 1 / | T | Σ (u, i) ∈T | Pred (u, i) −R (u, i) |

As calculated. Here, T is a set of user-item pairs given as test data (| T | = 60400).

図7に最近傍パラメータkを10から100の間で変動させ、ベースラインとなる類似度尺度であるコサイン類似度(Cos)及びピアソン相関(Pearson)を、コミュートタイムカーネル変換(CT)あるいはセンタリング変換(CENT)した場合の、平均絶対誤差(MAE)を比較して示す。図7より、CENTは殆どの場合にMAEを減少(予測精度を増加し)させ、CTはピアソン相関の場合はMAEを減少する。このことから、CENT変換及びピアソン相関に対するCT変換は、攻撃が無い時の予測精度を悪化させるどころか、改良することが分かる。
以下でアベレジアタックに対するロバスト性を評価するに際し、上記実験で概ねベストとなるMAEを達成するk=50と設定する。
In FIG. 7, the nearest neighbor parameter k is varied between 10 and 100, and the cosine similarity (Cos) and the Pearson correlation (Pearson), which are the similarity measures as a baseline, are converted into a commuted time kernel transform (CT) or a centering transform The average absolute error (MAE) in the case of (C ENT ) is compared and shown. From FIG. 7, C ENT decreases MAE in most cases (increases prediction accuracy), and CT decreases MAE in the case of Pearson correlation. From this, it can be seen that the C ENT transform and the CT transform for Pearson correlation are improved rather than worsening the prediction accuracy when there is no attack.
In the following, when evaluating the robustness against the average attack, k = 50 is set to achieve the best MAE in the above experiment.

〔攻撃に対するロバスト性〕
アベレジアタックのターゲットアイテムとして21個の映画アイテムを選択した。これらのアイテムは、アベレジアタックに関する最初の研究を行ったラム達(S.K.Lam and J.Riedl.Shilling.Recommender Systems for Fun and Profit. In Proc. WWW ’04, pages 393−402, 2004年)が実験で用いたアイテムにできるだけ近いもの(評価ユーザ数、平均評価値の観点から)になるように選んだ。アベレジアタックとして、100の偽ユーザを投入し、偽ユーザはターゲットアイテムには高い評価(すなわち5)を付与し、残り他のアイテムにはノイズを加えた平均的評価を付与するよう作成した。すなわち、残りの各アイテムの各々に対して、μ=平均評価値、σ=1.0となる、正規分布(μ;σ)に従う乱数を生成し、もっとも近い整数値1〜5に変換して付与した。予測シフトと呼ばれる値、すなわち、攻撃前後の予測評価値の差となる値を用い、変換前後の類似度尺度の良し悪しを比較した。より正確には、訓練用データを除き、誠実なユーザ(偽ユーザを除く全ユーザ)とターゲットアイテムの各ペアに対する予測シフトを計算し、その平均値を比較に用いた。
[Robustness against attack]
Twenty-one movie items were selected as target items for the average attack. These items were found in Lam et al. (SK Lam and J. Riedl. Shilling. Recommenders Systems for Fun and Profit. In Proc. WWW '04, pages 393-402, 2004. Year) was selected to be as close as possible to the items used in the experiment (in terms of the number of evaluation users and average evaluation values). As an average attack, 100 fake users were introduced, and the fake user was given a high evaluation (that is, 5) for the target item, and an average evaluation with noise added to the remaining other items. That is, for each of the remaining items, a random number according to a normal distribution (μ; σ), where μ = average evaluation value and σ = 1.0, is generated and converted to the nearest integer value 1-5. Granted. A value called a prediction shift, that is, a value that is a difference between prediction evaluation values before and after the attack, was used to compare the similarity measures before and after the conversion. More precisely, except for training data, a prediction shift was calculated for each pair of honest users (all users except fake users) and target items, and the average value was used for comparison.

Figure 0006566515

表1はアベレジアタックにより生じた予測シフトと、N分布の歪度を示す。大きいNを持つデータ、すなわちハブデータが存在するほど、N分布の歪度は大きい値となる。N分布の歪度は、SNk=E〔(N−μNk/σNk 〕(E〔 〕は期待オペレータ、μNkとσNkはそれぞれNk分布の平均と標準分散である)で表される。N分布の歪度、予測シフトのどちらも、CENT又はCT変換後に減少した。このことは、変換された類似度尺度の使用は、ハブデータの出現を抑制し、その結果、推薦システムを攻撃に対してロバストにすることを示している。
Figure 0006566515

Table 1 shows the prediction shift caused by the average attack and the skewness of the Nk distribution. The more the data having a large N k , that is, the hub data, the greater the skewness of the N k distribution. Skewness of N k distribution, S Nk = E [(N k -μ Nk) 3 / σ Nk 3 ] (E [] is the expectation operator, the mu Nk and sigma Nk is the average and the standard variance of each Nk distribution ). Both skewness and prediction shift of Nk distribution decreased after CENT or CT conversion. This indicates that the use of the transformed similarity measure suppresses the appearance of hub data, thus making the recommendation system robust against attacks.

図8及び図9は、ユーザ間類似度尺度として一般的なピアソン相関を用いた場合、投入された偽ユーザがハブとなること、及び、類似度尺度の変換によって偽ユーザがハブとなりにくくなることを示す図(その1及びその2)である。図8は、ユーザに関するN50値とデータ中心への類似度との関係を見るために、各々のユーザをプロットした散布図である。横軸はN50、縦軸はデータ中心への類似性を示す。図8より、投入された偽ユーザはデータ中心と高い類似度を持ち、ゆえにハブとなっていることが見て取れる。図9(a),(b),(c)は、N50値に係るユーザのヒストグラムである。図9(a)はピアソン相関(オリジナル)を、図9(b)はセンタリング変換後のピアソン相関を、図9(c)はコミュートタイムカーネル変換後のピアソン相関を、それぞれ類似度尺度として使用した場合のヒストグラムである。
次に、ハブ現象において、何故、CENT又はCTがロバスト性を提供するかを解析する。
FIGS. 8 and 9 show that when a general Pearson correlation is used as a similarity measure between users, the input false user becomes a hub, and the conversion of the similarity measure makes it difficult for the false user to become a hub. (No. 1 and No. 2) 8, in order to see the relation between the similarity to the N 50 value and the data center about the user is a scatter diagram plotting the respective user. The horizontal axis represents N 50 , and the vertical axis represents the similarity to the data center. From FIG. 8, it can be seen that the input fake user has a high degree of similarity with the data center and is therefore a hub. Figure 9 (a), (b) , (c) is a histogram of the user according to the N 50 value. Fig. 9 (a) used Pearson correlation (original), Fig. 9 (b) used Pearson correlation after centering transformation, and Fig. 9 (c) used Pearson correlation after commutation time kernel transformation as similarity measures. Is a histogram of the case.
Next, we analyze why CENT or CT provides robustness in the hub phenomenon.

図8の散布図において、最大961のN50値を持つハブユーザが存在すること、及び、N50値とデータ中心への類似度との間に強い相関が生じていることが見て取れる。誠実なユーザは〇、投入された偽ユーザは×で示されるが、投入された偽ユーザは平均的な誠実なユーザを模倣して作られているため、ユーザに関するデータ中心と高い類似度を持つ。それ故、図9(a)のN50分布から分かるように、多くの誠実なユーザと比較して、投入された偽ユーザは大きいN50値(最小465、最大961)を有するハブユーザ(インフルエンサ)となる。これに対して、CENT又はCT変換は、ハブ現象の発生を抑制する。結果的に、図9(b)に示すように、CENTでは、偽ユーザのN50値は最小101、最大156に減少した。また、図9(c)に示すように、CTを用いた場合は、最小0、最大4に減少した。このことは、オリジナルのピアソン相関をユーザ間類似度尺度として使用する場合と比較して、CENT又はCT変換後の類似度尺度を使用することにより、投入された偽ユーザは、他のユーザのkNNにさほど頻繁に表れなくなったことを明確に示している。つまり、偽ユーザは推薦アイテムの決定にさほど影響しないようになった(もはや投入された偽ユーザはインフルエンサではない)。 In the scatter diagram of FIG. 8, it can be seen that there are hub users having N 50 values of up to 961 and that there is a strong correlation between the N 50 values and the similarity to the data center. Authentic users are indicated by 〇, and input fake users are indicated by ×, but since the input fake users are imitated by average sincere users, they have a high degree of similarity with the data center on users. . Therefore, as can be seen from the N 50 distribution in FIG. 9 (a), compared to many sincere users, the input fake user is a hub user (influencer) with a large N 50 value (min 465, max 961). ) On the other hand, the C ENT or CT conversion suppresses the occurrence of the hub phenomenon. As a result, as shown in FIG. 9B, in C ENT , the N 50 value of the fake user decreased to a minimum of 101 and a maximum of 156. Further, as shown in FIG. 9 (c), when CT was used, it decreased to a minimum of 0 and a maximum of 4. This is because, compared to using the original Pearson correlation as a user-to-user similarity measure, by using the CENT or CT-transformed similarity measure, the input fake user can It clearly shows that kNN does not appear so often. In other words, fake users no longer affect the decision of recommended items (no longer fake users are influencers).

以上から、ハブ現象の発生を抑制するように類似度尺度を変換することにより、攻撃に対してロバスト、かつ、オリジナルな類似度尺度と同等又は良い予測精度を示す推薦システムを得られることが分かった。   From the above, it can be seen that by converting the similarity measure so as to suppress the occurrence of the hub phenomenon, it is possible to obtain a recommendation system that is robust against attacks and has the same or better prediction accuracy as the original similarity measure. It was.

〔結論〕
外部から偽ユーザを投入することによって推薦されるアイテムの変更を狙う攻撃に対し、ハブ現象を抑制することによって協調フィルタリング(CF)をロバストにする方法を提案した。
我々のアプローチは、ハブ現象はシリングアタックにより利用される主要因子の1つであるという基盤に立つものである。我々は、ハブデータの出現を抑制する2つの変換(センタリング及びコミュートタイムカーネルへの変換)を、一般的に使用される類似度尺度(コサイン類似度及びピアソン相関)に適用した。ムービーレンズデータセットを用いて、これらの変換が推薦システムを、推薦精度を劣化させることなく、シリングアタックに対してロバストにすることを示した。
[Conclusion]
We proposed a method to make collaborative filtering (CF) robust by suppressing the hub phenomenon against attacks aimed at changing recommended items by introducing fake users from outside.
Our approach rests on the basis that the hub phenomenon is one of the main factors used by shilling attacks. We applied two transforms that suppress the appearance of hub data (centering and commutation time kernel transformations) to commonly used similarity measures (cosine similarity and Pearson correlation). Using a movie lens data set, we have shown that these transformations make the recommendation system robust to shilling attacks without degrading recommendation accuracy.

以上により、本実施例によれば、偽ユーザを投入する攻撃を受けても、結果として攻撃の影響を受けることが少ない、アイテム推薦システム及びアイテム推薦方法を提供できる。   As described above, according to the present embodiment, it is possible to provide an item recommendation system and an item recommendation method that are less affected by an attack as a result even if an attack in which a fake user is introduced.

実施例1(ユーザベースCF)では、ユーザ間の類似度に基づいて評価値を予測したが、本態様ではアイテム間の類似度に基づいて評価値を予測する例について説明する。すなわち、実施例2(アイテムベースCF)では、対象アイテムと類似度の高い方からk個のアイテムを抽出し、そのk個のアイテムに対して対象ユーザが過去に与えた評価値の平均として、対象ユーザの対象アイテムに対する評価値を予測する例について説明する。   In Example 1 (user base CF), the evaluation value is predicted based on the similarity between users, but in this embodiment, an example in which the evaluation value is predicted based on the similarity between items will be described. That is, in Example 2 (item base CF), k items are extracted from the one having a higher degree of similarity to the target item, and the average of the evaluation values previously given to the k items by the target user is as follows: An example of predicting an evaluation value for a target item of a target user will be described.

実施例1に比して、類似度演算部13では、ユーザ間の類似度を演算する第1の類似度演算部131に代えて、アイテム間の類似度を演算する第2の類似度演算部132を使用する。アイテム間の類似度尺度として例えば全てのアイテムがアイテムに関するデータ中心に同等に類似になるものを使用する。近傍データ抽出部14では、第1の近傍データ抽出部141に代えて、第2の類似度演算部132にて演算されたアイテム間の類似度を用いて、ターゲットアイテムとの類似度の高い方からk個のアイテムを抽出する第2の近傍データ抽出部142を使用する。評価値予測部15では、第1の評価値予測部151に代えて、第2の近傍データ抽出部142にて抽出されたk個のアイテムに係る評価値を用いて、対象ユーザのターゲットアイテム対する未記入のセルに記入すべき評価値を予測する第2の評価値予測部152を使用する。その他の構成は実施例1と同様である。   Compared to the first embodiment, the similarity calculation unit 13 replaces the first similarity calculation unit 131 that calculates the similarity between users, and a second similarity calculation unit that calculates the similarity between items. 132 is used. As a similarity measure between items, for example, a measure in which all items are equally similar to the data center related to the item is used. The neighborhood data extraction unit 14 uses the similarity between items calculated by the second similarity calculation unit 132 instead of the first neighborhood data extraction unit 141, and uses the one with the higher similarity to the target item. The second neighborhood data extraction unit 142 is used to extract k items from. In the evaluation value prediction unit 15, instead of the first evaluation value prediction unit 151, the evaluation values for the k items extracted by the second neighborhood data extraction unit 142 are used for the target item of the target user. A second evaluation value predicting unit 152 that predicts an evaluation value to be entered in an unfilled cell is used. Other configurations are the same as those of the first embodiment.

実施例1に比して、類似度演算工程では、ユーザ間の類似度を演算する第1の類似度演算工程(S107)に代えて、アイテム間の類似度を演算する第2の類似度演算工程(S207)を行う。アイテム間の類似度尺度として例えば全てのアイテムがアイテムに関するデータ中心に同等に類似になるものを使用する。近傍データ抽出工程では、第1の近傍データ抽出工程(S108)に代えて、第2の類似度演算工程(S207)にて演算されたアイテム間の類似度を用いて、ターゲットアイテムとの類似度の高い方からk個のアイテムを抽出する第2の近傍データ抽出工程(S208)を行う。評価値予測工程では、第1の評価値予測工程(S109)に代えて、第2の近傍データ抽出工程(S207)にて抽出されたk個のアイテムに係る評価値を用いて、対象ユーザのターゲットアイテムに対する未記入のセルに記入すべき評価値を予測する第2の評価値予測工程(S209)を行う。その他の処理フローは実施例1と同様である。
このように、対象アイテムと類似度の高い方からk個のアイテムを抽出し、k個のアイテムの評価値の(重み付き)平均としてユーザの評価値を予測する。
Compared to the first embodiment, in the similarity calculation step, instead of the first similarity calculation step (S107) for calculating the similarity between users, the second similarity calculation for calculating the similarity between items is performed. Step (S207) is performed. As a similarity measure between items, for example, a measure in which all items are equally similar to the data center related to the item is used. In the neighborhood data extraction step, instead of the first neighborhood data extraction step (S108), the similarity with the target item is calculated using the similarity between items calculated in the second similarity calculation step (S207). A second neighborhood data extraction step (S208) for extracting k items from the higher one is performed. In the evaluation value prediction step, instead of the first evaluation value prediction step (S109), the evaluation values of the k items extracted in the second neighborhood data extraction step (S207) are used, and the target user's A second evaluation value prediction step (S209) for predicting an evaluation value to be entered in an unfilled cell for the target item is performed. Other processing flows are the same as those in the first embodiment.
In this way, k items are extracted from the one having a higher degree of similarity to the target item, and the evaluation value of the user is predicted as the (weighted) average of the evaluation values of the k items.

本実施例によれば、実施例1と同様に、偽ユーザを投入する攻撃を受けても、結果として攻撃の影響を受けることが少ない、アイテム推薦システム及びアイテム推薦方法を提供できる。   According to the present embodiment, as in the first embodiment, an item recommendation system and an item recommendation method that are less affected by an attack as a result even when subjected to an attack that introduces a fake user can be provided.

以上の実施例では、偽ユーザを投入する攻撃について説明したが、攻撃が無いときでも、高次元又は大規模データセットには元来ハブデータが存在し易い。この場合でも、ハブの出現を抑制するように類似度尺度を変換すれば、インフルエンサとなるデータの出現を抑制できる。これにより、本来推薦したいアイテムを推薦することが可能になる(ニース達による研究報告、前述の〔攻撃シリングアタックとハブ現象との関係〕に記載、を参照)。
本実施例においては、偽ユーザ投入による攻撃が無いときでも、インフルエンサによる推薦のバイアスを受けない、アイテム推薦システム及びアイテム推薦方法を提供できる。
In the above embodiment, an attack in which a fake user is input has been described. However, even when there is no attack, hub data originally tends to exist in a high-dimensional or large-scale data set. Even in this case, if the similarity measure is converted so as to suppress the appearance of the hub, the appearance of the data serving as the influencer can be suppressed. This makes it possible to recommend the item that is originally recommended (see the research report by Nice et al., Described in [Relationship between Attack Shilling Attack and Hub Phenomenon] above).
In the present embodiment, it is possible to provide an item recommendation system and an item recommendation method that are not subject to recommendation bias by an influencer even when there is no attack due to fake user input.

以上の実施例では、ユーザ毎に嗜好に合うアイテムを推薦する例について説明したが、大勢の人、大衆に広告を出す場合を想定してみる。もし、平均的なユーザ向けに広告するのが良いと仮定する。この場合、各ユーザ間の類似度を演算する代わりに、平均的な評価値を有する仮のユーザを生成し、当該仮のユーザについて、他のユーザとの類似度を演算して、k人のユーザを抽出し、評価値を予測すれば、大衆を対象としてアイテムを推薦すると好適である。
本実施例においても、偽ユーザを投入する攻撃を受けても、結果として攻撃の影響を受けることが少ない、アイテム推薦システム及びアイテム推薦方法を提供できる。
In the above embodiment, an example of recommending an item that suits the taste for each user has been described, but it is assumed that an advertisement is made to a large number of people and the general public. Suppose that it is better to advertise for the average user. In this case, instead of calculating the similarity between the users, a temporary user having an average evaluation value is generated, and the similarity with other users is calculated for the temporary user, and k users If a user is extracted and an evaluation value is predicted, it is preferable to recommend an item for the masses.
Also in the present embodiment, an item recommendation system and an item recommendation method can be provided that are less affected by an attack as a result even when subjected to an attack that introduces a fake user.

また、本発明は、以上の実施例のフローチャート等に記載のアイテム推薦方法をコンピュータに実行させるためのプログラムとしても実現可能である。プログラムはアイテム推薦システムの記憶部に蓄積して使用してもよく、外付けの記憶装置に蓄積して使用してもよく、インターネットからダウンロードして使用しても良い。また、当該プログラムを記録した記録媒体としても実現可能である。   The present invention can also be realized as a program for causing a computer to execute the item recommendation method described in the flowcharts of the above embodiments. The program may be stored and used in the storage unit of the item recommendation system, stored in an external storage device, or downloaded from the Internet and used. Moreover, it is realizable also as a recording medium which recorded the said program.

以上、本発明の実施の形態について説明したが、実施の形態は以上の例に限られるものではなく、本発明の趣旨を逸脱しない範囲で、種々の変更を加え得ることは明白である。   Although the embodiment of the present invention has been described above, the embodiment is not limited to the above example, and it is obvious that various modifications can be made without departing from the spirit of the present invention.

例えば、アイテム及び評価値については、本明細書中に列挙しなかったアイテム及び評価値についても定量的に評価可能であれば本発明を適用できる。また、類似度尺度については、パラメータを用いて調整可能としても良い。アイテム推薦については、アイテム名に添えて画像、説明文を追記可能である。また、推薦は、各ユーザがウェブページにアクセスした時のほか、各ユーザへのメールからアクセス可能にしても良く、メールで配信することも可能である。また、評価マトリックスの寸法、k近傍法のパラメータkは目的、状況に応じて適宜定めることができる。   For example, for items and evaluation values, the present invention can be applied if items and evaluation values not listed in the present specification can be evaluated quantitatively. The similarity scale may be adjustable using parameters. For item recommendation, images and explanations can be added to the item name. In addition, the recommendation may be accessible by mail to each user in addition to when each user accesses the web page, and can also be distributed by mail. The dimensions of the evaluation matrix and the parameter k of the k-nearest neighbor method can be appropriately determined according to the purpose and situation.

本発明はユーザベースあるいはアイテムベースに代表される協調フィルタリングに基づく推薦システムに利用される。   The present invention is used in a recommendation system based on collaborative filtering represented by a user base or an item base.

1 アイテム推薦システム
10 パーソナルコンピュータ(PC)
11 登録部
12 評価部
13 類似度演算部
14 近傍データ抽出部
15 評価値予測部
16 アイテム推薦部
17 制御部
18 表示部
19 入出力部
20 記憶部
21 評価マトリックス記憶部
22 ハブデータを抑制した類似度尺度記憶部
23 近傍データ記憶部
24 推薦アイテム記憶部
111 ユーザ登録部
112 アイテム登録部
131 第1の類似度演算部
132 第2の類似度演算部
135 類似度尺度変換部
141 第1の近傍データ記憶部
142 第2の近傍データ記憶部
151 第1の評価値予測部
152 第2の評価値予測部
231 近傍ユーザ記憶部
232 近傍アイテム記憶部
i アイテム
R 評価マトリクス
R(u,i) 評価値
u ユーザ
1 Item recommendation system 10 Personal computer (PC)
DESCRIPTION OF SYMBOLS 11 Registration part 12 Evaluation part 13 Similarity calculation part 14 Neighborhood data extraction part 15 Evaluation value prediction part 16 Item recommendation part 17 Control part 18 Display part 19 Input / output part 20 Storage part 21 Evaluation matrix storage part 22 Similarity which suppressed hub data Degree scale storage unit 23 Neighborhood data storage unit 24 Recommended item storage unit 111 User registration unit 112 Item registration unit 131 First similarity calculation unit 132 Second similarity calculation unit 135 Similarity scale conversion unit 141 First neighborhood data Storage unit 142 Second neighborhood data storage unit 151 First evaluation value prediction unit 152 Second evaluation value prediction unit 231 Neighborhood user storage unit 232 Neighborhood item storage unit i Item R Evaluation matrix R (u, i) Evaluation value u User

Claims (10)

ユーザのアイテムに係る評価値を記入する評価マトリックスを記憶する評価マトリックス記憶部と;
ハブの出現を抑制する類似度尺度を用いてユーザ間の類似度を演算する第1の類似度演算部と;
前記第1の類似度演算部にて演算された類似度を用いて、前記対象ユーザとの類似度の高い方からk人のユーザを抽出する第1の近傍データ抽出部と;
前記第1の近傍データ抽出部にて抽出されたk人のユーザのアイテムに係る評価値を用いて、前記対象ユーザに係る未記入のセルに記入すべき評価値を予測する第1の評価値予測部と;
前記第1の評価値予測部にて予測された評価値の高いアイテムから前記対象ユーザに推薦すべきアイテムを抽出する推薦アイテム抽出して、前記対象ユーザに推薦するアイテム推薦部とを備える;
アイテム推薦システム。
An evaluation matrix storage unit for storing an evaluation matrix for entering an evaluation value related to the user's item;
A first similarity calculator that calculates the similarity between users using a similarity measure that suppresses the appearance of a hub;
A first neighborhood data extraction unit that extracts k users from the one having a higher similarity to the target user by using the similarity calculated by the first similarity calculation unit;
A first evaluation value for predicting an evaluation value to be entered in an unfilled cell relating to the target user using an evaluation value relating to an item of k users extracted by the first neighborhood data extraction unit With a predictor;
An item recommendation unit that extracts a recommended item for extracting an item to be recommended to the target user from items having a high evaluation value predicted by the first evaluation value prediction unit and recommends the item to the target user;
Item recommendation system.
ユーザのアイテムに係る評価値を記入する評価マトリックスを記憶する評価マトリックス記憶部と;
ハブの出現を抑制する類似度尺度を用いてアイテム間の類似度を演算する第2の類似度演算部と;
前記第2の類似度演算部にて演算された類似度を用いて、前記対象アイテムとの類似度の高い方からk個のアイテムを抽出する第2の近傍データ抽出部と;
前記第2の近傍データ抽出部にて抽出されたk個のアイテムに係るユーザの評価値を用いて、前記対象ユーザに係る未記入のセルに記入すべき評価値を予測する第2の評価値予測部と;
前記第2の評価値予測部にて予測された評価値の高いアイテムから前記対象ユーザに推薦すべきアイテムを抽出して、前記対象ユーザに推薦するアイテム推薦部とを備える;
アイテム推薦システム。
An evaluation matrix storage unit for storing an evaluation matrix for entering an evaluation value related to the user's item;
A second similarity calculator that calculates the similarity between items using a similarity measure that suppresses the appearance of a hub;
A second neighborhood data extraction unit that extracts k items from a higher similarity with the target item using the similarity calculated by the second similarity calculation unit;
A second evaluation value for predicting an evaluation value to be entered in an unfilled cell relating to the target user, using the user's evaluation value relating to the k items extracted by the second neighborhood data extraction unit With a predictor;
An item recommendation unit that extracts an item to be recommended to the target user from items having a high evaluation value predicted by the second evaluation value prediction unit and recommends the item to the target user;
Item recommendation system.
前記ハブの出現を抑制する類似度尺度を記憶する類似度尺度記憶部を備える;
請求項1又は請求項2に記載のアイテム推薦システム。
A similarity measure storage unit for storing a similarity measure for suppressing the appearance of the hub;
The item recommendation system according to claim 1 or 2.
一般的な類似度尺度に基づく類似度を前記ハブの出現を抑制する類似度尺度に基づく類似度に変換する類似度尺度変換部を備える;
請求項1ないし請求項3のいずれか1項に記載のアイテム推薦システム。
A similarity scale conversion unit that converts similarity based on a general similarity scale into similarity based on a similarity scale that suppresses the appearance of the hub;
The item recommendation system according to any one of claims 1 to 3.
前記対象ユーザに係る未記入のセルに記入すべき評価値を予測するに際し、前記記入すべき評価値として、重み付けをした平均値を用いる;
請求項1ないし請求項4のいずれか1項に記載のアイテム推薦システム。
A weighted average value is used as the evaluation value to be entered when predicting an evaluation value to be entered in an unfilled cell of the target user;
The item recommendation system according to any one of claims 1 to 4.
ユーザのアイテムに係る評価値を記入する評価マトリックスを記憶する評価マトリックス記憶工程と;
ハブの出現を抑制する類似度尺度を用いてユーザ間の類似度を演算する第1の類似度演算工程と;
前記第1の類似度演算工程にて演算された類似度を用いて、前記対象ユーザとの類似度の高い方からk人のユーザを抽出する第1の近傍データ抽出工程と;
前記第1の近傍データ抽出工程にて抽出されたk人のユーザのアイテムに係る評価値を用いて、前記対象ユーザに係る未記入のセルに記入すべき評価値を予測する第1の評価値予測工程と;
前記第1の評価値予測工程にて予測された評価値の高いアイテムから前記対象ユーザに推薦すべきアイテムを抽出して、前記対象ユーザに推薦するアイテム推薦工程とを備える;
アイテム推薦方法。
An evaluation matrix storage step of storing an evaluation matrix for entering an evaluation value relating to the user's item;
A first similarity calculation step of calculating a similarity between users using a similarity measure that suppresses the appearance of a hub;
A first neighborhood data extraction step of extracting k users from the higher similarity with the target user using the similarity calculated in the first similarity calculation step;
A first evaluation value for predicting an evaluation value to be written in an unfilled cell related to the target user using an evaluation value related to an item of k users extracted in the first neighborhood data extraction step A prediction process;
An item recommendation step of extracting an item to be recommended to the target user from items having a high evaluation value predicted in the first evaluation value prediction step and recommending the item to the target user;
Item recommendation method.
ユーザのアイテムに係る評価値を記入する評価マトリックスを記憶する評価マトリックス記憶工程と;
ハブの出現を抑制する類似度尺度を用いてアイテム間の類似度を演算する第2の類似度演算工程と;
前記第2の類似度演算工程にて演算された類似度を用いて、前記対象アイテムとの類似度の高い方からk個のアイテムを抽出する第2の近傍データ抽出工程と;
前記第2の近傍データ抽出工程にて抽出されたk個のアイテムに係るユーザの評価値を用いて、前記対象ユーザに係る未記入のセルに記入すべき評価値を予測する第2の評価値予測工程と;
前記第2の評価値予測工程にて予測された評価値の高いアイテムから前記対象ユーザに推薦すべきアイテムを抽出して、前記対象ユーザに推薦するアイテム推薦工程とを備える;
アイテム推薦方法。
An evaluation matrix storage step of storing an evaluation matrix for entering an evaluation value relating to the user's item;
A second similarity calculation step of calculating a similarity between items using a similarity measure that suppresses the appearance of a hub;
A second neighborhood data extraction step of extracting k items from a higher similarity with the target item using the similarity calculated in the second similarity calculation step;
A second evaluation value for predicting an evaluation value to be entered in an unfilled cell relating to the target user, using the user's evaluation value relating to the k items extracted in the second neighborhood data extraction step A prediction process;
An item recommendation step of extracting an item to be recommended to the target user from items having a high evaluation value predicted in the second evaluation value prediction step and recommending the item to the target user;
Item recommendation method.
一般的な類似度尺度に基づく類似度を前記ハブの出現を抑制する類似度尺度に基づく類似度に変換する類似度尺度変換工程を備える;
請求項6又は請求項7に記載のアイテム推薦方法。
A similarity scale conversion step of converting similarity based on a general similarity scale into similarity based on a similarity scale that suppresses the appearance of the hub;
The item recommendation method according to claim 6 or 7.
請求項6ないし請求項8のいずれか1項に記載のアイテム推薦方法をコンピュータに実行させるためのプログラム。   The program for making a computer perform the item recommendation method of any one of Claim 6 thru | or 8. 請求項9に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。   A computer-readable recording medium on which the program according to claim 9 is recorded.
JP2015147269A 2015-07-24 2015-07-24 Item recommendation system and item recommendation method Active JP6566515B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015147269A JP6566515B2 (en) 2015-07-24 2015-07-24 Item recommendation system and item recommendation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015147269A JP6566515B2 (en) 2015-07-24 2015-07-24 Item recommendation system and item recommendation method

Publications (2)

Publication Number Publication Date
JP2017027480A JP2017027480A (en) 2017-02-02
JP6566515B2 true JP6566515B2 (en) 2019-08-28

Family

ID=57946662

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015147269A Active JP6566515B2 (en) 2015-07-24 2015-07-24 Item recommendation system and item recommendation method

Country Status (1)

Country Link
JP (1) JP6566515B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023161261A (en) * 2022-04-25 2023-11-07 株式会社Zozo Information processing device, information processing method, and information processing program

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108470052B (en) * 2018-03-12 2021-03-19 南京邮电大学 Anti-trust attack recommendation algorithm based on matrix completion
CN109214772B (en) * 2018-08-07 2024-01-16 平安科技(深圳)有限公司 Project recommendation method, device, computer equipment and storage medium
CN109064293B (en) * 2018-08-09 2023-04-18 平安科技(深圳)有限公司 Commodity recommendation method and device, computer equipment and storage medium
CN111581503A (en) * 2020-04-26 2020-08-25 中国工商银行股份有限公司 Fuzzy K-neighborhood recommendation method and device, electronic equipment and storage medium
CN112364064A (en) * 2020-08-27 2021-02-12 南京信息职业技术学院 Movie recommendation system algorithm for improving prediction accuracy by using dynamic deviation value
JP2022105953A (en) 2021-01-05 2022-07-15 富士通株式会社 Information processing program, information processing method, and information processing device
CN112785331A (en) * 2021-01-07 2021-05-11 之江实验室 Injection attack resistant robust recommendation method and system combining evaluation text
CN112862206B (en) * 2021-03-02 2023-03-24 苏州大学 Recommendation method and system based on subspace division
CN116308214B (en) * 2023-05-16 2023-08-15 北京天工异彩影视科技有限公司 Film and television whole-process production management system
CN116932923B (en) * 2023-09-19 2023-12-08 江西财经大学 Project recommendation method combining behavior characteristics and triangular collaboration metrics

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5483576B2 (en) * 2010-06-08 2014-05-07 日本電信電話株式会社 Recommended item filtering method and recommended item filtering program
JP6696568B2 (en) * 2016-05-26 2020-05-20 富士通株式会社 Item recommendation method, item recommendation program and item recommendation device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023161261A (en) * 2022-04-25 2023-11-07 株式会社Zozo Information processing device, information processing method, and information processing program
JP7466585B2 (en) 2022-04-25 2024-04-12 株式会社Zozo Information processing device, information processing method, and information processing program

Also Published As

Publication number Publication date
JP2017027480A (en) 2017-02-02

Similar Documents

Publication Publication Date Title
JP6566515B2 (en) Item recommendation system and item recommendation method
Savage et al. Detection of opinion spam based on anomalous rating deviation
Martin et al. Why experience matters to privacy: How context‐based experience moderates consumer privacy expectations for mobile applications
Seminario et al. Attacking item-based recommender systems with power items
CN110210617A (en) A kind of confrontation sample generating method and generating means based on feature enhancing
Oh et al. Can you trust online ratings? A mutual reinforcement model for trustworthy online rating systems
JPWO2008139856A1 (en) Risk model correction system, risk model correction method, and risk model correction program
Ivanova et al. How can online marketplaces reduce rating manipulation? A new approach on dynamic aggregation of online ratings
Anelli et al. A study of defensive methods to protect visual recommendation against adversarial manipulation of images
Mink et al. {DeepPhish}: Understanding user trust towards artificially generated profiles in online social networks
Leonidou et al. Drivers, outcomes, and moderators of consumer intention to buy organic goods: Meta-analysis, implications, and future agenda
Díaz-Ordaz et al. Handling missing values in cost effectiveness analyses that use data from cluster randomized trials
Chan et al. Varying spread fuzzy regression for affective quality estimation
CN107885754B (en) Method and device for extracting credit variable from transaction data based on LDA model
Wilson et al. Evil twins: Modeling power users in attacks on recommender systems
Alfarra et al. On the robustness of quality measures for gans
Vollrath et al. Reciprocal trade agreements: Impacts on bilateral trade expansion and contraction in the world agricultural marketplace
Korhonen Assessing personally perceived image quality via image features and collaborative filtering
Judge et al. Deepfakes, Counterfeits, and Personality
Whyte Power and predation in cyberspace
Ramesh et al. Secure recommendation system for E-commerce website
Hara et al. Reducing hubness: A cause of vulnerability in recommender systems
Yang A robust recommended system based on attack detection
Trevathan et al. Detecting multiple seller collusive shill bidding
JP5692087B2 (en) Information processing device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180717

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190628

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190726

R150 Certificate of patent or registration of utility model

Ref document number: 6566515

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250