比男友更了解你的穿搭喜好,这个模型可以陪你挑衣服 | 论文

简介:
本文来自AI新媒体量子位(QbitAI)

购物网站总想通过推荐系统让你多买几件衣服。

但穿搭可是个不太好把控的东西,复杂的服装风格不仅让人挑得眼花缭乱,推荐系统也无法准确推荐出你想买的。最近一项研究表示,有个模型能准确判断衣服的风格,推荐最有可能被购买的服装。

这项成果来自首尔国立大学计算机科学与工程学系的Hanbit Lee、Jinseok Seol和Sang-goo Lee三人。本周一,他们在arXiv上发表了题为《Style2Vec: Representation Learning for Fashion Items from Style Sets》的论文。

量子位挑选精彩的部分编译整理,与大家分享这个比男友更了解你穿搭喜好的模型。

论文摘要

随着在线时尚产业的发展,我们对潮流推荐系统的需求越来越大且要求越来越高。对于推荐系统来说,找到用户喜欢的风格比根据购买记录推荐相似衣服重要得多。

只知道用户一个月中购买了礼服和工装裤还不能做些什么,因为我们不知道这些服装具有什么特征。如果能用一种可行的方式表示时装的风格特征,并将它们整理成连贯的风格集,将能向用户准确推荐他喜欢的衣服。

在这里,我们引入了一种服装向量表示模型,并将它命名为Style2Vec。基于词嵌入中使用的直观分布式语义,Style2Vec通过对照数据集中的穿衣搭配了解时尚的表现形式。

为了准确评估,我们用类比测试评估各种与时尚相关的语义,如形状、颜色、图案甚至是潜在的样式。最后,用Style2Vec将衣物风格分类,结果显示,它能胜任时装相关的分类任务。

数据集

Polyvore是一个服装在线搭配的网站,搜罗了几百万件网店的流行单品,用户可以根据自己的喜好将服装图片自行组合查看穿搭效果。

 图片来自Polyvore

研究人员在Polyvore上选取了将近30万套流行服装的搭配,总共包含53460件上装、43180件下装、31199件外塔、77981双鞋子和30852件连衣裙,总共23万多件不重复的单品,每一套搭配中含有2到4样。

获取了这么多服装搭配的样例后,研究人员用一个16层的VGGNet结构将图片映射成1024维的向量。

整个网络用小批量梯度下降法(Mini-batch Gradient Descent,MBGD)通过batch normalization的Adam优化器进行训练。

风格化样式空间

之后,研究人员用t-SNE算法将1024维的服装特征嵌入2D空间。

 可视化样式空间

从上图可以看到,算法做的不错。左上角是划分出的正装区,包含一些西服、礼裙与高跟鞋;左下是朋克区,汇集了张扬的摇滚元素与朋克范;右上是休闲区,带着满满的居家与舒适感;紧挨着休闲区的右下部分是被分出的运动鞋与休闲鞋。

这个风格化的样式空间证明了模型可以比较准确地将图像转换到合理的样式空间中。

类比测试

为了研究这些潜在风格特征的内在特征,研究人员进行了潮流类比测试。测试题很有意思,也很固定——如果x对应y,那么z对应着?

比如这个问题:“如果朋克靴对应夹克,那么高跟鞋对应什么?”研究人员想用这种形式测试是否存在一些潜在的与风格有关的规则。下面这张图是模型匹配的结果——

我们可以看到,模型类比推理显示出很多隐藏的规则。(a)表示了颜色和样式的转移,即粉色短裙-黑色短裙和黑色夹克-粉色夹克之间的匹配;(b)案例与(a)类似,是格子裤-黑裤与黑裙-格子裙之间的转换;(c)(d)是风格的转换,即朋克上衣-休闲上衣与朋克裤-休闲裤的匹配;(e)与(f)显示出正装与休闲装的转换。

通过这项对比实验,我们可以看出模型的特征向量具有颜色、图案、形状等基本特征以及潜在的分类特征。

能够判断出你喜爱哪一类风格的服饰,知道这些风格含有哪些时尚元素——看来,这个模型有能力做你的穿搭助手,有潜力被应用在网店的推荐系统中。

而你,离剁手又进了一步。

最后,附论文地址:

https://arxiv.org/pdf/1708.04014v1.pdf

本文作者:安妮 
原文发布时间:2017-08-16
相关文章
|
程序员 C语言 开发者
int main() 作用详解
int main() 作用详解
1312 0
|
Java 应用服务中间件 开发工具
最简单JDK安装指南(小白也能一次性安装完成)
最简单JDK安装指南(小白也能一次性安装完成)
|
4月前
|
JSON 前端开发 JavaScript
惊艳!阿里开源 15.2k Star 企业级低代码引擎揭秘,如何变革前端开发方式?
阿里巴巴开源的 LowCodeEngine 是一款企业级低代码引擎,具备可视化编排、UI 渲染、代码生成等全链路能力。支持 React、Vue、Rax 等框架,提供高扩展性与类型安全,助力高效开发,降低维护成本,适用于后台系统、多端同步等场景。
819 1
|
12月前
|
测试技术 开发工具 git
写了BUG还想跑——闲鱼异常日志问题自动追踪-定位-分发机制
为了高效地发现、定位和解决预发问题,闲鱼团队研发了一套异常日志问题自动追踪-定位-分发机制。这套机制通过自动化手段,实现了异常日志的定时扫描、精准定位和自动分发,显著降低了开发和测试的成本,提高了问题解决的效率。
516 15
写了BUG还想跑——闲鱼异常日志问题自动追踪-定位-分发机制
|
6月前
|
存储 监控 安全
攻击者是如何利用安全支持提供程序(SSP)来转储凭据的
本文探讨了攻击者如何利用安全支持提供程序(SSP)动态链接库(DLL)窃取Windows系统中的登录凭据。通过修改注册表项或内存注入技术,攻击者可加载恶意SSP至本地安全机构(LSA)进程中,提取加密或明文密码。文章详细分析了两种方法:注册SSP DLL和内存中更新SSP,并展示了Mimikatz工具的应用。为防范此类攻击,建议使用监控解决方案检测域控制器上的异常修改,确保系统安全。
204 8
|
存储 缓存 负载均衡
Elasticsearch 可扩展性
【11月更文挑战第1天】
154 6
|
12月前
|
人工智能 文字识别 测试技术
苹果多模态模型大升级!文本密集、多图理解,全能小钢炮
苹果公司近日发布了其最新版本的多模态模型MM1.5,该模型在文本密集图像理解、视觉引用和定位以及多图推理等方面进行了显著升级。MM1.5基于MM1模型,具备更强的文本处理、视觉理解和多图推理能力,适用于多种下游任务。此外,还推出了专门用于视频理解和移动UI理解的变体。
231 3
|
算法 程序员 Python
程序员必看!Python复杂度分析全攻略,让你的算法设计既快又省内存!
在编程领域,Python以简洁的语法和强大的库支持成为众多程序员的首选语言。然而,性能优化仍是挑战。本文将带你深入了解Python算法的复杂度分析,从时间与空间复杂度入手,分享四大最佳实践:选择合适算法、优化实现、利用Python特性减少空间消耗及定期评估调整,助你写出高效且节省内存的代码,轻松应对各种编程挑战。
304 1
|
算法 决策智能 Python
深入了解LightGBM:模型解释与可解释性
深入了解LightGBM:模型解释与可解释性
1524 0
|
数据可视化 JavaScript 前端开发
Spring Boot集成Swagger2
你好看官,里面请!今天笔者讲的是Spring Boot集成Swagger2。不懂或者觉得我写的有问题可以在评论区留言,我看到会及时回复。 注意:本文仅用于学习参考,不可用于商业用途,如需转载请跟我联系。
414 1