1. 程式人生 > >VALSE2017系列之七:視覺與語言領域年度進展概述

VALSE2017系列之七:視覺與語言領域年度進展概述

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

編者按:視覺和自然語言處理長期以來是兩個獨立的課題,而深度學習技術的出現建立了計算機視覺和自然語言處理之間的連線,為Image QA及Image Caption帶來了突飛猛進的發展。在本文中,來自微軟亞洲研究院的梅濤研究員將帶領大家回顧視覺與語言領域的研究進展。大講堂在文末特別提供文中提到文章的所有下載連線。

640?wx_fmt=png&wxfrom=5&wx_lazy=1&retryload=1

0?wx_fmt=jpeg

Image/Video Captioning

1. 起源

計算機視覺已經發展了五十多年。在此期間,視覺理解(visual understanding)這一領域取得了長足的進展。為了讓機器像人類一樣能夠“看”懂周圍的世界,計算機視覺研究人員設計了大量的人工特徵去描述一件物體,並且提出了各種模型去識別這些人為設計的特徵。幾年前,當我們談論影象或視訊理解時,我們能做的只是給一幅影象或一段視訊自動打上一些彼此相互獨立的標籤(tag)。而今天,我們已經可以借用深度學習的發展將視覺理解這一基礎任務再往前推進一步,即將單個的標籤變成一段和當前視覺內容相關並且通順連貫的自然語言描述。

視覺和語言(Vision and Language)其實是一個交叉領域。想要建立視覺和自然語言的橋樑,不僅需要理解視覺,也要知道如何對自然語言進行建模。同時,這個橋樑也可以是雙向的,既可以從視覺生成文字(如caption、sentiment、visual question answering等),也可以從文字到視覺(如generation、search)。

最早的一篇做影象語言描述的論文來自於ECCV 2010,此後隨著深度學習在視覺任務中的普及,視覺和語言這一新興領域越來越受到大家的關注,在 CVPR 2015和 CVPR 2016中分別收錄了5篇和7篇相關論文。這個領域因為同時涉及了視覺和語言處理,所以CVPR/ICCV/ACL等視覺和語言處理會議中都收錄了相關的高質量文章。

2. 思路

Image Captioning 的基本思路來源於語言翻譯,其流程大體是先使用 CNN 對圖片進行編碼得到視覺特徵表示,然後使用 RNN 對這個特徵進行解碼來生成影象描述。在提取視覺特徵時,可以使用高階語義特徵和注意力機制等計算機視覺領域常用的方法,也可以直接使用自動編碼器進行處理。

0?wx_fmt=jpeg

Image Captioning with X

Image Captioning方面的工作可以總結為“Image Captioning with X”,其中的 X 可以是 Visual Attention, Visual Attributes, Entity Recognition, Dense Caption 和 Reinforcement Learning等模組。IBM 最近的一篇 CVPR2017文章就在 Image Captioning 任務中使用了增強學習,通過在目標函式中加入 reward optimize function 來實現這一功能。

0?wx_fmt=jpeg

A-LSTM

在微軟亞洲研究院最新的論文中,我們在現有的CNN-LSTM Translation Model(如圖中黑色流程線所示)基礎上使用 Multiple Instance Learning 學習圖片中一些內在的概念,並將這個語義資訊作為 LSTM 的輸入對其進行約束以提升效能(如圖中藍色流程線所示)。

0?wx_fmt=jpeg

Video Captioning VS Image Captioning

Video Captioning 與 Image Captioning 有所不同,當我們要理解視訊時,我們不僅要理解每一幀中的物體,也要理解物體在多幀之間的運動。所以,視訊理解往往比影象理解更為複雜。主要表現為如下幾點:

  • 視訊既可以被視為幀流,亦可以視為trimmed video clip:

    • 被視為幀流的時候,首先將視訊幀作為圖片,最後對其進行池化操作;

    • 對於trimmed video clip的情況,可以使用時域頻域模型來學習視訊中的一些行為。

  • 視訊中還存在音訊流和字元流,都可以作為 Video Captioning 的輸入特徵。例如我們組今年被ACM Multimedia大會接收為ORAL的一篇長文就是設計一個multi-stream LSTM網路對視訊的多個模態綜合處理產生caption。

  • 在Video Captioning中可以使用不同的池化方式,如基於時間軸的均值池化和最大值池化,還可以使用注意力機制,比如Hard-Attention和Soft-Attention,或者使用編解碼的方法對其進行處理。

0?wx_fmt=png

Video Captioning with Attributes

在我們CVPR2017的一個工作中,我們發現,圖片資料集比視訊資料集的數量多,內容和語意資訊更加豐富。所以我們思考了兩個問題:

  • 其一是影象和視訊的內容是否互補,我們能否以多工的形式對 Image captioning 和 Video captioning 這兩個任務同時進行處理;

  • 另外一個問題是如何將 Image Captioning 遷移到 Video Captioning 中,在論文中我們使用兩個MIL模型分別獲取影象和視訊的資訊,並使用Transfer Unit 進行遷移學習

0?wx_fmt=png

微軟研究院 “Video to Language” 挑戰賽

為了更好的促進視覺和語言這一領域的研究,我們在ACM Multimedia 2016和2017舉行了微軟研究院 ”Video to Language” 挑戰賽(http://ms-multimedia-challenge.com/),並且在今年的CVPR大會上舉辦了Vision and Language Workshop。

在“Video to Language“挑戰賽中,Sequence Learning 是競賽中最主流的方法。

  • 其中的一個思路是 CNN-LSTM 框架:先使用 CNN 學習圖片特徵並對其進行不同的處理,最後輸入到 LSTM 中得到最終的結果。

  • 另一個思路是編解碼框架,其優點是LSTM 模組可以在視訊標註上進行端到端的學習。

可以使用不同的方法來提取不同的特徵:

  • 如可以使用 VGG, GoogLeNet和 ResNet 等深度學習框架提取圖片特徵;

  • 使用C3D、 IDT 和 Optical Flow來提取動態特徵;

其他的還有 acoustic features, text features 和 video category 等特徵都有助於 Video Captioning 這一任務。

0?wx_fmt=jpeg

Visual Question Answering

Vision and Language領域中有一個新的問題--Visual Question Answering:給定一張圖片,並對圖片中的內容進行提問,我們希望計算機能根據圖片中的內容對問題給出合理的回答。雖然這個問題有很多人在研究,但是依然不夠成熟,還不能應用到真實場景中。

0?wx_fmt=jpeg

VQA的範例與挑戰

這個問題的處理方法與 Image Captioning相似,如ICCV2015中提出的 baseline 使用的就是 LSTM + Image的框架:

先使用 CNN 學習圖片蘊含的特徵,同時使用 RNN 學習描述問題的句子中包含的特徵,然後將這兩個特徵進行融合,並對使用 Softmax 等方法對其進行處理來得到最終結果。

0?wx_fmt=jpeg

VQA with X

與 Image Captioning 一樣,VQA 中的方法也可以總結為 ”VQA with X”。

當 X 是 visual attention 模組時,這個 visual attention 可以從影象中學習,同時也可以從描述問題的句子中學習,這就是 visual-question co-attention。

我們今年被CVPR 2017接收的一篇論文中還提出了 multi-level attention:即先學習一個初始的 attention,然後通過image 中不同 region 之間的關係以及問題中不同詞素之間的關係來學習 multi-level attention。

0?wx_fmt=jpeg

Stack Attention Network

該方法是先使用CNN學習影象的特徵表示,然後以迭代的方式使用LSTM對問題進行學習,使得注意力逐步集中到問題關注的方面。他們在VQA 網路中加入Stack Attention這個模組之後,準確率可以從53.7%提升到58%。

0?wx_fmt=jpeg

Visual-Question Co-Attention

過程如下:

1. 首先將描述問題的句子分解為單詞;

2. 然後將單詞組合為短語;

3. 最後將短語重新組合為句子;

4. 並通過這三個不同尺度的元素來構建問題的特徵表示。

結果:

這種通過三個不同尺度的Text Attention和Image Attention學習特徵的方法,能逐步將問題的關注點聚集到影象相應區域,最終可以將準確率從58.7%提高到61.8%。

0?wx_fmt=jpeg

Multi-level Attention

Multi-level Attention是在傳統的 Image Attention 框架上,使用 RNN 來學習圖片中不同區域之間的關係,並將準確率提高到了65.4%,是所有公開方法中最好的結果。

寫在最後:

對影象及視訊的理解,從簡單的獨立標籤到連貫的自然語言描述,深度學習只用了幾年的時間。可以說,深度學習這項技術,賦予了計算機對單一維度圖片資料、以及二維視訊資料更強的識別理解能力,在某些方面已逼近人類、甚至超過人類的水平。

近年來,隨著大量的視訊資料庫的開放,如"MSR Video Decription Corpus", "MSR Video to Language (MSR-VTT)",  “ActivityNet”等,為這一領域的學術研究帶來了長足的進步,同時也衍生出了一些新的研究方向,如VQA等。

然而,相較於學術界的進展,在真實的應用場景中,我們仍面臨著技術不夠成熟、魯棒性不足等問題,離真正落地仍有很長的路要走。

今天,深度學習技術為視覺和語言之間搭建了一座橋樑,這將只是一個開始,隨著更多維度資訊的加入(如語音、文字等),計算機將能夠更好地理解這個多維的世界,為人工智慧全方位服務人類提供可能。

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

致謝:

0?wx_fmt=jpeg

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

0?wx_fmt=png

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

作者資訊:

0?wx_fmt=jpeg

梅濤博士,微軟亞洲研究院資深研究員,國際模式識別學會會士,美國計算機協會傑出科學家,中國科技大學和中山大學兼職教授博導。主要研究興趣為多媒體分析、計算機視覺和機器學習,發表論文 100餘篇(h-index 42),先後10次榮獲最佳論文獎,擁有40餘項美國和國際專利(18項授權),其研究成果十餘次被成功轉化到微軟的產品和服務中。他的研究團隊目前致力於視訊和影象的深度理解、分析和應用。他同時擔任 IEEE 和 ACM 多媒體彙刊(IEEE TMM 和 ACM TOMM)以及模式識別(Pattern Recognition)等學術期刊的編委,並且是多個國際多媒體會議(如 ACM Multimedia, IEEE ICME, IEEE MMSP 等)的大會主席和程式委員會主席。他分別於 2001 年和 2006 年在中國科技大學獲學士和博士學位。

主頁:http://research.microsoft.com/en-us/people/tmei/

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=jpeg

0?wx_fmt=jpeg

中科視拓

0?wx_fmt=jpeg

深度學習大講堂

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

相關推薦

VALSE2017系列視覺語言領域年度進展概述

點選上方“深度學習大講堂”可訂閱哦!編者按:視覺和自然語言處理長期以來是兩個獨立的課題,而深度學

Java併發程式設計系列正確終止恢復執行緒

前面提到了stop()、suspend()等方法在終止與恢復執行緒的弊端,那麼問題來了,應該如何正確終止與恢復執行緒呢?這裡可以使用兩種方法:interrupt()方法和使用boolean變數進行控制。 在使用interrupt方法之前,有必要介紹一下中斷以及

MongoDB初探系列MongoDBJava共舞

ever 文件 basic query find man mongodb next() 入學 因為版本號不同,可能API也有所不同。本次學習用的是3.0版本號。 1、使用的mongodb的jdbc驅動版本號為:mongo-java-driver-3.0.0.jar

緩存系列CDN其他層面緩存

級別 spl pecl apache 分布式緩存 -o 真實ip har 分享 緩存系列之二:CDN與其他層面緩存 一:內容分發網絡(Content Delivery Network),通過將服務內容分發至全網加速節點,利用全球調度系統使用戶能夠就近獲取,有效降低訪問延遲,

Office 365 系列安裝 Office 365 ProPlus

office365 安裝office 安裝在線office 在前幾篇文章中已經完成了O365用戶的手動創建和批量導入並分配對應的許可。既然用戶已經具備使用這個服務的許可了,今天我們就一起來看看如何去使用O365,和本地的Office又有何差別,然後介紹使用即點即用技術安裝 Office 3

Exchange 2013系列部署後任務

Exchange AD Windows 到昨天為止,Exchange 的部署基本上就完成了,今天我們來看看部署完成後還需要做一些什麽工作。 一、發送連接器 默認情況下,Exchange 2013是不允許將郵件發送到域外部的,如果想要發送外部郵件,需要建立一個發送連接器。打開ECP管理界面,導航至

skyfans每天一個Liunx命令系列cpuinfo、meminfo

首先宣告:非常抱歉,昨天懶了,沒有更新基本命令的內容,主要原因是一直在看IG的比賽,看完之後3:0的戰績使朋友們高興的出去喝酒了,那看的是真解氣啊。IG算是幫RNG報仇了。但是,從IG整改隊伍的身上,我想RNG也應該多學學某種東西。好廢話不多說,開始正題(我只是

敏捷開發產品管理系列Product Owner團隊

 目的在之前的《Product Servant》一篇中曾經提到,作為產品經理或產品總監,都應該有自己的方式來根據市場和使用者情況來管理產品的走向,其中前者更傾向於具體的功能,而後者則更傾向於市場方向的競爭力;前者要求細節,後者要求高度。那麼,這兩個人到底誰是傳統意義上的Pro

敏捷外包工程系列外包敏捷開發專訪(IIOM獨家專訪)

本文是敏捷外包工程系列的第四篇。(之一,之二,之三,之四)本文是2012年05月初IIOM(國際外包管理學院)的專訪。傳統認為敏捷開發是面向產品研發的,在外包專案裡邊比較難用,因為需求由客戶牽制,而“擁抱變化”極有可能導致專案延期超支,等等。本文提及了敏捷開發對外包專案的幫助

logback系列繼承RollingFileAppender,儲存自定義檔名的日誌

繼承類:package com.hk3t.air.system.log; import ch.qos.logback.classic.spi.ILoggingEvent; import ch.qos

Java併發程式設計系列volatile的記憶體語義

前言 在前面的文章中已經提到過volatile關鍵字的底層實現原理:處理器的LOCK指令會使得其他處理器將快取重新整理到記憶體中(確切說是主存)以及會把其他處理器的快取設定為無效。這裡的記憶體語義則說的是在JMM中的實現,那麼為什麼要理解volatile和鎖在

Java併發程式設計系列 正確終止恢復執行緒

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

JVM系列位元組碼執行

Javap– class檔案反彙編工具– javap –verbose Calcjava 檔案public class Calc {public int calc() {int a = 500;int b = 200;int c = 50;return (a + b) / c

深入理解Tomcat系列詳解URL請求

前言 這裡分析一個實際的請求是如何在Tomcat中被處理的,以及最後是怎麼樣找到要處理的Servlet的?當我們在瀏覽器中輸入http://hostname:port/contextPath/servletPath,前面的hostname與port用於建立tc

算法系列愛因斯坦的思考題(下)

CheckGroupRelation()函式需要根據當前組group的位置進行適當的處理,如果當前組是第一個組或最後一個組,則group的相鄰組只有一個,就是最靠近group的組,其它情況下group的相鄰組都是兩個。CheckGroupRelation()函式的實現如下:

ZooKeeper系列ZooKeeper命令列工具

當啟動 ZooKeeper 服務成功之後,輸入下述命令,連線到 ZooKeeper 服務: zkCli.sh –server 10.77.20.23:2181 連線成功後,系統會輸出 ZooKeeper 的相關環境以及配置資訊,並在螢幕輸出“ Welcome to

算法系列愛因斯坦的思考題(上)

這是一個很有趣的邏輯推理題,傳說是愛因斯坦提出來的,他宣稱世界上只有2%的人能解出這個題目,傳說不一定屬實,但是這個推理題還是很有意思的。題目是這樣的,據說有五個不同顏色的房間排成一排,每個房間裡分別住著一個不同國籍的人,每個人都喝一種特定品牌的飲料,抽一種特定品牌的煙,養

kubernetes系列一些將legacy應用遷移到kubernetes的經驗

一、前言基於kubernetes的應用實際上是微服務在container方向的例項,所以很多微服務的設計原則在kubernetes框架內依然具有參考價值,比如The Twelve Factors。在legacy應用從基於VM的部署向基於kubernetes部署的遷移過程中,需

f2fs 系列page cache相關操作和接口

sub ddr 獲得 有一個 緩存 submit syn 文件 ESS 同ext4 一樣, f2fs 把不需要sync的寫通過page cache的接口落盤。為此,有必要了解f2fs中 page cache相關的接口。 以讀為例: do_read_inode依據inode節

Python貓薦書系列Python入門書籍有哪些?

本文原創並首發於公眾號【Python貓】,未經授權,請勿轉載。 原文地址:https://mp.weixin.qq.com/s/