>100 Views
January 15, 18
スライド概要
Deep Learning JP:
http://deeplearning.jp/hacks/
DL輪読会資料
DEEP LEARNING JP [DL Papers] “StyleNet: Generating Attractive Visual Captions with Styles” (CVPR’17) [DLHacks]
実装 • github: https://github.com/kacky24/stylenet • 一通り完了してはいるが,現状出力が微妙・汚いところがあるかも
Topic: 魅力的なキャプション生成
書誌情報 & 選定理由 • “StyleNet: Generating Attractive Visual Captions with Styles”(CVPR’17) • Author – Chuang Gan@IIIS, Tsinghua University – Zhe Gan@Duke University – Xiaodong He, Jianfeng Gao, Li Deng@Microsoft Research Redmond • DL輪読会でグノシー関さんが発表 • 選定理由 – Trelloのリストにあった – 自然言語処理 – 構造シンプルかつ実装が落ちてない?
背景 • image captioning:画像を描写する説明文を生成する – 応用:semantic image search, チャットボットのvisual intelligence, SNSでの動画像のシェア, 障害者の知覚支援, etc – これらのほとんどが画像における事実を描写したもの – スタイルは軽視されており,コントロールする機能を持っていない • スタイルを持った(ユーモアがあるなど)描写はcaptionの表現を豊かにする – 応用:チャットボットのユーザのengagementを増やす, SNSでの写真へのcaption付けを助ける,etc – 画像もより印象的に見せられる
概要 • 画像・動画に異なるスタイルの魅力的なcaptionを生成するモデルの提案 – 画像とスタイルを持ったcaptionのペアを教師データとして使わない初めての試み – seq2seqのマルチタスク学習に影響を受けている • Factored LSTM – text corpusからスタイルの因子を抽出 • データ – 画像・動画と事実を述べたcaptionのペア & スタイルを持ったtext corpus – スタイル:ユーモラスとロマンティック – FlickrStyle10Kというデータセットを作った
LSTMによるcaption生成 Show and Tell [Vinyals 15]
seq2seqのマルチタスク学習 • Multi-task sequence to sequence learning [Luong 15] – seq2seqモデルにおいて, 1. one-to-many (encoder共通でdecoder変える) 2. many-to-one (decoder共通でencoder変える) 3. many-to-many (encoder, decoder共通) でマルチタスク学習を条件を変えて効果を実証 – 2については,image captioningで 学習してからtranslationを学習さ せることで精度が向上
Caption with sentiments • SentiCap: Generating Image Descriptions with Sentiments [Mathews 15] – スタイルの違う (positive or negative) captionを生成 – swiching RNN • 一方が普遍的な言語モデルを学習 • 他方がsentimentalな描写を学習 – 単語1つ1つにどちらのモデルを使うかのラベル • StyleNetに比べてかなりコスト高い
LSTMの構造 Show and Tell [Vinyals 15]
Factored LSTM と分解する
Factored LSTM
Factored LSTM • 入力を変換する重み行列のみを分解する – スタイルに直接影響を及ぼすと考えられる – 残りの重み行列Wは長いスパンの構文的な依存関係をとらえていると考えられる • {U}, {V}, {W}は異なるスタイル間でも共有する – 事実の描写を学習させる • {S}をスタイルごとに取り換える – スタイルファクターを抽出させる – 今回はSF, SR, SH – factual, romantic, humorous
Training StyleNet
Training StyleNet • 2つのタスクを学習させる(seq2seqのマルチタスクのアプローチと近い) – 画像と通常のcaptionのペアを学習 (1) – スタイルを持ったtext corpusでFactored LSTMを言語モデルとして学習 (2) – {S}以外は2つのタスク間で共通 • (1)ではSF、(2)ではSR or SHを用いる • スタイルの抽出に{S}が、一般的な文生成にその他が使われることを期待 • LSTMのinitial state – (1)ではCNNの出力を変換したもの – (2)ではランダムノイズ • 生成時は、対象のスタイルの{S}をセットして画像のベクトルを与える
Flickr Stylized Caption Dataset • FlickrStyle10K dataset – 今回新しく作った – Flickr 30K image caption datasetを元にしている • Amazon Mechanical Turk – とにかく指示の出し方など色々工夫した – Quality control • train data: 7K valid data: 2K test data: 1K
実験設定: pre-proceccing, Metric • CNNのモデルとしてResNet152を用いる(ImageNet datasetで訓練済み) – last pooling layerの出力2048次元を300次元に変換 • Vocabulary – factual captionに2回以上出現した語 – stylized captionsに出現した語全て – one hot ⇒ 300次元にembedding • 評価 – 評価指標 • BLUE, METEOR, ROUGE, CIDEr – AMTでの人手での評価 • SNSで画像をシェアする場合どのcaptionを選ぶか
実験設定: Baselines • Neural Image Caption (NIC) – Show and Tellのモデル • CaptionBot – Microsoftのシステム、巨大なimage-captionペアで学習済み • Multi-task – LSTMのマルチタスク学習 • Fine-tuned – まずimage-captioinペアで学習させ,次にstylized text dataでパラメータ更新
実装の詳細 (StyleNet) • Theanoで実装 • Adamで学習 • batch size – caption model: 64 – language model: 96 • larning rate – caption model: 0.0002 – language model: 0.0005 • LSTMのhidden state、{S}の次元: 512 • パラメータは全て一様分布で初期化 • 1epochごとにタスクを切り替える – 2つのスタイル (humorous, romantic)を同時に学習 ⇒ あまりうまくいかず • 30epochで収束 • 生成にはbeam searchを用いる (size: 5)
実装の詳細 (Baselines) • CaptionBot以外は同じResNetによる特徴ベクトルを用いる • NIC – FlickrStyle10Kのfactual image-captionペアで学習 • Multi-task – Factored LSTMと通常のLSTMを置き換える以外は同じ • Fine-tuned – まずcaption modelをlr=0.0002で学習 (20epoch) – 次にlanguage modelをlr=0.0005で学習 (25epoch)
実験結果
実験結果: 人による評価 • NIC, CaptionBot, StyleNet(R), StyleNet(H)をランダムな順番で提示 ⇒ どれがSNSで画像をシェアする場面を想定し魅力的なcaptionを選択
出力例
Video Captioning • Video Captioningにおける実験も行った – FlickrStyle10KとYoutube2text datasetのvideo-captionペア • Youtube2text – 1970個のyoutube clip – それぞれのclipに約40個のアノテーション • 動画の特徴抽出には3D CNN [Tran 15] を使用 – Sport 1M datasetで訓練済み • LSTMの部分は画像の時と同じ
実験結果 • AMTでの人による評価 – 比較対象: Video (スタンダードなモデル) – video clipと一緒に, Video, StyleNet(R), StyleNet(H) をランダムな順番で提示 • 結果 – 80%以上がStyleNet の方が魅力的
結論 • StyleNetを提案 – 魅力的な異なるcaptionを生成するためのend-to-endのフレームワーク – Factored LSTMとマルチタスク学習により,コーパスからのスタイルの抽出に成功 • 定量的・定性的に魅力的で正確なcaptionを生成できることを示した • FlickeStyle10k datasetの構築 – 公開する予定(まだされてない)