- 博客(47)
- 资源 (8)
- 收藏
- 关注
原创 命令
cat u1.base | awk -F "\t" '{print $1"::"$2"::"$3"::"$4}' > ratings.datcat u.item | awk -F "|" '{print $1"\t"$2"\t"$3}' > movies.dat
2015-05-30 16:25:59 449
原创 mahout 协同过滤 参数大全
Mahout0.9—Hadoop2.20—协同过滤算法 1.1. 基于物品的协同过滤推荐函数Mahout支持推荐函数,通过mahout –-help 查看:函数1:itemsimilarity: : Compute the item-item-similarities for item-based collaborative filtering itemsimilarity是计算物品相似度矩阵
2015-05-29 21:11:23 2077
转载 mahout0.9 分布式推荐算法ALS-MR
可参考这篇文章先跑一下程序:1.原始数据格式如下:其结构为userid:movieid:rating:timestamp1::1193::5::9783007601::661::3::9783021091::914::3::978301968cat /user/yxb/mhadoop/data/ratings.dat |sed -e s/::/,/g| cut -d, -f1,2,3 > /user
2015-05-26 20:58:04 1315
转载 mapreduce实现矩阵相乘
a的map读取读取第一个值是1,1,1。它是矩阵a的第一行第一列。那么它要在计算c(1,1) c(1,2)的时候使用(这里c仅仅用2列,假设用n列,那么它的值要在计算c(1,1),c(1,2),c(1,3)…c(1,n)的时候使用)。我们就以 key = 1,1 value = a,1,1 , key= 1,2 value = a,1,1输出两条数据(1,1) (1,2)是 c(1
2015-05-25 10:40:50 986
原创 mapreduce处理海量小文件:压缩文件
package org.shirdrn.kodz.inaction.hadoop.smallfiles.compression;import java.io.IOException;import java.util.Iterator;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.Path;impo
2015-05-23 15:54:33 701
转载 hadoop平台进行小型网站的日志分析
转载连接0.上传日志文件到linux中,通过flume将文件收集到hdfs中。执行命令/home/cloud/flume/bin/flume-ng agent -n a4 -c conf -f /home/cloud/flume/conf/a4.conf -Dflume.root.logger=DEBUG,console1.建立hive表create external table bbslog
2015-05-22 20:08:38 507
原创 hdfs 如何列出目录下的所有文件
import java.net.URI;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FileSystem;import org.apache.hadoop.fs.Path;import org.apache.hadoop.fs.FileStatus;import org.apache.had
2015-05-22 17:45:58 2606
原创 mapreduce 找共同的朋友
public class FindFriends{public static class changeMapper extends Mapper<Object,Text,Text,Text>{public void map(Object key,Text value,Context context) throws IOException,IterruptedException{StringTo
2015-05-22 16:23:12 578
转载 apriori java实现
/** * 频繁项集 */public class FrequentNode { //包含哪些项 private String[] subjects; //几项集 private int k; //支持度计数 private int count = 0; public FrequentNode(String subject,int cou
2015-05-22 11:10:31 882
转载 Fp-Growth 代码
public class TreeNode { private TreeNode parent; private String name; private int count; private Set<TreeNode> children; public TreeNode(TreeNode parent,String name,int count){
2015-05-22 11:06:50 730
原创 关联规则的基本概念
分为两步: 1.生成频繁项集 这一阶段找出所有满足最小支持度的项集,找出的这写项集成为频繁项集 2.生成规则 在上一步生成的频繁项集上生成满足最小自信度的规则,产生的规则称为强规则。关联规则挖掘所花费的时间主要是在生成频繁项上,因此找出的频繁项集往往不会很多aprioriFpGrowth
2015-05-22 10:40:50 1183
转载 mahout FpGrowth
数据网址: 这里写链接内容调用FpGrowth算法bin/hadoop jar mahout/mahout-examples-0.9-job.jar org.apache.mahout.fpm.pfpgrowth.FPGrowthDriver -i /user/zls/input/retail.dat -o patterns -method mapreduce -s 1000 -regex '[\
2015-05-22 10:24:01 562
转载 普聚类2
广义上来说,任何在算法中用到SVD/特征值分解的,都叫Spectral Algorithm。Spectral Clustering,中文通常称为“谱聚类”。由于使用的矩阵的细微差别,谱聚类实际上可以说是一“类”算法。Spectral Clustering 和传统的聚类方法(例如 K-means)比起来有不少优点:1)和 K-medoids 类似,Spectral Clustering 只需要数据之间
2015-05-22 09:26:27 840
原创 apache mahout 算法集
分类算法: 逻辑回归 贝叶斯 支持向量机 感知器算法‘ 神经网络 随机森林 有限玻尔兹曼聚类算法 canopy 聚类 K均值算法 模糊K均值 EM聚类 均值飘逸聚类 层次聚类 狄利克雷过程聚类 LDA聚类 谱聚类关联规则挖掘 并行FP Growth算法回归 局部加权线性回归降维/维约简 奇异值分解 主成分分析 独立成分分析 高斯判别分析推
2015-05-21 12:03:37 1089
原创 数据挖掘应用案例:RFM模型分析与客户细分(未完成)
客户数据库中有三个神奇的要素,这三个要素构成了数据分析最好的指标:R(最近一次消费,recency) F(消费频率,Frequency),消费金额(Monetary)。RFM模型:R表示最忌你一次购买的时间有多远,F表示客户在最近一段时间内购买的次数,M表示客户在最近一段时间购买的金额。一般原始数据为3个字段:客户ID、购买日期、购买金额,用于数据挖掘软件,加权得到RFM得分,进而可以进行客户细分
2015-05-20 20:21:15 2365
原创 hadoop fs api
hadoop中关于文件操作类基本上全部是在org.apace.hadoop.fs包中,这些api能够支持的操作包含:打开文件,读写文件,删除文件等public static void uploadLocalFile2HDFS(String s,String d){Configuration conf=new Configuration();FileSystem hdfs=FileSystem.
2015-05-20 15:57:52 586
转载 mapreduce 平均成绩
map处理的是一个纯文本文件,文件中存放的是数据时每一行标识一个学生的姓名和他相应一科成绩。mapper处理的数据由inputFormat分解过的数据集,其中inputFormat的作用是将数据集切割成小数据集inputsplit,每一个inputsplit将有 一个mapper负责处理,此外inputFormat中还提供了recordreader的实现,并将一个inputsplit解析成impor
2015-05-19 13:29:47 759
转载 hadoop实现单表和多表关联
设计思路 分析这个事例,显然需要进行单表连接,连接的是左表的parent列和又表的child列,且左表和右表示同一个表。 连接结果中除去连接的两列就是所需要的结果,需要mapreduce解决这个事例,首先应该考虑如何实现表的自连接,其次就是连接的设置,最后是结果的整理 考虑到mapreduce的shuffle过程会将相同的key会连接在一起,所以可以将map结果的key设置成待连接的列,然后
2015-05-19 10:40:57 2374
转载 mahout 聚类大全
http://my.oschina.net/u/1047640/blog/263742mahout要求数据时空格分割的序列化文件,所以先把,逗号都换成空格,然后使用inputDriver这个工具类对文件处理把用户主目录下testdata文件下的空格分隔文件,处理一下mahout org.apache.mahout.clustering.conversion.InputDriver -i testda
2015-05-17 10:35:54 794
转载 mahout spectral聚类1
转载:http://blog.csdn.net/xyilu/article/details/9883701#0-tsina-1-75972-397232819ff9a47a7b7e80a40613cfe1谱聚类(spectral clustering)对样本空间的形状无限制,并收敛于全局最优解。什么意思呢?我们知道,kmeans聚类要求样本来自欧式空间,从而可以计算欧氏距离,进而根据欧式距离来决定
2015-05-17 10:12:18 475
转载 large-scale parallel collaborative filtering for the Netfile Priza
原文地址协同过滤算法为用户提供推荐商品,CF带来的两个问题是如何解决大并发性和用户信息的稀疏度对系统带来的影响。本文提供了并发算法ALS-WR,正是基于以上两点挑战CF,同时也是为Netfilx Prize设计的算法,根据实验结果,ALS-WR算法的效果会随着特征值和迭代次数的增加而提高。使用Netflix包含1000个隐特征的数据集,ALS-WR得到的RMSE是0.8985,这是基于单纯一个算法的
2015-05-16 10:46:53 702
转载 R实现mapreduce的协同过滤算法
算法的思想: 建立物品的同现矩阵 建立用户对物品的评分矩阵 矩阵计算推荐结果文字说明部分: 1.建立物品的同现矩阵 按用户分组,找到每个用户所选的去被,单独出现计数,和两两一组计数。例如:用户id为3的用户,分别给101,104,105,107,这四个物品打分。 1) (101,101),(104,104),(105,105),(107,107),单独出现计算各加1。 2) (101,
2015-05-16 10:20:08 627
转载 用R解析mahout用户推荐协同过滤算法
##建立模型FileDataModel=function(file){ data=read.csv(file,header=F) names(data)=c('uid','iid','pref') user=unique(data$uid) item=unique(sort(data$iid)) uidx=match(data$uid,user) iidx=match(dat
2015-05-16 09:58:08 597
转载 mahout基于矩阵分解的协同过滤实例 ALS——WR
问题提出:对于协同过滤,我们就是要预测用户所喜欢的但是又没有发现的物品,下面给出一个明确的评分矩阵,设为A,但是A有一部分没有值,表明用户没有对此物品评分,于是我们需要预测出没有值的评分部分。解决方法: 我们知道有基于用户和基于物品的协同过滤算法,通过计算用户或物品的相似度来求得所缺失的打分。这里将潜在因子模型方法。 用户和物品分布在一个K维的特征空间,用户的未知评分可以简单的通过相应的用户和物品
2015-05-16 09:30:55 2731
转载 ubuntu tamat eclipse
一、安装JDK 1.去官网下载最新版的JDK,http://www.oracle.com/technetwork/cn/java/javase/downloads/index.html,这里选择的是最新版的jdk-8u20-linux-i586.tar.gz。 2.下载完成后打开下载的安装包所在的文件夹,将该压缩包拷贝到/usr/java文件夹下 cp jdk-8u20-linux-i586.
2015-05-15 19:40:52 544
原创 eclipse maven mahout环境搭建
1.安装maven 2.建立maven项目 3.修改pom.xml文件<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 htt
2015-05-12 13:04:47 522
转载 R语言假设检验学习笔记
ks检验 R语言中提供了ks.test()函数,理论上可以检验任何分布,既可以单样本检验,也能做双样本检验。 3.列联表数据独立性检验 chisq.test()同样可以做列联表数据独立性检验,只要将数据写成矩阵的形式就可以了。 x=matrix()chisq.test(x)
2015-05-11 10:08:51 965
原创 R中正太检验的方法
#正态检验方法ks.test() #假设零假设为N(15,0.2),则ks.test(x,"pnorm",15,0.2). 样本中不能出现相同值shprio.test() #可以进行关于正太分布的shapiro-Wilk检验,适用于小样本,不能用于大样本,样本数3到5000之间,p-value>0.5 则就是正态分布。###nortest包lillie.test() 可以实行更精准的检验a
2015-05-10 22:10:38 2049
转载 xts可扩展的时间序列
xts数据结构: 索引(时间)+数据(矩阵)+属性(包括隐藏属性和用户属性)xts使用: xts类型基本操作 作图 类型转换 数据处理‘ 数据统计计算 时间序列工具使用xts['2007-03-01/2007']作图plot(as.xts(matrix))K线图plot(as.xts(matrix),type="candles")
2015-05-10 21:38:27 851
转载 关联分析
library(arules)arules=apriori(data)##前者为条件,后者为结果##如何来度量一个规则是否够好?用两个量,置信度(confidence)和支持度(support)#置信度表示了这个规则有多大程度上值得可信,设条件的项的集合为A,结果的集合为B,则置信度为p(B/A)#支持度计算在所有的交易中,既有A又有B的概率。#如何产生规则呢,可以分两步走:首先找到频繁
2015-05-06 20:29:21 770
原创 希尔排序
基本思想:将排序的一组数按某个增量d(n/2)分成若干组,每组中记录的下标相差d,对每组中全部元素进行直接 插入排序,然后再用一个较小的增量d/2对他进行分组,在每组中再进行直接插入排序。当增量减到1时,排序结束。public class shellSort{private static void main(String args[]){int a={};double d1=a.length;
2015-05-05 08:49:35 541
原创 冒泡排序
基本思想:在要排序的一组数中,对当前还未排好序范围内的全部数,自上而下对相邻的两个数一次进行比较和调整,让较大的数往下沉,较小的网上冒:当两相邻的数比较 后,发现他们的排序与排序要求相反时,就将他们互换。public class bubbleSort{int a[]={};for(int i=0;i<a.length-1;i++){for(int j=0;j<a.length-i-1;j++){
2015-05-04 21:46:01 388
原创 直接插入排序
基本思想就是:在一组数中,假设前面(n-1)和个数 已经是排序好的,现在要把第n个数插到前面有序数中,使得前n个数也是排好序的public class insertSort{private static void main(String args[]){int a[]={1,8,5,3,4,7,89,3};int temp=0;for(int i=1;i<a.length;i++){tem
2015-05-04 21:13:06 400
原创 reshape2介绍
在介绍reshape2之前先看一个有意思的例子 数据的变形#UNlistx=list(x=1:3,y=5:10)x=unlist(x)#with 除数据框外还可以使用其他类型数据with(data,{x=log(x),y=y^2})reshape2 :主要 有两个函数:melt 和 cast reshape(data,id.vars,measure.vars,variable.name
2015-05-04 20:05:29 1052
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人