百度即將發布視覺搜索:看到一只狗,怎么認出它是什么品種
設想這樣一個場景:某天你遇到一只狗,很喜歡卻沒辦法搞清楚是什么品種,怎么才能快速獲得答案?通常這樣的要求可以借助搜索引擎,但在這個場景下,找出正確形容這只狗的核心關鍵詞,似乎成了一種更具難度的挑戰。
然而搜索引擎并未失效,只是需要更換一種輸入方式——變文字為圖像。以多媒體的方式發起搜索,這也正是搜索引擎一貫的演進方向。
幾天前機緣巧合,百度工程師李浩向我展示了尚未在iOS和Android平臺發布的新產品——百度移動視覺搜索。這個技術將在百度移動平臺客戶端上實現:通過手機攝像頭捕捉的圖像,幫用戶找到想要的那本書、那張CD甚至是那只狗。
我的第一反應是,移動視覺搜索和之前的PC端的以圖搜圖,有差么?
我得到的答案是:在選取特征表達方面,這兩個產品沒有根本性的差異;而不同之處體現在數據庫和算法方面。幾年前推出的百度識圖(shitu.baidu.com),只是簡單的尋找相同圖片,實用價值坦白講并不高(最近加強了人臉識別功能)。
而即將應用在手機端的視覺搜索,顯然不想變成一種雞肋。
不同之處首先是縮小了適用范圍。這個產品將通過逐個小類目滲透的方式推進,首先是支持圖書搜索、然后是支持音樂CD……這就是上面提到的數據庫變化。新的方式所要處理的數據規模要小得多,這同時也給算法帶來更多的靈活性。
數據庫越大,對算法的要求就約高。搜索算法主要以兩個緯度衡量:一是效果,二是效率。所謂效果就是準確率和召回率,這兩項關系到搜索質量的好壞;而效率可以理解為單位時間的處理速度,這直接關系到一次查詢所消耗的時間。
實際上更小的數據庫,使得算法效率可以略作犧牲,換取效果的提升。
效果怎么提升?李浩解釋說,一是抽取更多的特征表達,更多特征的好處顯而易見;二是改進索引結構,變一級索引為多級索引,這可以形象的理解為先搜一遍,然后在這個結果上再搜一遍……最后才把結果返回給用戶。
差異大抵如此。
我看到的內部測試版本中,百度移動視覺搜索已經涉及了幾個類目:圖書、音樂CD、娛樂海報、文字識別、翻譯以及開頭提及的:狗。
以iOS平臺為例,正式發布后用戶打開“百度搜索”App,點擊搜索框右側的相機圖標,就能彈出相應的視覺搜索功能菜單。比方想要尋找某一圖書,只需要按照前述過程,對著一本書拍一下,就能獲得這本書的相關信息:包括多個網店的售價。
CD和海報等也是如此。你不必拍全,只拍一部分也能找到想要的結果,甚至斜著拍、倒著拍也不影響搜索結果。這與特征識別的提取有關,機器和人的識別模式顯然不同。產品經理會決定下一步擴展到哪個新的類目。
最容易的擴展方向還是“剛體”。也是說,搜索對象的外型和體積不會輕易發生變化。在這種類目上,就可以啟動機器學習中“非監督”模式,即不需要人工干預、指導機器的學習過程,這種模式顯得又快又輕松。
衣服就是一個剛體反例——很容易發生形變。通過“有監督”的模式,機器能夠學習判斷長袖短袖等衣服類型,然而形變過大必然會影響實際的效果。
其實,開頭提到的狗也是反例。
對于機器怎么在“有監督”模式下學會識別狗,我非常好奇。而過程似乎也比想象中的簡單:不需要人為事先給出狗的特征定義,只需要提供足夠的相關圖片,用以劃上一個大致的識別邊界,機器就會自己找到判定一只狗的方法。
來源:http://tech.sina.com.cn/i/csj/2013-03-22/10488172846.shtml
- 目前還沒評論,等你發揮!