一种融合四季色彩理论的服装个性化推荐方法与流程

文档序号:23723504发布日期:2021-01-26 14:11阅读:70来源:国知局
一种融合四季色彩理论的服装个性化推荐方法与流程

[0001]
本发明属于服装推荐技术领域,具体涉及一种融合四季色彩理论的服装个性化推荐方法。


背景技术:

[0002]
随着电子商务的快速发展,在线商品信息量迅速膨胀,特别是纺织服装领域,由于生产加工技术的多元化,服装商品信息呈爆炸式增长,如何从海量的服装数据中检索出满足用户个性化需求的服装,成为当今服装电子商务亟需解决的问题。当前购物平台普遍推荐最流行的服装,或根据用户所提出的场景、服装颜色等条件向用户进行推荐,均未考虑衣服颜色是否与用户肤色、瞳色、发色等匹配,是否适合消费者。目前的服装推荐方法存在对用户的肤色,发色,瞳色,等特征与服装的之间的匹配度不高,从而对用户进行服装推荐的推荐准确率不高。因此,综合来看,目前的服装推荐方法存在对用户肤色、发色、瞳色等与服装颜色匹配度不高的问题,导致服装推荐的准确率不高,用户体验有待进一步提高。


技术实现要素:

[0003]
本发明的目的是提供一种融合四季色彩理论的服装个性化推荐方法,解决了目前的服装推荐方法存在对用户肤色等与服装颜色匹配度不高、用户体验较差的问题。
[0004]
本发明所采用的技术方案是,
[0005]
一种融合四季色彩理论的服装个性化推荐方法,具体按照如下步骤进行;
[0006]
步骤1:利用爬虫技术获取人脸图像信息,建立用户肤色的四季色彩理论数据集;
[0007]
步骤2:利用mtcnn网络对人脸图像进行预处理,然后基于自我诊断色彩季型的内容将人脸图像信息分为春、夏、秋、冬四类,构建用户肤色的四季色彩理论模型;
[0008]
步骤3:利用多输出分类的方法对服装数据集进行训练,使用fashionnet网络对服装的款式和颜色进行分类,得到服装分类模型;
[0009]
步骤4:根据用户肤色的四季色彩理论模型与服装分类模型,来进行用户服装推荐。
[0010]
本发明的特点还在于,
[0011]
步骤1中,提取的用户面部特征包括有肤色、瞳色以及发色。
[0012]
步骤2中,采用mtcnn的多任务级联cnn的人脸检测模型方式完成对人脸图像预处理操作。
[0013]
步骤2中,预处理具体为:
[0014]
步骤2.1:构建图像金字塔,对原图像进行不同尺度缩放,以适应不同尺寸的面部检测;
[0015]
步骤2.2:使用pnet网络生成人脸候选框和边框回归向量
[0016]
步骤2.3:使用rnet网络滤除大量的错误窗口,对保留下来的窗口继续使用边框回归和非极大值抑制来进一步优化预测结果;
[0017]
步骤2.4:使用onet网络输出五个人脸面部特征点。
[0018]
步骤2中,pnet网络、rnet网络以及onet网络选取的激活函数为prelu,函数表达式如下公式(1):
[0019][0020]
对于样本x
i
人脸的判定交叉熵损失函数入如下公式(2):
[0021]
l
iface
=-(y
iface
log(p
i
)+(1-y
iface
)(1-log(p
i
)))
ꢀꢀꢀ
(2),
[0022]
其中为人脸的真实类别标签,0为非人脸,1为人脸,p
i
为x
i
为人脸的概率。
[0023]
本发明的有益效果是,一种融合四季色彩理论的服装个性化推荐方法,将四季色彩理论与深度学习方法相结合,考虑用户肤色、发色、瞳色等与服装颜色的匹配度,对用户进行服装推荐,使得用户与推荐的服装之间匹配度更高,推荐效果更好。
附图说明
[0024]
图1是本发明一种融合四季色彩理论的服装个性化推荐方法的原理示意图;
[0025]
图2是本发明一种融合四季色彩理论的服装个性化推荐方法中fashionnet网络模型的结构示意图;
[0026]
图3是本发明一种融合四季色彩理论的服装个性化推荐方法中用户四季色彩理论框架示意图;
[0027]
图4是本发明一种融合四季色彩理论的服装个性化推荐方法中mtcnn算法流程框图;
[0028]
图5是本发明一种融合四季色彩理论的服装个性化推荐方法中融合迁移学习与mobilenet的网络结构示意图。
具体实施方式
[0029]
下面结合附图和具体实施方式对本发明一种融合四季色彩理论的服装个性化推荐方法进行详细说明。
[0030]
如图1所示,一种融合四季色彩理论的服装个性化推荐方法,具体按照如下步骤进行;
[0031]
步骤1:利用爬虫技术获取人脸图像信息,建立用户肤色的四季色彩理论数据集;
[0032]
步骤2:利用mtcnn网络对人脸图像进行预处理,然后基于自我诊断色彩季型的内容将人脸图像信息分为春、夏、秋、冬四类,构建用户肤色的四季色彩理论模型;
[0033]
步骤3:利用多输出分类的方法对服装数据集进行训练,使用fashionnet网络对服装的款式和颜色进行分类,得到服装分类模型;
[0034]
步骤4:根据用户肤色的四季色彩理论模型与服装分类模型,来进行用户服装推荐。
[0035]
下面通过具体的实施例对本发明一种融合四季色彩理论的服装个性化推荐方法进行进一步详细说明,具体实现框图如图1所示,主要包含以下步骤:
[0036]
步骤1:建立肤色“四季色彩理论”数据集,训练用户肤色的四季色彩理论模型;
[0037]
步骤2:对输入用户肤色进行分类,将人脸分为“春”、“夏”、“秋”、“冬”四种中的一个;
[0038]
步骤3:利用多输出分类的方法对服装数据集进行训练,使用fashionnet网络训练服装(颜色、款式)的分类模型;
[0039]
步骤4:为用户推荐服装,依据服装分类模型和四季色彩理论原则,进行服装颜色、款式推荐。
[0040]
步骤2中,本发明依据四季色彩理论进行初始化服装推荐。
[0041]
首先利用爬虫技术从网络上获取证件照和典型的明星照片等,其次利用mtcnn网络对图像进行预处理,使用mobilenet网络将用户肤色分为“春”“夏”“秋”“冬”四类,构建用户肤色“四季色彩理论”模型,用户四季色彩理论框架图如图2所示。
[0042]
步骤2中,本发明利用mtcnn网络对用户图像进行人脸检测,mtcnn算法流程如图3所示。具体地,获取用户脸部图像大小为224
×
224
×
3,mtcnn算法的实现步骤主要包括以下四步:
[0043]
构建图像金字塔,对原图像进行不同尺度缩放,以适应不同尺寸的面部检测。
[0044]
使用pnet(proposal network)网络生成人脸候选框和边框回归向量(bounding box regression vectors)。
[0045]
使用rnet(refine network)网络滤除大量的错误窗口,对保留下来的窗口继续使用边框回归和非极大值抑制来进一步优化预测结果。
[0046]
使用onet(output network)网络输出五个人脸面部特征点。
[0047]
上述三个网络选取的激活函数为prelu,函数表达式为:
[0048][0049]
对于样本x
i
人脸的判定交叉熵损失函数为:
[0050][0051]
其中表示人脸的真实类别标签,0代表非人脸,1代表人脸,p
i
表示x
i
为人脸的概率。
[0052]
人脸候选框回归采用欧式距离损失函数:
[0053][0054]
其中表示人脸候选框的真实坐标,表示从网络中得到的人脸候选框,包含人脸候选框的左上角横纵坐标、高和宽。
[0055]
人脸的特征点定位采用欧式距离损失函数:
[0056][0057]
其中表示人脸5个特征点的真是坐标,包含人脸的双眼瞳孔横纵坐标,鼻尖横纵坐标,左右嘴角的横纵坐标。
[0058]
mtcnn网络最终的目标函数为:
[0059][0060]
其中n代表样本总数。α表示人脸判定、候选框回归和特征点定位在当前阶段网络中的权重,β表示样本的真实标签;在p-net和r-net网络中,face、box、point的α值分别为1、0.5、0.5,而在o-net网络中,face、box、point的α值分别为1、0.5、1。
[0061]
步骤2中,本发明融合迁移学习与mobilenet进行用户肤色“四季色彩理论”模型的构建,其中融合迁移学习与mobilenet的网络结构如图4所示。主要步骤如下:
[0062]
采集人脸图像,作为初始数据集;
[0063]
根据四季色彩理论,对初始数据集进行分类;
[0064]
将初始数据集按照9:1或8:2的比例随机划分训练集和验证集;
[0065]
构建mobilenet网络模型,同时加载imagenet训练好的权重;
[0066]
冻结mobilenet的特征提取层,优先训练globalaveragepooling和softmax层;
[0067]
重新初始化模型,对各个层参数进行微调达到分类的最佳效果。
[0068]
步骤2中,本发明所选取的mobilenetv1网络共28层,如图4所示,其网络结构中,除了第一层和最后一层使用普通卷积,其余层均采用深度可分离卷积。为了能有效调整每一层的特征图分布,加速网络收敛,增强网络的泛化能力,每一层卷积后面均需使用bn(batch normalization)和relu6激活函数。同时,网络函数含有两个超参数:宽度因子α、分辨率因子β,宽度因子α取值范围在[0,1],通常定义为四个值:0.25、0.5、0.75、1。分辨率因子β通常是128
×
128、160
×
160、196
×
196、224
×
224。对于宽度因子α,本发明选取1;分辨率因子β,选取224
×
224。
[0069]
步骤3中,本发明利用多输出分类的方法,使用fashionnet网络对服装数据集进行训练,对服装的款式、颜色进行多输出分类。fashionnet网络如图5所示,包含两个分支一个分支用于服装款式(比如衬衫、裙子、牛仔裤等)的分类;另一个分支用于服装颜色(黑色、红色、蓝色等)的分类,如图2所示。分支网络在早期产生,一个网络中创造两个自网络,它们分别负责自己的分类网络。同时,损失函数使用类别交叉熵损失函数,fashionnet网络所有的输入图像将被调整为96
×
96与3个通道(rgb)。具体实施步骤如下:
[0070]
(1)第一个分支build_category_branch负责分类服装种类
[0071]
使用一个lambda层将图像从rgb转换成96
×
96
×
1的灰度图像
[0072]
构建一组conv=>relu=>pool模块,有32个滤波器,具有3x3内核,padding=“same”和relu激活(整流线性单元)。应用批量标准化,采用最大池化层(3
×
3)和25%的dropout。dropout是将节点从当前层随机断开到下一层的过程。这种随机断开的过程自然有助于网络减少过度拟合,因为层中没有一个单个节点负责预测某个类,对象,边缘或角落。
[0073]
构建两组(conv=>relu)*2=>pool代码块。第一组有两组64个滤波器,具有3x3内核,padding=“same”和relu激活(整流线性单元)。应用批量标准化,采用最大池化层(2
×
2)和25%的dropout;第二组有两组128个滤波器,具有3x3内核,padding=“same”和relu激活(整流线性单元)。应用批量标准化,采用最大池化层(2
×
2)和25%的dropout。在模块中对过滤器、卷积核和池化大小的修改是联合进行的,以在逐步降低空间尺寸的同时增加深度。
[0074]
构建fc=>relu层将其归总到一处。最后一个激活层是全连接层,使用softmax分类器并且服装款式有同样数量的神经元输出。
[0075]
(2)第二个分支build_color_branch负责分类服装种类;
[0076]
输入网络的图像为96
×
96
×
3。
[0077]
构建三组conv=>relu=>pool模块。第一组有16个滤波器,具有3x3内核和relu激活(整流线性单元)。应用批量标准化,最大池化(3
×
3和25%的dropout。第二组有32个滤波器,具有3x3内核和relu激活(整流线性单元)。应用批量标准化,最大池化(2
×
2)和25%的dropout。第三组有32个滤波器,具有3x3内核和relu激活(整流线性单元)。应用批量标准化,最大池化(2
×
2)和25%的dropout。
[0078]
构建fc=>relu层将其归总到一处。最后一个激活层是全连接层,使用softmax分类器并且有与服装颜色类别有同样数量的神经元输出
[0079]
本发明定义该网络的两个分支,然它们组合到一个model中。其中的关键思想是我们的分支有一个共有输入,但有两个不同的输出(服装种类和颜色分类结果),实现多输出和多损失训练脚本。
[0080]
本发明定义该网络的两个分支的损失函数都使用类别交叉熵。公式如(6)所示:
[0081][0082]
其中,x表示输入样本,c为待分类类别总数,y
i
为第i个类别对应的真实标签,f
i
(x)为对应的模型输出值,n代表的是每个batch的样本数量。
[0083]
本发明一种融合四季色彩理论的服装个性化推荐方法,提出的融合四季色彩理论服装个性化推荐算法,针对服装推荐中忽略服装与用户自身匹配度的问题,基于用户的肤色、发色、瞳色的特征完成推荐适合用户自身服装的工作。通过实验验证该算法能实现与用户脸部特征相协调的个性化的服装推荐,并且在实际应用中具有较高的准确率。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1