1、SVD特征值奇异值12Netflix Prize背景介绍目标:悬赏100万美元,将Netflix的推荐算法预测准确度提高10%。数据结构:用户ID、电影名称、日期、分数(1-5之间的整数)训练数据:48万用户对两万部电影的上亿条评分包括一个与测试数据集分布相同与测试数据集分布相同的probe数据集,包含06年附近140多万条的数据点,每个用户至少对9部电影进行了打分,服从正态分布正态分布。测试数据:280万个数据点(隐藏的隐藏的,参赛选手不能获得,并且参赛选手自己也不能获得自己模型作用在测试数据集上的最终效果)评测标准:均方误差根CineMatch精度:0.95122022-11-28数据示例
2、132022-11-28数据示例2moviemovie1 1moviemovie2 2moviemovie3 3moviemovie4 4moviemovie5 5moviemovie6 6moviemovie7 7moviemovie8 8moviemovie9 9moviemovie1010user1user11212442231user2user22211111321user3user31222341122user4user42431133114user5user54112132344user6user64133234444user7user71444211124user8user831
3、42212231user9user92212344411user10user104332242123黄色数据点代表probe数据集,用于参赛选手自己做测试用蓝色数据点代表最终的测试数据,对参赛的人来说是隐藏的42022-11-28矩阵运算(1)1111111111111111111111111112121223132=+=+nnmmnmmnnnnnmmnmmnmmmnmnaakakakaakakaaabbababaabbababaabaaaa数乘:加法:乘法:111213112132122231 122212223313233=,=+ijijijcccbbcccca ba bbbbccc520
4、22-11-28矩阵运算(2)mnnmmm=nmmn=nn62022-11-28矩阵运算(3)=abx y zcxa b cyz +ax ay azbx by bzcx cy czax by cz72022-11-28线性空间线性空间:“客观”存在的一种空间,对加法和数乘具有封闭性。向量:既有大小又有方向的量,同时没有起点没有起点线性空间的基:描述空间内向量的一组“特殊”的向量,空间内的所有向量都能被一组基的线性组合表示。举例:直线就是一维的线性空间,平面就是二维线性空间,三维立体空间就是三维线性空间。82022-11-28线性空间的基x=(1,0),y=(0,1),c(5,3)=5x+3y,
5、则c在基x,y下的坐标为(5,3);a=(1.5,1.5),b=(2,0),c=(5,3)=2a+b,则c基a,b下的坐标为(2,1);基实际就是一组人为规定的参照物,用来描述空间内的其他向量92022-11-28线性映射&线性变换空间内的线性映射称之为线性变换。102022-11-28线性变换的矩阵表示12111 11221221 122221 122121212,=+=+,=+,nnnnnnnnnnnnnnx xxPVTVT xa xa xa xT xa xa xa xT xa xa xa xT x xxT xT xT xx xxA设为数域 上线性空间 的一组基,为 的线性变换。基向量的向
6、可以被基线性表示出来,设 用矩阵表示即为:1111nnnnaaAaa112022-11-28线性变换二维空间上,对(x,y)做变换:=+212+=,=010=x x yxx yy yyyAvAvvv 矩阵表示:线性变换的特征值:为线性变换 的矩阵表示,如果存在非 值 和向量,满足 ,则称 为线性变换 的特征值,为特征值对应的特征向量。对应矩阵A122022-11-28求解特征值122110=010110-=01-2-1=0-1-2-1=00-1(-2)(-1)=00=20,=1AA vvvA vv,解得,132022-11-28求解特征向量11=22 1=20 12+2=22+=2=0=2,0
7、20 xxyyx yxyyx yxyyykk ()的特征向量:为特征值 的特征向量。()2=12 1=10 12+=2+=-=(,-)=10 xxyyx yxyyx y xx yy yk kk ()的特征向量:为的特征向量。()142022-11-28特征值的几何意义(1)21,012+=,3=-12 3-15=-1-1AAAnnyAxmynxy,则 在线性变换 的作用下变为152022-11-28特征值的几何意义(2)112212121=2=01=1=-121Avvvvvv 线性变换(矩阵)的特征值和对应的特征向量为:,和 不共线,因此可以作为平面空间内一组新的基。特征值和特征向量的几何意义
8、为把空间内的向量在方向拉伸为原来的 倍,在 方向拉伸为原来的 倍。162022-11-28特征值的几何意义(3)172022-11-28对角化变换(特征值分解)如果线性变换的特征向量可以构成线性空间的一组基,那么有 123123112233111231Q000000=QVVVAQQVVVAVAVAQAAQVAQQQQ 其中为特征向量组成的矩阵,为对角阵,对角线上的元素为特征向量对应的特征值。简证:表示线性变换(矩阵)可以由其特征根和特征向量还原182022-11-28方阵还原矩阵维度相当大时,可以用对角化变化的方法来逼近矩阵:11121212111212212=+,+,00nnnrnnrnrQ
9、v vvvQvvvvvvvAvvvrvAnv v 特征向量:矩阵的特征特征值:各特征所占的权重192022-11-28思考1特征值分解使用条件有限,仅适用于方阵方阵,且要求是实实对称对称矩阵。试想:如果需要分析的矩阵不是方阵(事实经常如此),该怎样处理呢?202022-11-28SVD简介SVD:奇异值分解SVD可以看做是特征值分解的一种推广,或者说特征值分解可以看作是SVD的一种特例。当矩阵不是方阵时同样适用,应用很广。212022-11-28SVD分解(1)1,(),00,=00000m nTmAnTAiiiiirAFrank ArAAUVUVA A vv 对任意矩阵总可以取 的如下分解
10、其中、为正交矩阵,非零奇异值,从大从大到小到小依次排序左奇异向量右奇异向量222022-11-28SVD分解(2)1212111111112111,:1,:1,=,00,=,=,000=000TmiAATTTATTnAAAnmAnmrrrrUu uuu nAVUV VUVv vvv nU AU UVVAVUAAvAvuuAvAvuuuvuAvuAUVu 向量,向量r奇异值从大到小从大到小依次排序232022-11-28SVD分解(3)111111111111=000000000mmrnrTTTTTTTTATrrTTTTTTrTmTTAuuAUAAuuAvvVvvvuAuAvuAAVvUrTTr
11、ruAv奇异值从大到小从大到小依次排序242022-11-28SVD算法解析100,=00000TAiiiiirA A vv,可以看作是矩阵A的“平方”,而奇异值又是A“平方”阵的特征根的开方,因此奇异值奇异值可以看作是矩阵A的“伪特征向量伪特征向量”,左奇左奇异向量异向量可以看作矩阵A的“行特征向量行特征向量”,右奇异向量右奇异向量可以看作是矩阵A的“列特征向量列特征向量”。奇异值从大到小从大到小依次排序252022-11-28SVD矩阵近似(1)121211 1 1222,:1A,:1A00,00000+TAminiArTTTrrrAUVUu uuu nVv vvv mAu vu vu v
12、 向量(代表矩阵 的行特征)向量(代表矩阵 的列特征)奇异值从大到小依次排序262022-11-28SVD矩阵近似(2)1 1 1222121 1 1222+A+TTTrrrrTTTtttAu vu vu vtAAu vu vu v,为矩阵 的非零奇异值,从大到小依次排列,且下降的非常快。奇异值代表的对应的“行列特征”的重要程度。因此可以提取矩阵的前 个特征来近似矩阵。272022-11-28SVD应用推荐算法会员会员电影电影喜剧喜剧恐怖恐怖偏好ID宿醉东成西就大话西游八星报喜午夜凶铃咒怨林中小屋寂静岭喜剧喜剧至尊宝44552323.75小小宝55542231流氓兔54452312霹*雳545
13、53 212中原不败45542 132恐怖恐怖魂飞魄散123253.87555荒村少年31224544憨豆豆21324545怪大叔22315554美味僵尸13214545282022-11-28SVD矩阵变换TTA AA A(10 8)A矩阵(8 10)TA矩阵8 8 矩阵44552323.75555422315445231254553 21245542 132123253.875553122454421324545223155541321454545554132214544521123554553233254554222112223 2 54454323213.875555523113544
14、543.75122254545126115133121909584881151171291138890868813312915113111111410711212111313112186907988908811186123128119125959011490128142124135848610779119124122122888811288125135122134292022-11-28SVD求奇异值112243=2879.7,130.79,12.17,6.4,3.9,=11.40.390.340.280.4=29.70.340.330.400.33=0.350.370.340.3.53.5,
15、=6TvA AAv矩阵的非零特征值为对应矩阵 的非零奇异值为对应右奇异向量为:0-0.31-0.36-0.34-0.36由于奇异值(特征的权重)下降的速度非常快,表明矩阵的信息量集中分布在前几个较大的特征值中,本例中提取前2个特征。302022-11-28SVD右奇异向量解析可以看作电影的本身的精彩程度精彩程度的特征可以看做有关电影影片类型影片类型的特征影片类型片名特征1(29.729.7)特征2(11.411.4)得分均值喜剧喜剧宿醉0.34 0.39 3.20 东成西就0.33 0.34 3.10 大话西游0.40 0.29 3.70 八星报喜0.33 0.40 3.10 恐怖恐怖午夜凶铃
16、0.35-0.31 3.30 咒怨0.37-0.37 3.49 林中小屋0.34-0.34 3.20 寂静岭0.36-0.37 3.38 312022-11-28SVD左奇异向量解析可以看做是会员的打分习惯打分习惯特征可看做是会员对影片类型偏好类型偏好的特征偏好ID特征1(29.729.7)特征2(11.411.4)打分平均值打分平均值喜剧喜剧至尊宝0.34 0.23 3.59 小小宝0.32 0.34 3.38 流氓兔0.31 0.32 3.25 霹*雳0.32 0.35 3.38 中原不败0.31 0.31 3.25 恐怖恐怖魂飞魄散0.32-0.33 3.36 荒村少年0.30-0.27
17、 3.13 憨豆豆0.31-0.31 3.25 怪大叔0.32-0.34 3.38 美味僵尸0.30-0.34 3.13 322022-11-28SVD模型打分(1)29.711.4宿醉午夜凶铃东成西就寂静岭大话西游八星报喜A29.711.0.340.230.36-0 72.346.各部分得分权重各部分得分权重计算至尊宝对计算至尊宝对寂静岭寂静岭的的评分评分至尊宝0.34 0.23 小小宝0.32 0.34 流氓兔0.31 0.32 霹*雳0.32 0.35 中原不败0.31 0.31 魂飞魄散0.32-0.33 荒村少年0.30-0.27 憨豆豆0.31-0.31 怪大叔0.32-0.34
18、美味僵尸0.30-0.34 0.34 0.33 0.40 0.33 0.35 0.37 0.34 0.36 0.39 0.34 0.29 0.40-0.31-0.37-0.34-0.37 咒怨林中小屋影片相对客观分数影片类型适应度得分得分332022-11-28SVD模型打分(2)29.711.4宿醉午夜凶铃东成西就寂静岭大话西游八星报喜A29.711.0.32-0.330.37-0 74.394.影片相对客观分数影片类型适应度得分得分各部分得分权重各部分得分权重计算魂飞魄散对计算魂飞魄散对咒怨咒怨的评分的评分至尊宝0.34 0.23 小小宝0.32 0.34 流氓兔0.31 0.32 霹*雳
19、0.32 0.35 中原不败0.31 0.31 魂飞魄散0.32-0.33 荒村少年0.30-0.27 憨豆豆0.31-0.31 怪大叔0.32-0.34 美味僵尸0.30-0.34 0.34 0.33 0.40 0.33 0.35 0.37 0.34 0.36 0.39 0.34 0.29 0.40-0.31-0.37-0.34-0.37 咒怨林中小屋342022-11-28SVD结果简要测评至尊宝的观影历史显示其对喜剧类的电影评分较高,对恐怖电影普遍评分较低,因此可以推测他应该是不喜欢不喜欢看寂静岭的,模型给出的打分为2.6,与实际情况是相符的。魂飞魄散的观影历史显示其对恐怖类的电影评分较高,对喜剧电影普遍评分较低,因此可以推测他应该是很喜欢喜欢看寂静岭的,模型给出的打分为4.9,与实际情况是相符的。偏好ID宿醉东成西就大话西游八星报喜午夜凶铃咒怨林中小屋寂静岭喜剧喜剧至尊宝44552322.6恐怖恐怖魂飞魄散123254.955352022-11-28