搜狗圖片搜索中高質量相關結果挖掘方法

轉載請註明出處 8層會議室-知乎專欄

1. 任務背景

對於圖片搜索任務,最終的展現結果首先需要滿足的是相關性,即「用戶輸入劉德華搜索引擎需要展現包含劉德華的圖片」才算相關。但是相關性卻不是衡量展現結果好壞的唯一標準,例如「一張劉德華帥帥的封面照片遠比一張昏暗的偷拍照」展現效果好,「一張攝影大師拍攝的湖面倒影遠比隨手拍攝一張湖景」要吸引眼球。那麼能夠體現這個指標的一項評價標準即為「圖片美學質量」。在用戶搜索一個query的時候,我們要給用戶優先展現既滿足相關性又具有美學價值的圖片。

圖1 不同美學質量圖片對比

而在每天都會產生的大量日誌中,就包含著豐富的相關性信息和圖片質量信息。就如前面分析的那樣,既相關又美好的圖片更容易吸引用戶的注意,因此會產生更多的點擊、瀏覽行為。由圖2可以看出這兩個query用戶點擊的top圖片相關性和質量都非常好。因此,如何充分利用這些信息獲得更好的排序是值得關注的方向。

圖2 「海邊日出」,「胡歌」點擊top5圖片

但是事實上一定如此么?點擊越高的圖片一定都是好圖片么?在後續流程中我會給大家詳細講這個問題。

2. 融合用戶行為與圖片質量評價的挖掘方法

2.1 數據來源

在圖片搜索中,當用戶搜索一個query的時候,展現給用戶的是由大量縮略圖組成的搜索結果頁,用戶在瀏覽的時候會產生點擊行為,點擊感興趣的縮略圖進入該圖片的大圖頁。大圖頁展現的是原始尺寸的高清圖,同時還具有點擊進入圖片來源頁面、左翻、右翻、分享、下載等入口,用戶可以根據自己的需求進行相關操作。可以看出,圖片搜索所能產生的用戶交互行為要遠遠多於網頁搜索,通過這些用戶交互可以提取大量特徵,用於描述圖片相關性和美學質量信息。

2.2 特徵描述

2.2.1 用戶行為特徵

圖片搜索的用戶行為特徵根據用戶行為發生的節點可以分為搜索結果頁特徵和大圖頁特徵,根據特徵統計level又可以分為query-dependent level, query-independent level, page-level。Query-dependent level即是最常見的以query-picurl為單位進行統計生成特徵;page-level的特徵即則是以query-pageurl為單位進行統計,該特徵一方面可以反映頁面的相關性信息,同時也可以覆蓋更多的未點擊圖片;query-independent 的特徵則是不考慮與輸入query的相關性,可以從圖片質量角度進行評價。下面從query-dependent level對所用到的特徵進行詳細介紹,page-level和query-independent

level特徵的計算方法只是在統計層級上有所不同。

搜索結果頁的特徵主要包括點擊特徵,即點擊率CTR:

CTR= (clicks(picurl,query))/(pv(picurl,query))

大圖頁的特徵主要包括來源頁面點擊率、下載率、分享率以及停留時間特徵。其中來源頁面點擊率:

RP-CTR= (clicks(picurl,query))/(preview page views(picurl,query))

下載率:

DR=(download(picurl,query))/(preview page views(picurl,query))

分享率:

SR=(shares(picurl,query))/(preview page views(picurl,query))

大圖頁停留時間特徵:

在一個session中,我們可以獲取用戶開始瀏覽某張圖片大圖頁的時間(從搜索結果頁點入、從vr展現點入或者通過上一張/下一張按鈕點入),以及結束瀏覽大圖頁的時間(關閉大圖頁或者點擊上一張/下一張按鈕),從而獲得用戶在瀏覽某張圖片大圖頁的時間,即大圖頁停留時間。我們假設越長的停留時間代表用戶對該張圖片越感興趣,也代表這張圖片與query更相關或者有更高的質量。

在獲得大圖頁停留時間之後,就可以由此衍生出一系列特徵,主要包括原始時間特徵,歸一化的時間特徵,二值特徵。

在各個session分別計算之後進行平均獲得最終的大圖頁停留時間特徵。

2.2.2 相關性特徵

相關性特徵在這裡就不一一介紹了,在圖片搜索任務中有大量的query-doc,query-pic相關性特徵,大家可以自行調研相關的文檔論文也比較多。

2.2.3 圖片美學質量特徵

圖片美學質量特徵從圖片本身出發對圖片質量進行評價,由於採用用戶行為特徵進行圖像質量進行評價存在「用戶對質量好的圖片更感興趣」這一假設,因此採用客觀的圖片美學質量評價特徵進行補充可以達到更好的效果。

在經過圖像領域從人工設計特徵到深度學習特徵的發展之後,目前在圖片美學質量評價領域state-of-art的結果毫無疑問也是由神經網路獲得的,將質量評價問題轉化為分類、回歸或者排序問題。在實際應用中,我們採用了模型融合的方法,並充分利用了數據集中的屬性標註提升模型效果。數據集採用了目前圖像美學質量評價領域的公開數據集,其中AVA包括25w張圖片,AADB包含1w張圖片,每張圖片除了整體圖像質量打分外,還有內容有趣、目標突出、光線良好、色調協調、顏色鮮明、淺景深、模糊、三一定律、結構平衡、重複、對稱這11個與圖像美學質量相關的圖片屬性標註。

具體模型結構如下圖:

attribute-adaptive net attribute&content-adaptive net

  • 多屬性標籤加入訓練可以使模型學習到更豐富的信息
  • 加入圖像內容分類信息,針對不同內容的圖像例如人像、風景,學習到不同屬性描述質量好壞的權值

2.3 一些問題與解決方法

講到這裡,特徵就講完了,接下來按常理講一講模型啊實驗結果啊就要結束了。但是事實上沒有這麼簡單,還記得剛開始的時候遺留的問題么?「點擊越高的圖片一定都是好圖片么?」好吧,事實上確實不是這樣的,我們在實驗中發現,通過用戶行為挖掘的數據存在大量雜訊,主要集中在暴力血腥圖、成人圖片、獵奇圖片等。因此,需要在query和圖片兩個層面上對雜訊圖片進行過濾。

首先在query層面,一些query本身的意圖就是黃色的或者暴力的,那麼我們就需要通過query分類的方法將這些query過濾掉。但是通過query分類技術能夠將涉黃、暴力意圖的query都識別出來幾乎是不可能的,所以我們又從圖片分類的角度出發,通過神經網路識別出黃色、暴力圖片,如果某個query下被識別出來的黃色暴力圖超過某個比例,我們就認為這個query具有黃色暴力意圖,直接進行剔除。那麼經過這兩個層面的過濾後,我們終於拿到了乾淨的圖片可以開心的做實驗了。

2.4 實驗

2.4.1 訓練數據

訓練數據採用了人工標註的方法,對4000個query,每個query30張圖片進行了相關性和圖像質量標註。其中相關性標註分為相關、弱相關、不相關三個標籤,圖像質量標註通過標註顏色、構圖、清晰度等指標最終映射為極好、很好、好、一般、不好這5個標籤。在相關性和圖像質量都標註完成之後,再映射到最終的標籤:不相關的圖片都為「不好」,弱相關的圖片都為「一般」,相關的圖片根據圖像質量的不同分別映射到極好、很好、好、一般、不好。

2.4.2 實驗結果

簡單採用lambdamart跑一下實驗結果吧,效果還是很顯著的:

採用近1個月移動端log,經過模型後取打分大於閾值的query-picurl對進入離線庫,輕鬆積累約1000w高質量相關結果~

3. 一點總結

通過實驗證明在圖片搜索中,用戶行為對提升排序效果有很大幫助,但是由於用戶的獵奇心理在部分query下會存在大量雜訊,如何處理這些雜訊是一項重要的任務;此外,由於圖片搜索是一個開放的場景,除了人物、風景、建築等還存在簡筆畫、書法、素材等大量的類別,目前的圖片質量評價模型在這些類別上的表現還是差強人意,如何提高圖像質量評價在開放場景的效果也是下一步需要研究的方向。


推薦閱讀:

數據科學資料整理
數據嗨客 | 第1期:5分鐘包你看懂「機器學習」
互動式文檔簡介
乾貨教程|可能是最方便好用的文字雲工具
什麼水平?使用 R 語言從拉勾網看數據挖掘崗位現狀

TAG:数据挖掘 | 图片搜索 | 用户行为分析 |