当前位置:网站首页>[paper reading] kgat: knowledge graph attention network for recommendation
[paper reading] kgat: knowledge graph attention network for recommendation
2022-07-05 10:19:00 【Let me be quiet for a while】
original text :https://arxiv.org/pdf/1905.07854.pdf
Code :https://github.com/xiangwang1223/knowledge_graph_attention_network
What: To provide more accuracy 、 Diverse and interpretable suggestions , Must go beyond the user - Modeling of object interaction , And consider Additional information ( such as KG). In this paper , We studied Knowledge map (KG) The utility of , It does this by associating items with their properties , To break the Independent interaction hypothesis .( By way of KG and user-item graph Combine , Capture high-dimensional connections )【 High dimensional connection :which connect two items with one or multiple linked attributes】
Why: Traditional approach , Such as factoring machine (FM) Think of it as a supervised learning problem , It assumes that each interaction is an independent instance , And encode the edge information . Because the relationship between instances or objects is ignored ( for example , The director of one film is also the actor of another film ), These methods are not enough to extract from the collective behavior of users Cooperative signal .(collaborative signal)
How: KGAT Recursively from the node's neighbors ( It can be a user 、 Item or attribute ) Propagate embed and aggregate , To refine the embedding of nodes , And use the attention mechanism to distinguish the importance of neighbors .
Result
Conclusion
This article emphasizes the importance of collaboration signals , And it aims to surpass users - Modeling object interaction , So consider adding additional information ; By way of 【 Knowledge map 】 and 【 user - Product interaction diagram 】 Combine , obtain 【 Collaborative knowledge map CKG】, To capture high-dimensional connections 、 Cooperative signal . The way to do it is , Through multi-layer embedding aggregation including attention mechanism, it comes from a node neighbor ( It can be user、item、attribute), To update 、 Optimize embedded representation .
Model

The author begins with an example , Explain adding KG Then capture High dimensional connection 、 Cooperative signal Importance .
Collaborative filtering method , Focus on finding similar users ( Interact with a item), So by i1,u1 Can find u4 and u5; Monitor learning methods , Emphasize looking for similar items ( Have the same properties ), So by e1,i1 find i2.
The above method cannot be found u1 and u2、u3 of , Unable to find ,u1 and i3、i4 of .

1. CKG Embedding Layer
Energy fraction of triples (TransR):( The lower the score, the higher the confidence 【 There is more relationship between two entities 】)
among ,


Optimize through pairwise sorting losses :
among ,
By randomly replacing real relationships , Training .( Equivalent to negative sampling )
【 The purpose of this layer is to learn optimization Entity 、 Embedded representation of relationships 】 It is better than direct random embedded representation .
2. Attentive Embedding Propagation Layers
This layer is based on GCN Recursive transfer embedded representation ; according to GAT Get the embedded representation of the joint level , Emphasize the importance of this high-dimensional connection .
Each layer contains 3 A component :information propagation, knowledge-aware attention, and information aggregation( Information dissemination 、 Knowledge perception, attention mechanism and information aggregation )
Information dissemination
eh Self aggregation (ego-network):
Spread information before entities and their neighbors .
Aggregate entities with their neighbors , Through the linear attenuation coefficient .
Knowledge perception attention mechanism
The attenuation coefficient is :
Make in relation r In the space of , The fraction of the attenuation coefficient obtained , From entities h And entities t The relationship between , For the closer entities , The larger the attenuation coefficient obtained , stay 【 Information dissemination 】 in , The more information you keep .
For the sake of simplicity , Use the inner product to get the fraction of the attenuation coefficient .
Re pass softmax Normalize all scores :
From this we can get , Capturing cooperative signals 、 When aggregating entity neighbors , Which entities are assigned higher scores .
In the above formula , There is more than just entity representation , There is also relationship . In order to get more information in communication , Not only the node representation as input , Also get entities h And entities t Relationship representation between .
Information aggregation
This floor is a 【eh】 and 【eh Self aggregation (ego-network)】 polymerization , Get a new entity h It means .
There are many ways :


High dimensional propagation
The above process is a complete process of one-layer aggregation , You can stack multiple levels of results , Capture high-dimensional connections and higher-order neighbor :
Each level eh Express , adopt 【 On the upper floor eh Express 】 and 【eh Self expression 】 obtain .
3. Prediction Layer
Go through the above steps , You can get user representation and item representation after multi-layer aggregation , Connect multiple representations to form a user representation and an item representation :
thus , It enriches user representation and item representation .
Reference resources :
- KGAT:Knowledge Graph Attention Network for Recommendation:https://hikg.net/archives/123/
边栏推荐
- 【小技巧】获取matlab中cdfplot函数的x轴,y轴的数值
- 高级 OpenCV:BGR 像素强度图
- uniapp + uniCloud+unipay 实现微信小程序支付功能
- 能源势动:电力行业的碳中和该如何实现?
- 【观察】跨境电商“独立站”模式崛起,如何抓住下一个红利爆发时代?
- Idea create a new sprintboot project
- > Could not create task ‘:app:MyTest. main()‘. > SourceSet with name ‘main‘ not found. Problem repair
- Constrained layout flow
- 请问大佬们 有遇到过flink cdc mongdb 执行flinksql 遇到这样的问题的么?
- leetcode:1200. 最小绝对差
猜你喜欢

自动化规范检查软件如何发展而来?

到底谁才是“良心”国产品牌?

Constraintlayout officially provides rounded imagefilterview

How to plan the career of a programmer?

Usage differences between isempty and isblank

To bring Euler's innovation to the world, SUSE should be the guide

非技术部门,如何参与 DevOps?

字节跳动面试官:一张图片占据的内存大小是如何计算

AtCoder Beginner Contest 254「E bfs」「F st表维护差分数组gcd」

Atcoder beginer contest 254 "e BFS" f st table maintenance differential array GCD "
随机推荐
Today in history: the first e-book came out; The inventor of magnetic stripe card was born; The pioneer of handheld computer was born
面试:Bitmap像素内存分配在堆内存还是在native中
各位大佬,我测试起了3条线程同时往3个mysql表中写入,每条线程分别写入100000条数据,用了f
一种用于干式脑电图的高密度256通道电极帽
Tianlong Babu TLBB series - questions about skill cooling and the number of attack ranges
RMS to EAP is simply implemented through mqtt
Design of stepping motor controller based on single chip microcomputer (forward rotation and reverse rotation indicator gear)
How to plan the career of a programmer?
The horizontally scrolling recycleview displays five and a half on one screen, lower than the average distribution of five
Activity jump encapsulation
Cerebral cortex: directed brain connection recognition widespread functional network abnormalities in Parkinson's disease
Energy momentum: how to achieve carbon neutralization in the power industry?
天龙八部TLBB系列 - 关于包裹掉落的物品
WorkManager學習一
> Could not create task ‘:app:MyTest.main()‘. > SourceSet with name ‘main‘ not found.问题修复
Swift tableview style (I) system basic
isEmpty 和 isBlank 的用法区别
非技术部门,如何参与 DevOps?
AtCoder Beginner Contest 258「ABCDEFG」
Swift set pickerview to white on black background