【記事更新】私のブックマーク「視覚と自然言語の融合研究(Integrating Vision and Language)」


私のブックマーク

視覚と自然言語の融合研究(Integrating Vision and Language)

牛久祥孝(東京大学)

はじめに

視覚(もう少し具体的にいえば画像や動画など)を対象とした研究と、自然言語を対象とした研究は、それぞれComputer VisionおよびNatural Language Processingの領域において、お互い少しずつ影響しあいながら発展を遂げてきた。特に近年、深層学習の一種であるConvolutional Neural Network (CNN)やRecurrecnt Neural Network (RNN)といった共通の機械学習手法が台頭し、それぞれの領域への参入障壁が低くなった。結果として、視覚と自然言語を融合する研究が様々な広がりを見せつつある。(深層学習によって、はじめてこれらの研究が可能になった、というわけではないことに注意されたい。)このブックマークでは、画像と自然言語の融合という括りの中で、具体的に以下の研究分野を紹介する。

  • 画像からのキャプション生成
  • 動画からのキャプション生成
  • 画像も含めた質問応答システム
  • キャプションからの画像生成
  • 画像を伴う言語横断検索・キャプション翻訳

まずはそれぞれの分野について、「主要な論文」、「概要がわかるチュートリアル・サーベイ論文・コンペティション」を挙げる。サーベイ論文などが存在しない場合であっても、コンペティションの結果発表に用いられた資料が手法の概要や精度の理解に役立つ場合がある。あわせて入力⇒出力の概要図も掲載するが、これはあくまで本ブックマークの為に作成したイメージ図である。

次に、こうした分野で用いられるデータセットやツールについて紹介する。また最後に、関連会議と国内の主要研究グループについても触れる。論文を紹介する際に会議名のみを挙げているものは、この関連会議のセクションで扱っているものである。国内の主要研究グループについては、私の見分しうる中から、独断と偏見が入ったセレクションをおこなっている可能性があることをご容赦願いたい。

画像からのキャプション生成

入力した画像の内容を自然な文として記述する問題である。画像の主要な内容を、平均10単語程度の英語キャプションとして生成するのがオーソドックスな問題設定となっている。(イメージ画像は日本語キャプション。)

image_captioning

主要な論文
Every Picture Tells a Story: Generating Sentences from Images
Farhadiらによる2010年の論文。入力画像のみからキャプションを生成する手法の研究としては世界初のもの。便宜上生成と言っているが、基本的にはデータベース内のキャプションで一番最適なものを丸ごと再利用するアプローチをとっている。
Show and Tell: A Neural Image Caption Generator
GoogleのVinyalsらによる、CNN+RNNを用いたキャプション生成手法。実際には、この研究より前から深層学習によるキャプション生成が提案されている。発表されたのは2015年のCVPRであるが、この年のCVPRではCNNとRNNを組み合わせたキャプション生成が複数の研究機関から同時に提案されている。
チュートリアル・サーベイ論文・コンペティション
Automatic description generation from images: A survey of models, datasets, and evaluation measures
サーベイ論文。いろいろと漏れと誤りもあるが、キャプション生成のサーベイ論文としては一番網羅性が高い。
画像キャプションの自動生成
このブックマークの著者自身の資料で恐縮ではあるが、国内会議である「画像の理解・認識シンポジウム(MIRU)」のチュートリアルでも用いた資料なので、チュートリアル資料ということでご容赦願いたい。画像キャプション生成の歴史的な経緯から、キャプション生成の評価方法、このブックマークで紹介するような視覚と自然言語の融合研究までを広く紹介している。
COCO Captioning Challenge
これはチュートリアルやサーベイ論文ではないが、2015年のCVPRでワークショップとして開かれた国際コンペティションである。Microsoftが、自身の公開しているMS COCOという画像キャプションデータセットによる画像キャプション生成精度を競わせたものである。ここで優勝したのが上にあるShow and Tellを提案したGoogleのチームであり、次点がMicrosoft Researchのチームであった。なお、人間が人手で付与したキャプションはGoogleのチームの2倍の精度をたたき出した。画像の主要な物体を識別する問題については、100万枚の画像を学習して1000種類の物体を識別・識別するImageNet Large Scale Visual Recognition Challenge (ILSVRC)が主なコンペティションとなっているが、ここでは人間自身のエラー率(5%程度)より低いエラー率でしのぎを削っており、対して画像キャプション生成には精度的にまだまだ改善の余地があることを示唆している。優勝したGoogleのチームによるキャプション生成結果も公開されているが、しばしばリンクが切れているので注意されたい。

動画からのキャプション生成

入力した動画の内容を自然な文として記述する問題である。画像キャプション生成が静止画1枚に対してキャプションを生成するのに対して、動画キャプション生成では(データセットにもよるが)10秒前後のclipと呼ばれる短い動画単位に対してキャプションを生成する。

video_captioninig

主要な論文
Grounded Language Learning from Video Described with Sentences
YuとSiskindによる論文で、動画とその動画を説明する文のみから、言語と動画内の物体とのグラウンディングを学習し、新規動画にもキャプションを生成できる。対称物体が4種類と少なく、かなりコントロールされた小規模データセットでの実験ではあるが、2013年のACLでベストペーパーに選ばれている黎明期の論文である。
Long-Term Recurrent Convolutional Networks for Visual Recognition and Description
Donahueらによる論文で、先ほど画像キャプション生成として紹介したGoogleの論文と同じく2015年のCVPRで発表された。画像のキャプション生成にも動画のキャプション生成にも取り組んだ論文で、CNN+RNNを用いている。RNNによるニューラル統計翻訳(NMT: Neural Machine Translation)はつい最近Googleの日英翻訳にも採用されて話題となったが、基本的には日本語(単語の系列データ)を英語(単語の系列データ)に変換するものである。なので、CNNによって動画フレームからの特徴量抽出を、RNNによって動画(フレーム画像の系列データ)を言語(単語の系列データ)に翻訳するのも自然な流れである。
チュートリアル・サーベイ論文・コンペティション
Microsoft Multimedia Challenge – Video to Language Challenge
残念ながら、私の知る限りにおいて体系だった動画キャプション生成の資料は日本語でも英語でも存在していない。ここでは、国際コンペティションとして開かれたMicrosoft Multimedia Challengeについて紹介する。ACM Multimediaでは、本会議中にMultimedia Grand Challengeというコンペティションが開かれ、世界中の企業からの提案課題に世界中の研究機関がトライし、その結果をプレゼンして賞を競う。北京のMicrosoft Research Asiaが2016年にオーガナイズしたのが本チャレンジで、後述するMSR-VTTという大規模動画キャプションデータセットによる動画キャプション生成精度を競った。やや専門的ではあるが、Leaderboardを参照すれば今の最先端の手法の精度を知ることもできる。

画像を含めた質問応答システム

質問応答システム(QA: Question Answering)として今一番話題なのはIBMのWatsonであろう。言語のみで入力された問いに答えるのがQAシステムなのに対し、画像を含めた質問応答システム(VQA: Visual Question Answering)は、お題となる画像が存在していて、その画像に関連した問題に答える。

visual_question_answering

主要な論文
A Multi-World Approach to Question Answering about Real-World Scenes based on Uncertain Input
MalinowskiとFritzによる論文で、画像を含めたQAシステムを初めて提案している。2014年のNIPSで発表されたものであり、いかにこの問題が新しいものかが分かる。
VQA: Visual Question Answering
AntolらによるICCV 2015で発表された研究で、ここで収集・公開されたデータセットが現在もっとも多く用いられるベンチマークとなっている。この流れに合わせて、問題名もVisual Question Answeringという名前に定着してきた。
チュートリアル・サーベイ論文・コンペティション
Visual Question Answering: A Survey of Methods and Datasets
Visual Question Answering: Datasets, Algorithms, and Future Challenges
執筆時ではまだarXivにしか上がっていないが、VQAに関してはサーベイ論文が2本出ている。どちらも実際にVQAを研究しているグループによるもので、とくに後者を手掛けたAnton van den Hengelの研究室は、画像キャプションの自動生成に関しても精力的に研究を進めている。
VQA Challenge
CVPR 2015のワークショップとして開催された国際コンペティションで、実画像部門とアニメ画像部門それぞれのVQA正答率を競った。

キャプションからの画像生成

10単語前後のキャプションを入力して、それにふさわしい画像を出力する。

image_generation

広義でのキャプション生成が「既存キャプションの再利用」と「新規キャプションの生成」のどちらをも含んでいることのアナロジーを考えると、画像生成でも「既存画像の再利用」と「新規画像の生成」両方があり得る。入力画像を既存キャプションで説明する手法の多くは、そのまま入力キャプションにふさわしい既存画像を検索する手法としても使える。実際、既存キャプションによる画像キャプション生成のなかでも初期の論文から、入力文にふさわしい画像が検索できたかどうかを評価している。(リンク先文献表3参照)

主要な論文

ここでは特に新規画像の生成について紹介する。予め、新規のキャプション/画像を生成する難しさについて粗く比較してみたい。キャプションであれば、10万の語彙で10単語の文を書くとして、活用などを全く考えなければ10^50通りの文が考えられる。画像であれば、Web上での視聴に耐えうる程度の解像度として320×240ピクセルのカラー画像を生成するとして、RGBの各画素が256段階とすれば大体10^555,000の画像が考えられる。単語の選択をひとつ誤るのと画素値の値をひとつ間違えるのが等価とは考えにくいが、画像の方が探索空間がより巨大であることについては賛同を得られるのではないだろうか。

Text to 3D Scene Generation with Rich Lexical Grounding
ChangらによるIJCNLP 2015の論文で、3次元の物体モデルを組み合わせて文から画像を生成している。モデルを用いる利点は、上述のような巨大な探索空間を小さくし得る点にある。キャプションからの画像生成にモデルを用いる研究は、このブックマークの筆者が所属する研究室でもいくつか試みている
Generating Images from Captions with Attention
MansimovらによるICLR 2016の論文で、世界で初めて入力キャプションに対応する画像をピクセルレベルで新規生成しようとした研究である。RNNによってキャプション解析と画像生成モジュールが別々にデザインされており、ニューラル機械翻訳のように一度入力文を特徴量ベクトルにエンコードしてからデコードする流れになっている。文生成のデコード時は単語が1つずつ増えていくのに対して、この論文ではデコードを進めるにつれて最初はぼやけた画像が徐々にシャープになるように画像が上塗りされていくような過程をたどっている。
Generative Adversarial Text to Image Synthesis
ReedらによるICML 2016の論文で、敵対的生成ネットワーク(GAN: Generative Adversarial Network)の深層畳み込みバージョン(DCGAN)を用いてキャプションからの画像生成を試みている。DCGANでは、乱数から画像を生成するGeneratorと、既存の実画像とシステムが生成した画像とを見分けようとするDiscriminatorがお互いに勝とうとする学習(敵対的学習)を行う。Discriminatorをうまく騙せるようになったGeneratorは、解像度の高い画像を生成できるようになっている。この研究ではGeneratorに入力する乱数と、Discriminatorが真贋を見分ける特徴量に入力キャプションの特徴量が統合されており、生成する画像をキャプションによってコントロールしようとしている。
チュートリアル・サーベイ論文・コンペティション

既存画像の再利用という意味であれば、画像キャプション生成のサーベイなどが役に立つ。しかしながら、入力文から新規画像を生成する研究は極めて少ない。パーツレベルでの新規画像生成については、アニメ調の画像と割り切ったパーツで生成するならともかく、実画像の切り貼りで実画像に見えるような画像を再構成するのは別の難しさをはらんでいる。キャプションから実画像をピクセルレベルで生成するものは上記の論文のみであり、上手く生成できているように見えるのは「花もしくは鳥のみの画像を1万枚ほど集めて、その説明文をキャプションとして添えたデータセット」のみで学習させた場合などである。一般的な画像を生成させるにはより一層のブレークスルーが必要な状況にあり、このブックマークで紹介する各研究分野の中でもかなり難しい問題といえる。

画像を伴う言語横断検索・キャプション翻訳

IBMモデルやフレーズに基づく統計的機械翻訳、そして近年のニューラル機械翻訳と、翻訳技術はいくつもの深化を経て発展してきた。その中で一部の研究者から提案されているのが、画像を伴う言語横断検索やキャプション翻訳である。通常の翻訳では自然言語のみを入力するのに対して、これらの分野では画像と文のペアを入力として翻訳を進める。

caption_translation

画像を伴って翻訳をする意義の簡単な例は、Images as Context in Statistical Machine Translationに見ることができる。これはワークショップにて提案されたコンセプトであり、手法の実装が伴っているものではないが、ある英葡翻訳の例を挙げている。英語で”seal”と書かれている場合、貼り付ける「シール」以外にも「アシカやアザラシ」を指している可能性がある。文だけでなく画像も入力されれば、このような曖昧さが解消されると期待される。

主要な論文
Image-Mediated Learning for Zero-Shot Cross-Lingual Document Retrieval
舟木と中山によるEMNLP 2015の論文である。英語キャプションと画像のデータセット、日本語キャプションと画像のデータセットが独立して存在するとし、日英対訳コーパスと組み合わせて3変量版の一般化正準相関分析を適用している。すると入力文から画像特徴量に対応するベクトルを推定し、対となっている語のキャプションがついている画像をこのベクトルから検索できる。
Multimodal Pivots for Image Caption Translation
HitschlerらによるACL 2016の論文で、より多くの英独キャプションつき画像データセットを構築し、画像を介した英独翻訳を提案している。
チュートリアル・サーベイ論文・コンペティション
Shared Task: Multimodal Machine Translation
残念ながら、画像を伴う言語横断型検索や翻訳についてのチュートリアルやサーベイ論文についてもまだ存在していない。そこで、例によって、最近開催されたコンペティションを紹介する。自然言語処理の国際学会で毎年開催されてきたワークショップにWorkshop on Statistical Machine Translation (WMT)というものがあるが、2016年から一つの国際会議として開催されるようになった。この中のMultimodal Machine Translationにおいて、Multimodal Machine Translationと題してこのタスクが課され、世界中の参加者が翻訳の精度を競った。

データセットやツール

データセット

まずデータセットについては、On Available Datasets for Empirical Methods in Vision & Languageというページが役に立つ。このページでは、画像キャプションや動画キャプションのデータセット、VQAのデータセットなどが網羅的に紹介されている。このページはEMNLP 2015で発表されたデータセットのサーベイ論文に基づいたものである。そこでこのセクションではまず、同ページでも扱われているが非常に有名なデータセットを2つ紹介する。次に、この論文の発表後に公開されたデータセットの中から興味深いもの2つを紹介する。

Microsoft COCO
画像からの物体認識、領域分割、そしてキャプション生成のために作成されたデータセット。計30万超の画像からなるが、画像キャプションデータセットとしては半分の16万枚ほどの画像と、それぞれに5文ずつついたキャプションを用いる。もう半分は物体認識やセグメンテーションのためのデータセットであり、ECCV 2016のワークショップとしてコンペティションが開かれている。
VQA Dataset
バージニア大のDevi Parikhの研究室によるもので、その名の通りVQA用に収集されたデータセット。MS COCOの画像20万枚超とアニメ調の画像5万枚について、それぞれ60万と15万の質問文、さらにそれぞれ800万弱と200万弱の回答が付与されている。
Visual Genome
スタンフォード大のLi Fei-Feiの研究室によるもので、画像枚数こそ10万枚程度だが、そこに付与されたラベルの質と量が圧倒的である。画像内の矩形領域それぞれに総計500万超の短いキャプションが付与されていたり、170万のVQAが付与されていたりするほか、画像1枚1枚に多くの情報が付与されている。
MSR-VTT
北京にあるMicrosoft Research Asiaによる動画キャプションデータセットで、これまでのデータセットの中では規模が最大である。2013年のACLベストペーパーをとった動画キャプション生成(上記)では、3~5秒の動画が61本だった。それに対してMSR-VTTは総じて41.2時間の長さの動画1万本に対してキャプションがついており、3年で規模が急激に増えたことがわかる。

紹介したデータセットは、すべて人手でラベル(キャプションやQA)を付与したものである。それ以外の収集方法として、Google検索やFlickr等特定のWebサービスから収集するデータセットも複数存在する。人手でラベルを付与すると、誤りが少ないために学習しやすい。かつこのラベルとシステム出力との差をうまく比較できれば定量評価も自動で計算できるのがメリットである。一方でWebからの自動収集はラベルの信頼性に問題がある反面、容易に大規模なデータセットを収集できるというメリットがある。Webから収集したデータセットについては上記データセットサーベイ論文を参照されたい。

ツール

視覚と言語の統合研究と題して紹介しているものは、いずれも長くてまだ5年ほどの歴史しかもっておらず、デファクトスタンダードとなるようなツールは存在していない。スクリプト言語としてPythonやMATLABが多いとか、深層学習を使う場合が多いのでTensorFlowやTheano、MatConvNet、Chainerといったフレームワークを使うとかという基本的な話はあるが、ここではもっとお試しに近いものをツールとして3つ紹介する。

CaptionBot
Microsoftが提供するCognitive Serviceと呼ばれるAPI群を利用し、Microsoft Researchによる画像キャプション生成をWebサービスとして実装したもの。ブラウザでこのWebページを開き、手元にある画像をアップロードするだけでよい。画像キャプション生成が大体どのようなレベルにあるのかを知るためには、一番手っ取り早い手段だといえる。
Visual QA Demo
上述のVQA Challenge 2016において実画像部門で一番精度が高かった手法を用いた公式デモページ。この手法はのちにEMNLP 2016でも発表されているが、筆頭著者はソニーの福井で、UCバークレーのTrevor Darrellの元で研究されたものである。手元の画像をアップロードし、英語で質問を入力すれば、回答の候補を提示してくれる。より深く知りたい場合は、githubにソースコードも公開されている。
NeuralTalk2
スタンフォード大のAndrej Karpathyによる画像キャプション生成のソースコード。画像キャプション生成のコードをgithubで探すといろいろと見つかるのだが、データの前処理を自前で実装するなどの手間がかからないものは意外と限られる。このソースコードではKarpathy自身のキャプション生成やGoogleのShow and Tellを模したキャプション生成を試せる。先日、ようやくGoogle自身からShown and Tellの公式実装が公開され、Karpathy自身もGoogleの公式実装の方が精度が高いと報告しているが、ユーザからの情報の多さもあいまって、NeuralTalk2のほうがお試しには適しているといえよう。

関連会議

ここでは、上述の視覚と言語の融合研究が発表される主要な国際会議について、それぞれの分野ごとに紹介する。複数の論文が観測される主要会議に絞った結果として、IJCAIやINLGなど、各分野である程度名の知れた会議でも省略されているものがある。

Artificial Intelligence, Machine Learning
AAAI: Conference on Artificial Intelligence
ICLR: International Conference on Learning Representations
ICML: International Conference on Machine Learning
NIPS: Neural Information Processing Systems
Natural Language Processing
ACL: Annual Meeting of the Association for Computational Linguistics
COLING: International Conference on Computational Linguistics
CoNLL: Conference on Natural Language Learning
IJCNLP: International Joint Conference on Natural Language Processing
EMNLP: Conference on Empirical Methods on Natural Language Processing
NAACL: Annual Conference of the North American Chapter of the Association for Computational Linguistics
Computer Vision
BMVC: British Machine Vision Conference
CVPR: Conference on Computer Vision and Pattern Recognition
ECCV: European Conference on Computer Vision
ICCV: International Conference on Computer Vision
ICIP: International Conference on Image Processing
Multimedia
ACM MM: ACM Multimedia
ICME: International Conference on Multimedia and Expo
ICMR: International Conference in Multimedia Retrieval

研究室・研究者・研究プロジェクト

Perception and Language Understanding Group (PLU)(産業技術総合研究所)
非言語な知覚と言語との融合を産学官で試みるグループである。国立情報学研究所の宮尾准教授のもと、各分野の研究者たちが集って「画像/動画理解」「データ言語化」「意味論的構文解析」に取り組んでいる。
岡谷研究室(東北大学)
コンピュータビジョンの研究室であり、主宰の岡谷教授は深層学習分野でも日本を代表する研究者の一人である。服飾画像認識をはじめとした視覚属性認識に従事する山口助教と共同で「画像と言語を用いた質感情報表現のディープラーニング」と題したプロジェクトを進めている。
原田・牛久研究室(東京大学)
原田教授が主宰し、このブックマークの著者も2016年から講師をつとめている。手前味噌で恐縮であるが、2011年に開始した画像キャプション生成をはじめとして、画像を含めた質問応答や動画キャプション生成、入力文からの画像生成など、広範囲にわたる視覚・言語統合の研究を進めている。

なお、PLUに所属する研究者の研究室に関しては、PLUの紹介をもって割愛させていただいている。

おわりに

このブックマークでは、視覚と言語の融合研究について広く紹介した。冒頭でも述べた通り、画像と自然言語それぞれについての先端的な技術がコモディティ化し、お互いに参入障壁が下がっている状況にある。
いずれも研究課題としてはまだまだやりつくされたとは言い難く、画像キャプション生成ですら人間が作成するキャプションには遠く及ばない。(ImageNet上での画像の識別精度や、囲碁のような完全情報ゲーム、クイズのようなオントロジー・質問応答システムでは、それぞれ人間を超えるような性能を発揮しつつあるのは周知のとおりである。)

海外での広がりに比べると、日本でこれらの分野に取り組んだ例や企業/研究室はまだまだ少ない。同時に、こういった技術を産業へ持ち込んだ例というのは寡聞にして存じ上げない。産学それぞれにおいて、新規参入を心よりお待ち申し上げる次第である。