CN107122989B - 一种面向化妆品的多角度混合推荐方法 - Google Patents

一种面向化妆品的多角度混合推荐方法 Download PDF

Info

Publication number
CN107122989B
CN107122989B CN201710168275.XA CN201710168275A CN107122989B CN 107122989 B CN107122989 B CN 107122989B CN 201710168275 A CN201710168275 A CN 201710168275A CN 107122989 B CN107122989 B CN 107122989B
Authority
CN
China
Prior art keywords
user
cosmetics
cosmetic
attribute
skin
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710168275.XA
Other languages
English (en)
Other versions
CN107122989A (zh
Inventor
陆佳炜
刘时翔
李涛
项阳
朱梦妮
丁雪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University of Technology ZJUT
Original Assignee
Zhejiang University of Technology ZJUT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University of Technology ZJUT filed Critical Zhejiang University of Technology ZJUT
Priority to CN201710168275.XA priority Critical patent/CN107122989B/zh
Publication of CN107122989A publication Critical patent/CN107122989A/zh
Application granted granted Critical
Publication of CN107122989B publication Critical patent/CN107122989B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0623Item investigation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Development Economics (AREA)
  • Engineering & Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Marketing (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Cosmetics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种面向化妆品的多角度混合推荐方法,包括以下步骤:1)收集用户数据,包括用户的ip地址并由此推导出用户的地理位置,当前季节,用户对化妆品的评分信息;2)根据用户数据,建立用户的皮肤属性模型;3)对需要进行相似度计算的矩阵进行奇异值分解的预处理;4)从用户‑评分矩阵中获取用户未评分化妆品的集合S;5)结合用户皮肤属性,化妆品流行度,化妆品标签以及皮肤属性对应标签的映射关系,给出化妆品估价值;6)对未评分化妆品集合S中的化妆品按照估价值从高到低排序作为推荐结果,将推荐结果依次呈现给用户。本发明实现个性化推荐、并提高用户在化妆品选择上的用户体验。

Description

一种面向化妆品的多角度混合推荐方法
技术领域
本发明涉及信息技术领域,具体涉及一种面向化妆品的多角度混合推荐方法。
背景技术
随着互联网技术的发展,人们正处于一个信息爆炸的时代,面对现阶段海量的信息数据,需要一定的规则为用户筛选、过滤海量数据并将用户最感兴趣的信息呈现在用户面前,节省了用户筛选信息的时间,同时增加了用户体验。
搜索引擎的出现在一定程度上解决了信息筛选的问题,但是无法为用户主动提供信息,在此背景下,推荐系统的任务就是解决上述问题,将用户和信息主动联系在一起,帮助用户发现对自己有价值的信息的同时,让信息能够主动展现在对其感兴趣的人群中。在化妆品行业中,化妆品的种类和效果纷繁复杂,用户可能对于自己适用的产品以及时下流行的化妆潮流不甚了解,因此利用推荐系统可以为用户免去这种不必要的困扰。当前对推荐系统的研究和实现更多地出现在电商平台中,然而此类推荐系统并非专门针对化妆品,更多是基于用户的搜索、购买等历史行为记录做出相应的推荐,不具备个性化特点,也没有较好的结合化妆品领域的特征。比如,对于广大女性朋友来说,化妆品是日常生活必不可少的一部分,然而很多人即使经常使用化妆品也并不懂得如何辨别一款化妆品是否适合自己的皮肤,同时不清楚自己的选择是否符合时下的潮流趋势。
发明内容
为了克服目前推荐系统无法针对化妆品特性、用户皮肤属性、化妆品热度以及用户所处的环境特征等要素进行个性化推荐的的不足,本发明提供了一种面向化妆品的多角度混合推荐方法,具体地说,是一种对化妆品使用者多维信息建模,将多种推荐算法混合,利用用户对化妆品的评分、化妆品标签、用户皮肤属性以及皮肤属性与化妆品标签之间的映射关系,来实现结合用户喜好、用户皮肤特性和时下流行产品为用户个性化推荐化妆品为目的的系统,以提高用户在化妆品选择上的用户体验。
本发明解决其技术问题所采用的技术方案是:
一种面向化妆品的多角度混合推荐方法,所述推荐方法包括以下步骤:
1)收集用户数据,包括用户的ip地址并由此推导出用户的地理位置,当前季节,用户对化妆品的评分信息;
2)根据用户数据,建立用户的皮肤属性模型;
3)对需要进行相似度计算的矩阵进行奇异值分解的预处理;
4)从用户-评分矩阵中获取用户未评分化妆品的集合S;
5)结合用户对已评分化妆品的评分结果及其他用户的评分,所有化妆品本身具有的标签信息,用户本身的皮肤属性,以及皮肤属性对应化妆品标签的映射关系,分别利用基于化妆品相似度的协同过滤推荐算法,基于化妆品内容的推荐算法和基于用户皮肤属性特征的推荐算法获得用户对未评分化妆品的估价值v1、v2和v3,对应权重分别为w1、w2和w3,以及化妆品热度作为化妆品的估价值v4,对应权重为w4,最终通过加权和作为化妆品最终的估价值
Figure BDA0001250368820000021
6)对未评分化妆品集合S中的化妆品按照估价值从高到低排序作为推荐结果,将推荐结果依次呈现给用户。
进一步,所述步骤2)中,所述皮肤属性模型中,用户-皮肤属性矩阵U中的每个行向量表示一个用户,向量的每个分量为对应S1,S2,S3,.....,Sn用户皮肤属性的分值,满分为100分,分数越高,表示该用户与这个皮肤属性越契合,具体属性包括:干性、油性、中性、敏感性混合性、毛孔粗大、痘痘、肤色暗沉、肤色不均、肤色黝黑、色斑、皱纹松弛、黑眼圈/眼袋/脂肪粒/眼纹、红血丝、黑头粉刺和粗糙紧绷。
再进一步,所述步骤2)中,建立皮肤属性模型的过程如下:
2.1)初始化
先设立注册问卷,通过用户在注册时填写的结果将所有用户做第一次区分;找到相互之间具有相似特征的用户,根据这些用户所选择的内容建立用户关注模型;
设置问卷值对应属性值的映射表,映射表将一个用户的问卷的结果转换为该用户的模型属性数据;
由下列公式可根据用户填写的问卷,来计算出某一个用户的初始模型属性数据:
Figure BDA0001250368820000031
其中,Ua表示某用户a对应的用户-皮肤属性矩阵U中的行向量;i为问卷题号;n为问卷题数;Xi表示用户在第i个问题对应的分值向量;
采用化妆品标签对应用户皮肤属性表的映射表,记录每一个化妆品的某一个属性对应于用户的皮肤属性的影响值;
化妆品标签对应用户模型属性数值表的部分数据,表示为矩阵Q,即标签-用户模型属性矩阵,每个行向量表示一个标签所对应的各个用户模型属性值;
物品标签对应的是每一个化妆品拥有的标签,同一种类化妆品会有多个标签,不同种类化妆品可能会有同一个标签,但是对皮肤属性矩阵影响不相同,每一个化妆品都会有一个属性和一个或者多个标签,分数矩阵即为化妆品标签对应所有皮肤属性的影响,某款化妆品r的标签-用户模型属性矩阵Qr为标签-用户模型属性矩阵Q的子矩阵;
2.2)用户行为调整
用户收藏、展示或评价某件化妆品时,会对用户的各项用户行为进行分析,从而对用户模型的数据进行微调。
所述步骤2.2)中,用户行为调整的过程如下:
2.2.1用户收藏某一化妆品
当用户对于某一个化妆品表现出兴趣之后,会进行收藏,系统根据收藏的化妆品对用户模型数据进行调整,具体步骤为:
2.2.1.1先对Qr进行计算,得到均值向量
Figure BDA0001250368820000032
Figure BDA0001250368820000041
其中k为该化妆品所拥有的标签数,Qr(i,:)为该化妆品第i个标签对所有皮肤属性的影响值向量;
2.2.1.2对
Figure BDA0001250368820000042
与Ua进行结合,得到新的皮肤属性值向量:
Figure BDA0001250368820000043
其中,
Figure BDA0001250368820000044
为该化妆品r对第i个皮肤属性的影响值,Ua(i)为用户a的第i个皮肤属性原始值,比例系数l=1;
2.2.1.3对Ua′进行调整,使用户的属性矩阵值的总和不变,调整后的结果为Ua″:
Figure BDA0001250368820000045
其中λ为用户a的皮肤属性值向量Ua各分量的总和,ε为
Figure BDA0001250368820000046
的向量各分量值的总和,Ua′(i)是Ua′中第i个分量,Ua″(i)是Ua″中第i个分量;
2.2.2用户展示了某一个化妆品
用户将某一个化妆品展示在个人主页之中,根据展示的化妆品对用户模型数据进行调整,调整过程与2.1.1,比例系数为l=2;
2.2.3用户a对化妆品进行评分
用户对使用过的产品进行一个评分,评分采用的是5分制;根据用户对于化妆品的评分对用户模型数据进行调整;调整过程与步骤2.1.1,比例系数为l=v-3,其中v为用户对于化妆品r的评分;
2.2.4定位气候调整
每一个用户登录时会检查ip,给用户进行定位,若与历史定位不同,则提示用户是否更换定位,然后根据定位和当前季节来进行调整;每个季节的每个地区对应用户皮肤属性S的分值表现值矩阵R中,R中的某个行向量表示某季节的某地区中各个皮肤属性的分值;调整过程为:
2.2.4.1将Rt与Ua进行结合,得到新的皮肤属性值向量Ua′:
Figure BDA0001250368820000051
其中,Rt(i)为该季节时该地区下第个皮肤属性的分值,Ua(i)为用户a的第个皮肤属性原始值;
2.2.4.2对Ua进行调整,使用户的属性矩阵值的总和不变,调整后的结果为U″a
Figure BDA0001250368820000052
其中λ为用户a的皮肤属性值向量Ua各分量的总和,ε为向量Rt各分量值的总和,U′a(i)是U′a中第i个分量,U″a(i)是U″a中第i个分量。
所述步骤3)中,奇异值分解过程如下:
3.1)计算矩阵总能量E:
E=∑iW(i,i)2
3.2)初始化r=1;
3.3)计算前r累计能量E′:
Figure BDA0001250368820000053
3.4)判断E′和E之间是否满足E′≥0.9E,若不满足,则r=r+1,跳转到步骤3.3);否则退出并返回r的值。
所述步骤5)中,结合用户对已评分化妆品的评分结果及其他用户的评分,利用基于化妆品相似度的协同过滤推荐算法获得用户对未评分化妆品的估价值v1,对应权重为w1;结合用户对已评分化妆品的评分结果及其他用户的评分,以及所有化妆品本身具有的标签信息,利用基于化妆品内容的推荐算法获得用户对未评分化妆品的估价值v2,对应权重为w2;结合用户对已评分化妆品的评分结果及其他用户的评分,所有化妆品本身具有的标签信息,用户本身的皮肤属性,以及皮肤属性对应化妆品标签的映射关系,利用基于用户皮肤属性特征的推荐算法获得用户对未评分化妆品的估价值v3,对应权重为w3;利用K-Means算法获得的化妆品热度作为化妆品的估价值v4,对应权重为w4,最终通过加权和作为化妆品最终的估价值
Figure BDA0001250368820000061
本发明的有益效果主要表现在:个性化推荐,提高用户在化妆品选择上的用户体验。
附图说明
图1是用户-皮肤属性实例。
图2是用户-评分矩阵。
图3是物品-标签矩阵。
图4是用户-皮肤属性矩阵。
图5是皮肤属性-标签映射矩阵。
图6是系统流程图。
图7是系统组成图。
具体实施方式
下面结合附图对本发明作进一步描述。
参照图1~图7,一种面向化妆品的多角度混合推荐方法,包括以下步骤:
1)收集用户数据,包括用户的ip地址并由此推导出用户的地理位置,当前季节,用户对化妆品的评分信息;
2)根据用户数据,建立用户的皮肤属性模型;
例如,图1所示矩阵为本发明用户模型数据一个简易的示范,其中a、b为具体用户;Ua,Ub矩阵分别是a、b用户的在用户矩阵U下的皮肤属性值向量;S1,S2,S3,.....,Sn等为用户的皮肤特性,具体属性包括:干性(干燥)、油性(油腻)、中性、敏感性(敏感脆弱)、混合性、毛孔粗大、痘痘(痘印)、肤色暗沉、肤色不均、肤色黝黑、色斑、皱纹松弛、黑眼圈/眼袋/脂肪粒/眼纹、红血丝、黑头粉刺、粗糙紧绷等。图1矩阵中的数值表示该用户对应具体皮肤属性的得分,满分为100分,分数越高,表示该用户与这个皮肤属性越契合。
例如图1所示的阵中,用户a对应皮肤属性S1得分为20分,可以理解成该用户与属性S1不是很契合,而对应皮肤属性S7为80分,意味着,用户a对于S7非常符合,从而导致了系统推荐与S7相关的化妆品会远优于推荐与S1相关的化妆品。
2.1模型初始化
在本发明中进行用户数据初始化的方法就是先设立注册问卷,通过用户在注册时填写的结果将所有用户做第一次区分,所以采集到的数据与目标用户相关性更强,利用这样采集到的用户行为数据计算用户间相似度更加准确。
通过上述方法可以找到很多相互之间具有相似特征的用户,根据这些用户所选择的内容可以建立用户关注模型。
假设下表是系统模拟的一个用户集群,在这个集群里有a,b,c,d,e几个用户,用户间选项如下表:
a b c d e
问题1 A C A A C
问题2 B D C B D
问题3 A C D A C
上表为该集群中所有用户注册时填写的问卷表。其中:a对于三个问题的答案分别为A,B,A;b对于三个问题的答案分别为C,D,C,以此类推。
本发明设置了一张问卷值对应属性值的映射表,这张表可以将一个用户的问卷的结果转换为该用户的模型属性数据。
例如,下表截选了问卷选项对应用户模型属性数值表的部分数据。
Figure BDA0001250368820000071
Figure BDA0001250368820000081
其中,问卷选项对应的是用户填写的结果,1A即用户问卷第一题答案选择了A。A、B、C、D等为用户的皮肤特性;后面的分数矩阵即为A选项对应所有皮肤属性的影响。
由下列公式可根据用户填写的问卷,来计算出每一个用户的初始模型属性数据:
Figure BDA0001250368820000082
其中,Ua表示用户的模型矩阵;i为问卷题号;n为问卷题数,在本系统中,n=4,即为4道题目;Xi表示用户在第i个问题对应增加的矩阵,例如对应上表,当i=1,选项为A的时候,Xi=(25,25,75,0,25,0,0)。
2.2模型数据调整
由于通过问卷得到的初始用户模型属性矩阵不够精确,只能够作为一个用户模型的基础,所以为了使得用户的数据模型更加精确,提高推荐算法的准确性,系统会根据一些依据对用户模型的数据进行微调。
在本发明中,有一张化妆品标签对应用户皮肤属性表的映射表,作用是记录了每一个化妆品的某一个属性对应于用户的皮肤属性的影响值。
其中,化妆品标签对应的是每一个化妆品对应的标签,同一种类化妆品会有多个标签,不同种类化妆品可能会有同一个标签,但是对皮肤属性矩阵影响不相同,每一个化妆品都会有一个属性和一个或者多个标签;S1,S2,S3等为用户的皮肤特性;分数矩阵即为化妆品标签对应所有皮肤属性的影响。
例如,口红r同时含有口红—滋润、口红—装扮这两个标签,则系统对应口红r的属性矩阵Qr为:
Figure BDA0001250368820000083
2.2.1用户行为调整
在用户访问系统的时候,会产生大量数据流,系统会对用户的各项用户行为进行分析,从而对用户模型的数据进行微调。
用户收藏某一化妆品,获取该化妆品的均值向量:
Figure BDA0001250368820000091
其中k为口红所拥有的标签数,此口红r对应的k=2;Qr(i,:)为该口红r第i个标签对所有皮肤属性的影响值向量。
Figure BDA0001250368820000097
与Ua进行结合,得到新的皮肤属性值向量Ua′:
Figure BDA0001250368820000093
其中,
Figure BDA0001250368820000094
为该口红r对第i个皮肤属性的影响值,Ua(i)为用户a的第i个皮肤属性原始值,l为比例系数。
对Ua′进行调整,使用户的属性矩阵值的总和不变,调整后的结果为Ua″:
Figure BDA0001250368820000095
其中λ为用户a的皮肤属性值向量Ua各分量的总和,ε为向量
Figure BDA0001250368820000096
各分量值的总和,Ua′(i)是Ua′中第i个分量,Ua″(i)是Ua″中第i个分量。
用户a展示了某一个化妆品
用户可以将某一个化妆品展示在个人主页之中,供其他用户参考,系统根据展示的化妆品对用户模型数据进行调整。调整算法仅需将收藏化妆品调整算法中的比例系数l设为2。
用户a对化妆品进行评分
用户如果将一个产品加入收藏之后,系统会在一段时间后自动询问用户是否有使用此产品,若是则会要求用户对产品进行一个评分,评分采用的是5分制。系统根据用户对于化妆品的评分对用户模型数据进行调整,此时的调整算法仅需将比例系数l设为v-3,其中v为用户对于化妆品r的具体评分。
2.2.2定位气候调整
本发明还对于用户进行定位分析,结合当前时间以及该地区长期的气候情况进行分析,例如内蒙地区干燥、海。南地区日晒程度强等,此数据每隔一段时间进行更新。用户登录时会检查ip,给用户进行定位,若与历史定位不同,则提示用户是否更换定位,然后根据定位和当前季节来进行调整。每个季节的每个地区对应用户皮肤属性S的分值表现值矩阵R中,R中的某个行向量表示某季节的某地区中各个皮肤属性的分值。
与用户行为调整类似,调整步骤为:
1)将Rt与Ua进行结合,得到新的皮肤属性值向量U′a
Figure BDA0001250368820000101
其中,Rt(i)为该季节时该地区下第i个皮肤属性的分值,Ua(i)为用户a的第i个皮肤属性原始值。
2)对Ua进行调整,使用户的属性矩阵值的总和不变,调整后的结果为U″a
Figure BDA0001250368820000102
其中λ为用户a的皮肤属性值向量Ua各分量的总和,ε为向量Rt各分量值的总和,U′a(i)是U′a中第i个分量,U″a(i)是U″a中第i个分量。
步骤3、在实际应用过程中,绝大多数的有用信息集中在小部分的数据中,其余的信息以噪声和无关量的形式出现,通过矩阵的分解可以使数据简化,同时去除和算法关注的信息本身有害或者无关的噪声。常见的矩阵分解技术就是SVD,对于某个原始数据矩阵Data,利用SVD可以分解成为三个矩阵U、W和V。原始矩阵Data为m×n大小时,U为m×m大小,W为m×n大小,V为n×n大小,满足:
Figure BDA0001250368820000103
其中,W只有对角元素,其他元素均为0,这些对角元素称为奇异值,这些对角元素按照从大到小排列。在工程中可以观察到,在某个奇异值数量(r个)之后,剩余的奇异值都为0(或是数量级很小的数值),意味着数据集中仅有r个重要特征,剩余特征都是噪声或冗余特征,所以本发明对Data进行一个近似计算:
Figure BDA0001250368820000111
只保留U的前m行n列,W的前r行r列以及V的前r行n列。需要保留的奇异值数量的确定方法,可以是保证其能够保留矩阵中90%的能量信息,其中,矩阵总能量E可以通过求所有奇异值的平方和获得,然后通过各种启发式方法确定需要保留的奇异值数量,一种策略是不断按照从大到小的次序对奇异值平方进行累加直到达到总值的90%,另一种策略是先估计可能需要的数量,然后在这基础上进行调整。在本发明中,利用第一种策略来获取需要保留的奇异值数量r,步骤为:
3.1)计算矩阵总能量E:
E=∑iW(i,i)2
3.2)初始化r=1
3.3)计算前r累计能量E′:
Figure BDA0001250368820000112
3.4)判断E′和E之间是否满足E′≥0.9E,若不满足,则r=r+1,跳转到步骤3);否则退出并返回r的值。
步骤4、基于化妆品相似度的协同过滤算法通过将用户和其他用户的对化妆品的评价数据进行对比来实现推荐的,评分数据的形式如图1所示的矩阵形式给出。
用户对化妆品的评分在1-5范围内,0表示用户未对化妆品进行评分。由此可以计算和比较两个化妆品之间的相似度。相似度是用来衡量两个化妆品的相似程度,在算法中需要对其进行定量,本发明中规定:0表示相似度最小,1表示相似度最大,相似度值应该介于0到1之间。本发明中利用用户对化妆品的评分情况来计算相似度,也就是说,在基于化妆品的协同过滤算法中,并不在意化妆品的属性,其效果是共享相似用户之间的数据。对某用户来说,基于化妆品的协同过滤算法步骤为:
1)通过用户-评分矩阵,获取所有该用户未评分的化妆品集合Items={Ii};
2)对用户-评分矩阵进行奇异值分解:
Figure BDA0001250368820000121
并利用公式:
Figure BDA0001250368820000122
将化妆品评分信息转换到低维空间中;
3)每个在集合Items中的化妆品Ii,获得除了Ii本身以外所有Items中的化妆品Ij,(j≠i)以及该用户对Ij的评分vj,利用转换后的化妆品评分信息数据计算Ii和Ij之间的相似度
Figure BDA0001250368820000123
最终获得用户对Ii的推荐估价值:
Figure BDA0001250368820000124
这个估价值的取值范围为[0,5],需要对其进行归一化处理v/5,保证估价值在[0,1]范围内。
计算相似度的方法使用皮尔逊相关系数(Pearson correlation),相对于欧氏距离来说,它的优势是弱化不同用户由于评分心理不同导致的对化妆品评分量级不同的影响,比如A用户对所有的化妆品评分为3,而B用户对所有化妆品的评分为4,皮尔逊相关系数就认为这两个向量是相等的,计算两个变量X和Y的皮尔逊相关系数的方法为:
Figure BDA0001250368820000125
其中cov函数计算两个变量之间的协方差,σX计算X的标准差,在利用向量A和向量B的计算过程中,得到的是协方差矩阵C,相关性系数为:
Figure BDA0001250368820000126
而得到的值在[-1,1]范围,-1表示最大负相关,1表示最大正相关,同样需要进行归一化处理:
similarity=0.5corrcoef+0.5
步骤5、基于化妆品内容的推荐算法是根据用户过去喜欢过的化妆品,为用户推荐和其过去喜欢的化妆品相似的的化妆品。算法的步骤大致为:
1)为每个化妆品构建化妆品属性资料(Item Profile);
2)为每个用户构建用户喜好资料(User Profile);
3)计算用户喜好资料与化妆品属性资料的相似度;
在这里,除了之前用到的图1所示的矩阵之外,还需要一个用来反映每个化妆品标签的矩阵,用来表示化妆品属性。在化妆品-标签矩阵中,0表示该化妆品不存在该标签,1表示化妆品存在该标签。每个化妆品的Item Profile可以直接通过图2所示的物品-标签矩阵得到,也就是物品-标签矩阵中对应该化妆品的行向量,而用户的User Profile则需要图1的用户-评分矩阵和图3的化妆品-标签矩阵结合计算。对某个用户U来说,令其UserProfile表示为向量P,向量P的每个分量Pi对应用户U对标签i的喜爱程度,利用了用户U对所有已评分化妆品的评分平均值Avg、所有在化妆品-标签矩阵中包含标签i且在用户-评分矩阵中已评分的化妆品集合
Figure BDA0001250368820000131
H所包含的元素个数为m,由此得到
Figure BDA0001250368820000132
Item Profile和User Profile之间相似度的计算同样使用皮尔逊相关性系数,并且归一化到[0,1]的范围作为化妆品的估价值。
步骤6、基于用户皮肤属性特征的推荐算法除了图2和图3所示的矩阵数据之外,还需要图4所示的用户-皮肤属性矩阵,以及图5所示的皮肤属性-标签的映射矩阵。
用户-皮肤属性矩阵和皮肤属性-标签映射矩阵中的权重取值范围都为0到1,且行向量的所有分量和为1。基于用户皮肤属性特征的推荐算法根据用户目前已知的皮肤属性,以及通过数据挖掘和分析得到的皮肤属性特征与使用的化妆品标签映射关系,推导出适合用户皮肤特征的化妆品,并且在用户使用过程中,根据历史行为,逐步调整相应的皮肤属性值,适应用户的皮肤特征随时间而产生的变化。
基于用户皮肤属性特征的推荐算法步骤为:
1)获取用户皮肤属性;
2)初始化一个新的标签向量Z,其维度数与标签数相等且每个维度上的分量值为0;
3)对每个皮肤属性向量X,将其每个分量通过皮肤属性-标签矩阵映射得到对应标签的权重
Figure BDA0001250368820000141
4)在分量Zj加上
Figure BDA0001250368820000142
其中n为Zj的维度数;
5)重复步骤3和步骤4,直到X的所有分量都已计算完毕;
6)得到的向量Z为
Figure BDA0001250368820000143
将Z的各个分量作为对应的化妆品的估价值。
步骤7、利用K-Means算法获取每个化妆品的热度,算法步骤如下:
1)确定需要的最热化妆品数k,获取一定时间段T内所有评分大于3的化妆品集合M;
2)以化妆品标签作为维度,按照是否包含标签作为划分依据;
3)随机初始化k个种子点;
4)对M中所有化妆品,以其标签信息为坐标,计算到这k个种子点的距离,最近的那个种子点所在的点群作为其所在的点群;
5)然后将种子点移动到其所在“点群”的中心,也就是“点群”中所有点坐标的平均值;
6)重复步骤4)和步骤5)直到种子点没有移动;
7)计算化妆品i与这k个种子点的距离,获取其中的最小值d;
8)利用1/(1+d)作为化妆品i的热度估价值。
点之间距离的计算利用曼哈顿距离(Manhattan Distance):
dist(X,Y)=∑|xi-yi|
k的确定可以根据经验获得。
步骤8、在以上算法的基础上,本实施例对其进行组合,混合的依据是对每个算法的结果,也就是每个化妆品的估价值,进行加权融合,这个权重可以是对所有用户都统一的,也可以是每个用户单独拥有自己的权重,在本发明中,使用的固定的权重值。以上的三个推算算法和化妆品热度的估价值可以表示为化妆品估价值向量vi,其中每种算法对每个化妆品的估价值的取值范围都为[0,1],每种算法拥有单独的权重wi且满足
Figure BDA0001250368820000151
利用基于化妆品相似度的协同过滤算法、基于化妆品内容的推荐算法、基于用户皮肤属性特征的推荐算法三种推荐算法和化妆品热度算法,将以上每种算法的估价值向量融合而成作为最终的估价值向量
Figure BDA0001250368820000152
向用户推荐时,按照估价值向量的分量值按照从大到小排序后将对应的化妆品依次呈现给用户。这些权重可以通过市场调研人工设置和调整。
参照图6和图7,一种面向化妆品的多角度混合推荐系统,包括:用户数据建模子系统,用于对用户数据进行建模;推荐算法子系统,用于计算用户的推荐结果;App子系统,用于采集用户的位置信息、历史行为和季节信息,同时呈现推荐结果;Web子系统,用于以网页的形式采集用户位置信息、历史行为和季节信息,同时呈现推荐结果。
参照图6,各个子系统之间的协作流程为:
1)由App子系统和Web子系统收集用户数据,包括用户的ip地址并由此推导出用户的地理位置,当前季节,用户对化妆品的评分信息,将这些数据传递给用户数据建模子系统;
2)用户数据建模子系统根据App子系统和Web子系统提供的数据,建立用户的皮肤属性模型,并传递给推荐算法子系统;
3)对需要进行相似度计算的矩阵进行奇异值分解的预处理;
4)从用户-评分矩阵中获取用户未评分化妆品的集合S;
5)推荐算法子系统结合用户皮肤属性,化妆品流行度,化妆品标签以及皮肤属性对应标签的映射关系,给出化妆品估价值;
6)对位评分化妆品集合中的化妆品按照估价值从高到低排序,并反馈给App子系统和Web子系统;
7)由App子系统和Web子系统将推荐结果呈现给用户。

Claims (3)

1.一种面向化妆品的多角度混合推荐方法,其特征在于:所述推荐方法包括以下步骤:
1)收集用户数据,包括用户的ip地址并由此推导出用户的地理位置,当前季节,用户对化妆品的评分信息;
2)根据用户数据,建立用户的皮肤属性模型;
3)对需要进行相似度计算的矩阵进行奇异值分解的预处理;
4)从用户-评分矩阵中获取用户未评分化妆品的集合;
5)结合用户对已评分化妆品的评分结果及其他用户的评分,所有化妆品本身具有的标签信息,用户本身的皮肤属性,以及皮肤属性对应化妆品标签的映射关系,分别利用基于化妆品相似度的协同过滤推荐算法,基于化妆品内容的推荐算法和基于用户皮肤属性特征的推荐算法获得用户对未评分化妆品的估价值v1、v2和v3,对应权重分别为w1、w2和w3,以及化妆品热度作为化妆品的估价值v4,对应权重为w4,最终通过加权和作为化妆品最终的估价值
Figure FDA0003013048740000011
6)对未评分化妆品集合中的化妆品按照估价值V从高到低排序作为推荐结果,将推荐结果依次呈现给用户;
所述步骤2)中,所述皮肤属性模型中,用户-皮肤属性矩阵U中的每个行向量表示一个用户,向量的每个分量为S1,S2,S3,.....,Sn对应用户皮肤属性的分值,满分为100分,分数越高,表示该用户与这个皮肤属性越契合,具体属性包括:干性、油性、中性、敏感性、混合性、毛孔粗大、痘痘、肤色暗沉、肤色不均、肤色黝黑、色斑、皱纹松弛、黑眼圈/眼袋/脂肪粒/眼纹、红血丝、黑头粉刺和粗糙紧绷;
所述步骤2)中,建立皮肤属性模型的过程如下:
2.1)初始化
先设立注册问卷,通过用户在注册时填写的结果将所有用户做第一次区分;找到相互之间具有相似特征的用户,根据这些用户所选择的内容建立用户的初始模型;
设置问卷值对应属性值的映射表,映射表将一个用户的问卷的结果转换为该用户的模型属性数据;
由下列公式可根据用户填写的问卷,来计算出某一个用户的初始模型属性数据:
Figure FDA0003013048740000021
其中,Ua表示某用户a对应的用户-皮肤属性矩阵U中的行向量,i为问卷题号,总共4道题,Xi表示用户在第i个问题对应的分值向量;
采用化妆品标签对应用户皮肤属性表的映射表,记录每一个化妆品的某一个属性对应于用户的皮肤属性的影响值;
化妆品标签对应用户模型属性的数值表的数据,表示为矩阵Q,即标签-用户模型属性矩阵,每个行向量表示一个标签所对应的各个用户模型属性值;
物品标签对应的是每一个化妆品拥有的标签,同一种类化妆品会有多个标签,不同种类化妆品可能会有同一个标签,但是对皮肤属性矩阵影响不相同,每一个化妆品都会有一个属性和一个或者多个标签,分数矩阵即为化妆品标签对应所有皮肤属性的影响,某款化妆品r的标签-用户模型属性矩阵Qr为标签-用户模型属性矩阵Q的子矩阵;
2.2)用户行为调整
用户收藏、展示或评价某件化妆品时,会对用户的各项用户行为进行分析,从而对用户模型的数据进行微调;
所述步骤2.2)中,用户行为调整的过程如下:
2.2.1用户收藏某一化妆品
当用户对于某一个化妆品表现出兴趣之后,会进行收藏,系统根据收藏的化妆品对用户模型数据进行调整,具体步骤为:
2.2.1.1先对Qr进行计算,得到均值向量
Figure FDA0003013048740000022
Figure FDA0003013048740000023
其中k为该化妆品所拥有的标签数,Qr(i,:)为该化妆品第i个标签对所有皮肤属性的影响值向量;
2.2.1.2对
Figure FDA0003013048740000024
与Ua进行结合,得到新的皮肤属性值向量:
Figure FDA0003013048740000025
其中,
Figure FDA0003013048740000026
为该化妆品r对第i个皮肤属性的影响值,Ua(i)为用户a的第i个皮肤属性原始值,比例系数l=1;
2.2.1.3对Ua′进行调整,使用户的属性矩阵值的总和不变,调整后的结果为Ua″:
Figure FDA0003013048740000027
其中λ为用户a的皮肤属性值向量Ua各分量的总和,ε为
Figure FDA0003013048740000031
的向量各分量值的总和,Ua′(i)是Ua′中第i个分量,Ua″(i)是Ua″中第i个分量;
2.2.2用户展示了某一个化妆品
用户将某一个化妆品展示在个人主页之中,根据展示的化妆品对用户模型数据进行调整,调整过程与2.1.1相同,比例系数为l=2;
2.2.3用户a对化妆品进行评分
用户对使用过的产品进行一个评分,评分采用的是5分制;根据用户对于化妆品的评分对用户模型数据进行调整;调整过程与步骤2.1.1相同,比例系数为l=v-3,其中v为用户对于化妆品r的评分;
2.2.4定位气候调整
每一个用户登录时会检查ip,给用户进行定位,若与历史定位不同,则提示用户是否更换定位,然后根据定位和当前季节来进行调整;每个季节的每个地区对应用户皮肤属性S的分值表现值矩阵R中,R中的某个行向量表示某季节的某地区中各个皮肤属性的分值;调整过程为:
2.2.4.1将Rt(i)与Ua(i)进行结合,得到新的皮肤属性值向量Ua′:
Ua′(i)=Rt(i)+Ua(i)
其中,Rt(i)为该季节时该地区下第i个皮肤属性的分值,Ua(i)为用户a的第i个皮肤属性原始值;
2.2.4.2对U′a(i)进行调整,使用户的属性矩阵值的总和不变,调整后的结果为U″a
Figure FDA0003013048740000032
其中λ为用户a的皮肤属性值向量Ua各分量的总和,ε为向量Rt各分量值的总和,U′a(i)是U′a中第i个分量,U″a(i)是U″a中第i个分量。
2.如权利要求1所述的一种面向化妆品的多角度混合推荐方法,其特征在于:所述步骤3)中,奇异值分解过程如下:
3.1)计算矩阵总能量E:
E=∑iW(i,i)2
W(i,i)表示只有对角元素的矩阵,其他元素均为0,这些对角元素称为奇异值,i为行和列的数量;
3.2)初始化r=1;
3.3)计算前r累计能量E′:
Figure FDA0003013048740000033
3.4)判断E′和E之间是否满足E′≥0.9E,若不满足,则r=r+1,跳转到步骤3.3);否则退出并返回r的值。
3.如权利要求1所述的一种面向化妆品的多角度混合推荐方法,其特征在于:所述步骤5)中,结合用户对已评分化妆品的评分结果及其他用户的评分,利用基于化妆品相似度的协同过滤推荐算法获得用户对未评分化妆品的估价值v1,对应权重为w1;结合用户对已评分化妆品的评分结果及其他用户的评分,以及所有化妆品本身具有的标签信息,利用基于化妆品内容的推荐算法获得用户对未评分化妆品的估价值v2,对应权重为w2;结合用户对已评分化妆品的评分结果及其他用户的评分,所有化妆品本身具有的标签信息,用户本身的皮肤属性,以及皮肤属性对应化妆品标签的映射关系,利用基于用户皮肤属性特征的推荐算法获得用户对未评分化妆品的估价值v3,对应权重为w3;利用K-Means算法获得的化妆品热度作为化妆品的估价值v4,对应权重为w4,最终通过加权和作为化妆品最终的估价值
Figure FDA0003013048740000041
CN201710168275.XA 2017-03-21 2017-03-21 一种面向化妆品的多角度混合推荐方法 Active CN107122989B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710168275.XA CN107122989B (zh) 2017-03-21 2017-03-21 一种面向化妆品的多角度混合推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710168275.XA CN107122989B (zh) 2017-03-21 2017-03-21 一种面向化妆品的多角度混合推荐方法

Publications (2)

Publication Number Publication Date
CN107122989A CN107122989A (zh) 2017-09-01
CN107122989B true CN107122989B (zh) 2021-06-18

Family

ID=59718048

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710168275.XA Active CN107122989B (zh) 2017-03-21 2017-03-21 一种面向化妆品的多角度混合推荐方法

Country Status (1)

Country Link
CN (1) CN107122989B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108171568B (zh) * 2017-12-11 2021-12-17 武汉纺织大学 一种基于知识库的服装推荐方法和系统
CN108335727A (zh) * 2018-01-29 2018-07-27 杭州美界科技有限公司 一种基于历史记录的脸部护肤品推荐方法
CN108334589A (zh) * 2018-01-29 2018-07-27 杭州美界科技有限公司 一种脸部护肤品推荐方法
CN108364207A (zh) * 2018-01-29 2018-08-03 杭州美界科技有限公司 一种脸部护肤品及护肤方案推荐方法
CN108269175A (zh) * 2018-01-29 2018-07-10 杭州美界科技有限公司 一种结合用户习惯的脸部护肤品推荐方法
CN108198043A (zh) * 2018-01-29 2018-06-22 杭州美界科技有限公司 一种基于用户推荐的脸部护肤品推荐方法
CN110119968A (zh) * 2018-02-06 2019-08-13 英属开曼群岛商玩美股份有限公司 基于脸部分析推荐产品的系统及方法
CN110119868B (zh) * 2018-02-06 2023-05-16 英属开曼群岛商玩美股份有限公司 于彩妆咨询会议中生成及分析用户行为指标的系统和方法
CN109618045A (zh) * 2018-11-27 2019-04-12 Oppo广东移动通信有限公司 电子装置、信息推送方法及相关产品
CN109711879A (zh) * 2018-12-25 2019-05-03 广东电网有限责任公司信息中心 基于微服务架构的电力业务应用智能交互方法及系统
CN116644124B (zh) * 2023-04-06 2024-05-17 广东圣千科技有限公司 一种基于数据挖掘的护肤产品智能筛选方法及系统
CN116756431B (zh) * 2023-08-14 2023-10-31 西南石油大学 不完备形式背景下基于近似概念的信息或物品推荐方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101271558A (zh) * 2008-05-16 2008-09-24 华东师范大学 基于上下文信息的多策略商品推荐系统
CN102262771A (zh) * 2011-07-30 2011-11-30 郝晨光 网络商品销售方法和系统
CN102479366A (zh) * 2010-11-25 2012-05-30 阿里巴巴集团控股有限公司 一种商品推荐方法及系统
CN102663019A (zh) * 2012-03-21 2012-09-12 北京英孚斯迈特信息技术有限公司 一种即时推荐系统
CN103294812A (zh) * 2013-06-06 2013-09-11 浙江大学 一种基于混合模型的商品推荐方法
CN103678672A (zh) * 2013-12-25 2014-03-26 北京中兴通软件科技股份有限公司 一种信息推荐方法
CN105808650A (zh) * 2016-02-26 2016-07-27 中国地质大学(武汉) 护肤品推送方法及推送服务器
KR20160121867A (ko) * 2015-04-13 2016-10-21 주식회사 에이치이알 피부 특성 및 화장품 취향 코드와 제품 평가를 이용한 화장품 맞춤 추천 및 판매 방법
CN106294489A (zh) * 2015-06-08 2017-01-04 北京三星通信技术研究有限公司 内容推荐方法、装置及系统
KR20170015448A (ko) * 2017-01-31 2017-02-08 주식회사 에이치이알 피부 특성 및 화장품 취향 코드와 제품 평가를 이용한 화장품 맞춤 추천 및 판매 방법
CN106485566A (zh) * 2016-09-12 2017-03-08 北京易车互联信息技术有限公司 一种信息推荐方法及装置

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101271558A (zh) * 2008-05-16 2008-09-24 华东师范大学 基于上下文信息的多策略商品推荐系统
CN102479366A (zh) * 2010-11-25 2012-05-30 阿里巴巴集团控股有限公司 一种商品推荐方法及系统
CN102262771A (zh) * 2011-07-30 2011-11-30 郝晨光 网络商品销售方法和系统
CN102663019A (zh) * 2012-03-21 2012-09-12 北京英孚斯迈特信息技术有限公司 一种即时推荐系统
CN103294812A (zh) * 2013-06-06 2013-09-11 浙江大学 一种基于混合模型的商品推荐方法
CN103678672A (zh) * 2013-12-25 2014-03-26 北京中兴通软件科技股份有限公司 一种信息推荐方法
KR20160121867A (ko) * 2015-04-13 2016-10-21 주식회사 에이치이알 피부 특성 및 화장품 취향 코드와 제품 평가를 이용한 화장품 맞춤 추천 및 판매 방법
CN106294489A (zh) * 2015-06-08 2017-01-04 北京三星通信技术研究有限公司 内容推荐方法、装置及系统
CN105808650A (zh) * 2016-02-26 2016-07-27 中国地质大学(武汉) 护肤品推送方法及推送服务器
CN106485566A (zh) * 2016-09-12 2017-03-08 北京易车互联信息技术有限公司 一种信息推荐方法及装置
KR20170015448A (ko) * 2017-01-31 2017-02-08 주식회사 에이치이알 피부 특성 및 화장품 취향 코드와 제품 평가를 이용한 화장품 맞춤 추천 및 판매 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于Hadoop平台的分布式推荐系统设计与实现;刘博宇;《中国优秀硕士学位论文全文数据库 信息科技辑》;20160815;正文第1.2.3,2.1-2.2,3.1,3.3,4.2节 *
基于客户细分的中小型B2C化妆品商城推荐策略研究与应用;胡艳霞;《中国优秀硕士学位论文全文数据库 信息科技辑》;20170315;正文第4.4.1-4.4.2节 *

Also Published As

Publication number Publication date
CN107122989A (zh) 2017-09-01

Similar Documents

Publication Publication Date Title
CN107122989B (zh) 一种面向化妆品的多角度混合推荐方法
CN109191240B (zh) 一种进行商品推荐的方法和装置
CN109213863B (zh) 一种基于学习风格的自适应推荐方法及系统
Bolloju Aggregation of analytic hierarchy process models based on similarities in decision makers’ preferences
Sun et al. FCM-based model selection algorithms for determining the number of clusters
Courcoux et al. Taxonomic free sorting
Arif et al. Influence of brand related user-generated content through Facebook on consumer behaviour: A stimulus-organism-response framework
CN112313687A (zh) 利用社交网络的影响力测量方法及装置
Coppola et al. An empirical analysis on technophobia/technophilia in consumer market segmentation
Paustian et al. Consumer preferences for regional meat products
Stoll Recreational activities and nonmarket valuation: the conceptualization issue
CN108491477A (zh) 基于多维云和用户动态兴趣的神经网络推荐方法
Cottle Statistical human body form classification: Methodology development and application
Xu et al. Improving Design Software Based On Fuzzy Kano Model: A Case Study of Virtual Reality Interior Design Software.
Lada et al. The roles of brand experience in forming loyalty intention
CN110163696A (zh) 一种基于大数据的电商购物导航方法及其系统
Sakornsathien et al. Application of kansei engineering and data mining in developing an ingenious product Co-design system
TWI642017B (zh) 目標族群評估方法及裝置
Hirosawa et al. Determinant analysis and developing evaluation indicators of grade of execution score of double axel jump in figure skating
Lê et al. You like tomato, I like tomato: segmentation of consumers with missing values
CN103605763B (zh) 广告媒体质量评估方法和装置
CN108228833B (zh) 一种利用用户倾向性学习解决社区项目推荐任务的方法
Ennis et al. A comparison of academic libraries: an analysis using a self‐organizing map
Zakhidov LEVERAGING MAXIMUM LIKELIHOOD METHOD FOR COMMUNITY DETECTION IN SOCIAL NETWORKS: A NEW FRONTIER IN MARKETING
WO2020135936A1 (en) A computer implemented method, a system and computer program for determining personalized parameters for a user

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant