中国领先的IT技术网站
|
|

打脸淘宝,颠覆电商!这家时尚公司用算法引领新零售

本次分享的主题是数据驱动的决策辅助跟产品智能化的两大部分内容,主要涉及我在数据科学中探索的心得体会和数据驱动的创业公司 Stitch Fix 的商业模式、业务流程、参考特征及推荐算法。

作者:王建强来源:51CTO|2017-08-25 12:27

Tech Neo技术沙龙 | 11月25号,九州云/ZStack与您一起探讨云时代网络边界管理实践


【51CTO.com原创稿件】我分享的主题是数据驱动的决策辅助跟产品智能化的两大部分内容,主要涉及我在数据科学中探索的心得体会和数据驱动的创业公司 Stitch Fix 的商业模式、业务流程、参考特征及推荐算法。

数据科学中探索的心得和体会

数据科学可从被 Google 收购的大数据竞赛平台 Kaggle 说起,Kaggle 是规模很大的数据科学家社区,创立于 2010 年,专注于数据科学、机器学习竞赛的举办。

在 C 端,它很快吸引了大量数据科学家、机器学习开发者的参与。在 B 端,Kaggle 的模式也对接了大批优秀企业,为现实中的各类商业难题探寻算法和解决方案。

而它基于社区提供的招聘服务以及名为 Kaggle Kernels 的代码分享工具也是社区运营的关键竞争力。

大家经常会说 Kaggle 是玩数据的平台,ML 的开发者们展示功力、扬名立万的江湖。如果是学习数据科学刚入行,想要找工作,可先在 Kaggle 上参加几次竞赛。

如下图,是 Kaggle 的两个习题:

  • 回归分析预测房价。
  • 分类问题。

回归分析预测房价。这是预测美国中西部一个只有十万人左右的大学城。数据给出 79 个解释变量,如质量打分、形状(规则/不太规则/很不规则)、居住面积、路面(铺碎石/柏油路)等,通过这些分析解释变量,就可以预测房价。

如图,Y 轴是销售价格,X 轴是从 1-10 的质量打分,可以看出,当质量打分增加,售价也同时以递增的速度增加。

分类问题。这个是对谷歌的视频打标签,使用 Youtube-8M 作为训练数据,视频是百万量级,每个视频对应 3-5 标签,总共标签数是 4000 左右。

从给定的训练集中抽象出一些模型来,移动到测试集。问题产出是针对每一个视频,可以预测一列标签,可以根据置信度对标签进行排序。

在 Kaggle 数据竞赛中,数据都是预处理好的,基本变成行和列的表格状数据。所以可以省掉很多原始数据预处理的过程。

如下图,是基本的数据科学流程:

开始要先搜集原始数据(CRM、历史交易等),还有网站分析或对用户 APP 行为进行埋点,根据这些埋点追踪用户的行为。

之后,对原始数据进行预处理,也叫数据清洗,因为原始数据会有很多冗余、重复信息、变量缺失以及错误。基于清洗过的数据集,可以做一些探索性分析和机器学习。

数据科学的用途与数据产品

在数据科学的探索与分析方面,尿片和啤酒是很经典的案例。很多分析师会对商品信息进行归类以及监督商品的相关度。

一般情况,大多数的商品相关度都很低,约在 0.1 左右,啤酒跟尿片的相关度是 0.3 左右。针对这个奇怪的现象,分析师们做了分析,发现很多父亲晚上去超市给婴儿买尿片的同时也会买啤酒来自己喝。

这样一来,超市排放商品时可以把相关度比较高的商品放在一起,方便顾客挑选。所以对数据科学来讲,通过数据分析、建模可以得到一些可以让人信服的信息,便于做决策辅助。

另外就是生成分析型和智能化数据产品

  • 分析类数据产品。如现在了解当前北京实时交通状况,可以找一些网上数据源,针对这些数据源做一些数据可视化和交互式分析。这样数据产品可以呈现数据和定时更新数据内容,这就是一个分析型数据产品。
  • 智能化数据产品。如基于机器学习实现的搜索引擎,广告推荐系统等可定义为智能化数据产品。

数据科学家分类

数据科学家可划分为 Analytics 和 Machine Learning 两类,但是也有很多人兼顾两个角色,相互转换。

Analytics 更多时候是问题导向,如购物平台上用户在工作时间和下班后消费习惯的差异。最初可以针对总体综合信息进行分析,然后在结果的基础上做更细化的分析。可把用户按照城市、地理位置、用户使用的客户端来分类细化。

这里整个过程是交互式的,就是不断提出新问题,通过分析解决问题,然后再提出新的问题,最终目的是做决策辅助。

Machine Learning 主要是指标驱动,如提高广告平台上用户的转化率。转化率就是从用户点击广告到生成转化或用户访问网站和下载 APP。

通过应用新模型或对现有系统当前参数进行改良来提升指标,最终目的是生成智能化的产品,当然中间还要考虑规模化和自动化。

Stitch Fix 的商业和业务模式

Stitch Fix 的商业模式

Stitch Fix 的商业模式和 Netflix 早期的商业模式很相似,在约 2004、2005 年的时候,Netflix 的商业模式主要是用户可以在网上建一个自己想看的电影队列,建成这样一个队列以后,Netflix会把电影寄到用户的家里。

Stitch Fix 采用直邮的模式,只不过它是电商+直邮+推荐。现在,Stitch Fix 是一个在线个性化服装推荐的公司。用户注册后,系统会推荐一些衣服寄到家里,用户可以根据自己的兴趣偏好决定要不要购买这些衣服。

Stitch Fix 主要解决用户的以下购物痛点:

  • 在我们生活中大部分人都非常忙碌,没有时间上街购物。
  • 有些用户可能想发掘新的穿着偏好或是一些穿搭的体会。
  • 很多追随时尚潮流的人,想试用一下不同的场景等。

Stitch Fix 的业务模式

如下图,从用户方面看 Stitch Fix 的业务流程:

从用户的角度看,用户需要填写个人风格问卷。问卷涉及购买衣服时会考虑到的常规问题,如颜色、价格、尺寸等等。

Stitch Fix 会搜集用户个人风格问卷,结合算法和造型师的建议进行推荐。之后,用户会收到五件不同的衣服,可在方便的地方试穿及与其他衣服进行搭配,喜欢留下来,不喜欢退回。

Stitch Fix 在做推荐衣服或人和货匹配时,采用的是人机协同方式,不是纯粹靠机器算法,也不是纯粹靠人工,优势互补实现 1 +1 > 2 的效果。

如下图,是人机协同推荐衣服:

通过算法:

  • 可对大量库存 SUK 筛选和排序,这点人工是比较难实现的,当库存量到峰值时会高达几十万甚至上百万,从中进行人为筛选很耗时。
  • 可基于试穿模式从大规模数据中找到每个人适合的 Pattern。
  • 可发现某一类颜色衣服可能在某一个年龄段用户销售的特别好。
  • 可对系统进行降噪操作,因为不同的造型师挑选会有差异。

如下图,是人和算法协同工作:

构建人和算法协同系统,让两者优势互补,真正实现1+1>2。人可以处理系统中非结构化数据,如文本数据、照片等。

也可以和用户进行感情沟通,如造型师和用户之间,多做情感沟通,大家会更加信任。还可以有更多的创造性,这样算法就可免于被边缘的情况。

如上图,左边是计算机,右边是人,计算机可处理比较繁重的重复性计算,另外计算机的短期记忆与长期记忆都是人所不能媲美的。

人能很好处理非数据化结构、对照片进行美化及建立更好的人机关系。还可以处理敏感度,例如,这样一句话:把话筒放在地上,上面还有一本书。其中“上面”大家都知道是地上,但是这样的场景让机器学习的话是很难的。

Stitch Fix 的数据团队概况与职责

如下图,是 Stitch Fix 的数据团队概况:

Stitch Fix 团队约 80 人左右,主要分为客户、推荐、库存和数据平台四个小团队。数据平台团队的大数据架构和自动化分析流程,支撑其他三个团队,这三个团队和事业部一一对应。

客户团队主要是做精准营销、需求预测、用户画像、客服分析。需求预测方面主要考虑用户稳定增长,需求的季节性以及订阅式用户。

推荐团队主要做人货匹配、用户造型师匹配、Human Computation 和造型师行为分析。

当用户发出请求,会把造型师匹配给用户,Human Computation主要是在虚拟环境下,研究造型师的行为,如一些历史购买或退回的数据,基于这些数据抽样,构造虚拟环境提供给造型师挑选衣服。

在已知购买和退回的情况下,控制展示造型师的信息。同时研究不同展示的情况下对造型师的成功率产生的影响。造型师行为分析则通过日志,对造型师的实际拣选行为进行分析。

库存团队主要做库存预测、基于算法清仓和打标签。

库存随时性很大,有仓库库存商品,还有从库存寄到用户家,在用户家里停留,以及用户不买的产品退回来的商品,所以要对库存进行预测。还有对商品打标签,有了标签数据就可以做更好的匹配。

Stitch Fix的智能化物流

智能化物流—仓库分配

Stitch Fix 采用的是单一仓库发货,单一包裹的方式。

如下图,是选仓发货:

Stitch Fix 有五个仓库,当用户发来请求,首先进行仓库的选择。在选仓的同时考虑运费、投递时间、库存匹配等。仓库不断有商品出售,因此库存会不断消耗,不同库存和用户维度在实时变化。

智能化物流—造型师匹配

如下图,是用户造型师匹配表:

基于交易历史、用户对造型师打分和两者资料的匹配情况。它会考虑到用户跟造型师的属性,如用户是妈妈,会尽可能推荐一位也是妈妈的造型师。

智能化物流—人货匹配

如下图,是基于用户和过去产品交易的特征建模:

人货匹配可以理解为比较传统的机器学习算法,一种方法是协同过滤。协同过滤不用用户特征和产品特征,只需用户和过去产品交易的特征。

另一种方法是基于用户特征和产品特征建模,用户特征部分 Stitch Fix 有用户问卷;产品特征部分,通过逻辑回归,支持向量机,深度神经网络学习得到。

如下图,是用户问卷特征:

图中可以看到,对一个用户会搜集他的数据,包括年龄、位置、职业,还有用户的身材尺寸,颜色偏好等等。

Stitch Fix 还设计了一个样式彩虹概念,把每个用户样式、偏好放在七维空间,七维包括经典、浪漫、波希米亚风、前卫、闪亮、休闲和制服式等。

除此之外可以根据交易历史得到隐式尺寸,如用户尺寸是从小到大,在不同范围里会通过模型预测一些隐式尺寸来把用户放到同一个范围内。

如下图,是产品特征:

产品特征是通过深度神经网络学习得到的,通过分析图片,对每一个产品的图片放到深度神经网络中,生产一些进程,把每一件产品进程可计算产品相似度矩阵,这样就可以用邻近法进行推荐。

Stitch Fix 的推荐算法

在算法方面,Stitch Fix 主要是在开源库的基础上自研,这样的模式比较像脸书。

如下图,Stitch Fix 主算法 Mixed-effect logistic regression 混合效应逻辑回归:

在矩阵中,每一行代表一个用户,每一列代表一个产品。还有用户特征、产品特征以及一些匹配反馈。之后通过建模预测这些数据,这个模型就是带有混合效应的逻辑回归。

推荐算法的挑战

对于推荐算法而言,最需要考虑的是以什么指标排序?比如用交易数据、购买率?

Naïve 的方案是忽略造型师选择,对交易数据建模。

交易数据就是每一个用户,每次邮寄的物件产品,哪些被购买、哪些被退回。这样做的好处是用传统机器学习就可以解决问题,交易数据的数据量不是很大。

但是,我们如果真的用这样的方式,就会遇到很多问题。如删除数据:

当用户有特殊请求时,如有用户不喜欢无袖,造型师就不会推荐,这部分数据在交易数据中就体现不出来,对于这样的用户就没办法估计这些产品在这些用户推荐的成功率。

购买率不一定是好的排序指标

如下两图,是两件衣服购买率的比较:

图中可以看到第一件是覆盖率比较低的,大圈是所有用户群,在所有用户群中只有很小一部分用户挑选了这个产品,因为这个产品是比较前卫的,虽受众较小,但知道应该选给谁,购买率很高。

第二件比较中性、百搭,给谁都可以,但是造型师不太清楚哪些是购买客户。所以选中用户圈覆盖很大,但高覆盖率下是低购买率。

如下图,如果用购买率做指标需要把第一件排前:

这样做排序还需要注意一个很重要的因素就是造型师选择过程中会有选择性偏差,解决这个偏差可以采用 Heckman 两阶段模型。

总结

本文主分享了数据科学的一些心得体会以及 Stitch Fix 的一些关键技术。如果读者对数据科学感兴趣,个人建议有三个词:兴趣、实战、分享。

  • 兴趣:高山仰止,虽不能至,然心向往之。
  • 实战:千里之行始于足下。
  • 分享:独乐乐不如众乐乐。

以上内容根据王建强老师在 WOTA2017 “大数据应用创新”专场的演讲内容整理。

前Twitter美国总部技术主管、中科大管理科学学士,2008 年获 Lowa State University统计学博士。曾任科罗拉多州立大学(Colorado State University)统计系客座教授,美国国家统计院(National Institute of Statistical Sciences)和美国农业部联合培养的博士后,惠普研究院(Hewlett-Packard Labs)高级科学家,推特广告组数据科学家。他有多年数据分析及建模经验,涉及领域有需求预测,供应链管理,广告点击率预测,广告排序,推荐算法,统计预测模型。对数据科学教育,互联网广告和新兴的零售业模式有兴趣。

【51CTO原创稿件,合作站点转载请注明原文作者和出处为51CTO.com】

【责任编辑:wangxueyan TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

网管员必读—服务器与数据存储

《网管员必读—服务器与数据存储》全面、系统地介绍了在中、高级网络管理和网络工程实施中两个重要方面的主流技术和应用:硬件服务器和数据...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊
× Phthon,最神奇好玩的编程语言