在推荐系统中嵌入知识图的指南

发布于:2024-10-24 编辑:匿名 来源:网络

推荐系统的核心目标是根据用户的历史行为、兴趣和偏好向用户推荐个性化内容或产品。在传统的推荐系统中,常用的方法包括协同过滤、矩阵分解和基于内容的推荐。

这些方法虽然有效,但在面对冷启动问题、数据稀疏性和复杂关系(例如用户-项目、项目-属性关联)时存在一定的局限性。为了克服这些挑战,推荐系统中引入了知识图谱(KG)。

知识图谱结构化地表示实体及其关系,并通过嵌入技术将这些实体和关系映射到低维向量空间,可以有效捕获复杂的语义信息,弥补传统推荐算法在数据关联性处理方面的缺点。在推荐系统中嵌入知识图的优点。

将知识图谱嵌入技术引入推荐系统带来一系列优势: 优点:解决数据稀疏问题 通过知识图谱捕捉多层次关系信息,填补传统推荐系统数据不足的空白 空白语义的增强知识图谱嵌入关联可以捕获项目和属性之间的深层语义关系,提高推荐的准确性并缓解冷启动问题。即使用户行为数据较少,也可以通过知识图谱中的信息进行个性化推荐。

跨领域推荐的可能性知识图谱可以连接不同领域的实体和关系,扩展推荐系统的应用场景。这些优点使得知识图嵌入在解决推荐系统中的各种问题方面显示出巨大的潜力。

越来越多的研究和应用将其引入各种推荐场景,如电商推荐、社交推荐、新闻推荐等。构建知识图以嵌入推荐系统的关键步骤知识图的构建在推荐系统中使用知识图的第一步是构建综合图。

知识图通常由实体(例如用户、项目、属性)以及它们之间的关系组成。构建知识图谱的过程包括数据收集、实体识别和关系挖掘。

例如,在电影推荐系统中,实体可以包括电影、演员、导演、用户等,关系可以包括主演、导演、喜欢等。实体1关系实体2用户A喜欢电影)、文本数据等知识图谱嵌入模型的选择构建完知识图谱后,下一步的任务是选择合适的嵌入模型,将知识图谱中的实体和关系转换为低维向量。

常用的知识图谱嵌入模型包括: 模型名称 优点 缺点 TransE适合简单关系,计算效率高。它无法处理复杂的关系,例如多对多和多对一。

TransH 可以处理多对多关系,扩展了 TransE 处理复杂和高级关系的能力。一阶关系处理效果较弱。

ComplEx通过复杂向量处理复杂关系,适合大比例尺地图。计算复杂度高,训练成本高。

RotatE使用旋转操作来处理关系,适用于多种关系模型。相对复杂的关系模型需要较长的训练时间。

这些模型可以将知识图中的实体和关系转换为可用于推荐的向量表示。数据预处理 在训练嵌入模型之前,需要对数据进行预处理。

推荐系统中的数据通常包括用户与商品的交互信息(如点击、购买、评分)和知识图谱信息。我们需要将这些数据整合在一起,形成统一的训练数据集。

用户-项目交互数据:表示用户对项目的行为,例如“用户A点击了项目B”。知识图谱三元组:表示物品或用户与其他实体之间的关系,例如“物品B属于类别C”。

这些数据需要格式化为适合嵌入模型处理的三元组(h,r,t),其中h是头实体,r是关系,t是尾实体。代码部署过程使用Python和开源库OpenKE来实现推荐系统中嵌入的知识图谱的部署。

本文将以RotatE模型为例进行演示,并通过示例代码详细讲解模型的训练和应用。环境准备 1 安装依赖库 确保 Python 环境已经安装了所需的依赖库,可以通过以下命令安装: 代码语言:bash copy pip install openkepip install pandas numpy2 数据准备 假设我们有以下用户项交互数据和知识图三元组:用户-项目交互数据(interactions.txt):用户项目评分用户1电影A5用户2电影B3用户3电影C4知识图三元组(kg.txt):实体1关系实体2电影A导演导演 X 电影 B 主演 演员 Y 演员 Y 联合导演1 加载数据 加载并预处理用户交互数据和知识图谱数据: 代码语言:python 代码运行次数:0 Copy Cloud Studio code run import pandas as pd# 加载用户交互数据Interactions = pd.read_csv('interactions.txt' , sep='\t')# 加载知识图谱三元组数据 kg = pd.read_csv('kg.txt', sep='\t')# 打印数据示例 print(interactions.head())print(kg .head( ))2 模型训练 接下来,我们使用OpenKE库对知识图谱进行嵌入训练。

代码语言:python 代码运行次数:0 复制 Cloud Studio 代码运行 from openke.config import Trainerfrom openke.module.model import RotatEfrom openke.data import TrainDataLoader# 加载训练数据 train_dataloader = TrainDataLoader( in_path="./data/", nbatches =,threads=8,sampling_mode="normal",bern_flag=1,filter_flag=1,neg_ent=25,neg_rel=0)#初始化RotatE模型rotate = RotatE(ent_tot=train_dataloader.get_ent_tot(),rel_tot=train_dataloader.get_rel_tot ( ), dim=, margin=6.0, epsilon=2.0)# 定义训练器 trainer = Trainer( model=rotate, data_loader=train_dataloader, train_times=, alpha=0., use_gpu=True)# 开始训练 trainer.run()#保存模型rotate.save_checkpoint('./checkpoint/rotate.ckpt') 模型评估和推荐训练完成后,我们就可以使用模型进行推荐了。推荐的任务是根据用户的历史行为和知识图谱中的信息来预测用户可能喜欢的项目。

1 加载模型并执行推荐代码 语言:python 代码运行次数:0 复制 Cloud Studio 代码 run from openke.config import Tester# 加载模型rotate.load_checkpoint('./checkpoint/rotate.ckpt')# 加载测试数据 test_dataloader = TestDataLoader ("./data/", "link")# 测试模型 tester = Tester(model=rotate, data_loader=test_dataloader, use_gpu=True)tester.run_link_prediction(type_constrain=False)# 根据用户历史推荐项目 def推荐( user, top_k=5): # 根据嵌入向量计算用户可能感兴趣的item的pass # 实现推荐逻辑 2 结果分析 通过知识图谱嵌入模型推荐后,我们可以评估其性能指标,例如Hit@K 和 MRR。这些指标衡量推荐结果的准确性。

指标 说明 Hit@K 推荐结果前 K 项中是否达到 MRR(平均倒数排名),推荐项排名是否靠前。 3 基于嵌入向量的推荐最后一步是基于训练好的嵌入向量进行推荐。

根据用户的历史行为数据,我们可以预测用户可能感兴趣的项目。

在推荐系统中嵌入知识图的指南

站长声明

版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。

标签:

相关文章

  • 一键测量让智能手表重回便捷,Amazfit以“小步”跃进下一阶段

    一键测量让智能手表重回便捷,Amazfit以“小步”跃进下一阶段

    疫情过去两年,大家都希望再次进步。 10月12日,Amazfit发布了多款硬件新品,并正式中文名称:悦沃。 尽管黄汪在会议开始时只花了几分钟介绍这个名字,但这个词却贯穿了整个会议,成为会议上最重要的“新产品”。 刚刚结束发布会的华米科技CEO黄汪在会后匆匆赶往群访室。 在回

    06-21

  • 铟泰公司技术专家将在CEIA贵阳站发表演讲

    铟泰公司技术专家将在CEIA贵阳站发表演讲

    铟泰公司技术经理梁银潭将在CEIA电子智能制造贵阳站发表演讲(7月26日)。 届时,梁银潭的演讲《焊接材料对可靠性的影响》将与大家分享如何利用材料来解决焊接中的诸多问题,如枕状缺陷、NWO开焊问题、葡萄球缺陷和SIR性能问题。 他还将介绍如何使用材料来提高最终产品的可靠

    06-06

  • 陈志武对话殷哲:如何在波动的市场中实现投资“稳赢”?过去的

    陈志武对话殷哲:如何在波动的市场中实现投资“稳赢”?过去的

    年里,我们见证了许多历史性事件。 在COVID-19疫情黑天鹅事件的影响下,美国最新失业率预计高达25%,而中国一季度GDP录得负增长-6.8%;在持续的经济压力下,全球股市、债市、原油、黄金市场出现剧烈动荡。 ,投资风险显着增加。 在全球金融动荡的背景下,还有什么办法可以进行

    06-17

  • 众神之战 -赛事升级,4.1亿元奖金纳入浙江赛区奖励权益,

    众神之战 -赛事升级,4.1亿元奖金纳入浙江赛区奖励权益,

    浙江企业家看了:政策和现金奖励共计4.1亿元;知名媒体独家专访报道;数千万元的融资对接,构成了封神之战(浙江赛区)的3D立体奖励设定,你不容错过!奖项及奖励 1、浙江赛区奖项及奖励设置 1、浙江赛区总决赛冠军 1)在中国(杭州)人工智能小镇工商注册并入驻写字楼者,可

    06-18

  • 谷歌Pixel 4发布会前瞻:全新外观、黑科技众多、还有5G版本?

    谷歌Pixel 4发布会前瞻:全新外观、黑科技众多、还有5G版本?

    此后,谷歌每年10月都会发布最新的Pixel智能手机型号,今年也不例外。 2017年,谷歌将发布会定在10月15日。 发布会召开时,其即将推出的产品备受关注——尽管谷歌此前已经泄露了大量有关Pixel 4的产品信息。 不过,值得注意的是,有消息称,在除了发布Pixel 4之外,谷歌还可能

    06-17

  • 10亿元,区级政府产业引导基金落地山西

    10亿元,区级政府产业引导基金落地山西

    为助力产业发展,晋源区设立全市首个区级政府产业引导基金,基金规模初步规划10亿元。 近年来,晋源区以辖区内工业项目为重点,重点打造北中南三大发展板块,全力推动经济高质量发展。 北部城市核心发展板块重点发展现代商业、楼宇经济、数字产业、金融等现代服务业;中央综合

    06-17

  • 不负美名 OPPO R系列产品评测

    不负美名 OPPO R系列产品评测

    众所周知,目前市面上消费级无人机的控制方式主要有两种:遥控器和手机。 与智能手机相比,遥控器可以更精准地控制飞行器,但考虑到便携性,现有的便携式无人机基本都是通过手机控制。 Manta S6的标准模式同样采用手机控制方式,但客观地考虑到用户对控制精度和手感的要求,

    06-18

  • 东北这里设立引导基金,首期50亿

    东北这里设立引导基金,首期50亿

    据投资界11月2日消息,投资界从南粤基金公众号获悉,近日,大连市正式审核通过并授权签署母基金委托管理协议。 这只来自广州的南粤基金正式成为大连引导基金的母基金管理人。 全面负责大连引导基金的设立、投资、管理和退出,推动政府母基金支持区域经济转型和高质量发展进入

    06-18

  • 张德芬空间获1000万元A轮融资,投资方为喜马拉雅,

    张德芬空间获1000万元A轮融资,投资方为喜马拉雅,

    据投资界3月9日消息,张德芬空间宣布完成1000万元A轮融资,投资方为喜马拉雅。 张德芬空间是知名畅销书作家作家张德芬于2006年创立的个人成长平台,倡导自我负责的成长理念。 目前在网用户超过1万,付费用户超过10万。 为了利用与时俱进的媒体传播方式普及心理健康知识,张德

    06-18

  • 陆金所拟赴美IPO融资30亿美元

    陆金所拟赴美IPO融资30亿美元

    知情人士人士表示,陆金所赴美IPO融资目标为30亿美元。

    06-17

  • AI语音独角兽“佩戴”完成数亿元Pre-IPO轮融资

    AI语音独角兽“佩戴”完成数亿元Pre-IPO轮融资

    投资界(ID:pedaily)8月27日消息,苏州佩戴信息技术有限公司近日宣布获得数百万元融资数百万元Pre-IPO轮战略投资。 本轮投资参与方包括珠海大横琴、美的资本、上海交大基金会旗下汉源资产、中信证投、元和控股等投资机构。 Spichi是国内一家对话式人工智能公司。 本轮融资后

    06-18

  • 初心、利益、人类危机:奥特曼正式重返OpenAI

    初心、利益、人类危机:奥特曼正式重返OpenAI

    数小时前,OpenAI官网发布新文公告宣布:奥特曼(萨姆奥尔特曼)将正式重返OpenAI担任CEO,Mira将重返OpenAI担任CEO CTO,新董事俱乐部将由布雷特泰勒(可能是支持奥特曼的激进分子)、拉里萨默斯(可能是激进分子)和亚当D'Angelo(D'Angelo是仅存的老董事,曾经支持奥特曼

    06-18