AI應用實例分析——圖像檢索 | 人人都是產品經理

編輯導語:在人工智慧技術方面,圖像視覺應該是被應用最廣泛的技術之一。本文作者從關鍵技術和產品設計兩大方面,圍繞圖像檢索技術的應用進行了產品介紹,推薦想了解圖像檢索的童鞋看看。

前一節主要跟大家討論了文本糾錯技術的應用,本節將跟大家討論分享關於圖像視覺方面的應用——圖像檢索。

在人工智慧技術應用方面,圖像視覺應該是被應用最廣泛的技術之一,從最早的安防監控,到後面落地最多的人臉識別,都是圖像技術的應用,本文想圍繞圖像檢索技術的應用進行產品介紹。

圖像檢索技術在實際應用中包括了檢索+識別(相似度度量)兩個部分,目前重點應用於泛搜索引擎中,百度搜索、谷歌搜索、淘寶拍立淘等都可以支持通過圖片檢索實現信息查找。

相對於文字搜索而言,圖像檢索更直觀,更易操作,尤其是對於陌生信息的檢索,可以直接通過拍照實現信息的檢索。

一、關鍵技術

圖像檢索包括了基於文本的圖像檢索和基於內容的圖像檢索。基於文本的圖像檢索主要通過對圖像進行文本描述,提煉關鍵詞等標籤信息,後續在進行檢索時,可以通過檢索關鍵詞的方式查找對應的圖片,這種方式跟用百度查找「胡歌」返回胡歌的照片是一致的;

基於內容的圖像檢索是通過提取圖像的紋理、顏色、梯度或者其他高層語義特徵等作為圖像特徵來計算圖像間的相似度,實現圖像檢索。

1. 基於文本的圖像檢索

如果需要高查准率,就需要精確的標籤數據,而精確的標籤數據對於人工標註來說是耗時耗力的,甚至有些圖像很難用有限的關鍵詞能描述清楚。目前通常情況下會先基於圖像內容分析進行自動標註,然後只要存儲圖像和文本標籤即可,雖然會降低查准率,但是仍然可以保證文本檢索。

2. 基於內容的圖像檢索

雖然搜索精度不一定如文本搜索,並且容易受到圖像質量(光照、遮擋、背景複雜度等)的影響,但是對用戶而言,搜索難度將降低,可以實現所見即所得,只要拍照出發搜索即可。因此,可應用範圍將更加廣闊。

3. 分散式存儲技術

除了關鍵的演算法技術,還需要跟工程相關的分散式存儲技術,因為在實際工程應用中,涉及到的索引結構需要支持到10億量級的,所以如何構建並存儲圖片的特徵索引信息,需要工程上進行優化(ps:由於過於技術化,筆者也不敢班門弄斧了)。

在實際應用中,基於文本和基於內容的圖像檢索一般是解耦的,產品設計可以選擇兩者並存,或者獨立使用。

比如在電商中,淘寶通過知識圖譜技術構建了大量的商品畫像,所以用戶可以通過文本搜索,同時拍立淘也支持圖像搜商品;而某些識花等小軟體則是單純通過以圖搜圖實現。具體的還是需要產品根據實際應用場景來決定。

本文下面將重點介紹的是基於內容的圖像檢索,其中基於內容的圖像檢索,從產品的輸入角度又可以分為以圖搜、以視頻搜和以音頻搜,列舉出來的話是圖搜圖、圖搜視頻、視頻搜視頻。

二、產品設計

1. 應用場景

(1)目前常見的圖像搜索應用場景有以下幾種:

  1. 拍立淘的電商應用場景,通過拍照識圖,實現快速購物,提高購物體驗。
  2. 視覺中國的圖片庫類的圖片查找應用場景,實現圖片查找應用,和版權鑒定。
  3. 阿里在工業場景中提供的布料紡織品的圖像檢索技術,快速了解布料的供應信息。
  4. 醫療診斷方面,可以通過圖像檢索在醫學影像庫找到相似醫學病灶的案例,從而協助病情的診斷的應用場景。

(2)本文選擇圖片庫類的圖片檢索為應用場景,講述產品設計中的業務流程和需要支持的產品能力,其中圖片庫類的圖片檢索應用場景有以下兩個:

  1. 供稿人上傳圖片,為保證圖片版權,會對供稿人圖片與現有圖片庫進行查重,避免侵權行為。
  2. 用戶查找並下載圖片,為了滿足用戶的圖片需求,一般會進行相似圖片推薦。

2. 檢索技巧

先確定應用場景不僅是為了便於產品設計,也是為了檢索技術的選擇,從圖像檢索的特徵來看一般包括兩種類型:

  1. 相同圖搜索:是指返回與查詢圖片包含相同主體的圖片,一般是完全相同或具備相同主體的圖片,主要適用於重複圖片檢測、圖片精確查找等場景。
  2. 相似圖搜索:是指返回與查詢圖片內容語義相似的圖片,內容語義相似包括在圖片類型、顏色、布局、內容、風格和紋理等特徵方面的相似,主要應用於相似圖片素材搜索、相似圖片推薦等場景;

在圖片庫的圖片檢索應用場景中,這兩個場景都是要支持的,因此相同圖檢索,和相似圖檢索都需要包含的。

但是實際上相似圖的結果通常情況下是包含相同圖的,相同圖是相似圖的一個子集。之所以區分開來,是為了便於產品設計,因為在實際過程中,需要設定一個閾值來決定返回結果,但是如果想讓相似圖都能包含相同圖,則很難指定一個通用的閾值,因此,可以根據實際場景分別調用兩個模型。

3. 產品功能設計

(1)業務流程

產品的核心業務流程主要包括三點:

  1. 歷史圖片入庫,建立圖片庫和圖片特徵索引庫。
  2. 查詢圖片,基於相似圖的特徵提取和檢索引擎在歷史圖片庫中查找相似圖片。
  3. 供稿新圖片,基於相同圖的特徵提取和檢索引擎在歷史圖片庫中查重,若不重複,則允許圖片入庫;若有主體重複的圖片,則提醒供稿人,圖片存在侵權風險,並拒絕入庫。


ps:相同圖和相似圖的特徵提取是不一樣的,這裡為了簡化流程,因此畫在了一起。

(2)產品功能

這裡將列舉描述產品的主要功能,涉及工作因素,無法提供頁面交互功能細節。

  • 圖片底庫管理:用於管理圖片數據,可以根據圖片類型、時間、用途等分類,功能包括:新建底庫、刪除底庫、編輯底庫名稱。
  • 圖片新增:用於在底庫中新增圖片,比如上述的供稿圖片審核通過,就需要調用圖片新增入庫操作,功能包括:單張圖片新增、批量圖片新增。

(注意點:圖片的大小、圖片的解析度、批量上傳的圖片數量等限制條件。)

  • 圖片刪除:用於刪除底庫中過期或者髒的數據,同樣支持單張刪除或者批量刪除。
  • 圖片檢索:用於查詢與上傳圖片相似或者相同的圖片,這裡可以根據實際場景進行設計,增加參數是否做主體識別,如果做主體識別,則調用相同圖檢索;如果不做主體識別,則調用相似圖檢索。
  • 索引庫更新機制:圖片新增或者刪除后,如何更新圖片的特徵索引庫,以新增為例,是在新增后實時更新索引庫還是定時更新,這個需要產品根據場景判斷。一般當底庫較小,且日常併發檢索較小時,可以考慮實時更新;當底庫容量較大,且頻繁發生檢索時,建議可以選擇定時更新,如選取閑時更新。

4. 產品評估

產品設計中,還需要對產品性能進行評估,包括演算法和工程兩個方面:

  1. 演算法側:計算查詢結果top k的精確率和召回率,再根據實際應用場景判斷是保召回還是保精確。
  2. 工程側:計算檢索多併發時的處理速度和存儲資源消耗,力求降低存儲成本並提高檢索響應速度。

三、結論

隨著AI技術和互聯網應用的發展,圖搜這樣的智能化檢索方式將會有更多的落地場景,但是對於產品設計而言,需要根據實際場景結合技術現狀考慮。

比如在推薦場景中,為了更多能留住客戶,在儘可能保證高精確率的情況下,k的上限就會取得較大,這樣就能給用戶更多的返回結果。因此為了能滿足檢索業務的需要,同時提高用戶體驗,就需要產品能多思考實際業務場景。