探討圖庫行業(yè)AI圖片評分系統(tǒng)的構(gòu)建和應(yīng)用

0 評論 1720 瀏覽 9 收藏 12 分鐘

為了提升圖庫公司審核圖片投稿的效率,我們或許可以搭建AI圖片評分系統(tǒng),來幫助提升審核效率。那么,圖庫行業(yè)的AI圖片評分系統(tǒng)應(yīng)該怎么搭建?本文梳理了基本思路與流程,一起來看一下,或許會對你有所啟發(fā)。

一、需求背景

圖庫行業(yè),基本業(yè)務(wù)流是投稿——審核——入庫——上線銷售,對于國內(nèi)幾大頭部圖庫公司,除代理版權(quán)圖片之外,均有自己的供稿人社區(qū)。例如:

  • 視覺中國(代理Getty Images):500px(攝影師社區(qū))、愛視覺(插畫師社區(qū))
  • 圖蟲創(chuàng)意(代理Adobe Stock):圖蟲(攝影師社區(qū))
  • 千圖網(wǎng):千圖網(wǎng)(圖片、插畫、設(shè)計(jì)模板供稿)
  • 站酷海洛(代理Shutter Stock):站酷海洛(圖片、插畫供稿)

對于有自己社區(qū)、供稿途徑的公司來說,審核的效率是在審核、入庫環(huán)節(jié)的痛點(diǎn)。出于降本增效的目的,審核人員一定是有限的,不可能無止境的增加。而人工審核的效率,是相對固定的。隨著社區(qū)/供稿途徑的發(fā)展,投稿量、每日待審圖片勢必會持續(xù)增加。如果審核時間長,會導(dǎo)致投稿用的體驗(yàn)差,給社區(qū)發(fā)展帶來明顯的負(fù)面影響。

因此,本文所述,是借助AI圖片評分系統(tǒng),輔助審核提高審核效率,甚至直接完成一部分審核工作,從而提高審核速度,提高投稿人的用戶體驗(yàn)及圖庫每日入庫圖片數(shù)量。該系統(tǒng)已用于實(shí)際生產(chǎn)中,達(dá)到預(yù)期目標(biāo),現(xiàn)作基本思路和流程的分享。

二、目標(biāo)

輔助圖片審核,提高圖片審核效率。

三、目標(biāo)用戶群

圖庫業(yè)務(wù),圖片審核人員。

四、基本思路

對所有社區(qū)投稿內(nèi)容(非簽約攝影師部分)給出AI評分,AI評分分為質(zhì)量評分、美學(xué)評分,分別代表社區(qū)用戶對圖片的認(rèn)可,以及圖片色彩、構(gòu)圖等美學(xué)因素的評價(jià)。對于高于評分閾值的圖片推送到人工審核,對于低于閾值的圖片自動審核拒絕。

在審核系統(tǒng)中展示每張圖片的質(zhì)量評分、美學(xué)評分,以供審核人員參考,方便在外包審核人員審美水平參差不齊的情況下提供參考和輔助,確保審核標(biāo)準(zhǔn)的相對統(tǒng)一和穩(wěn)定。

五、核心流程示意圖

六、結(jié)構(gòu)概述

整體系統(tǒng)開發(fā)流程分為以下幾大部分:

  • 數(shù)據(jù)收集
  • 數(shù)據(jù)處理
  • 模型訓(xùn)練(模型微調(diào) Fine-tune)
  • 模型評估
  • 模型優(yōu)化

最終會獲得訓(xùn)練后的模型參數(shù),模型參數(shù)結(jié)合底層模型構(gòu)成AI評分應(yīng)用,可對圖片進(jìn)行AI評分,獲得質(zhì)量評分與美學(xué)評分。

七、數(shù)據(jù)收集

模型訓(xùn)練需要收集對應(yīng)訓(xùn)練數(shù)據(jù)集與測試數(shù)據(jù)集。為保證訓(xùn)練出來模型參數(shù)的通用性和準(zhǔn)確性,需要對數(shù)據(jù)集有一些構(gòu)建策略。

1. 訓(xùn)練數(shù)據(jù)集

從攝影師社區(qū)選取100萬張圖片,為保證訓(xùn)練模型對各種類別、風(fēng)格圖片的通用性,需要保證這100萬張圖片均勻分布于各類風(fēng)格、主題,例如:人像、靜物、彩色、黑白、城市建筑、人文攝影等。并且為保證評分分布的多樣性,需要選取盡可能完整的用戶評分分布的圖片。

100萬張圖片取完之后,我們自然就獲得了100萬張圖片+評分的數(shù)據(jù)對,評分作為圖片的數(shù)據(jù)標(biāo)簽。(為防止極端評分、不客觀評分的影響,每張圖片分?jǐn)?shù)取所有用戶評分的中位數(shù)評分)該部分作為訓(xùn)練質(zhì)量評分模型的訓(xùn)練數(shù)據(jù)集。

100萬張圖片中,抽取10萬張,交由眾包系統(tǒng),進(jìn)行人工美學(xué)評分。眾包人員來自各大高校設(shè)計(jì)、藝術(shù)相關(guān)專業(yè)在校生、畢業(yè)生。從而獲得10萬張圖片+美學(xué)評分的數(shù)據(jù)對,評分作為圖片數(shù)據(jù)標(biāo)簽。該部分?jǐn)?shù)據(jù)作為美學(xué)評分訓(xùn)練的數(shù)據(jù)集

2. 測試數(shù)據(jù)集

參照訓(xùn)練數(shù)據(jù)及邏輯,再從攝影師社區(qū)選取1萬張圖片,盡可能在圖片分類、評分上分布均勻,確保多樣性。取圖片的用戶評分中位數(shù)作為質(zhì)量評分參考,另通過眾包平臺給這1萬張圖片打上美學(xué)評分。該部分?jǐn)?shù)據(jù)作為模型評估使用的測試數(shù)據(jù)集。

八、數(shù)據(jù)處理

1. 圖片壓縮

考慮到后續(xù)模型的處理效率,并且質(zhì)量、美學(xué)評分更多看整體色塊像素分布,不需要太多細(xì)節(jié),因此將圖片統(tǒng)一壓縮為224*224像素。

2. 數(shù)據(jù)歸一化處理

為讓數(shù)據(jù)在各個維度上分布更加一致,加速優(yōu)化算法更快收斂。避免模型在一個特征維度上過渡你和,提高模型泛化能力。需要對數(shù)據(jù)進(jìn)行歸一化處理。本方案中主要涉及兩部分,一是圖片像素的歸一化處理,二是評分的歸一化處理。

圖片像素值從0~255全部轉(zhuǎn)換到0~1的浮點(diǎn)數(shù),質(zhì)量評分、美學(xué)評分也轉(zhuǎn)換計(jì)算到0~1的浮點(diǎn)數(shù)。

九、模型訓(xùn)練

1. 選擇模型

本方案,總共從多種模型中選擇了深度殘差網(wǎng)絡(luò)(ResNet)來進(jìn)行訓(xùn)練。對比了ResNet50、ResNet101、ResNet152三個模型,從效率(訓(xùn)練速度)、評分預(yù)測準(zhǔn)確性來進(jìn)行模型評估,最終選擇了ResNet50即可滿足業(yè)務(wù)需求。

2. 模型微調(diào)(Fine-tune)

ResNet50是一個通用的特征提取器,先天在圖像分類、物體檢測、圖像分割、特征提取等圖像處理需求上有很好的支持。微調(diào)最終要的一步是替換模型最后一層(全連接層),因?yàn)槲覀兤谕脑u分是一個連續(xù)分值,屬于回歸問題,ResNet50默認(rèn)的最后一層是離散輸出,適用于分類問題。原始ResNet50輸出單元數(shù)量是1000,相當(dāng)于1000個類別。我們需要改為輸出單元數(shù)量為1,并通過激活函數(shù)限定保證輸出的預(yù)測分值在0~1之間。

3. 損失函數(shù)

本案例中我們選擇了最常用的回歸損失函數(shù)均方誤差(MSE),計(jì)算預(yù)測值和真實(shí)值之間的平方差的平均值。

4. 優(yōu)化器

案例中考慮到綜合性能,我們選擇了Adam作為優(yōu)化器。

5. 訓(xùn)練模型

上述工作完畢之后開始進(jìn)行模型訓(xùn)練,最終輸出了兩個模型參數(shù),分別用于預(yù)測圖片質(zhì)量評分、美學(xué)評分。

十、模型評估

使用測試數(shù)據(jù)集(測試數(shù)據(jù)集是完全與訓(xùn)練數(shù)據(jù)集無交集的獨(dú)立數(shù)據(jù)集)對模型輸出的質(zhì)量評分、美學(xué)評分進(jìn)行了測試。最終與人工評分整體誤差控制在10%~15%。

十一、模型優(yōu)化

整個模型訓(xùn)練的過程相對簡單,期間我們進(jìn)行的模型優(yōu)化主要在以下幾方面:

  • 模型選擇:在ResNet50、ResNet101、ResNet152之間,從訓(xùn)練效率、輸出準(zhǔn)確性綜合評估。
  • 訓(xùn)練周期評估:基于Early Stopping,盡可能降低訓(xùn)練時間,避免過擬合,在準(zhǔn)確度沒有明顯提升的訓(xùn)練周期及時停止周期的增加。
  • 優(yōu)化器&學(xué)習(xí)率優(yōu)化:由算法工程師測試不同優(yōu)化器、學(xué)習(xí)率,確保最終模型評分與人工評分誤差在可接受范圍內(nèi)。

十三、其他知識分享

因?yàn)檫@一塊,也是現(xiàn)有了需求,再從需求想解決方案,其實(shí)很多技術(shù)對于產(chǎn)品經(jīng)理的我來說都是0基礎(chǔ),好在有一些開發(fā)背景情況下了解得會快一些。

對于產(chǎn)品經(jīng)理來說,一些技術(shù)知識夠用即可,所謂夠用即可以知道什么技術(shù)能干什么事,怎么評估不同技術(shù)和方案的好壞,能夠結(jié)合技術(shù)給出解決方案,能夠和技術(shù)同學(xué)更好的溝通即可。

反而不能夠太過于鉆一塊技術(shù),想著自己如何如何深入,人的時間經(jīng)歷是有限的,如何發(fā)現(xiàn)問題,解決問題才是這個工作的核心所在(個人所見,不一定對)。

所以在這個項(xiàng)目里,一些基礎(chǔ)的知識做了些思維導(dǎo)圖,不一定很對,沒有仔細(xì)校驗(yàn)過,可以分享給有需要的同學(xué)。

1. 深度學(xué)習(xí)優(yōu)化器

2. 深度學(xué)習(xí)損失函數(shù)

3. PyTorch

4. 開源機(jī)器學(xué)習(xí)庫

5. 圖像處理模型

本文由 @Damon 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載

題圖來自Unsplash,基于CC0協(xié)議

該文觀點(diǎn)僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺僅提供信息存儲空間服務(wù)。

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發(fā)揮!