1. 程式人生 > >喬宇:深度模型讓機器理解場景|VALSE2017之十一

喬宇:深度模型讓機器理解場景|VALSE2017之十一

點選上方“深度學習大講堂”可訂閱哦!

編者按:所謂場景,無論是“萬家燈火”亦或是“巴山夜雨”,於人是一種直觀自然的感受;然而,對於機器而言,再多的溫情脈脈,都也只是計算機世界冰冷的二進位制符號。這區別的背後,其實是人在成長過程中形成的對世界的認知與理解。因此,讓機器學會去準確地理解場景、理解世界,是視覺智慧的一個重要標誌。在本文中,來自中科院的喬宇研究員,將為大家介紹面向大規模場景分類的深度學習模型,通過三部分詳盡的工作介紹,為我們揭開場景分類問題神祕的面紗。大講堂在文末特別提供文中提及所有文章和程式碼的下載連結。

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

計算機視覺領域有幾個基本問題:

  1. 影象中有什麼,即物體的識別和檢測;

  2. 影象是在哪裡拍攝的,即環境的識別,通常將其定義為場景分類問題,這也是今天要講的主題;

  3. 在影象或者視訊中發生著什麼樣的行為和事件,即行為識別問題。

為什麼用深度學習方法?

在過去的五年時間中,深度學習方法極大地推動了計算機視覺技術的發展。在這裡我列出了物體識別、場景分類和行為識別領域三個廣泛使用資料集的效果,其中藍色的柱狀圖表示非深度學習方法的結果,紅色的柱狀圖表示深度學習方法的結果,可以看到在這三個問題中深度學習方法都取得了比傳統方法更好的結果。

另一方面,隨著深度學習自身的發展,其在各個問題上的效能也有非常快速的增長。這也是為什麼在深度學習領域會吸引很多工業界的人士參與,因為當我們的技術好到一定程度時,可以在工業界進行大規模的應用,可以很好地解決實際的問題。

其中最有名的一個例子就是 ImageNet 競賽,其包含100多萬張圖片共1000個類別。這個競賽是由李飛飛在2010年開啟的,可以看到在2010年和2011年的 top-5錯誤率還是相當高的。到了2012年,Hinton 的研究組第一次使用深度卷積神經網路來解決這一問題,將 top-5錯誤率降低到十幾個百分點,之後每年也會有明顯的降低,到2015年其 top-5錯誤率已經達到了3.5%,甚至超越了人類的識別能力。

0?wx_fmt=jpeg

場景識別

影象識別和理解的另一個問題就是場景識別。場景識別和物體識別的確具有很大的相關性,場景中包含的物體對於場景的類別具有很大的影響;但是場景的類別不僅僅取決於物體,它實際上是由各個語義區域及其層級結構和空間佈局決定的。所以場景識別與物體識別既有相關性又有不同點,之後我會講到如何利用這些不同點針對場景識別的特點來設計新的深度模型以提高其識別率。

0?wx_fmt=jpeg

場景識別領域的資料集一覽

很多計算機視覺的問題都是與資料集緊密聯絡的,在過去的十年中場景領域出現了很多資料集,這裡我列出了較為有名的一些資料集。

較早的是2006年的 Scene15,只有幾千張圖片和15個類別,之後其被擴充套件為 MIT Indoor  MIT  Outdoor 這兩個資料集。隨著時間的發展,新的資料集也變得越來越完善,資料量可以達到千萬的級別。可以看到各個大資料集的識別率還不是很高,與物體識別如ImageNet的識別率相比還存在著比較大的差距。從這個意義上講,場景識別要比物體識別更難,其識別率還有很大的提升空間。

0?wx_fmt=jpeg

Place2 Scene Dataset

現在用的比較多的場景識別資料集是 Place,由麻省理工學院的研究組創立,並且在2015年和2016年都舉行了相應的競賽,我們團隊也參加這些競賽,並取得了較好的名次。這個資料庫含有365個類別,但是每個類別具有的圖片數目相差很大,共800多萬張訓練圖片和30多萬張測試圖片,其資料規模是大於 ImageNet 資料集的。根據對這個資料集訓練得到的模型,我們發現其與 ImageNet 資料集具有很大的差異,同時也具有很強的互補性。

0?wx_fmt=jpeg 0?wx_fmt=jpeg

場景識別的難點

場景識別的難點在於類內的差異性類間的相似性。比如圖中的“廚房”這個場景就具有很多不同的表現形式,同一個場景中出現的物體會非常多樣,這就是類內的差異性。還有一些非常相似的來自不同類別的場景,比如圖中的“cubicle office”和”office cubicles“卻幾乎無法分辨,這就是類間的相似性。

0?wx_fmt=jpeg

第一部分工作:更好地利用卷積層特徵

我們用深度學習方法在場景識別這個任務上做了一些工作,下面分別介紹。我們發現對於場景分類這個任務而言其卷積層特徵提供了很多有用的資訊,這些卷積層特徵可以看作是很多語義區域的檢測器,提供了很豐富的影象資訊,而且其空間佈局也非常有用。

在我們使用全連線層對其進行處理時這些資訊會丟失,因為卷積層特徵的維度比全連線層的維度高很多。我們希望能更好的使用這些卷積層資訊,所以設計了一種卷積特徵編碼的方法,並將其與全連線特徵進行組合,這樣組合得到的結果在幾乎所有的資料集上都能提升識別效能。

既然卷積層特徵很有用,那麼我們是否能進一步增強卷積特徵呢?在卷積神經網路的訓練中,這些特徵與監督loss函式比較遠,在進行反向傳播時需要經過很多層才能將梯度傳播到這些卷積層中。這有可能會影響卷積特徵的判別能力。為解決這些問題,我們設計了特殊結構使得監督資訊能夠更為直接作用於卷積層,這樣可以進一步提高場景識別的準確率。這是我們在 TIP2017上的一個工作。

0?wx_fmt=jpeg

第二部分工作:使用一個卷積網路直接對影象塊處理

每個卷積特徵都會有一定的感受野對應原圖中的一個影象塊,那麼既然卷積特徵有用,我們能不能直接使用這些影象塊來訓練網路呢?

這就啟發我們做了第二個工作。我們使用一個卷積網路直接對影象塊進行處理,這裡一個問題是如何給定影象塊的標籤。因為場景的類別更加抽象,如果直接賦予影象塊相同的標籤是不合理的。

所以我們使用了一些折中的方法:

  1. 一方面,使用 ImageNet dataset 預訓練的網路來在影象塊上進行訓練;

  2. 另一方面,把場景類別和物體類別使用弱監督方法進行訓練。

  3. 最後,再將這些影象塊得到的特徵編碼後進行組合得到最終的特徵。

0?wx_fmt=jpeg

第三部分工作:改進監督資訊

我們的第三個工作是對監督資訊進行改進。我們發現相同的場景之間的差別非常大,而不同的場景之間也會具有很大的相似性,這些會對深度網路的監督學習產生干擾。但是對於人來說識別場景非常簡單,這是因為人具有很多先驗知識,這些知識體現在對物體的識別上。受到這種啟發,我們將從其他資料集中學習到的知識遷移到場景識別這個任務中,並且得到了很好的實驗結果。我們認為對於知識的使用將會對計算機視覺任務產生很有益的影響。

0?wx_fmt=jpeg 0?wx_fmt=jpeg 0?wx_fmt=jpeg 0?wx_fmt=jpeg

錦囊妙計:影象多尺度變換

除此之外,我們發現多尺度對於場景識別是很重要的。我們對同一張影象的不同尺寸訓練不同的網路,提升影象的多尺度網路之間的互補性,以進一步提高場景識別的準確率。我們在多個數據庫上都取得了最好的結果。

0?wx_fmt=jpeg 0?wx_fmt=jpeg

競賽大舞臺

我們參加了很多場景識別領域的國際競賽,都取得了很好的結果,這也部分驗證所提出方法的有效性。

0?wx_fmt=jpeg

結論

場景分類是一個很具有挑戰性的開放性問題,如果單從識別率看,相比物體分類還具有很大的發展空間。如果想要獲得更好的效能,場景的全域性資訊和區域性資訊都非常重要,如何使用區域性的物體語義區域資訊和對全域性結構進行建模,以及對知識等的運用將是場景識別任務發展的重點。

0?wx_fmt=jpeg 0?wx_fmt=jpeg

文中引用文章的下載連結為: http://pan.baidu.com/s/1i5pBxZZ

致謝:

0?wx_fmt=jpeg

本文主編袁基睿,誠摯感謝志願者楊茹茵、範琦、李珊如對本文進行了細緻的整理工作

0?wx_fmt=png

該文章屬於“深度學習大講堂”原創,如需要轉載,請聯絡 astaryst。

作者資訊:

作者簡介:

0?wx_fmt=jpeg

喬宇,中科院深圳先進技術研究院研究員,整合所所長副所長,博士生導師。入選中國科學院“百人計劃”,深圳市“孔雀計劃”海外高層次人才,廣東省引進創新團隊的核心成員。研究興趣包括計算機視覺、深度學習、機器人等。已在包括IEEE T-PAMI,IJCV,IEEE Trans. on Image Processing,IEEE Trans. on Signal Processing,CVPR,ICCV,ECCV,AAAI等會議和期刊上發表學術論文110餘篇。獲盧嘉錫人才獎。帶領團隊多次在ChaLearn,LSun,THUMOUS,ACTIVITYNet等國際評測中取得第一,獲ImageNet 2016場景分類任務第二名。主持國家重大研究計劃子課題,國家自然科學基金重點、中國科學院國際合作重點,粵港合作,深圳市基金研究“傑青”、日本學術振興會等資助的多個專案。

VALSE是視覺與學習青年學者研討會的縮寫,該研討會致力於為計算機視覺、影象處理、模式識別與機器學習研究領域內的中國青年學者提供一個深層次學術交流的舞臺。2017年4月底,VALSE2017在廈門圓滿落幕,近期大講堂將連續推出VALSE2017特刊。VALSE公眾號為:VALSE,歡迎關注。

0?wx_fmt=jpeg

往期精彩回顧

 0?wx_fmt=jpeg 0?wx_fmt=png 0?wx_fmt=png

歡迎關注我們!

深度學習大講堂是由中科視拓運營的高質量原創內容平臺,邀請學術界、工業界一線專家撰稿,致力於推送人工智慧與深度學習最新技術、產品和活動資訊!

中科視拓(SeetaTech)將秉持“開源開放共發展”的合作思路,為企業客戶提供人臉識別、計算機視覺與機器學習領域“企業研究院式”的技術、人才和知識服務,幫助企業在人工智慧時代獲得可自主迭代和自我學習的人工智慧研發和創新能力。

中科視拓目前正在招聘: 人臉識別演算法研究員,深度學習演算法工程師,GPU研發工程師, C++研發工程師,Python研發工程師,嵌入式視覺研發工程師,運營經理。有興趣可以發郵件至:[email protected],想了解更多可以訪問,www.seetatech.com

0?wx_fmt=jpeg0?wx_fmt=jpeg

中科視拓

0?wx_fmt=jpeg

深度學習大講堂

點選閱讀原文開啟中科視拓官方網站

相關推薦

深度模型機器理解場景|VALSE2017

點選上方“深度學習大講堂”可訂閱哦! 編者按:所謂場景,無論是“萬家燈火”亦或是“巴山夜雨”,於人是一種直觀自然的感受;然而,對於機器而言,再多的溫情脈脈,都也只是計算機世界冰冷的二進位制符號。這區別的背後,其實是人在成長過程中形成的對世界的認知與理解。因此,讓機器學會去準確地理解場景、理解世界,是視覺智

【Java並發編程】線程間通信中notify通知的遺漏(含代碼)

key wait title net fill article 返回 0ms 註意 轉載請註明出處:http://blog.csdn.net/ns_code/article/details/17228213 notify通知的遺漏很容易理解,即threadA還沒

Teaching Machines to Understand Us 機器理解我們 深度學習的歷史

意義 for 不同 ima basic devel media 方向 模型 Deep history 深度學習的歷史 The roots of deep learning reach back further than LeCun’s time at Bell Labs.

Teaching Machines to Understand Us 機器理解我們 三 自然語言學習及深度學習的信仰

boa ping beats pen des pla 遇到 muc net Language learning 自然語言學習 Facebook’s New York office is a three-minute stroll up Broadway from LeCun

機器學習大神邁克爾 · 我討厭將機器學習稱為AI

AI技術年度盛會即將開啟!11月8-9日,來自Google、Amazon、微軟、Facebook、LinkedIn、阿里巴巴、百度、騰訊、美團、京東、小米、位元組跳動、滴滴、商湯、曠視、思必馳、第四正規化、雲知聲等企業的技術大咖將帶來工業界AI應用的最新思維。 如果你是某

城市計算生活更智慧

下面是我自己手動整理的鄭宇在鄭總創客星球主辦節目《未來簡說》演講(2017/9/4),原視訊連結:https://mp.weixin.qq.com/s?__biz=MzAwMTA3MzM4Nw==&mid=2649441664&idx=1&sn=538f9edb962

微軟研究院主管我們決定AI理解幽默

  幽默是人類獨有的特質,在日常生活中扮演著至關重要的作用。心理學家指出幽默在人類認知中發揮重要作用,包括它與學習、解決問題過程的驚人聯絡,以及幽默在社會參與中的重要性(Martin 2010)。幽默是智慧及其自動化研究中的一個頗有前景的領域:我們難以想象一臺計算機可以通過圖靈測試,卻無法理解和產生

【深入Java虛擬機器全面理解Java記憶體模型(JMM)及volatile關鍵字

轉自:https://blog.csdn.net/javazejian/article/details/72772461 關聯文章: 深入理解Java型別資訊(Class物件)與反射機制 深入理解Java列舉型別(enum) 深入理解Java註解型別(@Annotation)

【Java並發編程】深入Java內存模型——happen-before規則及其對DCL的分析(含代碼)

無需 bit 對象引用 說了 final 緩存 機器 通過 round 轉載請註明出處:http://blog.csdn.net/ns_code/article/details/17348313 happen—before規則介紹 Java語言中有一個“先行發生

【Java並發編程】深入Java內存模型—內存操作規則總結

tle 沒有 article 類型 javase 感知 執行引擎 要求 lock 轉載請註明出處:http://blog.csdn.net/ns_code/article/details/17377197 主內存與工作內存 Java內存模型的主要目標是定義程序中

機器學習筆記(二TensorFlow實戰十三(遷移學習)

1 - 引言 越複雜的神經網路,需要的訓練集越大,ImageNet影象分類資料集有120萬標註圖片,所以才能將152層的ResNet的模型訓練到大約96.%的正確率。但是在真正的應用中,很難收集到如此多的標註資料。即使收集到也需要花費大量人力物力來標註。並且即使有了大量的資料集,要訓練一

深入理解Spring系列@Transactional是如何工作的

結合Spring框架,在進行資料庫操作的時候,經常使用@Transactional註解,工作經歷中看到很多開發者使用方式都是錯誤的,沒有深入理解過其原理,這是很危險的!!本篇將深入Spring原始碼,分析@Transactional註解的工作原理。相信,看完你會

何暉光深度學習類腦嗎?”--- 基於視覺資訊編解碼的深度學習類腦機制研究 | VALSE2017

點選上方“深度學習大講堂”可訂閱哦!編者按:深度學習中最經典的卷積神經網路,其命名的初衷,即是向

Tensorflow深度學習基礎影象處理

OpenCV是一個十分強大的視覺庫,tensorflow也提供了十分強大的圖片處理函式,下面是一個簡單的例子來說明使用tensorflow和opencv兩個工具進行深度學習程式的設計。 首先是使用的原始圖片: import tensorflow as

【Java並發編程】第五篇中volatile意外問題的正確分析解答(含代碼)

深入 規則 rup lis con method 執行 change .text 轉載請註明出處:http://blog.csdn.net/ns_code/article/details/17382679 在《Java並發編程學習筆記之五:volatile變量修

【Java並發編程】線程間通信中notifyAll造成的早期通知問題(含代碼)

data light lan 添加項 article util tool 元素 seconds 轉載請註明出處:http://blog.csdn.net/ns_code/article/details/17229601 如果線程在等待時接到通知,但線程等待的條件

【Java並發編程】並發新特性—Executor框架與線程池(含代碼)

接口類 容易 20px 了解 大小 執行c 生命周期 schedule p s Executor框架簡介 在Java 5之後,並發編程引入了一堆新的啟動、調度和管理線程的API。Executor框架便是Java 5中引入的,其內部使用了線程池機制,它在java.

【Java並發編程】使用wait/notify/notifyAll實現線程間通信的幾點重要說明

eight 就會 執行 其中 同步塊 lib public 對象 並發 轉載請註明出處:http://blog.csdn.net/ns_code/article/details/17225469 在Java中,可以通過配合調用Object對象的wait()方法和n

【Java並發編程】圖文講述同步的另一個重要功能內存可見性

integer sdn 技術 訪問 span 另一個 edi int tro 轉載請註明出處:http://blog.csdn.net/ns_code/article/details/17288243 加鎖(synchronized同步)的功能不僅僅局限於互斥

Office 365 系列使用 Windows PowerShell 管理 O365 平臺

命令管理o365 命令管理office 365 正如之前我們說的,通過 O365 管理中心、Exchange 管理中心、Lync 管理中 心 SharePoint 管理中心能做的事情和能夠實現的需求是遠遠滿足不了客戶的時 間需求的。可以使用用於 Windows PowerShell 的 Azu