圖像搜索與識別背后的故事
編輯導讀:有時我們看到身邊的朋友買了一件自己很喜歡的商品,自己也想入手,除了讓他們發(fā)商品鏈接,還有一個方法就是進行圖像搜索。本文作者以拍立淘為例,對大規(guī)模圖像搜索和識別技術(shù)以及在圖像搜索中的應用進行了分析,希望對你有幫助。
2019杭州云棲大會大師零距離大咖有約,由達摩院高級算法專家淵捷帶來以“看圖時代:圖像搜索與識別技術(shù)的迭代”為題的演講。本文以拍立淘為例對大規(guī)模圖像搜索和識別技術(shù)以及在圖像搜索中的應用進行了詳細的描述,另外,還對圖像的實拍圖匹配和海量數(shù)據(jù)這兩大挑戰(zhàn)的解決方案進行了闡述。
以下為精彩視頻內(nèi)容整理:
一、阿里巴巴數(shù)字生態(tài)系統(tǒng)
在阿里巴巴的整個生態(tài)系統(tǒng)中,包括電商、數(shù)字娛樂、物流、本地服務(wù)中,無時無刻都在產(chǎn)生著大量的數(shù)據(jù)。借助阿里云這個大規(guī)模平臺,以及這個平臺上先進的AI相關(guān)技術(shù),可以對這些大數(shù)據(jù)進行一個實時的處理,從而可以不斷的提升商品的價值和用戶的使用形態(tài),以及能夠不斷的創(chuàng)造用戶的價值。
接下來以電商領(lǐng)域中的拍立淘AI產(chǎn)品為例,對看圖時代的圖像搜索與識別技術(shù)的迭代進行分享和介紹。
二、拍立淘
首先介紹一下拍立淘是什么,拍立淘是一項基于深度學習以圖搜圖的圖像系統(tǒng),包括圖像的搜索與識別。拍立淘包含阿里巴巴所有商品的圖像數(shù)據(jù),而且一個商品可能有多個圖像。目前拍立淘可以通過手機打開淘寶,然后點擊右上角攝像的圖標進入。拍立淘每天有2000萬的用戶進行訪問,這些用戶會將他們想要搜索的圖片放到拍立淘進行搜索。
1. 為什么需要圖像搜索
為什么需要圖像搜索呢?由于傳統(tǒng)的搜索都是基于文字進行搜索的,而在電商領(lǐng)域有許多非標準的商品,例如衣服、鞋子、包、掛飾很難通過文字精準的描述出來是什么。比如想要搜索圖中的包,用文字搜索就是輸入“紅色的真皮手提包”,可以看到搜出來的東西和自己想要的并不一樣,總會有很多的差別。但是用以圖搜圖的形式進行搜索的話,就可以精準的描述商品,同樣可以精準的搜索出自己想要的商品。
2. 應用場景
以下是以圖搜圖的幾種比較典型的場景:
場景一:第一個場景是街拍場景,比如說在街上看到別人穿的衣服,想要買同款,就可以拍下來進行搜索購物了。
場景二:第二個場景是網(wǎng)絡(luò)爆款場景,比如說看到微信朋友圈、微博有很多人分享這個商品,如果想要買同樣的商品,就可以通過拍立淘進行搜索和比價。
場景三:第三個場景是海淘場景,當我們在海外時,可能碰到好多不認識的牌子,這樣就可以通過拍立淘進行拍照搜索獲取信息。
3. 拍立淘發(fā)展歷程
拍立淘是從2014年開始上線的,到現(xiàn)在已經(jīng)有五年的歷程了。最開始拍立淘要解決的是識別圖像難的問題。隨著用戶的需求和時間的推進,拍立淘團隊為了能夠不斷的迭代線上的效果,開始不斷的擴大數(shù)據(jù)規(guī)模,以及擴大引擎容量。同時,團隊也不斷地對用戶反饋數(shù)據(jù)和可點擊數(shù)據(jù)進行挖掘,用以提高整個系統(tǒng)的響應速度。
接下來講一下為什么需要對圖像進行識別,對于搜索而言,其實是不能理解用戶傳的圖像是什么,只能找出相近的圖像。但是如果有了識別能力,那么就可以告訴計算機是什么,進而搜索到對應的商品。
4. 拍立淘支持的類目
這是拍立淘的類目,類目包括服飾類、包類、鞋類、裝飾類等等,在淘寶上成交比較多的類目就是服飾類。
5. 拍立淘效果展示
為了比較清晰的展示算法能力,接下來對拍立淘效果展示示例進行詳細介紹。
示例一:示例一是一個連衣裙實例,拍立淘能夠?qū)Σ皇钦媾某龅倪B衣裙圖像進行識別,進而得出連衣裙圖像的類目。
示例二:示例二是一個包的實例,很明顯這個包的圖像是倒著拍的,傳統(tǒng)的算法很難識別出是包,但是基于深度學習的算法就能夠解決這個難題。
示例三:示例三是一個不均勻光照的鞋子圖像,通過算法也可以找到同款。
示例四:在示例四這種情況下,我們并不難找出同款,我們這個有很強的語義信息和表達能力,能夠容易的找到相似的款式。
示例五:示例五是一個海淘的示例,算法能夠比較準確的對帶有標簽的保健品、藥品等商品進行識別。
6. 以圖搜圖流程
接下來講一下拍立淘以圖搜圖的流程,其實對一個搜索而言,都會有一個在線和離線的搜索過程。離線就是把候選的圖像建立一個數(shù)據(jù)庫,然后進行一個入庫和刪除的操作,當一個離線的圖像要進庫時,首先要做一個離線的檢測,因為有可能圖像中既有衣服又有眼鏡,如果檢測到是衣服,那么接著就需要對衣服進行一個特征提取,特征提取會將圖像數(shù)據(jù)轉(zhuǎn)換成一系列的數(shù)字,接著將兩個圖像之間進行一個計算,差值越小,代表兩張圖越相似。
挑戰(zhàn)一:實拍圖匹配
怎么進行實拍圖匹配呢?商品的圖像搜索會有兩種圖片,其中離線的是比較高質(zhì)量的圖像,因為離線的圖像都是模特在攝影棚里用高端的相機拍的,可以看到商家的圖像都是高質(zhì)量精美的圖片。但是用戶所拍的上傳的圖像會出現(xiàn)很多低質(zhì)量的圖片,所以說識別圖像匹配是一個需要解決的關(guān)鍵性問題。
Deep ranking:
為了解決圖像匹配的問題,采用了深度學習中的Deep ranking方法。若想要將一個識別搜索或者其它AI系統(tǒng)做到極致,首先需要大量的數(shù)據(jù),而這些數(shù)據(jù)可以通過用戶的交互行為來獲得。
例如用戶上傳了一個圖像,經(jīng)過系統(tǒng)檢測后系統(tǒng)會反饋給用戶一些圖像,用戶點擊的圖像會比沒點擊的圖像相似度要高,我們就可以拿這個數(shù)據(jù)作為特征訓練的監(jiān)督的信息。接著把用戶上傳的圖像和用戶點擊的一個圖像還有用戶沒有點擊的一個圖像一起傳送到共享CNN網(wǎng)絡(luò)中,然后經(jīng)過多層的特征提取,就可以得到數(shù)據(jù)特征的數(shù)據(jù),這就是所謂的訓練的基本框架。但這個框架有一個致命的問題,因為我們一個樣本涉及到三幅圖,導致計算量是很大的,針對于此,研發(fā)了一種大規(guī)模數(shù)據(jù)分布式訓練。
大數(shù)據(jù)分布式訓練:
在大規(guī)模分布式訓練中,數(shù)據(jù)的運行模式中需要N個機器,每個機器中都含有數(shù)據(jù),每個機器中獨立的數(shù)據(jù)經(jīng)過CNN網(wǎng)絡(luò)的特征提取后,會把所有的特征匯集到一臺總機器上,這樣做的好處就是能夠更多的構(gòu)造副樣本,并且它們之間可以共享,這樣就可以更高效的運用數(shù)據(jù),進而提高運算速度。
虛擬ID:
訓練過程中看不到全部圖像,只能看到局部圖像的問題,因此導致訓練效率比較低的問題。針對這個問題提出了虛擬ID訓練,虛擬ID訓練會給圖像標注一個虛擬label,然后以label作為分類監(jiān)督的信息,接著把CNN網(wǎng)絡(luò)中的響應拿出來進行比較。用戶在點擊商品的兩個圖時,我們會認為這兩個圖像在某種程度上是有一定的相似度。因此,讓手機用戶點擊所有的圖像時形成一個編碼,然后把圖像的label做一個聚類。這個訓練不僅速度比上文中的大數(shù)據(jù)分布式訓練速度提升十倍以上,而且訓練效果能達到90%以上。
挑戰(zhàn)二:海量數(shù)據(jù)
圖像搜索與識別技術(shù)的第二個挑戰(zhàn)就是海量數(shù)據(jù)的挑戰(zhàn),拍立淘有高達30億的圖片,對圖片逐一對比是做不到的,因此需要對這些向量引擎進行聚類操作,聚類操作會產(chǎn)生聚類標碼,若標碼一致就搜索,標碼不一致不搜索。
圖像搜索云產(chǎn)品:
除了拍立淘是手機淘寶的應用,同樣在去年2月份還發(fā)布了圖像搜索的云產(chǎn)品。同時,在海外還有了第一個客戶THE ICONIC,它是一個賣包、鞋子的網(wǎng)站。
紡織圖像搜索:
除了商品搜索,也把圖像搜索擴展到了其它領(lǐng)域,例如紡織圖像搜索。
萬物識別:
圖像搜索并不能讓計算機知道是什么,要想讓計算機知道是什么,就還需要對圖像進行識別,這就需要算法做支撐,在拍立淘上已經(jīng)能夠?qū)?、寵物等進行搜索與識別,也就意味著萬物識別已經(jīng)在路上。
本文由@汪仔5795 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載
題圖來自Unsplash,基于CC0協(xié)議
- 目前還沒評論,等你發(fā)揮!