基於深度學習的商品檢索技術在服裝搭配中的應用

2020-12-25 網易科技

摘要

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

前言

幾年前,當人們還在感嘆於網頁購物的快速便捷時,各大電商巨頭就「悄悄地」將它們的購物應用推廣到了用戶的手機裡。從那一刻起,用戶購買的習慣也在悄悄地發生著改變:人們不再局限於時間與地點,只要擁有一部聯網的手機,就能輕鬆獲取想要的商品。發展至今,行動裝置的安全、高速等特點越來越獲得人們的認可,也使得移動購物行為變得更加普遍。然而目前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恤;下排:黑色七分闊腿褲

總結與展望

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

本文來源:雷鋒網 責任編輯:欽曉武_NK2781

相關焦點

  • 基於深度學習的商品檢索技術
    目前就職於百度深度學習研究院。主要從事商品檢索技術的研發。所在的識圖策略組包括商品搜索、相似搜索、相同搜索與圖像猜詞等方向。摘要商品檢索是一門綜合了物體檢測、圖像分類以及特徵學習的技術。近期,很多研究者成功地將深度學習方法應用到這個領域。
  • 向量檢索的應用
    作者: 侯宇,業務架構師 在深度學習的浪潮下,無論是文本、語音、圖像、時間序列還是消費者特徵,都可以用一組形如 [0.6, 0.3, 0.7,......0.19] 的實數來表徵。這一組實數被稱為特徵向量。
  • 實踐入門NLP:基於深度學習的自然語言處理
    特別是最近兩年,基於深度學習的自然語言處理逐漸取得了一定進展,在人機對話、問答系統、語言翻譯等方向的應用也一直是自然語言處理中的熱門話題,而這些應用的實現,基本依賴於底層技術和模型的進步,再加上自然語言處理領域也算是一個多學科交叉的行業,自然語言處理的未來發展對於很多相關學科和方向都具有深遠的影響力。
  • 【推薦】基於MATLAB編程、機器學習、深度學習在圖像處理中的實踐技術應用
    因此,為了幫助廣大科研人員更加系統地學習圖像處理、機器學習和深度學習的基礎理論知識及對應的代碼實現方法,Ai尚研修特舉辦「MATLAB圖像處理與機器學習技術應用培訓班」 培訓班,旨在幫助學員掌握圖像處理的基礎知識,以及經典機器學習算法和最新的深度神經網絡、遷移學習、對抗生成網絡等算法的基本原理及其MATLAB編程實現方法。
  • 基於深度學習的學術搜尋引擎
    在此之前不久,基於深度學習的Semantic Scholar免費學術搜尋引擎的問世,也為科研工作者們搜索和篩選學術文獻資源帶來了新的體驗。[方法/過程]在介紹人工智慧、機器學習和深度學習之間關係的基礎上,介紹了Semantic Scholar的檢索功能,重點就該引擎基於系統在理解文獻內容基礎上的學術影響力評價功能作了分析,並將Semantic Scholar與現行主流學術搜尋引擎Google Scholar、Microsoft Academic、必應學術和百度學術進行比較研究。
  • 在圖像處理中應用深度學習技術
    利用卷積神經網絡(Convolutional Neural Network, CNN) 等深層神經網絡的解決方案,可以逐漸取代基於算法說明的傳統圖像處理工作。儘管圖像預處理、後期處理和信號處理仍採用現有方法進行,但在圖像分類應用中(缺陷、對象以及特徵分類),深度學習變得愈加重要。利用深度學習處理某些任務更簡單,效果更好,甚至某些任務只能用深度學習方法來解決。
  • 基於深度學習的人臉識別技術全解
    自20世紀下半葉,計算機視覺技術逐漸地發展壯大。同時,伴隨著數字圖像相關的軟硬體技術在人們生活中的廣泛使用,數字圖像已經成為當代社會信息來源的重要構成因素,各種圖像處理與分析的需求和應用也不斷促使該技術的革新。計算機視覺技術的應用十分廣泛。數字圖像檢索管理、醫學影像分析、智能安檢、人機互動等領域都有計算機視覺技術的涉足。
  • CCKS 2020「基於標題的大規模商品實體檢索」競賽冠軍,DeepBlueAI...
    原創 Synced 機器之心機器之心發布作者:羅志鵬(深蘭北京 AI 研發中心)這篇文章介紹了 DeepBlueAI 團隊在第十四屆全國知識圖譜與語義計算大會(CCKS 2020)中「基於標題的大規模商品實體檢索
  • WSDM 2019教程—李航、何向南等,深度學習匹配在搜索和推薦中的應用
    【導讀】匹配是搜索和推薦中的關鍵問題,在很多任務中都有著廣泛的應用,比如很多自然語言處理任務(信息檢索,自動問答
  • 基於大數據與深度學習的自然語言對話
    首先指出,自然語言對話將是人們信息訪問的主要手段,信息檢索領域的主要研究範式。之後,定義自然語言對話任務,對相關技術進行分類,列舉主要技術挑戰。接著,詳細介紹如何構建基於數據的對話系統。最後,詳細介紹最新的基於深度學習的對話技術。當中也介紹深度學習在自然語言表示學習中的最新成果。
  • ...從湯曉鷗、王曉剛,最早將深度學習應用於計算機視覺的「先行者」
    作為一位在將深度學習應用到 CV 領域中做出了很多開創性工作的研究者,他的相關工作對於這一細分領域的研究者而言可能並不陌生:最早將深度學習用於行人、人臉分割、與人臉生成,首先提出 CNN 求解 MRF 用於語義分割等。與此同時,他做的人臉關鍵點工作還是多任務深度學習的代表性工作。
  • 技術回顧 ▏深度學習在機器視覺中有哪些典型的應用?
    鑑於DNN 在研究和技術方面的巨大投資,很明顯,DNN 作為首選解決方案的適用範圍,將會繼續迅速擴大。然而,在可預見的未來,許多應用將通過傳統技術(包括其他形式的機器學習)或通過深度學習和傳統算法的組合,來獲得最好的解決方案。接下來,我們就一起了解一下,深度學習在機器視覺中的典型應用。
  • 京東高級算法工程師34頁PPT詳解基於分布式向量檢索系統Vearch的大...
    在本次講解中,邸志惠老師從大規模圖像檢索任務所面臨的挑戰入手,詳細解析了Vearch的原理,最後通過三個案例展示Vearch如何在實踐場景中助力深度學習應用落地。3、Vearch在深度學習場景中的實踐大規模圖像檢索任務所面臨的挑戰隨著深度學習技術的快速發展,它的相關應用也滲透到了我們生活的方方面面。
  • 深度學習中的圖像分割:方法和應用
    基於人工智慧和深度學習方法的現代計算機視覺技術在過去10年裡取得了顯著進展。如今,它被用於圖像分類、人臉識別、圖像中物體的識別、視頻分析和分類以及機器人和自動駕駛車輛的圖像處理等應用上。許多計算機視覺任務需要對圖像進行智能分割,以理解圖像中的內容,並使每個部分的分析更加容易。
  • 基於深度學習的圖像超解析度技術
    繼昨天對微信掃碼中的圖像超解析度技術詳細介紹後,為了讓大家更充分的認識並學習圖像超解析度,今天給大家介紹一篇綜述性文章,作為「圖像超解析度」系列文章的第2篇,本文從problem settings、數據集、performance metrics、SR方法、特定領域應用以結構組件形式等方面總結了圖像超解析度,同時,討論了超分方法的優點與限制、存在的問題和挑戰以及未來的趨勢和發展方向。
  • 【PPT】深度學習技術在醫學影像CAD中的應用
    我今天的演講主題是深度學習技術在醫學影像CAD(Computer Aided Detection and Diagnosis)中的應用,主要從三個角度來分享,首先從直觀角度講述一下深度學習,然後歐洲兩個乳腺方面的例子幫助大家從detail的層面理解深度學習在圖像裡面能起到什麼作用、還有哪些優缺點,最後是我們研究的心得與大家分享一下。
  • 客服機器人中的深度語義技術與應用探索(附視頻+PPT)| 雷鋒網公開課
    但在實際使用中,用戶經常發現,機器人並沒有想像中那麼智能,它能識別文字和語音,但卻「不懂你」。這其中的關鍵便涉及到自然語言處理中的」深度語義技術「。針對這個問題,本期雷鋒網硬創公開課邀請到小i機器人創新中心的研究院陳培華為大家具體講解,在客服機器人領域的深度語義技術和應用探索。嘉賓介紹:
  • 客服機器人中的深度語義技術與應用探索附視頻+PPT|硬創公開課
    雷鋒網「新智造」按:幾年之間,蘋果、微軟、Google、百度、阿里等巨頭都推出了以聊天為形式的機器人,應用在情感陪護、虛擬助理、客服、售後等場景中,同時也有諸多初創公司、投資機構殺入這一行業。但在實際使用中,用戶經常發現,機器人並沒有想像中那麼智能,它能識別文字和語音,但卻「不懂你」。這其中的關鍵便涉及到自然語言處理中的」深度語義技術「。
  • 讀書總結|深度學習圖像識別技術
    2016年,Google子公司DeepMind開發的基於深度神經網絡的人工智慧圍棋程序AlphaGo以4:1戰勝了棋王李世石,以深度學習技術為代表的人工智慧再次火爆全球。2017年,我國發布《新一代人工智慧發展規劃》,拉開了我國從國家層面支持和發展人工智慧產業的序幕。
  • 基於TensorFlow的深度學習實戰
    毫不誇張得說,TensorFlow的流行讓深度學習門檻變得越來越低,只要你有Python和機器學習基礎,入門和使用神經網絡模型變得非常簡單。TensorFlow簡介如前所述,TensorFlow是一個深度學習庫,使用這一框架,可以用來構建和測試深度神經網絡。深度學習讓我們能夠以極高的準確性構建複雜的應用程式。