一种基于协同过滤与logistic回归的个性化推荐方法及装置与流程

文档序号:14911165发布日期:2018-07-10 23:27阅读:164来源:国知局

本发明涉及个性化推荐领域,具体涉及一种基于协同过滤与logistic回归的个性化推荐方法及装置。



背景技术:

随着互联网迅猛发展,人们的衣食住行越来越离不开网络,网上购物已然成为了一种潮流趋势,个性化推荐技术也变得越来越重要。网上店铺商品繁多,信息量大,如何实现精准营销无论对卖家,还是买家而言都显得十分重要。采用有针对性的营销策略来替代海淘,能够帮助用户在大量产品中快速找到他们真正需要的商品。基于用户的协同过滤是一种非常成功并且应用广泛的推荐技术,其通过分析用户兴趣,在用户群中找到指定用户的相似(兴趣)用户,综合这些相似用户对某一信息的评价,形成系统并对该指定用户对此信息的喜好程度预测。

然而,大多数的推荐算法都是基于用户兴趣进行的推荐,没有对用户购买的可能性大小进行考虑,会对推荐效果产生一定的影响。如果能有一种装置,提供一种模型,对买家可能感兴趣的商品进行购买率的预测,依此概率对推荐商品进行排序,这样的推荐方式一定更加符合用户的需求。

鉴于上述缺陷,本发明创作者经过长时间的研究和实践终于获得了本发明。



技术实现要素:

为解决上述技术缺陷,本发明采用的技术方案在于,提供一种基于协同过滤与logistic回归的个性化推荐装置,其包括:

输入单元:其用来获取用户信息;

提取单元:其用来对信息进行特征提取;

评分单元:其用来对用户已购买的商品进行评分;

预测单元:其用来对未评分商品的评分进行预测;

计算单元:其用来计算用户间的相似度;

选取单元:其用来选择邻居和待推荐商品;

预处理单元:其用来转换分类变量以及将连续变量标准化;

模型计算单元:其采用logistic回归模型的lasso估计以得到概率估计模型;

比较与推荐单元:其用来对预测值进行排序和商品推荐;

输出单元:其用来对用户给予商品的推荐。

较佳的,所述提取单元包括协同过滤模块和logistic回归模块,分别对不同的特征进行提取。

一种基于协同过滤与logistic回归的个性化推荐方法,其特征在于,包括以下步骤:

步骤S1:协同过滤部分的特征提取;

步骤S2:评分矩阵的构建;

步骤S3:奇异值分解;

步骤S4:相似度计算;

步骤S5:选择邻居并确定待推荐商品;

步骤S6:logistic回归模块的特征提取;

步骤S7:变量预处理;

步骤S8:logistic回归模型的lasso估计;

步骤S9:得到预测值,根据预测值的排序推荐商品。

较佳的,所述步骤S2中,将用户的不同行为量化,用评分矩阵Rm×n(m≥n)表示用户对商品的评分,Ru,i表示用户u对商品i的评分,表示用户u对其购买过的商品的平均评分。

较佳的,所述步骤S3中,用奇异值将Rm×n分解成U,S,V三个矩阵,满足R=U×S×V′。

较佳的,所述步骤S3中,求R’R的特征值,从大到小排序并开方,得到S;求R’R的特征向量,特征值从大到小排序,特征向量正交化,得到V;求RR’的特征向量,特征值从大到小排序,特征向量正交化,得到U。

较佳的,所述步骤S3中,根据单值分解原理,将S降维到k阶,同理可得Uk,Vk,关系式变为Rk=Uk×Sk×Vk。

较佳的,所述步骤S3中,对未评分商品的评分用如下公式计算:

其中表示用户U对其购买过的商品的平均评分,表示的第u行,为的第i列。

较佳的,所述步骤S4用调整后的余弦度量,计算用户与目标用户间的相似度,具体算法如下:

较佳的,选择极大似然估计方法对回归方程的参数进行估计,其中,lasso-logistic回归模型中的系数由凸函数的极小值给定,如下式:

其中L是对数似然函数,λ为调和参数。

在lasso算法下的估计量为:

其中λ可由广义交叉核实方法确定

广义交叉验证值GCV统计量为

使广义交叉验证值GCV达到最小的罚函数为最优的罚参数

通过拉格朗日乘子算法可求得参数β的估计,得到概率估计模型

与现有技术比较本发明的有益效果在于:所述基于协同过滤与logistic回归的个性化推荐装置,基于最近邻协同过滤找出了用户可能感兴趣的商品,在此过程中用奇异值(SVD)分解,解决了评分矩阵的稀疏性问题,并根据购买可能性对待推荐商品进行排序,这相对于根据用户兴趣排序而言更准确,更好的实现精准营销。

附图说明

为了更清楚地说明本发明各实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。

图1是基于协同过滤与logistic回归的个性化推荐装置的功能框图;

图2是基于协同过滤与logistic回归的个性化推荐方法的总体流程示意图。

具体实施方式

以下结合附图,对本发明上述的和另外的技术特征和优点作更详细的说明。

实施例1

如图1所示,其为本发明的功能框图。所述基于协同过滤与logistic回归的个性化推荐装置,其包括:输入单元1,提取单元2,评分单元3,预测单元4,计算单元5,选取单元6,预处理单元7,模型计算单元8,比较与推荐单元9以及输出单元10。

所述输入单元1用于获取用户各方面的信息与数据,例如:用户基本信息,用户购买记录等。

所述提取单元2分为协同过滤模块21和logistic回归模块22。所述协同过滤模块21将所述输入单元1的信息与数据进行特征提取,例如:用户对商品的浏览,点击,评论,收藏和购买等行为。所述logistic回归模块22将目标用户是否购买作为响应变量,假设y服从伯努利分布,y=1表示购买行为,y=0表示未购买行为。将影响消费者对商品购买的因素作为稀释变量,用X表示,X=(x1,x2,...xp-1),例如:用户的基本信息,如年龄,收入情况,商品的基本信息,如类别,价格等。

所述评分单元3根据用户的浏览,点击,评论,收藏和购买等行为,对商品进行评分。将用户的不同行为量化,用户对商品的评分不累加,按最高得分记录。用U表示用户的集合,U={u1,u2,...,um},用I表示商品的集合,I={i1,i2,...,in},用评分矩阵Rm×n(m≥n)表示用户对商品的评分。其中,Ru,i表示用户u对商品i的评分,表示用户u对其购买过所有商品的平均评分。

所述预测单元4利用所述评分单元3的所述评分矩阵,对其进行降维,求特征值,特征向量等计算,通过公式来预测未评分商品的评分。其具体工作原理为:利用奇异值(SVD)将所述评分矩阵Rm×n(m≥n)分解成U,S,V,使其满足关系:R=U×S×V′。其中,求R’R的特征值,从大到小排序并开方,得到矩阵S,求R’R的特征向量,按特征值从大到小排序,特征向量正交化,得到矩阵V,求矩阵RR’的特征向量,按特征值从大到小排序,特征向量正交化,得到矩阵U。

根据单值分解原理,S被降到k阶(k<r),同理可得到Uk,Vk,其满足关系式:Rk=Uk×Sk×Vk。对未评分商品的评分用如下公式计算:

其中表示用户u对其购买过的商品的平均评分,表示的第u行,表示的第i列。

所述计算单元5,通过调整后的余弦度量,计算用户与目标用户间的相似度,公式为:

所述选取单元6,根据所述计算单元得到的相似度,选取邻居,并从评分较高的商品中选取待推荐商品。

所述处理单元7,其用来将分类变量重编成虚拟变量,以及将连续变量标准化。假设某一变量有k类,则重编码(k-1)个变量(k=1,2,3……),其形式为:x1=(1,0,...,0)T...xk-1=(0,...0,1)T。标准化的公式为:

所述模型计算单元8,采用的是logistic回归模型的lasso估计,选择极大似然估计方法对回归方程的参数进行估计,最终得到概率估计模型,其具体工作原理为:

lasso-logistic回归模型中的系数由凸函数的极小值给定,如下式:

其中L是对数似然函数,λ为调和参数。

在lasso算法下的估计量为:

其中λ可由广义交叉核实方法确定,

广义交叉验证值GCV统计量为

使广义交叉验证值GCV达到最小的罚函数为最优的罚参数

通过拉格朗日乘子算法可求得参数β的估计,得到概率估计模型

所述比较与推荐单元9通过所述模型计算单元8得到的所述概率估计模型,对所述待推荐商品进行购买概率的预测,得到预测值对其进行排序,并按排名的先后顺序推荐商品。

所述输出单元10,将所述比较与推荐单元9得到的所述推荐商品输出,对用户给予商品的推荐。

实施例2

如图所示,其为本发明一种基于协同过滤与logistic回归的个性化推荐方法的总体流程示意图,所述基于协同过滤与logistic回归的个性化推荐方法,包括以下步骤:

步骤S1:协同过滤部分的特征提取

获取用户各方面的信息与数据,例如:用户基本信息,历史购买记录等,特征选择用户的浏览,点击,评论,收藏和购买的行为。

步骤S2:评分矩阵的构建

根据用户的浏览,点击,评论,收藏和购买等行为,对商品进行评分。将用户的不同行为量化,例如:浏览记为2分,点击记为4分,收藏记为6分,购买记为8分,评论记为10分,用户对商品的评分不累加,按最高得分记录。假设用户的集合用U来表示,U={u1,u2,...,um},商品的集合用I来表示,I={i1,i2,...,in},用评分矩阵Rm×n(m≥n)来表示用户对商品的评分。其中,Ru,i表示用户u对商品i的评分,表示用户u对其购买过所有商品的平均评分。

步骤S3:奇异值分解,解决评分矩阵的稀疏性问题

用奇异值(SVD)分解来预测用户对未评分商品的评分。奇异值(SVD)能够将所述评分矩阵Rm×n(m≥n)分解成U,S,V三个矩阵,并满足关系R=U×S×V′。其中,U为一个m×n的正交矩阵,V为一个r×n的矩阵,S为一个r×r的矩阵。矩阵S非对角线上的元素都为0,对角线上的元素满足:σ1≥σ2≥…≥σn≥0,称为奇异值,其表示一个给定矩阵与比其秩低的矩阵的接近程度。根据单值分解原理,S被降维到k阶(k<r),同理可以得到Uk、Vk,其满足关系式Rk=Uk×Sk×Vk。

对未评分商品的评分用如下公式计算:

其中表示用户U对其购买过的商品的平均评分,表示的第u行,为的第i列。

S3-1:计算矩阵S

计算R’和R’R,求R’R的特征值,从大到小排序并进行开方,得到矩阵S。

S3-2:计算矩阵V

求矩阵R’R的特征向量,并按着特征值从大到小排序,特征向量正交化。

S3-3:计算矩阵U

求矩阵RR’的特征向量,并按着特征值从大到小排序,特征向量正交化。

S3-4:矩阵降维

只保留前k个最大的奇异值,前k列个U,前k行个V。

S3-5:预测未评分商品的评分

其中,表示用户u对未评分商品i的评分预测,表示用户U对其购买过的商品的平均评分,表示的第u行,为的第i列。

步骤S4:相似度计算

用调整后的余弦度量,计算用户与目标用户间的相似度,具体算法如下所示:

步骤S5:选择邻居与待推荐商品

根据所述步骤S4中计算得到的相似度对邻居用户进行排序,选择最近的k个作为邻居,在这些邻居评分较高的,且目标用户尚未购买的商品中,选择前k’件商品作为待推荐商品。

步骤S6:logistic回归模块的特征提取

将目标用户是否购买作为响应变量,假设y服从伯努利分布,y=1表示购买行为,y=0表示未购买行为。将用户购买商品这种行为归为y=1这一类,用户浏览但并没有购买的商品归为y=0这一类。将影响消费者对商品购买的因素作为解释变量,用X表示,X=(x1,x2,...xp-1)。例如:用户的基本信息,如年龄,性别,职业,收入情况,消费水平等,商品的基本信息,如商品类别,价格,风格,材质等,以及用户的购买行为。

步骤S7:变量预处理

S7-1:将分类变量重编成虚拟变量

例如,若某一变量有k类,则重编码(k-1)个变量(k=1,2,3……),变量形式为:x1=(1,0,...,0)T...xk-1=(0,...0,1)T

S7-2:将连续变量标准化

标准化公式如下:

步骤S8:logistic回归模型的lasso估计

选择极大似然估计方法对回归方程的参数进行估计,其中,lasso-logistic回归模型中的系数由凸函数的极小值给定,如下式:

其中L是对数似然函数,λ为调和参数。

在lasso算法下的估计量为:

其中λ可由广义交叉核实方法确定,

广义交叉验证值GCV统计量为

使广义交叉验证值GCV达到最小的罚函数为最优的罚参数

通过拉格朗日乘子算法可求得参数β的估计,得到概率估计模型

步骤S9:针对目标用户,对待推荐商品进行购买概率的预测,得到预测值按照预测概率的大小排序,按此顺序推荐商品。

将所述步骤S5得到的所述待推荐商品的相关数据及用户的基本信息,带入所述步骤S8的所述概率估计模型中,得到各商品被购买的概率估计值。将待购买商品按所述购买的概率估计值进行排序,并按着这个顺序推荐给用户。

以上所述仅为本发明的较佳实施例,对本发明而言仅仅是说明性的,而非限制性的。本专业技术人员理解,在本发明权利要求所限定的精神和范围内可对其进行许多改变,修改,甚至等效,但都将落入本发明的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1