Help us understand the problem. What is going on with this article?

論文まとめ:Gated Recurrent Convolutional Neural Network for OCR

More than 1 year has passed since last update.

はじめに

NIPS2017から、J. Wang らの Gated Recurrent Convolutional Neural Network for OCR をまとめてみた。

NIPS2017の論文ページはこちら。
http://papers.nips.cc/paper/6637-gated-recurrent-convolution-neural-network-for-ocr

著者らのコードはこちら。
https://github.com/Jianfeng1991/GRCNN-for-OCR

概要

  • OCRタスクのモデル
  • RCNN(recurrent convolutional neural network)に gate を加えた GRCNN(Gated RCNN)を用いた
  • この gate はRCL(recurrent convolution layer)における context modulation を制御し、feed-forwardな情報とrecurrentな情報とを調整する。
  • シーケンス・モデルとしてはBLSTM(Bidirectional LSTM)を用いる
  • このGRCNN+BLSTMなモデルで既存の性能を上回った

GRCNNの中身

RCNN

RCNNはこちらの論文
M. Liang, et. al 'Recurrent Convolutional Neural Network for Object Recognition'
https://www.cv-foundation.org/openaccess/content_cvpr_2015/papers/Liang_Recurrent_Convolutional_Neural_2015_CVPR_paper.pdf
などで発表された仕組みで、RecurrentにConvolutionを組み合わせたもの。

前の層からの出力を $u(t)$、前の時刻の隠れ層からの出力を $x(t-1)$ とすると一般的なRNNは

x(t) = \mathcal{F} (u(t), x(t-1), \theta )

ここで $\mathcal{F}$ はReLUなどの非線形な活性化関数、$\theta $ はパラメータ。RCNNの場合は

x(t) = \mathcal{F} ((w^f \ast u(t), w^r \ast x(t-1))

となる。ここで $\ast$ は convolution。重みがフィルタになって convolution するだけ。

GRCNN

T=2の時の gated recurrent convolution layer の模式図は以下。

スクリーンショット 2018-02-12 23.47.10.png

右側の gate な部分がなければ通常の RCNN。

この gate の部分は

G(t) = \begin{cases}
    0 & t=0 \\
    sigmoid(BN(w^f_g \ast u(t)) + BN(w^r_g \ast x(t-1))) & t>0
  \end{cases}

となっていて、LSTMの gate に似ている。BN は batch normalizationで、これが特徴的。

G(t) = \begin{cases}
    ReLU(BN(w^f \ast u(t)) & t=0 \\
    ReLU(BN(w^f \ast u(t)) + BN(BN(w^r \ast x(t-1))\odot G(t))) & t>0
  \end{cases}

$\odot$ はHadamard積。イメージとしてはLSTMのhidden unitに対するgateだけがある形に似ている。ただ、決定的に違うのは、conv-LSTMは動画などのシーケンシャルなフレームを1つずつ1時刻に入力するが、このこの仕組みは1つの画像をそれぞれのタイムステップそれぞれに入力する。

また注意点としては、Batch normalizationのパラメータを別の時刻と共有しないこと。

アーキテクチャ全体

アーキテクチャの全体図。

スクリーンショット 2018-02-13 0.21.57.png

まとめると以下の3ステップ。
1. Feature Sequence Extraction
2. Sequence Modeling
3. Transcription

Feature Sequence Extraction

ここではGRCNNを使う。入力と同じ画像を出力させ、これを左から右にスライスする。GRCNNは以下のようにGRCLユニットとpooling、convの組み合わせ。

スクリーンショット 2018-02-13 0.28.38.png

Sequence Modeling

ここではbidirectionalなLSTMを用いる。

スクリーンショット 2018-02-13 0.36.49.png

peepholeに対してかける $\gamma_i$ は indication factor になっていて0、1をとる。これは peephole の効果を検証するため。

Transcription

ここでは言語モデルにありがちなCTC(connectionist Temporal Classification)を使う。

実験と結果

GRCNNの効果

スクリーンショット 2018-02-13 1.01.01.png

RCNNよりもGRCNNの方が性能いいし、GRCNNの中でもよりiterationが多い方が性能がいい。

LSTM の中のpeephole効果

スクリーンショット 2018-02-13 1.01.05.png

peepholeが無い方が性能がいい。

他のモデルとの比較

スクリーンショット 2018-02-13 1.01.14.png

おおよそ、本モデルが最も性能がいい。

下から2番目の ResNet-BLSTM は、本モデルの GRCNN を ResNetの20層に置き換えたもの。これよりも GRCNN を用いた方が性能がいい。

ちなみにいい勝負をしている Baoguang et al はこちら。
http://ieeexplore.ieee.org/document/7801919/
arXivには2015ヴァージョンの論文が載ってる。
https://arxiv.org/abs/1507.05717

読み取れた例と失敗した例

以下の左が読み取りに成功した例、右が失敗した例。

スクリーンショット 2018-02-13 1.16.47.png

ARMADA の例みたいに AとRがくっついていると、うまく読み取れない。

Bloom の前の記号を O と読み取ったところは面白い。

masataka46
株式会社ウェブファーマー代表。 人工知能の開発。人工知能のコンサルティング。 2006年に株式投資を始め、8年で資産を75倍にする。 情報処理学会、電子情報通信学会、人工知能学会所属。
http://web-farmer.net
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした