一、需求背景

图库行业,基本业务流是投稿——审核——入库——上线发卖,对付海内几大头部图库公司,除代理版权图片之外,均有自己的供稿人社区。
例如:

视觉中国(代理Getty Images):500px(拍照师社区)、爱视觉(插画师社区)图虫创意(代理Adobe Stock):图虫(拍照师社区)千图网:千图网(图片、插画、设计模板供稿)站酷海洛(代理Shutter Stock):站酷海洛(图片、插画供稿)

对付有自己社区、供稿路子的公司来说,审核的效率是在审核、入库环节的痛点。
出于降本增效的目的,审核职员一定是有限的,不可能无止境的增加。
而人工审核的效率,是相对固定的。
随着社区/供稿路子的发展,投稿量、逐日待审图片势必会持续增加。
如果审核韶光长,会导致投稿用的体验差,给社区发展带来明显的负面影响。

因此,本文所述,是借助AI图片评分系统,赞助审核提高审核效率,乃至直接完成一部分审核事情,从而提高审核速率,提高投稿人的用户体验及图库逐日入库图片数量。
该系统已用于实际生产中,达到预期目标,现作基本思路和流程的分享。

磋商图库行业AI图片评分系统的构建和应用

二、目标

赞助图片审核,提高图片审核效率。

三、目标用户群

图库业务,图片审核职员。

四、基本思路

对所有社区投稿内容(非签约拍照师部分)给出AI评分,AI评分分为质量评分、美学评分,分别代表社区用户对图片的认可,以及图片色彩、构图等美学成分的评价。
对付高于评分阈值的图片推送到人工审核,对付低于阈值的图片自动审核谢绝。

在审核系统中展示每张图片的质量评分、美学评分,以供审核职员参考,方便在外包审核职员审美水平参差不齐的情形下供应参考和赞助,确保审核标准的相对统一和稳定。

五、核心流程示意图

六、构造概述

整体系统开拓流程分为以下几大部分:

数据网络数据处理模型演习(模型微调 Fine-tune)模型评估模型优化

终极会得到演习后的模型参数,模型参数结合底层模型构成AI评分运用,可对图片进行AI评分,得到质量评分与美学评分。

七、数据网络

模型演习须要网络对应演习数据集与测试数据集。
为担保演习出来模型参数的通用性和准确性,须要对数据集有一些构建策略。

1. 演习数据集

从拍照师社区选取100万张图片,为担保演习模型对各种种别、风格图片的通用性,须要担保这100万张图片均匀分布于各种风格、主题,例如:人像、静物、彩色、黑白、城市建筑、人文拍照等。
并且为担保评疏散布的多样性,须要选取尽可能完全的用户评疏散布的图片。

100万张图片取完之后,我们自然就得到了100万张图片+评分的数据对,评分作为图片的数据标签。
(为防止极度评分、不客不雅观评分的影响,每张图片分数取所有用户评分的中位数评分)该部分作为演习质量评分模型的演习数据集。

100万张图片中,抽取10万张,交由众包系统,进行人工美学评分。
众包职员来自各大高校设计、艺术干系专业在校生、毕业生。
从而得到10万张图片+美学评分的数据对,评分作为图片数据标签。
该部分数据作为美学评分演习的数据集。

2. 测试数据集

参照演习数据及逻辑,再从拍照师社区选取1万张图片,尽可能在图片分类、评分上分布均匀,确保多样性。
取图片的用户评分中位数作为质量评分参考,另通过众包平台给这1万张图片打上美学评分。
该部分数据作为模型评估利用的测试数据集。

八、数据处理1. 图片压缩

考虑到后续模型的处理效率,并且质量、美学评分更多看整体色块像素分布,不须要太多细节,因此将图片统一压缩为224224像素。

2. 数据归一化处理

为让数据在各个维度上分布更加同等,加速优化算法更快收敛。
避免模型在一个特色维度上过渡你和,提高模型泛化能力。
须要对数据进行归一化处理。
本方案中紧张涉及两部分,一是图片像素的归一化处理,二是评分的归一化处理。

图片像素值从0~255全部转换到0~1的浮点数,质量评分、美学评分也转换打算到0~1的浮点数。

九、模型演习1. 选择模型

本方案,统共从多种模型中选择了深度残差网络(ResNet)来进行演习。
比拟了ResNet50、ResNet101、ResNet152三个模型,从效率(演习速率)、评分预测准确性来进行模型评估,终极选择了ResNet50即可知足业务需求。

2. 模型微调(Fine-tune)

ResNet50是一个通用的特色提取器,先天在图像分类、物体检测、图像分割、特色提取等图像处理需求上有很好的支持。
微调终极要的一步是更换模型末了一层(全连接层),由于我们期望的评分是一个连续分值,属于回归问题,ResNet50默认的末了一层是离散输出,适用于分类问题。
原始ResNet50输出单元数量是1000,相称于1000个种别。
我们须要改为输出单元数量为1,并通过激活函数限定担保输出的预测分值在0~1之间。

3. 丢失函数

本案例中我们选择了最常用的回归丢失函数均方偏差(MSE),打算预测值和真实值之间的平方差的均匀值。

4. 优化器

案例中考虑到综合性能,我们选择了Adam作为优化器。

5. 演习模型

上述事情完毕之后开始进行模型演习,终极输出了两个模型参数,分别用于预测图片质量评分、美学评分。

十、模型评估

利用测试数据集(测试数据集是完备与演习数据集无交集的独立数据集)对模型输出的质量评分、美学评分进行了测试。
终极与人工评分整体偏差掌握在10%~15%。

十一、模型优化

全体模型演习的过程相对大略,期间我们进行的模型优化紧张在以下几方面:

模型选择:在ResNet50、ResNet101、ResNet152之间,从演习效率、输出准确性综合评估。
演习周期评估:基于Early Stopping,尽可能降落演习韶光,避免过拟合,在准确度没有明显提升的演习周期及时停滞周期的增加。
优化器&学习率优化:由算法工程师测试不同优化器、学习率,确保终极模型评分与人工评分偏差在可接管范围内。

十三、其他知识分享

由于这一块,也是现有了需求,再从需求想办理方案,实在很多技能对付产品经理的我来说都是0根本,好在有一些开拓背景情形下理解得会快一些。

对付产品经理来说,一些技能知识够用即可,所谓够用即可以知道什么技能能干什么事,怎么评估不同技能和方案的好坏,能够结合技能给出办理方案,能够和技能同学更好的沟通即可。

反而不能够太过于钻一块技能,想着自己如何如何深入,人的韶光经历是有限的,如何创造问题,办理问题才是这个事情的核心所在(个人所见,不一定对)。

以是在这个项目里,一些根本的知识做了些思维导图,不一定很对,没有仔细校验过,可以分享给有须要的同学。

1. 深度学习优化器

2. 深度学习丢失函数

3. PyTorch

4. 开源机器学习库

5. 图像处理模型

本文由 @Damon 原创发布于大家都是产品经理。
未经容许,禁止转载

题图来自Unsplash,基于CC0协议

该文不雅观点仅代表作者本人,大家都是产品经理平台仅供应信息存储空间做事。