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

CNAN知识图谱辅助推荐系统

CNAN知识图谱辅助推荐系统

文章介绍了一个基于KG的推荐系统模型,代码也已开源,可以看出主要follow了KGNN-LS 。算法流程大致如下:

img

1. 算法介绍

算法除去attention机制外,主要的思想在于:user由交互过的item来表示、item由交互过的user交互过的item表示。如下图:

img

即user自身是不具备embedding表示的,完全靠KG部分。 这样的好处在于可以很方便的处理新增加的user,并不需要重新训练新用户的embedding。

user的initial entity set(即该user交互过的item id在KG的id)定义为:

img

item的initial entity set定义为:

img

�� 是item交互过的user交互过的item集合,公式3将item id转化为在KG的id,即对齐操作。

由此,我们相当于得到了user、item的邻居set,再由这些邻居set在KG中延伸出 � 阶邻居做聚合,第 � 阶tail entity集合与三元组集合定义为:

img

img

符号 � 代表某个user或item。如下图所示,多个Layer即代表多阶邻居:

img

这一步在算法执行中会占据相当大的时间。

2.聚合方式

对于某个triplet (��ℎ,�,���) 而言,我们定义从tail entity ��� 沿着 � 聚合到head entity �ℎ� 得到的attentive embedding �� :

img

img

img

CKAN的聚集首先将不同layer(总共 � 个layer)的三元组分别聚集得到 �� 、再将处于相同layer的 �� 累加到一起作为该layer的表示:

img

接着,除去这 � 个向量外,还会将initial entity set的embedding累加起来作为第0阶layer表示:

img

对于target item而言,它自身也是entity,所以单独多引入一个origin embedding:

img

因此,target user和target item拥有如下embedding set:

img

最后聚合target user/target item的embedding set得到final embedding。正如图一的Knowledge-aware Attentive Network所示。聚合的方式有三种:

img

可以看出CKAN的聚集和其他的GNN算法不同,一般的GNN聚集是聚集多次、最后多阶信息都会聚集在target node上。训练采用cross-entropy loss。

3.实验

实验对比如下:

img

loss。

3.实验

实验对比如下:

[外链图片转存中…(img-XHaKhNr4-1709550222389)]

数据集均是采用KGNN-LS使用的数据集

相关文章:

CNAN知识图谱辅助推荐系统

CNAN知识图谱辅助推荐系统 文章介绍了一个基于KG的推荐系统模型,代码也已开源,可以看出主要follow了KGNN-LS 。算法流程大致如下: 1. 算法介绍 算法除去attention机制外,主要的思想在于:user由交互过的item来表示、i…...

大数据经典面试例题

程序员的金三银四求职宝典 随着春天的脚步渐近,对于许多程序员来说,一年中最繁忙、最重要的面试季节也随之而来。金三银四,即三月和四月,被广大程序员视为求职的黄金时期。在这两个月里,各大公司纷纷开放招聘&#xf…...

软考56-上午题-【数据库】-数据库设计步骤2

一、回顾:数据库设计的步骤 1、用户需求分析:手机用户需求,确定系统边界; 2、概念设计(概念结构设计):是抽象概念模型,较理想的是采用E-R方法。 3、逻辑设计:E-R图——…...

抖店入驻费用是多少?新手入驻都有哪些要求?2024费用明细!

我是电商珠珠 我做电商做了将近五年,做抖店做了三年多,期间还带着学员一起做店。 今天,就来给大家详细的讲一下在抖音开店,需要多少费用,最低需要投入多少。 1、营业执照200元左右 就拿个体店举例,在入…...

2024东南大学553复试真题及笔记

2023年真题知识点 引用指针 题目为 传递一个指针的引用做修改,输出指针指向的结果,但是指针被修改,结果就不一样了。 static 静态变量 类里面的静态成员变量,很简单的题目 for循环 看循环的内容输出字符串 try try catch捕…...

编程笔记 html5cssjs 096 JavaScript 前端开发(完结)

编程笔记 html5&css&js 096 JavaScript 前端开发 (完结) 一、前端开发二、范围三、价值四、在软件开发中地位总结 前端开发在软件开发生态系统中扮演着至关重要的角色。随着Web技术和移动互联网的发展,前端不再是简单的页面展示&…...

案例介绍:信息抽取技术在汽车销售与分销策略中的应用与实践

一、引言 在当今竞争激烈的汽车制造业中,成功的销售策略、市场营销和分销网络的构建是确保品牌立足市场的关键。作为一名经验丰富的项目经理,我曾领导一个专注于汽车销售和分销的项目,该项目深入挖掘市场数据,运用先进的信息抽取…...

几种常用的企业加密文件传输方式,最后一种更佳!

随着远程工作和云计算服务的广泛采用,企业必须实施有效的策略来保障敏感信息在传输过程中的安全性。本文将探讨企业在文件加密传输方面的几种常用策略,并重点介绍最后一种方式是如何利用其创新技术为企业提供数据传输的安全保障。 文件加密传输策略 企业…...

【全志D1-H 哪吒开发板】Debian系统安装调教和点灯指南

全志D1-H开发板【哪吒】使用Deabian系统入门 特别说明: 因为涉及到操作较多,博文可能会导致格式丢失 其中内容,会根据后续使用做优化调整 目录: 参考资料固件烧录启动调教点灯问题 〇、参考资料 官方资料 开发板-D1开发板【…...

Redis 8种基本数据类型及常用命令和数据类型的应用场景

小伙伴们好,欢迎关注,一起学习,无限进步 文章内容为学习的一些笔记及工作中遇到的一些问题 文章目录 Redis 五大数据类型keyStringListSetHashSorted Set 三种特殊类型Geospatial 地理位置HyperloglogBitmap Redis 五大数据类型 redis 官方网…...

JAVA内存模型与JVM内存结构

注意区分Java内存模型(Java Memory Model,简称JMM)与Jvm内存结构,前者与多线程相关,后者与JVM内部存储相关。本文会对两者进行简单介绍。 一、JAVA内存模型(JMM) 1. 概念 说来话长,由于在不同硬件厂商和…...

双导师的中国社科院与英国斯特灵大学创新与领导力博士

自1978年恢复高考之后,很长一段时间里我国的高校系统处于人才很匮乏的状态,那个时候很多高校招聘了大量硕士学历教师(其中很多人在留校后又读了在职博士),而且都是事业编制。那么接下来小编与中国社科院与英国斯特灵大…...

OpenXR 超详细的spec--API初始化介绍

3.API 初始化 3.1 Exported Functions 实现API loader的动态链接库(so/dll)必须export all core OpenXR API functions。然而application可以通过使用xrGetInstanceProcAddr()来获取指向extension函数的指针。 3.2 Function Pointers OpenXR所有函数的指针都可以通过函数xr…...

认识通讯协议——TCP/IP、UDP协议的区别,HTTP通讯协议的理解

目录 引出认识通讯协议1、TCP/IP协议,UDP协议的区别2、HTTP通讯协议的讲解 Redis冲冲冲——缓存三兄弟:缓存击穿、穿透、雪崩缓存击穿缓存穿透缓存雪崩 总结 引出 认识通讯协议——TCP/IP、UDP协议的区别,HTTP通讯协议的理解 认识通讯协议 …...

谈一谈工作中的前后端功能开发范围

在BS开发中,往往都是团队开发,分为前端和后端,往往经常会遇到此处功能是前端进行功能开发还是后端进行功能开发的讨论,本文以我自己的观点进行论述。 笔者的观点是: 功能实现的优先性:您强调,无…...

Kubernetes 学习总结(46)—— Pod 不停重启问题分析与解决

我们在做性能测试的时候,往往会发现我们的pod服务,频繁重启,通过kubectl get pods 命令,我们来逐步定位问题。 现象:running的pod,短时间内重启次数太多。 定位问题方法:查看pod日志 kubectl get event …...

Vulnhub靶机:Bellatrix

一、介绍 运行环境:Virtualbox 攻击机:kali(10.0.2.4) 靶机:Bellatrix(10.0.2.9) 目标:获取靶机root权限和flag 靶机下载地址:https://www.vulnhub.com/entry/hogwa…...

深入探讨 AutoGPT:彻底改变游戏的自主 AI

原文地址:Deep Dive into AutoGPT: The Autonomous AI Revolutionizing the Game 2023 年 4 月 24 日 AutoGPT 是一个功能强大的工具,它通过 API 使用 GPT-4 和 GPT-3.5,通过将项目分解为子任务并在自动循环中使用互联网和其他工具来创建完…...

Java Web之网页开发基础复习

tomcat之网页开发基础复习 **声明** :HTML标准规范 </!doctype> <html> : 根标签 <head>: 头部标签 内含<title><meta><link><style> <body>: 主体 <body></body> html标签 单标签: <标签名 \> 双标…...

华容道问题求解第一部分_详细设计(一)之棋子和游戏类_初始化部分

按&#xff1a;因为自控力和能力的原因&#xff0c;这个其实是在和代码同时进行的。 主要 类 说明 这一层是整个项目的基础&#xff0c;将对未来的算法的效率产生重要影响。为了和界面隔离&#xff0c;以及自身逻辑的清晰&#xff0c;下面的两个类是必须的&#xff0c;棋子类…...

南北阁4.1-3B极简WebUI入门必看:无需React/Vue的纯Python前端方案

南北阁4.1-3B极简WebUI入门必看&#xff1a;无需React/Vue的纯Python前端方案 想给本地部署的南北阁&#xff08;Nanbeige&#xff09;4.1-3B大模型配一个好看又好用的聊天界面&#xff0c;是不是一想到要学React、Vue这些前端框架就头大&#xff1f;或者觉得Streamlit做出来的…...

华硕笔记本终极性能优化工具:G-Helper完整使用指南

华硕笔记本终极性能优化工具&#xff1a;G-Helper完整使用指南 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting across Zephyrus, Flow, TUF, Strix, Scar,…...

如何高效实现图标自动化导入:unplugin-icons与unplugin-vue-components的完美配合指南

如何高效实现图标自动化导入&#xff1a;unplugin-icons与unplugin-vue-components的完美配合指南 【免费下载链接】unplugin-icons &#x1f939; Access thousands of icons as components on-demand universally. 项目地址: https://gitcode.com/gh_mirrors/un/unplugin-i…...

PP-DocLayoutV3开发者案例:对接LangChain文档加载器,输出标准Unstructured格式

PP-DocLayoutV3开发者案例&#xff1a;对接LangChain文档加载器&#xff0c;输出标准Unstructured格式 1. 项目背景与需求 在实际的文档处理流程中&#xff0c;我们经常需要将各种格式的文档&#xff08;PDF、图片、扫描件等&#xff09;转换为结构化的数据&#xff0c;以便后…...

【Python数据分析筑基】第九讲:时间序列分析入门——用Pandas解锁时间维度的数据洞察(万字长文+实战)

【Python数据分析筑基】第九讲&#xff1a;时间序列分析入门——用Pandas解锁时间维度的数据洞察&#xff08;万字长文实战&#xff09; 摘要&#xff1a;本文是《Python数据分析根据方向打牢Python基础10讲》系列的第九篇。在前八讲分别夯实了通用Python、NumPy、Pandas基础、…...

OpenClaw小团队协作:Qwen3.5-9B共享任务队列实践

OpenClaw小团队协作&#xff1a;Qwen3.5-9B共享任务队列实践 1. 为什么我们需要共享任务队列 去年冬天&#xff0c;我们团队遇到了一个典型的工作瓶颈。当时有三个并行的数据处理项目需要在一周内完成&#xff0c;每个项目都涉及数据清洗、分析报告生成和可视化图表制作。传统…...

从CAN到UAVCAN:一文搞懂两种协议的核心差异及迁移指南

从CAN到UAVCAN&#xff1a;两种通信协议的深度解析与迁移实战 在嵌入式系统开发领域&#xff0c;CAN总线协议已经服务了汽车电子和工业控制三十余年&#xff0c;而它的进化版本UAVCAN正在无人机和机器人领域掀起一场通信革命。当我第一次在四旋翼飞行器项目中尝试将传统CAN节点…...

即时通信|自定义基于 Netty 的二进制协议(应用层协议)+心跳检测

基于IM仿微信聊天的场景&#xff1a;TCP&#xff08;传输层&#xff09;负责&#xff1a;把字节流可靠地从A送到B自定义协议&#xff08;应用层&#xff09;负责&#xff1a;规定字节流的含义┌──────────┬──────────┬─────────────────…...

OpenClaw技能开发入门:为Qwen3-32B定制专属文件分类器

OpenClaw技能开发入门&#xff1a;为Qwen3-32B定制专属文件分类器 1. 为什么需要文件分类技能 上周我的桌面又变成了"数字垃圾场"——下载文件夹里混杂着PDF报告、会议录音、临时截图和一堆未命名的压缩包。当我第三次因为找不到客户合同而错过deadline时&#xff…...

GPT-SoVITS:革新性少样本语音合成技术深度剖析

GPT-SoVITS&#xff1a;革新性少样本语音合成技术深度剖析 【免费下载链接】GPT-SoVITS 1 min voice data can also be used to train a good TTS model! (few shot voice cloning) 项目地址: https://gitcode.com/GitHub_Trending/gp/GPT-SoVITS 引言&#xff1a;语音合…...