matlab分时代码通过高斯过程探索在前N个推荐系统中的开发
CGP-RANK算法的简单MATLAB实现[1]。
CGP-RANK排列了推荐的有序列表,这是一种非常适合用于Web规模任务的算法,与点击反馈相对较少的情况相比,可用于推荐的项目数量过多,上下文空间过于复杂。
CGP-RANK是一种高置信度样式算法,它利用根据高斯过程内核函数指定的先验信息,从而可以三种方式共享反馈:列表位置之间,项目之间以及上下文之间[2]。
内核的选择表达了我们先前对奖励在项目上下文空间中变化的平滑度的先前假设,并允许我们使用高斯过程模型预测尚未开发的列表的性能。
依存关系
您需要具有以下库。
GPML
Matlab
Code
version
4.2
不要忘记将库及其所有子文件夹添加到您的项目路径中。
怎么跑
您将需要初始化几件事,让我们一步一步地学习它们!
创建奖励功能
我们将把该函数的句柄传递给CGP-RANK,奖励函数应将一系列项和上下文作为参数,只要您的内核支持,它们就可以是多维的。
我们首先用一个非常简单的奖励函数进行测试,奖励=
sin(item)+
cos(context)+
noise。
评论0
最新资源