通过用户评级调整神经网络权重

时间:2011-12-18 11:09:25

标签: artificial-intelligence recommendation-engine neural-network

我对NN真的很陌生,我试图在我的推荐系统中实现它,为用户提供有关用户相似性的建议。 事实上,我通过不同的参数有4个不同的用户相似度,并且我使用权重来确定每个相似度在总相似度中的重要性。

区域相似性= 0.5,weightRegion = 0.6

兴趣相似度= 0.3,weightInterest = 0.8

教育相似度= 0.75,weightEducation = 1.1

位置相似度= 0.6,weightPositions = 1.5

所以计算总相似度乘以和除以权重之和:(0.5 * 0.6 + 0.3 * 0.8 + 0.75 * 1.1 + 0.6 * 1.5)/ 4 //除以权重之和,将参数放入{0..1} 所以我需要通过用户评级控制这些权重(用户点击评分从1到10,权重r校正)

我已经建立了这样的NN: Neural Network

所以我正在做的是: n = 0.25(学习k); 评级= 0.7(这是我的7评级);

NET5 = X1 * W15 + X2 * W25 + X3 * W35 + X4 * W45;

OUT5 = 1 /(1-POW(E,-net5));

真实= OUT5 *(1 + 1-等级);

ERR = OUT5 *(1-OUT5)*(实OUT5);

w15n = W15 + ERR 名词 X1;

w25n = W25 + ERR 名词的X2;

w35n = W35 + ERR 名词 X3;

w45n = W45 + ERR 名词 X4;

(即使代码格式化,它仍然说它没有正确格式化)

我做错了什么?导致这种纠正的结果根本不好。 感谢

1 个答案:

答案 0 :(得分:0)

我认为你走错了路。反向传播不是这种学习的好选择(以某种方式增量学习)。 要使用反向传播,您需要一些数据,例如1000个数据,其中不同类型的相似(输入)真相似性(输出)。然后权重将更新并更新,直到错误率降低。此外,您还需要测试数据集,这将确保结果网络即使在训练期间没有看到的相似值也能表现良好。