(57)【要約】      （修正有）【課題】ＣＮＮでコンボリューション演算とアクティベーション演算を同時に遂行する方法を提供する。【解決手段】ＣＮＮ構成方法はコンピューティング装置が、ＣＮＮ演算装置５００にある比較器をもって、入力イメージの各画素値に対応する入力値を所定の基準値と比較してその比較結果に対する比較結果値を出力する段階、コンピューティング装置が、ＣＮＮ演算装置にある選択器をもって、コンボリューションレイヤのコンボリューションフィルタの多数のパラメータのうち比較結果値に対応される特定パラメータを出力する段階及びコンピューティング装置が、ＣＮＮ演算装置にある乗算器をもって、選択された特定パラメータと入力値を掛けた値を出力し、掛けた値を、アクティベーションモジュールの出力にコンボリューションレイヤのコンボリューション演算を適用した結果値に決定する段階を含む。【選択図】図５
2019075114.tif 000002
【特許請求の範囲】
【請求項１】
コンボリューションレイヤのコンボリューション演算とアクティベーションモジュールのアクティベーション演算を同時に遂行する、学習されたパラメータを有する、ＣＮＮの構成方法において、
（ａ）前記コンピューティング装置が、ＣＮＮの演算装置にある比較器をもって、入力イメージの各画素値に対応する入力値を所定の基準値と比較してその比較結果に対する比較結果値を出力する段階；
（ｂ）前記コンピューティング装置が、前記ＣＮＮの演算装置にある選択器をもって、前記コンボリューションレイヤのコンボリューションフィルタの多数のパラメータのうち前記比較結果値に対応される特定パラメータを出力する段階；及び
（ｃ）前記コンピューティング装置が、前記ＣＮＮの演算装置にある乗算器をもって、前記選択された特定パラメータと前記入力値を掛けた値を出力し、前記掛けた値を、前記アクティベーションモジュールの出力に前記コンボリューションレイヤの前記コンボリューション演算を適用した結果値に決定する段階；を含むことを特徴とする方法。
【請求項２】
前記アクティベーション演算はＣＲｅＬＵ（Ｃｏｎｃａｔｅｎａｔｅｄ  Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔｓ）演算であることを特徴とする請求項１に記載の方法。
【請求項３】
前記（ａ）段階ないし（ｃ）段階を含む方法は次の数式で表現されて、
【数１】
2019075114.tif 000025
ここで、ＣＲｅＬＵ＿Ｃｏｎｖはアクティベーションモジュールの出力に前記コンボリューションレイヤのコンボリューション演算を適用した結果を示して、ｘは入力値、前記ｗ1、ｗ2は前記コンボリューションレイヤのパラメータ、ａ、ｂは前記ｗ1、ｗ2を獲得するために用いられるべきコンボリューションレイヤの要素パラメータであり、前記所定の基準値は０であることを特徴とする請求項２に記載の方法。
【請求項４】
コンボリューションレイヤのコンボリューション演算とアクティベーションモジュールのアクティベーション演算を同時に遂行する、学習されたパラメータを有する、ＣＮＮの構成方法において、
（ａ）前記コンピューティング装置が、ＣＮＮの演算装置にある比較器をもって、入力イメージの各画素値に対応する入力値を所定の区間区分の基準値と比較して前記入力された値が前記所定の区間区分の基準値のうちどの値の間の区間に該当するかに対する情報を参照にして比較結果値を出力する段階；
（ｂ）前記コンピューティング装置が、前記ＣＮＮの演算装置にある第１選択器をもって、前記コンボリューションレイヤの多数の統合ウェイトパラメータのうち前記比較結果値に対応される特定統合ウェイトパラメータを出力するプロセス及び前記ＣＮＮの演算装置にある第２選択器をもって、前記コンボリューションレイヤの多数の修正バイアスパラメータのうち前記比較結果値に対応される特定修正バイアスパラメータを出力するプロセスを遂行する段階；
（ｃ）前記コンピューティング装置が、前記ＣＮＮの演算装置にある乗算器をもって、前記選択された特定統合ウェイトパラメータと前記入力値を掛けて出力する段階；及び
（ｄ）前記コンピューティング装置が、前記ＣＮＮの演算装置にある加算器をもって、前記乗算出力値に前記選択された特定修正バイアスパラメータを足した値を出力し、前記足した値を、前記アクティベーションモジュールの出力に前記コンボリューションレイヤの前記コンボリューション演算を適用した結果値に決定する段階；を含むことを特徴とする方法。
【請求項５】
前記アクティベーション演算はＮ−ｗａｙ  ＣＲｅＬＵ（Ｎ−ｗａｙ  Ｃｏｎｃａｔｅｎａｔｅｄ  Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔｓ）演算であることを特徴とする請求項４に記載の方法。
【請求項６】
前記（ａ）段階ないし（ｄ）段階を含む方法は次の数式で表現されて、
【数２】
2019075114.tif 000026
ここで、ＮＣＲｅＬＵ＿Ｃｏｎｖはアクティベーションモジュールの出力に前記コンボリューションレイヤのコンボリューション演算を適用した結果を示して、ｘは入力値、ｗiは前記コンボリューションレイヤの統合ウェイトパラメータ、ｂiは前記コンボリューションレイヤの修正バイアスパラメータ、ｖiは所定の区間区分の基準値であることを特徴とする請求項５に記載の方法。
【請求項７】
前記統合ウェイトパラメータ（ｗi）、前記修正バイアスパラメータ（ｂi）、前記所定の区間区分の基準値（ｖi）は次の数式で算出されて、
【数３】
2019075114.tif 000027
ここで、ｑi（ｑ1ないしｑn-1）は各バイアスレイヤの要素バイアスパラメータで、ｐi（ｐ1ないしｐn）は各コンボリューションレイヤの要素ウェイトパラメータで、ｄはコンボリューションレイヤの要素バイアスパラメータであり、ｒａｎｋ（ｑi）は｛ｑ1，…．．ｑn-1｝のうちｑiが何番目に大きい数かを示して、ｒａｎｋ-1（ｉ）は｛ｑ1，…ｑn-1｝のうちｉ番目に大きい数のインデックス（Ｉｎｄｅｘ）を示すことを特徴とする請求項６に記載の方法。
【請求項８】
コンボリューションレイヤのコンボリューション演算とアクティベーションモジュールのアクティベーション演算を同時に遂行する、学習されたパラメータを有する、ＣＮＮの構成装置において、
入力イメージの各画素値に対応する入力値を入力される通信部；
（ｉ）前記入力値を所定の基準値と比較してその比較結果に対する比較結果値を出力するプロセス；（ｉｉ）前記コンボリューションレイヤのコンボリューションフィルタの多数のパラメータのうち前記比較結果値に対応される特定パラメータを出力するプロセス；及び（ｉｉｉ）前記選択された特定パラメータと前記入力値を掛けた値を出力し、前記掛けた値を、前記アクティベーションモジュールの出力に前記コンボリューションレイヤの前記コンボリューション演算を適用した結果値に決定するプロセスを遂行するプロセッサ；を含むことを特徴とする装置。
【請求項９】
前記アクティベーション演算はＣＲｅＬＵ（Ｃｏｎｃａｔｅｎａｔｅｄ  Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔｓ）演算であることを特徴とする請求項８に記載の装置。
【請求項１０】
前記プロセッサの前記（ｉ）ないし（ｉｉｉ）プロセスは次の数式で表現されて、
【数４】
2019075114.tif 000028
ここで、ＣＲｅＬＵ＿Ｃｏｎｖはアクティベーションモジュールの出力に前記コンボリューションレイヤのコンボリューション演算を適用した結果を示して、ｘは入力値、前記ｗ1、ｗ2は前記コンボリューションレイヤのパラメータ、ａ、ｂは前記ｗ1、ｗ2を獲得するために用いられるべきコンボリューションレイヤの要素パラメータであり、
前記所定の基準値は０であることを特徴とする請求項９に記載の装置。
【請求項１１】
コンボリューションレイヤのコンボリューション演算とアクティベーションモジュールのアクティベーション演算を同時に遂行する、学習されたパラメータを有する、ＣＮＮの構成装置において、
入力イメージの各画素値に対応する入力値を入力される通信部；
（ｉ）前記入力値を所定の区間区分の基準値と比較して前記入力された値が前記所定の区間区分の基準値のうちどの値の間の区間に該当するかに対する情報を参照にして比較結果値を出力するプロセス；（ｉｉ）前記コンボリューションレイヤの多数の統合ウェイトパラメータのうち前記比較結果値に対応される特定統合ウェイトパラメータを出力するプロセス；（ｉｉｉ）前記コンボリューションレイヤの多数の修正バイアスパラメータのうち前記比較結果値に対応される特定修正バイアスパラメータを出力するプロセス；（ｉｖ）前記選択された特定統合ウェイトパラメータと前記入力値を掛けて出力するプロセス；及び（ｖ）前記乗算出力値に前記選択された特定修正バイアスパラメータを足した値を出力し、前記足した値を、前記アクティベーションモジュールの出力に前記コンボリューションレイヤのコンボリューション演算を適用した結果値に決定するプロセス；を遂行するプロセッサ；を含むことを特徴とする装置。
【請求項１２】
前記アクティベーション演算はＮ−ｗａｙ  ＣＲｅＬＵ（Ｎ−ｗａｙ  Ｃｏｎｃａｔｅｎａｔｅｄ  Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔｓ）演算であることを特徴とする請求項１１に記載の装置。
【請求項１３】
前記プロセッサの前記（ｉ）ないし（ｖ）プロセスは次の数式で表現されて、
【数５】
2019075114.tif 000029
ここで、ＮＣＲｅＬＵ＿Ｃｏｎｖはアクティベーションモジュールの出力に前記コンボリューションレイヤのコンボリューション演算を適用した結果を示して、ｘは入力値、ｗiは前記コンボリューションレイヤの統合ウェイトパラメータ、ｂiは前記コンボリューションレイヤの修正バイアスパラメータ、ｖiは所定の区間区分の基準値であることを特徴とする請求項１２に記載の装置。
【請求項１４】
前記統合ウェイトパラメータ（ｗi）、前記修正バイアスパラメータ（ｂi）、前記所定の区間区分の基準値（ｖi）は次の数式で算出されて、
【数６】
2019075114.tif 000030
ここで、ｑi（ｑ1ないしｑn-1）は学習された各バイアスレイヤの要素バイアスパラメータで、ｐi（ｐ1ないしｐn）は各コンボリューションレイヤの要素ウェイトパラメータで、ｄはコンボリューションレイヤの要素バイアスパラメータであり、ｒａｎｋ（ｑi）は｛ｑ1，…．．ｑn-1｝のうちｑiが何番目に大きい数かを示して、ｒａｎｋ-1（ｉ）は｛ｑ1，…ｑn-1｝のうちｉ番目に大きい数のインデックス（Ｉｎｄｅｘ）を示すことを特徴とする請求項１３に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はアクティベーション演算とコンボリューション演算を同時に遂行できる演算方法及び演算装置、そしてこれを具現するための学習方法及び学習装置に関する。より詳細には、（ａ）前記コンピューティング装置が、ＣＮＮの演算装置にある比較器をもって、入力イメージの各画素値に対応する入力値を所定の基準値と比較してその比較結果に対する比較結果値を出力する段階；（ｂ）前記コンピューティング装置が、前記ＣＮＮの演算装置にある選択器をもって、前記コンボリューションレイヤのコンボリューションフィルタの多数のパラメータのうち前記比較結果値に対応される特定パラメータを出力する段階；及び（ｃ）前記コンピューティング装置が、前記ＣＮＮの演算装置にある乗算器をもって、前記選択された特定パラメータと前記入力値を掛けた値を出力し、前記掛けた値を、前記アクティベーションモジュールの出力に前記コンボリューションレイヤの前記コンボリューション演算を適用した結果値に決定する段階；を含むことを特徴とする方法及び装置、そしてこのための学習方法及び装置に関する。
【背景技術】
【０００２】
ディープコンボリューションニューラルネットワーク（Ｄｅｅｐ  Ｃｏｎｖｏｌｕｔｉｏｎ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋｓ；ディープＣＮＮ）はディープラーニング分野で起きた驚くべき発展の核心である。ＣＮＮは文字認識問題を解くために９０年代に既に使用されていたが、現在のように広く使用されるようになったのは最近の研究結果のおかげである。このようなディープＣＮＮは２０１２年ＩｍａｇｅＮｅｔイメージ分類コンテストで他の競争相手に勝って優勝を収めた。そうして、コンボリューションニューラルネットワークはＭａｃｈｉｎｅ  Ｌｅａｒｎｉｎｇ分野で非常に有用なツールとなった。
【０００３】
図１はＣＲｅＬＵ演算とコンボリューション演算を遂行できる既存のＣＮＮ学習装置の構成を示す。
【０００４】
図１を参照すれば、既存のＣＮＮ学習装置１００はコンボリューションレイヤ１１０、１３０、ＣＲｅＬＵ（Ｃｏｎｃａｔｅｎａｔｅｄ  Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔ）１２０及び他のＣＲｅＬＵ（未図示）を含んでおり、演算が交互に複数回反復される形態を有している。
【０００５】
この時、ＣＲｅＬＵ１２０は２個のＲｅＬＵ（Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔ）１２２を含み、ＲｅＬＵ１２２で遂行する演算は下のような数式で遂行される。
【０００６】
【数１】
2019075114.tif 000003
【０００７】
前記ＣＲｅＬＵは既存のＣＮＮモデルのコンボリューションフィルタを学習する時、陰の相関関係が強いフィルタがペアで学習される現象に着眼して下の数式のような既存ＲｅＬＵのポジティブアクティベーションだけでなく、ネガティブアクティベーションも追加で作り出すアクティベーションスキームである。
【０００８】
【数２】
2019075114.tif 000004
【０００９】
図１のように、コンボリューション演算とＣＲｅＬＵ（またはＲｅＬＵ）演算が交互に反復される構造で、ＣＲｅＬＵはＲｅＬＵと比較した時にコンボリューション演算量が増加することなく２倍の個数の結果値を出力するか、または同じ個数の結果値を出力する時に前のコンボリューション演算量を１／２に減らすことができる長所がある。従って、ＣＲｅＬＵ導入により検出速度を維持しながら、検出正確度を高めることができるか、検出正確度を維持しながら、検出速度を速めることができるようになる。
【００１０】
図１でＣＲｅＬＵユニット１２０は一つのスケールレイヤ１２１、２個のＲｅＬＵレイヤ１２２及びコンカチネーションレイヤ１２３を含む。スケールレイヤ１２１は以前のコンボリューションレイヤ１１０からの値に−１を掛けて出力し、ＲｅＬＵレイヤ１２２のうち一つは以前のコンボリューションレイヤ１１０から値を入力され、他の一つはスケールレイヤ１２１からスケーリングされた値を入力されて、ＲｅＬＵ演算を遂行する。図１でＲｅＬＵレイヤ１２２とコンカチネーションレイヤ１２３はその順序が変わってもよい。万一コンカチネーションレイヤ１２３以後にＲｅＬＵレイヤ１２２が連結されれば、ＲｅＬＵレイヤは１個だけ存在する。
【００１１】
図１を参照すれば、以前のコンボリューションレイヤ１１０からの出力値として
【数２−１】
2019075114.tif 000005
（例えば、この値は（ｘ＝０，ｙ＝０，チャネルｃｈ＝０）である位置の画素値が１、（ｘ＝１，ｙ＝０，チャネルｃｈ＝１）である位置の画素値が２、（ｘ＝０，ｙ＝１，チャネルｃｈ＝１）である位置の画素値が３、（ｘ＝１，ｙ＝１，チャネルｃｈ＝０）である位置の画素値が４であり、残りはすべて０である特徴マップを示す）がＣＲｅＬＵ１２０に入力されると、スケールレイヤ１２１は各値に−１をかけて生成した値である
【数２−２】
2019075114.tif 000006
を二番目のＲｅＬＵレイヤに伝達し、
【数２−３】
2019075114.tif 000007
値を直接伝達された一番目ＲｅＬＵレイヤ及びスケールレイヤ１２１から
【数２−４】
2019075114.tif 000008
値を伝達された二番目のＲｅＬＵレイヤは各々ポジティブアクティベーション演算を遂行して
【数２−５】
2019075114.tif 000009
と
【数２−６】
2019075114.tif 000010
を生成してこれをコンカチネーションレイヤ１２３に伝達する。それから、コンカチネーションレイヤ１２３はこれらの値を一つにコンカチネートして
【数２−７】
2019075114.tif 000011
を生成してこれを次の隣り合ったコンボリューションレイヤ１３０に伝達する。コンボリューションレイヤ１３０はこれらの値にコンボリューション演算を遂行する。
【００１２】
一方、図１のように、ＣＲｅＬＵレイヤの演算とコンボリューションレイヤの演算を別途遂行するようになると、各々の独立的な演算プロセスが遂行されて演算量が多い問題がある。
【００１３】
従って、本発明ではＣＲｅＬＵが用いられたＣＮＮモデルでコンボリューション演算量を減らすための新たな方法を提供しようとする。
【発明の概要】
【発明が解決しようとする課題】
【００１４】
本発明はＣＲｅＬＵユニットが用いられたＣＮＮでコンボリューションレイヤの演算量を減らす方法を提供することを目的とする。
【００１５】
また、本発明はコンボリューション演算量やメモリが大きく増加することなくＣＮＮモデルの複雑度を高めて検出正確度を高めることができる方法を提供することを目的とする。
【課題を解決するための手段】
【００１６】
発明の一態様によれば、コンボリューションレイヤのコンボリューション演算とアクティベーションモジュールのアクティベーション演算を同時に遂行する、学習されたパラメータを有する、ＣＮＮの構成方法において、（ａ）前記コンピューティング装置が、ＣＮＮの演算装置にある比較器をもって、入力イメージの各画素値に対応する入力値を所定の基準値と比較してその比較結果に対する比較結果値を出力する段階；（ｂ）前記コンピューティング装置が、前記ＣＮＮの演算装置にある選択器をもって、前記コンボリューションレイヤのコンボリューションフィルタの多数のパラメータのうち前記比較結果値に対応される特定パラメータを出力する段階；及び（ｃ）前記コンピューティング装置が、前記ＣＮＮの演算装置にある乗算器をもって、前記選択された特定パラメータと前記入力値を掛けた値を出力し、前記掛けた値を、前記アクティベーションモジュールの出力に前記コンボリューションレイヤの前記コンボリューション演算を適用した結果値に決定する段階；を含むことを特徴とする方法が提供される。
【００１７】
一例として、前記アクティベーション演算はＣＲｅＬＵ（Ｃｏｎｃａｔｅｎａｔｅｄ  Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔｓ）演算であることを特徴とする方法が提供される。
【００１８】
一例として、前記（ａ）段階ないし（ｃ）段階を含む方法は次の数式で表現されて、
【数２−８】
2019075114.tif 000012
【００１９】
ここで、ＣＲｅＬＵ＿Ｃｏｎｖはアクティベーションモジュールの出力に前記コンボリューションレイヤのコンボリューション演算を適用した結果を示して、ｘは入力値、前記ｗ1、ｗ2は前記コンボリューションレイヤのパラメータ、ａ、ｂは前記ｗ1、ｗ2を獲得するために用いられるべきコンボリューションレイヤの要素パラメータであり、前記所定の基準値は０であることを特徴とする方法が提供される。
【００２０】
本発明の他の態様によれば、コンボリューションレイヤのコンボリューション演算とアクティベーションモジュールのアクティベーション演算を同時に遂行する、学習されたパラメータを有する、ＣＮＮの構成方法において、（ａ）前記コンピューティング装置が、ＣＮＮの演算装置にある比較器をもって、入力イメージの各画素値に対応する入力値を所定の区間区分の基準値と比較して前記入力された値が前記所定の区間区分の基準値のうちどの値の間の区間に該当するかに対する情報を参照にして比較結果値を出力する段階；（ｂ）前記コンピューティング装置が、前記ＣＮＮの演算装置にある第１選択器をもって、前記コンボリューションレイヤの多数の統合ウェイトパラメータのうち前記比較結果値に対応される特定統合ウェイトパラメータを出力するプロセス及び前記ＣＮＮの演算装置にある第２選択器をもって、前記コンボリューションレイヤの多数の修正バイアスパラメータのうち前記比較結果値に対応される特定修正バイアスパラメータを出力するプロセスを遂行する段階；（ｃ）前記コンピューティング装置が、前記ＣＮＮの演算装置にある乗算器をもって、前記選択された特定統合ウェイトパラメータと前記入力値を掛けて出力する段階；及び（ｄ）前記コンピューティング装置が、前記ＣＮＮの演算装置にある加算器をもって、前記乗算出力値に前記選択された特定修正バイアスパラメータを足した値を出力し、前記足した値を、前記アクティベーションモジュールの出力に前記コンボリューションレイヤの前記コンボリューション演算を適用した結果値に決定する段階；を含むことを特徴とする方法が提供される。
【００２１】
一例として、前記アクティベーション演算はＮ−ｗａｙ  ＣＲｅＬＵ（Ｎ−ｗａｙ  Ｃｏｎｃａｔｅｎａｔｅｄ  Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔｓ）演算であることを特徴とする方法が提供される。
【００２２】
一例として、前記（ａ）段階ないし（ｄ）段階を含む方法は次の数式で表現されて、
【数２−９】
2019075114.tif 000013
【００２３】
ここで、ＮＣＲｅＬＵ＿Ｃｏｎｖはアクティベーションモジュールの出力に前記コンボリューションレイヤのコンボリューション演算を適用した結果を示して、ｘは入力値、ｗiは前記コンボリューションレイヤの統合ウェイトパラメータ、ｂiは前記コンボリューションレイヤの修正バイアスパラメータ、ｖiは所定の区間区分の基準値であることを特徴とする方法が提供される。
【００２４】
一例として、前記統合ウェイトパラメータ（ｗi）、前記修正バイアスパラメータ（ｂi）、前記所定の区間区分の基準値（ｖi）は次の数式で算出されて、
【数２−１０】
2019075114.tif 000014
【００２５】
ここで、ｑi（ｑ1ないしｑn-1）は各バイアスレイヤの要素バイアスパラメータで、ｐi（ｐ1ないしｐn）は各コンボリューションレイヤの要素ウェイトパラメータで、ｄはコンボリューションレイヤの要素バイアスパラメータであり、ｒａｎｋ（ｑi）は｛ｑ1，…．．ｑn-1｝のうちｑiが何番目に大きい数かを示して、ｒａｎｋ-1（ｉ）は｛ｑ1，…ｑn-1｝のうちｉ番目に大きい数のインデックス（Ｉｎｄｅｘ）を示すことを特徴とする方法が提供される。
【００２６】
本発明のまた他の態様によれば、コンボリューションレイヤのコンボリューション演算とアクティベーションモジュールのアクティベーション演算を同時に遂行する、学習されたパラメータを有する、ＣＮＮの構成装置において、入力イメージの各画素値に対応する入力値を入力される通信部；（ｉ）前記入力値を所定の基準値と比較してその比較結果に対する比較結果値を出力するプロセス；（ｉｉ）前記コンボリューションレイヤのコンボリューションフィルタの多数のパラメータのうち前記比較結果値に対応される特定パラメータを出力するプロセス；及び（ｉｉｉ）前記選択された特定パラメータと前記入力値を掛けた値を出力し、前記掛けた値を、前記アクティベーションモジュールの出力に前記コンボリューションレイヤの前記コンボリューション演算を適用した結果値に決定するプロセスを遂行するプロセッサ；を含むことを特徴とする装置が提供される。
【００２７】
一例として、前記アクティベーション演算はＣＲｅＬＵ（Ｃｏｎｃａｔｅｎａｔｅｄ  Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔｓ）演算であることを特徴とする装置が提供される。
【００２８】
一例として、前記プロセッサの前記（ｉ）ないし（ｉｉｉ）プロセスは次の数式で表現されて、
【数２−１１】
2019075114.tif 000015
【００２９】
ここで、ＣＲｅＬＵ＿Ｃｏｎｖはアクティベーションモジュールの出力に前記コンボリューションレイヤのコンボリューション演算を適用した結果を示して、ｘは入力値、前記ｗ1、ｗ2は前記コンボリューションレイヤのパラメータ、ａ、ｂは前記ｗ1、ｗ2を獲得するために用いられるべきコンボリューションレイヤの要素パラメータであり、前記所定の基準値は０であることを特徴とする装置が提供される。
【００３０】
本発明のまた他の態様によれば、コンボリューションレイヤのコンボリューション演算とアクティベーションモジュールのアクティベーション演算を同時に遂行する、学習されたパラメータを有する、ＣＮＮの構成装置において、入力イメージの各画素値に対応する入力値を入力される通信部；（ｉ）前記入力値を所定の区間区分の基準値と比較して前記入力された値が前記所定の区間区分の基準値のうちどの値の間の区間に該当するかに対する情報を参照にして比較結果値を出力するプロセス；（ｉｉ）前記コンボリューションレイヤの多数の統合ウェイトパラメータのうち前記比較結果値に対応される特定統合ウェイトパラメータを出力するプロセス；（ｉｉｉ）前記コンボリューションレイヤの多数の修正バイアスパラメータのうち前記比較結果値に対応される特定修正バイアスパラメータを出力するプロセス；（ｉｖ）前記選択された特定統合ウェイトパラメータと前記入力値を掛けて出力するプロセス；及び（ｖ）前記乗算出力値に前記選択された特定修正バイアスパラメータを足した値を出力し、前記足した値を、前記アクティベーションモジュールの出力に前記コンボリューションレイヤのコンボリューション演算を適用した結果値に決定するプロセス；を遂行するプロセッサ；を含むことを特徴とする装置が提供される。
【００３１】
一例として、前記アクティベーション演算はＮ−ｗａｙ  ＣＲｅＬＵ（Ｎ−ｗａｙ  Ｃｏｎｃａｔｅｎａｔｅｄ  Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔｓ）演算であることを特徴とする装置が提供される。
【００３２】
一例として、前記プロセッサの前記（ｉ）ないし（ｖ）プロセスは次の数式で表現されて、
【数２−１２】
2019075114.tif 000016
【００３３】
ここで、ＮＣＲｅＬＵ＿Ｃｏｎｖはアクティベーションモジュールの出力に前記コンボリューションレイヤのコンボリューション演算を適用した結果を示して、ｘは入力値、ｗiは前記コンボリューションレイヤの統合ウェイトパラメータ、ｂiは前記コンボリューションレイヤの修正バイアスパラメータ、ｖiは所定の区間区分の基準値であることを特徴とする装置が提供される。
【００３４】
一例として、前記統合ウェイトパラメータ（ｗi）、前記修正バイアスパラメータ（ｂi）、前記所定の区間区分の基準値（ｖi）は次の数式で算出されて、
【数２−１３】
2019075114.tif 000017
【００３５】
ここで、ｑi（ｑ1ないしｑn-1）は学習された各バイアスレイヤの要素バイアスパラメータで、ｐi（ｐ1ないしｐn）は各コンボリューションレイヤの要素ウェイトパラメータで、ｄはコンボリューションレイヤの要素バイアスパラメータであり、ｒａｎｋ（ｑi）は｛ｑ1，…．．ｑn-1｝のうちｑiが何番目に大きい数かを示して、ｒａｎｋ-1（ｉ）は｛ｑ1，…ｑn-1｝のうちｉ番目に大きい数のインデックス（Ｉｎｄｅｘ）を示すことを特徴とする装置が提供される。
【発明の効果】
【００３６】
本発明によれば、より少ない演算量を要求する新たな演算ユニットを通じて、ＣＲｅＬＵ演算とコンボリューション演算を同時に遂行するようにすることができる。
【００３７】
また、本発明によれば、Ｎ−ｗａｙ  ＣｒｅＬＵを具現することで、コンボリューションレイヤでの演算量を減らしながら、他のレイヤでの演算量やメモリが大きく増加することなく検出正確度を高めることができる効果がある。
【図面の簡単な説明】
【００３８】
【図１】図１は、ＣＲｅＬＵ演算とコンボリューション演算を遂行できる既存のＣＮＮ学習装置の構成を示す。
【図２】図２は、本発明の一実施例にかかるＣＲｅＬＵ演算とコンボリューション演算を統合するためのＣＮＮ学習装置の演算方法を示す。
【図３Ａ】図３Ａは、図２の例示的な演算過程を示す。
【図３Ｂ】図３Ｂは、図２の例示的な演算過程を示す。
【図４Ａ】図４Ａは、ＣＲｅＬＵ＿Ｃｏｎｖ演算の例を示す。
【図４Ｂ】図４Ｂは、ＣＲｅＬＵ＿Ｃｏｎｖ演算の例を示す。
【図４Ｃ】図４Ｃは、ＮＣＲｅＬＵ＿Ｃｏｎｖ演算の例を示して、ここで、Ｎは３である。
【図５】図５は、本発明の他の実施例にかかるＣＮＮのＮＣＲｅＬＵ＿Ｃｏｎｖ演算方法を示す。
【図６Ａ】図６Ａは、図５の例示的な演算過程を示す。
【図６Ｂ】図６Ｂは、図５の例示的な演算過程を示す。
【図７】図７は、本発明のまた他の実施例により図６のＮＣＲｅＬＵ＿Ｃｏｎｖ演算を具現するためのＣＮＮ学習装置を示す。
【図８】図８は、図７の例示的な演算過程を示す。
【発明を実施するための形態】
【００３９】
後述する本発明に対する詳細な説明は、本発明が実施され得る特定の実施例を例示として示す添付図面を参照する。これらの実施例は当業者が本発明を実施することができるように充分詳細に説明される。本発明の多様な実施例は相互異なるが、相互排他的である必要はないことを理解されたい。例えば、ここに記載されている特定の形状、構造及び特性は一実施例にかかる本発明の精神及び範囲を逸脱せずに他の実施例で具現され得る。また、各々の開示された実施例内の個別構成要素の位置または配置は本発明の精神及び範囲を逸脱せずに変更され得ることを理解されたい。従って、後述する詳細な説明は限定的な意味で捉えようとするものではなく、本発明の範囲は、適切に説明されると、その請求項が主張することと均等なすべての範囲と、併せて添付された請求項によってのみ限定される。図面で類似する参照符号はいくつかの側面にかけて同一か類似する機能を指称する。
【００４０】
以下、本発明が属する技術分野で通常の知識を有する者が本発明を容易に実施することができるようにするために、本発明の好ましい実施例について添付の図面を参照して詳細に説明することとする。
【００４１】
図２は本発明の一実施例にかかるＣＲｅＬＵ演算とコンボリューション演算を統合するためのＣＮＮ学習装置の演算方法を示す。
【００４２】
図２を参照すれば、本発明にかかるＣＲｅＬＵ演算とコンボリューション演算を統合するためのＣＮＮ演算装置２００は比較器２０１、選択器２０２及び乗算器２０３を含む。本発明にかかるＣＮＮ演算装置２００は所定の入力（例えば、以前のコンボリューションレイヤ（未図示）から伝達された特徴マップ）を受信するための通信部（未図示）と前記比較器２０１、選択器２０２及び乗算器２０３で遂行するプロセスを遂行するプロセッサ（未図示）から構成され得る。即ち、前記比較器２０１、選択器２０２及び乗算器２０３の機能はＣＮＮ演算装置２００内のプロセッサ（未図示）で遂行される各プロセスで具現され得る。
【００４３】
再び図１を参照すれば、図１のＣＲｅＬＵ１２０の演算は一つの入力に対して二つの出力を作り出すのに下のような数式で表現され得る。
【００４４】
【数３】
2019075114.tif 000018
【００４５】
上の数式３のように、ＣＲｅＬＵは入力値の範囲に応じて一番目または二番目の出力値だけ０ではない値を有するようにする。
【００４６】
万一ＣＮＮのコンボリューションレイヤ１３０がコンボリューションフィルタの要素パラメータ値として
【数４−１】
2019075114.tif 000019
を有する場合、ＣＮＮでＣＲｅＬＵ１２０の演算結果を入力でコンボリューションレイヤ１３０による演算をすることは、下のような数式で簡略に表現され得る。
【００４７】
【数４】
2019075114.tif 000020
【００４８】
上の数式４のように、ＣＲｅＬＵ演算とコンボリューション演算を合わせて考えると、ＣＲｅＬＵの入力値の範囲に応じてコンボリューションレイヤのパラメータ値を定める形態に変えて次のような数式で表現し得る。
【００４９】
【数５】
2019075114.tif 000021
【００５０】
ここで、ＣＲｅＬＵ＿ＣｏｎｖはＣＲｅＬＵユニットの出力にコンボリューションフィルタを適用した演算結果を示して、ｘは入力値、前記ｗ1、ｗ2はコンボリューションレイヤのパラメータ、ａ、ｂは前記ｗ1、ｗ2を獲得するための学習されたコンボリューションレイヤの要素パラメータである。
【００５１】
図２は前記数式５を具現するためのＣＮＮ演算装置２００の演算方法を示す。
【００５２】
従来技術によりＣＲｅＬＵ演算の次にコンボリューション演算を適用すると、ＣＲｅＬＵの出力値に０を掛ける演算のような不要な演算が多く生じざるを得ない。しかし、本発明にかかるＣＮＮ演算装置２００を利用したＣＮＮ演算構成方法は、ＣＲｅＬＵでの演算とコンボリューション演算を一つに合わせて、ＣＲｅＬＵの入力値（ｘ）の範囲に応じてコンボリューションレイヤのパラメータ値（ｗ1、ｗ2）を選択して掛ける形態の効率的な演算過程を利用する。
【００５３】
具体的に図２を参照すれば、本発明にかかるＣＮＮ演算装置２００がテストイメージとしての入力イメージを入力されると、演算装置２００内の比較器２０１で入力されたイメージの各画素値に対応する入力値（ｘ）を所定の基準値と比較してその比較結果に対する比較結果値を出力する。前記入力イメージはＣＮＮ装置に入力されるテストイメージだけでなく以前のＣＮＮ演算装置、以前のコンボリューションレイヤまたは以前のアクティベーションレイヤなどから出力されて入力されたイメージまたは特徴マップなどのうち少なくとも一部を含む概念である。そして、前記所定の基準値は０であり得るが、これに限定されるものではない。
【００５４】
また、前記選択器２０２は前記比較結果を参照して前記パラメータ（ｗ1、ｗ2）のうち選択された特定パラメータを出力して乗算器２０３に伝達する。
【００５５】
そして、前記乗算器２０３は前記入力値（ｘ）と前記選択された特定パラメータを掛けて、掛けた値を求めて出力する。
【００５６】
例えば、前記数式５のように、入力値（ｘ）が０よりも小さい場合、前記演算装置２００は前記入力値にコンボリューションレイヤの第２要素パラメータ（ｂ）の負値である第１パラメータ（ｗ1）を掛けて出力し、入力値（ｘ）が０よりも大きいか同じ場合、前記演算装置２００はコンボリューションレイヤの第１要素パラメータ（ａ）値である第２パラメータ（ｗ2）を掛けて出力する。
【００５７】
図３Ａ及び図３Ｂは図２の例示的な演算過程を示す。
【００５８】
図３Ａを参照すれば、入力値（ｘ）が３である場合、前記比較器２０１では３が所定の基準値である０よりも大きいという比較結果値として２を出力し、前記選択器２０２では２個のフィルタパラメータ（ｗ1＝０．２，ｗ2＝０．８）のうち比較結果値である２に対応するｗ2（０．８）を乗算器２０３に出力する。それから、前記乗算器２０３は入力値（ｘ）にｗ2（０．８）を掛けた値である０．２４を生成した後にこれを出力する。
【００５９】
図３Ｂを参照すれば、入力値（ｘ）が−１である場合、前記比較器２０１では−１が所定の基準値の０よりも小さいという比較結果値として１を出力し、前記選択器２０２では２個のフィルタパラメータ（ｗ1＝０．２，ｗ2＝０．８）のうち比較結果値である１に対応するｗ1（０．２）を乗算器２０３に出力する。それから、前記乗算器２０３は入力値（ｘ）にｗ1（０．２）を掛けた値である−０．２を生成した後にこれを出力する。
【００６０】
図４Ａ及び図４ＢはＣＲｅＬＵ＿Ｃｏｎｖ演算の例を示して、図４ＣはＮＣＲｅＬＵ＿Ｃｏｎｖ演算の例を示して、ここで、Ｎは３である。
【００６１】
図４Ａ及び図４Ｂは図２、図３Ａ、及び図３Ｂを通じて説明したＣＲｅＬＵ＿Ｃｏｎｖ（ＣＲｅＬＵ演算とコンボリューション演算の統合演算）の入力（ｘ）と出力（ｙ＝ＣＲｅＬＵ＿Ｃｏｎｖ（ｘ））の関係を示すグラフである。前記図４Ａ及び図４Ｂのグラフの形はｗ1及びｗ2の値の符号によって異なり得る。
【００６２】
一方、図４Ｃは線分セグメント個数を３個に拡張し、前記グラフが（０，０）を必ず通過しなければならない制限条件を除去したグラフである。
【００６３】
図４Ｃに示されたとおり、線分セグメント個数は２個からｎ個に拡張し得て、比較値（以下、区間区分の基準値）も拡張され得る。ここで、各々の区間は入力値と比較される各々の範囲に対する情報が含まれ得る。前記演算装置の前記比較器は前記入力値がどの区間に属するかに対する情報を参照にして決定された比較結果を出力し得る。
【００６４】
前記線分セグメント個数は図４Ａ及び４Ｂのように２個から図４Ｃのようにｎ個（ｎ＝＞３、例えば、３）まで増加し得て、前記比較値は図４Ａ及び４Ｂのように、１から図４Ｃのようにｎ−１（例えば、２）まで増加し得る。このようになれば、ｐｉｅｃｅｗｉｓｅ  ｌｉｎｅａｒ  ｃｏｎｔｉｎｕｏｕｓ  ｆｕｎｃｔｉｏｎ形態のＮＣＲｅＬＵ＿Ｃｏｎｖ演算器を具現し得るようになる。
【００６５】
かかるＮＣＲｅＬＵ＿Ｃｏｎｖ演算器は下のような数式で定義され得る。
【００６６】
【数６】
2019075114.tif 000022
【００６７】
ここで、ＮＣＲｅＬＵ＿ＣｏｎｖはＮ個のアクティベーションユニット（以下、Ｎ−ｗａｙ  ＣＲｅＬＵ（Ｎ−ｗａｙ  Ｃｏｎｃａｔｅｎａｔｅｄ  Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔｓ）またはＮＣＲｅＬＵという）から構成されるＣＲｅＬＵの出力にコンボリューションレイヤを適用した演算結果を示して、ｘは入力値、ｗiはコンボリューションレイヤの統合ウェイトパラメータ、ｂiはコンボリューションレイヤの修正バイアスパラメータ、ｖiは各々の区間区分の基準値である。
【００６８】
一方、前記数式６でｂi+1に対する条件式はＮＣＲｅＬＵ＿Ｃｏｎｖが連続関数（Ｃｏｎｔｉｎｕｏｕｓ  Ｆｕｎｃｔｉｏｎ）になるために必要で、ｂ1を除いたバイアス値は付与されたｂ1、ｗi、ｖi値によって決定される。
【００６９】
図５は本発明の他の実施例にかかるＣＮＮのＮＣＲｅＬＵ＿Ｃｏｎｖ演算方法を示す。
【００７０】
図５に示された本発明の一実施例にかかるＮＣＲｅＬＵ＿Ｃｏｎｖ演算を遂行するＣＮＮ演算装置５００は、図２に示された前記演算装置２００の改善されたバージョンである。前記演算装置２００は２個の比較区間を用いるが、前記演算装置５００はｐｉｅｃｅｗｉｓｅ  ｌｉｎｅａｒ  ｃｏｎｔｉｎｕｏｕｓ  ｆｕｎｃｔｉｏｎを適用して比較区間を２個からｎ個に拡張した装置である。
【００７１】
図５を参照すれば、本発明にかかるＣＮＮ演算装置５００はＮＣＲｅＬＵ演算とコンボリューション演算を同時に遂行し得て、比較器５０１、第１選択器５０２、第２選択器５０３、乗算器５０４及び加算器５０５を含む。
【００７２】
本発明にかかるＣＮＮ演算装置５００は入力値（例えば、以前の演算部から伝達された特徴マップ）を受信して演算された値を出力するための通信部（未図示）と前記比較器５０１、第１選択器５０２、第２選択器５０３、乗算器５０４及び加算器５０５で遂行するプロセスを遂行するプロセッサから構成され得る。即ち、前記比較器５０１、第１選択器５０２、第２選択器５０３、乗算器５０４及び加算器５０５の機能はＣＮＮ演算装置５００内のプロセッサ（未図示）で遂行される各プロセスで具現され得る。
【００７３】
具体的に図５を参照して、ＣＮＮ演算装置５００がテストイメージとしての入力イメージを入力されると、比較器５０１は入力されたイメージの各画素値に対応する入力値（ｘ）を所定の基準区間区分の値と比較してその比較結果に対する比較結果値を出力する。即ち、入力値（ｘ）が前記所定の区間区分の基準値のうちどの値の間の区間に該当するかに対する比較結果値を出力する。
【００７４】
例えば、図４Ｃに示された例では、ｘ値がｖ1よりも小さい場合、比較結果値として１を、ｘ値がｖ1とｖ2の間である場合、比較結果値として２を、ｘ値がｖ2よりも大きい場合、比較結果値として３を出力する。ここで、入力イメージは入力されたイメージ自体だけでなく、以前のコンボリューションレイヤから受信した特徴マップのうち少なくとも一つを含む概念であり得る。
【００７５】
前記第１選択器５０２は比較結果を参照にして、コンボリューションレイヤの多数の統合ウェイトパラメータ（ｗ1，…，ｗn）のうち選択された特定統合ウェイトパラメータを出力し、前記第２選択器５０３は比較結果を参照にして、コンボリューションレイヤの多数の修正バイアスパラメータ（ｂ1，…，ｂn）のうち選択された特定修正バイアスパラメータを出力する。一方、ＣＮＮ演算装置５００のプロセッサは第１選択器５０２のプロセスと第２選択器５０３のプロセスを同時に遂行し得る。
【００７６】
前記乗算器５０４は第１選択器５０２で選択された特定統合ウェイトパラメータを入力値（ｘ）と掛けて出力し、加算器５０５は乗算器５０４の出力に第２選択器５０３で選択された特定修正バイアスパラメータを足して出力する。即ち、このように出力された値はＮＣＲｅＬＵユニットの出力にコンボリューションレイヤの演算を適用して得た結果値としてみなされ得る。
【００７７】
一方、数式６での統合ウェイトパラメータ（ｗi）、修正バイアスパラメータ（ｂi）、区間区分の基準値（ｖi）は次の数式７で算出される。
【００７８】
【数７】
2019075114.tif 000023
【００７９】
ここで、ｑi（ｑ1ないしｑn-1）は各バイアスレイヤの各々の要素バイアスパラメータで、ｐi（ｐ1ないしｐn）は前記コンボリューションレイヤの各々の要素ウェイトパラメータで、ｄは前記コンボリューションレイヤの要素バイアスパラメータであり、ｒａｎｋ（ｑi）は｛ｑ1，…．．ｑn-1｝のうちｑiが何番目に大きい数かを示して、ｒａｎｋ-1（ｉ）は｛ｑ1，…ｑn-1｝のうちｉ番目に大きい数のインデックス（Ｉｎｄｅｘ）を示す。
【００８０】
図５に示されたＮ−ｗａｙ  ＣＲｅＬＵ＿Ｃｏｎｖ（ＮＣＲｅＬＵ＿Ｃｏｎｖ）演算装置はすべての可能なｎ個のセグメントから構成されたｐｉｅｃｅｗｉｓｅ  ｌｉｎｅａｒ  ｃｏｎｔｉｎｕｏｕｓ  ｆｕｎｃｔｉｏｎを表現し得る。また、すべての充分にソフトな関数はｘの特定範囲内でｐｉｅｃｅｗｉｓｅ  ｌｉｎｅａｒ  ｃｏｎｔｉｎｕｏｕｓ  ｆｕｎｃｔｉｏｎに近似することができるので、Ｎ−ｗａｙ  ＣＲｅＬＵ＿Ｃｏｎｖ演算装置がそのような関数を学習し出すことができるためである。
【００８１】
これに比べて、図１のように、既存のバイアスがないＣＲｅＬＵユニットは２個のセグメントだけから構成されて、“ｆ（ｘ）＝０  ｗｈｅｎ  ｘ＝０”条件を満たすｐｉｅｃｅｗｉｓｅ  ｌｉｎｅａｒ  ｃｏｎｔｉｎｕｏｕｓ  ｆｕｎｃｔｉｏｎだけを表現し得る短所がある。これは図２に示された２個のセグメントから構成されるＣＲｅＬＵ＿Ｃｏｎｖ演算装置でも同様である。
【００８２】
図５のＮＣＲｅＬＵ＿Ｃｏｎｖ演算装置５００でＮＣＲｅＬＵ＿Ｃｏｎｖのｎが２である場合には下記のように表現し得て、これは図２のＣＲｅＬＵ＿Ｃｏｎｖ演算装置の演算内容と同一になる。
【００８３】
【数８】
2019075114.tif 000024
【００８４】
図６Ａ及び図６Ｂは図５の例示的な演算過程を示す。
【００８５】
図６Ａを参照すれば、入力値（ｘ）が−１．５である場合、比較器５０１では２個の区間区分の値（ｖ1，ｖ2）と入力値（ｘ）を比較し、入力値（ｘ＝−１．５）が第１区間区分の値（ｖ1）である−１よりも小さいので、比較結果値として１を出力して第１選択器５０２と第２選択器５０３に伝達する。前記第１選択器５０２では３個の統合ウェイトパラメータ（ｗ1，ｗ2，ｗ3）のうち比較結果値（１）に対応される特定統合ウェイトパラメータ（ｗ1）値である−１を選択して乗算器５０４に伝達し、前記第２選択器５０３では３個の修正バイアスパラメータ（ｂ1，ｂ2，ｂ3）のうち比較結果値（１）に対応される特定修正バイアスパラメータ（ｂ1）値である−１を選択して加算器５０５に伝達する。それから、乗算器５０４は入力値（ｘ＝−１．５）に第１選択器５０２の出力である選択された特定統合ウェイトパラメータ（ｗ1＝−１）を掛けた１．５を生成してこれを加算器５０５に伝達し、加算器５０５は乗算器５０４の出力値（１．５）に第２選択器５０３の出力である選択された特定修正バイアスパラメータ（ｂ1＝−１）を足した値である０．５を生成した後にこれを出力する。
【００８６】
図６Ｂを参照すれば、入力値（ｘ）が０．５である場合、比較器５０１では２個の区間区分の値（ｖ1，ｖ2）と入力値（ｘ）を比較し、入力値（ｘ＝０．５）が第１区間区分の値（ｖ1）である−１と第２区間区分の値（ｖ2）である１の間であるため比較結果値として２を出力して第１選択器５０２と第２選択器５０３に伝達する。前記第１選択器５０２では３個の統合ウェイトパラメータ（ｗ1，ｗ2，ｗ3）のうち比較結果値（２）に対応される特定統合ウェイトパラメータ（ｗ2）値である０．５を選択して乗算器５０４に伝達し、前記第２選択器５０３では３個の修正バイアスパラメータ（ｂ1，ｂ2，ｂ3）のうち比較結果値（２）に対応される特定修正バイアスパラメータ（ｂ2）値である０．５を選択して加算器５０５に伝達する。それから、乗算器５０４は入力値（ｘ＝０．５）に第１選択器５０２の出力である選択された特定統合ウェイトパラメータ（ｗ2＝０．５）を掛けた０．２５を生成してこれを加算器５０５に伝達し、加算器５０５は乗算器５０４の出力値（０．２５）に第２選択器５０３の出力である選択された特定修正バイアスパラメータ（ｂ2＝０．５）を足した値である０．７５を生成した後にこれを出力する。
【００８７】
一方、数式６での統合ウェイトパラメータ（ｗi）、修正バイアスパラメータ（ｂi）及び区間区分の基準値（ｖi）を求めるためには数式７を利用しなければならず、数式７を利用するためには各バイアスレイヤの要素バイアスパラメータ（ｑi（ｉ＝１ないしｎ−１））、各コンボリューションレイヤの要素ウェイトパラメータ（ｐi（ｉ＝１ないしｎ））及びコンボリューションレイヤの要素バイアスパラメータ（ｄ）を学習装置を通じて求めなければならない。
【００８８】
図７は本発明のまた他の実施例により図６のＮＣＲｅＬＵ＿Ｃｏｎｖ演算を具現するためのＣＮＮ学習装置を示す。
【００８９】
本発明にかかるＣＮＮ学習装置７００は図１に示された一つのアクティベーションモジュールあたりの一つのＣＲｅＬＵを利用するＣＮＮ学習装置１００とは異なり、一つのアクティベーションモジュールでＮＣＲｅＬＵを利用し、前記ＮＣＲｅＬＵ（Ｎ−ｗａｙ  ＣＲｅＬＵ）ではｎ−１個のバイアスレイヤを有して、ｎが増加するほどバイアスレイヤと要素アクティベーションレイヤ（ＲｅＬＵ）のペアが増える。一方、下で説明するが、要素アクティベーションレイヤとコンカチネーションレイヤの順序が変われば、バイアスレイヤの数だけ増えて、要素アクティベーションレイヤは１個だけでもよい。
【００９０】
図７を参照すれば、ＣＮＮ学習装置７００はコンボリューションレイヤ７１０、７３０、ＮＣＲｅＬＵ７２０及び他のＮＣＲｅＬＵ（未図示）のような多くのＮＣＲｅＬＵが交互に配置される構成を有する。
【００９１】
前記アクティベーションモジュール（ＮＣＲｅＬＵ）７２０はｎ−１個のバイアスレイヤ７２１を含み、各々のバイアスレイヤは各々の要素バイアスパラメータ（ｑ1ないしｑn-1）を有する。好ましくは、第１バイアスレイヤの要素バイアスパラメータ（ｑ1）を除いた第２ないし第ｎ−１バイアスレイヤの要素バイアスパラメータ（ｑ2，…，ｑn-1）の順序はｑ2＞…＞ｑn-1に設定し得る。
【００９２】
また、アクティベーションモジュール７２０は一つのスケールレイヤ７２２を含み、ｎ個の要素アクティベーションレイヤ７２３を含む。一実施例で前記要素アクティベーションレイヤはＲｅＬＵレイヤである。前記スケールレイヤ７２２はｎ−１個のバイアスレイヤ７２１のうち特定バイアスレイヤ（例えば、第１バイアスレイヤ）と連結されて、前記特定バイアスレイヤの出力値に所定のスケール値を掛けるプロセスを遂行し、前記特定要素アクティベーションレイヤ（特定ＲｅＬＵレイヤ）に伝送する過程を遂行する。
【００９３】
そして、学習装置は、（ｉ）前記スケールレイヤ７２２に連結された特定要素アクティベーションレイヤをもって前記スケールレイヤ７２２の出力値に非線形アクティベーション関数を適用するようにし、（ｉｉ）前記各々の要素バイアスレイヤ７２１に連結された残りの要素アクティベーションレイヤをもって前記各々の要素バイアスレイヤの出力値に各々の非線形関数を適用するようにする。前記非線形アクティベーション関数はＲｅＬＵ演算で、前記スケールレイヤのスケール値は−１であり得るが、これに限定されるものではない。
【００９４】
そして、学習装置は、コンカチネーションレイヤ７２４をもって前記特定要素アクティベーションレイヤ及び前記残りの要素アクティベーションレイヤの出力値を一つにコンカチネートするようにし、前記コンカチネートされた出力値を獲得するようにする過程を遂行する。
【００９５】
他の例として、前記要素アクティベーションレイヤ７２３とコンカチネーションレイヤ７２４の順序は変わっても関係ない。万一要素アクティベーションレイヤ７２３がコンカチネーションレイヤ７２２の後にくる場合は、要素アクティベーションレイヤ７２３はｎ個ではなく１個だけでもよい。
【００９６】
再び図７を参照すれば、アクティベーションモジュール７２０の出力（即ち、コンカチネーションレイヤ７２４の出力）が次のコンボリューションレイヤ７３０に伝達されると、学習装置は、次のコンボリューションレイヤ７３０の各々の要素ウェイトパラメータ（ｐi）及び各々の要素バイアスパラメータ（ｄ）を用いてコンカチネートされた出力値にコンボリューション演算を適用するようにする。
【００９７】
そして、多数の反復されたコンボリューションレイヤ７１０、７３０、多数のＮＣＲｅＬＵ７２０及び他のＮＣＲｅＬＵ（未図示）は交互に配置され、獲得された出力はアプリケーションブロック７４０を通じて所望の結果値（例えば、ラベルイメージなど）を算出し、算出された結果値とこれに対応されるＧＴ値の間を比較してロスをロスレイヤ７５０で獲得して、算出されたロスを利用してバックプロパゲーションを遂行して、前記各々の要素バイアスレイヤの各々の要素バイアスパラメータ（ｑi）、要素ウェイトパラメータ（ｐi）及び前記要素バイアスパラメータ（ｄ）のうち少なくとも一部のパラメータを調節する。
【００９８】
図７のようにＮ−ｗａｙ  ＣｒｅＬＵを有するＣＮＮ学習装置７００を通じてＣＮＮ学習が完了すると、（ｉ）前記ｎ−１個のバイアスレイヤが学習したバイアス値ｑ1、…，ｑn-1と（ｉｉ）前記コンボリューションレイヤ７３０の要素ウェイトパラメータｐ1、…，ｐnと（ｉｉｉ）要素バイアスパラメータｄが獲得される。そして、上述したように、この値が数式６及び数式７を通じてＮＣＲｅＬＵ＿Ｃｏｎｖ演算装置で利用される。
【００９９】
一方、図７のＣＮＮ学習装置７００は以前のレイヤやユニットで生成した値を受信し、当該ユニットで生成した値を伝達するための通信部（未図示）と各ユニットとレイヤで遂行する演算プロセスを遂行するプロセッサ（未図示）から構成され得る。
【０１００】
図７のＣＮＮ学習装置で各パラメータに対する学習が完了するとロスレイヤ７５０を除去し、ロスレイヤ７５０がないテスト装置（未図示）によってテスト過程を遂行するようになる。即ち、テストイメージはコンボリューションレイヤ７１０、７３０、ＮＣＲｅＬＵ７２０及び他のＮＣＲｅＬＵ（未図示）を交互に配置した後、多数のコンボリューションレイヤ及び多数のＮＣＲｅＬＵを通過して獲得された出力がアプリケーションブロック７４０に入力されるようにし、アプリケーションブロック７４０から出力された結果値が獲得され得る。例えば、アプリケーションブロック７４０はＣＮＮモデルの用途に応じて、例えば客体感知ブロックや、セマンティックセグメンテーションブロックなどであり得るが、これに限定されるものではない。
【０１０１】
図８は図７の例示的な演算過程を示す。
【０１０２】
図８を参照すれば、図７の学習装置７００で求めたコンボリューションレイヤの要素ウェイトパラメータ（ｐ1，…，ｐn）と要素バイアスパラメータ（ｄ）、バイアスレイヤの要素バイアスパラメータ（ｑ1，…，ｑn-1）を数式６の代わりに図７の学習装置７００と同一のＣＮＮモデルを利用して入力値を演算した例を示す。
【０１０３】
図６Ｂのように、入力値（ｘ）として０．５が以前のコンボリューションレイヤ７１０でアクティベーションモジュール７２０に伝達されると、アクティベーションモジュール７２０の第１バイアスレイヤは第１バイアスパラメータ（ｑ1＝−１）を適用して−０．５をスケールレイヤと第２ＲｅＬＵレイヤに伝達し、第２バイアスレイヤは第２バイアスパラメータ（ｑ2＝１）を適用して１．５を第３ＲｅＬＵレイヤに伝達する。
【０１０４】
一方、スケールレイヤ７２２は−０．５値を伝達されて−１を掛けて生成した０．５を第１ＲｅＬＵレイヤに伝達する。結果的に、第１ないし第３ＲｅＬＵレイヤは各々０．５、−０．５、１．５を入力されてＲｅＬＵ演算して各々０．５、０、１．５を生成して出力する。そして、前記コンカチネーションレイヤ７２４は前記第１ないし第３ＲｅＬＵレイヤの出力をコンカチネーションし、コンカチネートされた値を後にくるコンボリューションレイヤに伝達する。
【０１０５】
前記コンボリューションレイヤは入力された値に要素ウェイトパラメータ（１，−０．５，１．５）と要素バイアスパラメータ（−２）を利用して、出力値（ｙ＝０．５＊１＋０＊（−０．５）＋１．５＊１．５＋（−２））で０．７５を生成して出力する。このように図７の学習装置または前記学習装置と類似する形態を有するＣＮＮモデルを通じて、前記ＣＮＮモデルのコンボリューションレイヤ７３０から出力した値である０．７５は図６Ｂの演算装置を通じた生成値と同一であることを確認することができる。
【０１０６】
本発明の技術分野の通常の技術者に理解され得ることとして、上で説明されたイメージ、例えばｉｎｐｕｔ  ｉｍａｇｅ、ｔｒａｉｎｉｎｇ  ｉｍａｇｅ、ｔｅｓｔ  ｉｍａｇｅのようなイメージデータの送受信が学習装置及びテスト装置の通信部によってなされ得て、特徴マップと演算を遂行するためのデータが学習装置及びテスト装置のプロセッサ（及び／または、メモリ）によって保有／維持され得て、コンボリューション演算、デコンボリューション演算、エラー値演算過程が主に学習装置、 演算装置及びテスト装置のプロセッサによって遂行され得るが、本発明がこれに限定されるものではない。
【０１０７】
以上で説明された本発明にかかる実施例は多様なコンピュータ構成要素を通じて遂行され得るプログラム命令語の形態で具現されてコンピュータで判読可能な記録媒体に記録され得る。前記コンピュータで判読可能な記録媒体はプログラム命令語、データファイル、データ構造などを単独または組み合わせて含まれ得る。前記コンピュータで判読可能な記録媒体に記録されるプログラム命令語は本発明のために特別に設計されて構成されたものか、コンピュータソフトウェア分野の当業者に公知となって使用可能なものでもよい。コンピュータで判読可能な記録媒体の例には、ハードディスク、フロッピィディスク及び磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤのような光記録媒体、フロプティカルディスク（ｆｌｏｐｔｉｃａｌｄｉｓｋ）のような磁気−光媒体（ｍａｇｎｅｔｏ−ｏｐｔｉｃａｌｍｅｄｉａ）、及びＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令語を保存して遂行するように特別に構成されたハードウェア装置が含まれる。プログラム命令語の例には、コンパイラによって作られるものような機械語コードだけではなく、インタプリタなどを用いてコンピュータによって実行され得る高級言語コードも含まれる。前記ハードウェア装置は本発明にかかる処理を遂行するために一つ以上のソフトウェアモジュールとして作動するように構成されることがあり、その逆も同様である。
【０１０８】
以上、本発明が具体的な構成要素などのような特定の事項と限定された実施例及び図面によって説明されたが、これは本発明のより全般的な理解を助けるために提供されたものであるに過ぎず、本発明が前記実施例に限定されるものではなく、本発明が属する技術分野において通常の知識を有する者であればかかる記載から多様な修正及び変形が行なわれ得る。
【０１０９】
従って、本発明の思想は前記説明された実施例に極限されて定められてはならず、後述する特許請求の範囲だけではなく、本特許請求の範囲と均等または等価的に変形されたすべてのものは本発明の思想の範疇に属するといえる。
【図１】
2019075114.tif 000031
【図２】
2019075114.tif 000032
【図３Ａ】
2019075114.tif 000033
【図３Ｂ】
2019075114.tif 000034
【図４Ａ】
2019075114.tif 000035
【図４Ｂ】
2019075114.tif 000036
【図４Ｃ】
2019075114.tif 000037
【図５】
2019075114.tif 000038
【図６Ａ】
2019075114.tif 000039
【図６Ｂ】
2019075114.tif 000040
【図７】
2019075114.tif 000041
【図８】
2019075114.tif 000042
【外国語明細書】
2019075114000001.pdf