推荐系统第3、4周笔记

项目:图书推荐系统介绍

算法模型:基于Mahout推荐算法

Mahout 是 Hadoop的子项目

Mahout推荐的推荐系统引擎是模块化的,分为5个主要部分组成:数据模型、相似度算法、近邻算法、推荐算法、算法评分器

算法模型:测试数据集:

Rating.csv:行为数据

——3列数据:用户ID、图书ID,用户对图书的评分

——记录数:4000次的图书评分

——用户数:200个

——图书数:1000个

——评分:1-10

Users.csv:属性数据

——3列数据:用户ID、用户性别、用户年龄

——用户数;200个

——用户性别:M为男性,F为女性

——用户年龄:11-80岁之间

算法模型:算法组合

选择UserCF,ItemCF,SlopeOne的3种推荐算法,进行7种组合的测试。

 

算法模型:算法组合解释

基于用户的协同过滤算法:

——用户相似度距离 + 最近邻算法 + 推荐算法(有评分、无评分)

基于物品的协同过滤算法

——用户相似度距离 + 推荐算法(有评分、无评分)

算法模型:算法评估

查找率、召回率(查全率)

 

架构设计:Mahout推荐系统

系统架构:Mahout中推荐过滤算法支持单机算法和分 布算法

单机算法:在单机内存计算,支持多种算法推荐算法,部署运行简单,修正处理数据量有限

分布式算法:基于Hadoop集群运行,支持有限的几种推荐算法,部署运行复杂,支持海量数据

 

 

 

程序开发:用Maven构建Mahout项目

——开发环境

— Win7 64bit

— java1.6.0_45

— Maven 3

— Eclipse Juno Service Release 2

— Mahout-0.8

— Hadoop-1.1.2

先安装Manven:http://c.360webcache.com/c?m=f8919ca7a80b9ecff8ee7a746597231b&q=%E7%94%A8maven%E6%9E%84%E5%BB%BAhadoop%E9%A1%B9%E7%9B%AE&u=http%3A%2F%2Fblog.fens.me%2Fhadoop-maven-eclipse%2F

用Maven构建Mahout项目;

 

构建Mahout开发环境截图:

 

 

 

 

 

 

 

 

 

 

 

 

程序开发:Mahout推荐引擎源代码

 

 

从源代码剖析Mahout推荐引擎:http://c.360webcache.com/c?m=4405c9652799d15427e8fbdfb4a9c49e&q=Mahout%E6%8E%A8%E8%8D%90%E5%BC%95%E6%93%8E&u=http%3A%2F%2Fblog.fens.me%2Fmahout-recommend-engine%2F

上面介绍了几种推荐系统所用到的算法

 

 

关联规则挖掘:Apriori算法

两步过程:找出所有频繁项集;由频繁项集产生强guanlian规则

算法:Apriori

挖掘数据集:购物篮数据

频繁模式:频繁地出现在数据集中的模式,例如:项集、子结构、子序列等

挖掘目标:频繁模式,频繁项集,关联规则等

关联规则:牛奶=>鸡蛋【支持度=2%,置信度=60%】

支持度:分析中的全部事务的2%同时购买了牛奶和鸡蛋

置信度:购买了牛奶的筒子有60%也购买了鸡蛋

最小支持度阈值和最小置信度阈值:有挖掘者或领域专家设定

项集:项(商品)的集合

K-项集:K个项组成的项集

频繁项集:满足最小支持度的项集,频繁K-项集一般记为

强关联规则:满足最小支持度阈值和最小置信度阈值的规则

 

由频繁项集提取关联规则

提高Apriori效率:基于散列的算法、基于FP tree的算法

FP树:

 

FP-Growth算法是对Apriori算法的改进

PFP算法:Mahout提供类内存中的FPG和分布式PFP两种频繁项集的方法项目:图书推荐系统介绍

算法模型:基于Mahout推荐算法

Mahout 是 Hadoop的子项目

Mahout推荐的推荐系统引擎是模块化的,分为5个主要部分组成:数据模型、相似度算法、近邻算法、推荐算法、算法评分器

算法模型:测试数据集:

Rating.csv:行为数据

——3列数据:用户ID、图书ID,用户对图书的评分

——记录数:4000次的图书评分

——用户数:200个

——图书数:1000个

——评分:1-10

Users.csv:属性数据

——3列数据:用户ID、用户性别、用户年龄

——用户数;200个

——用户性别:M为男性,F为女性

——用户年龄:11-80岁之间

算法模型:算法组合

选择UserCF,ItemCF,SlopeOne的3种推荐算法,进行7种组合的测试。

算法模型:算法组合解释

基于用户的协同过滤算法:

——用户相似度距离 + 最近邻算法 + 推荐算法(有评分、无评分)

基于物品的协同过滤算法

——用户相似度距离 + 推荐算法(有评分、无评分)

算法模型:算法评估

查找率、召回率(查全率)

架构设计:Mahout推荐系统

系统架构:Mahout中推荐过滤算法支持单机算法和分 布算法

单机算法:在单机内存计算,支持多种算法推荐算法,部署运行简单,修正处理数据量有限

分布式算法:基于Hadoop集群运行,支持有限的几种推荐算法,部署运行复杂,支持海量数据

 

 

程序开发:用Maven构建Mahout项目

——开发环境

— Win7 64bit

— java1.6.0_45

— Maven 3

— Eclipse Juno Service Release 2

— Mahout-0.8

— Hadoop-1.1.2

先安装Manven:http://c.360webcache.com/c?m=f8919ca7a80b9ecff8ee7a746597231b&q=%E7%94%A8maven%E6%9E%84%E5%BB%BAhadoop%E9%A1%B9%E7%9B%AE&u=http%3A%2F%2Fblog.fens.me%2Fhadoop-maven-eclipse%2F

用Maven构建Mahout项目;

构建Mahout开发环境截图:

 

 

 

 

 

 

 

 

 

 

程序开发:Mahout推荐引擎源代码

 

从源代码剖析Mahout推荐引擎:http://c.360webcache.com/c?m=4405c9652799d15427e8fbdfb4a9c49e&q=Mahout%E6%8E%A8%E8%8D%90%E5%BC%95%E6%93%8E&u=http%3A%2F%2Fblog.fens.me%2Fmahout-recommend-engine%2F

上面介绍了几种推荐系统所用到的算法

 

 

 

 

关联规则挖掘:Apriori算法

两步过程:找出所有频繁项集;由频繁项集产生强guanlian规则

算法:Apriori

挖掘数据集:购物篮数据

频繁模式:频繁地出现在数据集中的模式,例如:项集、子结构、子序列等

挖掘目标:频繁模式,频繁项集,关联规则等

关联规则:牛奶=>鸡蛋【支持度=2%,置信度=60%】

支持度:分析中的全部事务的2%同时购买了牛奶和鸡蛋

置信度:购买了牛奶的筒子有60%也购买了鸡蛋

最小支持度阈值和最小置信度阈值:有挖掘者或领域专家设定

项集:项(商品)的集合

K-项集:K个项组成的项集

频繁项集:满足最小支持度的项集,频繁K-项集一般记为

强关联规则:满足最小支持度阈值和最小置信度阈值的规则

 

由频繁项集提取关联规则

提高Apriori效率:基于散列的算法、基于FP tree的算法

FP树:

 

FP-Growth算法是对Apriori算法的改进

PFP算法:Mahout提供类内存中的FPG和分布式PFP两种频繁项集的方法

项目:图书推荐系统介绍

算法模型:基于Mahout推荐算法

Mahout 是 Hadoop的子项目

Mahout推荐的推荐系统引擎是模块化的,分为5个主要部分组成:数据模型、相似度算法、近邻算法、推荐算法、算法评分器

算法模型:测试数据集:

Rating.csv:行为数据

——3列数据:用户ID、图书ID,用户对图书的评分

——记录数:4000次的图书评分

——用户数:200个

——图书数:1000个

——评分:1-10

Users.csv:属性数据

——3列数据:用户ID、用户性别、用户年龄

——用户数;200个

——用户性别:M为男性,F为女性

——用户年龄:11-80岁之间

算法模型:算法组合

选择UserCF,ItemCF,SlopeOne的3种推荐算法,进行7种组合的测试。

算法模型:算法组合解释

基于用户的协同过滤算法:

——用户相似度距离 + 最近邻算法 + 推荐算法(有评分、无评分)

基于物品的协同过滤算法

——用户相似度距离 + 推荐算法(有评分、无评分)

算法模型:算法评估

查找率、召回率(查全率)

架构设计:Mahout推荐系统

系统架构:Mahout中推荐过滤算法支持单机算法和分 布算法

单机算法:在单机内存计算,支持多种算法推荐算法,部署运行简单,修正处理数据量有限

分布式算法:基于Hadoop集群运行,支持有限的几种推荐算法,部署运行复杂,支持海量数据

 

 

程序开发:用Maven构建Mahout项目

——开发环境

— Win7 64bit

— java1.6.0_45

— Maven 3

— Eclipse Juno Service Release 2

— Mahout-0.8

— Hadoop-1.1.2

先安装Manven:http://c.360webcache.com/c?m=f8919ca7a80b9ecff8ee7a746597231b&q=%E7%94%A8maven%E6%9E%84%E5%BB%BAhadoop%E9%A1%B9%E7%9B%AE&u=http%3A%2F%2Fblog.fens.me%2Fhadoop-maven-eclipse%2F

用Maven构建Mahout项目;

构建Mahout开发环境截图:

 

 

 

 

 

 

 

 

 

 

程序开发:Mahout推荐引擎源代码

 

从源代码剖析Mahout推荐引擎:http://c.360webcache.com/c?m=4405c9652799d15427e8fbdfb4a9c49e&q=Mahout%E6%8E%A8%E8%8D%90%E5%BC%95%E6%93%8E&u=http%3A%2F%2Fblog.fens.me%2Fmahout-recommend-engine%2F

上面介绍了几种推荐系统所用到的算法

 

 

 

 

关联规则挖掘:Apriori算法

两步过程:找出所有频繁项集;由频繁项集产生强guanlian规则

算法:Apriori

挖掘数据集:购物篮数据

频繁模式:频繁地出现在数据集中的模式,例如:项集、子结构、子序列等

挖掘目标:频繁模式,频繁项集,关联规则等

关联规则:牛奶=>鸡蛋【支持度=2%,置信度=60%】

支持度:分析中的全部事务的2%同时购买了牛奶和鸡蛋

置信度:购买了牛奶的筒子有60%也购买了鸡蛋

最小支持度阈值和最小置信度阈值:有挖掘者或领域专家设定

项集:项(商品)的集合

K-项集:K个项组成的项集

频繁项集:满足最小支持度的项集,频繁K-项集一般记为

强关联规则:满足最小支持度阈值和最小置信度阈值的规则

 

由频繁项集提取关联规则

提高Apriori效率:基于散列的算法、基于FP tree的算法

FP树:

 

FP-Growth算法是对Apriori算法的改进

PFP算法:Mahout提供类内存中的FPG和分布式PFP两种频繁项集的方法

发布了41 篇原创文章 · 获赞 14 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/fan3652/article/details/51161851
今日推荐