基于支持向量机回归多属性智能电视电影推荐
基于支持向量机回归多属性智能电视电影推荐 传统协同过滤推荐技术存在新用户难以推荐的冷启动问题.尤其在智 能电视网络、视频网站等,只有用户信息,没有浏览或评分记录,智能电视电影 系统难以有效推荐。而基于内容过滤技术可有效解决新用户冷启动问题对于新用 户,ChenLin提出向用户推荐“专家用户”浏览的电影…。施凤仙等提出基于用户 属性分类区分用户兴趣度的协同过滤算法按比重分配用户相似性和商品的用户 兴趣度。但它们的关系并不一定是线性的。而支持向量机在解决非线性回归问题 有着不错的效果。1.理论基础 1.1 min-max标准化 在数据分析之前’通常需要先将数据标准化’利用标准化后的数据进 行数据分析不同数a的用户对电影评过分,所以电影的厲性评分概率可能在不同 的以间,为了消除这种影响,需要将数据标准化处理,以解决数据指标之间的可 比性…本文采川min-max标准化方法,也称为离差标准化,就是对原始数据的线 性变换,使结果函数为式中:
为样本数据最小值;
„为样本数据最大值;x为样本数据。
1.2支持向量机回归 回归问题是从训练样本中学习输人输出变量之间的关系/U)。考虑一 个训练样本数据集丨Ui,yi),(x2,y2),•••,(xi,y.),"■r{x„yJ)o对于i=l,2,3,其中每个 ac,eR"表不样本的输人空间,与其相对应的目标值y,,回归问题的思想是从中学习 一个闲数,给定^的值,能够预测y,的值。一般的SVR函数形式为式中:和6是要寻找的确定最优超平面的参数值,中U)代表了从R”到高 维空间的一个非线性变换,^标是找出和6的值,使回归风险系数最小化,回归风险 系数为 其中:厂(•)是损失函数,常数C0,表示对估计偏差的惩罚度,最常用 的损失函数Vapnik提出的e-敏感度函数为 此处的H标是确定适当的参数值和6,从而使/GO逼近未知0标函数。
如果yu,)与y,的差值的绝对值大于6:,损失函数厂(•)的值等于/U)的估计与期望 响应y,的差值的绝对值再减去e,否则损失函数值为0。原问题可以表示为 使用拉格朗日乘子法得到对偶问题是 使用二次优化方法求解和《二进而得出《,。设置偏移量6=0,ft由参数和 惩罚因子C就控制了式(10)逼近闲数的VC维丨… 式中:/C(u)表7K核函数 2 基于支持向量机回归的用户多属性推荐算法 2.1 电影对用户属性的概率评分 电影用户评分矩阵,是电影被用户评分的历史记录,而每个用户都有 年龄段、职业等属性。电影被某个年龄段的用户评分大小及个数,反映了这个年 龄段的用户对电影的喜爱程度。本文用7个年龄段代表人的年龄。借鉴贝叶斯定 电影受某个年龄段的喜爱程度可表示为式中:m.(aget)表示年龄段的先验概率;)表小•电影被用户评分的总个 数;m表示电影被这个年龄段评分的总和;而)表示电影对各个年龄段的概申.评分。
求出每个电影对年龄段的概率评分,每个电影被不同用户数量评分, 所以用min-max方法标准化电影的属性概申.评分。
伪代码如下:
2.2单属性预测用户对电影的评分 为用户《推荐最喜欢的前iV个电影一根据用户u的年龄段和电影的年 龄段概率评分.预测用户对每个电影的评分:根据预测评分大小,为用户推荐预测 if分最大的前/V个电影。
2.3支持向量机回归用户多属性模型 不同年龄段A.不同电影,的概申.评分不同。同理,不同职业,电影的 概率评分也不同:对于用户,年龄段、职业的组合,决定了用户的喜好,但它们 并非是线性的:因而构建一个SVK用户多属性回归模型。
回归模型的输人和输出,从用户对电影t"的年龄段概率评分、职业概率评分到实际评分r,实际评分和概率评分都是标准化后的数据:特定年龄段和职 业有着鲜明喜好的用户u.冋归模型能很好的预测其偏好。模型可构建为 式中:r,是用户u给电影i的实际评分,m(ageM)是电影Z对用户年龄段A 的概率评分_Zte丨0,丨,…,6j,共7个年龄段。m(ocup,lt+)是电影!_对用户职业s 的概率评分。se{0,1,…,181,共19个职业类型。
线性回归模型并不能取得很好的回归效果,召回率甚至小于单个属性 概率评分的结果。支持向量机回归通过核函数尺U,*)将数据从输人空间非线性变 换到高维空间,从而使得数据在该空间中被转换成线性组合的。用支持向tt机回 归的方法构建非线性回归模沏,基于式(10),可构建支持向量机回归的用户多厲 性模型 求解模型时,使用序列最小优化方法求解算法,求解该支持向量机回 归问题。
2.4多属性预测用户电影评分 为每个用户构建SVR回归模型,并利用模塑,输人用户IW性、电影 属性概率评分,输出电影预测评分并排序。
已知用户u的年龄段、职业,预测用户对电影的评分。首先利用用户 属性,得出用户对每个电影的年龄段和职业厲性概率评分m(ageI;_)和m(ocu/)Ii)。
输人到支持向量机回归模型,得出预测评分6。预测评分最高的前/V个电影推荐给 用户。3实验设计及结果分析 3.1数据集和评测方法 采用mwieiens数据集,943个用户对1682个电影的10万个评分数据。
用户的年龄段和职业属性。训练(train)数据集采用全部10万个评分,验证(test)数据 集采用20%的评分数据使用C++语言,在Windows平台编写程序,实现了基于支持 向僦机回归的用户多属性推荐算法。
智能电视电影系统的最终0的是为用户推荐感兴趣的电影,本文没有 采用RMSE指标.而是采用召回率评测为用户推荐前/V个电影.推荐的电影个数和 用户实际选择的电影个数的比值,即召回率评测。召回率式为hitCouiits 3.2实验结果及分析 实验首先评测了单个属性前30的召回率。评测用户年龄段属性、职业 属性的召回率。出于降低计算复杂度的考虑,随机选择了200个用户的召回率. 做了8次重复实验,得出召回率的平均值。召回率结果见表1。
本文使用libsvm工具训练基于支持向量机回归的用户多厲性推荐模®, 并预测评分。核函数采用径向基核exp( I2)。需要找出最优的g和惩罚因子C,本文 使用网格搜索来寻找最优的g和C。网格捜索就是尝试各种U,C)对值,然后进行 交叉验证,找出精确度最高的(g,C)对。网格搜索参数g和C的范围e{0.6,0.8,…,3.0), 惩罚因子Ce丨0.02.0.04,,0.10,0.40,0.70,1.00)。详细设置见图1。比较了本文的算法和基于电影的KNN算法的召回率,基于电影KNN算 法的参数A取值100,就是取最相似的100个电影.相似性公式采用。08相关系数。
由图1的网格搜索交叉验证图可知,SVK参数g取1.6,C取0.4时召冋率 达到T最大值。
由表1可知,基于支持向量机回归用户多属性推荐算法15.25%的召回 率高于单个属性的召回率由表2的实验数据,基于支持向量机冋归用户多属性 15.25%的f{W率远卨亍基于电影的KNN推荐算法5.12%的召回率。实验结果表明 基于支持向量机回归用户多属性推荐算法提高了召回率,并可为新用户产生有效 推荐。
4结论 本文主要对智能电视电影系统新用户难以推荐的冷启动问题进行了 深人研究。采用年龄段对电影的概率评分来表示对电影喜爱程度的方法,解决用 户按诚性选择电影的M题。采用支持向tt机回归方法训练用户多属性模型,有效 解决了用户多属性结合问题。训练数据都用min-max方法标准化,使数据具有可比 性由实验结果可知,该基于支持向量机回归用户多属性推荐模型提高了召回宇-, 有效解决了新用户推荐的冷启动问题。
作者简介:
赵广杰(1986—),硕士生,CCF会员(E200038900G),研究方向为 推荐算法和网络技术应用;
尹四清(1964—),副教授,硕士生导师,主要研究方向为自然语言处理和网络信息处理。