JP2020119532A - 軍事的目的、ドローンまたはロボットに利用されるために一つ以上の以前のバッチをさらに参照してモバイル装置またはiot装置に適用可能なオンラインバッチ正規化、オンデバイス学習、及び連続学習を遂行する方法と装置、並びにそれを利用したテスト方法及びテスト装置 - Google Patents

軍事的目的、ドローンまたはロボットに利用されるために一つ以上の以前のバッチをさらに参照してモバイル装置またはiot装置に適用可能なオンラインバッチ正規化、オンデバイス学習、及び連続学習を遂行する方法と装置、並びにそれを利用したテスト方法及びテスト装置 Download PDF

Info

Publication number
JP2020119532A
JP2020119532A JP2020001764A JP2020001764A JP2020119532A JP 2020119532 A JP2020119532 A JP 2020119532A JP 2020001764 A JP2020001764 A JP 2020001764A JP 2020001764 A JP2020001764 A JP 2020001764A JP 2020119532 A JP2020119532 A JP 2020119532A
Authority
JP
Japan
Prior art keywords
batch
feature map
learning
kth
test
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2020001764A
Other languages
English (en)
Other versions
JP6916549B2 (ja
Inventor
桂賢 金
Kye-Hyeon Kim
桂賢 金
鎔重 金
Yongjoong Kim
鎔重 金
寅洙 金
Insu Kim
寅洙 金
鶴京 金
Hak-Kyoung Kim
鶴京 金
雲鉉 南
Woonhyun Nam
雲鉉 南
碩▲ふん▼ 夫
Sukhoon Boo
碩▲ふん▼ 夫
明哲 成
Myungchul Sung
明哲 成
東勳 呂
Donghun Yeo
東勳 呂
宇宙 柳
Wooju Ryu
宇宙 柳
泰雄 張
Taiyu Cho
泰雄 張
景中 鄭
Kyungjoong Jeong
景中 鄭
泓模 諸
Hongmo Je
泓模 諸
浩辰 趙
Hojin Cho
浩辰 趙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Stradvision Inc
Original Assignee
Stradvision Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Stradvision Inc filed Critical Stradvision Inc
Publication of JP2020119532A publication Critical patent/JP2020119532A/ja
Application granted granted Critical
Publication of JP6916549B2 publication Critical patent/JP6916549B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • G06F18/2193Validation; Performance evaluation; Active pattern learning techniques based on specific statistical tests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • G06F18/24143Distances to neighbourhood prototypes, e.g. restricted Coulomb energy networks [RCEN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19173Classification techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Image Analysis (AREA)

Abstract

【課題】IOT装置、モバイル装置などに適用可能なオンラインバッチ正規化、オンデバイス学習、及び連続学習のための方法を提供する。【解決手段】コンピューティング装置がコンボリューションレイヤをもって第kバッチを取得させ、第kバッチに含まれた入力イメージにそれぞれコンボリューション演算を適用して第kバッチ用の特徴マップを生成させる段階及びコンピューティング装置がバッチ正規化レイヤをもって、kが1である場合に、第kバッチ用の特徴マップを参照し、kは2からm’までの常数である場合に、以前に生成されていた第1ないし第(k−1)バッチの中から選択された以前バッチの少なくとも一部分に含まれる以前特徴マップ及び第kバッチ用の特徴マップを参照して、第kバッチ用の特徴マップの調整平均及び調整分散を算出させ、第kバッチ用の特徴マップにバッチ正規化演算を適用させる段階と、を含む。【選択図】図2

Description

本発明は、軍事的目的またはドローンやロボットのような他の装置に利用されるために一つ以上の以前のバッチ(Batch)をさらに参照してIOT装置、モバイル装置などに適用可能なオンラインバッチ正規化(Normalization)、オンデバイス(on−device)学習または連続学習(continual learning)する方法に関し、より詳細には、それぞれの入力イメージを含むそれぞれのバッチ(前記バッチは第1バッチないし第mバッチを含む)の特徴値を利用したバッチ正規化を行う前記方法において、(a)CNNのコンボリューションレイヤをもって、(i)第kバッチ(kは1からmまでの整数である)を取得させ、(ii)前記第kバッチに含まれた前記入力イメージにそれぞれコンボリューション演算を適用して第kバッチ用特徴マップを生成させる段階;及び(b)前記CNNのバッチ正規化レイヤをもって、(I)(i)kが1である場合に、前記第kバッチ用特徴マップを参照し、(ii)kは2からmまでの整数である場合に、以前に生成されていた前記第1ないし第(k−1)バッチの中から選択された以前のバッチの少なくとも一部分に含まれる以前の特徴マップ及び前記第kバッチ用特徴マップを参照して、前記第kバッチ用特徴マップの一つ以上の調整平均及び一つ以上の調整分散を算出させ、(II)前記調整平均及び前記調整分散を参照して前記第kバッチ用特徴マップにバッチ正規化演算を適用して調整特徴マップを生成させる段階;を含む方法及びコンピューティング装置、並びにそれを利用したテスト方法及びテスト装置に関する。
ディープコンボリューションニューラルネットワーク(Deep Convolution Neural Networks;Deep CNN)は、ディープラーニング分野で起きた驚くべき発展の核心である。CNNは、文字の認識問題を解決するために90年代にすでに使用されていたが、現在のように広く使用されるようになったのは最近の研究結果の賜物である。このようなディープCNNは、2012年ImageNetイメージ分類コンテストで他の競争相手に勝って優勝を収めた。そして、コンボリューションニューラルネットワークは機械学習(Machine Learning)分野で非常に有用なツールとなった。
一方、バッチ正規化とは、トレーニングイメージを含む各ミニバッチの各チャンネルごとにそれぞれの平均及びそれぞれの分散を利用して特徴マップを正規化する方法である。バッチ正規化は、入力の分布がニューラルネットワーク内の各レイヤごとに異なる内部共変量変化(Internal Covariate Shift)という好ましくない現象を防ぐために利用される。バッチ正規化の長所としては、(i)学習速度の加速化、(ii)ニューラルネットワーク内の全体の重み付け値が均等に学習されること、そして(iii)特徴を増強させることを含む。
従来のバッチ正規化を説明するために、図4を参照することにする。
図4を参照すると、入力イメージを含むm個のバッチが存在するとすれば、従来のバッチ正規化は(i)各コンボリューションブロックのコンボリューションレイヤをもって、第kバッチ(kは1からmまでの整数である)に含まれた入力イメージにコンボリューション演算を適用して第kバッチ用特徴マップを生成させ、(ii)各コンボリューションブロックのバッチ正規化レイヤをもって、第kバッチ用特徴マップの一つ以上の平均及び一つ以上の分散を生成させ、(iii)各コンボリューションブロックのバッチ正規化レイヤをもって、平均及び分散がそれぞれ特定第1値及び特定第2値になるように第kバッチ用特徴マップを正規化させる。すなわち、特定バッチのバッチ正規化は、特定バッチ用特徴マップの平均及び分散のみを利用して遂行される。
各バッチのサイズがあまりに小さく設定されると、それぞれのバッチ用特徴マップの値が正規分布を伴わないであろう。したがって、従来のバッチ正規化の性能は低下し、これは従来のバッチ正規化の決定的な短所である。
本発明は、上述した問題点を解決することを目的とする。
本発明は、第kバッチのサイズが小さくても第1ないし第(k−1)バッチのうち少なくとも一部のバッチに含まれる以前の特徴マップを参照して第kバッチのバッチ正規化が効果的に行われるようにするための方法を提供することを他の目的とする。
本発明は、各バッチに関する情報を参照して、以前のバッチの中からバッチ正規化のために利用される特定の以前のバッチを選択する方法を提供することを他の目的とする。
前記のような本発明の目的を達成し、後述する本発明の特徴的な効果を実現するための本発明の特徴的な構成は以下の通りである。
本発明の一態様によると、それぞれの入力イメージを含むそれぞれのバッチ(Batch)(前記バッチは第1バッチないし第mバッチを含む)の特徴値を利用したバッチ正規化(Normalization)方法において、(a)コンピューティング装置が、CNNのコンボリューションレイヤをもって、(i)第kバッチ(kは1からmまでの整数である)を取得させ、(ii)前記第kバッチに含まれた前記入力イメージにそれぞれコンボリューション演算を適用して第kバッチ用特徴マップを生成させる段階;及び(b)前記コンピューティング装置が、前記CNNのバッチ正規化レイヤをもって、(I)(i)kが1である場合に、前記第kバッチ用特徴マップを参照し、(ii)kは2からmまでの整数である場合に、以前に生成されていた前記第1ないし第(k−1)バッチの中から選択された以前のバッチの少なくとも一部分に含まれる以前の特徴マップ及び前記第kバッチ用特徴マップを参照して、前記第kバッチ用特徴マップの一つ以上の調整平均及び一つ以上の調整分散を算出させ、(II)前記調整平均及び前記調整分散を参照して前記第kバッチ用特徴マップにバッチ正規化演算を適用して調整特徴マップを生成させる段階;を含むバッチ正規化学習方法が提供される。
一実施例において、(c)前記コンピューティング装置が、前記CNNのアクティベーションレイヤ(Activation Layer)をもって、前記調整特徴マップに非線形演算を適用して再調整特徴マップを生成させる段階;をさらに含む。
一実施例において 前記CNNが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第1ないし第nコンボリューションブロックを含み、前記第kバッチが取得されると、前記第1ないし前記第nコンボリューションブロックを通じて前記第kバッチに含まれた前記入力イメージに演算を適用して前記再調整特徴マップが生成され、xが2からnまでの整数であれば、第(x−1)コンボリューションブロックから出力された第(x−1)再調整特徴マップが第xコンボリューションブロックに入力されるようにし、前記第xコンボリューションブロックをもって、第x再調整特徴マップを生成させて前記再調整特徴マップが生成される。
一実施例において、(d)前記コンピューティング装置が、前記CNNの出力レイヤをもって、前記第nコンボリューションブロックから出力された第n再調整特徴マップに出力演算を適用してCNN出力値を生成させる段階;及び(e)前記コンピューティング装置が、ロスレイヤをもってCNN出力値及びそれに対応する原本正解(Ground Truth)を参照してロスを生成させ、前記ロスをバックプロパゲーション(backpropagation)して前記CNNのパラメータを学習させる段階;をさらに含む。
一実施例において、前記バッチ正規化演算は、前記第kバッチ用特徴マップに含まれた値を正規化して前記調整平均及び前記調整分散がそれぞれ第1値及び第2値を有するようにする演算である。
一実施例において、前記(b)段階で、前記バッチ正規化レイヤが、前記第kバッチ用特徴マップの分散を参照して、前記第1ないし前記第(k−1)バッチのうちで前記調整平均及び前記調整分散を生成するために選択される前記以前のバッチの数を決定する。
一実施例において、前記第kバッチ用特徴マップの分散が特定閾値より小さければ、前記バッチ正規化レイヤが(i)前記第kバッチ用特徴マップのみを参照するか、(ii)前記第kバッチ用特徴マップ及び一つ以上の特定以前のバッチ用の特定以前の特徴マップを参照して前記調整平均及び前記調整分散を算出し、前記特定の以前のバッチは、(k−1)個に対する前記特定の以前のバッチの個数の割合が特定の臨界比率以下に決定されるように前記第1ないし前記第(k−1)バッチの中から選択される。
一実施例において、前記(b)段階で、前記バッチ正規化レイヤは前記第kバッチに含まれた前記入力イメージの個数を参照して、(k−1)個に対する特定の以前のバッチの個数の割合を決定し、前記調整平均及び前記調整分散を算出するために利用される前記特定の以前のバッチは前記第1ないし前記第(k−1)バッチの中から選択される。
一実施例において、前記(b)段階で、前記バッチ正規化レイヤは、(i)第1重み付け値が割り当てられた前記第kバッチ用特徴マップ、及び(ii)一つ以上の第2重み付け値が割り当てられた、前記第1ないし前記第(k−1)以前のバッチのうち少なくとも一部のバッチに含まれる前記以前の特徴マップを参照して前記調整平均及び前記調整分散を算出する。
一実施例において、前記(b)段階で、前記バッチ正規化レイヤが、前記第2ないし前記第(k−1)バッチのそれぞれの調整平均及びそれぞれの調整分散が生成される間、それぞれの前記第1ないし前記第(k−1)バッチに対応するそれぞれの前記以前の特徴マップが利用されていた回数を参照して、前記第1ないし前記第(k−1)バッチのうちで前記第kバッチ用特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前のバッチを選択する。
一実施例において、前記(b)段階で、前記バッチ正規化レイヤが、(i)それぞれの前記第1ないし前記第(k−1)バッチに対応する前記以前の特徴マップのそれぞれの平均が第1値を参照して決定される第1特定の範囲内に存在するか否かに関する情報、又は(ii)それぞれの前記第1ないし前記第(k−1)バッチに対応する前記以前の特徴マップのそれぞれの分散が第2値を参照して決定される第2特定の範囲内に存在するか否かに関する情報を参照して、前記第1ないし前記第(k−1)バッチのうちで前記第kバッチ用特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前のバッチを選択する。
一実施例において、前記(b)段階で、前記バッチ正規化レイヤは、前記バッチ正規化演算を前記第kバッチ用特徴マップに適用した後、これに線形演算を適用して前記第kバッチ用調整特徴マップを生成し、前記線形演算は下記の数式により、
調整特徴マップ=γ×AF+β
γはスケーリングパラメータ、βはバイアス(Bias)パラメータであり、AFはバッチ正規化演算が適用された前記第kバッチ用特徴マップを意味する。
本発明の他の態様によると、それぞれのテストイメージを含むそれぞれのバッチ(前記バッチは第1ないし第mバッチを含む)の特徴値を利用したバッチ正規化テスト方法において、(a)(1)学習装置が、CNNのコンボリューションレイヤをもって、(i)第k学習用バッチ(kは1からmまでの整数である)を取得させ、(ii)前記第k学習用バッチに含まれたトレーニングイメージにそれぞれコンボリューション演算を適用して第k学習用バッチ用特徴マップを生成させ、(2)前記学習装置が、前記CNNのバッチ正規化レイヤをもって、(I)(i)kが1である場合に、前記第k学習用バッチ用特徴マップを参照し、(ii)kは2からmまでの整数である場合に、以前に生成されていた前記第1ないし第(k−1)学習用バッチの中から選択された以前の学習用バッチの少なくとも一部分に含まれる以前の学習用特徴マップ及び前記第k学習用バッチ用特徴マップを参照して、前記第k学習用バッチ用特徴マップの一つ以上の学習用調整平均及び一つ以上の学習用調整分散を算出させ、(II)前記学習用調整平均及び前記学習用調整分散を参照して前記第k学習用バッチ用特徴マップにバッチ正規化演算を適用して学習用調整特徴マップを生成させ、(3)前記学習装置が、前記CNNのアクティベーションレイヤをもって前記学習用調整特徴マップに非線形演算を適用して学習用再調整特徴マップを生成させ、前記CNNが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第1ないし第nコンボリューションブロックを含み、前記第k学習用バッチが取得されると、前記第1ないし前記第nコンボリューションブロックを通じて前記第k学習用バッチに含まれた前記トレーニングイメージに演算を適用して前記学習用再調整特徴マップが生成され、xが2からnまでの整数であれば、第(x−1)コンボリューションブロックから出力された第(x−1)学習用再調整特徴マップが第xコンボリューションブロックに入力されるようにし、前記第xコンボリューションブロックをもって、第x学習用再調整特徴マップを生成させて前記学習用再調整特徴マップが生成され、(4)前記学習装置が、前記CNNの出力レイヤをもって前記第nコンボリューションブロックから出力された第n学習用再調整特徴マップに出力演算を適用して学習用CNN出力値を生成させ、(5)前記学習装置が、前記CNNのロスレイヤをもって前記学習用CNN出力値及びそれに対応する原本正解(Ground Truth)を参照してロスを生成させ、前記ロスをバックプロパゲーションして前記CNNのパラメータを学習した状態で、テスト装置が前記CNNの前記コンボリューションレイヤをもって、(i)第kテスト用バッチ(kは1からm’までの整数である)を取得させ、(ii)前記第kテスト用バッチにそれぞれ含まれたテストイメージにコンボリューション演算を適用して第kテスト用バッチ用特徴マップを生成させる段階;(b)前記テスト装置が、前記CNNの前記バッチ正規化レイヤをもって、(I)(i)kが1である場合に、前記第kテスト用バッチ用特徴マップを参照し、(ii)kは2からm’までの整数である場合に、以前に生成されていた前記第1ないし第(k−1)テスト用バッチの中から選択された以前のテスト用バッチの少なくとも一部分に含まれる以前のテスト用特徴マップ及び前記第kテスト用バッチ用特徴マップを参照して、前記第kテスト用バッチ用特徴マップの一つ以上のテスト用調整平均及び一つ以上のテスト用調整分散を算出させ、(II)前記テスト用調整平均及び前記テスト用調整分散を参照して、前記第kテスト用バッチ用特徴マップにバッチ正規化演算を適用してテスト用調整特徴マップを生成させる段階;(c)前記テスト装置が、前記CNNの前記アクティベーションレイヤをもって前記テスト用調整特徴マップに非線形演算を適用してテスト用再調整特徴マップを生成させ、前記CNNが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第1ないし第nコンボリューションブロックを含み、前記第kテスト用バッチが取得されると、前記第1ないし前記第nコンボリューションブロックを通じて前記第kテスト用バッチに含まれた前記テストイメージに演算を適用して前記テスト用再調整特徴マップが生成され、xが2からnまでの整数であれば、第(x−1)コンボリューションブロックから出力された第(x−1)テスト用再調整特徴マップが第xコンボリューションブロックに入力されるようにし、前記第xコンボリューションブロックをもって、第xテスト用再調整特徴マップを生成させて前記テスト用再調整特徴マップが生成される段階;及び(d)前記テスト装置が、前記CNNの前記出力レイヤをもって第nコンボリューションブロックから出力された第nテスト用再調整特徴マップに出力演算を適用してテスト用CNN出力値を生成させる段階;を含むことを特徴とするテスト方法が提供される。
本発明のまた他の態様によると、それぞれの入力イメージを含むそれぞれのバッチ(Batch)(前記バッチは第1バッチないし第mバッチを含む)の特徴値を利用したバッチ正規化コンピューティング装置において、インストラクションを格納する少なくとも一つのメモリと、(1)CNNのコンボリューションレイヤをもって、第kバッチ(kは1からmまでの整数である)に含まれた前記入力イメージにそれぞれコンボリューション演算を適用して第kバッチ用特徴マップを生成させるプロセス、及び(2)前記CNNのバッチ正規化レイヤをもって、(I)(i)kが1である場合に、前記第kバッチ用特徴マップを参照し、(ii)kは2からmまでの整数である場合に、以前に生成されていた前記第1ないし第(k−1)バッチの中から選択された以前のバッチの少なくとも一部分に含まれる以前の特徴マップ及び前記第kバッチ用特徴マップを参照して、前記第kバッチ用特徴マップの一つ以上の調整平均及び一つ以上の調整分散を算出させ、(II)前記調整平均及び前記調整分散を参照して前記第kバッチ用特徴マップにバッチ正規化演算を適用して調整特徴マップを生成させるプロセスを遂行するための前記インストラクションを実行するように構成された少なくとも一つのプロセッサと、を含むことを特徴とするテスト方法が提供される。
一実施例において、前記プロセッサが、(3)前記CNNのアクティベーションレイヤをもって、前記調整特徴マップに非線形演算を適用して再調整特徴マップを生成させるプロセス;をさらに遂行する。
一実施例において、前記CNNが、前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第1ないし第nコンボリューションブロックを含み、前記第kバッチが取得されると、前記第1ないし前記第nコンボリューションブロックを通じて前記第kバッチに含まれた前記入力イメージに演算を適用して前記再調整特徴マップが生成され、xが2からnまでの整数であれば、第(x−1)コンボリューションブロックから出力された第(x−1)再調整特徴マップが第xコンボリューションブロックに入力されるようにし、前記第xコンボリューションブロックをもって、第x再調整特徴マップを生成させて前記再調整特徴マップが生成される。
一実施例において、前記プロセッサが、(4)前記CNNの出力レイヤをもって、前記第nコンボリューションブロックから出力された第n再調整特徴マップに出力演算を適用してCNN出力値を生成させるプロセス;及び(5)ロスレイヤをもって、前記CNN出力値及びそれに対応する原本正解を参照してロスを生成させ、前記ロスをバックプロパゲーションして前記CNNのパラメータを学習させるプロセス;をさらに遂行する。
一実施例において、前記バッチ正規化演算は、前記第kバッチ用特徴マップに含まれた各値を正規化して前記調整平均及び前記調整分散がそれぞれ第1値及び第2値を有するようにする演算である。
一実施例において、前記(2)プロセスで、前記バッチ正規化レイヤが、前記第kバッチ用特徴マップの分散を参照して、前記第1ないし前記第(k−1)バッチのうちで前記調整平均及び前記調整分散を生成するために選択される前記以前のバッチの数を決定する。
一実施例において、前記第kバッチ用特徴マップの分散が特定閾値より小さければ、前記バッチ正規化レイヤが(i)前記第kバッチ用特徴マップのみを参照するか、(ii)前記第kバッチ用特徴マップ及び一つ以上の特定以前のバッチ用の特定以前の特徴マップを参照して前記調整平均及び前記調整分散を算出し、前記特定の以前のバッチは、(k−1)個に対する前記特定の以前のバッチの個数の割合が特定の臨界比率以下に決定されるように前記第1ないし前記第(k−1)バッチの中から選択される。
一実施例において、前記(2)プロセスで、前記バッチ正規化レイヤは、前記第kバッチに含まれた前記入力イメージの個数を参照して、(k−1)個に対する特定の以前のバッチの個数の割合を決定し、前記調整平均及び前記調整分散を算出するために利用される前記特定の以前のバッチは前記第1ないし前記第(k−1)バッチの中から選択される。
一実施例において、前記(2)プロセスで、前記バッチ正規化レイヤは、(i)第1重み付け値が割り当てられた前記第kバッチ用特徴マップ、及び(ii)一つ以上の第2重み付け値が割り当てられた、前記第1ないし前記第(k−1)以前のバッチのうち少なくとも一部のバッチに含まれる前記以前の特徴マップを参照して前記調整平均及び前記調整分散を算出する。
一実施例において、前記(2)プロセスで、前記バッチ正規化レイヤが、前記第2ないし前記第(k−1)バッチのそれぞれの調整平均及びそれぞれの調整分散が生成される間、それぞれの前記第1ないし前記第(k−1)バッチに対応するそれぞれの前記以前の特徴マップが利用されていた回数を参照して、前記第1ないし前記第(k−1)バッチのうちで前記第kバッチ用特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前のバッチを選択する。
一実施例において、前記(2)プロセスで、前記バッチ正規化レイヤが、(i)それぞれの前記第1ないし前記第(k−1)バッチに対応する前記以前の特徴マップのそれぞれの平均が第1値を参照して決定される第1特定の範囲内に存在するか否かに関する情報、又は(ii)それぞれの前記第1ないし前記第(k−1)バッチに対応する前記以前の特徴マップのそれぞれの分散が第2値を参照して決定される第2特定の範囲内に存在するか否かに関する情報を参照して、前記第1ないし前記第(k−1)バッチのうちで前記第kバッチ用特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前のバッチを選択する。
一実施例において、前記(2)プロセスで、前記バッチ正規化レイヤは、前記バッチ正規化演算を前記第kバッチ用特徴マップに適用した後、これに線形演算を適用して前記第kバッチ用調整特徴マップを生成し、前記線形演算は下記の数式により、
調整特徴マップ=γ×AF+β
γはスケーリングパラメータ、βはバイアス(Bias)パラメータであり、AFはバッチ正規化演算が適用された前記第kバッチ用特徴マップを意味する。
本発明のまた他の態様によると、それぞれのテストイメージを含むそれぞれのバッチ(前記バッチは第1ないし第mバッチを含む)の特徴値を利用したバッチ正規化テスト装置において、インストラクションを格納する少なくとも一つのメモリと、(1)学習装置が、CNNのコンボリューションレイヤをもって、(i)第k学習用バッチ(kは1からmまでの整数である)を取得させ、(ii)前記第k学習用バッチに含まれたトレーニングイメージにそれぞれコンボリューション演算を適用して第k学習用バッチ用特徴マップを生成させ、(2)前記学習装置が、前記CNNのバッチ正規化レイヤをもって、(I)(i)kが1である場合に、前記第k学習用バッチ用特徴マップを参照し、(ii)kは2からmまでの整数である場合に、以前に生成されていた前記第1ないし第(k−1)学習用バッチの中から選択された以前の学習用バッチの少なくとも一部分に含まれる以前の学習用特徴マップ及び前記第k学習用バッチ用特徴マップを参照して、前記第k学習用バッチ用特徴マップの学習用調整平均及び学習用調整分散を算出させ、(II)前記学習用調整平均及び前記学習用調整分散を参照して前記第k学習用バッチ用特徴マップにバッチ正規化演算を適用して学習用調整特徴マップを生成させ、(3)前記学習装置が、前記CNNのアクティベーションレイヤをもって、前記学習用調整特徴マップに非線形演算を適用して学習用再調整特徴マップを生成させ、前記CNNが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第1ないし第nコンボリューションブロックを含み、前記第k学習用バッチが取得されると、前記第1ないし前記第nコンボリューションブロックを通じて前記第k学習用バッチに含まれた前記トレーニングイメージに演算を適用して前記学習用再調整特徴マップが生成され、xが2からnまでの整数であれば、第(x−1)コンボリューションブロックから出力された第(x−1)学習用再調整特徴マップが第xコンボリューションブロックに入力されるようにし、前記第xコンボリューションブロックをもって、第x学習用再調整特徴マップを生成させて前記学習用再調整特徴マップが生成され、(4)前記学習装置が、前記CNNの出力レイヤをもって、前記第nコンボリューションブロックから出力された第n学習用再調整特徴マップに出力演算を適用して学習用CNN出力値を生成させ、(5)前記学習装置が、前記CNNのロスレイヤをもって前記学習用CNN出力値、及びそれに対応する原本正解(Ground Truth)を参照してロスを生成させ、前記ロスをバックプロパゲーションして前記CNNのパラメータを学習した状態で、(A)前記CNNの前記コンボリューションレイヤをもって、前記第kテスト用バッチにそれぞれ含まれたテストイメージに前記コンボリューション演算を適用して第kテスト用バッチ用特徴マップを生成させるプロセス、(B)前記CNNの前記バッチ正規化レイヤをもって、(I)(i)kが1である場合に、前記第kテスト用バッチ用特徴マップを参照し、(ii)kは2からm’までの整数である場合に、以前に生成されていた前記第1ないし第(k−1)テスト用バッチの中から選択された以前のテスト用バッチの少なくとも一部分に含まれる以前のテスト用特徴マップ及び前記第kテスト用バッチ用特徴マップを参照して、前記第kテスト用バッチ用特徴マップのテスト用調整平均及びテスト用調整分散を算出させ、(II)前記テスト用調整平均及び前記テスト用調整分散を参照して前記第kテスト用バッチ用特徴マップにバッチ正規化演算を適用してテスト用調整特徴マップを生成させるプロセス、(C)前記CNNの前記アクティベーションレイヤをもって、前記テスト用調整特徴マップに非線形演算を適用してテスト用再調整特徴マップを生成させ、前記CNNが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第1ないし第nコンボリューションブロックを含み、前記第kテスト用バッチが取得されると、前記第1ないし前記第nコンボリューションブロックを通じて前記第kテスト用バッチに含まれた前記テストイメージに前記演算を適用して前記テスト用再調整特徴マップが生成され、xが2からnまでの整数であれば、第(x−1)コンボリューションブロックから出力された第(x−1)テスト用再調整特徴マップが第xコンボリューションブロックに入力されるようにし、前記第xコンボリューションブロックをもって、第xテスト用再調整特徴マップを生成させて前記テスト用再調整特徴マップが生成されるプロセス、及び(D)前記CNNの前記出力レイヤをもって、前記第nコンボリューションブロックから出力された第nテスト用再調整特徴マップに出力演算を適用してテスト用CNN出力値を生成させるプロセスを遂行するための前記インストラクションを実行するように構成された少なくとも一つのプロセッサと、を含むことを特徴とするテスト装置が提供される。
本発明によると、学習用入力イメージを複数個のバッチに分けて学習させる際に、それぞれのバッチのサイズが小さくても最適化されたバッチ正規化の結果を得ることができる効果がある。
また、本発明によると、それぞれのバッチに関する情報を参照してそれぞれのバッチに対応するフィーチャーマップを参照するか否かを決定することにより、最適化されたバッチ正規化の結果を得ることができる効果がある。
本発明の実施例の説明に利用されるために添付された以下の図面は、本発明の実施例のうち単に一部であるにすぎず、本発明の属する技術分野において通常の知識を有する者(以下「通常の技術者」)にとっては、発明的作業が行われずにこれらの図面に基づいて他の各図面が得られ得る。
本発明による以前のバッチをさらに参照してバッチ正規化を遂行するコンピューティング装置の構成を示したものである。 本発明によるCNNの構成を示したものである。 本発明の一実施例によるバッチ正規化のプロセスを示したものである。 従来のバッチ正規化プロセスを示したものである。
後述する本発明に関する詳細な説明は、本発明が実施され得る特定の実施例を例示として示す添付図面を参照する。これらの実施例は、当業者が本発明を実施することができるように十分詳細に説明される。本発明の多様な実施例は互いに異なるが、相互に排他的である必要はないことが理解されるべきである。例えば、ここに記載されている特定の形状、構造及び特性は、一実施例に関連して本発明の精神及び範囲を逸脱せず、かつ他の実施例で具現され得る。また、それぞれの開示された実施例内の個別の構成要素の位置又はバッチは、本発明の精神及び範囲を逸脱せず、かつ変更され得ることが理解されるべきである。したがって、後述の詳細な説明は、限定的な意味として受け取ろうとするものではなく、本発明の範囲は適切に説明されるのであれば、その請求項が主張することと均等な全ての範囲とともに添付された請求項によってのみ限定される。図面において類似の参照符号は、様々な側面にわたって同一であるか、又は類似の機能を指す。
また、本発明の詳細な説明及び各請求項にわたって、「含む」という単語及びの変形は、他の技術的各特徴、各付加物、構成要素又は段階を除外することを意図したものではない。通常の技術者にとって本発明の他の各目的、長所及び各特性が、一部は本説明書から、また一部は本発明の実施から明らかになるであろう。以下の例示及び図面は実例として提供され、本発明を限定することを意図したものではない。
本発明で言及している各種イメージは、舗装または非舗装道路関連のイメージを含み得、この場合、道路環境で登場し得る物体(例えば、自動車、人、動物、植物、物、建物、飛行機やドローンのような飛行体、その他の障害物)を想定し得るが、必ずしもこれに限定されるものではなく、本発明で言及している各種イメージは、道路と関係のないイメージ(例えば、非舗装道路、路地、空き地、海、湖、川、山、森、砂漠、空、室内と関連したイメージ)でもあり得、この場合、非舗装道路、路地、空き地、海、湖、川、山、森、砂漠、空、室内環境で登場し得る物体(例えば、自動車、人、動物、植物、物、建物、飛行機やドローンのような飛行体、その他の障害物)を想定し得るが、必ずしもこれに限定されるわけではない。
以下、本発明の属する技術分野において通常の知識を有する者が本発明を容易に実施させるために、本発明の好ましい実施例について、添付された図面を参照して詳細に説明することにする。
図1は、本発明によるコンピューティング装置の構成を示したものである。図1を参照すると、コンピューティング装置100は、CNN200を含むことができる。CNN200の様々なデータ入出力過程及び演算過程は、それぞれ通信部110及びプロセッサ120によって行われ得る。ただし、図1では前記通信部110及び前記プロセッサ120の具体的な連結関係を省略した。また、前記学習装置は、上述したプロセスを遂行するためのコンピュータ読取り可能なインストラクションを格納することができるメモリ115をさらに含むことができる。一例として、プロセッサ、メモリ、媒体(medium)等が一つのプロセッサとして統合されて機能することもできる。
図2は、本発明による前記CNN200の構成を示したものである。図2を参照すると、前記CNN200は、(i)コンボリューションレイヤ211、バッチ正規化(batch normalization)レイヤ212及びアクティベーション(activation)レイヤ213を含む各n個のコンボリューションブロック210−1ないしブロック210−n、(ii)出力レイヤ220及び(iii)ロスレイヤ230を含む。
したがって、通信部110によって入力映像が取得されると、前記入力イメージは前記第1ないし前記第nコンボリューションブロックを通じて演算されて再調整特徴マップが生成され、前記生成された再調整特徴マップは、前記出力レイヤ220に伝達される。
具体的に、第1コンボリューションブロック210−1を例に挙げて説明すると、前記第1コンボリューションブロック210−1に含まれた前記コンボリューションレイヤ211は、前記入力イメージにコンボリューション演算を適用して特徴マップを生成する。また、前記バッチ正規化レイヤ212は、前記コンボリューションレイヤ211から出力された前記特徴マップにバッチ正規化演算を適用して調整特徴マップを生成する。その後、前記アクティベーションレイヤ213は、前記調整特徴マップに非線形演算を適用して前記再調整特徴マップを生成する。前記バッチ正規化演算に関しては、追って図3を参照して詳しく説明することにする。前記アクティベーションレイヤ213によって遂行される前記非線形演算は、ReLU演算であり得るが、これに限定されるわけではない。一方、前記アクティベーションレイヤ213が必須として求められるわけではないこともある。
前記第1コンボリューションブロック210−1によって前記第1再調整特徴マップが作成された後、前記第1再調整特徴マップは、第2コンボリューションブロック210−2に伝達され、前記第1コンボリューションブロック210−1と同じ方式で前記コンボリューション演算、前記バッチ正規化演算及び前記非線形演算が前記伝達された第1再調整特徴マップに適用される。これらの演算を繰り返して、前記第nコンボリューションブロック210−nによって最終的に第n再調整特徴マップが生成される。
この後、前記出力レイヤ220は、前記第n再調整特徴マップに出力演算を適用してCNN出力値を生成する。前記出力演算は、セグメンテーション、クラスタリング(Clustering)、物体検出等のための演算となり得るが、これに限られるわけではない。前記出力レイヤ220によって前記CNN出力値が生成された後、前記ロスレイヤ230は、前記CNN出力値及びそれに対応する原本正解を参照してロスを生成する。前記ロスは、バックプロパゲーション(backpropagation)されて前記出力レイヤ220、バッチ正規化レイヤ212及びコンボリューションレイヤ211のうち少なくとも一部のパラメータを学習するのに利用される。
前記CNN200の構成を検討してみたところ、具体的に、前記バッチ正規化演算がどのように遂行されるのかを以下に説明することにする。
図3は、本発明の一実施例による前記バッチ正規化演算を示したものである。図3を参照すると、本発明による前記バッチ正規化演算は、(i)各コンボリューションブロックの前記コンボリューションレイヤ211で前記第kバッチに含まれた前記入力イメージに前記コンボリューション演算を適用して第kバッチ用特徴マップを生成し、(ii)(1)前記第kバッチ用特徴マップ、及びさらに(2)第1ないし第(k−1)バッチである以前バッチ用の以前特徴マップを参照して前記第kバッチ用特徴マップの一つ以上の調整平均及び一つ以上の調整分散を算出し、(iii)前記調整平均及び前記調整分散がそれぞれ第1値及び第2値になるように前記第kバッチ用の特徴マップを正規化するための演算である。もちろんkは1である場合に、前記第1バッチ用特徴マップを正規化するために前記第1バッチ用特徴マップのみが利用され得る。一方、前記調整平均及び前記調整分散は、前記特徴マップに含まれている一つのチャンネルあたり一つずつ生成され得る。
基本的に、各バッチのサイズがあまりに小さいと、各前記バッチ用特徴マップの値が正規分布を伴うものと仮定することができないであろう。しかし、図3に示されたように、本発明によって前記バッチ正規化演算の前記以前のバッチ(以下、「以前バッチ」と略称する)をさらに参照することによって、標本が多くなるために特徴マップが正規分布あるいはそれに対等な分布を伴うものと仮定することが可能になるところ、最適化されたバッチ正規化の結果が生成される。
従来技術と対比される本発明の特徴を上記したのであり、どのような方式で前記以前バッチ用以前の特徴マップ(以下、「以前バッチ用の以前特徴マップ」と略称する)がさらに参照されるかについて具体的に説明することにする。
基本的に、前記調整平均及び前記調整分散は、前記以前バッチ及び前記第kバッチを同一に参照して生成される。たとえば、前記第8バッチ用の特徴マップに適用される前記バッチ正規化演算が第1ないし第7バッチ用すべての以前特徴マップ及び第8バッチ用の特徴マップを参照して演算される場合、及び前記第1ないし前記第8バッチそれぞれに含まれた前記入力イメージ内のそれぞれの特定ピクセルに対応する特徴値が{1、4、5、6、3、5、7、8}である場合に(この例示は便宜のためにバッチあたり一つの特徴値が存在するものと仮定したが、一バッチあたり多数の特徴値が存在し得る)、前記すべての以前バッチ及び前記現在のバッチ、すなわち前記第8バッチに同一の重み付け値が割り当てられるため、前記調整平均は4.875となるはずである。
他の場合を挙げると、前記調整平均及び前記調整分散は、それぞれ異なる重み付けが割り当てられた前記以前バッチ用の以前特徴マップ及び前記第kバッチ用の特徴マップを参照して生成される。上記にて言及した例のような、前記第1ないし前記第7バッチ用の以前特徴マップ及び前記第8バッチ用の特徴マップ第8バッチ用の特徴マップの場合を仮定すると、前記第8バッチ用の特徴マップが最も重要であるものと決定されて、前記バッチ正規化レイヤ212は、第1重み付け値として2を前記第8バッチ用の特徴マップに割り当て、古い前記第1バッチ用特徴マップが重要でないのものと決定されて、前記バッチ正規化レイヤ212は第2重み付け値として0.5を前記第1バッチ用特徴マップに割り当てる。前記重み付け値を割り当てた後、前記バッチ正規化レイヤ212は、前記重み付け値が割り当てられた特徴値の和を求めた後、前記和を8.5(重み付け値を考慮した値であり、6+0.5+2と計算されたものである)で割る。このような場合に、前記調整平均は5.47である。これは前記第8バッチに対応する特徴値が大きく反映されて前記第1バッチに対応する特徴値が少なく反映されたことを示す。
前記例示において前記調整平均の例示のみを示したが、前記調整分散も前記例示のような方式で重み付け値を割り当てて生成され得ることは自明である。
図3はすべての以前バッチが参照されなければならないように描写されているが、これに限定されない。よって、前記以前バッチのうち、前記第kバッチ用の特徴マップの前記調整平均及び前記調整分散を生成するために利用される前記特定の以前バッチを選択する方法も説明することとする。
まず、前記第kバッチ用の特徴マップの分散を参照して、前記バッチ正規化レイヤ212は、前記第1ないし前記第(k−1)バッチのうちで前記第kバッチ用の特徴マップの前記調整平均及び前記調整分散を算出するために利用されるバッチの数を決定する。つまり、前記バッチ正規化は、各レイヤの入力の不均衡分布を防止しようとするために、前記第kバッチ用の特徴マップの分散が第1特定閾値より大きければ、前記バッチ正規化レイヤ212は前記第kバッチの不均衡を減らすために、前記第1ないし前記第(k−1)バッチのうち、前記第kバッチ用の特徴マップの前記調整平均及び前記調整分散を生成するために利用される特定の以前バッチを多い数でもって選択する。反対に、前記分散が第1特定閾値より小さければ、前記バッチ正規化レイヤ212は、前記第kバッチの前記不均衡が大きくないことから少ない数の特定の以前バッチを選択する。
そして、前記第kバッチのサイズが第2特定閾値より大きければ、前記以前バッチをさらに参照しなくても良い結果が生成されるものと予想することができる。つまり、前記第kバッチ内で入力イメージが前記第2特定閾値より十分に多く存在するのであれば、大きな標本サイズのおかげで各前記バッチ用特徴マップが正規分布を伴うものと仮定することができる。よって、前記バッチ正規化レイヤ212は、少ない数の前記以前バッチを参照するか、又は前記第kバッチのみを参照することができるようになる。反対に、前記第kバッチ内で入力イメージが前記第2特定閾値より少なく存在するのであれば、前記標本サイズがあまりに小さくて前記第kバッチ用の特徴マップが正規分布を伴うためにはさらに多くのバッチが要求される。よって、このような場合に、前記バッチ正規化レイヤ212はさらに多くの特定の以前バッチを参照する。
また、前記バッチ正規化レイヤ212は、前記第2ないし前記第(k−1)バッチのそれぞれの調整平均及びそれぞれの調整分散が生成される間、それぞれの前記第1ないし前記第(k−1)バッチに対応するそれぞれの前記以前特徴マップが利用されていた回数を参照して、前記第1ないし前記第(k−1)バッチのうちで、前記第kバッチ用の特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前バッチを選択する。たとえば、前記バッチ正規化レイヤ212は、頻繁に利用されたバッチを選択しないか、または少なく利用されたバッチを選択する。このようにして、前記バッチ正規化演算のために利用される前記選択されたバッチは多様になり得る。
これとは異なって、前記バッチ正規化レイヤ212が(i)それぞれの前記第1ないし前記第(k−1)バッチに対応する前記以前特徴マップのそれぞれの平均が第1値を参照して決定される第1特定の範囲内に存在するか否かに関する情報、又は(ii)それぞれの前記第1ないし前記第(k−1)バッチに対応する前記以前特徴マップのそれぞれの分散が第2値を参照して決定される第2特定の範囲内に存在するか否かに関する情報を参照して、前記第1ないし前記第(k−1)バッチのうちで、前記第kバッチ用の特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前バッチを選択する。
すなわち、前記バッチ正規化は、前記入力イメージに対応する前記特徴マップがなるべく不均衡にならないようにするため、前記調整平均及び前記調整分散を生成するために特定の以前バッチ用特定の以前特徴マップが選択され、(i)前記第1特定の範囲内の平均を有する、前記特定の以前バッチ用特定の以前特徴マップ、又は(ii)前記第2特定の範囲内の分散を有する、前記特定の以前バッチ用特定の以前特徴マップが選択される。このようにして、前記入力イメージの不均衡を減らすことができる。
一方、上記で説明した前記バッチ正規化演算を適用して前記調整特徴マップが生成されれば、前記出力レイヤ220に入力される前記調整特徴マップの線形特性のために前記出力レイヤから出力された前記CNN出力値は制限的になり得る。つまり、前記調整特徴マップの値が前記第1値に近接して、前記CNN出力値が前記第1範囲近傍の特定の範囲に収斂され得る。よって、前記CNN出力値は、前記線形演算を追加してさらに適用して生成される前記調整特徴マップに最適化され得る。
前記線形演算は下数式により、
調整特徴マップ=γ×AF+β
γはスケーリングパラメータ、βはバイアス(Bias)パラメータであり、AFはバッチ正規化演算が適用された前記第kバッチ用の特徴マップを意味する。
次に、テスト装置として機能する本発明の構成を説明する。
それぞれのテストイメージを含むそれぞれのバッチ(前記バッチは第1ないし第mバッチを含む)の特徴値を利用したバッチ正規化テスト装置を想定すると、前記テスト装置は下記の要素を含む。
参考までに、以下の説明において混乱を避けるために、前記学習プロセスと関連する用語に「学習用」という単語が追加されており、テストプロセスと関連する用語に「テスト用」という単語が追加された。
前記テスト装置は、前記通信部110及び前記プロセッサ120を含む。(1)前記学習装置が、前記CNN200の前記コンボリューションレイヤ211をもって、(i)第k学習用バッチ(kは1からmまでの整数である)を取得させ、(ii)前記第k学習用バッチに含まれたトレーニングイメージにそれぞれ前記コンボリューション演算を適用して第k学習用バッチ用特徴マップを生成させ、(2)前記学習装置が、前記CNN200の前記バッチ正規化レイヤ212をもって、(I)(i)kが1である場合に、前記第k学習用バッチ用特徴マップを参照し、(ii)kは2からmまでの整数である場合に、以前に生成されていた前記第1ないし第(k−1)学習用バッチの中から選択された以前の学習用バッチの少なくとも一部分に含まれる以前の学習用特徴マップ及び前記第k学習用バッチ用特徴マップを参照して、前記第k学習用バッチ用特徴マップの学習用調整平均及び学習用調整分散を算出させ、(II)前記学習用調整平均及び前記学習用調整分散を参照して前記第k学習用バッチ用特徴マップに前記バッチ正規化演算を適用して学習用調整特徴マップを生成させ、(3)前記学習装置が、前記CNN200のアクティベーションレイヤ213をもって、前記学習用調整特徴マップに前記非線形演算を適用して学習用再調整特徴マップを生成させ、前記CNN200が前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第1ないし第nコンボリューションブロックを含み、前記第k学習用バッチが取得されると、前記第1ないし前記第nコンボリューションブロックを通じて前記第k学習用バッチに含まれた前記トレーニングイメージに演算を適用して前記学習用再調整特徴マップが生成され、xが2からnまでの整数であれば、第(x−1)コンボリューションブロックから出力された第(x−1)学習用再調整特徴マップが第xコンボリューションブロックに入力されるようにし、前記第xコンボリューションブロックをもって、第x学習用再調整特徴マップを生成させて前記学習用再調整特徴マップが生成され、(4)前記学習装置が、前記CNN200の前記出力レイヤ220をもって、前記第nコンボリューションブロックから出力された第n学習用再調整特徴マップに前記出力演算を適用して学習用CNN出力値を生成させ、(5)前記学習装置が、前記CNN200の前記ロスレイヤ230をもって、前記学習用CNN出力値及びそれに対応する原本正解(Ground Truth)を参照してロスを生成させ、前記ロスをバックプロパゲーションして前記CNN200のパラメータを学習した状態で、前記通信部110は、前記第kテスト用バッチ(kは1からmまでの整数)を取得する。
そして、前記テスト装置内に含まれた前記プロセッサ120は、以下のプロセスを遂行する。
まず、前記プロセッサ120は、前記CNN200の前記コンボリューションレイヤ211をもって、前記第kテスト用バッチにそれぞれ含まれたテストイメージに前記コンボリューション演算を適用して第kテスト用バッチ用特徴マップを生成させる。
そして、前記プロセッサ120は、前記CNN200の前記バッチ正規化レイヤ212をもって、(I)(i)kが1である場合に、前記第kテスト用バッチ用特徴マップを参照し、(ii)kは2からmまでの整数である場合に、以前に生成されていた前記第1ないし第(k−1)テスト用バッチの中から選択された以前のテスト用バッチの少なくとも一部分に含まれる以前のテスト用特徴マップ及び前記第kテスト用バッチ用特徴マップを参照して、前記第kテスト用バッチ用特徴マップの一つ以上のテスト用調整平均及びテスト用調整分散を算出させ、(II)前記テスト用調整平均及び前記テスト用調整分散を参照して、前記第kテスト用バッチ用特徴マップに前記バッチ正規化演算を適用してテスト用調整特徴マップを生成する。
以後、前記プロセッサ120は、前記CNN200の前記アクティベーションレイヤ213をもって、前記テスト用調整特徴マップに前記非線形演算を適用してテスト用再調整特徴マップを生成させ、前記CNNが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第1ないし第nコンボリューションブロックを含み、前記第kテスト用バッチが取得されると、前記第1ないし前記第nコンボリューションブロックを通じて前記第kテスト用バッチに含まれた前記テストイメージに前記演算を適用して前記テスト用再調整特徴マップが生成され、xが2からnまでの整数であれば、前記第(x−1)コンボリューションブロックから出力された第(x−1)テスト用再調整特徴マップが前記第xコンボリューションブロックに入力されるようにし、前記第xコンボリューションブロックをもって、第xテスト用再調整特徴マップを生成させて前記テスト用再調整特徴マップが生成される。
最後に、前記プロセッサ120が前記CNN200の前記出力レイヤ220をもって、前記第nコンボリューションブロックから出力された第nテスト用再調整特徴マップに前記出力演算を適用してテスト用CNN出力値を生成させる。
前記テストプロセスにおいて、前記コンボリューションレイヤ211が前記コンボリューション演算を前記入力イメージに適用する部分、前記バッチ正規化レイヤ212が前記特徴マップに前記バッチ正規化演算を適用する部分、そして前記アクティベーションレイヤ213が前記非線形演算を前記特徴マップに適用する部分は学習段階と類似しているので、詳細な説明は省略することにする。
前記テスト装置の前記構成を詳述したところ、前記コンピューティング装置と前記テスト装置との関係を、図2を再度参照して説明すると次のとおりである。
前記コンピューティング装置が前記テスト装置として機能する場合は、前記学習プロセスが終わった状態であるため、ロスを生成し、これをバックプロパゲーションする部分は除外されるであろう。よって、前記テスト装置として機能する本発明の構成は、前記ロスを生成する部分である前記ロスレイヤ230を除外した前記コンピューティング装置の構成と同じであるので、前記n個のコンボリューションブロックから前記出力レイヤ220までの要素が本発明の前記テスト装置の前記構成になるであろう。
上述した方法を通じたオンラインバッチ正規化、オンデバイス(on−device)学習、または連続学習(continual learning)は、モバイル装置、IOT装置などに適用され得る。また、前記方法は、軍事的目的のために、又はドローンやロボットのような他の装置に使用されるために遂行され得る。
本発明の技術分野における通常の技術者に理解され得るところとして、前記で説明されたイメージ、例えば、原本イメージ、原本ラベル及び追加ラベルのようなイメージデータの送受信が学習装置及びテスト装置の各通信部により行われ得、特徴マップと演算を遂行するためのデータが学習装置及びテスト装置のプロセッサ(及び/又はメモリ)によって保有/維持され得、コンボリューション演算、デコンボリューション演算、ロス値演算の過程が主に学習装置及びテスト装置のプロセッサによって遂行され得るが、本発明がこれに限定されはしないであろう。
以上にて説明された本発明による実施例は、多様なコンピュータの構成要素を通じて遂行することができるプログラム命令語の形態で具現されて、コンピュータ読取り可能な記録媒体に格納され得る。前記コンピュータ読取り可能な記録媒体はプログラム命令語、データファイル、データ構造などを単独で又は組み合わせて含むことができる。前記コンピュータ読取り可能な記録媒体に格納されるプログラム命令語は、本発明のために特別に設計され、構成されたものであるか、コンピュータソフトウェア分野の当業者に公知にされて使用可能なものであり得る。コンピュータ読取り可能な記録媒体の例には、ハードディスク、フロッピーディスク及び磁気テープのような磁気媒体、CD−ROM、DVDのような光記録媒体、フロプティカルディスク(Floptical Disk)のような磁気−光メディア(Magneto−Optical Media)、及びROM、RAM、フラッシュメモリなどのようなプログラム命令語を格納して遂行するように特別に構成されたハードウェア装置が含まれる。プログラム命令語の例には、コンパイラによって作られるもののような機械語コードだけでなく、インタープリターなどを使用してコンピュータによって実行される高級言語コードも含まれる。前記ハードウェア装置は、本発明による処理を実行するために一つ以上のソフトウェアモジュールとして作動するように構成され得、その反対も同様である。
以上にて本発明が具体的な構成要素などのような特定事項と限定された実施例及び図面によって説明されたが、これは、本発明のより全般的な理解の一助とするために提供されたものであるに過ぎず、本発明が前記実施例に限られるものではなく、本発明が属する技術分野において通常の知識を有する者であれば、係る記載から多様な修正及び変形が行われ得る。
従って、本発明の思想は、前記説明された実施例に局限されて定められてはならず、後述する特許請求の範囲だけでなく、本特許請求の範囲と均等または等価的に変形されたものすべては、本発明の思想の範囲に属するといえる。

Claims (26)

  1. それぞれの入力イメージを含むそれぞれのバッチ(Batch)(前記バッチは第1バッチないし第mバッチを含む)の特徴値を利用したバッチ正規化(Normalization)方法において、
    (a)コンピューティング装置が、CNNのコンボリューションレイヤをもって、(i)第kバッチ(kは1からmまでの整数である)を取得させ、(ii)前記第kバッチに含まれた前記入力イメージにそれぞれコンボリューション演算を適用して第kバッチ用の特徴マップを生成させる段階;及び
    (b)前記コンピューティング装置が、前記CNNのバッチ正規化レイヤをもって、(I)(i)kが1である場合に、前記第kバッチ用の特徴マップを参照し、(ii)kは2からmまでの常数である場合に、以前に生成されていた前記第1ないし第(k−1)バッチの中から選択された以前バッチの少なくとも一部分に含まれる以前特徴マップ及び前記第kバッチ用の特徴マップを参照して、前記第kバッチ用の特徴マップの一つ以上の調整平均及び一つ以上の調整分散を算出させ、(II)前記調整平均及び前記調整分散を参照して、前記第kバッチ用の特徴マップにバッチ正規化演算を適用して調整特徴マップを生成させる段階;
    を含むバッチ正規化学習方法。
  2. (c)前記コンピューティング装置が、前記CNNのアクティベーションレイヤ(Activation Layer)をもって、前記調整特徴マップに非線形演算を適用して再調整特徴マップを生成させる段階;
    をさらに含むことを特徴とする請求項1に記載の学習方法。
  3. 前記CNNが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第1ないし第nコンボリューションブロックを含み、
    前記第kバッチが取得されると、前記第1ないし前記第nコンボリューションブロックを通じて前記第kバッチに含まれた前記入力イメージに演算を適用して前記再調整特徴マップが生成され、
    xが2からnまでの常数であれば、第(x−1)コンボリューションブロックから出力された第(x−1)再調整特徴マップが第xコンボリューションブロックに入力されるようにし、前記第xコンボリューションブロックをもって、第x再調整特徴マップを生成させて前記再調整特徴マップが生成されることを特徴とする請求項2に記載の学習方法。
  4. (d)前記コンピューティング装置が、前記CNNの出力レイヤをもって、前記第nコンボリューションブロックから出力された第n再調整特徴マップに出力演算を適用してCNN出力値を生成させる段階;及び
    (e)前記コンピューティング装置が、ロスレイヤをもって、CNN出力値及びそれに対応する原本正解(Ground Truth)を参照してロスを生成させ、前記ロスをバックプロパゲーション(backpropagation)して前記CNNのパラメータを学習させる段階;
    をさらに含むことを特徴とする請求項3に記載の学習方法。
  5. 前記バッチ正規化演算は、前記第kバッチ用の特徴マップに含まれた値を正規化して前記調整平均及び前記調整分散がそれぞれ第1値及び第2値を有するようにする演算であることを特徴とする請求項1に記載の学習方法。
  6. 前記(b)段階で、
    前記バッチ正規化レイヤが、前記第kバッチ用の特徴マップの分散を参照して、前記第1ないし前記第(k−1)バッチのうちで前記調整平均及び前記調整分散を生成するために選択される前記以前バッチの数を決定することを特徴とする請求項1に記載の学習方法。
  7. 前記第kバッチ用の特徴マップの分散が特定閾値より小さければ、前記バッチ正規化レイヤが(i)前記第kバッチ用の特徴マップのみを参照するか、(ii)前記第kバッチ用の特徴マップ及び一つ以上の特定以前バッチ用の特定以前特徴マップを参照して前記調整平均及び前記調整分散を算出し、前記特定の以前バッチは、(k−1)個に対する前記特定の以前バッチの個数の割合が特定の臨界比率以下に決定されるように前記第1ないし前記第(k−1)バッチの中から選択されることを特徴とする請求項1に記載の学習方法。
  8. 前記(b)段階で、
    前記バッチ正規化レイヤは、前記第kバッチに含まれた前記入力イメージの個数を参照して、(k−1)個に対する特定の以前バッチの個数の割合を決定し、前記調整平均及び前記調整分散を算出するために利用される前記特定の以前バッチは前記第1ないし前記第(k−1)バッチの中から選択されることを特徴とする請求項1に記載の学習方法。
  9. 前記(b)段階で、
    前記バッチ正規化レイヤは、(i)第1重み付け値が割り当てられた前記第kバッチ用の特徴マップ、及び(ii)一つ以上の第2重み付け値が割り当てられた、前記第1ないし前記第(k−1)以前バッチのうち少なくとも一部のバッチに含まれる前記以前特徴マップを参照して前記調整平均及び前記調整分散を算出することを特徴とする請求項1に記載の学習方法。
  10. 前記(b)段階で、
    前記バッチ正規化レイヤが、前記第2ないし前記第(k−1)バッチのそれぞれの調整平均及びそれぞれの調整分散が生成される間、それぞれの前記第1ないし前記第(k−1)バッチに対応するそれぞれの前記以前特徴マップが利用されていた回数を参照して、前記第1ないし前記第(k−1)バッチのうちで前記第kバッチ用の特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前バッチを選択することを特徴とする請求項1に記載の学習方法。
  11. 前記(b)段階で、
    前記バッチ正規化レイヤが、(i)それぞれの前記第1ないし前記第(k−1)バッチに対応する前記以前特徴マップのそれぞれの平均が第1値を参照して決定される第1特定の範囲内に存在するか否かに関する情報、又は(ii)それぞれの前記第1ないし前記第(k−1)バッチに対応する前記以前特徴マップのそれぞれの分散が第2値を参照して決定される第2特定の範囲内に存在するか否かに関する情報を参照して、前記第1ないし前記第(k−1)バッチのうちで前記第kバッチ用の特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前バッチを選択することを特徴とする請求項1に記載の学習方法。
  12. 前記(b)段階で、
    前記バッチ正規化レイヤは、前記バッチ正規化演算を前記第kバッチ用の特徴マップに適用した後、これに線形演算を適用して前記第kバッチ用調整特徴マップを生成し、前記線形演算は下記の数式により、
    調整特徴マップ=γ×AF+β
    γはスケーリングパラメータ、βはバイアス(Bias)パラメータであり、AFはバッチ正規化演算が適用された前記第kバッチ用の特徴マップを意味することを特徴とする請求項1に記載の学習方法。
  13. それぞれのテストイメージを含むそれぞれのバッチ(前記バッチは第1ないし第mバッチを含む)の特徴値を利用したバッチ正規化テスト方法において、
    (a)(1)学習装置が、CNNのコンボリューションレイヤをもって、(i)第k学習用バッチ(kは1からmまでの常数である)を取得させ、(ii)前記第k学習用バッチに含まれたトレーニングイメージにそれぞれコンボリューション演算を適用して第k学習用バッチ用特徴マップを生成させ、(2)前記学習装置が、前記CNNのバッチ正規化レイヤをもって、(I)(i)kが1である場合に、前記第k学習用バッチ用特徴マップを参照し、(ii)kは2からmまでの常数である場合に、以前に生成されていた前記第1ないし第(k−1)学習用バッチの中から選択された以前の学習用バッチの少なくとも一部分に含まれる以前の学習用特徴マップ及び前記第k学習用バッチ用特徴マップを参照して、前記第k学習用バッチ用特徴マップの一つ以上の学習用調整平均及び一つ以上の学習用調整分散を算出させ、(II)前記学習用調整平均及び前記学習用調整分散を参照して前記第k学習用バッチ用特徴マップにバッチ正規化演算を適用して学習用調整特徴マップを生成させ、(3)前記学習装置が、前記CNNのアクティベーションレイヤをもって前記学習用調整特徴マップに非線形演算を適用して学習用再調整特徴マップを生成させ、前記CNNが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第1ないし第nコンボリューションブロックを含み、前記第k学習用バッチが取得されると、前記第1ないし前記第nコンボリューションブロックを通じて前記第k学習用バッチに含まれた前記トレーニングイメージに演算を適用して前記学習用再調整特徴マップが生成され、xが2からnまでの常数であれば、第(x−1)コンボリューションブロックから出力された第(x−1)学習用再調整特徴マップが第xコンボリューションブロックに入力されるようにし、前記第xコンボリューションブロックをもって、第x学習用再調整特徴マップを生成させて前記学習用再調整特徴マップが生成され、(4)前記学習装置が、前記CNNの出力レイヤをもって前記第nコンボリューションブロックから出力された第n学習用再調整特徴マップに出力演算を適用して学習用CNN出力値を生成させ、(5)前記学習装置が、前記CNNのロスレイヤをもって前記学習用CNN出力値及びそれに対応する原本正解(Ground Truth)を参照してロスを生成させ、前記ロスをバックプロパゲーションして前記CNNのパラメータを学習した状態で、テスト装置が前記CNNの前記コンボリューションレイヤをもって、(i)第kテスト用バッチ(kは1からm’までの常数である)を取得させ、(ii)前記第kテスト用バッチにそれぞれ含まれたテストイメージにコンボリューション演算を適用して第kテスト用バッチ用特徴マップを生成させる段階;
    (b)前記テスト装置が、前記CNNの前記バッチ正規化レイヤをもって、(I)(i)kが1である場合に、前記第kテスト用バッチ用特徴マップを参照し、(ii)kは2からm’までの常数である場合に、以前に生成されていた前記第1ないし第(k−1)テスト用バッチの中から選択された以前のテスト用バッチの少なくとも一部分に含まれる以前のテスト用特徴マップ及び前記第kテスト用バッチ用特徴マップを参照して、前記第kテスト用バッチ用特徴マップの一つ以上のテスト用調整平均及び一つ以上のテスト用調整分散を算出させ、(II)前記テスト用調整平均及び前記テスト用調整分散を参照して、前記第kテスト用バッチ用特徴マップにバッチ正規化演算を適用してテスト用調整特徴マップを生成させる段階;
    (c)前記テスト装置が、前記CNNの前記アクティベーションレイヤをもって前記テスト用調整特徴マップに非線形演算を適用してテスト用再調整特徴マップを生成させ、前記CNNが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第1ないし第nコンボリューションブロックを含み、前記第kテスト用バッチが取得されると、前記第1ないし前記第nコンボリューションブロックを通じて前記第kテスト用バッチに含まれた前記テストイメージに演算を適用して前記テスト用再調整特徴マップが生成され、xが2からnまでの常数であれば、第(x−1)コンボリューションブロックから出力された第(x−1)テスト用再調整特徴マップが第xコンボリューションブロックに入力されるようにし、前記第xコンボリューションブロックをもって、第xテスト用再調整特徴マップを生成させて前記テスト用再調整特徴マップが生成される段階;及び
    (d)前記テスト装置が、前記CNNの前記出力レイヤをもって第nコンボリューションブロックから出力された第nテスト用再調整特徴マップに出力演算を適用してテスト用CNN出力値を生成させる段階;
    を含むことを特徴とするテスト方法。
  14. それぞれの入力イメージを含むそれぞれのバッチ(Batch)(前記バッチは第1バッチないし第mバッチを含む)の特徴値を利用したバッチ正規化コンピューティング装置において、
    インストラクションを格納する少なくとも一つのメモリと、
    (1)CNNのコンボリューションレイヤをもって、第kバッチ(kは1からmまでの常数である)に含まれた前記入力イメージにそれぞれコンボリューション演算を適用して第kバッチ用の特徴マップを生成させるプロセス、及び(2)前記CNNのバッチ正規化レイヤをもって、(I)(i)kが1である場合に、前記第kバッチ用の特徴マップを参照し、(ii)kは2からmまでの常数である場合に、以前に生成されていた前記第1ないし第(k−1)バッチの中から選択された以前バッチの少なくとも一部分に含まれる以前特徴マップ及び前記第kバッチ用の特徴マップを参照して、前記第kバッチ用の特徴マップの一つ以上の調整平均及び一つ以上の調整分散を算出させ、(II)前記調整平均及び前記調整分散を参照して前記第kバッチ用の特徴マップにバッチ正規化演算を適用して調整特徴マップを生成させるプロセスを遂行するための前記インストラクションを実行するように構成された少なくとも一つのプロセッサと、
    を含むことを特徴とするコンピューティング装置。
  15. 前記プロセッサが、(3)前記CNNのアクティベーションレイヤをもって、前記調整特徴マップに非線形演算を適用して再調整特徴マップを生成させるプロセス;
    をさらに遂行することを特徴とする請求項14に記載のコンピューティング装置。
  16. 前記CNNが、前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第1ないし第nコンボリューションブロックを含み、
    前記第kバッチが取得されると、前記第1ないし前記第nコンボリューションブロックを通じて前記第kバッチに含まれた前記入力イメージに演算を適用して前記再調整特徴マップが生成され、
    xが2からnまでの常数であれば、第(x−1)コンボリューションブロックから出力された第(x−1)再調整特徴マップが第xコンボリューションブロックに入力されるようにし、前記第xコンボリューションブロックをもって、第x再調整特徴マップを生成させて前記再調整特徴マップが生成されることを特徴とする請求項15に記載のコンピューティング装置。
  17. 前記プロセッサが、
    (4)前記CNNの出力レイヤをもって、前記第nコンボリューションブロックから出力された第n再調整特徴マップに出力演算を適用してCNN出力値を生成させるプロセス;及び
    (5)ロスレイヤをもって、前記CNN出力値及びそれに対応する原本正解を参照してロスを生成させ、前記ロスをバックプロパゲーションして前記CNNのパラメータを学習させるプロセス;
    をさらに遂行することを特徴とする請求項16に記載のコンピューティング装置。
  18. 前記バッチ正規化演算は、前記第kバッチ用の特徴マップに含まれた各値を正規化して前記調整平均及び前記調整分散がそれぞれ第1値及び第2値を有するようにする演算であることを特徴とする請求項14に記載のコンピューティング装置。
  19. 前記(2)プロセスで、
    前記バッチ正規化レイヤが、前記第kバッチ用の特徴マップの分散を参照して、前記第1ないし前記第(k−1)バッチのうちで前記調整平均及び前記調整分散を生成するために選択される前記以前バッチの数を決定することを特徴とする請求項14に記載のコンピューティング装置。
  20. 前記第kバッチ用の特徴マップの分散が特定閾値より小さければ、前記バッチ正規化レイヤが(i)前記第kバッチ用の特徴マップのみを参照するか、(ii)前記第kバッチ用の特徴マップ及び一つ以上の特定の以前バッチ用特定の以前特徴マップを参照して前記調整平均及び前記調整分散を算出し、前記特定の以前バッチは、(k−1)個に対する前記特定の以前バッチの個数の割合が特定の臨界比率以下に決定されるように前記第1ないし前記第(k−1)バッチの中から選択されることを特徴とする請求項14に記載のコンピューティング装置。
  21. 前記(2)プロセスで、
    前記バッチ正規化レイヤは、前記第kバッチに含まれた前記入力イメージの個数を参照して、(k−1)個に対する特定の以前バッチの個数の割合を決定し、前記調整平均及び前記調整分散を算出するために利用される前記特定の以前バッチは前記第1ないし前記第(k−1)バッチの中から選択されることを特徴とする請求項14に記載のコンピューティング装置。
  22. 前記(2)プロセスで、
    前記バッチ正規化レイヤは、(i)第1重み付け値が割り当てられた前記第kバッチ用の特徴マップ、及び(ii)一つ以上の第2重み付け値が割り当てられた、前記第1ないし前記第(k−1)以前バッチのうち少なくとも一部のバッチに含まれる前記以前特徴マップを参照して前記調整平均及び前記調整分散を算出することを特徴とする請求項14に記載のコンピューティング装置。
  23. 前記(2)プロセスで、
    前記バッチ正規化レイヤが、前記第2ないし前記第(k−1)バッチのそれぞれの調整平均及びそれぞれの調整分散が生成される間、それぞれの前記第1ないし前記第(k−1)バッチに対応するそれぞれの前記以前特徴マップが利用されていた回数を参照して、前記第1ないし前記第(k−1)バッチのうちで前記第kバッチ用の特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前バッチを選択することを特徴とする請求項14に記載のコンピューティング装置。
  24. 前記(2)プロセスで、
    前記バッチ正規化レイヤが、(i)それぞれの前記第1ないし前記第(k−1)バッチに対応する前記以前特徴マップのそれぞれの平均が第1値を参照して決定される第1特定の範囲内に存在するか否かに関する情報、又は(ii)それぞれの前記第1ないし前記第(k−1)バッチに対応する前記以前特徴マップのそれぞれの分散が第2値を参照して決定される第2特定の範囲内に存在するか否かに関する情報を参照して、前記第1ないし前記第(k−1)バッチのうちで前記第kバッチ用の特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前バッチを選択することを特徴とする請求項14に記載のコンピューティング装置。
  25. 前記(2)プロセスで、
    前記バッチ正規化レイヤは、前記バッチ正規化演算を前記第kバッチ用の特徴マップに適用した後、これに線形演算を適用して前記第kバッチ用調整特徴マップを生成し、前記線形演算は下記の数式により、
    調整特徴マップ=γ×AF+β
    γはスケーリングパラメータ、βはバイアス(Bias)パラメータであり、AFはバッチ正規化演算が適用された前記第kバッチ用の特徴マップを意味することを特徴とする請求項14に記載のコンピューティング装置。
  26. それぞれのテストイメージを含むそれぞれのバッチ(前記バッチは第1ないし第mバッチを含む)の特徴値を利用したバッチ正規化テスト装置において、
    インストラクションを格納する少なくとも一つのメモリと、
    (1)学習装置が、CNNのコンボリューションレイヤをもって、(i)第k学習用バッチ(kは1からmまでの常数である)を取得させ、(ii)前記第k学習用バッチに含まれたトレーニングイメージにそれぞれコンボリューション演算を適用して第k学習用バッチ用特徴マップを生成させ、(2)前記学習装置が、前記CNNのバッチ正規化レイヤをもって、(I)(i)kが1である場合に、前記第k学習用バッチ用特徴マップを参照し、(ii)kは2からmまでの常数である場合に、以前に生成されていた前記第1ないし第(k−1)学習用バッチの中から選択された以前の学習用バッチの少なくとも一部分に含まれる以前の学習用特徴マップ及び前記第k学習用バッチ用特徴マップを参照して、前記第k学習用バッチ用特徴マップの学習用調整平均及び学習用調整分散を算出させ、(II)前記学習用調整平均及び前記学習用調整分散を参照して前記第k学習用バッチ用特徴マップにバッチ正規化演算を適用して学習用調整特徴マップを生成させ、(3)前記学習装置が、前記CNNのアクティベーションレイヤをもって、前記学習用調整特徴マップに非線形演算を適用して学習用再調整特徴マップを生成させ、前記CNNが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第1ないし第nコンボリューションブロックを含み、前記第k学習用バッチが取得されると、前記第1ないし前記第nコンボリューションブロックを通じて前記第k学習用バッチに含まれた前記トレーニングイメージに演算を適用して前記学習用再調整特徴マップが生成され、xが2からnまでの常数であれば、第(x−1)コンボリューションブロックから出力された第(x−1)学習用再調整特徴マップが第xコンボリューションブロックに入力されるようにし、前記第xコンボリューションブロックをもって、第x学習用再調整特徴マップを生成させて前記学習用再調整特徴マップが生成され、(4)前記学習装置が、前記CNNの出力レイヤをもって、前記第nコンボリューションブロックから出力された第n学習用再調整特徴マップに出力演算を適用して学習用CNN出力値を生成させ、(5)前記学習装置が、前記CNNのロスレイヤをもって前記学習用CNN出力値、及びそれに対応する原本正解(Ground Truth)を参照してロスを生成させ、前記ロスをバックプロパゲーションして前記CNNのパラメータを学習した状態で、(A)前記CNNの前記コンボリューションレイヤをもって、前記第kテスト用バッチにそれぞれ含まれたテストイメージに前記コンボリューション演算を適用して第kテスト用バッチ用特徴マップを生成させるプロセス、(B)前記CNNの前記バッチ正規化レイヤをもって、(I)(i)kが1である場合に、前記第kテスト用バッチ用特徴マップを参照し、(ii)kは2からm’までの常数である場合に、以前に生成されていた前記第1ないし第(k−1)テスト用バッチの中から選択された以前のテスト用バッチの少なくとも一部分に含まれる以前のテスト用特徴マップ及び前記第kテスト用バッチ用特徴マップを参照して、前記第kテスト用バッチ用特徴マップのテスト用調整平均及びテスト用調整分散を算出させ、(II)前記テスト用調整平均及び前記テスト用調整分散を参照して前記第kテスト用バッチ用特徴マップにバッチ正規化演算を適用してテスト用調整特徴マップを生成させるプロセス、(C)前記CNNの前記アクティベーションレイヤをもって、前記テスト用調整特徴マップに非線形演算を適用してテスト用再調整特徴マップを生成させ、前記CNNが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第1ないし第nコンボリューションブロックを含み、前記第kテスト用バッチが取得されると、前記第1ないし前記第nコンボリューションブロックを通じて前記第kテスト用バッチに含まれた前記テストイメージに前記演算を適用して前記テスト用再調整特徴マップが生成され、xが2からnまでの常数であれば、第(x−1)コンボリューションブロックから出力された第(x−1)テスト用再調整特徴マップが第xコンボリューションブロックに入力されるようにし、前記第xコンボリューションブロックをもって、第xテスト用再調整特徴マップを生成させて前記テスト用再調整特徴マップが生成されるプロセス、及び(D)前記CNNの前記出力レイヤをもって、前記第nコンボリューションブロックから出力された第nテスト用再調整特徴マップに出力演算を適用してテスト用CNN出力値を生成させるプロセスを遂行するための前記インストラクションを実行するように構成された少なくとも一つのプロセッサと、
    を含むことを特徴とするテスト装置。
JP2020001764A 2019-01-23 2020-01-08 軍事的目的、ドローンまたはロボットに利用されるために一つ以上の以前のバッチをさらに参照してモバイル装置またはiot装置に適用可能なオンラインバッチ正規化、オンデバイス学習、及び連続学習を遂行する方法と装置、並びにそれを利用したテスト方法及びテスト装置 Active JP6916549B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/255,446 US10325185B1 (en) 2019-01-23 2019-01-23 Method and device for online batch normalization, on-device learning, and continual learning applicable to mobile devices or IOT devices additionally referring to one or more previous batches to be used for military purpose, drone or robot, and testing method and testing device using the same
US16/255,446 2019-01-23

Publications (2)

Publication Number Publication Date
JP2020119532A true JP2020119532A (ja) 2020-08-06
JP6916549B2 JP6916549B2 (ja) 2021-08-11

Family

ID=66826023

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020001764A Active JP6916549B2 (ja) 2019-01-23 2020-01-08 軍事的目的、ドローンまたはロボットに利用されるために一つ以上の以前のバッチをさらに参照してモバイル装置またはiot装置に適用可能なオンラインバッチ正規化、オンデバイス学習、及び連続学習を遂行する方法と装置、並びにそれを利用したテスト方法及びテスト装置

Country Status (5)

Country Link
US (1) US10325185B1 (ja)
EP (1) EP3686810B1 (ja)
JP (1) JP6916549B2 (ja)
KR (1) KR102316593B1 (ja)
CN (1) CN111476082B (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10387740B2 (en) * 2016-10-10 2019-08-20 Gyrfalcon Technology Inc. Object detection and recognition apparatus based on CNN based integrated circuits
US11631163B2 (en) * 2020-02-11 2023-04-18 Samsung Electronics Co., Ltd. Mobile data augmentation engine for personalized on-device deep learning system
KR102209121B1 (ko) * 2020-08-24 2021-01-28 클라우드브릭주식회사 딥러닝 머신의 신뢰도 판단 방법
CN117377984A (zh) * 2021-09-01 2024-01-09 英特尔公司 用于视频理解应用中的深度学习的动态时间归一化

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170351948A1 (en) * 2016-06-01 2017-12-07 Seoul National University R&Db Foundation Apparatus and method for generating prediction model based on artificial neural network
WO2018148526A1 (en) * 2017-02-10 2018-08-16 Google Llc Batch renormalization layers

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05346915A (ja) * 1992-01-30 1993-12-27 Ricoh Co Ltd 学習機械並びにニューラルネットワークおよびデータ分析装置並びにデータ分析方法
US9418319B2 (en) * 2014-11-21 2016-08-16 Adobe Systems Incorporated Object detection using cascaded convolutional neural networks
WO2016123409A1 (en) * 2015-01-28 2016-08-04 Google Inc. Batch normalization layers
US10410096B2 (en) * 2015-07-09 2019-09-10 Qualcomm Incorporated Context-based priors for object detection in images
AU2016308097B2 (en) * 2015-08-15 2018-08-02 Salesforce.Com, Inc. Three-dimensional (3D) convolution with 3D batch normalization
WO2017031630A1 (zh) * 2015-08-21 2017-03-02 中国科学院自动化研究所 基于参数量化的深度卷积神经网络的加速与压缩方法
US11074492B2 (en) * 2015-10-07 2021-07-27 Altera Corporation Method and apparatus for performing different types of convolution operations with the same processing elements
US20170124409A1 (en) * 2015-11-04 2017-05-04 Nec Laboratories America, Inc. Cascaded neural network with scale dependent pooling for object detection
US9965719B2 (en) * 2015-11-04 2018-05-08 Nec Corporation Subcategory-aware convolutional neural networks for object detection
US9904874B2 (en) * 2015-11-05 2018-02-27 Microsoft Technology Licensing, Llc Hardware-efficient deep convolutional neural networks
US10002313B2 (en) * 2015-12-15 2018-06-19 Sighthound, Inc. Deeply learned convolutional neural networks (CNNS) for object localization and classification
US9858496B2 (en) * 2016-01-20 2018-01-02 Microsoft Technology Licensing, Llc Object detection and classification in images
WO2017139927A1 (en) * 2016-02-17 2017-08-24 Intel Corporation Region proposal for image regions that include objects of interest using feature maps from multiple layers of a convolutional neural network model
CN106097355A (zh) * 2016-06-14 2016-11-09 山东大学 基于卷积神经网络的胃肠道肿瘤显微高光谱图像处理方法
US10354362B2 (en) * 2016-09-08 2019-07-16 Carnegie Mellon University Methods and software for detecting objects in images using a multiscale fast region-based convolutional neural network
US10387740B2 (en) * 2016-10-10 2019-08-20 Gyrfalcon Technology Inc. Object detection and recognition apparatus based on CNN based integrated circuits
US11321609B2 (en) * 2016-10-19 2022-05-03 Samsung Electronics Co., Ltd Method and apparatus for neural network quantization
US20180107926A1 (en) * 2016-10-19 2018-04-19 Samsung Electronics Co., Ltd. Method and apparatus for neural network quantization
US10198671B1 (en) * 2016-11-10 2019-02-05 Snap Inc. Dense captioning with joint interference and visual context
US11392825B2 (en) * 2017-01-09 2022-07-19 Samsung Electronics Co., Ltd. Method and algorithm of recursive deep learning quantization for weight bit reduction
US20180211403A1 (en) * 2017-01-20 2018-07-26 Ford Global Technologies, Llc Recurrent Deep Convolutional Neural Network For Object Detection
US10127495B1 (en) * 2017-04-14 2018-11-13 Rohan Bopardikar Reducing the size of a neural network through reduction of the weight matrices
EP3619651B1 (en) * 2017-05-02 2024-03-27 Kodak Alaris Inc. System and method for batch-normalized recurrent highway networks
US10474908B2 (en) * 2017-07-06 2019-11-12 GM Global Technology Operations LLC Unified deep convolutional neural net for free-space estimation, object detection and object pose estimation
US10728553B2 (en) * 2017-07-11 2020-07-28 Sony Corporation Visual quality preserving quantization parameter prediction with deep neural network
JP7149692B2 (ja) * 2017-08-09 2022-10-07 キヤノン株式会社 画像処理装置、画像処理方法
KR20190034985A (ko) * 2017-09-25 2019-04-03 삼성전자주식회사 인공 신경망의 양자화 방법 및 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170351948A1 (en) * 2016-06-01 2017-12-07 Seoul National University R&Db Foundation Apparatus and method for generating prediction model based on artificial neural network
WO2018148526A1 (en) * 2017-02-10 2018-08-16 Google Llc Batch renormalization layers

Also Published As

Publication number Publication date
JP6916549B2 (ja) 2021-08-11
EP3686810B1 (en) 2024-06-19
US10325185B1 (en) 2019-06-18
CN111476082B (zh) 2023-07-04
KR102316593B1 (ko) 2021-10-25
EP3686810C0 (en) 2024-06-19
CN111476082A (zh) 2020-07-31
EP3686810A1 (en) 2020-07-29
KR20200091782A (ko) 2020-07-31

Similar Documents

Publication Publication Date Title
JP2020119532A (ja) 軍事的目的、ドローンまたはロボットに利用されるために一つ以上の以前のバッチをさらに参照してモバイル装置またはiot装置に適用可能なオンラインバッチ正規化、オンデバイス学習、及び連続学習を遂行する方法と装置、並びにそれを利用したテスト方法及びテスト装置
KR102373448B1 (ko) 사람의 주행 데이터를 트레이닝 데이터로서 사용하여 강화 학습을 지원함으로써 맞춤형 경로 플래닝을 수행하는 학습 방법 및 학습 장치
KR102337358B1 (ko) 모바일 장치 또는 소형 네트워크에 적용 가능한 하드웨어를 최적화하는데 사용될 수 있는 roi를 풀링하기 위하여, 마스킹 파라미터를 이용하는 방법 및 장치, 그리고 이를 이용한 테스트 방법 및 테스트 장치
JP2020119533A (ja) 自律走行自動車のレベル4を満たすために要求されるhdマップアップデートに利用される、少なくとも一つのアダプティブロス重み付け値マップを利用したアテンションドリブン・イメージセグメンテーション学習方法及び学習装置、そしてこれを利用したテスティング方法及びテスティング装置
KR20200095356A (ko) 딥 뉴럴 네트워크(deep neural network) 기반의 다중 패치 조합(multiple patch combination)을 이용하여 얼굴을 인식하고, 극도의 상황에서 결함 허용 능력 및 흔들림에 강인한 성질을 향상시키는 방법
KR20200047307A (ko) 유용한 학습 데이터를 취사 선별하기 위한 cnn 기반 학습 방법 및 학습 장치 그리고 이를 이용한 테스트 방법 및 테스트 장치
KR20200095336A (ko) 고 정밀도로 이미지를 분석하기 위한 딥 러닝 네트워크를 사용하기 위해 트레이닝 이미지를 오토 라벨링하는 오토 라벨링 장치의 하이퍼파라미터를 최적화하는 방법 및 이를 이용한 최적화 장치
KR20200027426A (ko) 컨벌루션 뉴럴 네트워크로부터 복수의 출력들의 앙상블을 이용하여 통합된 특징 맵을 제공하기 위한 방법 및 장치
JP6998067B2 (ja) 適応的学習率でニューラルネットワークを学習する方法及び装置、これを利用したテスト方法及び装置
KR102325025B1 (ko) 자율주행 차량 레벨4를 충족하기 위해 영역의 클래스에 따라 모드를 전환하기 위하여 그리드 생성기를 이용하는 뉴럴 네트워크 연산 방법 및 이를 이용한 장치
JP2020119518A (ja) ハードウェア最適化を通じてモバイル装置または高精度の小型ネットワークに使用されるcnnパラメータ量子化を最適化するためにcnnレイヤを変換する方法及び装置
KR20200091323A (ko) 핵심성과지표와 같은 사용자 요구 사항에 적합한 타겟 객체 예측 네트워크를 이용한, cnn 기반의 변동에 강인한 객체 검출기를 학습하는 방법 및 학습 장치, 및 이를 이용한 테스팅 방법 및 테스팅 장치
KR102320995B1 (ko) 객체의 스케일에 따라 모드 전환이 가능한 cnn 기반의 감시용 객체 검출기의 학습 방법 및 학습 장치, 이를 이용한 테스트 방법 및 테스트 장치
JP2020119555A (ja) 極限状況においてフォールトトレランス及びフラクチュエーションロバスト性を向上させるために、ジッタリングが起きたイメージを安定化させるプロセスで生成されたワーピングされたイメージに発生した歪曲を、ganを利用して減らすための学習方法及び学習装置、そしてそれを利用したテスト方法及びテスト装置
KR20200031992A (ko) 멀티 피딩을 적용한 학습 방법 및 학습 장치 그리고 이를 이용한 테스트 방법 및 테스트 장치
KR20200094656A (ko) Gan을 이용해 가상 세계에 대한 가상 데이터로부터 나온 트레이닝 데이터를 생성하여, 자율 주행용 뉴럴 네트워크의 학습 프로세스에 필요한 어노테이션 비용을 줄이는 학습 방법 및 학습 장치, 이를 이용한 테스트 방법 및 테스트 장치
JP2020119531A (ja) 自律走行自動車のレベル4を満たすために必要なhdマップとのコラボレーションを支援するエンベディングロス及びソフトマックスロスを利用して少なくとも一つの車線を有するイメージをセグメンテーションする学習方法及び学習装置、並びにそれを利用したテスト方法及びテスト装置
KR102375278B1 (ko) 사진 스타일 변환을 사용하여 런타임 입력 변환에 의해 실제 세계에서 사용되는 가상 세계에서 학습된 cnn을 허용하기 위한 학습 방법 및 학습 장치, 그리고 이를 이용한 테스트 방법 및 테스트 장치
EP3686809B1 (en) Method and device for transforming cnn layers to optimize cnn parameter quantization to be used for mobile devices or compact networks with high precision via hardware optimization
Peng et al. Modified dragonfly algorithm based multilevel thresholding method for color images segmentation
US10635941B1 (en) Method and device for on-device continual learning of neural network which analyzes input data by optimized sampling of training images, and method and device for testing the neural network for smartphones, drones, vessels, or military purpose
WO2022242471A1 (en) Neural network configuration parameter training and deployment method and apparatus for coping with device mismatch
KR102313605B1 (ko) 자율주행 차량 레벨4를 충족하기 위해 영역의 클래스에 따라 모드를 전환하기 위하여 그리드 생성기를 이용하는 뉴럴 네트워크 연산 방법 및 이를 이용한 장치
KR102326278B1 (ko) 자율주행 차량 레벨4를 충족하기 위해 영역의 클래스에 따라 모드를 전환하기 위하여 그리드 생성기를 이용하는 뉴럴 네트워크 연산 방법 및 이를 이용한 장치
JP2004527172A (ja) 画像品質についてのアルゴリズムのランダムシステムを最適化するための拡張可能なシステム及び方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200108

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210601

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210706

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210709

R150 Certificate of patent or registration of utility model

Ref document number: 6916549

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250