Mahout
xhjx2618
只是记笔记
展开
-
mahout 0.6基于Item的CF代码分析
phase1: convert items to an internal index 这步主要是将itemId转成一个int。 input:用户评分文件(这也是我们最原始的输入了),格式一般为:userId \t itemId \t score。 map:(index, itemId) reduce: (index, itemId)原创 2013-03-28 14:11:16 · 705 阅读 · 0 评论 -
Mahout之k-means算法源码分析
org.apache.mahout.clustering.syntheticcontrol.kmeans.run(Configuration conf, Path input, Path output,DistanceMeasure measure, int k, double convergenceDelta,int maxIterations),这是我们分析的起点:publ原创 2013-03-28 14:16:56 · 1268 阅读 · 1 评论 -
Mouhout运行k-means算法
1 运行$hadoop fs -mkdir testdata$hadoop fs -put xxx.data testdata$hadoop jar mahout-examples-0.6-job.jar org.apache.mahout.clustering.syntheticcontrol.kmeans.Job2 查看运行结果原创 2013-04-03 12:56:55 · 735 阅读 · 0 评论 -
运行mahout0.6 hadoop版本的CF
1准备数据集这里使用了movieLen的数据集,下载地址: http://www.grouplens.org/node/73 这里选取了那个1m的数据集下载之后还要写个小程序将格式转化成csv格式的,才能在作为hadoop的输入package com.dataset.format.convert;import java.io.BufferedReader;原创 2013-03-28 14:14:11 · 606 阅读 · 0 评论 -
Mahout中基于项目的CF主要步骤
这里只是记录整个算法的主要流程,中间没有涉及到具体的细节。假设原始的数据集的格式如下:第一步:生成用户向量(user-vector),最终输出结果为,这个vector记录了这个userId打过分的所有项目的打分值。第二步:生成项目向量(item-vector),map的输入为第一步的输出,这一步最后的输出为,这个vector记录了所有对这个itemId打过分的userId,以及对应的打原创 2013-04-12 15:11:43 · 650 阅读 · 0 评论