My favorites | Sign in
Project Home Downloads Wiki Issues Source
Search
for
knnResults  
The results of knn model
knn, movielens
Updated Apr 6, 2011 by honglianglv

Introduction

The results of knn model

Details

some results:

  • movielens 100K dataset(u1),K=100, RMSE=1.07137
  • movielens 100K dataset(u1),K=300, RMSE=1.06713

Comment by yuye.sam...@gmail.com, May 14, 2011

问一下,为什么movielens_kmax跑出来所有数据都是0? 设k=100,300都是。 导致RMSE都是0.985617

Comment by yuye.sam...@gmail.com, May 14, 2011

我把knnBase.cpp和getkmaxth.cpp里的分割符改成"\t"好像就可以了。 100K u1 K=300 RMSE=1.02165 K=100 RMSE=1.01153

Comment by cwyal...@gmail.com, May 14, 2011

movielens 10K u1的K=300,RMSE:1.06713; movielens 10K u1的K=100,RMSE:1.07137;LZ好像把数据标错了。。

Comment by LondonBe...@gmail.com, Jun 8, 2011

为什么RMSE=1.05584,无论k=100 or 300??

Comment by project member honglianglv, Jun 9, 2011

以前确实有bug,原因是我将缩进格式中的tab换成空格的过程中,将分割符的tab也替换了,非常抱歉,已经改正,请大家更新代码 movielens 100K dataset(ua),K=10, RMSE=1.08201 movielens 100K dataset(ua),K=300,RMSE=1.0796 movielens 100K dataset(ua),K=1000,RMSE=1.03437

Comment by project member honglianglv, Jun 9, 2011

调节KNN中的K的大小在getkmax.cpp中的"#define KNN_K 1000"这么一句!

Comment by LondonBe...@gmail.com, Jun 9, 2011

K的大小可以直接调整getkmax.cpp的main函数中的knn::getKMaxSim(K)~原来如此~

Comment by cwyal...@gmail.com, Jun 10, 2011

在做KDD cup,里面item-item算getsim太慢。item cf算法主要慢应该就是慢在找交集上了。。 两个item各有10w user取交集用map的find功能太慢了。而且lz应该在getsim的find里从itemUserListitem1?.size()小的找size()大的。 另外,我把item-user做成文件存起来,把user排序后,用链表的找法(把小的一边序号+1)比map find要快。。 不知道LZ有没有能比较快的找出70%交集的方法?

Comment by sallo...@gmail.com, Jul 14, 2011

你这程序好像有bug , getkmaxth.cpp 生成的最大相似度值都是0 , line 74: 对于第一个id的 simArray 此时还是空。 line 94,95 : 在程序的逻辑中不可能执行,pch = strtok (NULL,separator);这个函数导致while 只执行一次。 不知道我下的是不是最新版本。


Sign in to add a comment
Powered by Google Project Hosting