东亚银行、岚图汽车带你解锁 AIGC 时代的数字化人才培养各赛道新模式! 了解详情
写点什么

淘宝新发布的躺平如何做 3D 场景化导购?

  • 2019-11-05
  • 本文字数:3750 字

    阅读完需:约 12 分钟

淘宝新发布的躺平如何做3D场景化导购?

场景化导购


2012 年市场上开始出现导购,主要以单品形式做个性化推荐。虽然现在来看是非常普通的,但在 2012、2013 年是非常新的方式。随后在内容导购方面尝试新的突破,主要以图文、短视频、直播作为导购的载体。



随着 3D 技术日渐成熟,3D 自动理解、自动创作和渲染技术可以进一步把物理世界和虚拟世界结合起来,形成新的用户场景。我们开发了一个新的导购产品——躺平,大家可以在淘宝的搜索框搜索「躺平」,来体验 3D 场景化导购的初步效果。(躺平是淘宝近期发布的覆盖大家居行业生产供给、设计生态、设计师工具、场景化导购平台,更多细节关注文章底部内容推荐阅读)


为什么说 3D 导购值得关注?让我们先回到内容导购场景中,我们拍一些图片,在上面编辑文字,或者录制视频,这些更接近数字世界通常的做法。文字是一维的,图片是二维的,视频增加了时间维。而 3D 是三维的,和我们生活的物理世界更加一致。

3D 场景生成


通过 3D 技术把产品形态升级一个维度,极有可能发展新的商业机会。让我们重新回到导购场景。在传统的线下场景,顾客通过导购员的介绍,看到橱窗商品,会产生买欲望。与之类似,线上用户对线上的商品作为单品感知,相比商场导购的体验要单薄很多。因此我们需要给用户打造一个场景,让用户在场景里去理解这个商品,并推荐更多的相关产品。这样用户的感知会有更丰富的层次。


比如用户对一个桌子感兴趣,当看到桌上摆放的茶壶等物品,就把用户带入了一个场景中。或许用户也对这些东西感兴趣,对需求不再是单点的激发方式,而是通过网状、多角度的激发方式,激发出用户更多的需求,这就是导购的价值。


在导购中,3D 能解决什么问题?首先能想到的是尺寸大小和视觉问题。用户总会关心商品的尺寸问题和视觉问题。从尺寸和视觉来看,用户对 3D 肯定是有需求的。用户购买服装需要尺寸和视觉体验,即使是标准化的东西冰箱、洗衣机也都需要 3D 来感知商品。


买什么商品对尺寸有要求?比如我们去买家具可能需要到线下,会去家装商城看颜色、风格、尺寸是否匹配,有味没味道。现在这些在 3D 里通过虚拟化技术都可以实现,所见即所得。也可以和 AR 结合,形成更流畅的用户体验。


从可实现性来说,模拟一个人穿上衣服的感觉是有很大的难度的,电影大制作那种做视频动画,用设计师去画,成本非常高,不可能用这样的成本去支持 3D 导购项目。我们选择的场景一定是在内容制作方面技术更为成熟的,在落地上是比较可控的,家装行业是一个不错的选择。


导购最重要的是两个部分,一个性化,二是内容的生产。以抖音为例,它核心的创新之一就是可以让用户以简单的操作去生成高品质的内容。对我们来说,通过机器自动生成海量导购内容,然后用个性化推荐技术形成精准的需求匹配。

3D 场景内容优化


为了生成场景,首先要有一套搭配算法。我们通过算法搭配,结合设计师的知识图谱,把两个东西结合起来,形成高品质的搭配结果。设计师的专业输入怎样在算法中流畅丰富地表达?是其中一个很值得研究的问题。


通过搭配专家的支持,结合机器学到的模型,我们就可以在一个大的 3D 商品模型池中生成内容。用搭配的结果在 3D 场景背景中布局,布局之后渲染,再把商品的锚点打到上面,用户就可以通过点击这些锚点去购物。生成的 3D 场景化内容,可以在推荐流或搜索场景中为用户透出。


按照之前的项目经验,只是站在大数据或从推荐角度来说,搭配是很难做的事情,准确性是一个难以逾越的鸿沟。在更加丰富和庞大的数据中,我们怎么做?虽然我们有用户数据,但用户数据并不是万能的,还需要结合其他数据,才能把搭配做精准。在这个过程中,我们引入了 3 种主要的数据。


第一是用户行为:用户买了什么,购买过程中的先后顺序,挑选过程,都可以在应用行为体现。这个数据量很大,缺点是噪声也很大。用户并不会沿着设计的逻辑去购买商品,而是根据实际需求,而实际需求有非常复杂的背景,难以精确建模。


第二是设计师作品:具有一定艺术价值,通过设计师作品可以提升我们的设计感,而不仅仅是功能设计。设计师数据的缺点是数据量比较小,优点是精度很高,且有美学价值。


第三是使用公开搭配图片公开数据集,抓一些搭配图片,在图片上提取搭配信息。


在以上数据的基础上,综合使用可解释性的逻辑和和深度学习技术构建算法。可解释性中很关键的是提取语义标签,包括品类、风格,颜色等。此外在视觉方面提取隐式特征向量,最后用深度学习建模,将形成整个算法方案。


风格非常重要。大家平时看到的很多现代、简约风,但在整个家居市场中有很多风格,风格彼此之间是不能乱搭配的,比如把美式和欧式、简约搭配在一起是不可以的。


为了精准地提取风格,需要有一套方法,从零到一,没人告诉我们家居是什么风格的,要把这个体系建起来。用数据结合算法、人工输入,逐渐丰富标签体系。甚至必要的情况下还会扩充一些细化的标签,这里会有人和机器结合的循环过程。



以上图为例,看上去像柜子一样的这件家具,有很多表示风格的元素,但这个元素必须要由机器学习的方法抓出来,这里有很多细节上的工作。



直接在 3D 上提取风格非常复杂,而 2D 图像积累了很多成熟的技术。先把 3D 模型从不同视角渲染成图片,预测这个图所表示出来的到底是什么风格。然而风格在细微之处,并不仅仅在一个整体上,也就是整体不能完全反映出商品的风格。在细微之处需要引入 Attention 机制。我们可以观察这这些 Attention 出现在能表明商品风格的地方,比如说这个家居底下的腿型,还有顶部的装饰,这些最能反映它的风格。相应的,我们通过多个 Attention 部分匹配的方式建立出对应的网络。


为什么一定要用多个部分的风格特征来匹配,而不采用一个部分来匹配?在很多部分上分别进行匹配,统计上彼此校验增强,才能提取出准确的风格标签。



有了这个风格之后,最后生成搭配。这是一个类似于推荐技术的过程,先粗选再细选。搭配是一个迭代的过程,上图分别是候选模型和已选模型,逐步评估候选模型中的商品,并将合适的候选商品选入已选商品集合中。


涉及到视觉方面,深度学习是标配。通过一个轻量级的网络提取出相应的视觉特征,针对当前商品提取 attention 特征,形成精准的搭配质量评分模型。


整体上看,搭配是比较困难的,不仅要相似,还要有一定的区别。什么和什么搭,这里面既要有相似,又要有互补的关系,而互补关系需要引入新的信息视角。



有了搭配结果后,进入到下一个步骤——布局。在布局之前要有一个空间把这个东西布上,这个空间需要体现场景的美感和品味,不能把这个搭配布在特别土的地方。这个空间就是背景,描述的是某一种场景,比如开会的会场,生活背景、自然背景等等。


根据这些搭配的结果,我们去算出这些配件的空间关系,这个关系要有弹性,不能硬碰硬。为了形成更柔韧的布局能力,通过一个概率图组合搭配的逻辑,生成一个关系的概率。算法提供了给卧室、用餐区、厨房等场景的布局能力。


布局的关键是舒适度,看到布局结构会不会让人感觉到舒服,要做舒适度分析。舒适度分析需要机器学习技术,我们甚至还引入了 GPU 去优化它的舒适度分析的结果。



在 3D 转换到 2D 图片方面,我们在构图的时候要选择取景的视角。有正对的视角、侧对的视角,总有更适合场景的视角。再加上一些规则防止选的空间过于深、空旷或拥挤,在视觉上看上去比较舒适,都和我们后面的效果评估有很大关系。



上图是通过我们搭配出来的结果,可以看到场景不能只干巴巴的放一张桌子、椅子,还要有一些表示场景本身的物件,这些物件更为小型,比如花、小笔记本。这些东西视觉上也能点缀场景,也对场景也有说明作用。我们会把小物件摆放在上面,形成最终的搭配结果。



布局完成以后最后会产出一张 2D 图片,上图是 3D 场景直接生成的。最后一步视觉体验的关键——光,可以对比一下,同样的场景,左图是没有自动布光的,右图是通过优化布光的算法,视觉上右边看起来比左边更漂亮一些。



建立在海量内容基础上的导购,最终决定一个内容质量的还是用户的行为反馈。生成一个内容,内容经过投放以后,会产生点击率,通过点击率判断用户感不感兴趣,有的专家认为漂亮、很有用,但用户也许会有不同的看法,我们必须依靠用户的反馈来判断这个内容的价值。


在投放一段时间后,知道不同内容的点击率是什么,通过模型可以知道这个内容好不好。比如一个新的内容出来后,如果点击率比较低用户不接受就需要淘汰这个内容,点击率比较高则会选入到库里。



我们生成内容的丰富度还是很高的,办公桌、饭厅、卧室、会议室、吧台,这些东西都可以生成。

总结


3D 和机器学习结合还是比较新的话题, 3D 场景生成、 3D 搭配推荐、机器学习、深度学习这些模块已经都涉及到了。


顺带指出,3D 建模是非常关键的,它是第一环。在这上面的 3D 搭配紧随其后。目前 3D 搜索还没有涉及, AR、VR、MR 也有想象空间。这些工业界亟待解决的问题,也给科研工作提供了很多有启发价值的广阔场景。


作者介绍


赵斌强(乐田)——阿里巴巴资深算法专家,现任淘系技术部算法负责人,在内容推荐、商品导购、机器学习等方向有很多深入的工作。


本文转载自公众号淘系技术(ID:AlibabaMTT)


原文链接


https://mp.weixin.qq.com/s?__biz=MzAxNDEwNjk5OQ==&mid=2650404394&idx=1&sn=6f691a3976ddf73a336f0dd2b9b2c761&chksm=83953e32b4e2b724b3988943c276c9c1538b74eaa30c77b37f54cbce99a4a5845ad452951b9c&scene=27#wechat_redirect


2019-11-05 08:001594

评论

发布
暂无评论
发现更多内容

架构实战训练营模块 2 作业

atcgnu

跟着卷卷龙一起学Camera--延迟03

卷卷龙

ISP camera 10月月更

MAC地址与IP地址

急需上岸的小谢

10月月更

kubernetes

急需上岸的小谢

10月月更

Web3.0杂谈-#006(53/100)

hackstoic

DAO Web3.0

基于 HDP 构建企业数据平台

Bright

大数据 数据开发 数据平台

渲染农场是什么_云渲染农场优缺点有哪些?

Renderbus瑞云渲染农场

云渲染 云渲染农场 渲染农场 Renderbus瑞云渲染

跟着卷卷龙一起学Camera--延迟01

卷卷龙

ISP camera 10月月更

Java核心之多态

魏铁锤

java 编程 10月月更

当前Serverless的六大局限性

阿泽🧸

Serverless 10月月更

Java多线程 线程池Executor框架

Yeats_Liao

后端 Java core 10月月更

架构--作业2

李某人

架构实战营

微信朋友圈架构高性能复杂度分析

π

#架构实战营 架构实战训练营9期

微信朋友圈的高性能复杂度分析

Louis

【ArchSummit】平安金融壹账通核心系统的微服务设计经验分享

小明Java问道之路

Java 架构 全球架构师峰会 ArchSummit 10月月更

微信朋友圈的高性能复杂度分析

乖乖IvyShine

SpringBoot实体类常用注解(二)

Java学术趴

10月月更

2022-10-16:以下go语言代码输出什么?A:timed out;B:panic;C:没有任何输出。 package main import ( “context“ “fmt“

福大大架构师每日一题

golang 福大大 选择题

跟着卷卷龙一起学Camera--延迟02

卷卷龙

ISP camera 10月月更

CorelDRAW 2019 软件应用项目(三)

张立梵

设计师 CorelDRAW 2022 10月月更

低代码探索:freemarker的模板和表达式

程序员架构进阶

低代码平台 模板引擎 10月月更 freemarker

cstdio的源码学习分析10-格式化输入输出函数fprintf---宏定义/辅助函数分析04

桑榆

源码刨析 10月月更 C++

Java多线程 Future和FutureTask的区别

Yeats_Liao

后端 Java core 10月月更

SpringBoot的实体类中常用的注解

Java学术趴

10月月更

挑战30天学完Python:Day5 数据类型 - 列表list

MegaQi

Python 挑战30天学完Python 10月月更

TLS加密远程连接Docker

程序员欣宸

Docker 容器安全 10月月更

Java编程之方法重写

魏铁锤

后端 java 编程 10月月更

Java多线程 Callable和Future

Yeats_Liao

后端 Java core 10月月更

02微信高能性复杂度分析

神奇的叶叔叔

TCP 复位攻击原理和实战复现

急需上岸的小谢

10月月更

深入理解 Go 语言的一等函数及其应用

宇宙之一粟

函数 Go 语言 10月月更 匿名函数

淘宝新发布的躺平如何做3D场景化导购?_文化 & 方法_赵斌强_InfoQ精选文章