推荐数据的处理是大规模的,在集群环境下一次要处理的数据可能是数GB,所以Mahout针对推荐数据进行了优化。
Preference
在Mahout中,用户的喜好被抽象为一个Preference,包含了userId,itemId和偏好值(user对item的偏好)。Preference是一个接口,它有一个通用的实现是GenericPreference。
Pr...
分类:
其他好文 时间:
2015-07-16 16:55:13
阅读次数:
129
1.把文本文件变为sequence file:
mahout seqdirectory -i file://$(pwd)/news/
-o file://$(pwd)/news-seq/ -c UTF-8 -chunk 64 -xm sequential
mahout seqdirectory -i file://$(pwd)/1/
-o file://$(pw...
分类:
其他好文 时间:
2015-07-10 22:19:24
阅读次数:
372
计算公式:
并通过下面代码对Mahout in Action的结果进行了验证:
代码如下:
`
package com.example.mahout;public class TestColl {public static void main(String[] args) {
// TODO Auto-generated method stub
//int a[]={...
分类:
其他好文 时间:
2015-07-07 22:54:10
阅读次数:
193
FastByIdMap是基于散列的,在处理冲突时是线性探测而非分离链接,这样就不必为每一个条目增加一个Map.Entry对象,从而节省内存开销。
下面代码是一个线性探测Map的Demo:package com.example.mahout;public class ArrayHashST_Linear_Probing {
private int M = 30001;...
分类:
其他好文 时间:
2015-07-07 22:52:06
阅读次数:
163
安装Mahout之前,一定要把hadoop装好,hadoop的安装方法可以参考我的前一篇随笔,我安装的是hadoop2.7.0,具体方法在此不做介绍。1.首先下载相应版本的Mahout:axel -n 10 http://archive.apache.org/dist/mahout/0.9/maho...
分类:
其他好文 时间:
2015-06-30 20:05:53
阅读次数:
220
之前主要研究oracle与mysql,觉得hive其实就是一种数据仓库的框架,也没有太多另类,所以主要精力都在研究hadoop,hbase,sqoop,mahout,最近稍微用心看了下hive,其实hive还是比我想象中好用的多,心里有点点暗爽,不论是与hadoop的衔接,还是在对外查询分析,定期hsql生成报表方面,都非常方便,可以不用mapreduce,直接用hive生成报表。真是方便。
...
分类:
其他好文 时间:
2015-06-12 14:55:19
阅读次数:
189
欧几里德相似度(Euclidean Distance)最初用于计算欧几里德空间中两个点的距离,以两个用户x和y为例子,看成是n维空间的两个向量x和y, xi表示用户x对itemi的喜好值,yi表示用户y对itemi的喜好值,他们之前的欧几里德距离是对应的欧几里德相似度,一般采用以下公式进行转换:距离...
分类:
其他好文 时间:
2015-06-10 10:18:09
阅读次数:
126
本文目的:介绍一种常见推荐算法(用户协同过滤)的使用。应用场景:XXX项目运行一段时间后,系统中将会存在很多视频信息,而通常APP给用户推送的消息(1-3条/每天),那么这就需要我们根据用户的行为特征,进行更为有效的推送。工具介绍:mahout协同过滤算法的使用测试代码:/..
分类:
编程语言 时间:
2015-05-18 21:13:45
阅读次数:
181