MaximTian / TransX

Trans系列之TransE and TransH, PTransE
33 stars 12 forks source link

你好,gradient函数中调整向量的语句我实在看不懂,推导了两天了,也没推出来,求指教啊!!!!!能不能帮写一下推导过程!!泪奔!! #4

Open 27232xsl opened 5 years ago

27232xsl commented 5 years ago

gradient

MaximTian commented 5 years ago

论文里面就是按照一阶梯度下降推导的,一般采用L1距离进行求导。有没有参考thunlp实验室c++源码相关TransH的推导呢?

27232xsl commented 5 years ago

我看过thunlp的相关代码,和您的这个思路步骤都是一样的,我都没看明白,我自己求导得不到sum这个变量,我也不清楚这个sum是干嘛用的

27232xsl commented 5 years ago

BB8F2AD86D84A16B212390A0773177C3

MaximTian commented 5 years ago

你好,你的求导过程是正确的,你这里求解出来是整体的计算公式。这个sum是用来计算wr矩阵关于当前relation平面的每个维度梯度向量之和。 image 这部分相当于对wr每个维度进行了梯度更新。 对于求导多余的部分,这部分舍去的原因我自己也不清楚thunlp省略的原因,所以实现的细节还存在一些问题,但是相对于效果,我试验过没太大的差别。 然后,如果您还无法理解这部分推导的话,可以使用一些python版本的Trans系列源码

27232xsl commented 5 years ago

为什么要计算wr矩阵关于当前relation平面的每个维度梯度向量之和呢?推导出来的也不包含这一项啊,sum这项是必不可少的吗?

27232xsl commented 5 years ago

图片 请问您知道这个{ei}i=1是什么意思吗?