Chong Chen
Chong Chen
我们拿到的数据就是没有时间戳的
if epoch < 500: if epoch % 250 == 0: dev_step(tset, train_m, test_m) dev_cold(u_train,i_train, tset, train_m, test_m) These codes mean that the evaluation results are printed every 250 epochs, you...
if you do not want to see the training log, just hide this line: print 'loss,loss_no_reg,loss_reg ', loss[0] / ll, loss[1] / ll, loss[2] / ll
没有遇到过这个问题,你是改代码了吗?如果不改的话是可以直接运行的
EHCF_sin和EHCF的区别是EHCF_sin只使用了purchase这一种用户行为数据,是一个广泛意义上的推荐任务。而EHCF也同时使用了用户和商品其他种类的行为数据,比如view和cart,我们的文章也指出了使用这些额外种类的行为信息可以极大的提升对目标行为(purchase)的预测效果。 user_te2 = user_te[:, np.newaxis] 这个语句的意思是对向量添加一维,比如把 [1 2 3 4 5] 变成 [[1] [2] [3] [4] [5]] 你看看是不是哪里改代码的时候改错了。
不客气!觉得我们的方法有用的话点个星再走喽哈哈😆
因为常数项对于求导是无用的可以消掉,你可以对比公式5和公式6,第一项为0或者1,那么它的展开后是一个常数,可以直接去掉。
@morningnn Hi, (1)公式2里面是按位点乘(element-wise product of vectors)。 (2)文章中提到的positive data指的是在隐式反馈(implicit feedback)中存在的用户交互数据,如用户的点击、购买、和观看行为等。因为在隐式反馈数据中往往只存在有正反馈数据而没有负反馈数据,在训练模型时需要使用一些策略来产生负反馈数据。常用的有基于采样的(negative sampling)方法和非采样(non-sampling, whole-data)方法,而本文使用的是非采样策略。文章也通过实验展示了非采样训练方法对于提升推荐系统的表现是非常有效的。(另外如果还有问题的话可以重开一个issue哈)
python 2.7.12 tensorflow =1.7.0rc1
一言难尽:(