Word2VEC_java icon indicating copy to clipboard operation
Word2VEC_java copied to clipboard

为什么CBOW模型的变量g的计算方法和源码不一样啊?

Open HongLWang opened this issue 6 years ago • 1 comments

您好,在你的Learn.jaja文件里面,第233-236行是变量g的计算方法,word2vec的源码的计算方法是和第234行一样的但是被你注释掉了,改成了236行的方法,为什么要这样改呢?这样结算出来的结果和源码差很多啊。

  // 'g' is the gradient multiplied by the learning rate
  // double g = (1 - word.codeArr[d] - f) * alpha;
  // double g = f*(1-f)*( word.codeArr[i] - f) * alpha;
  double g = f * (1 - f) * (word.codeArr[d] - f) * alpha;

HongLWang avatar Jun 19 '18 09:06 HongLWang

同样的疑问,不过我使用下面的的公式,效果还是有的。 double g = (1 - word.codeArr[d] - f) * alpha;

CallMeJiaGu avatar Oct 10 '18 02:10 CallMeJiaGu