图像质量打分算法-NIMA

业务背景
随着手机性能提升,网络速度改善流量资费下降,原有网络上消费的内容很大程度上都被图片,视频所取代。此时很多应用中就会碰到一个技术问题,如何评价图像,甚至视频的质量。而这里边一个比较重要的场景,就是如何选择内容的头图。例如大众点评UGC评价推荐的首图,爱奇艺、优酷视频的头图。好的头图能够提升内容的表达能力,提升用户体验,从业务指标上也能从内容的点击率体现出来,所以,需要一种可靠的图像质量打分算法,该算法不仅需要能够识别技术上质量差的图片(例如清晰度差,饱和度,噪音点多等),还要根据具体的业务场景,判断该图片适用于该业务场景的程度,例如美团点评的头图如果是菜品时,显示已经就餐完毕的残羹冷炙就不合适,而爱奇艺,优酷等视频网站,则不适合出色情的头图。

算法
业界有很多算法解决此类问题,例如BDN(Brain-Inspired Deep Networks for Image Aesthetics Assessment)中使用多路人工构建特征进行打分能够在该类问题中取得较好成绩。
比较有名的end2end方法,是2017年Google Research发表的NIMA算法(Neural Image Assessment算法)。正好这几天有时间业看了下论文,感觉Google的论文都是比较接地气的:不复杂,能解决实际问题,甚至拿来修改下就可以在实际场景中使用。
该论文解决Image Assessment的算法的思想主要如下:

  1. 使用预训练的ImageNet网络作为Baseline,该处的Baseline可以是MobileNet,VGG16,Inception等
  2. 在Baseline的基础上,将最后一层替换掉,使用随机初始化的FC进行任务Fine Tuning
  3. 使用的数据集论文中提到3个,AVA,TID2013,LIVE。数据集中对图片的标注,均是同一个Image多个人进行打分,用打分分布进行描述,包含mean,deviation。使用上述数据集进行模型Fine Tuning
  4. 论文中考虑到各个打分等级虽然是离散的,但却是有顺序的(Ordered),所以模型最终的loss并不是使用cross entropy进行衡量,而是使用EMD,这样有助于将各个离散的分档的大小关系考虑到任务重,缓解了cross entropy将各个类别看成相互独立的缺点

图:NIMA算法架构图,使用ImageNet任务网络(MobileNet,VGG16,Inception)移出最后一层,然后新增随机初始化FC。训练loss使用EMD(Earth Mover's Distance),其度量的是两个分布的距离。 此处的CDF_p(k) 为从1,到k个类别上的概率累加

图:EMD loss

总结
在很多任务重,NIMA都能够表现良好,甚至使用AVA公开数据进行训练后的模型就能够取得较好成绩,但是很多时候,我们还是需要根据具体业务进行定制,特别是加入符合业务场景需求的训练样本,例如电商UGC中不能出现色情内容,单是否出现年轻,二次元的美女可以加分? 另外文中使用EMD来缓解cross entropy不能建模ordered category信息缺点的思路,也可以在很多场景中借鉴,例如地图中,路况状态一般分为:畅通,缓行,拥堵,极度拥堵,如果直接使用cross entropy就将各种状态之间的顺序关系丢弃了,此时使用EMD作为loss,而仍然将问题看成是分类问题会更加合适。

Reference
Zhangyang Wang, Florin Dolcos, Diane Beck, Shiyu Chang, Thomas S. Huang:
Brain-Inspired Deep Networks for Image Aesthetics Assessment. CoRR abs/1601.04155
NIMA: Neural Image Assessment. 原论文下载地址:https://arxiv.org/abs/1709.05424

github Keras实现:https://github.com/titu1994/neural-image-assessment

 

 

 

 

 

《双十一技术-阿里超级工程》文档分享

分享一个巨牛的技术文档集合: 阿里双十一9年算法工程介绍《九年双十一-互联网技术超级工程》,其中介绍了阿里双十一过程中应用到的基础架构,算法,应用策略等,非常系统全面。很多算法细节并未展开,但也是从宏观上了解阿里内部技术栈,以及业务背后使用的技术非常系统的材料。材料可以从引入列表下载,也可关注微信公众号‘‘阿里技术’’下载。

另外最近的感受,就是阿里在技术的投入越来越大,沉淀越来越厚。以前经常说:百度的技术,腾讯的产品,阿里的运营。但随着阿里经济体越来越庞大,生态越发全面的同时,内部技术建设也越来越领先同行,而且阿里的技术不仅能在工业界落地,同时在学术界也产生更多贡献:现在很多顶会都能看到很多阿里技术成果的身影;同时对开源也有更多的项目贡献。

P.S. 长期招人:搜索,推荐,机器学习,语音,期待你加入阿里经济体,让天下没有难做的生意: )

参考文献:
《九年双11:互联网技术超级工程》:
https://102.alibaba.com/downloadFile.do?file=1516614343703/AliDouble11.pdf