tracy221
tracy221
> > 您好,请问下ripplenet相关代码中,损失函数的基础部分交叉熵损失函数的代码在model.py的哪一块有具体的体现呢,代码我看的不是很明白。 > > 另外,我跑其他推荐模型的时候都会在通用的train.py文件中报如下错误,想问下您知不知道可能的原因 > > line 79, in on_epoch_end > > log(epoch, logs['loss'], logs['AUC'], logs['Precision'], logs['Recall'], > > KeyError: 'AUC' > > 感谢并期待您的回复! > > 请问用的是什么环境,我用的python3.8 tf2.4.0跑ripplenet会出错...
还想问下损失函数的部分,知识图谱嵌入损失的部分我不太理解 kge_loss = 0 # 知识图谱嵌入损失项 for hop in range(hop_size): h_expanded = tf.expand_dims(h[hop], axis=2) # batch, ripple_size, 1, dim t_expanded = tf.expand_dims(t[hop], axis=3) # batch, ripple_size, dim, 1 hRt =...
您好,请问下您是怎么构建kg图的呀?文章中说用微软的satori,但我不清楚怎么做,您方便告诉我具体过程吗?谢谢啦!
谢谢教授的解答!我还有些疑问。原始评分数据ratings.dat中总共有3952部电影,item_index2entity_id_rehashed.txt中只对其中的2445部电影进行重新编号,这些电影是如何挑选出来的呢,对这些电影重新标号的作用是什么呢?kg_part1_rehashed.txt和kg_part2_rehashed.txt文件中,第一列中数值小于2445的head_id是否对应item_index2entity_id_rehashed.txt中的第二列数值呢?感谢并期待您的回复。
王教授您好,我还有两个问题想问您: 1.对知识图谱三元组的理解问题,一跳三元组的头节点是电影id,尾节点的电影的属性id;二跳三元组的头节点和尾节点都是电影id,这样理解对吗? 2.若我对三元组的理解正确的话,在二跳三元组中,不同的电影通过相同的属性相连,比如两部电影都是喜剧,它们可以通过二跳三元组相连,但若这两部电影也同时是爱情片,在原先通过喜剧相连的基础上二跳三元组的基础上,可以再多出一个以爱情片相连的二跳三元组吗?如果可以,这两个三元组的头节点、尾节点和关系都是相同的吗? 感谢并期待您的回复,谢谢!
您好,还想问下有关知识图谱的构建问题,我有点不太明白的是三元组的头节点和尾节点是如何确定的。我注意到ripplenet模型框架图中,与seed节点形成三元组的节点并非都是以seed节点为头节点的,这张图只是举例吗,还是实际中确实有这样的情况?我的疑问是右侧的seed为什么是它右侧节点的尾节点,而不是头节点呢?是所有的用户共用一张所有节点和方向都相同的图谱吗?还是说每个用户都有各自的图谱,用户间的图谱的节点和方向未必相同?
您好,我的疑问其实是知识图谱中三元组的关系的方向怎么确定,即如何确定哪个是头节点,哪个是尾节点。举个例子,在论文给出的figure3中,假设用户A看过电影Forrest Gump,用户A的兴趣可以沿着Forrest Gump传播到Tom Hanks和U.S.,但根据图中箭头的方向,可以通过Tom Hanks传播到电影Cast Away,进而给用户A推荐Cast Away,但不能通过U.S.传播到Cast Away,因为箭头的方向是Cast Away指向U.S.,我的疑问就是为什么同样是电影的属性,Tom Hanks是指向Cast Away的,但U.S.是被Cast Away指向的?再比如另一用户B看过电影Cast Away,但如果按照figure3中节点关系的传播方向,Cast Away是无法通过U.S.或Tom Hanks传播到Forrest Gump的,所以对于用户B,就不能根据U.S.或Tom Hanks给他推荐电影Forrest Gump了吗? 