文档章节

提供推荐

天线无双
 天线无双
发布于 2017/07/20 11:54
字数 194
阅读 11
收藏 0
  1. 欧几里德距离评价

    欧氏距离:(∑(Xi-Yi)2)1/2,即两项间的差是每个变量值差的平方和再平方根。

    Python方法: pow(n,2) 对某数求平方,sqrt 求平方根可对函数+1,避免被0 整除的错误,返回1 则两人有一样的偏好。

from math import sqrt
sqrt(pow(4.5-4),2+pow(1-2,2))
1/(1+sqrt(pow(4.5-4),2+pow(1-2,2)))

对方法进行封装

def sim_distance(prefs,person1,person2):
  # Get the list of shared_items
  si={}
  for item in prefs[person1]: 
    if item in prefs[person2]: si[item]=1

  # if they have no ratings in common, return 0
  if len(si)==0: return 0

  # Add up the squares of all the differences
  sum_of_squares=sum([pow(prefs[person1][item]-prefs[person2][item],2) 
                      for item in prefs[person1] if item in prefs[person2]])

  return 1/(1+sum_of_squares)

© 著作权归作者所有

共有 人打赏支持
天线无双
粉丝 0
博文 18
码字总数 8488
作品 0
程序员
私信 提问
Mahout下个性化推荐引擎Taste介绍

Mahout下个性化推荐引擎Taste介绍 Taste是 Apache Mahout 提供的一个个性化推荐引擎的高效实现,该引擎基于java实现,可扩展性强,同时在mahout中对一些推荐算法进行了MapReduce编程模式转化...

yuzh
2012/12/27
0
0
基于 Apache Mahout 构建社会化推荐引擎

Web 2.0 的一个核心思想就是“群体智慧”,即基于大众行为,为每个用户提供个性化的推荐。这使得如何让用户能更快速更准确的获得所需要的信息,成为了 Web 应用成败的关键。Apache Mahout 是...

红薯
2010/01/23
8.1K
4
基于内容的推荐Content-based Recommendation

简介 推荐系统通常是以web应用的形式与用户进行交互。通常,系统为用户展示一系列推荐商品,用户点击这些商品获得更详细的信息或是其他对这些商品的行为。例如,在线新闻网站以新闻头条的形式...

坐看流年
2013/06/17
0
0
Mahout之推荐算法基本实例

Mahout中主要核心的三大算法为推荐,聚类及分类算法,今天就最基本的推荐算法做总结,推荐中常用的两个推荐算法是”userbased”和”itembased”,前者主要通过和你兴趣相似的人来发现新的你感...

xiaomin0322
06/11
0
0
关于推荐系统设计

在我们的系统设计中,推荐的内容主要涉及到两方面:1,为当前用户推荐可能感兴趣的用户;2、使用者推荐可能感兴趣的内容。写这个文章主要是总结一下我们设计中的经验,也可以暴露一下我们的不...

saintatgod
2015/12/15
413
0

没有更多内容

加载失败,请刷新页面

加载更多

初探Spring Cloud(一)

1. 什么是Spring Cloud? Spring提供了一系列工具,可以帮助开发人员迅速搭建分布式系统中的公共组件(比如:配置管理,服务发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁,...

__HuWei
10分钟前
0
0
Mac配置ssh免密钥登录

Mac终端每次使用ssh -p 22 user@ip登录很是麻烦,下面介绍配置ssh免密钥登录: cd ~/.ssh下创建conf文件,写入以下配置: Host test HostName ip Port 22 IdentityFile /Users/t/key/test.p...

littlemesieV
25分钟前
1
0
Spark2.0操作ES

ES提供了支持包来方便的操作ES。首先添加ES的依赖maven: <dependency> <groupId>org.elasticsearch</groupId> <artifactId>elasticsearch-spark-20_2.11</artifactId> <version>6.2.0</ver......

守望者之父
27分钟前
1
0
专业术语

1、防御性编程 DruidDataSource类有一个init方法,我们在spring中配置druid时,都会指定 init-method='init'. 而且DruidDataSource也在其他地方,诸如getConnection()方法里作了防御性编程, 也就...

still5656
28分钟前
1
0
微信开发--测试账号相关

1、微信公众平台选择代码开发后,其平台上的部分功能会不可用 可在开发者工具中选择开通测试账号,进行相关的功能调试(测试账号出微信支付不可调试外,其他功能基本上都可以调试) 2、测试账号...

Code辉
35分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部