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




