当前位置: 首页 > 科技观察

设计师有危险!苏宁在AI广告设计领域的探索与实践

时间:2023-03-19 14:00:52 科技观察

【.com原稿】随着人工智能时代的到来,在商业设计领域,艺术与科技的较量逐渐成为人们热议的话题。人们关注。作为“智慧零售”的先行者和践行者,苏宁易购这家兼具线上线下渠道、为用户提供多场景购物体验的互联网零售企业,也在积极探索如何将两者结合。智能网点如何将“艺术+科技”发挥到极致?目前,苏宁易购各端口已实现针对不同用户群体的产品精准推送。在智能化的“风口浪尖”,苏宁极客们在思考如何将“艺术+科技”在e-buy线上产品广告位(产品展示banner图)中的作用发挥到淋漓尽致。用户吸引力。在此之前,每一个线上商品展示的banner都是一张一张的设计手绘,效率不高,banner生成周期长,难以满足集约化的大促需求。另外,当推荐算法需要向用??户推荐不同的商品时,运维人员需要根据商品手动匹配不同的背景(除banner元素中的商品图片外的元素素材图片),费时费力。于是,一套智能化的设计平台——“千变旗帜”应运而生。基于机器学习,平台可以根据上传的素材,根据设计语言在线生成100多条定制横幅。同时,根据用户喜好动态展示横幅图片,提高单个广告位的利用率。并依托智能推荐,可提供千人千面的苏宁易购在线广告空间。本文主要介绍苏宁在AI广告设计领域的整体工作流程,以苏宁易购线上商品广告展示条幅为应用场景,以及相关算法技术框架。banner智能设计的整体流程及技术难点banner智能设计的整体流程一张banner图片(如下图)主要包含两个维度的信息:产品图片和装饰效果图产品的设计背景图片,其中我们称之为底板,所以banner的生成也是从这两个维度进行的。图1:banner维度信息拆分具体工作流程图如下图。一方面是推荐算法推荐的产品图,从中提取出产品主体。当然,在分割之前,首先需要对商品图片进行预评价,过滤掉一些质量较差的商品图片。同时也同步生成底板,将分割后的产品图与生成的底板进行匹配,得到同一产品的多个banner。这些banner会进入我们的评分模型进行筛选,然后输出最高质量的Commoditybanner。图2:banner智能设计全过程的frame流程中的每个阶段都至关重要,直接影响生成banner的质量。但部分模块在二次元的技术实现上存在诸多技术难点。主要体现在以下几个方面。Banner智能设计技术难点技术难点1:Banner主图的切分是Banner图片的核心,也是影响用户流量的关键因素。显示的主要产品图像的质量至关重要。前期banner图片上的主要产品图片都是由设计师手工裁剪出来,然后结合底板的设计。现在,如果我们要通过机器自动生成横幅广告,就需要用图像分割算法来代替这部分人工抠图的工作。为了保证宣传的美观和设计,以及一些产品宣传点的突出,设计师对产品图片进行了打包修改,增加了一些产品的特点,成为我们分工的“难点例子”,如家电。镜像、品类阴影、商品图片中的宣传贴纸等。然而,传统的图像分割技术大多是基于图像本身的低级视觉信息。下面显示了使用基于图形的方法进行抓取分割的结果。图3:基于grabcut的产品图片分割结果从右图可以看出,虽然产品主体部分可以轻松分割,但是框的阴影部分严重影响了分割效果,并且分割在边缘极其粗糙。低于苏宁易购线上商品展示图片标准。因此,探索一种能够有效解决这些分割难题的方法,实现商品图谱的精细化分割非常重要。技术难点二:从设计语言到机器语言的转换说到这里,还是回到“人工智能”这个词本身——所谓人工智能,基本上就是先有人工智能,再有智能。同样,在智能banner设计的场景中,最重要也是最基础的就是后台数据,目前都是人工获取。如何将这些“人工”数据转化为“智能”数据,使设计者的设计数据转化为机器可以学习的机器数据,这是母版生成阶段的一大难题。banner基础元素库建立阶段:与banner设计师沟通后,我们将一个banner的元素逐层拆分如下图,主要包括:背景层、纹理层、背景装饰层、遮罩层,产品装饰层,以及一些复制信息。同时,根据不同的属性,对每个底板的图层元素进行标记和标注,比如按照商品类别标注:家电、食品等,使用类型标注:日用、大促等。这些标注之后完成后,根据这些标签建立不同的图层库,这样我们的图层元素中心就建立好了。图4:banner各层元素图图5:banner布局模板示例图banner底图生成筛选阶段:基于上面建立的元素中心,按照设计者预定义的布局标签,部分如上图所示,就可以生成特定样式、尺寸、特定类别的底片。同时,每生成一个母版,记录母版来源对应的父元素标签,方便母版数据的分析和筛选。这时候我们注意到,如果只按照不同层元素的随机组合,即使是少量的素材输入也会产生大量的底片,其中很多明显是不能用的。因此,在生成原型阶段,算法根据设计者的设计语言,将设计的一些“潜规则”转化为机器语言,从而提前避免这些badcase的产生。例如,当基础背景层的颜色值较小时,遮罩层应选择透明度较高且颜色值相近的两个层,不能匹配在一起等。这些默认规则是在模板生成阶段添加的,这使得生成的模板至少符合设计标准,从而减少了后期横幅广告筛选的样本量。图6:生成的底板样图处于产品图与底板的匹配阶段:生成底板并划分产品图后,进入两者的匹配融合阶段。其实产品图片和底板能不能匹配,其实是一个很主观的概念。即使是不同的设计师也会有不同的设计搭配风格。而且,如果一张产品图片与生成的base完全匹配,就会得到大量的banner。其实很多banner会被review淘汰掉,增加工作量。同样的,我们遵循mastergenerationrules的思路,提前从设计语言中抽象出机器可以学习到的不兼容的数字语言。按照“规则+算法”的逻辑,将商品与车牌结合的动作抽象为一个特征匹配的过程。在匹配算法的特征提取阶段,选择底板中的商品展示区域作为特征提取ROI,然后提取待叠加商品图片的颜色特征,计算两??者之间的特征距离来判断他们是否可以匹配。同时,让机器对这些不匹配的特征值进行量化,形成一个线性的不匹配特征区间。当底板再次遇到属于其对应未匹配特征范围内的商品图片时,将不再叠加生成banner。技术难点三:Banner评分规则的建立当个性化算法推荐的商品匹配底板生成多个banner后,会进入我们的banner评价系统进行打分,然后进行模型训练。系统以大量的设计产品作为评价依据,输出高质量的banner。但实际上,说横幅“质量高”是非常主观的。可能在开发者眼里是优秀的,但在设计师眼里就可能被淘汰。因此,需要从不同的角度来判断一条横幅的好坏。评价。另外,不合格的负极板可能只是因为产品图匹配不理想而被淘汰,所以算法需要知道负极板被淘汰的因素。综上所述,我们定义了以下两个概念:分数项:顾名思义,就是banner中需要打分的元素项。目前主要评分项目包括:文案色彩、产品搭配、底板搭配等,底板根据生成的父标签,细化到每一层元素进行评分。评分维度:生成的横幅从不同的维度进行评分。我们根据banner的设计、线上表现等因素,总结出设计者、banner线上曝光点击率、普通线下用户的评分维度。在模型训练阶段,banner的评分主要由操作者和设计者共同决定,评分标签输入网络进行训练并输出结果。在模型验证阶段,该banner的评分标签由输出结果的在线曝光点击率决定,然后反馈给模型的持续强化学习,从多个维度保证评估机制不断完善。横幅智能设计相关算法模型介绍了基于深度学习的智能切图算法。采用卷积神经网络结构进行训练,建立商品图的分割算法模型,同时对分割结果进行优化,提高分割商品图的质量。DilatedConvolutionHoleconvolution传统的CNN网络结构大多采用池化来实现降维,这会导致池化后特征层上的像素尺寸相对较小。甚至通过上采样操作,比如FCN先进行pooling缩小图像尺寸,再进行上采样扩大原图像尺寸。这种重复的缩小和扩大过程导致特征图的准确性下降。因此,我们搭建的分割网络中使用空洞卷积的方法是:去除池化层,同时在卷??积操作之后进行如图所示的操作,从而扩大感受野,然后进行操作提取的featuremap实现更准确的产品图像分割。图7:atrousconvolution示意图产品图边缘的全连接条件随机场细化分割网络前端使用的深度卷积神经网络可以很好的预测图像中是否有产品以及产品的大致位置.,但它不能准确定位产品图像的边界,这也会导致分割的边缘不精确。因此,我们在分割网络的后端添加了一个完全连接的条件随机场(CRF),以优化神经网络预测的结果。在CRF模型中,将图像中每个像素的类别表示为一个变量,然后考虑任意两个变量之间的联系。对应的能量函数为:其中,是一元项,表示像素对应的语义类别,二元项是描述像素与像素之间的关系,根据两个像素的实际距离和颜色信息来判断,越相似的像素得到相同的标签。所以这样一来,CRF就可以让图片尽可能在边界处被分割,通过不断优化能量函数最终达到理想的分割效果。分割图片抗锯齿即使可以采用“像素级”的分割方式来提取商品主图,但带来的副作用是商品图片上出现锯齿状边缘,严重影响banner展示效果。因此,在划分网络之后,我们加入了抗锯齿算法。提取分割后的产品图像的alpha通道,得到图像的边缘,根据边缘走样的形状分为16种模式,如下图所示:图8:抗锯齿边缘计算重新计算像素边缘区域根据不同的锯齿模式取值,如下图右图所示,图像的边缘过渡非常平滑,从而达到抗锯齿的目的。图9:Anti-aliasingoptimizationvs.multi-tasklearning-basedbannerevaluationmodelMulti-tasklearning在建立评估模型的初始阶段,我们也尝试了各种解决方案,比如建立一个学习任务的评估网络,只针对是否商品图片与背景的匹配是合理的,在实际训练过程中,我们发现这个单任务网络收敛很快,测试也出现了过拟合的情况。后期调整了训练的网络结构,增加了卷积层数,但问题并没有得到改善。因此,考虑到单任务学习的局限性,我们尝试从多任务学习的角度建立横幅评价模型。多任务学习可以学习多个任务的共享表示。这种共享表示具有很强的抽象能力,可以适应多个不同但相关的目标,通常能够使主任务获得更好的泛化能力。在banner评价维度上,没有主次任务之分,每一个任务相对于其他任务都可以看成是一级任务。多个相关任务一起学习,有相关的部分,也有不相关的部分。在学习一个任务时,与任务无关的部分相当于学习过程中的噪声,可以提高学习的泛化效果。图10:横幅评估网络的整体架构。横幅评价网络结构介绍。参考Inceptionv3网络结构的设计思路,我们在网络的特征提取阶段使用两个一维的1x3和3x1卷积核来代替3x3卷积核,使得网络层数进一步加深,同时将一个卷积核拆分为两个卷积核可以增加网络的非线性。将批量归一化层添加到网络中。BN是一种非常有效的正则化方法,可以有效加快网络训练速度,同时收敛后的分类精度也可以得到很大的提升。当BN用于神经网络的某一层时,会对每个mini-batch数据的内部进行归一化处理,从而使输出归一化为N(0,1)的正态分布。在模型的训练过程中,我们增加学习率以应用于BN归一化数据,去除Dropout并减少L2正则化(BN已经起到了正则化的作用)。图11:Inception网络结构评估网络的损失函数使用了SoftMaxWithLoss,并在相应的网络中加入了一个Slice层来分割输入标签,从而实现banner中每个评分项的评估输出。总结及工作方向日前,智能设计平台已支持苏宁易购所有产品广告的banner展示。开发的成熟度和稳定性大大减少了设计人员的重复性工作,也能满足运营商大量的banner需求。目前我们的整体架构都是基于这个思路来生成banner并筛选出来进行线上推广。但是,要想让banner设计更加智能,就必须让规则尽可能少地干扰设计,尽可能基于算法来实现。因此,根据设计师和各方的反馈,我们总结了以下三个工作方向。banner元素的自适应排版目前banner上的元素布局比较固定,导致不同大小的背景元素兼容性不高,对背景的生成有一定的局限性。目前我们的工作是通过机器学习元素的排版布局,对应e-buyonline不同的广告位,有针对性的解决banner尺寸的自适应缩放。banner背景智能着色虽然目前生成的背景可以满足日常在线使用,但由于背景的生成是基于元素库,所以只能生成已有的,不能创建。也就是说,真正完成的是艺术家的作品,而不是设计。所以我们想利用设计师的手稿进行自动上色,真正做到“千人千面”和“千物千面”。图12:苏宁易购在线展示banner底图图13:灰度底和模型自动上色可行。但是,一些细节装饰的边缘部分还没有达到高分辨率的要求。同时,在一些较浅的纹理层,算法的着色效果不是特别明显,所以这块的工作方向是实现高分辨率的自动着色。从线上推广到线下,目前的智能化设计平台已经逐步在线上推广使用。苏宁已经拥有数千家线下门店。需要进行宣传版面的视觉设计,需求量巨大。因此,未来的工作方向之一就是利用生成线上banner的思路来进行线下门店的视觉设计。童欣欣,苏宁易购人工智能实验室算法工程师,参与商品图像识别和AI智能设计,并进行相应的研发工作。具有良好的技术知识背景,在深度学习、图像识别、算法性能优化等方面有着深刻的理解和丰富的经验。【原创稿件,合作网站转载请注明原作者和出处.com】