CN102779131B - Collaborative filtering recommending method based on multiple-similarity of users - Google Patents

Collaborative filtering recommending method based on multiple-similarity of users Download PDF

Info

Publication number
CN102779131B
CN102779131B CN201110121997.2A CN201110121997A CN102779131B CN 102779131 B CN102779131 B CN 102779131B CN 201110121997 A CN201110121997 A CN 201110121997A CN 102779131 B CN102779131 B CN 102779131B
Authority
CN
China
Prior art keywords
mrow
msub
users
user
type
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
CN201110121997.2A
Other languages
Chinese (zh)
Other versions
CN102779131A (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.)
Tongji University
Original Assignee
Tongji University
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 Tongji University filed Critical Tongji University
Priority to CN201110121997.2A priority Critical patent/CN102779131B/en
Publication of CN102779131A publication Critical patent/CN102779131A/en
Application granted granted Critical
Publication of CN102779131B publication Critical patent/CN102779131B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

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

Abstract

The invention relates to a collaborative filtering recommending method based on multiple-similarity of users. The collaborative filtering recommending method mainly comprises the following steps of firstly determining multiple types included in projects to be recommended in advance, secondly respectively calculating multiple prediction scores of the users based on the types of the projects, more accurately describing similarity degree of favorite of the users on different types of the projects, and getting weighted average of the calculated various prediction scores to be used as final prediction scores of the projects to be recommended to be provided for an existing user, thus effectively improving the accuracy of prediction score.

Description

Collaborative filtering recommendation method based on multiple similarities among users
Technical Field
The invention relates to a collaborative filtering recommendation method, in particular to a collaborative filtering recommendation method based on multi-similarity among users.
Background
The coming of the internet era leads people to increase an extremely important way for obtaining information. The rapid development of internet technology also drives the total amount of information on the internet to increase at an exponential rate, so that the problem of internet information overload is becoming more serious. The user is faced with vast amount of information like smoke and often becomes inapplicable, and the information needed by the user cannot be quickly found from the vast amount of information. As a technical means for effectively improving the problem of internet information overload, the recommendation system is receiving more and more attention from the industry, and since being proposed in the middle of the last 90 th century, the recommendation system has gained great attention both in academic circles and in practical applications. The recommendation system learns the user's preference by learning the user's behavior, so that the user can be more pertinently recommended the content that they may be interested in.
In the existing recommendation algorithms, the collaborative filtering recommendation algorithm is relatively mature, and is also a type of recommendation algorithm which is widely used in practical application. Most of the existing collaborative filtering recommendation algorithms can be divided into three steps: (1) calculating the grading similarity between users according to the historical grading records of the users; (2) selecting a plurality of users with the highest similarity with the current user as nearest neighbors, and predicting the score of the current user for a certain project according to the actual scores of the nearest neighbors for the project; (3) and selecting a plurality of items with the highest prediction scores as recommendation results to be provided for the current user. The collaborative filtering recommendation algorithm generates recommendations based on historical scoring of the user, theoretically without knowing the user's personal information and without knowing the content information of the items. Therefore, the collaborative filtering recommendation algorithm can obtain similar recommendation quality for any kind of users and items, and the characteristic makes the collaborative filtering recommendation algorithm particularly suitable for recommending items which are difficult to process by other types of recommendation algorithms such as movies and music.
It can be seen that the basic idea of the collaborative filtering recommendation algorithm is to predict the score of a certain item by other users similar to the current user through the actual scores of the item. "similar" users refer to users with similar interests and tastes. Therefore, similar users tend to give similar scoring results when scoring items, which is also the main basis for scoring prediction by collaborative filtering. But daily experience tells people that people tend to have different degrees of preference for different types of things. That is, two people interested in a certain kind of things at the same time may have completely different preference degrees for another kind of things. This is reflected in the fact that the two people score items of one type relatively closely, but score items of another type may differ significantly. Therefore, from this point of view, it is not reasonable for the conventional collaborative filtering recommendation algorithm to rely on only a single similarity measure to measure the similarity of the two users' preferences for all types of items.
Therefore, how to provide a collaborative filtering recommendation method capable of effectively improving recommendation quality to overcome the problems in the prior art is a subject to be overcome in the industry at present.
Disclosure of Invention
In view of the foregoing disadvantages of the prior art, an object of the present invention is to provide a collaborative filtering recommendation method based on multiple similarities between users, so as to overcome the problem that the similarity between users for different item types cannot be accurately described only by using a single similarity in the conventional collaborative filtering recommendation algorithm.
To achieve the above object, the present invention provides a collaborative filtering recommendation method based on multiple similarities between users, for providing a prediction score of an item to be recommended to a first user, the method comprising: (1) determining a plurality of types contained in an item to be recommended; (2) defining as the second user the other at least one user participating in the scored project belonging to each determined type in common with the first user; (3) calculating similarity of each determined type between the first user and each of the plurality of second users respectively by adopting correlation similarity or cosine similarity; (4) selecting K users with the highest similarity to the first user aiming at each determined type from the plurality of second users as nearest neighbor users, and respectively calculating a plurality of prediction scores of each type included by the first user based on the items to be recommended according to the calculated similarity of each type between the first user and the K nearest neighbor users and the actual scores of the K nearest neighbor users for the items belonging to the determined type; and (5) taking a weighted average of the plurality of calculated prediction scores and providing the result of the weighted average as a prediction score of the item to be recommended to the first user.
Specifically, in one embodiment of the present invention, the calculation formula for calculating the similarity between the first user and one of the second users for each type determined in step (1) by using the correlation similarity in step (3) is as follows:
<math> <mrow> <msub> <mi>sim</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msub> <mrow> <mo>(</mo> <mi>x</mi> <mo>,</mo> <mi>y</mi> <mo>)</mo> </mrow> <mo>=</mo> <munder> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>&Element;</mo> <msubsup> <mi>I</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>y</mi> </mrow> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> </mrow> </munder> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>-</mo> <mover> <msubsup> <mi>r</mi> <mi>x</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mrow> <mi>y</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>-</mo> <mover> <msubsup> <mi>r</mi> <mi>y</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <mo>/</mo> <mrow> <mo>(</mo> <msqrt> <munder> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>&Element;</mo> <msubsup> <mi>I</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>y</mi> </mrow> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> </mrow> </munder> <msup> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>-</mo> <mover> <msubsup> <mi>r</mi> <mi>x</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <mn>2</mn> </msup> </msqrt> <msqrt> <munder> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>&Element;</mo> <msubsup> <mi>I</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>y</mi> </mrow> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> </mrow> </munder> <msup> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mrow> <mi>y</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>-</mo> <mover> <msubsup> <mi>r</mi> <mi>y</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <mn>2</mn> </msup> </msqrt> <mo>)</mo> </mrow> </mrow> </math>
wherein x represents a first user; y represents a second user; t is tmRepresenting the type determined in step (1);co-scored for users x and y as belonging to type tm(tmE.g. T, 1 is more than or equal to m and less than or equal to k);respectively representing users x and y as belonging to type tmAverage score of the item of (a).
In another embodiment of the present invention, the cosine similarity used in step (3) above to calculate the similarity between the first user and one of the second users for each type determined in step (1) is as follows:
wherein x represents a first user; y represents a second user; t is tmRepresenting the type determined by step (1);co-scored for users x and y as belonging to type tm(tmE.g. T, 1 is more than or equal to m and less than or equal to k);andrespectively representing users x and y scored as belonging to type tmA collection of items of (a);respectively representing users x and y as belonging to type tmAverage score of the item of (a).
And in the step (4), the first user calculates the prediction score based on each type included in the item to be recommended by using the following formula:
wherein u represents a first user; i represents an item to be recommended;representing a set of K nearest neighbor users; t is tijRepresenting the jth type contained in the item i to be recommended, wherein j is more than or equal to 1 and less than or equal to s, and s is the number of types determined in the step (1);indicating that the nearest neighbor user u' is of type tiAverage score of the item of (a). The prediction score of the item to be recommended in the step (5) is calculated by adopting the following formula:
wherein u represents a first user; i represents an item to be recommended; t is tijRepresents the jth type contained in the item i to be recommended, and j is more than or equal to 1 and less than or equal to s, and s isThe number of types determined by step (1); lambda [ alpha ]jRepresents a weight, andrepresenting users u scored as belonging to type tijThe number of items of (a) is,the mark of the user belongs to the type set TiNumber of items of any one type, Ti={t12,t12,...,tisF.i. the set of types included in the item to be recommended, and
the following describes advantageous technical effects of the present invention in combination with the above technical solutions. Compared with the prior art, the method and the device have the advantages that the similarity of the users to the items of different types is respectively described by calculating the similarity of a plurality of independent scores of the users to different item types, so that more accurate prediction scores of the users to the unscored items are obtained, and the recommendation quality is effectively improved.
Drawings
Fig. 1 is a schematic operation flow diagram of a collaborative filtering recommendation method based on multiple similarities between users according to the present invention.
[ description of main element symbols ]
S10-S14
Detailed Description
The embodiments of the present invention are described below with specific examples, and other advantages and effects of the present invention will be easily understood by those skilled in the art from the disclosure of the present specification. The invention is capable of other and different embodiments and its several details are capable of modification in various other respects, all without departing from the spirit and scope of the present invention.
Please refer to fig. 1, which is a flowchart illustrating an operation of the collaborative filtering recommendation method based on multiple similarities between users according to the present invention. The collaborative filtering recommendation method based on multiple similarities between users is used for providing the prediction score of the item to be recommended to the first user, and the specific operation steps of the collaborative filtering recommendation method based on multiple similarities between users are described in detail below.
As shown in fig. 1, step S10 is executed to determine a plurality of types included in the item to be recommended. Next, step S11 is performed.
In step S11, the at least one other user that participated in the scored items belonging to each determined type in common with the first user is defined as the second user. Next, step S12 is performed.
In step S12, the similarity between the first user and each of the plurality of second users for each determined type is calculated using the correlation similarity or the cosine similarity, respectively. To more specifically describe the similarity calculation method, the following description will take the first user as x and one of the second users as y, respectively, regarding the correlation similarity and the cosine similarity.
In terms of the correlation similarity, the calculation formula of the similarity between the first user x and the second user y for each type determined by step S10 is as shown in equation (1):
<math> <mrow> <msub> <mi>sim</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msub> <mrow> <mo>(</mo> <mi>x</mi> <mo>,</mo> <mi>y</mi> <mo>)</mo> </mrow> <mo>=</mo> <munder> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>&Element;</mo> <msubsup> <mi>I</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>y</mi> </mrow> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> </mrow> </munder> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>-</mo> <mover> <msubsup> <mi>r</mi> <mi>x</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mrow> <mi>y</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>-</mo> <mover> <msubsup> <mi>r</mi> <mi>y</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <mo>/</mo> <mrow> <mo>(</mo> <msqrt> <munder> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>&Element;</mo> <msubsup> <mi>I</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>y</mi> </mrow> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> </mrow> </munder> <msup> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>-</mo> <mover> <msubsup> <mi>r</mi> <mi>x</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <mn>2</mn> </msup> </msqrt> <msqrt> <munder> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>&Element;</mo> <msubsup> <mi>I</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>y</mi> </mrow> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> </mrow> </munder> <msup> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mrow> <mi>y</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>-</mo> <mover> <msubsup> <mi>r</mi> <mi>y</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <mn>2</mn> </msup> </msqrt> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </math>
wherein, tmIndicates the type determined in step S10;co-scored for users x and y as belonging to type tm(tmE.g. T, 1 is more than or equal to m and less than or equal to k);respectively representing users x and y as belonging to type tmAverage score of the item of (a).
In terms of cosine similarity, the calculation formula of the similarity between the first user x and the second user y for each type determined by step S10 is as shown in equation (2):
<math> <mrow> <msub> <mi>sim</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msub> <mrow> <mo>(</mo> <mi>x</mi> <mo>,</mo> <mi>y</mi> <mo>)</mo> </mrow> <mo>=</mo> <munder> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>&Element;</mo> <msubsup> <mi>I</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>y</mi> </mrow> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> </mrow> </munder> <msub> <mi>r</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <msub> <mi>r</mi> <mrow> <mi>y</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>/</mo> <mrow> <mo>(</mo> <msqrt> <munder> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>&Element;</mo> <msubsup> <mi>I</mi> <mi>x</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> </mrow> </munder> <msubsup> <mi>r</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>i</mi> </mrow> <mn>2</mn> </msubsup> </msqrt> <msqrt> <munder> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>&Element;</mo> <msubsup> <mi>I</mi> <mi>y</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> </mrow> </munder> <msubsup> <mi>r</mi> <mrow> <mi>y</mi> <mo>,</mo> <mi>i</mi> </mrow> <mn>2</mn> </msubsup> </msqrt> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>2</mn> <mo>)</mo> </mrow> </mrow> </math>
wherein, tmIndicates the type determined by step S10;co-scored for users x and y as belonging to type tm(tmE.g. T, 1 is more than or equal to m and less than or equal to k);andrespectively representing users x and y scored as belonging to type tmA collection of items of (a);respectively representing users x and y as belonging to type tmAverage score of the item of (a).
Next, step S13 is performed.
In step S13, K users with the highest similarity to the first user with respect to each type determined in step S10 are selected from the plurality of second users as nearest neighbor users, and a plurality of predicted scores of the first user based on each type included in the items to be recommended are calculated respectively according to the calculated similarities between the first user and the K nearest neighbor users with respect to each determined type and the actual scores of the items belonging to the determined type according to the K nearest neighbor users. Next, step S14 is performed.
In step S14, the calculated plurality of predicted scores are weighted-averaged, and the result of the weighted-averaging is provided to the first user as the predicted score of the item to be recommended.
To more clearly illustrate how the final prediction score provided to the first user is calculated based on the similarity (the first user and any nearest neighbor user) calculated in step S12 for the types of the item to be recommended, in conjunction with steps S13 and S14, the following is to use the first user as u, the item to be recommended as i contains S types, and the jth type contained in the item to be recommended as tij(1. ltoreq. j. ltoreq. s) is described as an example.
First, in step S13, a first user u is calculated based on one of the types t contained in the item iijThe specific calculation process of the prediction score of (2) is shown in equation (3):
<math> <mrow> <msubsup> <mi>R</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> <msub> <mi>t</mi> <mi>ij</mi> </msub> </msubsup> <mo>=</mo> <mover> <msubsup> <mi>r</mi> <mi>u</mi> <msub> <mi>t</mi> <mi>i</mi> </msub> </msubsup> <mo>&OverBar;</mo> </mover> <mo>+</mo> <munder> <mi>&Sigma;</mi> <mrow> <msup> <mi>u</mi> <mo>'</mo> </msup> <mo>&Element;</mo> <msubsup> <mi>U</mi> <mi>K</mi> <msub> <mi>t</mi> <mi>ij</mi> </msub> </msubsup> </mrow> </munder> <msub> <mi>sim</mi> <msub> <mi>t</mi> <mi>ij</mi> </msub> </msub> <mrow> <mo>(</mo> <mi>u</mi> <mo>,</mo> <msup> <mi>u</mi> <mo>'</mo> </msup> <mo>)</mo> </mrow> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mrow> <msup> <mi>u</mi> <mo>'</mo> </msup> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>-</mo> <mover> <msubsup> <mi>r</mi> <msup> <mi>u</mi> <mo>'</mo> </msup> <msub> <mi>t</mi> <mi>i</mi> </msub> </msubsup> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <mo>/</mo> <munder> <mi>&Sigma;</mi> <mrow> <msup> <mi>u</mi> <mo>'</mo> </msup> <mo>&Element;</mo> <msubsup> <mi>U</mi> <mi>K</mi> <msub> <mi>t</mi> <mi>ij</mi> </msub> </msubsup> </mrow> </munder> <msub> <mi>sim</mi> <msub> <mi>t</mi> <mi>ij</mi> </msub> </msub> <mrow> <mo>(</mo> <mi>u</mi> <mo>,</mo> <msup> <mi>u</mi> <mo>'</mo> </msup> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>3</mn> <mo>)</mo> </mrow> </mrow> </math>
wherein,representing a set of K nearest neighbor users; simtij(u, u') denotes that one of the first user and the k nearest neighbor users is for type tijThe similarity of (2);indicating that the nearest neighbor user u' is of type tiAverage score of the item of (a).
By analogy, s prediction scores are obtained respectivelyFinally, as shown in equation (4), a weighted average is taken of the S types of prediction scores determined in step S10 as the final prediction score of the item i to be recommended:
<math> <mrow> <msub> <mi>R</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>s</mi> </munderover> <msub> <mi>&lambda;</mi> <mi>j</mi> </msub> <msubsup> <mi>R</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> <msub> <mi>t</mi> <mi>ij</mi> </msub> </msubsup> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>4</mn> <mo>)</mo> </mrow> </mrow> </math>
whereinRepresenting users u scored as belonging to type tijThe number of items of (a) is,the user u is marked to belong to the type set TiThe number of items of any one type. It is clear that, as shown in equation (5), there are:
<math> <mrow> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>s</mi> </munderover> <msub> <mi>&lambda;</mi> <mi>j</mi> </msub> <mo>=</mo> <mn>1</mn> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>5</mn> <mo>)</mo> </mrow> </mrow> </math>
weight λjReflects the user u to the type tijDegree of interest in the set of types to which item i belongs, λjThe higher the value, the user is for the type tijWith respect to the user's score for items belonging to the set TiThe higher the weight of the number of scores of the other types of items in (b), and thus according to the type tijDerived predictive scoreThe real preference degree of the user for the item i can be reflected better. By raisingSo that a more accurate prediction score can be obtained.
In summary, the present invention describes similarity degrees of different types of items preferred by users respectively by calculating a plurality of independent score similarities between users for different item types, and after a plurality of similarities between any two users for all item types are determined, a prediction score of the current User for the item can be calculated according to the similarity between the current User (first User) and other users (nearest neighbor users) and an actual score of the other User (nearest neighbor User) for a certain item, so as to obtain a more accurate prediction score of the User for an unscored item, thereby effectively improving accuracy of the prediction score, and improving recommendation quality of a recommendation algorithm on the basis of maintaining simplicity and easy implementation of a conventional User-based collaborative filtering recommendation algorithm.
The foregoing embodiments are merely illustrative of the principles and utilities of the present invention and are not intended to limit the invention. Modifications and variations can be made to the above-described embodiments by those of ordinary skill in the art without departing from the spirit and scope of the present invention. Accordingly, the scope of the invention should be determined from the following claims.

Claims (5)

1. A collaborative filtering recommendation method based on multiple similarities between users for providing a prediction score of an item to be recommended to a first user, the method comprising:
(1) determining a plurality of types contained in an item to be recommended;
(2) defining as the second user the other at least one user participating in the scored project belonging to each determined type in common with the first user;
(3) calculating similarity of each determined type between the first user and each of the plurality of second users respectively by adopting correlation similarity or cosine similarity;
(4) selecting K users with the highest similarity to the first user for each determined type from the plurality of second users as nearest neighbor users, and respectively calculating a plurality of predicted scores of the first user based on each determined type according to the calculated similarity of the first user and the K nearest neighbor users for each determined type and the actual scores of the K nearest neighbor users for the items belonging to the determined type; and
(5) and taking a weighted average of the plurality of calculated prediction scores, and providing the result of the weighted average as the prediction score of the item to be recommended to the first user.
2. The collaborative filtering recommendation method based on multiple similarities between users according to claim 1, wherein the calculation formula for calculating the similarity between the first user and one of the second users for each type determined by the step (1) by using the correlation similarity in the step (3) is as follows:
<math> <mrow> <msub> <mi>sim</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msub> <mrow> <mo>(</mo> <mi>x</mi> <mo>,</mo> <mi>y</mi> <mo>)</mo> </mrow> <mo>=</mo> <munder> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>&Element;</mo> <msubsup> <mi>I</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>y</mi> </mrow> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> </mrow> </munder> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>-</mo> <mover> <msubsup> <mi>r</mi> <mi>x</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mrow> <mi>y</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>-</mo> <mover> <msubsup> <mi>r</mi> <mi>y</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <mo>/</mo> <mrow> <mo>(</mo> <msqrt> <munder> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>&Element;</mo> <msubsup> <mi>I</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>y</mi> </mrow> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> </mrow> </munder> <msup> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>-</mo> <mover> <msubsup> <mi>r</mi> <mi>x</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <mn>2</mn> </msup> </msqrt> <msqrt> <munder> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>&Element;</mo> <msubsup> <mi>I</mi> <mrow> <mi>x</mi> <mo>,</mo> <mi>y</mi> </mrow> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> </mrow> </munder> <msup> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mrow> <mi>y</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>-</mo> <mover> <msubsup> <mi>r</mi> <mi>y</mi> <msub> <mi>t</mi> <mi>m</mi> </msub> </msubsup> <mo>&OverBar;</mo> </mover> <mo>)</mo> </mrow> <mn>2</mn> </msup> </msqrt> <mo>)</mo> </mrow> </mrow> </math>
wherein x represents a first user; y represents a second user; t is tmRepresenting the type determined in step (1);co-scored for users x and y as belonging to type tm(tmE.g. T, 1 is more than or equal to m and less than or equal to k);respectively representing users x and y as belonging to type tmAverage score of the item of (a).
3. The collaborative filtering recommendation method based on multi-similarity between users according to claim 1, wherein the step (3) employs cosine similarity to calculate the similarity between the first user and one of the second users for each type determined by the step (1) according to the following formula:
wherein x represents a first user; y represents a second user; t is tmRepresenting the type determined by step (1);co-scored for users x and y as belonging to type tm(tmE.g. T, 1 is more than or equal to m and less than or equal to k);andrespectively representing users x and y scored as belonging to type tmA collection of items of (a);respectively representing users x and y as belonging to type tmAverage score of the item of (a).
4. The collaborative filtering recommendation method according to claim 2 or 3, wherein the first user in step (4) calculates the prediction score for each type of item to be recommended according to the following formula:
wherein u represents a first user; i represents an item to be recommended;representing a set of K nearest neighbor users; t is tijRepresenting the jth type contained in the item i to be recommended, wherein j is more than or equal to 1 and less than or equal to s, and s is the number of types determined in the step (1);indicating nearest neighbor user u' as belonging to classType tiAverage score of the item of (a).
5. The collaborative filtering recommendation method based on multiple similarities between users according to claim 4, wherein the prediction score of the item to be recommended in the step (5) is calculated by using the following formula:
wherein u represents a first user; i represents an item to be recommended; t is tijRepresenting the jth type contained in the item i to be recommended, wherein j is more than or equal to 1 and less than or equal to s, and s is the number of types determined in the step (1); lambda [ alpha ]jRepresents a weight, andrepresenting users u scored as belonging to type tijThe number of items of (a) is,the mark of the user belongs to the type set TiNumber of items of any one type, Ti={t12,t12,...,tisF.i. the set of types included in the item to be recommended, and
CN201110121997.2A 2011-05-12 2011-05-12 Collaborative filtering recommending method based on multiple-similarity of users Active CN102779131B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110121997.2A CN102779131B (en) 2011-05-12 2011-05-12 Collaborative filtering recommending method based on multiple-similarity of users

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110121997.2A CN102779131B (en) 2011-05-12 2011-05-12 Collaborative filtering recommending method based on multiple-similarity of users

Publications (2)

Publication Number Publication Date
CN102779131A CN102779131A (en) 2012-11-14
CN102779131B true CN102779131B (en) 2015-02-18

Family

ID=47124048

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110121997.2A Active CN102779131B (en) 2011-05-12 2011-05-12 Collaborative filtering recommending method based on multiple-similarity of users

Country Status (1)

Country Link
CN (1) CN102779131B (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103500228A (en) * 2013-10-23 2014-01-08 苏州大学 Similarity measuring method improved through collaborative filtering recommendation algorithm
US10198517B2 (en) * 2014-12-08 2019-02-05 Oath Inc. Pairing systems and methods for electronic communications
CN105761154B (en) * 2016-04-11 2019-10-15 北京邮电大学 A kind of socialization recommended method and device
CN106021298B (en) * 2016-05-03 2019-05-28 广东工业大学 A kind of collaborative filtering recommending method and system based on asymmetric Weighted Similarity
CN107016589B (en) * 2016-08-10 2020-10-30 创新先进技术有限公司 Method and device for determining recommended product
CN109086281A (en) * 2017-06-14 2018-12-25 成都淞幸科技有限责任公司 A kind of supplier's recommended method based on arest neighbors Collaborative Filtering Recommendation Algorithm
CN108200505B (en) * 2018-03-02 2019-11-19 江华智酷科技有限公司 A kind of intelligent earphone for capableing of autonomous control

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101489107A (en) * 2009-01-21 2009-07-22 华东师范大学 Collaborative filtering recommendation method based on population attribute keyword vector
CN101540874A (en) * 2009-04-23 2009-09-23 中山大学 Interactive TV program recommendation method based on collaborative filtration
CN101685458A (en) * 2008-09-27 2010-03-31 华为技术有限公司 Recommendation method and system based on collaborative filtering
CN101751448A (en) * 2009-07-22 2010-06-23 中国科学院自动化研究所 Commendation method of personalized resource information based on scene information
CN101853463A (en) * 2009-03-30 2010-10-06 北京邮电大学 Collaborative filtering recommending method and system based on client characteristics

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101685458A (en) * 2008-09-27 2010-03-31 华为技术有限公司 Recommendation method and system based on collaborative filtering
CN101489107A (en) * 2009-01-21 2009-07-22 华东师范大学 Collaborative filtering recommendation method based on population attribute keyword vector
CN101853463A (en) * 2009-03-30 2010-10-06 北京邮电大学 Collaborative filtering recommending method and system based on client characteristics
CN101540874A (en) * 2009-04-23 2009-09-23 中山大学 Interactive TV program recommendation method based on collaborative filtration
CN101751448A (en) * 2009-07-22 2010-06-23 中国科学院自动化研究所 Commendation method of personalized resource information based on scene information

Also Published As

Publication number Publication date
CN102779131A (en) 2012-11-14

Similar Documents

Publication Publication Date Title
CN102779131B (en) Collaborative filtering recommending method based on multiple-similarity of users
CN104935963B (en) A kind of video recommendation method based on timing driving
CN101685458B (en) Recommendation method and system based on collaborative filtering
CN108920503A (en) A kind of micro- video personalized recommendation algorithm based on social networks degree of belief
CN109508428B (en) Interest point recommendation method based on interest point true popularity and implicit trust mining
Gohari et al. A new confidence-based recommendation approach: Combining trust and certainty
Salehi Application of implicit and explicit attribute based collaborative filtering and BIDE for learning resource recommendation
CN109241203B (en) Clustering method for user preference and distance weighting by fusing time factors
CN103927347A (en) Collaborative filtering recommendation algorithm based on user behavior models and ant colony clustering
CN107016122B (en) Knowledge recommendation method based on time migration
CN106126549A (en) A kind of community&#39;s trust recommendation method decomposed based on probability matrix and system thereof
CN104899246A (en) Collaborative filtering recommendation method of user rating neighborhood information based on fuzzy mechanism
CN102779182A (en) Collaborative filtering recommendation method for integrating preference relationship and trust relationship
CN106294859A (en) A kind of item recommendation method decomposed based on attribute coupling matrix
CN103500228A (en) Similarity measuring method improved through collaborative filtering recommendation algorithm
CN108550400B (en) Method for evaluating influence of air pollutants on number of respiratory disease patients
KR101790788B1 (en) Collaborative networking with optimized inter-domain information quality assessment
CN106021298A (en) Asymmetrical weighing similarity based collaborative filtering recommendation method and system
CN106534976A (en) Intelligent prediction method of user satisfaction in IPTV video business
CN107527236A (en) A kind of collaborative filtering recommending method and commending system based on market effect
CN116244513A (en) Random group POI recommendation method, system, equipment and storage medium
CN104008193B (en) A kind of information recommendation method based on group of typical user discovery technique
US8429175B2 (en) Method and apparatus for default rating estimation
Barzegar Nozari et al. A novel trust computation method based on user ratings to improve the recommendation
CN104899321A (en) Collaborative filtering recommendation method based on item attribute score mean value

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant