논문 요약: OCR용 Gated Recurrent Convolutional Neural Network

입문


NIPS 2017부터 J.Wang 등의Gated Recurrent Convolutional Neural Network for OCR을 총괄했습니다.
NIPS 2017의 논문 페이지는 여기 있습니다.
http://papers.nips.cc/paper/6637-gated-recurrent-convolution-neural-network-for-ocr
저자의 코드는 여기 있습니다.
https://github.com/Jianfeng1991/GRCNN-for-OCR

개요

  • OCR 임무의 모형
  • RCNN(recurent convolutional neural network)에 게이트를 넣은 GRCNN(Gated RCNN)을 사용했습니다
  • .이 게이트는 RCL(recurrent convolution layer)의context 모듈레이션을 제어하고feed-forward의 정보와recurrent의 정보를 조정합니다
  • 시퀀스 모델은 BLSTM(Bidirectional LSTM)을 사용합니다
  • 이 GRCN+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시gatedrecurrentconvolutionlayer의 설명도는 다음과 같습니다.

    오른쪽의 게이트 부분이 없으면 일반적인 RCNN입니다.
    이 게이트 파트.
    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 게이트와 비슷합니다.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은 한 시간에 애니메이션과 같은 순서의 프레임을 입력하지만 이 구조는 이미지를 각각의 시간 단계에 입력한다.
    또한 다른 시간과 Batch normalization의 매개 변수를 공유하지 않도록 주의해야 한다.

    전체 아키텍처


    체계 구조의 총체도.

    다음 세 단계를 요약합니다.
    1. Feature Sequence Extraction
    2. Sequence Modeling
    3. Transcription

    Feature Sequence Extraction


    여기는 GRCNN을 사용합니다.입력과 동일한 이미지를 내보내고 왼쪽에서 오른쪽으로 슬라이스합니다.GRCN은 다음과 같이 GRCL 단원과 pooling, conv의 조합을 나타낸다.

    Sequence Modeling


    여기서 bidirectional LSTM을 사용합니다.

    peephole 곱하기 $\gamma_i$는 인디케이션 팩터입니다. 0, 1을 가져옵니다.peephole의 효과를 검증하기 위해서다.

    Transcription


    언어 모델에서 흔히 볼 수 있는 CTC(connectionist Temporal Classification)를 사용합니다.

    실험과 결과


    GRCNN의 효과



    GRCNN은 RCNN보다 성능이 좋고, GRCNN에서iteration이 많은 성능이 좋다.

    LSTM에서의 peephole 효과



    peephole이 없으면 성능이 더 좋아요.

    다른 모델과 비교



    대체로 본 모델의 성능이 가장 좋다.
    아래의 두 번째 ResNet-BLSTM는 이 모델의 GRCNN을 ResNet의 20층으로 바꾸는 것이다.이에 비해 GRCNN을 사용하면 성능이 좋습니다.
    겸사겸사 말씀드리지만, 이것은 매우 좋은 시합입니다.
    http://ieeexplore.ieee.org/document/7801919/
    arXiv에는 2015 버전의 논문이 실렸다.
    https://arxiv.org/abs/1507.05717

    읽기 및 실패의 예


    다음 왼쪽은 읽기 성공의 예이고, 오른쪽은 실패의 예이다.

    ARMADA의 예처럼 A와 R이 붙어 있으면 잘 읽을 수 없다.
    블룸 앞에 있는 기호를 O로 읽는 곳이 재미있어요.

    좋은 웹페이지 즐겨찾기