基於深度學習的商品檢索技術

2021-01-13 雷鋒網

雷鋒網按:本文作者嚴燦祥,碩士畢業於中科院計算所VIPL課題組。目前就職於百度深度學習研究院。主要從事商品檢索技術的研發。所在的識圖策略組包括商品搜索、相似搜索、相同搜索與圖像猜詞等方向。

摘要

商品檢索是一門綜合了物體檢測、圖像分類以及特徵學習的技術。近期,很多研究者成功地將深度學習方法應用到這個領域。本文對這些方法進行了總結,然後概括地提出了商品特徵學習框架以及垂類數據挖掘方式,最後介紹了商品檢索技術在服裝搭配中的應用。

前言

幾年前,當人們還在感嘆於網頁購物的快速便捷時,各大電商巨頭就「悄悄地」將它們的購物應用推廣到了用戶的手機裡。從那一刻起,用戶購買的習慣也在悄悄地發生著改變:人們不再局限於時間與地點,只要擁有一部聯網的手機,就能輕鬆獲取想要的商品。發展至今,行動裝置的安全、高速等特點越來越獲得人們的認可,也使得移動購物行為變得更加普遍。然而目前PC和Mobile終端中,用戶基本都是通過文本關鍵詞獲取目標商品,這種單一的關鍵詞描述有時很難獲取用戶的真實需求。

為此,電商們也進行了很多改進。其中最有效的一些做法是構建高度結構化的後臺商品資料庫。其目的是能夠通過分析用戶的查詢來推薦一些更加精細粒度、時效性好、熱度高的商品品類,並提供給用戶一個限定了價格、品牌、風格等等的商品候選集合。這種基於文本的由粗到精的推薦方式,能夠很好的幫助用戶定位到具有精細且具體標籤的商品。然而,當用戶需求的商品的周邊信息不明確時,很難通過抽象出有限的關鍵詞來進行檢索。這類商品包括:未知品牌的化妝品,樣式新穎的家具或者時尚流行的服裝等(如圖1)。

圖1:一些難以用關鍵詞描述的商品

所見即所得

對於上述的問題,可以用一句話歸結為:當需求物品難以用文本量化描述時, 給定它的一張圖像,是否有可能推薦給用戶相關的商品? 可以想像這樣的場景: 當你看到一件喜歡的物品,只通過手機拍照將其圖像上傳購物網站,就能獲取實物購買信息。如果商品檢索能做到這樣的「所見即所得」, 必將會給有購物需求的用戶帶來很大的便捷。

「所見」如何才能變成「所得」呢? 在回答這個問題之前, 首先需要了解商品檢索中的難點問題:

商品品類繁多

小到柴米油鹽,大到家具電器, 都可以稱為商品。而且很多商品都包括多級且細緻的分類,例如,家具可分為臥室家具、客廳家具、餐廳家具、書房家具等;服裝的一級品類包括女裝、男裝、內衣、配飾與童裝童鞋等, 女裝又可分為連衣裙、T恤、雪紡衫等; 母嬰中的童車童床類別可分為安全座椅、嬰兒推車、嬰兒床、嬰兒床、墊餐、椅學步車等。由此可見, 好的檢索技術不僅要識別這麼多的商品類別, 並且需要區分每個類別下的不同商品實例; 同時後臺商品資料庫應該具有很高的覆蓋面。

圖2:多種多樣的商品

同款與相似款的混淆

根據多級類目或屬性進行商品劃分的方式,儘管區分了大多數具有精細語義的商品,但在區分同款與相似款上的作用仍然是有限的,即無法確認兩件分為一個類別的商品是相同款。 舉例來說,已知兩個人都穿著白色短袖圓領T恤, 因為姿態、角度、光照等影響,有可能會使得相似款更像同款,或者同款被誤識別為相似款。這就是計算機視覺中經常碰到的類內差異性與類間相似性問題。圖3的例子可以說明這兩個問題。 左側(a)中的上衣是同一款衣服,但由於人體姿態、懸掛方式、手臂遮擋、光線等問題的存在,使得它的顏色以及長度等表觀屬性具有很大的差異性;三款相似的黑色印花連衣裙如(b)所示,它們擁有相似的不規則的印花圖案,以及黑色的底色和A字裙擺;這些特點都讓他們很相似,但從袖型可看出它們非同款。

圖3:同款與相似款服飾圖像

其實,計算機視覺的各個領域都在解決這樣的「所見即所得」難題, 即如何讓機器能夠自動準確的理解圖像內容。隨著深度學習的興起, 包括人臉識別、 圖像分類與物體檢測在內的方向都取得了很多重要的進展, 也為深度學習在商品檢索中的應用奠定了堅實的基礎。

概括的講, 為達到「所見即所得」的目標, 商品檢索技術的框架中需要包含以下三個部分:

(1)  商品主體檢測: 用於自動定位用戶感興趣的商品,去除背景、多主體等因素的影響,也有利於抽取的語義特徵的對齊。

(2)  商品品類識別:通過識別商品的主體的品類, 使得在檢索時可以在商品子數據子庫進行搜索,提升檢索的效果與效率。

(3)  商品特徵表示: 通過學習獲得商品主體的判別性特徵, 使得同款商品距離更近且非同款商品相距更遠; 對光照、姿態、遮擋等變化有一定的魯棒性。

服飾檢索技術回顧

基於拍照的商品檢索問題本質是一個跨域(cross-domain)圖像檢索問題:需要根據用戶輸入的移動拍照圖像,從電商庫中獲取同款或是非常相似的商品圖片列表。這些特點決定了商品檢索是一項綜合性的圖像處理技術——它涉及圖像識別、檢測、特徵學習等各方面的內容。

其中, 服裝垂類檢索是商品檢索中一個重要的問題。因為服裝包含非常多的細品類, 而且存在非常多的視覺變化, 如光照、形變、視角、尺度、背景影響等等。解決服裝檢索的技術能夠很好的被推廣到其他垂類上。當前,很多學者和研究機構都嘗試基於深度學習進行服裝檢索技術的探究與創新。 下文將回顧三篇基於深度學習來解決跨域服裝檢索問題的文章。

Where-to-Buy-It (WTBI)

這篇文章發表於ICCV2015,作者是來自北卡羅來納大學教堂山分校的M. Hadi Kiapour。作者把street-to-shop的服裝檢索場景, 形式化為cross-domain的商品相似度學習問題,並設計了一種用於特定類別的相似度計算的網絡參數學習方式。整個學習流程如圖4所示。

圖4 基於特定類別的度量學習網絡

首先, 利用裙子、外套、上衣、褲子、裙子等五個主要的商品類別的同款標註圖像, 基於cross entropy loss訓練一個通用商品的同款判別模型;然後,對於特定細分類的商品檢索模型學習問題,採用其對應的同款訓練數據進行網絡參數微調,將通用同款模型遷移成特定類別的同款模型。在進行方法驗證時,文中還收集了40萬的電商數據,以及近4萬組的street-to-shop的同款商品數據。實驗表明,通過這種「由粗到細」方式學習到的相似度量網絡,比基於ImageNet訓練的深度特徵有更好的檢索性能。但此文只基於離線CNN特徵學習相似度, 並沒有進行端到端的檢索模型的探索。

Dual Attribute-aware Ranking Network (DARN)

這篇文章發表於ICCV2015,作者是來自新加坡國立大學的Junshi Huang。此文與WTBI方法相比的不同在於:在處理街拍場景(street scenario)與電商場景(shopping scenario)服裝圖像之間的檢索問題時,提出了一種端到端的雙路神經網絡模型(DARN)來學習深度特徵。如圖5所示:其中一路網絡學習街拍場景下的服裝特徵;另一路網絡學習電商場景下的服裝特徵。

圖5:DARN方法的網絡結構

為了提升圖像檢索特徵的判別能力,作者還採用了多種標註數據來監督網絡的學習過程:多標籤的屬性標註與服裝同款ID標註。為此,在設計網絡損失時,同時採用了基於多標籤屬性數據的cross-entropy loss以及服裝同款ID數據的triplet loss。總的來看,網絡的輸出特徵同時隱含了局部語義屬性的判別能力以及全局表觀的區分性, 在檢索效果的提升上具有很好的互補性。

DeepFashion

這篇文章發表於CVPR2016,作者是來自香港中文大學的Ziwei Liu。為了使服飾識別相關的研究更加貼近實際應用場景, 作者收集了一個規模更大且語義標註更全面的服裝數據集DeepFashion;它在圖像數目、類別與屬性數目、同款對、位置標定與數據開放等方面都佔據優勢。其與WTBI和DARN中的資料庫對比如表格1所示。

表格1:DeepFashion與WTBI、DARN中圖像資料庫對比

此文還提出了一種FashionNet, 融合了大類、屬性、服裝ID以及關鍵點四種監督信息來進行服裝特徵學習。它的創新之處是,設計了分別對全局表觀以及局部部件進行特徵學習的網絡;其中的局部網絡結構利用了服裝局部關鍵點對卷積特徵響應圖進行對齊,避免了關鍵點所在部件的變化帶來的影響。整個網絡結構如圖6所示。

圖6:FashionNet網絡

方法總結

複雜體系下的商品類別識別以及檢索問題的解決,不僅在於網絡結構的設計,而且需要多種類型的標註數據來約束整個網絡的訓練;這些數據包括商品位置、商品類別、 商品屬性以及商品同款數據等;由此,檢索結果與查詢圖像才能具有全局表觀相似性與局部語義一致性。當然,對於如何結合這些監督數據進行學習仍有待進一步探索,是否端到端網絡的性能一定優於分段學習網絡也猶未可知。與傳統方法相比,此類深層神經網絡模型在進行商品檢索特徵學習時並沒有脫離一般圖像檢索的特徵學習框架: 不僅需要在前端進行語義對齊,也需要在後端提升特徵判別性。總的來說, 以上深度學習方法的探索與創新, 都將為商品檢索技術趨於實用化打下紮實的基礎。

特徵學習框架

儘管以上的論文主要在探究服裝類商品的檢索技術, 但這些方法在其他的商品垂類上也是適用的。如圖7所示,這些方法可概括成一套特徵學習框架。圖中三個部分的意義分別是:

(1) 商品圖像預處理。商品有剛體(如鞋子、箱包、化妝品等)與非剛體(如男裝、女裝、童裝等)之分, 姿態、形變、尺寸等差異很大; 因此,需要採用一定的語義對齊方式使得模型對這些變化魯棒,常見操作有商品檢測框對齊、旋轉對齊、局部關鍵點對齊等。

(2) 全局表觀與局部語義特徵融合。將一個商品圖像映射為一個特徵的方法有很多;為了使得到的特徵具有很好的判別性,多種語義監督信息被用於引導模型的學習。以服裝垂類為例,最終的特徵不僅需要區分語義(如服裝的袖長、 領型、 扣型等),也需要能衡量表觀的相似性(如顏色、紋理等) 因此,這類監督數據的收集也是整個特徵學習框架的重要組成。

(3) 特徵降維。特徵的學習是一個精益求精的過程,維度低且判別性好的特徵才能保證檢索的性能與效率。用於降維學習的數據一般是商品同款數據;常用的降維方式有線性判別分析(LDA)、圖像分類與度量學習等。

圖7:商品垂類特徵學習框架

垂類數據挖掘

基於這套框架,特徵學習就可以依靠大量的標註數據來完成。如何來獲取標註數據呢? 簡單粗暴的全量數據標註會非常耗時耗力。 這裡針對同款數據與類別數據分別給出了數據挖掘的方法, 如圖8所示。

(a)同款數據挖掘。基於已有的檢索特徵模型以及大類屬性分類模型,可以將網際網路數據按照類別預測結果進行劃分,並根據子類進行單獨的聚類。對於每個cluster,根據一些準則(如特徵數目、平均距離、距離方差等)來判定噪聲並進行篩選;最後通過人工標註的方式進一步切分每一個cluster來獲取同款的商品。

(b)類別數據挖掘。首先,通過爬蟲抓取以及人工構造的方式,可以獲得大量的關鍵詞集合;並將它們進行多詞組合的方式在圖像搜尋引擎獲取top-K的檢索結果,放入類別圖像候選集合;之後,基於已有的大類屬性模型,對候選集進行提純,去除低質量以及語義錯誤的圖像。

圖8:同款與類別數據挖掘

技術應用

本節介紹一種新商品檢索技術應用方向: 服裝搭配。服裝搭配是指根據用戶給定的一件衣服單品,推薦出能夠與之搭配的時尚款式。它的應用場景包括時尚資訊推薦、電商導購等。由於服飾品類繁多、穿著標準各異, 如何定義並獲取時尚的款式以及給用戶個性化推薦搭配方案,都面臨很大的挑戰。下文將圍繞這兩個問題,介紹一種基於商品檢索技術的服飾搭配方法。

定義時尚款式

「工欲善其事必先利其器」。在服飾搭配過程中,構建時尚款式的資料庫是非常必要的。然而,時尚是一種比較感性的認識, 且人們對於時尚的理解各不相同,「時尚款式」的定義是沒有一個統一的量化標準的。下圖給出了一些時尚圖像的例子, 可以看出,圖像中服裝的時尚取決於很多方面: 服裝樣式、髮型、 鞋子、 拍照場景、 身材等等。

圖9:時尚庫中的四款搭配

為了解決這個難題,數據來源選自多個頂級時尚網站。這些網站往往通過時尚達人編輯的方式來推薦出時尚圖片,確保了服裝的時尚性與新穎性; 除此之後,從視覺上影響圖像時尚程度的因素還有很多,如背景灰暗、T臺秀、非全身圖、身材差、解析度低等; 基於這類數據訓練低質圖片過濾模型,就能獲取最終的高質時尚庫。

服裝搭配技術

簡單講,服飾搭配就是一種通過用戶上衣(下裝),推薦時尚下裝(上衣)的技術。這裡根據優化目標的不同將現有方法分為兩大類: 基於上下衣度量學習的方法以及基於相似服飾檢索的方法。前者的實現基於不同服裝部件的度量學習: 適合搭配的上下裝距離應該儘量的近,而不適合搭配的則要儘量的遠。後者假定時尚庫的圖像擁有優質的搭配, 將用戶服裝單品輸入時尚服裝資料庫的檢索引擎, 獲得語義與表觀相似的時尚推薦結果。

圖10:服飾搭配。上排:灰色短袖T恤;下排:黑色七分闊腿褲

總結與展望

本文回顧了基於深度學習的服裝檢索技術,並且基於這些方法,概括出一套通用的商品特徵學習框架。針對不同種類商品圖像的採集,給出了基於圖像搜尋引擎的數據挖掘方法。後續仍有待進一步探究的方向包括多品類商品檢索技術、基於大規模同款數據的特徵學習以及全自動數據挖掘方法等。

雷鋒網註:本文由深度學習大講堂授權雷鋒網(公眾號:雷鋒網)發布,如需轉載請註明作者和出處,不得刪減內容。

雷鋒網原創文章,未經授權禁止轉載。詳情見轉載須知。

相關焦點

  • 基於深度學習的商品檢索技術在服裝搭配中的應用
    隨著深度學習的興起, 包括人臉識別、 圖像分類與物體檢測在內的方向都取得了很多重要的進展, 也為深度學習在商品檢索中的應用奠定了堅實的基礎。概括的講, 為達到「所見即所得」的目標, 商品檢索技術的框架中需要包含以下三個部分:(1) 商品主體檢測: 用於自動定位用戶感興趣的商品,去除背景、多主體等因素的影響,也有利於抽取的語義特徵的對齊。
  • 基於深度學習的學術搜尋引擎
    在此之前不久,基於深度學習的Semantic Scholar免費學術搜尋引擎的問世,也為科研工作者們搜索和篩選學術文獻資源帶來了新的體驗。[方法/過程]在介紹人工智慧、機器學習和深度學習之間關係的基礎上,介紹了Semantic Scholar的檢索功能,重點就該引擎基於系統在理解文獻內容基礎上的學術影響力評價功能作了分析,並將Semantic Scholar與現行主流學術搜尋引擎Google Scholar、Microsoft Academic、必應學術和百度學術進行比較研究。
  • 基於大數據與深度學習的自然語言對話
    實現這些自然語言對話系統的基本技術可以分為兩大類,基於規則的和基於數據的。你也許想知道對話系統的基本原理是怎樣的?特別是如何用數據驅動的方式構建一個對話系統?最近基於數據的自然語言對話技術取得了突破性的進展。我們發現,利用深度學習和大數據,可以很容易地構建一個單輪對話系統,自動生成對話,並且取得驚人的好效果。
  • CCKS 2020「基於標題的大規模商品實體檢索」競賽冠軍,DeepBlueAI...
    原創 Synced 機器之心機器之心發布作者:羅志鵬(深蘭北京 AI 研發中心)這篇文章介紹了 DeepBlueAI 團隊在第十四屆全國知識圖譜與語義計算大會(CCKS 2020)中「基於標題的大規模商品實體檢索
  • 基於深度學習的人臉識別技術全解
    作為最早投入深度學習技術研發的華人團隊,在多年布局的關鍵技術基礎之上,香港中文大學教授湯曉鷗率領的團隊迅速取得技術突破。2012 年國際計算視覺與模式識別會議(CVPR)上僅有的兩篇深度學習文章均出自湯曉鷗實驗室,而在 2013 年國際計算機視覺大會(ICCV)上全球學者共發表的 8 篇深度學習領域的文章中,有 6 篇出自湯曉鷗實驗室。
  • 實踐入門NLP:基於深度學習的自然語言處理
    特別是最近兩年,基於深度學習的自然語言處理逐漸取得了一定進展,在人機對話、問答系統、語言翻譯等方向的應用也一直是自然語言處理中的熱門話題,而這些應用的實現,基本依賴於底層技術和模型的進步,再加上自然語言處理領域也算是一個多學科交叉的行業,自然語言處理的未來發展對於很多相關學科和方向都具有深遠的影響力。
  • 京東高級算法工程師34頁PPT詳解基於分布式向量檢索系統Vearch的大...
    在本次講解中,邸志惠老師從大規模圖像檢索任務所面臨的挑戰入手,詳細解析了Vearch的原理,最後通過三個案例展示Vearch如何在實踐場景中助力深度學習應用落地。3、Vearch在深度學習場景中的實踐大規模圖像檢索任務所面臨的挑戰隨著深度學習技術的快速發展,它的相關應用也滲透到了我們生活的方方面面。
  • 基於深度學習的圖像超解析度技術
    近年來,目睹了使用深度學習技術的圖像超解析度的顯著進步。文中將現有的使用深度學習方法解決圖像超解析度問題的研究工作主要分成三個部分:1.supervised SR(有監督學習的圖像超解析度)2.unsupervised SR(無監督學習的圖像超解析度)3.domain-specific SR (特定應用領域的圖像超解析度)
  • 向量檢索的應用
    作者: 侯宇,業務架構師 在深度學習的浪潮下,無論是文本、語音、圖像、時間序列還是消費者特徵,都可以用一組形如 [0.6, 0.3, 0.7,......0.19] 的實數來表徵。這一組實數被稱為特徵向量。
  • Milvus 實戰 | 基於 Milvus 的食譜檢索系統
    跨模態檢索是指用一種類型的數據去查詢另一種不同類型的數據。處理跨模態檢索問題通過把不同模態的數據映射到同一高維向量空間進行比較來完成檢索任務。跨模態檢索有著豐富的應用場景,如使用圖像與文本檢索監控視頻,電商網站搜索商品等問題。本文將介紹如何使用 Milvus 實現一個通過食物圖片查詢相應食譜的跨模態檢索系統。
  • 基於深度學習的語義分割技術講解
    基於深度學習的語義分割方法:用卷積神經網絡分類(全卷積網絡),與普通網絡不同的是,分類層是卷積層,普通網絡為全連接層。最近的語義分割架構一般都用卷積神經網絡(CNN)為每個像素分配一個初始類別標籤。卷積層可以有效地捕捉圖像中的局部特徵,並以層級的方式將許多這樣的模塊嵌套在一起,這樣 CNN 就可以試著提取更大的結構了。
  • 基於TensorFlow的深度學習實戰
    前面的模型只有w和b兩個變量,如果數據處於非線性關係就難以得到很好的結果,因此我們建議使用深層神經網絡,這也是TensorFlow設計重點就要解決的深度學習模型。Google在2014年憑藉Inception模型贏下了ImageNet全球競賽,裡面代碼就是基於TensorFlow實現的,下面是較為複雜的模型定義代碼。
  • AI醫療開創性研究:深度學習進行病變檢索和匹配(31 PPT)
    :在不同的大規模病變資料庫中,重要放射學圖像發現的關係學習和組織),主要作者是閆柯和王瀟崧等研究人員。雖然每個大醫院都存了上百萬甚至上千萬的病人數據,但是目前沒有很好的辦法來做相似性病人的檢索。這篇文章的意義是以腫瘤圖像(tumor image instance)為例子,打通了一個做這個方向的技術模型。該模型可以允許一個新的腫瘤圖像在以前上萬的腫瘤圖像中檢索相似的、而且又比較完整的tumor similarity graph,這對臨床工作有很大的幫助。
  • 基於深度學習的超解析度圖像技術一覽
    關注 極市平臺 公眾號 ,回復 加群,立刻申請入群~作者:黃浴,奇點汽車美研中心首席科學家兼總裁https://zhuanlan.zhihu.com/p/76820438本文已獲作者授權,未經允許,不得二次轉載近年來,使用深度學習技術的圖像超解析度(
  • 怎麼給海量商品設計推薦系統?阿里蓋坤團隊提出深層樹結構檢索模型
    基於樹搜索的深度推薦模型在這樣的背景下,蓋坤團隊希望通過新的匹配和推薦技術解開計算複雜度的枷鎖,允許在大規模語料庫上自由地使用各種模型。在論文中他們提出了新的基於樹搜索的深度推薦模型(tree-baseddeep recommendation model,TDM)。
  • 讀書總結|深度學習圖像識別技術
    深度學習圖像識別技術——基於TenseorFlow Object Detection API和Open VINO工具套件
  • 深度重建:基於深度學習的圖像重建
    本文主要介紹了我們課題組的深度重建工作。從結果可以看出,基於深度學習的CT圖像重建方法在圖像質量上要優於傳統的重建算法。因此,在未來,深度學習和醫學圖像重建的聯繫將會越來越緊密。在今後的工作中,我們也會致力於推進深度學習和CT圖像領域的結合,引入深度學習發展的最新技術,將基於深度學習的方法引入臨床應用上,並且嘗試解決其他的醫學圖像問題,加快醫學圖像領域的發展進程。
  • 解密美圖大規模多媒體數據檢索技術 DeepHash
    雷鋒網AI科技評論按,本文為美圖雲視覺技術部門哈希項目團隊向AI科技評論提供的獨家稿件,未經許可不得轉載。
  • 超全深度學習細粒度圖像分析:項目、綜述、教程一網打盡
    由於深度學習的蓬勃發展,近年來應用了深度學習的 FGIA 取得了顯著的進步。本文系統地對基於深度學習的 FGIA 技術進行了綜述。具體來說,本文將針對 FGIA 技術的研究分為三大類:細粒度圖像識別、細粒度圖像檢索和細粒度圖像生成。本文還討論了其他 FGIA 的重要問題,比如公開可用的基準數據集及其在相關領域的特定應用。本文在結尾處強調了未來仍需進一步探討的幾個方向以及待解決的問題。
  • 基於深度學習的圖像識別進展
    :1.1深度學習特別適合處理大數據從統計和計算的角度看,深度學習特別適合處理大數據。前面所述深度學習的三大優勢,在最近圖像識別的進展中體現得淋漓精緻:1)模型結構越來越複雜, 訓練數據規模也不斷增加;2)各種關於數據結構的先驗知識被體現到新的模型結構中;3)端到端學習讓我們越來越摒棄基於人工規則的中間步驟。