
用户可以在得物购物,也可以在得物社区分享自己的生活。
得物社区中的视频使用双列流,每条内容包含封面、标题等。
封面推荐可以降低创作者的创作成本,提高消费者 CTR。
端智能(Edge/Client Intelligence)是指在边缘设备(如物联网设备、智能传感器、移动设备等)上进行数据处理和智能决策的能力。与云计算模型相比,端智能将计算、存储和分析功能移到更接近数据源的地方,优势如下:
尽管端智能带来了很多优势,但在实际应用中也面临一些挑战:
考虑到用户隐私、实时性和服务端压力,我们选择用端智能推荐视频封面,并克服相关的挑战,最终获得收益。
对客户端而言,不需要训练模型,只需要推理。
端智能框架可以简化推理过程,常见的端智能 SDK 如下:
考虑到 iOS、Android 双端的通用性和开发成本,得物基于 MNN 1 框架,开发得物端智能推理基建。端智能基建核心功能如下:
智能封面主要开发流程如下,算法侧产出端智能模型,客户端调用模型推荐视频封面。
端智能封面推荐场景要求无参图片质量评价(NR-IQA)、轻量化,因此基于目前的前沿进展进行调研和摸底,确定相关实现方案。主要的调研内容:
Faster-VQA2:轻量化的视频质量评估模型。核心是使用优化版本的Transformer->Swin-Transformer来减少网络计算,加速效率。
UNIQA3:统一的图像质量评估(IQA)框架,旨在同时处理全参考(FR)和无参考(NR)任务。现有的IQA模型通常只能处理FR或NR任务之一,而人类视觉系统(HVS)则可以无缝地在两者之间转换,因此提出开发一个能够像人类一样处理不同类型图像质量评估任务的模型,统一全参/无参两类任务。
LAR-IQA4:轻量级的NR-IQA模型,基于MobileNetV3提出了一种新的无参考图像质量评估模型LAR-IQA。该模型旨在解决现有模型在实际应用中的局限性,特别是对于资源受限的移动设备上的实时图像质量评估任务。核心贡献点有:双分支架构、多色空间训练、Kolmogorov-Arnold Networks (KAN)结构代替MLP。
CLIP-IQA5:利用(引入)对比语言-图像预训练( CLIP)模型来评估图像的视觉感知,包括图像的质量(look)和抽象感知(feel),无需进行特定任务的训练。核心在于利用CLIP中蕴含的视觉语言先验,通过精心设计的提示策略来提升评估性能。同时提出了一种反义词提示配对策略(如“好照片”和“坏照片”成对使用),以减少语言模糊性并增强模型在视觉感知评估中的表现。此外,为了克服CLIP对固定尺寸输入的要求及其可能引入的额外失真问题,增加了移除位置嵌入的方法,进一步提升了模型与人类感知的一致性。
Q-Align6:目前NR-IQA领域的SOTA模型,将大模型引入到视觉打分任务中。通过文本定义的级别(例如好、差等)而不是直接的分数(例如3.45、1.77)来指导训练LLMs。标志着在视觉评分领域的一个重要进展,通过创新地使用离散文本定义级别来训练LMMs,不仅提高了评分的准确性和鲁棒性,还为未来的研究开辟了新的方向。
端侧模型存在体积限制,考虑到带宽成本、推理速度等,将模型体积控制在 30M 以内。
目前图片质量打分 sota 模型,整体都是从打分效果出发,不考虑模型性能(size/推理耗时/cpu性能/MAC等),最小的模型体积也超过 120M,不满足端上移植的要求。
现有的 Faster-VQA 和 LAR-IQA 虽然模型打分效果都不错,但是同样因为尺寸超额无法直接使用,也无法直接移植。
轻量化网络:本次算法模型主要在手机本地部署,受限于带宽和计算资源限制,对模型尺寸有严格要求。综合考虑后采用业界比较成熟的轻量化模型 MobileNetV3 结构作为基础框架模块,从0到1重新训练轻量化图片打分模型。
数据清洗与数据集构建:考虑到图片-质量分数据的缺失,使用开源图片评价大模型对数据预标注(必要时进行人工介入清洗),通过多模型交叉打分验证和人工标注,最终总体训练数据量级超过10w+。整体流程如图所示:
轻量化图片质量评价模型
loss优化:loss设计上采用回归任务loss+主观感知偏差衡量loss,超参数控制多loss融合。
MNN 模型支持 Tensorflow、Caffe、ONNX、Torchscripts 等主流模型文件格式,支持CNN / RNN / GAN / Transformer 等主流网络结构。
MobileNetV3 使用 PyTorch 框架创建、训练、持久化模型,需要先转换成为ONNX格式,然后再转换成 MNN 模型。通过 FP16/Int8 压缩与量化,模型最终大小为 24M,客户端可以接受。
在客户端进行模型推理调用时,需关注输入图片的尺寸、预处理方式以及输出数据格式等方面。这些参数与模型相互绑定,且在后续的迭代过程中应保持同步。
整体流程如图所示,用户进入封面选择页,首先对视频抽帧,然后调用端智能推理。端智能输出一个评分,获取评分最高的图片作为推荐的封面。为了提高封面识别速度,采用批量异步计算。
时序图
整体架构如图所示,双端共用端智能基建,各自实现具体的业务逻辑。ClientIntelligence 作为端智能基建,底层封装了 MNN、OpenCV 等,实现了模型管理(下载、缓存等)、推理、监控等功能。
架构图
推理一致性(Inference Consistency)是指在不同时间、不同环境、或不同条件下,模型输出的结果保持稳定、可靠、一致的能力。这是一个非常重要的概念,尤其是在部署机器学习模型时,确保模型的推理一致性对于维护模型的质量和可信度至关重要。
推理不一致的来源:
具体到智能封面的场景,主要面临下面几种一致性:
用户在封面选择页面停留时间有限,因此要尽可能地减小封面推荐耗时。
首先要定位到耗时操作,然后有针对性地优化。
在本场景中,耗时操作包含抽帧、推理,具体优化如下:
优化后,可以在秒级完成抽帧、封面推荐全过程。
线上智能封面、非智能封面抽样结果如下,使用智能封面功能,整体画风更优,更清晰。
智能封面
非智能封面
得物智能封面与主流短视频平台对比结果如下,整体选帧效果和主流短视频平台可比,部分场景效果较优。
得物
短视频平台A
短视频平台B
在智能封面功能上线后,我们随机抽取了线上真实的视频数据,并通过人工GSB(Good Same Bad)评估方法,对智能选帧所得的图片与默认首帧图片进行了图像质量的对比分析。
多组数据、多人次测评整体评估结果为:Good(好)361票,Same(一样)182票,Bad(差)95票。
相较于默认首帧图片,智能选帧的GSB评分提升了 41.7%,表明选帧功能在图像质量上有了显著的改进。
在发布侧,采用智能封面点击率、选择率作为衡量指标,获得了显著的收益,其中智能封面点击率 5.5%,非首帧封面选择率相对提升 +25.61%。
在内容推荐侧,采用推荐双列流视频点击率作为衡量指标,pvctr 和 uvctr 都有明显提升,与对照组相比,pvctr+13.12%、uvctr+18.05%。实验结果也表明在推荐双列场景下,更好得封面内容会带来更好的消费。
本文通过端智能推荐视频封面,帮助创作者降低发文成本,提高发文质量。
我们也希望将端智能用在更多的场景,提高用户体验。
文 / Devin&linghu
关注得物技术,每周更新技术干货
要是觉得文章对你有帮助的话,欢迎评论转发点赞~
未经得物技术许可严禁转载,否则依法追究法律责任。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。