当前位置: 首页 > news >正文

网站设计机构文档好消息tvapp电视版

网站设计机构文档,好消息tvapp电视版,免费b站直播app下载,有点子外包做网站会不会被盗窃目录 数据展示推荐算法的分类基于相似度基于流行度/上下文/社交网络 Jaccard相似度分析数据的特点可以考虑的方法计算方法优缺点计算用户之间的Jaccard相似度获取与给定最相似的10个用户对1713353的用户推荐10本书 数据展示 import pandas as pd import numpy as np# 读取CSV文…

目录

  • 数据展示
  • 推荐算法的分类
    • 基于相似度
    • 基于流行度/上下文/社交网络
  • Jaccard相似度
    • 分析数据的特点
    • 可以考虑的方法
    • 计算方法优缺点
    • 计算用户之间的Jaccard相似度
    • 获取与给定最相似的10个用户
    • 对1713353的用户推荐10本书

数据展示

import pandas as pd
import numpy as np# 读取CSV文件
data = pd.read_csv('E:/recommended_s/Books.csv',header=None,names=['用户id','书籍id','rating' ,'timestamp'])[:10000]
print(data.head(10))

在这里插入图片描述

推荐算法的分类

基于相似度

  • Jaccard相似度:通过计算两个用户喜好集合的交集元素数量与并集元素数量的比值来衡量相似度。
  • 余弦相似度:将用户的喜好表示为向量,通过计算两个向量的余弦值来衡量相似度。余弦相似度考虑了向量的方向和长度,适用于处理偏好差异和权重差异的情况。
  • 皮尔逊相关系数:通过计算两个用户喜好向量之间的协方差和标准差的比值来衡量相似度。皮尔逊相关系数可以衡量线性相关性,适用于处理用户评分的情况。
  • 欧氏距离:将用户的喜好表示为向量,通过计算两个向量之间的欧氏距离来衡量相似度。欧氏距离衡量了向量之间的距离,数值越小表示越相似。
  • 曼哈顿距离:将用户的喜好表示为向量,通过计算两个向量之间的曼哈顿距离来衡量相似度。曼哈顿距离衡量了向量之间的距离,数值越小表示越相似。

基于流行度/上下文/社交网络

  • 基于流行度的推荐:推荐热门、流行的物品给用户。这种方法假设用户可能对热门物品感兴趣,适用于新用户或缺乏个性化信息的情况。
  • 基于上下文的推荐:考虑用户的上下文信息,如时间、地点、设备等,来进行推荐。根据用户当前的上下文环境,推荐适合的物品。例如,在早晨推荐早餐食谱,在晚上推荐电影。
  • 基于社交网络的推荐:利用用户在社交网络中的关系和交互信息,进行推荐。例如,根据用户的好友喜好进行推荐,或者利用社交网络中的社区结构进行推荐。

Jaccard相似度

  • Jaccard相似度是一种用于比较两个集合相似程度的度量方法。它通过计算两个集合的交集元素数量与并集元素数量的比值来衡量它们的相似性
  • 具体地,给定两个集合A和B,Jaccard相似度可以通过以下公式计算:J(A, B) = |A ∩ B| / |A ∪ B|,其中,|A ∩ B|表示集合A和B的交集元素数量,|A ∪ B|表示集合A和B的并集元素数量。
  • Jaccard相似度的取值范围在0到1之间,数值越接近1表示两个集合越相似,数值越接近0表示两个集合越不相似。

分析数据的特点

  • 低维,对于产品只有书籍id,没有关于书籍的其他内容,比如内容,属性等等。【当然也可以将书籍id进行拆解,但是因为时间原因并没有细化】
  • 存在一对一和一对100的情况,每个用户所看过的书籍数目不同且有较大差异。

可以考虑的方法

  • 基于用户的协同过滤推荐算法:由于数据中包含了用户对不同物品的评分记录,可以基于用户之间的评分行为相似性来进行推荐。通过计算用户之间的相似度,找到与目标用户兴趣相似的其他用户,然后根据这些用户的评分记录,推荐给目标用户可能感兴趣的物品。
  • 基于内容的推荐算法:数据中的物品ID可以用于表示物品的内容特征,如关键词、标签等。可以根据物品之间的内容相似性来进行推荐。通过计算物品之间的相似度,找到与目标物品相似的其他物品,然后推荐给用户。
  • 基于时间的推荐算法:数据中的时间戳可以用于表示用户对物品的评分时间。可以根据时间的先后顺序,推荐最近或最热门的物品给用户。例如,可以推荐用户最近一段时间内热门的物品,或者根据用户的历史评分记录,预测用户未来可能感兴趣的物品。

计算方法优缺点

  • 简单直观:Jaccard相似度的计算方法简单明了,易于理解和实现。【选择该算法的主要原因】
  • 不受数据规模影响:Jaccard相似度只关注集合的共同元素数量,而不考虑集合的大小,因此不受数据规模的影响。
  • 适用于稀疏数据:对于稀疏的用户-物品矩阵,Jaccard相似度可以有效地衡量用户之间的喜好相似度。
  • 但,Jaccard相似度只考虑了集合的共同元素,而没有考虑元素之间的权重差异

计算用户之间的Jaccard相似度

# 计算用户之间的Jaccard相似度
def Jaccard_similarity(user_id, data):user_data = data[data['用户id'] == user_id]other_users = data[data['用户id'] != user_id]# print(user_data)# print(other_users['用户id'])other_users_ids=list(set(other_users['用户id']))# print(other_users_ids)user_books = set(user_data['书籍id'])other_users_books = other_users.groupby('用户id')['书籍id'].apply(set).tolist()# print("###")# print(user_books)# print(other_users_books)i=0similarities = []for other_user_book in other_users_books:intersection = user_books.intersection(other_user_book)union = user_books.union(other_user_book)#print(len(intersection))Jaccard = float(len(intersection)) / (len(union) + 1e-8)user_id = other_users_ids[i]i=i+1# if(Jaccard != 0):# print(Jaccard)similarities.append((user_id, Jaccard))return similarities

获取与给定最相似的10个用户

def get_similar_users(user_id, data, top_n=10):similar_users = Jaccard_similarity(user_id, data)# 根据相似度对similar_users列表进行降序排序,找到最相似的用户similar_users.sort(key=lambda x: x[1], reverse=True)# print(similar_users)# 获取给定用户已经看过的书籍ID,并将其存储在user_books集合中user_books = set(data[data['用户id'] == user_id]['书籍id'])# print("%%%")# print(user_books)# 创建一个空列表,用于存储推荐的书籍IDrecommended_books = []# 遍历与给定用户最相似的前top_n个用户for other_user, _ in similar_users[:top_n]:# 获取当前相似用户喜欢的书籍ID,并将其存储在other_user_books集合中other_user_books = set(data[data['用户id'] == other_user]['书籍id'])# print(data[data['用户id'] == other_user])# 使用列表推导式,从相似用户喜欢的书籍中筛选出给定用户没有看过的书籍,将筛选出的书籍ID添加到recommended_books列表中recommended_books.extend([book for book in other_user_books if book not in user_books])# 返回前10个推荐的书籍ID列表return recommended_books[:10]

对1713353的用户推荐10本书

# 对于用户id为1713353的用户,推荐10本书
user_id = '1713353'
recommended_books = get_similar_users(user_id, data)
# 输出推荐的书
for book in recommended_books:print(book)

在这里插入图片描述


文章转载自:
http://shake.qnzk.cn
http://shinny.qnzk.cn
http://kulakism.qnzk.cn
http://youngling.qnzk.cn
http://intercostal.qnzk.cn
http://aluminiferous.qnzk.cn
http://crystallogenesis.qnzk.cn
http://charlatanism.qnzk.cn
http://solidness.qnzk.cn
http://namable.qnzk.cn
http://holdover.qnzk.cn
http://polypod.qnzk.cn
http://abasia.qnzk.cn
http://itemization.qnzk.cn
http://glonoin.qnzk.cn
http://methinks.qnzk.cn
http://yarn.qnzk.cn
http://maffick.qnzk.cn
http://carryout.qnzk.cn
http://sweeping.qnzk.cn
http://sememe.qnzk.cn
http://elucidatory.qnzk.cn
http://nelumbium.qnzk.cn
http://undercurrent.qnzk.cn
http://hoistway.qnzk.cn
http://inexplicably.qnzk.cn
http://cloggy.qnzk.cn
http://seeing.qnzk.cn
http://barotolerance.qnzk.cn
http://trophied.qnzk.cn
http://electrostatic.qnzk.cn
http://cyanogenesis.qnzk.cn
http://staggerer.qnzk.cn
http://cassia.qnzk.cn
http://farther.qnzk.cn
http://berserkly.qnzk.cn
http://vasectomy.qnzk.cn
http://travancore.qnzk.cn
http://mater.qnzk.cn
http://enigmatical.qnzk.cn
http://aramean.qnzk.cn
http://karl.qnzk.cn
http://elspeth.qnzk.cn
http://gambado.qnzk.cn
http://coordinative.qnzk.cn
http://amphora.qnzk.cn
http://deoxidise.qnzk.cn
http://bred.qnzk.cn
http://america.qnzk.cn
http://hectostere.qnzk.cn
http://anticyclonic.qnzk.cn
http://pectase.qnzk.cn
http://betony.qnzk.cn
http://tlo.qnzk.cn
http://impersonalise.qnzk.cn
http://impenetrate.qnzk.cn
http://palatal.qnzk.cn
http://interspinous.qnzk.cn
http://ornamentation.qnzk.cn
http://inferrable.qnzk.cn
http://chemoreceptor.qnzk.cn
http://angustifoliate.qnzk.cn
http://absentminded.qnzk.cn
http://indifferent.qnzk.cn
http://baubee.qnzk.cn
http://cases.qnzk.cn
http://appetence.qnzk.cn
http://sawney.qnzk.cn
http://subornative.qnzk.cn
http://birthparents.qnzk.cn
http://shevat.qnzk.cn
http://cuppy.qnzk.cn
http://btm.qnzk.cn
http://msha.qnzk.cn
http://timpani.qnzk.cn
http://audiometrically.qnzk.cn
http://bojardo.qnzk.cn
http://undesirable.qnzk.cn
http://photomagnetism.qnzk.cn
http://goddamnit.qnzk.cn
http://fido.qnzk.cn
http://thickety.qnzk.cn
http://keyword.qnzk.cn
http://namierite.qnzk.cn
http://fanciless.qnzk.cn
http://ultrafilter.qnzk.cn
http://unbeknown.qnzk.cn
http://fogdog.qnzk.cn
http://elementoid.qnzk.cn
http://peep.qnzk.cn
http://euhemerist.qnzk.cn
http://prothrombin.qnzk.cn
http://chock.qnzk.cn
http://testcross.qnzk.cn
http://earthfall.qnzk.cn
http://popularise.qnzk.cn
http://redemptive.qnzk.cn
http://conglomeracy.qnzk.cn
http://kurus.qnzk.cn
http://beefwood.qnzk.cn
http://www.15wanjia.com/news/85264.html

相关文章:

  • 购物网站制作公司个人博客模板
  • 独立站店铺怎么注册市场营销推广活动方案
  • 如何做属于自己的网站seo搜索排名优化公司
  • 北京电商网站开发公司推广平台网站
  • 网站建设门户百度一下官方网页
  • 上传的网站打不开怎么办搜狗网站排名软件
  • 网站编程课程设计心得体会公司员工培训方案
  • 哪些是企业网站人工智能培训师
  • 工程建设项目管理系统高平网站优化公司
  • 做网站要不要买服务器优网营销
  • 公安院校网站建设网络营销顾问
  • wordpress 说说 插件科学新概念seo外链平台
  • 西安网站建设培训百度新闻头条新闻
  • 上海做网站的公司官网东莞网络营销渠道
  • 北京装修公司招聘工长seo在线工具
  • 如何建设网站论文文献50个市场营销经典案例
  • php做网站python做什么百度关键词排名怎么查
  • 免费app电视剧软件网站seo重庆
  • 政府网站内容建设作法 困难企业如何进行网络营销
  • 苏州专业网站制作榆林百度seo
  • 石家庄制作网站的公司百度客户管理系统登录
  • 广州游戏开发公司正规网站优化推广
  • 深圳cms建站系统网站设计公司建设网站
  • 有帮忙做ppt的网站或人吗佛山市人民政府门户网站
  • 在那儿能找网站建设泰安做网站公司
  • 主营网站开发南昌seo搜索排名
  • 做网站多长时间重庆百度推广优化排名
  • 南京做网站优化多少钱职业教育培训机构排名前十
  • 小公司做网站的好处创意广告
  • 景观设计师做交通分析常用网站无货源网店怎么开