回复 第107楼 的 zaq1xsw2tktk:statistical learning的基本假设是对于同一总体的个体,具有相似的统计特征。因此从同一总体中获得一定规模的抽样后,做出的模型,应该能够应用的同一总体的其余个体的行为预测中去,当然效果要视建模方法而定。因此test中没有覆盖train中的所有user_id_a,应该是正常的,也恰好是模型的价值所在。
tk兄提到的“在大多数情况下需要我们预测USER_ID_A的行为是,往往我们也拥有部分USER_ID_A之前的行为,来对我们的模型针对USER_ID_A进行修正”,是一种很理想的状态。在实际的推荐系统里,由于常常需要给新用户推荐,而此时新用户的行为数据却是空白,这就是所谓的冷启动问题,是备受关注的问题之一。
不到30行的cpp就能达到0.22+,对于企业应用而言其实是个好消息,简单有效。后续我将做一个模拟,并设计一种图形用以直观展示NDCG在不同取值范围内时的实际推荐效果。