一种评分分布预测方法及装置与流程

文档序号:17894238发布日期:2019-06-13 15:53阅读:171来源:国知局
一种评分分布预测方法及装置与流程
本发明涉及计算机
技术领域
,特别涉及一种评分分布预测方法及装置。
背景技术
:通常情况下,通过评分分布预测,可以预知待发布样本的评分分布情况。从而,基于一定的预知性以尽可能的降低投资风险。以电影业为例,电影业作为一项价值数百亿美元的全球性产业,每年都有数以千计的新电影投入市场,但并非所有电影在票房上都是成功的。因此,无论是电影制片人还是电影院,都需要预测新电影在发布之前观众对这部电影的喜欢程度。目前,可以利用电影的评分分布来表征观众对某部电影的喜欢程度。自然的,ldl(labeldistrubitionlearning,标签分布学习)方法可以应用到这一领域中。ldl是单标签学习和多标签学习的一种泛化,是一个更为通用的学习框架,通过ldl可以获得实际应用中的标签重要性分布,从而能有效解决标签模糊问题。已有的工作利用支持向量机来预测评分分布,该方法认为评分之间是独立的,没有考虑评分之间的关联性。然而,这种关联性是普遍存在的,例如,对于1-5的评分系统而言,悲观的用户对不喜欢的电影给1分,而乐观的用户对相同的电影可能给出2分或者更高分。因此,使用严格区分的评分分布来表征一部电影的受欢迎程度是不妥的。可见,现有实现方式的预测准确度不高。技术实现要素:本发明提供了一种评分分布预测方法及装置,能够提高预测准确度。为了达到上述目的,本发明是通过如下技术方案实现的:一方面,本发明提供了一种评分分布预测方法,包括:s1:构建目标函数,其中,所述目标函数包括:用于描述两评分潜在因子向量间相关性的符号函数,和,用于计算两评分潜在因子向量间距离的距离函数;s2:确定当前次迭代时的第一评分潜在因子矩阵;s3:根据所述第一评分潜在因子矩阵计算下一次迭代时的第二评分潜在因子矩阵;s4:将所述第二评分潜在因子矩阵代入所述目标函数,并基于预设的训练集,求解所述目标函数的一阶导数;s5:判断所述一阶导数在所述第二评分潜在因子矩阵处的f范数的值,是否小于预设的终止阈值,若是,执行s6,否则,将所述第二评分潜在因子矩阵再次作为当前次迭代时的评分潜在因子矩阵,并执行s2;s6:根据所述第二评分潜在因子矩阵,获得待预测样本的评分分布预测结果。进一步地,所述符号函数包括:其中,所述距离函数包括:其中,θ为c列m行的评分潜在因子矩阵,c为评分个数,m为特征个数,θik为θ中第i行第k列的数值,θjk为θ中第j行第k列的数值。进一步地,所述目标函数包括:其中,t(θ)为函数组合,λ1为预设系数。进一步地,所述函数组合包括:其中,x为n行m列的样本特征矩阵,d为n行c列的样本评分矩阵,n为样本个数,dij为d中第i行第j列的数值,xik为x中第i行第k列的数值,λ2为预设系数,||θ||f为θ的f范数。进一步地,所述s1包括:根据样本对应的真实评分分布和样本对应的预测评分分布,构建用于计算真实评分分布和预测评分分布之间差距的第一函数;根据用于描述两评分潜在因子向量间相关性的符号函数,以及根据用于计算两评分潜在因子向量间距离的距离函数,构建用于描述评分间相关性的距离映射函数;根据所述第一函数、正则项和所述距离映射函数,构建第二函数;控制所述预测评分分布满足最大熵模型,以对所述第二函数进行简化处理,从而得到目标函数。进一步地,所述s3,包括:确定当前次迭代时的拟合矩阵;确定当前次迭代时的一阶导数,其中,所述当前次迭代时的一阶导数为,将所述第一评分潜在因子矩阵代入所述目标函数,并基于所述训练集,而求得的所述目标函数的一阶导数;根据所述拟合矩阵和所述当前次迭代时的一阶导数,计算当前次迭代时的搜索方向;根据所述搜索方向,确定当前次迭代时的搜索步长;根据所述第一评分潜在因子矩阵、所述搜索方向和所述搜索步长,计算下一次迭代时的第二评分潜在因子矩阵。进一步地,所述计算当前次迭代时的搜索方向,包括:利用公式一计算当前次迭代时的搜索方向;所述确定当前次迭代时的搜索步长,包括:确定满足所述公式组二的、当前次迭代时的搜索步长;所述计算下一次迭代时的评分潜在因子矩阵,包括:利用公式三计算下一次迭代时的评分潜在因子矩阵;所述公式一包括:所述公式组二包括:所述公式三包括:θ(l+1)=θ(l)+a(l)p(l);其中,p(l)为第l次迭代时的搜索方向,b(l)为第l次迭代时的拟合矩阵,b(0)为初始化时的拟合矩阵,为第l次迭代时的一阶导数,a(l)为第l次迭代时的搜索步长,0<c1<c2<1,(p(l))t为p(l)的转置,θ(l)为第l次迭代时的评分潜在因子矩阵,θ(0)为初始化时的评分潜在因子矩阵。进一步地,所述计算当前次迭代时的拟合矩阵,包括:利用公式四计算当前次迭代时的拟合矩阵;所述公式四包括:b(l+1)=(i-ρ(l)s(l)(u(l))t)b(l)(i-ρ(l)u(l)(s(l))t)+ρ(l)s(l)(s(l))t其中,s(l)=θ(l+1)-θ(l);其中,b(l)为第l次迭代时的拟合矩阵,b(0)为初始化时的拟合矩阵,i为单位矩阵,θ(l)为第l次迭代时的评分潜在因子矩阵,θ(0)为初始化时的评分潜在因子矩阵,为第l次迭代时的一阶导数,(u(l))t为u(l)的转置。进一步地,所述s6包括:将所述第二评分潜在因子矩阵和待预测样本对应的样本特征矩阵代入最大熵模型,计算所述待预测样本对应的样本评分矩阵,以获得所述待预测样本的评分分布预测结果;所述最大熵模型包括:其中,θ为c列m行的评分潜在因子矩阵,x为n行m列的样本特征矩阵,c为评分个数,m为特征个数,n为样本个数,θjk为θ中第j行第k列的数值,xik为x中第i行第k列的数值,pi={p(y1|xi;θ),p(y2|xi;θ),...,p(yc|xi;θ)},pi为样本xi对应的预测评分分布。进一步地,在所述s6之后,进一步包括:将预设的测试集对应的样本特征矩阵和所述第二评分潜在因子矩阵代入所述最大熵模型,计算预测样本评分矩阵;利用至少一种评价指标,分别校验所述预测样本评分矩阵和所述测试集对应的样本评分矩阵之间的相似程度。另一方面,本发明提供了一种执行上述任一所述评分分布预测方法的评分分布预测装置,其特征在于,包括:目标函数构建单元,用于构建目标函数,其中,所述目标函数包括:用于描述两评分潜在因子向量间相关性的符号函数,和,用于计算两评分潜在因子向量间距离的距离函数;确定单元,用于确定当前次迭代时的第一评分潜在因子矩阵;第一处理单元,用于根据所述第一评分潜在因子矩阵计算下一次迭代时的第二评分潜在因子矩阵;一阶导数求解单元,用于将所述第二评分潜在因子矩阵代入所述目标函数,并基于预设的训练集,求解所述目标函数的一阶导数;第二处理单元,用于判断所述一阶导数在所述第二评分潜在因子矩阵处的f范数的值,是否小于预设的终止阈值,若是,触发评分分布预测单元,否则,将所述第二评分潜在因子矩阵再次作为当前次迭代时的评分潜在因子矩阵,并触发所述确定单元;所述评分分布预测单元,用于根据所述第二评分潜在因子矩阵,获得待预测样本的评分分布预测结果。本发明提供了一种评分分布预测方法及装置,该方法包括:构建包括有用于描述两评分潜在因子向量间相关性的符号函数和用于计算两评分潜在因子向量间距离的距离函数的目标函数;输入训练集数据,确定当前次迭代时的评分潜在因子矩阵并据此计算下一次迭代时的评分潜在因子矩阵,以得到新矩阵;将新矩阵代入目标函数,求解目标函数的一阶导数;一阶导数在新矩阵处的f范数的值小于预设终止阈值时,根据新矩阵获得待预测样本的评分分布预测结果,否则,将新矩阵再次作为当前次迭代时的评分潜在因子矩阵,如此循环。本发明通过在目标函数中引入符号函数和距离函数,考虑了评分标签之间的相关性,故基于此来预测评分分布时可提高预测准确度。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明一实施例提供的一种评分分布预测方法的流程图;图2是本发明一实施例提供的另一种评分分布预测方法的流程图;图3是本发明一实施例提供的一种评分分布预测装置的示意图。具体实施方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。如图1所示,本发明实施例提供了一种评分分布预测方法,可以包括以下步骤:步骤101:构建目标函数,其中,所述目标函数包括:用于描述两评分潜在因子向量间相关性的符号函数,和,用于计算两评分潜在因子向量间距离的距离函数。步骤102:确定当前次迭代时的第一评分潜在因子矩阵。步骤103:根据所述第一评分潜在因子矩阵计算下一次迭代时的第二评分潜在因子矩阵。步骤104:将所述第二评分潜在因子矩阵代入所述目标函数,并基于预设的训练集,求解所述目标函数的一阶导数。步骤105:判断所述一阶导数在所述第二评分潜在因子矩阵处的f范数的值,是否小于预设的终止阈值,若是,执行步骤106,否则,将所述第二评分潜在因子矩阵再次作为当前次迭代时的评分潜在因子矩阵,并执行步骤102。步骤106:根据所述第二评分潜在因子矩阵,获得待预测样本的评分分布预测结果。本发明实施例提供了一种评分分布预测方法,该方法包括:构建包括有用于描述两评分潜在因子向量间相关性的符号函数和用于计算两评分潜在因子向量间距离的距离函数的目标函数;输入训练集数据,确定当前次迭代时的评分潜在因子矩阵并据此计算下一次迭代时的评分潜在因子矩阵,以得到新矩阵;将新矩阵代入目标函数,求解目标函数的一阶导数;一阶导数在新矩阵处的f范数的值小于预设终止阈值时,根据新矩阵获得待预测样本的评分分布预测结果,否则,将新矩阵再次作为当前次迭代时的评分潜在因子矩阵,如此循环。本发明实施例通过在目标函数中引入符号函数和距离函数,考虑了评分标签之间的相关性,故基于此来预测评分分布时可提高预测准确度。本发明实施例提供的这一考虑评分标签相关性的标签分布学习方法,可以对样本的评分分布进行预测。比如,可将这一方法应用到电影评分分布预测中,以进行电影样本的评分分布预测。当然,还可将这一方法应用到其他行业评分分布预测中,比如小说、电视剧等。以电影评分预测为例,可以根据新电影的特征,以及根据预设训练集中已有电影的特征及评分情况,来预测新电影的评分。如此,需要获得特征与评分间的相互关系,即获得c行m列的特征评分矩阵θ。其中,c为评分个数,m为特征个数。由于θ是潜在的未知矩阵,故本发明实施例中,可将θ称为评分潜在因子矩阵;同时,θ也描述了两个评分标签之间的关联性,故还可称为距离映射矩阵。详细地,θ为c行m列的评分潜在因子矩阵,故可体现出特征与评分间的对应关系。进行电影评分分布预测时,特征即为电影特征,比如电影的导演、主演、编剧等均可为电影特征;评分即为电影评分,比如各个评分标签分别为1分、2分、3分、4分和5分。由于θ未知,故可初始化一个θ,并将初始化时的θ作为第0次迭代时的评分潜在因子矩阵,来执行步骤102~106,即根据第0次迭代时的θ来计算第1次迭代时的θ,并基于第1次迭代时的θ,来执行一阶导数的求解、与终止阈值的对比判断等操作。若步骤105中判断为是,即可认为第1次迭代时的θ即为理想的θ,故可基于该理想的θ,来预测新电影的评分。若步骤105中判断为否,则可再次执行步骤102~106,即根据第1次迭代时的θ来计算第2次迭代时的θ,并基于第2次迭代时的θ,来执行一阶导数的求解、与终止阈值的对比判断等操作。如此循环,直至迭代计算出理想的θ。如此,即可基于该理想的θ,来预测新电影的评分。通常情况下,可在最初输入初始化时的θ和预设的训练集,以作为目标函数的输入项。在此之后,即可基于这一训练集中的已知数据,以及根据各次迭代出的θ,以执行各次一阶导数的求解。由于该理想的θ是基于目标函数和训练集不断优化而得到的,且目标函数考虑了评分标签之间的相关性,故可认为基于该理想的θ而预测出的新电影评分是较为准确的,易于符合新电影评分真实情况的。请参考上述步骤101,为了能够考虑评分标签之间的相关性,目标函数应包括上述符号函数和距离函数,来描述评分标签之间的相关性。在本发明的一个实施例中,所述符号函数包括:其中,所述距离函数包括:其中,θ为c列m行的评分潜在因子矩阵,c为评分个数,m为特征个数,θik为θ中第i行第k列的数值,θjk为θ中第j行第k列的数值。基于上述内容可知,符号函数用于描述评分潜在因子向量θi和θj之间的相关性。其中,cosine(θi,θj)用于计算两个评分潜在因子向量之间的距离,利用信号函数将这种距离转化为正相关、负相关和不相关三种状态。基于上述内容可知,距离函数用于描述评分潜在因子向量之间的相关程度。本发明实施例中,可结合符号函数和距离函数来构建距离映射函数f(θi,θj),来描述评分标签之间的相关性。通过该距离映射函数,可获得评分的潜在因子向量,从而可采用cosine距离来度量两个评分潜在因子向量之间的相似度。可见,基于符号函数和距离函数的结合,可以使得目标函数这一评分分布学习模型考虑了评分标签之间的相关性,基于该评分分布学习模型来进行评分分布预测时,可提高预测准确度。基于上述内容,在本发明一个实施例中,所述目标函数包括:其中,t(θ)为函数组合,λ1为预设系数。本发明实施例中,可构建距离映射函数:f(θi,θj)=sgn(cosine(θi,θj))dis(θi,θj),来描述评分标签之间的相关性。详细地,f(θi,θj)通过相关性乘以相关程度,得到正相关距离、负相关距离或不相关的关联结果,很好地描述了评分标签之间的关联性。例如,f(θa,θb)>0且值越大,表明当出现评分等级a时,出现评分等级b的可能性越大。反之,f(θa,θb)<0且值越小,表明当出现评分等级a时,出现评分等级b的可能性越小。基于上述内容,在本发明一个实施例中,所述函数组合包括:其中,x为n行m列的样本特征矩阵,d为n行c列的样本评分矩阵,n为样本个数,dij为d中第i行第j列的数值,xik为x中第i行第k列的数值,λ2为预设系数,||θ||f为θ的f范数。详细地,通过在目标函数中引入||θ||f这一正则项,可以起到避免过度拟合的作用。详细地,构建这一目标函数的实现过程可以如下所述:首先,令x=rm表示样本空间,y={y1,y2,...,yc}表示评分集合。其中m为特征个数,c为评分个数。令s={(x1,d1),(x2,d2),...,(xn,dn)}表示训练集合,其中xi∈x表示第i个样本,di={di1,di2,...,dic}表示样本xi对应的评分分布,一共有n个样本。dij表示第j个评分描述第i个样本的程度。表示所有评分完整描述一个样本xi。然后,令pi={p(y1|xi;θ),p(y2|xi;θ),...,p(yc|xi;θ)}表示样本xi对应的预测评分分布。如此,可使用kullback-leibler(kl)散度距离,即可使用来计算真实分布和预测分布之间的差距。然后,构建如上所述的距离映射函数。之后,利用最大熵模型,利用f(θi,θj)表示评分等级的相关性,得到如下函数:最后,由于p(yk|xi;θ)满足最大熵模型,则有由此,可对上式进行化简,可得如下公式:这一化简所得的公式即可为构建出的目标函数。与上述目标函数的构建过程相对应地,在本发明一个实施例中,所述步骤101包括:根据样本对应的真实评分分布和样本对应的预测评分分布,构建用于计算真实评分分布和预测评分分布之间差距的第一函数;根据用于描述两评分潜在因子向量间相关性的符号函数,以及根据用于计算两评分潜在因子向量间距离的距离函数,构建用于描述评分间相关性的距离映射函数;根据所述第一函数、正则项和所述距离映射函数,构建第二函数;控制所述预测评分分布满足最大熵模型,以对所述第二函数进行简化处理,从而得到目标函数。基于上述内容可知,本发明实施例中,第一函数即可以为距离映射函数即可以为上述f(θi,θj),第二函数即可以为上述τ(θ),目标函数即可以为上述t(θ)。详细地,请参考上述步骤102~106可知,为得到用于预测评分分布的评分潜在因子矩阵,可循环执行这一迭代处理过程,直至某一次迭代时步骤105的判断结果为是。基于上述内容可知,由于θ未知,故可初始化一个θ(0),并将θ(0)作为第0次迭代时的θ,经步骤102来计算第1次迭代时的θ:θ(1)。假设基于θ(1),步骤105的判断结果为否,则可根据θ(1)来计算第2次迭代时的θ:θ(2),并基于θ(2)来执行后续步骤。如此循环,直至对应于第l次迭代时,基于θ(l),步骤105的判断结果为是,则可根据第l次迭代时的θ:θ(l)来进行评分分布预测。基于此,需要确定根据第一评分潜在因子矩阵计算下一次迭代时的第二评分潜在因子矩阵的具体实现方式。详细地,l-bfgs算法是一种在牛顿法基础上提出的一种求解函数根的算法。在本发明一个实施例中,可以使用l-bfgs方法对目标函数进行求解:其中,δ=θ(l+1)-θ(l),是第l次迭代时的一阶导数,即将θ(l)代入t(θ)后,对t(θ)所求得的一阶导数。h(θ(l))是第l次迭代时的海森矩阵。进一步化简可得:设置步长和方向,保证函数值稳定地下降,则有θ(l+1)=θ(l)+a(l)p(l)。其中,p(l)是搜索方向,a(l)是搜索步长。详细地,搜索步长由如下计算公式组来确定:其中,0<c1<c2<1。具体地,可以初始化一个步长,比如为1,并判断当前的步长是否满足这一公式组,若满足即可为第0次迭代时的步长,若不满足则可根据预设的步长计算公式来计算新的步长,并再次判断新的步长是否满足这一公式组。如此循环,直至得到满足该公式组的步长,以作为第0次迭代时的步长。基于同样的实现原理,可以基于该公式组,确定出每一次迭代时的步长。此外,由于海森矩阵难以确定,l-bfgs方法的核心思想是计算一个近似矩阵以用于拟合海森矩阵。基于此,在本发明一个实施例中,为了说明一种可能的评分潜在因子矩阵迭代优化实现方式,所以,所述步骤103,包括:确定当前次迭代时的拟合矩阵;确定当前次迭代时的一阶导数,其中,所述当前次迭代时的一阶导数为,将所述第一评分潜在因子矩阵代入所述目标函数,并基于所述训练集,而求得的所述目标函数的一阶导数;根据所述拟合矩阵和所述当前次迭代时的一阶导数,计算当前次迭代时的搜索方向;根据所述搜索方向,确定当前次迭代时的搜索步长;根据所述第一评分潜在因子矩阵、所述搜索方向和所述搜索步长,计算下一次迭代时的第二评分潜在因子矩阵。详细地,第0次迭代时的拟合矩阵可以为初始化时的拟合矩阵。基于上述内容,在本发明一个实施例中,所述计算当前次迭代时的搜索方向,包括:利用公式一计算当前次迭代时的搜索方向;所述确定当前次迭代时的搜索步长,包括:确定满足所述公式组二的、当前次迭代时的搜索步长;所述计算下一次迭代时的评分潜在因子矩阵,包括:利用公式三计算下一次迭代时的评分潜在因子矩阵;所述公式一包括:所述公式组二包括:所述公式三包括:θ(l+1)=θ(l)+a(l)p(l);其中,p(l)为第l次迭代时的搜索方向,b(l)为第l次迭代时的拟合矩阵,b(0)为初始化时的拟合矩阵,为第l次迭代时的一阶导数,a(l)为第l次迭代时的搜索步长,0<c1<c2<1,(p(l))t为p(l)的转置,θ(l)为第l次迭代时的评分潜在因子矩阵,θ(0)为初始化时的评分潜在因子矩阵。基于上述内容,在本发明一个实施例中,所述计算当前次迭代时的拟合矩阵,包括:利用公式四计算当前次迭代时的拟合矩阵;所述公式四包括:b(l+1)=(i-ρ(l)s(l)(u(l))t)b(l)(i-ρ(l)u(l)(s(l))t)+ρ(l)s(l)(s(l))t其中,s(l)=θ(l+1)-θ(l);其中,b(l)为第l次迭代时的拟合矩阵,b(0)为初始化时的拟合矩阵,i为单位矩阵,θ(l)为第l次迭代时的评分潜在因子矩阵,θ(0)为初始化时的评分潜在因子矩阵,为第l次迭代时的一阶导数,(u(l))t为u(l)的转置。在本发明一个实施例中,所述步骤106包括:将所述第二评分潜在因子矩阵和待预测样本对应的样本特征矩阵代入最大熵模型,计算所述待预测样本对应的样本评分矩阵,以获得所述待预测样本的评分分布预测结果;所述最大熵模型包括:其中,θ为c列m行的评分潜在因子矩阵,x为n行m列的样本特征矩阵,c为评分个数,m为特征个数,n为样本个数,θjk为θ中第j行第k列的数值,xik为x中第i行第k列的数值,pi={p(y1|xi;θ),p(y2|xi;θ),...,p(yc|xi;θ)},pi为样本xi对应的预测评分分布。详细地,由于待预测样本对应的样本特征矩阵已知,且迭代优化后的评分潜在因子矩阵已知,故可计算得到待预测样本对应的样本评分矩阵,从而得到待预测样本的评分分布预测结果。基于上述最大熵模型可知,将待预测样本对应的样本特征矩阵和迭代优化后的评分潜在因子矩阵代入最大熵模型后,可以得到第j个评分描述第i个样本的程度,进而得到每一个评分描述第i个样本的程度,从而获得待预测样本的评分分布预测结果。综上可知,本发明实施例创新性的在目标函数中引入符号函数和距离函数,以考虑评分标签之间的相关性,以期提高评分预测准确度。如此,可以基于迭代优化出的评分潜在因子矩阵进行预测准确度提高的校验。详细地,可以将已知样本划分为两部分,一部分对应于训练集,一部分对应于测试集。训练集主要用于根据内部已知样本的特征、评分情况,通过上述步骤101~105来得到迭代优化后的评分潜在因子矩阵。校验集主要用于根据内部已知样本的特征、评分情况,对得到的迭代优化后的评分潜在因子矩阵进行测试。基于此,在本发明一个实施例中,在所述步骤106之后,该方法可以进一步包括:将预设的测试集对应的样本特征矩阵和所述第二评分潜在因子矩阵代入所述最大熵模型,计算预测样本评分矩阵;利用至少一种评价指标,分别校验所述预测样本评分矩阵和所述测试集对应的样本评分矩阵之间的相似程度。详细地,由于测试集对应的样本特征矩阵和真实的样本评分矩阵已知,故可以将该样本特征矩阵和迭代优化后的评分潜在因子矩阵代入最大熵模型,计算预测的样本评分矩阵。然后,即可对比预测的样本评分矩阵和真实的样本评分矩阵之间的相似程度,以校验迭代优化后的评分潜在因子矩阵是否具有足够的准确性。在本发明一个实施例中,上述至少一种评价指标可以为卡方距离(squardχ2)、相似度(intersection)和保真度(fidelity)中的至少一个或多个。详细地,对这几个评价指标分别进行说明。卡方距离的计算公式为:其中,dis的含义是距离。相似度的计算公式为:其中,sim的含义是相似度。保真度的计算公式为:其中,sim的含义是相似度。此外,j是评分标签的下标,c是评分标签的总个数。oj表示真实评分标签分布中第j个评分标签对应的数值,qj表示预测评分标签分布中第j个评分标签对应的数值。计算得出的卡方距离越小,说明两个分布距离越近,差距越小。计算得出的相似度越大,说明两个分布越相似。计算得出的保真度越大,说明预测分布和真实分布越接近。经校验,请参考表1,可得到如下实验结果。表1实验结果squardχ2intersectionfidelityldllc0.0412±0.02130.8496±0.02380.9789±0.0107ldsvr0.0887±0.00310.8436±0.00270.9764±0.0010s-svr0.1040±0.00300.8277±0.00230.9722±0.0009m-svrp0.1084±0.00330.8186±0.00340.9710±0.0010bgfs-lld0.1176±0.00420.8186±0.00330.9683±0.0012iis-lld0.1195±0.00540.8172±0.00440.9676±0.0014aa-knn0.1246±0.00620.8101±0.00470.9664±0.0018cpnn0.1625±0.02060.7847±0.01500.9551±0.0061其中,ldllc代表本发明实施例所述的、考虑评分标签相关性的评分标签分布学习算法。从表1可知,与其他方法相比,采用本方法进行预测时得到的预测分布与真实分布更加接近。因此,采用本方法对样本评分分布进行预测,能够达到比较好的预测效果。如图2所示,本发明一个实施例提供了另一种评分分布预测方法,具体包括以下步骤:步骤201:根据样本对应的真实评分分布和样本对应的预测评分分布,构建用于计算真实评分分布和预测评分分布之间差距的第一函数。详细地,第一函数即可以为上述步骤202:根据用于描述两评分潜在因子向量间相关性的符号函数,以及根据用于计算两评分潜在因子向量间距离的距离函数,构建用于描述评分间相关性的距离映射函数。详细地,距离映射函数即可以为上述f(θi,θj)。步骤203:根据第一函数、正则项和距离映射函数,构建第二函数。详细地,第二函数即可以为上述τ(θ)。步骤204:控制预测评分分布满足最大熵模型,以对第二函数进行简化处理,从而得到目标函数。详细地,目标函数即可以为上述t(θ)。步骤205:确定当前次迭代时的第一评分潜在因子矩阵。详细地,可以将初始化时的评分潜在因子矩阵作为第0次迭代时的评分潜在因子矩阵。步骤206:确定当前次迭代时的拟合矩阵。详细地,可以将初始化时的拟合矩阵作为第0次迭代时的拟合矩阵。详细地,可以利用上述公式四计算当前次迭代时的拟合矩阵。步骤207:确定当前次迭代时的一阶导数,其中,当前次迭代时的一阶导数为,将第一评分潜在因子矩阵代入目标函数,并基于训练集,而求得的目标函数的一阶导数。步骤208:根据拟合矩阵和当前次迭代时的一阶导数,计算当前次迭代时的搜索方向。详细地,可以利用上述公式一计算当前次迭代时的搜索方向。步骤209:根据搜索方向,确定当前次迭代时的搜索步长。详细地,可以利用上述公式组二确定当前次迭代时的搜索步长。步骤210:根据第一评分潜在因子矩阵、搜索方向和搜索步长,计算下一次迭代时的第二评分潜在因子矩阵。详细地,可以利用上述公式三计算下一次迭代时的评分潜在因子矩阵。步骤211:将第二评分潜在因子矩阵代入目标函数,并基于训练集,求解目标函数的一阶导数。步骤212:判断该一阶导数在第二评分潜在因子矩阵处的f范数的值,是否小于预设的终止阈值,若是,执行步骤213,否则,将第二评分潜在因子矩阵再次作为当前次迭代时的评分潜在因子矩阵,并执行步骤205。步骤213:将第二评分潜在因子矩阵和待预测样本对应的样本特征矩阵代入最大熵模型,计算待预测样本对应的样本评分矩阵,以获得待预测样本的评分分布预测结果。步骤214:将预设的测试集对应的样本特征矩阵和第二评分潜在因子矩阵代入最大熵模型,计算预测样本评分矩阵。步骤215:利用至少一种评价指标,分别校验预测样本评分矩阵和测试集对应的样本评分矩阵之间的相似程度。如图3所示,本发明一个实施例提供了一种执行上述任一所述评分分布预测方法的评分分布预测装置,可以包括:目标函数构建单元301,用于构建目标函数,其中,所述目标函数包括:用于描述两评分潜在因子向量间相关性的符号函数,和,用于计算两评分潜在因子向量间距离的距离函数;确定单元302,用于确定当前次迭代时的第一评分潜在因子矩阵;第一处理单元303,用于根据所述第一评分潜在因子矩阵计算下一次迭代时的第二评分潜在因子矩阵;一阶导数求解单元304,用于将所述第二评分潜在因子矩阵代入所述目标函数,并基于预设的训练集,求解所述目标函数的一阶导数;第二处理单元305,用于判断所述一阶导数在所述第二评分潜在因子矩阵处的f范数的值,是否小于预设的终止阈值,若是,触发评分分布预测单元306,否则,将所述第二评分潜在因子矩阵再次作为当前次迭代时的评分潜在因子矩阵,并触发所述确定单元302;所述评分分布预测单元306,用于根据所述第二评分潜在因子矩阵,获得待预测样本的评分分布预测结果。上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。此外,本发明一个实施例提供了一种可读介质,包括执行指令,当存储控制器的处理器执行所述执行指令时,所述存储控制器执行上述任一所述的评分分布预测方法。此外,本发明一个实施例提供了一种存储控制器,包括:处理器、存储器和总线;所述存储器用于存储执行指令,所述处理器与所述存储器通过所述总线连接,当所述存储控制器运行时,所述处理器执行所述存储器存储的所述执行指令,以使所述存储控制器执行上述任一所述的评分分布预测方法。综上所述,本发明的实施例具有至少如下有益效果:1、本发明实施例中,构建包括有用于描述两评分潜在因子向量间相关性的符号函数和用于计算两评分潜在因子向量间距离的距离函数的目标函数;输入训练集数据,确定当前次迭代时的评分潜在因子矩阵并据此计算下一次迭代时的评分潜在因子矩阵,以得到新矩阵;将新矩阵代入目标函数,求解目标函数的一阶导数;一阶导数在新矩阵处的f范数的值小于预设终止阈值时,根据新矩阵获得待预测样本的评分分布预测结果,否则,将新矩阵再次作为当前次迭代时的评分潜在因子矩阵,如此循环。本发明实施例通过在目标函数中引入符号函数和距离函数,考虑了评分标签之间的相关性,故基于此来预测评分分布时可提高预测准确度。2、本发明实施例中,关键点在于考虑了评分标签之间的相关性,提出一种考虑评分标签相关性的评分标签分布学习算法。该算法充分利用电影特征数据,首先构建电影特征-评分分布的距离映射函数,该函数包含两个部分,第一部分是符号函数,第二部分是距离函数。其次利用最大熵模型设计了新的优化目标函数。最后,通过求解新的优化目标函数,预测评分分布。3、本发明实施例中,与其他方法相比,采用本方法进行预测时得到的预测分布与真实分布更加接近。因此,采用本方法对样本评分分布进行预测,能够达到比较好的预测效果。需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质中。最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1