Introduction to the recommendation engine
The recommendation engine uses special information filtering (If,information filtering) technology to recommend different content (such as movies, music, books, news, pictures, web pages, etc.) to users who may be interested. Typically, the
method Stubtry {//Loading of data Building a data ModelDatamodel model = new Grouplensdatamodel (New File ("E:\\mahout Project \\examples\\ratings.dat")); Usersimilarity similarity = new org.apache.mahout.cf.taste.impl.similarity.PearsonCorrelationSimilarity (model); Userneighborhood neighborhood = new Nearestnuserneighborhood (similarity, model);//Generate recommendation
Mahout Introductory Guide to the Mahout stand-alone recommendation algorithmI recently in the study of Mahout, online to find some information on the entry, found that the collation of the more chaotic. Toss a few, and finally got it clear. To get beginners started faster, decide to summarize and share and write this i
most similar user group userneighborhood neighborhood = new feature (2, similarity, model); // The recommendation engine merges these components to recommend recommender = new genericuserbasedrecommender (model, neighborhood, similarity); // recommended item 1, 1, and list for user 1
When a new similarity measure is introduced, the results will change significantly. M
. neighborhood. userneighborhood; import Org. apache. mahout. cf. taste. recommender. recommender; import Org. apache. mahout. cf. taste. similarity. usersimilarity; import Org. apache. mahout. common. randomutils; public class testrecommenderevaluator {public static void main (string [] ARGs) throws exception {// force the same random value to be generated each
Part 2nd: In-depth recommendation of engine-related algorithms-collaborative filteringThe first article in this series provides an overview of the recommendation engine, and the following articles provide an in-depth introduction to the recommended engine's algorithms and help readers implement them efficiently. In tod
Efficient collaborative filtering recommendations based on Apache MahoutApache Mahout is an open-source project under the Apache Software Foundation (ASF) that provides a number of extensible machine learning domain Classic algorithms designed to help developers create smart applications more quickly and easily, and in Mahout Also added support for Apache Hadoop to enable these algorithms to run more effici
the idea of itembased recommendation algorithm in map-reduce version of Mahoutrecently wanted to write a map-reduce version of the userbased, so first study mahout in the implementation of the itembased algorithm. Itembased looks simple, but it's a bit complicated to go into the implementation details, and it's even more complicated with map-reduce implementations. The essence of itembased:Predict a user's
Recommendation algorithms in Mahout include User-based Recommender, Item-based Recommender, and Slope-One Recommender.
1. User-based Recommender
The main idea of this algorithm is: the product most similar to user u is probably the product that user u prefers.
1. for each product of user u without preference i2 for each user of user v3 with preference for product I, the similarity s between user u and v is
, including the mathematical model, various clustering algorithms and the implementation on different infrastructures. Through the code example, the reader can know the specific data problem for him, how to quantify the data, how to choose a variety of different clustering algorithms. The next article in this series will continue to delve into the relevant algorithms for the recommendation engine-classifica
If we need to add some filtering rules (such as item creation time within one year) when building a recommendation system through mahout, we need to use the Idrescorer interface, which is the source code as follows:
Package org.apache.mahout.cf.taste.recommender; /** *
The interface sets out two methods that must be implemented:
1.rescore method
Function: Defines the logic for a new score. According
The "Discover the secrets of the recommendation Engine" series will lead readers from shallow to deep learning to explore the mechanisms of the recommendation engine, which also involves some basic optimization methods, such as clustering and classification applications. At the same time, on the basis of theoretical ex
Transferred from: http://www.ibm.com/developerworks/cn/web/1103_zhaoct_recommstudy2/index.htmlThe first article in this series provides an overview of the recommendation engine, and the following articles provide an in-depth introduction to the recommended Engine's algorithms and help readers implement them efficiently. In Today's recommended technology and algorithms, the most widely recognized and adopted
. For details, refer to lingpipe's competition. Recommendation engine: mainly includes Apache mahout, duine framework, and Singular Value Decomposition (SVD). For other packages, see open source collaborative filtering written in Java. Search engine problems: Lucene, SOLR, sphtasks, Hibernate search, etc. 2) common
1 user-based recommendation engine
Datamodel: Provides storage and access to user, item, and preference data for computing
Usersimilarity: Calculating the similarity between users
Userneighborhood: Compute the user's neighbor
Recommender: Organize the above components together to provide the user with item recommendation
package Com.taobao.afan;
import java.io.F
advance, generally need to find an optimal K value through many experiments, and then, The algorithm is less tolerant to noise and outliers, since the algorithm initially adopts the method of randomly selecting the initial clustering center. Noise is the wrong data in a clustered object, and outliers are data that is far away from other data and less similar. For the K-means algorithm, once the outlier and noise are selected as the cluster center at the very beginning, the whole clustering proc
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.