背景业务背景在《每天点击数100以内的极小量渠道,如何精准地投放游戏广告?》

背景业务背景在《每天点击数100以内的极小量渠道,如何精准地投放游戏广告?》

背景

商业背景

如何在每天点击量不到100次的极少数渠道精准投放游戏广告? 文章指出,标签系统为推荐问题和冷启动问题提供了可行的解决方案。 创意的人工标注主要是美工添加和修改,所以标签描述信息会太少,标签选择容易受到主观因素的影响。 现象。 反映广告存在以下问题:

同一个广告方案下,有两种不同的材料,同一个标签。 在这种情况下,两种材料计算出的推荐值R_m将是相同的。

忘记标记材料。 在这种情况下,该材料计算出的推荐值R_m将为0,不推荐该材料。

人工标注不准确:对于风格和内容差异较大的材料,人工标注很接近。 这种情况会影响算法推荐的准确性。

除了上面提到的广告投放需要素材标签外,美工和投放也需要素材标签进行素材管理和同类素材搜索。 为了解决上述问题,需要一种新的物料标签生成方法。 考虑到素材对人的吸引力,主要包括两个方面:内容和风格。 经过技术方案研究,结合业务需求,相较于传统的计算机视觉和深度学习,考虑到CNN具有非常强大的表达能力,我们最终采用深度学习中改进的2-channel网络来生成素材的数字标签。

算法原理

算法概述

标签作为一种物质特征表达形式,通过One-Hot Encoding将标签转化为矩阵形式。 作为推荐系统中使用的标签,其准确度的衡量标准是:越相似的素材的标签距离是否越近。 因此,我们的目的是通过比较两种材料是否相似或相似程度来生成材料标签。 那么卷积神经网络的输入就是素材图片,然后网络输出就是一个相似度距离,如图2-1所示。 如果两个素材图像匹配,则输出值标记为y=0; 如果两个素材图像不匹配,则训练数据标记为 y=1。 思路如下:

使用网络提出材料图像特征,这些特征必须足够稳健和有辨别力。 也就是说,对于同一张图片,同一种材质,经过扭曲、旋转、反转、加噪声等处理后,网络输出的图像特征应该是相似的。 对于不同的图片和素材,它们的特点应该是不同的。

用一个标准来衡量两张图片的相似度,就是目标输出。 相似度越接近 1,说明材料越相似。

游戏素材提取_游戏素材提取器_ps2游戏素材提取

图2-1 CNN网络结构

网络结构

如下图2-2所示,2-channel网络是siamese网络的演化。 从孪生网络的结构图可以看出,该网络包括两个分支。 分别从patch1和patch2的两个分支输入待比较的两幅图像X1和X2,以及特征向量G(X1)、G(X2),然后计算欧式距离D(G(X1),G( X2)) 这两个特征向量在 Lambda 层的最后一层。

显然,由于目的是对特征进行欧几里得距离计算,所以只需要一个网络来进行特征提取就足够了。 但是如果只用一个网络,两张图片需要调用两次forward操作,然后计算loss function,再进行方向传播。 整个过程会比较复杂。

而 2 通道网络解决了这个问题。 原本patch1和patch2是两张单通道灰度图,互不相关。 2 通道网络将 patch1 和 patch2 合并为一个多输入模型。 两个输入流经同一个网络得到计算结果。 你可以看到作为共享同一组权重的两个网络,共享权重。 换个说法:这两张图可以看成是双通道图。 即把两个(1,64,64)个单通道图像数据放在一起组成一个(2,64,64)双通道矩阵,然后将这个矩阵数据作为网络的输入,称为: 2通道。

考虑到VGG在图像领域的稳定性和可靠性,2通道网络的卷积层直接采用训练有素的VGG16网络,包含13个卷积层。 由于全连接层需要重新设计和训练,所以不需要它的全连接层。 连接,如图2-4所示。 CNN后面是自己设计的全连接层,最后一层全连接层的输出就是图像的标签。

游戏素材提取器_游戏素材提取_ps2游戏素材提取

图 2-2 连体网络

游戏素材提取器_游戏素材提取_ps2游戏素材提取

图 2-3 2 通道网络

ps2游戏素材提取_游戏素材提取器_游戏素材提取

图 2-4 VGG16 网络

输入输出

由于2-channel网络的作用是判断两张输入图片的风格是否相似,因此训练模型需要解决以下问题:

1、正负样本

游戏素材主要是静态图片、Flash、视频。 静态图片可以直接作为网络输入,而Flash和视频可以通过截帧转成静态图片再输入。 由于网络的作用是判断两张输入图片是否相似,显然需要输入一对风格相似的图片作为正样本。 鉴于单个游戏素材的风格会很相似,可以将截取单个素材帧数后的两张静态图片作为正样本输入,Y=1。 反之,可以输入两张不同材质的图像作为负样本,Y=-1。

2.样本输出

该网络结构输出的最后一层是全连接层,通过网络将两张图片x1,x2作为输入,得到两个输出特征向量G(x_1),G(x_2)。 然后构造两个特征向量距离度量作为两张图片的相似距离计算函数:

损失函数

接下来,考虑网络损失函数。 损失函数应满足以下性质:

可指导的。

在正样本中,两张图片的风格相似,相似度越大,D(x_1,x_2)越小,损失函数越小。

在负样本中,两张图片的风格不相似,相似度越小,D(x_1,x_2)越大,损失函数越小。

综上所述,网络损失函数定义为:

游戏素材提取器_ps2游戏素材提取_游戏素材提取

风格量化

一般的CNN主要用来提取图片的内容信息,业务场景需要判断图片的风格是否相似。 那么如何衡量图片的风格呢? 比如将图2-5左边的puppy的内容添加到梵高的星夜风格中,就变成了梵高的星夜风格的puppy。

游戏素材提取_ps2游戏素材提取_游戏素材提取器

图 2-5 图片样式

考虑到CNN的本质是对图像特征进行逐层抽象,经过逐层卷积层变换,图像特征越来越高级和稳定。 对于分类问题,可以预测网络最后一层的输出是一个高层特征,具有很强的稳定性和语义。 前层倾向于表达图片的具体信息,后层倾向于表达图片的类别等高层语义信息。 所以一个训练有素的网络可以看作是一个很好的特征提取器。

游戏素材提取器_游戏素材提取_ps2游戏素材提取

图2-6 CNN可视化

对于风格,用训练好的VGG16某层输出特征的Gram矩阵表示。 Gram矩阵的数学形式如下:

Gram矩阵之所以能够表示图像风格,是因为CNN卷积层提取并组合了图像的特征,输出了特征图。 随着层数的增加,提取的特征越来越抽象,具有语义信息。 Gram矩阵其实就是一个矩阵内积运算,计算的是特征图之间的偏心协方差。 特征图包含图像的特征。 每个数字代表特征的强度,Gram矩阵代表特征之间的相关性。 .

算法实现

体系结构

整个系统的流程如下图所示:

使用FFmpeg对素材进行帧裁剪,得到JPG图片文件。

素材的截图文件通过rsync传输到机器进行深度学习,经过数据预处理后作为模型的输入。

在Tensorflow后端使用Keras实现2通道网络生成材质标签。

计算和存储材料相似度。

ps2游戏素材提取_游戏素材提取器_游戏素材提取

图 3-1 系统结构图

数据准备

一、素材截图:

对于动态素材,使用FFmpeg处理截图,得到截图文件,如下图3-2所示:

ps2游戏素材提取_游戏素材提取器_游戏素材提取

图 3-2 素材截图

2.图像预处理:

由于使用了VGG16的网络结构,需要对图像进行预处理以满足VGG16的要求,即形式为(batch_size, channels, width, height)的四阶张量。

游戏素材提取_游戏素材提取器_ps2游戏素材提取

3、正负样本

经过上述图像预处理后,需要生成一对正负样本进行模型训练。 正样本是从同一个素材截图集中抽取的,负样本是从不同素材截图集中抽取的。

游戏素材提取器_游戏素材提取_ps2游戏素材提取

4.训练集和测试集

ps2游戏素材提取_游戏素材提取_游戏素材提取器

建筑模型

2通道网络的CNN层使用不包含3层全连接层的VGG16训练:

接下来的构建需要训练3层全连接层。 这里的激活函数使用“relu”,因为与sigmoid函数和tanh函数相比,它具有以下性质:

激活稀疏性。

更高效的梯度下降和反向传播:避免梯度爆炸和梯度消失的问题。

简化计算过程:没有指数函数等其他复杂激活函数的影响; 同时,活动的分散降低了神经网络的整体计算成本。

游戏素材提取器_游戏素材提取_ps2游戏素材提取

模型训练

模型搭建完成后,使用训练数据进行训练。 训练结果如下:

游戏素材提取_游戏素材提取器_ps2游戏素材提取

可以看出模型经过了20轮训练,最终训练集Accuracy达到99.60%,测试集Accuracy达到97.47%。

训练完成后,保存模型的参数,以供后续在线使用。

在线模型

服务器搭建在线Tensor Flow和Keras环境。 在线模型不需要训练2d素材,只需要加载之前的参数配置文件即可。

然后提取网络的最后一个全连接层作为材质的标签。 然后计算两种材质的相似度,即欧氏距离。

这里有一个加快素材标签加载速度的小技巧:序列化素材标签文本。 存放时:

阅读时:

算法应用

广告

素材标签生成后用于页游端极少数渠道的游戏广告精准投放算法,算法标签用于替代人工标签进行AB测试。 在测试计划中,68%的交付计划算法标签优于人工标签。

此外,对于移动端,在对接今日头条私人PMP交易市场时游戏素材提取器,用户可以获得更多的属性像素游戏素材,如年龄、手机型号等,还可以使用素材标签进行推荐。

物资管理

物料管理分为两个应用:

1. 寻找与优秀材料风格相似的材料。

在投放广告的过程中,对于一些投放指标较好的素材,业务方需要寻找与素材轮播风格较为相似的素材合集。 然后根据业务方的要求,综合考虑渠道、游戏、渠道、投放效果等多方面因素,根据物料标签进行合理推荐,如图4-1、4-2所示。

游戏素材提取_ps2游戏素材提取_游戏素材提取器

图4-1 风格相似的精品推荐业务

游戏素材提取器_ps2游戏素材提取_游戏素材提取

图4-2 相似素材搜索界面

2. 素材文件批量上传,自动识别分类成包流。

企业营销美工在日常素材管理中经常会遇到以下情况:将不同的素材文件归类到精准的创意包中。 以往人工逐一搜索对应的创意包并添加,效率低下。

通过自动标签算法,可以直接自动生成素材标签,然后逐张搜索(图4-3),可以将素材准确匹配到对应的创意包中。 整个过程在几秒钟内自动完成,如图4-4、4-5所示。

ps2游戏素材提取_游戏素材提取器_游戏素材提取

图4-3 按图查找技术流程

ps2游戏素材提取_游戏素材提取器_游戏素材提取

图4-4 多素材上传自动分类业务流程

游戏素材提取器_ps2游戏素材提取_游戏素材提取

图4-5 多素材上传自动分类界面

算法现状与展望

算法状态

目前材质标签生成算法还存在一些问题:

1、视频素材的语义识别

一些长篇视频广告大多带有人物+场景+动作+语音的内容信息。 如何用有效的特征表达内容是理解这类视频的关键。 目前的算法只能基于多帧静态风格识别。 目前还无法学习到视频时域的表达。

2.材质风格变化太快

一般来说Flash素材的前后风格会比较一致,或动漫,或乡村风,或暗黑等等。 但是有些视频素材的风格前后会发生变化。 比如前几秒是真人主演,然后变成游戏画面,算法标签是获取素材的多个截图标签的平均值。 平均后会对素材推荐产生影响。

3.不考虑素材题材限制

用于广告的素材,部分广告精选素材受游戏IP限制,素材推荐结果可能无法满足业务需求。

算法展望

由于上面提到的一些问题,接下来算法的优化方向也是在这三个方面:

1. 视频素材的时间表达

对于视频素材,可以扩展网络结构,采用基于CNN的扩展网络识别方法。 如图5-1所示,共三层。 在第一层,10帧(约三分之一秒)的图像序列经过M×N×3×T卷积处理(其中M×N是图像的分辨率,3是图像的3个颜色通道)图像,T为4,也就是参与计算的帧数,从而在时间轴上形成4个响应),在第2层和第3层进行T=2的时间卷积,则第3层包含所有10帧图片的时空信息。 网络中同一层在不同时刻的网络参数是共享参数。

游戏素材提取器_ps2游戏素材提取_游戏素材提取

图 5-1 CNN 扩展网络

2.材质风格发生了变化

对于素材,可以截取更多的帧,视频帧之间的变化可以认为是素材特征之一。 使用CNN提取每一帧图像的特征,然后使用LSTM挖掘它们之间的时间关系。

3.增加限定题材

对于特定的IP游戏,可以构建IP数据库,然后通过CNN识别指定的IP角色或物品。 当然,更简单的方法是找出相似的素材,然后手动筛选出可以用在这个集合中的IP素材。

参考

[1]Gatys LA,Ecker AS游戏素材提取器,Bethge M。 使用卷积神经网络的纹理合成[J]。 2015.

[2] L. Gatys、A. Ecker 和 M. Bethge。 一种艺术风格的神经算法。 自然通讯,2015 年。

[3] ~frossard/post/vgg16/

[4]Karpathy A、Toderici G、Shetty S 等。 Large-Scale Video Classification with Convolutional Neural Networks[C]// 2014 IEEE 计算机视觉和模式识别会议 (CVPR)。 IEEE 计算机协会,2014 年。