(57)【要約】      （修正有）【課題】ＩＯＴ装置、モバイル装置などに適用可能なオンラインバッチ正規化、オンデバイス学習、及び連続学習のための方法を提供する。【解決手段】コンピューティング装置がコンボリューションレイヤをもって第ｋバッチを取得させ、第ｋバッチに含まれた入力イメージにそれぞれコンボリューション演算を適用して第ｋバッチ用の特徴マップを生成させる段階及びコンピューティング装置がバッチ正規化レイヤをもって、ｋが１である場合に、第ｋバッチ用の特徴マップを参照し、ｋは２からｍ’までの常数である場合に、以前に生成されていた第１ないし第（ｋ−１）バッチの中から選択された以前バッチの少なくとも一部分に含まれる以前特徴マップ及び第ｋバッチ用の特徴マップを参照して、第ｋバッチ用の特徴マップの調整平均及び調整分散を算出させ、第ｋバッチ用の特徴マップにバッチ正規化演算を適用させる段階と、を含む。【選択図】図２
2020119532.tif 000002
【特許請求の範囲】
【請求項１】
それぞれの入力イメージを含むそれぞれのバッチ（Ｂａｔｃｈ）（前記バッチは第１バッチないし第ｍバッチを含む）の特徴値を利用したバッチ正規化（Ｎｏｒｍａｌｉｚａｔｉｏｎ）方法において、
（ａ）コンピューティング装置が、ＣＮＮのコンボリューションレイヤをもって、（ｉ）第ｋバッチ（ｋは１からｍまでの整数である）を取得させ、（ｉｉ）前記第ｋバッチに含まれた前記入力イメージにそれぞれコンボリューション演算を適用して第ｋバッチ用の特徴マップを生成させる段階；及び
（ｂ）前記コンピューティング装置が、前記ＣＮＮのバッチ正規化レイヤをもって、（Ｉ）（ｉ）ｋが１である場合に、前記第ｋバッチ用の特徴マップを参照し、（ｉｉ）ｋは２からｍまでの常数である場合に、以前に生成されていた前記第１ないし第（ｋ−１）バッチの中から選択された以前バッチの少なくとも一部分に含まれる以前特徴マップ及び前記第ｋバッチ用の特徴マップを参照して、前記第ｋバッチ用の特徴マップの一つ以上の調整平均及び一つ以上の調整分散を算出させ、（ＩＩ）前記調整平均及び前記調整分散を参照して、前記第ｋバッチ用の特徴マップにバッチ正規化演算を適用して調整特徴マップを生成させる段階；
を含むバッチ正規化学習方法。
【請求項２】
（ｃ）前記コンピューティング装置が、前記ＣＮＮのアクティベーションレイヤ（Ａｃｔｉｖａｔｉｏｎ  Ｌａｙｅｒ）をもって、前記調整特徴マップに非線形演算を適用して再調整特徴マップを生成させる段階；
をさらに含むことを特徴とする請求項１に記載の学習方法。
【請求項３】
前記ＣＮＮが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第１ないし第ｎコンボリューションブロックを含み、
前記第ｋバッチが取得されると、前記第１ないし前記第ｎコンボリューションブロックを通じて前記第ｋバッチに含まれた前記入力イメージに演算を適用して前記再調整特徴マップが生成され、
ｘが２からｎまでの常数であれば、第（ｘ−１）コンボリューションブロックから出力された第（ｘ−１）再調整特徴マップが第ｘコンボリューションブロックに入力されるようにし、前記第ｘコンボリューションブロックをもって、第ｘ再調整特徴マップを生成させて前記再調整特徴マップが生成されることを特徴とする請求項２に記載の学習方法。
【請求項４】
（ｄ）前記コンピューティング装置が、前記ＣＮＮの出力レイヤをもって、前記第ｎコンボリューションブロックから出力された第ｎ再調整特徴マップに出力演算を適用してＣＮＮ出力値を生成させる段階；及び
（ｅ）前記コンピューティング装置が、ロスレイヤをもって、ＣＮＮ出力値及びそれに対応する原本正解（Ｇｒｏｕｎｄ  Ｔｒｕｔｈ）を参照してロスを生成させ、前記ロスをバックプロパゲーション（ｂａｃｋｐｒｏｐａｇａｔｉｏｎ）して前記ＣＮＮのパラメータを学習させる段階；
をさらに含むことを特徴とする請求項３に記載の学習方法。
【請求項５】
前記バッチ正規化演算は、前記第ｋバッチ用の特徴マップに含まれた値を正規化して前記調整平均及び前記調整分散がそれぞれ第１値及び第２値を有するようにする演算であることを特徴とする請求項１に記載の学習方法。
【請求項６】
前記（ｂ）段階で、
前記バッチ正規化レイヤが、前記第ｋバッチ用の特徴マップの分散を参照して、前記第１ないし前記第（ｋ−１）バッチのうちで前記調整平均及び前記調整分散を生成するために選択される前記以前バッチの数を決定することを特徴とする請求項１に記載の学習方法。
【請求項７】
前記第ｋバッチ用の特徴マップの分散が特定閾値より小さければ、前記バッチ正規化レイヤが（ｉ）前記第ｋバッチ用の特徴マップのみを参照するか、（ｉｉ）前記第ｋバッチ用の特徴マップ及び一つ以上の特定以前バッチ用の特定以前特徴マップを参照して前記調整平均及び前記調整分散を算出し、前記特定の以前バッチは、（ｋ−１）個に対する前記特定の以前バッチの個数の割合が特定の臨界比率以下に決定されるように前記第１ないし前記第（ｋ−１）バッチの中から選択されることを特徴とする請求項１に記載の学習方法。
【請求項８】
前記（ｂ）段階で、
前記バッチ正規化レイヤは、前記第ｋバッチに含まれた前記入力イメージの個数を参照して、（ｋ−１）個に対する特定の以前バッチの個数の割合を決定し、前記調整平均及び前記調整分散を算出するために利用される前記特定の以前バッチは前記第１ないし前記第（ｋ−１）バッチの中から選択されることを特徴とする請求項１に記載の学習方法。
【請求項９】
前記（ｂ）段階で、
前記バッチ正規化レイヤは、（ｉ）第１重み付け値が割り当てられた前記第ｋバッチ用の特徴マップ、及び（ｉｉ）一つ以上の第２重み付け値が割り当てられた、前記第１ないし前記第（ｋ−１）以前バッチのうち少なくとも一部のバッチに含まれる前記以前特徴マップを参照して前記調整平均及び前記調整分散を算出することを特徴とする請求項１に記載の学習方法。
【請求項１０】
前記（ｂ）段階で、
前記バッチ正規化レイヤが、前記第２ないし前記第（ｋ−１）バッチのそれぞれの調整平均及びそれぞれの調整分散が生成される間、それぞれの前記第１ないし前記第（ｋ−１）バッチに対応するそれぞれの前記以前特徴マップが利用されていた回数を参照して、前記第１ないし前記第（ｋ−１）バッチのうちで前記第ｋバッチ用の特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前バッチを選択することを特徴とする請求項１に記載の学習方法。
【請求項１１】
前記（ｂ）段階で、
前記バッチ正規化レイヤが、（ｉ）それぞれの前記第１ないし前記第（ｋ−１）バッチに対応する前記以前特徴マップのそれぞれの平均が第１値を参照して決定される第１特定の範囲内に存在するか否かに関する情報、又は（ｉｉ）それぞれの前記第１ないし前記第（ｋ−１）バッチに対応する前記以前特徴マップのそれぞれの分散が第２値を参照して決定される第２特定の範囲内に存在するか否かに関する情報を参照して、前記第１ないし前記第（ｋ−１）バッチのうちで前記第ｋバッチ用の特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前バッチを選択することを特徴とする請求項１に記載の学習方法。
【請求項１２】
前記（ｂ）段階で、
前記バッチ正規化レイヤは、前記バッチ正規化演算を前記第ｋバッチ用の特徴マップに適用した後、これに線形演算を適用して前記第ｋバッチ用調整特徴マップを生成し、前記線形演算は下記の数式により、
調整特徴マップ＝γ×ＡＦ+β
γはスケーリングパラメータ、βはバイアス（Ｂｉａｓ）パラメータであり、ＡＦはバッチ正規化演算が適用された前記第ｋバッチ用の特徴マップを意味することを特徴とする請求項１に記載の学習方法。
【請求項１３】
それぞれのテストイメージを含むそれぞれのバッチ（前記バッチは第１ないし第ｍバッチを含む）の特徴値を利用したバッチ正規化テスト方法において、
（ａ）（１）学習装置が、ＣＮＮのコンボリューションレイヤをもって、（ｉ）第ｋ学習用バッチ（ｋは１からｍまでの常数である）を取得させ、（ｉｉ）前記第ｋ学習用バッチに含まれたトレーニングイメージにそれぞれコンボリューション演算を適用して第ｋ学習用バッチ用特徴マップを生成させ、（２）前記学習装置が、前記ＣＮＮのバッチ正規化レイヤをもって、（Ｉ）（ｉ）ｋが１である場合に、前記第ｋ学習用バッチ用特徴マップを参照し、（ｉｉ）ｋは２からｍまでの常数である場合に、以前に生成されていた前記第１ないし第（ｋ−１）学習用バッチの中から選択された以前の学習用バッチの少なくとも一部分に含まれる以前の学習用特徴マップ及び前記第ｋ学習用バッチ用特徴マップを参照して、前記第ｋ学習用バッチ用特徴マップの一つ以上の学習用調整平均及び一つ以上の学習用調整分散を算出させ、（ＩＩ）前記学習用調整平均及び前記学習用調整分散を参照して前記第ｋ学習用バッチ用特徴マップにバッチ正規化演算を適用して学習用調整特徴マップを生成させ、（３）前記学習装置が、前記ＣＮＮのアクティベーションレイヤをもって前記学習用調整特徴マップに非線形演算を適用して学習用再調整特徴マップを生成させ、前記ＣＮＮが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第１ないし第ｎコンボリューションブロックを含み、前記第ｋ学習用バッチが取得されると、前記第１ないし前記第ｎコンボリューションブロックを通じて前記第ｋ学習用バッチに含まれた前記トレーニングイメージに演算を適用して前記学習用再調整特徴マップが生成され、ｘが２からｎまでの常数であれば、第（ｘ−１）コンボリューションブロックから出力された第（ｘ−１）学習用再調整特徴マップが第ｘコンボリューションブロックに入力されるようにし、前記第ｘコンボリューションブロックをもって、第ｘ学習用再調整特徴マップを生成させて前記学習用再調整特徴マップが生成され、（４）前記学習装置が、前記ＣＮＮの出力レイヤをもって前記第ｎコンボリューションブロックから出力された第ｎ学習用再調整特徴マップに出力演算を適用して学習用ＣＮＮ出力値を生成させ、（５）前記学習装置が、前記ＣＮＮのロスレイヤをもって前記学習用ＣＮＮ出力値及びそれに対応する原本正解（Ｇｒｏｕｎｄ  Ｔｒｕｔｈ）を参照してロスを生成させ、前記ロスをバックプロパゲーションして前記ＣＮＮのパラメータを学習した状態で、テスト装置が前記ＣＮＮの前記コンボリューションレイヤをもって、（ｉ）第ｋテスト用バッチ（ｋは１からｍ’までの常数である）を取得させ、（ｉｉ）前記第ｋテスト用バッチにそれぞれ含まれたテストイメージにコンボリューション演算を適用して第ｋテスト用バッチ用特徴マップを生成させる段階；
（ｂ）前記テスト装置が、前記ＣＮＮの前記バッチ正規化レイヤをもって、（Ｉ）（ｉ）ｋが１である場合に、前記第ｋテスト用バッチ用特徴マップを参照し、（ｉｉ）ｋは２からｍ’までの常数である場合に、以前に生成されていた前記第１ないし第（ｋ−１）テスト用バッチの中から選択された以前のテスト用バッチの少なくとも一部分に含まれる以前のテスト用特徴マップ及び前記第ｋテスト用バッチ用特徴マップを参照して、前記第ｋテスト用バッチ用特徴マップの一つ以上のテスト用調整平均及び一つ以上のテスト用調整分散を算出させ、（ＩＩ）前記テスト用調整平均及び前記テスト用調整分散を参照して、前記第ｋテスト用バッチ用特徴マップにバッチ正規化演算を適用してテスト用調整特徴マップを生成させる段階；
（ｃ）前記テスト装置が、前記ＣＮＮの前記アクティベーションレイヤをもって前記テスト用調整特徴マップに非線形演算を適用してテスト用再調整特徴マップを生成させ、前記ＣＮＮが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第１ないし第ｎコンボリューションブロックを含み、前記第ｋテスト用バッチが取得されると、前記第１ないし前記第ｎコンボリューションブロックを通じて前記第ｋテスト用バッチに含まれた前記テストイメージに演算を適用して前記テスト用再調整特徴マップが生成され、ｘが２からｎまでの常数であれば、第（ｘ−１）コンボリューションブロックから出力された第（ｘ−１）テスト用再調整特徴マップが第ｘコンボリューションブロックに入力されるようにし、前記第ｘコンボリューションブロックをもって、第ｘテスト用再調整特徴マップを生成させて前記テスト用再調整特徴マップが生成される段階；及び
（ｄ）前記テスト装置が、前記ＣＮＮの前記出力レイヤをもって第ｎコンボリューションブロックから出力された第ｎテスト用再調整特徴マップに出力演算を適用してテスト用ＣＮＮ出力値を生成させる段階；
を含むことを特徴とするテスト方法。
【請求項１４】
それぞれの入力イメージを含むそれぞれのバッチ（Ｂａｔｃｈ）（前記バッチは第１バッチないし第ｍバッチを含む）の特徴値を利用したバッチ正規化コンピューティング装置において、
インストラクションを格納する少なくとも一つのメモリと、
（１）ＣＮＮのコンボリューションレイヤをもって、第ｋバッチ（ｋは１からｍまでの常数である）に含まれた前記入力イメージにそれぞれコンボリューション演算を適用して第ｋバッチ用の特徴マップを生成させるプロセス、及び（２）前記ＣＮＮのバッチ正規化レイヤをもって、（Ｉ）（ｉ）ｋが１である場合に、前記第ｋバッチ用の特徴マップを参照し、（ｉｉ）ｋは２からｍまでの常数である場合に、以前に生成されていた前記第１ないし第（ｋ−１）バッチの中から選択された以前バッチの少なくとも一部分に含まれる以前特徴マップ及び前記第ｋバッチ用の特徴マップを参照して、前記第ｋバッチ用の特徴マップの一つ以上の調整平均及び一つ以上の調整分散を算出させ、（ＩＩ）前記調整平均及び前記調整分散を参照して前記第ｋバッチ用の特徴マップにバッチ正規化演算を適用して調整特徴マップを生成させるプロセスを遂行するための前記インストラクションを実行するように構成された少なくとも一つのプロセッサと、
を含むことを特徴とするコンピューティング装置。
【請求項１５】
前記プロセッサが、（３）前記ＣＮＮのアクティベーションレイヤをもって、前記調整特徴マップに非線形演算を適用して再調整特徴マップを生成させるプロセス；
をさらに遂行することを特徴とする請求項１４に記載のコンピューティング装置。
【請求項１６】
前記ＣＮＮが、前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第１ないし第ｎコンボリューションブロックを含み、
前記第ｋバッチが取得されると、前記第１ないし前記第ｎコンボリューションブロックを通じて前記第ｋバッチに含まれた前記入力イメージに演算を適用して前記再調整特徴マップが生成され、
ｘが２からｎまでの常数であれば、第（ｘ−１）コンボリューションブロックから出力された第（ｘ−１）再調整特徴マップが第ｘコンボリューションブロックに入力されるようにし、前記第ｘコンボリューションブロックをもって、第ｘ再調整特徴マップを生成させて前記再調整特徴マップが生成されることを特徴とする請求項１５に記載のコンピューティング装置。
【請求項１７】
前記プロセッサが、
（４）前記ＣＮＮの出力レイヤをもって、前記第ｎコンボリューションブロックから出力された第ｎ再調整特徴マップに出力演算を適用してＣＮＮ出力値を生成させるプロセス；及び
（５）ロスレイヤをもって、前記ＣＮＮ出力値及びそれに対応する原本正解を参照してロスを生成させ、前記ロスをバックプロパゲーションして前記ＣＮＮのパラメータを学習させるプロセス；
をさらに遂行することを特徴とする請求項１６に記載のコンピューティング装置。
【請求項１８】
前記バッチ正規化演算は、前記第ｋバッチ用の特徴マップに含まれた各値を正規化して前記調整平均及び前記調整分散がそれぞれ第１値及び第２値を有するようにする演算であることを特徴とする請求項１４に記載のコンピューティング装置。
【請求項１９】
前記（２）プロセスで、
前記バッチ正規化レイヤが、前記第ｋバッチ用の特徴マップの分散を参照して、前記第１ないし前記第（ｋ−１）バッチのうちで前記調整平均及び前記調整分散を生成するために選択される前記以前バッチの数を決定することを特徴とする請求項１４に記載のコンピューティング装置。
【請求項２０】
前記第ｋバッチ用の特徴マップの分散が特定閾値より小さければ、前記バッチ正規化レイヤが（ｉ）前記第ｋバッチ用の特徴マップのみを参照するか、（ｉｉ）前記第ｋバッチ用の特徴マップ及び一つ以上の特定の以前バッチ用特定の以前特徴マップを参照して前記調整平均及び前記調整分散を算出し、前記特定の以前バッチは、（ｋ−１）個に対する前記特定の以前バッチの個数の割合が特定の臨界比率以下に決定されるように前記第１ないし前記第（ｋ−１）バッチの中から選択されることを特徴とする請求項１４に記載のコンピューティング装置。
【請求項２１】
前記（２）プロセスで、
前記バッチ正規化レイヤは、前記第ｋバッチに含まれた前記入力イメージの個数を参照して、（ｋ−１）個に対する特定の以前バッチの個数の割合を決定し、前記調整平均及び前記調整分散を算出するために利用される前記特定の以前バッチは前記第１ないし前記第（ｋ−１）バッチの中から選択されることを特徴とする請求項１４に記載のコンピューティング装置。
【請求項２２】
前記（２）プロセスで、
前記バッチ正規化レイヤは、（ｉ）第１重み付け値が割り当てられた前記第ｋバッチ用の特徴マップ、及び（ｉｉ）一つ以上の第２重み付け値が割り当てられた、前記第１ないし前記第（ｋ−１）以前バッチのうち少なくとも一部のバッチに含まれる前記以前特徴マップを参照して前記調整平均及び前記調整分散を算出することを特徴とする請求項１４に記載のコンピューティング装置。
【請求項２３】
前記（２）プロセスで、
前記バッチ正規化レイヤが、前記第２ないし前記第（ｋ−１）バッチのそれぞれの調整平均及びそれぞれの調整分散が生成される間、それぞれの前記第１ないし前記第（ｋ−１）バッチに対応するそれぞれの前記以前特徴マップが利用されていた回数を参照して、前記第１ないし前記第（ｋ−１）バッチのうちで前記第ｋバッチ用の特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前バッチを選択することを特徴とする請求項１４に記載のコンピューティング装置。
【請求項２４】
前記（２）プロセスで、
前記バッチ正規化レイヤが、（ｉ）それぞれの前記第１ないし前記第（ｋ−１）バッチに対応する前記以前特徴マップのそれぞれの平均が第１値を参照して決定される第１特定の範囲内に存在するか否かに関する情報、又は（ｉｉ）それぞれの前記第１ないし前記第（ｋ−１）バッチに対応する前記以前特徴マップのそれぞれの分散が第２値を参照して決定される第２特定の範囲内に存在するか否かに関する情報を参照して、前記第１ないし前記第（ｋ−１）バッチのうちで前記第ｋバッチ用の特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前バッチを選択することを特徴とする請求項１４に記載のコンピューティング装置。
【請求項２５】
前記（２）プロセスで、
前記バッチ正規化レイヤは、前記バッチ正規化演算を前記第ｋバッチ用の特徴マップに適用した後、これに線形演算を適用して前記第ｋバッチ用調整特徴マップを生成し、前記線形演算は下記の数式により、
調整特徴マップ＝γ×ＡＦ+β
γはスケーリングパラメータ、βはバイアス（Ｂｉａｓ）パラメータであり、ＡＦはバッチ正規化演算が適用された前記第ｋバッチ用の特徴マップを意味することを特徴とする請求項１４に記載のコンピューティング装置。
【請求項２６】
それぞれのテストイメージを含むそれぞれのバッチ（前記バッチは第１ないし第ｍバッチを含む）の特徴値を利用したバッチ正規化テスト装置において、
インストラクションを格納する少なくとも一つのメモリと、
（１）学習装置が、ＣＮＮのコンボリューションレイヤをもって、（ｉ）第ｋ学習用バッチ（ｋは１からｍまでの常数である）を取得させ、（ｉｉ）前記第ｋ学習用バッチに含まれたトレーニングイメージにそれぞれコンボリューション演算を適用して第ｋ学習用バッチ用特徴マップを生成させ、（２）前記学習装置が、前記ＣＮＮのバッチ正規化レイヤをもって、（Ｉ）（ｉ）ｋが１である場合に、前記第ｋ学習用バッチ用特徴マップを参照し、（ｉｉ）ｋは２からｍまでの常数である場合に、以前に生成されていた前記第１ないし第（ｋ−１）学習用バッチの中から選択された以前の学習用バッチの少なくとも一部分に含まれる以前の学習用特徴マップ及び前記第ｋ学習用バッチ用特徴マップを参照して、前記第ｋ学習用バッチ用特徴マップの学習用調整平均及び学習用調整分散を算出させ、（ＩＩ）前記学習用調整平均及び前記学習用調整分散を参照して前記第ｋ学習用バッチ用特徴マップにバッチ正規化演算を適用して学習用調整特徴マップを生成させ、（３）前記学習装置が、前記ＣＮＮのアクティベーションレイヤをもって、前記学習用調整特徴マップに非線形演算を適用して学習用再調整特徴マップを生成させ、前記ＣＮＮが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第１ないし第ｎコンボリューションブロックを含み、前記第ｋ学習用バッチが取得されると、前記第１ないし前記第ｎコンボリューションブロックを通じて前記第ｋ学習用バッチに含まれた前記トレーニングイメージに演算を適用して前記学習用再調整特徴マップが生成され、ｘが２からｎまでの常数であれば、第（ｘ−１）コンボリューションブロックから出力された第（ｘ−１）学習用再調整特徴マップが第ｘコンボリューションブロックに入力されるようにし、前記第ｘコンボリューションブロックをもって、第ｘ学習用再調整特徴マップを生成させて前記学習用再調整特徴マップが生成され、（４）前記学習装置が、前記ＣＮＮの出力レイヤをもって、前記第ｎコンボリューションブロックから出力された第ｎ学習用再調整特徴マップに出力演算を適用して学習用ＣＮＮ出力値を生成させ、（５）前記学習装置が、前記ＣＮＮのロスレイヤをもって前記学習用ＣＮＮ出力値、及びそれに対応する原本正解（Ｇｒｏｕｎｄ  Ｔｒｕｔｈ）を参照してロスを生成させ、前記ロスをバックプロパゲーションして前記ＣＮＮのパラメータを学習した状態で、（Ａ）前記ＣＮＮの前記コンボリューションレイヤをもって、前記第ｋテスト用バッチにそれぞれ含まれたテストイメージに前記コンボリューション演算を適用して第ｋテスト用バッチ用特徴マップを生成させるプロセス、（Ｂ）前記ＣＮＮの前記バッチ正規化レイヤをもって、（Ｉ）（ｉ）ｋが１である場合に、前記第ｋテスト用バッチ用特徴マップを参照し、（ｉｉ）ｋは２からｍ’までの常数である場合に、以前に生成されていた前記第１ないし第（ｋ−１）テスト用バッチの中から選択された以前のテスト用バッチの少なくとも一部分に含まれる以前のテスト用特徴マップ及び前記第ｋテスト用バッチ用特徴マップを参照して、前記第ｋテスト用バッチ用特徴マップのテスト用調整平均及びテスト用調整分散を算出させ、���ＩＩ）前記テスト用調整平均及び前記テスト用調整分散を参照して前記第ｋテスト用バッチ用特徴マップにバッチ正規化演算を適用してテスト用調整特徴マップを生成させるプロセス、（Ｃ）前記ＣＮＮの前記アクティベーションレイヤをもって、前記テスト用調整特徴マップに非線形演算を適用してテスト用再調整特徴マップを生成させ、前記ＣＮＮが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第１ないし第ｎコンボリューションブロックを含み、前記第ｋテスト用バッチが取得されると、前記第１ないし前記第ｎコンボリューションブロックを通じて前記第ｋテスト用バッチに含まれた前記テストイメージに前記演算を適用して前記テスト用再調整特徴マップが生成され、ｘが２からｎまでの常数であれば、第（ｘ−１）コンボリューションブロックから出力された第（ｘ−１）テスト用再調整特徴マップが第ｘコンボリューションブロックに入力されるようにし、前記第ｘコンボリューションブロックをもって、第ｘテスト用再調整特徴マップを生成させて前記テスト用再調整特徴マップが生成されるプロセス、及び（Ｄ）前記ＣＮＮの前記出力レイヤをもって、前記第ｎコンボリューションブロックから出力された第ｎテスト用再調整特徴マップに出力演算を適用してテスト用ＣＮＮ出力値を生成させるプロセスを遂行するための前記インストラクションを実行するように構成された少なくとも一つのプロセッサと、
を含むことを特徴とするテスト装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、軍事的目的またはドローンやロボットのような他の装置に利用されるために一つ以上の以前のバッチ（Ｂａｔｃｈ）をさらに参照してＩＯＴ装置、モバイル装置などに適用可能なオンラインバッチ正規化（Ｎｏｒｍａｌｉｚａｔｉｏｎ）、オンデバイス（ｏｎ−ｄｅｖｉｃｅ）学習または連続学習（ｃｏｎｔｉｎｕａｌ  ｌｅａｒｎｉｎｇ）する方法に関し、より詳細には、それぞれの入力イメージを含むそれぞれのバッチ（前記バッチは第１バッチないし第ｍバッチを含む）の特徴値を利用したバッチ正規化を行う前記方法において、（ａ）ＣＮＮのコンボリューションレイヤをもって、（ｉ）第ｋバッチ（ｋは１からｍまでの整数である）を取得させ、（ｉｉ）前記第ｋバッチに含まれた前記入力イメージにそれぞれコンボリューション演算を適用して第ｋバッチ用特徴マップを生成させる段階；及び（ｂ）前記ＣＮＮのバッチ正規化レイヤをもって、（Ｉ）（ｉ）ｋが１である場合に、前記第ｋバッチ用特徴マップを参照し、（ｉｉ）ｋは２からｍまでの整数である場合に、以前に生成されていた前記第１ないし第（ｋ−１）バッチの中から選択された以前のバッチの少なくとも一部分に含まれる以前の特徴マップ及び前記第ｋバッチ用特徴マップを参照して、前記第ｋバッチ用特徴マップの一つ以上の調整平均及び一つ以上の調整分散を算出させ、（ＩＩ）前記調整平均及び前記調整分散を参照して前記第ｋバッチ用特徴マップにバッチ正規化演算を適用して調整特徴マップを生成させる段階；を含む方法及びコンピューティング装置、並びにそれを利用したテスト方法及びテスト装置に関する。
【背景技術】
【０００２】
ディープコンボリューションニューラルネットワーク（Ｄｅｅｐ  Ｃｏｎｖｏｌｕｔｉｏｎ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋｓ；Ｄｅｅｐ  ＣＮＮ）は、ディープラーニング分野で起きた驚くべき発展の核心である。ＣＮＮは、文字の認識問題を解決するために９０年代にすでに使用されていたが、現在のように広く使用されるようになったのは最近の研究結果の賜物である。このようなディープＣＮＮは、２０１２年ＩｍａｇｅＮｅｔイメージ分類コンテストで他の競争相手に勝って優勝を収めた。そして、コンボリューションニューラルネットワークは機械学習（Ｍａｃｈｉｎｅ  Ｌｅａｒｎｉｎｇ）分野で非常に有用なツールとなった。
【０００３】
一方、バッチ正規化とは、トレーニングイメージを含む各ミニバッチの各チャンネルごとにそれぞれの平均及びそれぞれの分散を利用して特徴マップを正規化する方法である。バッチ正規化は、入力の分布がニューラルネットワーク内の各レイヤごとに異なる内部共変量変化（Ｉｎｔｅｒｎａｌ  Ｃｏｖａｒｉａｔｅ  Ｓｈｉｆｔ）という好ましくない現象を防ぐために利用される。バッチ正規化の長所としては、（ｉ）学習速度の加速化、（ｉｉ）ニューラルネットワーク内の全体の重み付け値が均等に学習されること、そして（ｉｉｉ）特徴を増強させることを含む。
【０００４】
従来のバッチ正規化を説明するために、図４を参照することにする。
【０００５】
図４を参照すると、入力イメージを含むｍ個のバッチが存在するとすれば、従来のバッチ正規化は（ｉ）各コンボリューションブロックのコンボリューションレイヤをもって、第ｋバッチ（ｋは１からｍまでの整数である）に含まれた入力イメージにコンボリューション演算を適用して第ｋバッチ用特徴マップを生成させ、（ｉｉ）各コンボリューションブロックのバッチ正規化レイヤをもって、第ｋバッチ用特徴マップの一つ以上の平均及び一つ以上の分散を生成させ、（ｉｉｉ）各コンボリューションブロックのバッチ正規化レイヤをもって、平均及び分散がそれぞれ特定第１値及び特定第２値になるように第ｋバッチ用特徴マップを正規化させる。すなわち、特定バッチのバッチ正規化は、特定バッチ用特徴マップの平均及び分散のみを利用して遂行される。
【０００６】
各バッチのサイズがあまりに小さく設定されると、それぞれのバッチ用特徴マップの値が正規分布を伴わないであろう。したがって、従来のバッチ正規化の性能は低下し、これは従来のバッチ正規化の決定的な短所である。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、上述した問題点を解決することを目的とする。
【０００８】
本発明は、第ｋバッチのサイズが小さくても第１ないし第（ｋ−１）バッチのうち少なくとも一部のバッチに含まれる以前の特徴マップを参照して第ｋバッチのバッチ正規化が効果的に行われるようにするための方法を提供することを他の目的とする。
【０００９】
本発明は、各バッチに関する情報を参照して、以前のバッチの中からバッチ正規化のために利用される特定の以前のバッチを選択する方法を提供することを他の目的とする。
【課題を解決するための手段】
【００１０】
前記のような本発明の目的を達成し、後述する本発明の特徴的な効果を実現するための本発明の特徴的な構成は以下の通りである。
【００１１】
本発明の一態様によると、それぞれの入力イメージを含むそれぞれのバッチ（Ｂａｔｃｈ）（前記バッチは第１バッチないし第ｍバッチを含む）の特徴値を利用したバッチ正規化（Ｎｏｒｍａｌｉｚａｔｉｏｎ）方法において、（ａ）コンピューティング装置が、ＣＮＮのコンボリューションレイヤをもって、（ｉ）第ｋバッチ（ｋは１からｍまでの整数である）を取得させ、（ｉｉ）前記第ｋバッチに含まれた前記入力イメージにそれぞれコンボリューション演算を適用して第ｋバッチ用特徴マップを生成させる段階；及び（ｂ）前記コンピューティング装置が、前記ＣＮＮのバッチ正規化レイヤをもって、（Ｉ）（ｉ）ｋが１である場合に、前記第ｋバッチ用特徴マップを参照し、（ｉｉ）ｋは２からｍまでの整数である場合に、以前に生成されていた前記第１ないし第（ｋ−１）バッチの中から選択された以前のバッチの少なくとも一部分に含まれる以前の特徴マップ及び前記第ｋバッチ用特徴マップを参照して、前記第ｋバッチ用特徴マップの一つ以上の調整平均及び一つ以上の調整分散を算出させ、（ＩＩ）前記調整平均及び前記調整分散を参照して前記第ｋバッチ用特徴マップにバッチ正規化演算を適用して調整特徴マップを生成させる段階；を含むバッチ正規化学習方法が提供される。
【００１２】
一実施例において、（ｃ）前記コンピューティング装置が、前記ＣＮＮのアクティベーションレイヤ（Ａｃｔｉｖａｔｉｏｎ  Ｌａｙｅｒ）をもって、前記調整特徴マップに非線形演算を適用して再調整特徴マップを生成させる段階；をさらに含む。
【００１３】
一実施例において  前記ＣＮＮが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第１ないし第ｎコンボリューションブロックを含み、前記第ｋバッチが取得されると、前記第１ないし前記第ｎコンボリューションブロックを通じて前記第ｋバッチに含まれた前記入力イメージに演算を適用して前記再調整特徴マップが生成され、ｘが２からｎまでの整数であれば、第（ｘ−１）コンボリューションブロックから出力された第（ｘ−１）再調整特徴マップが第ｘコンボリューションブロックに入力されるようにし、前記第ｘコンボリューションブロックをもって、第ｘ再調整特徴マップを生成させて前記再調整特徴マップが生成される。
【００１４】
一実施例において、（ｄ）前記コンピューティング装置が、前記ＣＮＮの出力レイヤをもって、前記第ｎコンボリューションブロックから出力された第ｎ再調整特徴マップに出力演算を適用してＣＮＮ出力値を生成させる段階；及び（ｅ）前記コンピューティング装置が、ロスレイヤをもってＣＮＮ出力値及びそれに対応する原本正解（Ｇｒｏｕｎｄ  Ｔｒｕｔｈ）を参照してロスを生成させ、前記ロスをバックプロパゲーション（ｂａｃｋｐｒｏｐａｇａｔｉｏｎ）して前記ＣＮＮのパラメータを学習させる段階；をさらに含む。
【００１５】
一実施例において、前記バッチ正規化演算は、前記第ｋバッチ用特徴マップに含まれた値を正規化して前記調整平均及び前記調整分散がそれぞれ第１値及び第２値を有するようにする演算である。
【００１６】
一実施例において、前記（ｂ）段階で、前記バッチ正規化レイヤが、前記第ｋバッチ用特徴マップの分散を参照して、前記第１ないし前記第（ｋ−１）バッチのうちで前記調整平均及び前記調整分散を生成するために選択される前記以前のバッチの数を決定する。
【００１７】
一実施例において、前記第ｋバッチ用特徴マップの分散が特定閾値より小さければ、前記バッチ正規化レイヤが（ｉ）前記第ｋバッチ用特徴マップのみを参照するか、（ｉｉ）前記第ｋバッチ用特徴マップ及び一つ以上の特定以前のバッチ用の特定以前の特徴マップを参照して前記調整平均及び前記調整分散を算出し、前記特定の以前のバッチは、（ｋ−１）個に対する前記特定の以前のバッチの個数の割合が特定の臨界比率以下に決定されるように前記第１ないし前記第（ｋ−１）バッチの中から選択される。
【００１８】
一実施例において、前記（ｂ）段階で、前記バッチ正規化レイヤは前記第ｋバッチに含まれた前記入力イメージの個数を参照して、（ｋ−１）個に対する特定の以前のバッチの個数の割合を決定し、前記調整平均及び前記調整分散を算出するために利用される前記特定の以前のバッチは前記第１ないし前記第（ｋ−１）バッチの中から選択される。
【００１９】
一実施例において、前記（ｂ）段階で、前記バッチ正規化レイヤは、（ｉ）第１重み付け値が割り当てられた前記第ｋバッチ用特徴マップ、及び（ｉｉ）一つ以上の第２重み付け値が割り当てられた、前記第１ないし前記第（ｋ−１）以前のバッチのうち少なくとも一部のバッチに含まれる前記以前の特徴マップを参照して前記調整平均及び前記調整分散を算出する。
【００２０】
一実施例において、前記（ｂ）段階で、前記バッチ正規化レイヤが、前記第２ないし前記第（ｋ−１）バッチのそれぞれの調整平均及びそれぞれの調整分散が生成される間、それぞれの前記第１ないし前記第（ｋ−１）バッチに対応するそれぞれの前記以前の特徴マップが利用されていた回数を参照して、前記第１ないし前記第（ｋ−１）バッチのうちで前記第ｋバッチ用特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前のバッチを選択する。
【００２１】
一実施例において、前記（ｂ）段階で、前記バッチ正規化レイヤが、（ｉ）それぞれの前記第１ないし前記第（ｋ−１）バッチに対応する前記以前の特徴マップのそれぞれの平均が第１値を参照して決定される第１特定の範囲内に存在するか否かに関する情報、又は（ｉｉ）それぞれの前記第１ないし前記第（ｋ−１）バッチに対応する前記以前の特徴マップのそれぞれの分散が第２値を参照して決定される第２特定の範囲内に存在するか否かに関する情報を参照して、前記第１ないし前記第（ｋ−１）バッチのうちで前記第ｋバッチ用特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前のバッチを選択する。
【００２２】
一実施例において、前記（ｂ）段階で、前記バッチ正規化レイヤは、前記バッチ正規化演算を前記第ｋバッチ用特徴マップに適用した後、これに線形演算を適用して前記第ｋバッチ用調整特徴マップを生成し、前記線形演算は下記の数式により、
調整特徴マップ＝γ×ＡＦ+β
γはスケーリングパラメータ、βはバイアス（Ｂｉａｓ）パラメータであり、ＡＦはバッチ正規化演算が適用された前記第ｋバッチ用特徴マップを意味する。
【００２３】
本発明の他の態様によると、それぞれのテストイメージを含むそれぞれのバッチ（前記バッチは第１ないし第ｍバッチを含む）の特徴値を利用したバッチ正規化テスト方法において、（ａ）（１）学習装置が、ＣＮＮのコンボリューションレイヤをもって、（ｉ）第ｋ学習用バッチ（ｋは１からｍまでの整数である）を取得させ、（ｉｉ）前記第ｋ学習用バッチに含まれたトレーニングイメージにそれぞれコンボリューション演算を適用して第ｋ学習用バッチ用特徴マップを生成させ、（２）前記学習装置が、前記ＣＮＮのバッチ正規化レイヤをもって、（Ｉ）（ｉ）ｋが１である場合に、前記第ｋ学習用バッチ用特徴マップを参照し、（ｉｉ）ｋは２からｍまでの整数である場合に、以前に生成されていた前記第１ないし第（ｋ−１）学習用バッチの中から選択された以前の学習用バッチの少なくとも一部分に含まれる以前の学習用特徴マップ及び前記第ｋ学習用バッチ用特徴マップを参照して、前記第ｋ学習用バッチ用特徴マップの一つ以上の学習用調整平均及び一つ以上の学習用調整分散を算出させ、（ＩＩ）前記学習用調整平均及び前記学習用調整分散を参照して前記第ｋ学習用バッチ用特徴マップにバッチ正規化演算を適用して学習用調整特徴マップを生成させ、（３）前記学習装置が、前記ＣＮＮのアクティベーションレイヤをもって前記学習用調整特徴マップに非線形演算を適用して学習用再調整特徴マップを生成させ、前記ＣＮＮが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第１ないし第ｎコンボリューションブロックを含み、前記第ｋ学習用バッチが取得されると、前記第１ないし前記第ｎコンボリューションブロックを通じて前記第ｋ学習用バッチに含まれた前記トレーニングイメージに演算を適用して前記学習用再調整特徴マップが生成され、ｘが２からｎまでの整数であれば、第（ｘ−１）コンボリューションブロックから出力された第（ｘ−１）学習用再調整特徴マップが第ｘコンボリューションブロックに入力されるようにし、前記第ｘコンボリューションブロックをもって、第ｘ学習用再調整特徴マップを生成させて前記学習用再調整特徴マップが生成され、（４）前記学習装置が、前記ＣＮＮの出力レイヤをもって前記第ｎコンボリューションブロックから出力された第ｎ学習用再調整特徴マップに出力演算を適用して学習用ＣＮＮ出力値を生成させ、（５）前記学習装置が、前記ＣＮＮのロスレイヤをもって前記学習用ＣＮＮ出力値及びそれに対応する原本正解（Ｇｒｏｕｎｄ  Ｔｒｕｔｈ）を参照してロスを生成させ、前記ロスをバックプロパゲーションして前記ＣＮＮのパラメータを学習した状態で、テスト装置が前記ＣＮＮの前記コンボリューションレイヤをもって、（ｉ）第ｋテスト用バッチ（ｋは１からｍ’までの整数である）を取得させ、（ｉｉ）前記第ｋテスト用バッチにそれぞれ含まれたテストイメージにコンボリューション演算を適用して第ｋテスト用バッチ用特徴マップを生成させる段階；（ｂ）前記テスト装置が、前記ＣＮＮの前記バッチ正規化レイヤをもって、（Ｉ）（ｉ）ｋが１である場合に、前記第ｋテスト用バッチ用特徴マップを参照し、（ｉｉ）ｋは２からｍ’までの整数である場合に、以前に���成されていた前記第１ないし第（ｋ−１）テスト用バッチの中から選択された以前のテスト用バッチの少なくとも一部分に含まれる以前のテスト用特徴マップ及び前記第ｋテスト用バッチ用特徴マップを参照して、前記第ｋテスト用バッチ用特徴マップの一つ以上のテスト用調整平均及び一つ以上のテスト用調整分散を算出させ、（ＩＩ）前記テスト用調整平均及び前記テスト用調整分散を参照して、前記第ｋテスト用バッチ用特徴マップにバッチ正規化演算を適用してテスト用調整特徴マップを生成させる段階；（ｃ）前記テスト装置が、前記ＣＮＮの前記アクティベーションレイヤをもって前記テスト用調整特徴マップに非線形演算を適用してテスト用再調整特徴マップを生成させ、前記ＣＮＮが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第１ないし第ｎコンボリューションブロックを含み、前記第ｋテスト用バッチが取得されると、前記第１ないし前記第ｎコンボリューションブロックを通じて前記第ｋテスト用バッチに含まれた前記テストイメージに演算を適用して前記テスト用再調整特徴マップが生成され、ｘが２からｎまでの整数であれば、第（ｘ−１）コンボリューションブロックから出力された第（ｘ−１）テスト用再調整特徴マップが第ｘコンボリューションブロックに入力されるようにし、前記第ｘコンボリューションブロックをもって、第ｘテスト用再調整特徴マップを生成させて前記テスト用再調整特徴マップが生成される段階；及び（ｄ）前記テスト装置が、前記ＣＮＮの前記出力レイヤをもって第ｎコンボリューションブロックから出力された第ｎテスト用再調整特徴マップに出力演算を適用してテスト用ＣＮＮ出力値を生成させる段階；を含むことを特徴とするテスト方法が提供される。
【００２４】
本発明のまた他の態様によると、それぞれの入力イメージを含むそれぞれのバッチ（Ｂａｔｃｈ）（前記バッチは第１バッチないし第ｍバッチを含む）の特徴値を利用したバッチ正規化コンピューティング装置において、インストラクションを格納する少なくとも一つのメモリと、（１）ＣＮＮのコンボリューションレイヤをもって、第ｋバッチ（ｋは１からｍまでの整数である）に含まれた前記入力イメージにそれぞれコンボリューション演算を適用して第ｋバッチ用特徴マップを生成させるプロセス、及び（２）前記ＣＮＮのバッチ正規化レイヤをもって、（Ｉ）（ｉ）ｋが１である場合に、前記第ｋバッチ用特徴マップを参照し、（ｉｉ）ｋは２からｍまでの整数である場合に、以前に生成されていた前記第１ないし第（ｋ−１）バッチの中から選択された以前のバッチの少なくとも一部分に含まれる以前の特徴マップ及び前記第ｋバッチ用特徴マップを参照して、前記第ｋバッチ用特徴マップの一つ以上の調整平均及び一つ以上の調整分散を算出させ、（ＩＩ）前記調整平均及び前記調整分散を参照して前記第ｋバッチ用特徴マップにバッチ正規化演算を適用して調整特徴マップを生成させるプロセスを遂行するための前記インストラクションを実行するように構成された少なくとも一つのプロセッサと、を含むことを特徴とするテスト方法が提供される。
【００２５】
一実施例において、前記プロセッサが、（３）前記ＣＮＮのアクティベーションレイヤをもって、前記調整特徴マップに非線形演算を適用して再調整特徴マップを生成させるプロセス；をさらに遂行する。
【００２６】
一実施例において、前記ＣＮＮが、前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第１ないし第ｎコンボリューションブロックを含み、前記第ｋバッチが取得されると、前記第１ないし前記第ｎコンボリューションブロックを通じて前記第ｋバッチに含まれた前記入力イメージに演算を適用して前記再調整特徴マップが生成され、ｘが２からｎまでの整数であれば、第（ｘ−１）コンボリューションブロックから出力された第（ｘ−１）再調整特徴マップが第ｘコンボリューションブロックに入力されるようにし、前記第ｘコンボリューションブロックをもって、第ｘ再調整特徴マップを生成させて前記再調整特徴マップが生成される。
【００２７】
一実施例において、前記プロセッサが、（４）前記ＣＮＮの出力レイヤをもって、前記第ｎコンボリューションブロックから出力された第ｎ再調整特徴マップに出力演算を適用してＣＮＮ出力値を生成させるプロセス；及び（５）ロスレイヤをもって、前記ＣＮＮ出力値及びそれに対応する原本正解を参照してロスを生成させ、前記ロスをバックプロパゲーションして前記ＣＮＮのパラメータを学習させるプロセス；をさらに遂行する。
【００２８】
一実施例において、前記バッチ正規化演算は、前記第ｋバッチ用特徴マップに含まれた各値を正規化して前記調整平均及び前記調整分散がそれぞれ第１値及び第２値を有するようにする演算である。
【００２９】
一実施例において、前記（２）プロセスで、前記バッチ正規化レイヤが、前記第ｋバッチ用特徴マップの分散を参照して、前記第１ないし前記第（ｋ−１）バッチのうちで前記調整平均及び前記調整分散を生成するために選択される前記以前のバッチの数を決定する。
【００３０】
一実施例において、前記第ｋバッチ用特徴マップの分散が特定閾値より小さければ、前記バッチ正規化レイヤが（ｉ）前記第ｋバッチ用特徴マップのみを参照するか、（ｉｉ）前記第ｋバッチ用特徴マップ及び一つ以上の特定以前のバッチ用の特定以前の特徴マップを参照して前記調整平均及び前記調整分散を算出し、前記特定の以前のバッチは、（ｋ−１）個に対する前記特定の以前のバッチの個数の割合が特定の臨界比率以下に決定されるように前記第１ないし前記第（ｋ−１）バッチの中から選択される。
【００３１】
一実施例において、前記（２）プロセスで、前記バッチ正規化レイヤは、前記第ｋバッチに含まれた前記入力イメージの個数を参照して、（ｋ−１）個に対する特定の以前のバッチの個数の割合を決定し、前記調整平均及び前記調整分散を算出するために利用される前記特定の以前のバッチは前記第１ないし前記第（ｋ−１）バッチの中から選択される。
【００３２】
一実施例において、前記（２）プロセスで、前記バッチ正規化レイヤは、（ｉ）第１重み付け値が割り当てられた前記第ｋバッチ用特徴マップ、及び（ｉｉ）一つ以上の第２重み付け値が割り当てられた、前記第１ないし前記第（ｋ−１）以前のバッチのうち少なくとも一部のバッチに含まれる前記以前の特徴マップを参照して前記調整平均及び前記調整分散を算出する。
【００３３】
一実施例において、前記（２）プロセスで、前記バッチ正規化レイヤが、前記第２ないし前記第（ｋ−１）バッチのそれぞれの調整平均及びそれぞれの調整分散が生成される間、それぞれの前記第１ないし前記第（ｋ−１）バッチに対応するそれぞれの前記以前の特徴マップが利用されていた回数を参照して、前記第１ないし前記第（ｋ−１）バッチのうちで前記第ｋバッチ用特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前のバッチを選択する。
【００３４】
一実施例において、前記（２）プロセスで、前記バッチ正規化レイヤが、（ｉ）それぞれの前記第１ないし前記第（ｋ−１）バッチに対応する前記以前の特徴マップのそれぞれの平均が第１値を参照して決定される第１特定の範囲内に存在するか否かに関する情報、又は（ｉｉ）それぞれの前記第１ないし前記第（ｋ−１）バッチに対応する前記以前の特徴マップのそれぞれの分散が第２値を参照して決定される第２特定の範囲内に存在するか否かに関する情報を参照して、前記第１ないし前記第（ｋ−１）バッチのうちで前記第ｋバッチ用特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前のバッチを選択する。
【００３５】
一実施例において、前記（２）プロセスで、前記バッチ正規化レイヤは、前記バッチ正規化演算を前記第ｋバッチ用特徴マップに適用した後、これに線形演算を適用して前記第ｋバッチ用調整特徴マップを生成し、前記線形演算は下記の数式により、
調整特徴マップ＝γ×ＡＦ+β
γはスケーリングパラメータ、βはバイアス（Ｂｉａｓ）パラメータであり、ＡＦはバッチ正規化演算が適用された前記第ｋバッチ用特徴マップを意味する。
【００３６】
本発明のまた他の態様によると、それぞれのテストイメージを含むそれぞれのバッチ（前記バッチは第１ないし第ｍバッチを含む）の特徴値を利用したバッチ正規化テスト装置において、インストラクションを格納する少なくとも一つのメモリと、（１）学習装置が、ＣＮＮのコンボリューションレイヤをもって、（ｉ）第ｋ学習用バッチ（ｋは１からｍまでの整数である）を取得させ、（ｉｉ）前記第ｋ学習用バッチに含まれたトレーニングイメージにそれぞれコンボリューション演算を適用して第ｋ学習用バッチ用特徴マップを生成させ、（２）前記学習装置が、前記ＣＮＮのバッチ正規化レイヤをもって、（Ｉ）（ｉ）ｋが１である場合に、前記第ｋ学習用バッチ用特徴マップを参照し、（ｉｉ）ｋは２からｍまでの整数である場合に、以前に生成されていた前記第１ないし第（ｋ−１）学習用バッチの中から選択された以前の学習用バッチの少なくとも一部分に含まれる以前の学習用特徴マップ及び前記第ｋ学習用バッチ用特徴マップを参照して、前記第ｋ学習用バッチ用特徴マップの学習用調整平均及び学習用調整分散を算出させ、（ＩＩ）前記学習用調整平均及び前記学習用調整分散を参照して前記第ｋ学習用バッチ用特徴マップにバッチ正規化演算を適用して学習用調整特徴マップを生成させ、（３）前記学習装置が、前記ＣＮＮのアクティベーションレイヤをもって、前記学習用調整特徴マップに非線形演算を適用して学習用再調整特徴マップを生成させ、前記ＣＮＮが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第１ないし第ｎコンボリューションブロックを含み、前記第ｋ学習用バッチが取得されると、前記第１ないし前記第ｎコンボリューションブロックを通じて前記第ｋ学習用バッチに含まれた前記トレーニングイメージに演算を適用して前記学習用再調整特徴マップが生成され、ｘが２からｎまでの整数であれば、第（ｘ−１）コンボリューションブロックから出力された第（ｘ−１）学習用再調整特徴マップが第ｘコンボリューションブロックに入力されるようにし、前記第ｘコンボリューションブロックをもって、第ｘ学習用再調整特徴マップを生成させて前記学習用再調整特徴マップが生成され、（４）前記学習装置が、前記ＣＮＮの出力レイヤをもって、前記第ｎコンボリューションブロックから出力された第ｎ学習用再調整特徴マップに出力演算を適用して学習用ＣＮＮ出力値を生成させ、（５）前記学習装置が、前記ＣＮＮのロスレイヤをもって前記学習用ＣＮＮ出力値、及びそれに対応する原本正解（Ｇｒｏｕｎｄ  Ｔｒｕｔｈ）を参照してロスを生成させ、前記ロスをバックプロパゲーションして前記ＣＮＮのパラメータを学習した状態で、（Ａ）前記ＣＮＮの前記コンボリューションレイヤをもって、前記第ｋテスト用バッチにそれぞれ含まれたテストイメージに前記コンボリューション演算を適用して第ｋテスト用バッチ用特徴マップを生成させるプロセス、（Ｂ）前記ＣＮＮの前記バッチ正規化レイヤをもって、（Ｉ）（ｉ）ｋが１である場合に、前記第ｋテスト用バッチ用特徴マップを参照し、（ｉｉ）ｋは２からｍ’までの整数である場合に、以前に生成されていた前記第１ないし第（ｋ−１）テスト用バッチの���から選択された以前のテスト用バッチの少なくとも一部分に含まれる以前のテスト用特徴マップ及び前記第ｋテスト用バッチ用特徴マップを参照して、前記第ｋテスト用バッチ用特徴マップのテスト用調整平均及びテスト用調整分散を算出させ、（ＩＩ）前記テスト用調整平均及び前記テスト用調整分散を参照して前記第ｋテスト用バッチ用特徴マップにバッチ正規化演算を適用してテスト用調整特徴マップを生成させるプロセス、（Ｃ）前記ＣＮＮの前記アクティベーションレイヤをもって、前記テスト用調整特徴マップに非線形演算を適用してテスト用再調整特徴マップを生成させ、前記ＣＮＮが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第１ないし第ｎコンボリューションブロックを含み、前記第ｋテスト用バッチが取得されると、前記第１ないし前記第ｎコンボリューションブロックを通じて前記第ｋテスト用バッチに含まれた前記テストイメージに前記演算を適用して前記テスト用再調整特徴マップが生成され、ｘが２からｎまでの整数であれば、第（ｘ−１）コンボリューションブロックから出力された第（ｘ−１）テスト用再調整特徴マップが第ｘコンボリューションブロックに入力されるようにし、前記第ｘコンボリューションブロックをもって、第ｘテスト用再調整特徴マップを生成させて前記テスト用再調整特徴マップが生成されるプロセス、及び（Ｄ）前記ＣＮＮの前記出力レイヤをもって、前記第ｎコンボリューションブロックから出力された第ｎテスト用再調整特徴マップに出力演算を適用してテスト用ＣＮＮ出力値を生成させるプロセスを遂行するための前記インストラクションを実行するように構成された少なくとも一つのプロセッサと、を含むことを特徴とするテスト装置が提供される。
【発明の効果】
【００３７】
本発明によると、学習用入力イメージを複数個のバッチに分けて学習させる際に、それぞれのバッチのサイズが小さくても最適化されたバッチ正規化の結果を得ることができる効果がある。
【００３８】
また、本発明によると、それぞれのバッチに関する情報を参照してそれぞれのバッチに対応するフィーチャーマップを参照するか否かを決定することにより、最適化されたバッチ正規化の結果を得ることができる効果がある。
【図面の簡単な説明】
【００３９】
本発明の実施例の説明に利用されるために添付された以下の図面は、本発明の実施例のうち単に一部であるにすぎず、本発明の属する技術分野において通常の知識を有する者（以下「通常の技術者」）にとっては、発明的作業が行われずにこれらの図面に基づいて他の各図面が得られ得る。
【図１】本発明による以前のバッチをさらに参照してバッチ正規化を遂行するコンピューティング装置の構成を示したものである。
【図２】本発明によるＣＮＮの構成を示したものである。
【図３】本発明の一実施例によるバッチ正規化のプロセスを示したものである。
【図４】従来のバッチ正規化プロセスを示したものである。
【発明を実施するための形態】
【００４０】
後述する本発明に関する詳細な説明は、本発明が実施され得る特定の実施例を例示として示す添付図面を参照する。これらの実施例は、当業者が本発明を実施することができるように十分詳細に説明される。本発明の多様な実施例は互いに異なるが、相互に排他的である必要はないことが理解されるべきである。例えば、ここに記載されている特定の形状、構造及び特性は、一実施例に関連して本発明の精神及び範囲を逸脱せず、かつ他の実施例で具現され得る。また、それぞれの開示された実施例内の個別の構成要素の位置又はバッチは、本発明の精神及び範囲を逸脱せず、かつ変更され得ることが理解されるべきである。したがって、後述の詳細な説明は、限定的な意味として受け取ろうとするものではなく、本発明の範囲は適切に説明されるのであれば、その請求項が主張することと均等な全ての範囲とともに添付された請求項によってのみ限定される。図面において類似の参照符号は、様々な側面にわたって同一であるか、又は類似の機能を指す。
【００４１】
また、本発明の詳細な説明及び各請求項にわたって、「含む」という単語及びの変形は、他の技術的各特徴、各付加物、構成要素又は段階を除外することを意図したものではない。通常の技術者にとって本発明の他の各目的、長所及び各特性が、一部は本説明書から、また一部は本発明の実施から明らかになるであろう。以下の例示及び図面は実例として提供され、本発明を限定することを意図したものではない。
【００４２】
本発明で言及している各種イメージは、舗装または非舗装道路関連のイメージを含み得、この場合、道路環境で登場し得る物体（例えば、自動車、人、動物、植物、物、建物、飛行機やドローンのような飛行体、その他の障害物）を想定し得るが、必ずしもこれに限定されるものではなく、本発明で言及している各種イメージは、道路と関係のないイメージ（例えば、非舗装道路、路地、空き地、海、湖、川、山、森、砂漠、空、室内と関連したイメージ）でもあり得、この場合、非舗装道路、路地、空き地、海、湖、川、山、森、砂漠、空、室内環境で登場し得る物体（例えば、自動車、人、動物、植物、物、建物、飛行機やドローンのような飛行体、その他の障害物）を想定し得るが、必ずしもこれに限定されるわけではない。
【００４３】
以下、本発明の属する技術分野において通常の知識を有する者が本発明を容易に実施させるために、本発明の好ましい実施例について、添付された図面を参照して詳細に説明することにする。
【００４４】
図１は、本発明によるコンピューティング装置の構成を示したものである。図１を参照すると、コンピューティング装置１００は、ＣＮＮ２００を含むことができる。ＣＮＮ２００の様々なデータ入出力過程及び演算過程は、それぞれ通信部１１０及びプロセッサ１２０によって行われ得る。ただし、図１では前記通信部１１０及び前記プロセッサ１２０の具体的な連結関係を省略した。また、前記学習装置は、上述したプロセスを遂行するためのコンピュータ読取り可能なインストラクションを格納することができるメモリ１１５をさらに含むことができる。一例として、プロセッサ、メモリ、媒体（ｍｅｄｉｕｍ）等が一つのプロセッサとして統合されて機能することもできる。
【００４５】
図２は、本発明による前記ＣＮＮ２００の構成を示したものである。図２を参照すると、前記ＣＮＮ２００は、（ｉ）コンボリューションレイヤ２１１、バッチ正規化（ｂａｔｃｈ  ｎｏｒｍａｌｉｚａｔｉｏｎ）レイヤ２１２及びアクティベーション（ａｃｔｉｖａｔｉｏｎ）レイヤ２１３を含む各ｎ個のコンボリューションブロック２１０−１ないしブロック２１０−ｎ、（ｉｉ）出力レイヤ２２０及び（ｉｉｉ）ロスレイヤ２３０を含む。
【００４６】
したがって、通信部１１０によって入力映像が取得されると、前記入力イメージは前記第１ないし前記第ｎコンボリューションブロックを通じて演算されて再調整特徴マップが生成され、前記生成された再調整特徴マップは、前記出力レイヤ２２０に伝達される。
【００４７】
具体的に、第１コンボリューションブロック２１０−１を例に挙げて説明すると、前記第１コンボリューションブロック２１０−１に含まれた前記コンボリューションレイヤ２１１は、前記入力イメージにコンボリューション演算を適用して特徴マップを生成する。また、前記バッチ正規化レイヤ２１２は、前記コンボリューションレイヤ２１１から出力された前記特徴マップにバッチ正規化演算を適用して調整特徴マップを生成する。その後、前記アクティベーションレイヤ２１３は、前記調整特徴マップに非線形演算を適用して前記再調整特徴マップを生成する。前記バッチ正規化演算に関しては、追って図３を参照して詳しく説明することにする。前記アクティベーションレイヤ２１３によって遂行される前記非線形演算は、ＲｅＬＵ演算であり得るが、これに限定されるわけではない。一方、前記アクティベーションレイヤ２１３が必須として求められるわけではないこともある。
【００４８】
前記第１コンボリューションブロック２１０−１によって前記第１再調整特徴マップが作成された後、前記第１再調整特徴マップは、第２コンボリューションブロック２１０−２に伝達され、前記第１コンボリューションブロック２１０−１と同じ方式で前記コンボリューション演算、前記バッチ正規化演算及び前記非線形演算が前記伝達された第１再調整特徴マップに適用される。これらの演算を繰り返して、前記第ｎコンボリューションブロック２１０−ｎによって最終的に第ｎ再調整特徴マップが生成される。
【００４９】
この後、前記出力レイヤ２２０は、前記第ｎ再調整特徴マップに出力演算を適用してＣＮＮ出力値を生成する。前記出力演算は、セグメンテーション、クラスタリング（Ｃｌｕｓｔｅｒｉｎｇ）、物体検出等のための演算となり得るが、これに限られるわけではない。前記出力レイヤ２２０によって前記ＣＮＮ出力値が生成された後、前記ロスレイヤ２３０は、前記ＣＮＮ出力値及びそれに対応する原本正解を参照してロスを生成する。前記ロスは、バックプロパゲーション（ｂａｃｋｐｒｏｐａｇａｔｉｏｎ）されて前記出力レイヤ２２０、バッチ正規化レイヤ２１２及びコンボリューションレイヤ２１１のうち少なくとも一部のパラメータを学習するのに利用される。
【００５０】
前記ＣＮＮ２００の構成を検討してみたところ、具体的に、前記バッチ正規化演算がどのように遂行されるのかを以下に説明することにする。
【００５１】
図３は、本発明の一実施例による前記バッチ正規化演算を示したものである。図３を参照すると、本発明による前記バッチ正規化演算は、（ｉ）各コンボリューションブロックの前記コンボリューションレイヤ２１１で前記第ｋバッチに含まれた前記入力イメージに前記コンボリューション演算を適用して第ｋバッチ用特徴マップを生成し、（ｉｉ）（１）前記第ｋバッチ用特徴マップ、及びさらに（２）第１ないし第（ｋ−１）バッチである以前バッチ用の以前特徴マップを参照して前記第ｋバッチ用特徴マップの一つ以上の調整平均及び一つ以上の調整分散を算出し、（ｉｉｉ）前記調整平均及び前記調整分散がそれぞれ第１値及び第２値になるように前記第ｋバッチ用の特徴マップを正規化するための演算である。もちろんｋは１である場合に、前記第１バッチ用特徴マップを正規化するために前記第１バッチ用特徴マップのみが利用され得る。一方、前記調整平均及び前記調整分散は、前記特徴マップに含まれている一つのチャンネルあたり一つずつ生成され得る。
【００５２】
基本的に、各バッチのサイズがあまりに小さいと、各前記バッチ用特徴マップの値が正規分布を伴うものと仮定することができないであろう。しかし、図３に示されたように、本発明によって前記バッチ正規化演算の前記以前のバッチ（以下、「以前バッチ」と略称する）をさらに参照することによって、標本が多くなるために特徴マップが正規分布あるいはそれに対等な分布を伴うものと仮定することが可能になるところ、最適化されたバッチ正規化の結果が生成される。
【００５３】
従来技術と対比される本発明の特徴を上記したのであり、どのような方式で前記以前バッチ用以前の特徴マップ（以下、「以前バッチ用の以前特徴マップ」と略称する）がさらに参照されるかについて具体的に説明することにする。
【００５４】
基本的に、前記調整平均及び前記調整分散は、前記以前バッチ及び前記第ｋバッチを同一に参照して生成される。たとえば、前記第８バッチ用の特徴マップに適用される前記バッチ正規化演算が第１ないし第７バッチ用すべての以前特徴マップ及び第８バッチ用の特徴マップを参照して演算される場合、及び前記第１ないし前記第８バッチそれぞれに含まれた前記入力イメージ内のそれぞれの特定ピクセルに対応する特徴値が｛１、４、５、６、３、５、７、８｝である場合に（この例示は便宜のためにバッチあたり一つの特徴値が存在するものと仮定したが、一バッチあたり多数の特徴値が存在し得る）、前記すべての以前バッチ及び前記現在のバッチ、すなわち前記第８バッチに同一の重み付け値が割り当てられるため、前記調整平均は４．８７５となるはずである。
【００５５】
他の場合を挙げると、前記調整平均及び前記調整分散は、それぞれ異なる重み付けが割り当てられた前記以前バッチ用の以前特徴マップ及び前記第ｋバッチ用の特徴マップを参照して生成される。上記にて言及した例のような、前記第１ないし前記第７バッチ用の以前特徴マップ及び前記第８バッチ用の特徴マップ第８バッチ用の特徴マップの場合を仮定すると、前記第８バッチ用の特徴マップが最も重要であるものと決定されて、前記バッチ正規化レイヤ２１２は、第１重み付け値として２を前記第８バッチ用の特徴マップに割り当て、古い前記第１バッチ用特徴マップが重要でないのものと決定されて、前記バッチ正規化レイヤ２１２は第２重み付け値として０．５を前記第１バッチ用特徴マップに割り当てる。前記重み付け値を割り当てた後、前記バッチ正規化レイヤ２１２は、前記重み付け値が割り当てられた特徴値の和を求めた後、前記和を８．５（重み付け値を考慮した値であり、６＋０．５＋２と計算されたものである）で割る。このような場合に、前記調整平均は５．４７である。これは前記第８バッチに対応する特徴値が大きく反映されて前記第１バッチに対応する特徴値が少なく反映されたことを示す。
【００５６】
前記例示において前記調整平均の例示のみを示したが、前記調整分散も前記例示のような方式で重み付け値を割り当てて生成され得ることは自明である。
【００５７】
図３はすべての以前バッチが参照されなければならないように描写されているが、これに限定されない。よって、前記以前バッチのうち、前記第ｋバッチ用の特徴マップの前記調整平均及び前記調整分散を生成するために利用される前記特定の以前バッチを選択する方法も説明することとする。
【００５８】
まず、前記第ｋバッチ用の特徴マップの分散を参照して、前記バッチ正規化レイヤ２１２は、前記第１ないし前記第（ｋ−１）バッチのうちで前記第ｋバッチ用の特徴マップの前記調整平均及び前記調整分散を算出するために利用されるバッチの数を決定する。つまり、前記バッチ正規化は、各レイヤの入力の不均衡分布を防止しようとするために、前記第ｋバッチ用の特徴マップの分散が第１特定閾値より大きければ、前記バッチ正規化レイヤ２１２は前記第ｋバッチの不均衡を減らすために、前記第１ないし前記第（ｋ−１）バッチのうち、前記第ｋバッチ用の特徴マップの前記調整平均及び前記調整分散を生成するために利用される特定の以前バッチを多い数でもって選択する。反対に、前記分散が第１特定閾値より小さければ、前記バッチ正規化レイヤ２１２は、前記第ｋバッチの前記不均衡が大きくないことから少ない数の特定の以前バッチを選択する。
【００５９】
そして、前記第ｋバッチのサイズが第２特定閾値より大きければ、前記以前バッチをさらに参照しなくても良い結果が生成されるものと予想することができる。つまり、前記第ｋバッチ内で入力イメージが前記第２特定閾値より十分に多く存在するのであれば、大きな標本サイズのおかげで各前記バッチ用特徴マップが正規分布を伴うものと仮定することができる。よって、前記バッチ正規化レイヤ２１２は、少ない数の前記以前バッチを参照するか、又は前記第ｋバッチのみを参照することができるようになる。反対に、前記第ｋバッチ内で入力イメージが前記第２特定閾値より少なく存在するのであれば、前記標本サイズがあまりに小さくて前記第ｋバッチ用の特徴マップが正規分布を伴うためにはさらに多くのバッチが要求される。よって、このような場合に、前記バッチ正規化レイヤ２１２はさらに多くの特定の以前バッチを参照する。
【００６０】
また、前記バッチ正規化レイヤ２１２は、前記第２ないし前記第（ｋ−１）バッチのそれぞれの調整平均及びそれぞれの調整分散が生成される間、それぞれの前記第１ないし前記第（ｋ−１）バッチに対応するそれぞれの前記以前特徴マップが利用されていた回数を参照して、前記第１ないし前記第（ｋ−１）バッチのうちで、前記第ｋバッチ用の特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前バッチを選択する。たとえば、前記バッチ正規化レイヤ２１２は、頻繁に利用されたバッチを選択しないか、または少なく利用されたバッチを選択する。このようにして、前記バッチ正規化演算のために利用される前記選択されたバッチは多様になり得る。
【００６１】
これとは異なって、前記バッチ正規化レイヤ２１２が（ｉ）それぞれの前記第１ないし前記第（ｋ−１）バッチに対応する前記以前特徴マップのそれぞれの平均が第１値を参照して決定される第１特定の範囲内に存在するか否かに関する情報、又は（ｉｉ）それぞれの前記第１ないし前記第（ｋ−１）バッチに対応する前記以前特徴マップのそれぞれの分散が第２値を参照して決定される第２特定の範囲内に存在するか否かに関する情報を参照して、前記第１ないし前記第（ｋ−１）バッチのうちで、前記第ｋバッチ用の特徴マップの前記調整平均及び前記調整分散を算出するために利用される特定の以前バッチを選択する。
【００６２】
すなわち、前記バッチ正規化は、前記入力イメージに対応する前記特徴マップがなるべく不均衡にならないようにするため、前記調整平均及び前記調整分散を生成するために特定の以前バッチ用特定の以前特徴マップが選択され、（ｉ）前記第１特定の範囲内の平均を有する、前記特定の以前バッチ用特定の以前特徴マップ、又は（ｉｉ）前記第２特定の範囲内の分散を有する、前記特定の以前バッチ用特定の以前特徴マップが選択される。このようにして、前記入力イメージの不均衡を減らすことができる。
【００６３】
一方、上記で説明した前記バッチ正規化演算を適用して前記調整特徴マップが生成されれば、前記出力レイヤ２２０に入力される前記調整特徴マップの線形特性のために前記出力レイヤから出力された前記ＣＮＮ出力値は制限的になり得る。つまり、前記調整特徴マップの値が前記第１値に近接して、前記ＣＮＮ出力値が前記第１範囲近傍の特定の範囲に収斂され得る。よって、前記ＣＮＮ出力値は、前記線形演算を追加してさらに適用して生成される前記調整特徴マップに最適化され得る。
【００６４】
前記線形演算は下数式により、
調整特徴マップ＝γ×ＡＦ+β
γはスケーリングパラメータ、βはバイアス（Ｂｉａｓ）パラメータであり、ＡＦはバッチ正規化演算が適用された前記第ｋバッチ用の特徴マップを意味する。
【００６５】
次に、テスト装置として機能する本発明の構成を説明する。
【００６６】
それぞれのテストイメージを含むそれぞれのバッチ（前記バッチは第１ないし第ｍバッチを含む）の特徴値を利用したバッチ正規化テスト装置を想定すると、前記テスト装置は下記の要素を含む。
【００６７】
参考までに、以下の説明において混乱を避けるために、前記学習プロセスと関連する用語に「学習用」という単語が追加されており、テストプロセスと関連する用語に「テスト用」という単語が追加された。
【００６８】
前記テスト装置は、前記通信部１１０及び前記プロセッサ１２０を含む。（１）前記学習装置が、前記ＣＮＮ２００の前記コンボリューションレイヤ２１１をもって、（ｉ）第ｋ学習用バッチ（ｋは１からｍまでの整数である）を取得させ、（ｉｉ）前記第ｋ学習用バッチに含まれたトレーニングイメージにそれぞれ前記コンボリューション演算を適用して第ｋ学習用バッチ用特徴マップを生成させ、（２）前記学習装置が、前記ＣＮＮ２００の前記バッチ正規化レイヤ２１２をもって、（Ｉ）（ｉ）ｋが１である場合に、前記第ｋ学習用バッチ用特徴マップを参照し、（ｉｉ）ｋは２からｍまでの整数である場合に、以前に生成されていた前記第１ないし第（ｋ−１）学習用バッチの中から選択された以前の学習用バッチの少なくとも一部分に含まれる以前の学習用特徴マップ及び前記第ｋ学習用バッチ用特徴マップを参照して、前記第ｋ学習用バッチ用特徴マップの学習用調整平均及び学習用調整分散を算出させ、（ＩＩ）前記学習用調整平均及び前記学習用調整分散を参照して前記第ｋ学習用バッチ用特徴マップに前記バッチ正規化演算を適用して学習用調整特徴マップを生成させ、（３）前記学習装置が、前記ＣＮＮ２００のアクティベーションレイヤ２１３をもって、前記学習用調整特徴マップに前記非線形演算を適用して学習用再調整特徴マップを生成させ、前記ＣＮＮ２００が前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第１ないし第ｎコンボリューションブロックを含み、前記第ｋ学習用バッチが取得されると、前記第１ないし前記第ｎコンボリューションブロックを通じて前記第ｋ学習用バッチに含まれた前記トレーニングイメージに演算を適用して前記学習用再調整特徴マップが生成され、ｘが２からｎまでの整数であれば、第（ｘ−１）コンボリューションブロックから出力された第（ｘ−１）学習用再調整特徴マップが第ｘコンボリューションブロックに入力されるようにし、前記第ｘコンボリューションブロックをもって、第ｘ学習用再調整特徴マップを生成させて前記学習用再調整特徴マップが生成され、（４）前記学習装置が、前記ＣＮＮ２００の前記出力レイヤ２２０をもって、前記第ｎコンボリューションブロックから出力された第ｎ学習用再調整特徴マップに前記出力演算を適用して学習用ＣＮＮ出力値を生成させ、（５）前記学習装置が、前記ＣＮＮ２００の前記ロスレイヤ２３０をもって、前記学習用ＣＮＮ出力値及びそれに対応する原本正解（Ｇｒｏｕｎｄ  Ｔｒｕｔｈ）を参照してロスを生成させ、前記ロスをバックプロパゲーションして前記ＣＮＮ２００のパラメータを学習した状態で、前記通信部１１０は、前記第ｋテスト用バッチ（ｋは１からｍまでの整数）を取得する。
【００６９】
そして、前記テスト装置内に含まれた前記プロセッサ１２０は、以下のプロセスを遂行する。
【００７０】
まず、前記プロセッサ１２０は、前記ＣＮＮ２００の前記コンボリューションレイヤ２１１をもって、前記第ｋテスト用バッチにそれぞれ含まれたテストイメージに前記コンボリューション演算を適用して第ｋテスト用バッチ用特徴マップを生成させる。
【００７１】
そして、前記プロセッサ１２０は、前記ＣＮＮ２００の前記バッチ正規化レイヤ２１２をもって、（Ｉ）（ｉ）ｋが１である場合に、前記第ｋテスト用バッチ用特徴マップを参照し、（ｉｉ）ｋは２からｍまでの整数である場合に、以前に生成されていた前記第１ないし第（ｋ−１）テスト用バッチの中から選択された以前のテスト用バッチの少なくとも一部分に含まれる以前のテスト用特徴マップ及び前記第ｋテスト用バッチ用特徴マップを参照して、前記第ｋテスト用バッチ用特徴マップの一つ以上のテスト用調整平均及びテスト用調整分散を算出させ、（ＩＩ）前記テスト用調整平均及び前記テスト用調整分散を参照して、前記第ｋテスト用バッチ用特徴マップに前記バッチ正規化演算を適用してテスト用調整特徴マップを生成する。
【００７２】
以後、前記プロセッサ１２０は、前記ＣＮＮ２００の前記アクティベーションレイヤ２１３をもって、前記テスト用調整特徴マップに前記非線形演算を適用してテスト用再調整特徴マップを生成させ、前記ＣＮＮが前記コンボリューションレイヤ、前記バッチ正規化レイヤ及び前記アクティベーションレイヤをそれぞれ含む第１ないし第ｎコンボリューションブロックを含み、前記第ｋテスト用バッチが取得されると、前記第１ないし前記第ｎコンボリューションブロックを通じて前記第ｋテスト用バッチに含まれた前記テストイメージに前記演算を適用して前記テスト用再調整特徴マップが生成され、ｘが２からｎまでの整数であれば、前記第（ｘ−１）コンボリューションブロックから出力された第（ｘ−１）テスト用再調整特徴マップが前記第ｘコンボリューションブロックに入力されるようにし、前記第ｘコンボリューションブロックをもって、第ｘテスト用再調整特徴マップを生成させて前記テスト用再調整特徴マップが生成される。
【００７３】
最後に、前記プロセッサ１２０が前記ＣＮＮ２００の前記出力レイヤ２２０をもって、前記第ｎコンボリューションブロックから出力された第ｎテスト用再調整特徴マップに前記出力演算を適用してテスト用ＣＮＮ出力値を生成させる。
【００７４】
前記テストプロセスにおいて、前記コンボリューションレイヤ２１１が前記コンボリューション演算を前記入力イメージに適用する部分、前記バッチ正規化レイヤ２１２が前記特徴マップに前記バッチ正規化演算を適用する部分、そして前記アクティベーションレイヤ２１３が前記非線形演算を前記特徴マップに適用する部分は学習段階と類似しているので、詳細な説明は省略することにする。
【００７５】
前記テスト装置の前記構成を詳述したところ、前記コンピューティング装置と前記テスト装置との関係を、図２を再度参照して説明すると次のとおりである。
【００７６】
前記コンピューティング装置が前記テスト装置として機能する場合は、前記学習プロセスが終わった状態であるため、ロスを生成し、これをバックプロパゲーションする部分は除外されるであろう。よって、前記テスト装置として機能する本発明の構成は、前記ロスを生成する部分である前記ロスレイヤ２３０を除外した前記コンピューティング装置の構成と同じであるので、前記ｎ個のコンボリューションブロックから前記出力レイヤ２２０までの要素が本発明の前記テスト装置の前記構成になるであろう。
【００７７】
上述した方法を通じたオンラインバッチ正規化、オンデバイス（ｏｎ−ｄｅｖｉｃｅ）学習、または連続学習（ｃｏｎｔｉｎｕａｌ  ｌｅａｒｎｉｎｇ）は、モバイル装置、ＩＯＴ装置などに適用され得る。また、前記方法は、軍事的目的のために、又はドローンやロボットのような他の装置に使用されるために遂行され得る。
【００７８】
本発明の技術分野における通常の技術者に理解され得るところとして、前記で説明されたイメージ、例えば、原本イメージ、原本ラベル及び追加ラベルのようなイメージデータの送受信が学習装置及びテスト装置の各通信部により行われ得、特徴マップと演算を遂行するためのデータが学習装置及びテスト装置のプロセッサ（及び／又はメモリ）によって保有／維持され得、コンボリューション演算、デコンボリューション演算、ロス値演算の過程が主に学習装置及びテスト装置のプロセッサによって遂行され得るが、本発明がこれに限定されはしないであろう。
【００７９】
以上にて説明された本発明による実施例は、多様なコンピュータの構成要素を通じて遂行することができるプログラム命令語の形態で具現されて、コンピュータ読取り可能な記録媒体に格納され得る。前記コンピュータ読取り可能な記録媒体はプログラム命令語、データファイル、データ構造などを単独で又は組み合わせて含むことができる。前記コンピュータ読取り可能な記録媒体に格納されるプログラム命令語は、本発明のために特別に設計され、構成されたものであるか、コンピュータソフトウェア分野の当業者に公知にされて使用可能なものであり得る。コンピュータ読取り可能な記録媒体の例には、ハードディスク、フロッピーディスク及び磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤのような光記録媒体、フロプティカルディスク（Ｆｌｏｐｔｉｃａｌ  Ｄｉｓｋ）のような磁気−光メディア（Ｍａｇｎｅｔｏ−Ｏｐｔｉｃａｌ  Ｍｅｄｉａ）、及びＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令語を格納して遂行するように特別に構成されたハードウェア装置が含まれる。プログラム命令語の例には、コンパイラによって作られるもののような機械語コードだけでなく、インタープリターなどを使用してコンピュータによって実行される高級言語コードも含まれる。前記ハードウェア装置は、本発明による処理を実行するために一つ以上のソフトウェアモジュールとして作動するように構成され得、その反対も同様である。
【００８０】
以上にて本発明が具体的な構成要素などのような特定事項と限定された実施例及び図面によって説明されたが、これは、本発明のより全般的な理解の一助とするために提供されたものであるに過ぎず、本発明が前記実施例に限られるものではなく、本発明が属する技術分野において通常の知識を有する者であれば、係る記載から多様な修正及び変形が行われ得る。
【００８１】
従って、本発明の思想は、前記説明された実施例に局限されて定められてはならず、後述する特許請求の範囲だけでなく、本特許請求の範囲と均等または等価的に変形されたものすべては、本発明の思想の範囲に属するといえる。
【図１】
2020119532.tif 000003
【図２】
2020119532.tif 000004
【図３】
2020119532.tif 000005
【図４】
2020119532.tif 000006