(57)【要約】      （修正有）【課題】出力値にある小さな値を含む特定チャンネルの各値を適切に反映するために、少なくとも一つの特徴マップに含まれた値を平坦化するようにＣＮＮレイヤを変換する方法を提供する。【解決手段】ｍ個のコンボリューションブロックを含むＣＮＮのコンボリューションレイヤを変換する方法において、第ｋコンボリューションブロックに含まれた第ｋ初期コンボリューションレイヤの第ｋ初期重み付け値と、第（ｋ−１）コンボリューションブロックから出力された第（ｋ−１）特徴マップと、第ｋスケーリングパラメータ其々を参照して第ｋ量子化ロス値とを生成し、第ｋ最適スケーリングパラメータそれぞれを決定し、第ｋスケーリングレイヤ及び第ｋ逆スケーリングレイヤを生成し、第ｋスケーリングレイヤ及び第（ｋ−１）逆スケーリングレイヤを使用して第ｋ初期コンボリューションレイヤを第ｋ統合コンボリューションレイヤに変換する。【選択図】図３ｂ
2020119518.tif 000002
【特許請求の範囲】
【請求項１】
ｍ個のコンボリューションブロックを含むＣＮＮのコンボリューションレイヤを変換する方法において、
（ａ）コンピューティング装置が、スケーリングパラメータを決定するために使用される入力イメージが取得されると、（ｉ）第ｋコンボリューションブロックに含まれた第ｋ初期コンボリューションレイヤの一つ以上の第ｋ初期重み付け値と、（ｉｉ）（ｉｉ−１）ｋが１である場合、前記入力イメージ、（ｉｉ−２）ｋが２からｍまでの常数である場合、第（ｋ−１）コンボリューションブロックから出力された前記入力イメージに対応する第（ｋ−１）特徴マップと、（ｉｉｉ）（ｉｉｉ−１）ｋが１である場合、前記入力イメージに含まれたチャンネルそれぞれに対応する第ｋスケーリングパラメータそれぞれ、及び（ｉｉｉ−２）ｋが２からｍまでの常数である場合、前記第（ｋ−１）特徴マップに含まれたチャンネルそれぞれに対応する第ｋスケーリングパラメータそれぞれを参照して、一つ以上の第ｋ量子化ロス値と、を生成する段階（ｋは１からｍまでの常数である）；
（ｂ）前記コンピューティング装置が、前記第ｋ量子化ロス値を参照して、前記第ｋスケーリングパラメータのうちで前記第（ｋ−１）特徴マップに含まれた前記チャンネルそれぞれに対応する第ｋ最適スケーリングパラメータそれぞれを決定する段階；
（ｃ）前記コンピューティング装置が、前記第ｋ最適スケーリングパラメータを参照して、第ｋスケーリングレイヤ及び第ｋ逆スケーリングレイヤを生成する段階；
（ｄ）前記コンピューティング装置が、（ｉ）ｋが１である場合、前記第ｋスケーリングレイヤを使用して、前記第ｋ初期コンボリューションレイヤを第ｋ統合コンボリューションレイヤに変換し、（ｉｉ）ｋが２からｍまでの常数である場合、前記第ｋスケーリングレイヤ及び前記第（ｋ−１）逆スケーリングレイヤを使用して、前記第ｋ初期コンボリューションレイヤを前記第ｋ統合コンボリューションレイヤに変換する段階；
を含むことを特徴とする方法。
【請求項２】
前記（ａ）段階は、
前記コンピューティング装置が、（ｉｖ）ＢＷ値（前記ＢＷ値は、前記ＣＮＮに含まれた重み付け値及び特徴マップに含まれた値を二進数で表現するために使用されたビットの個数である）、及び（ｖ）第ｋＦＬ値（前記第ｋＦＬ値は、（ｉ）前記第ｋ初期コンボリューションレイヤの前記第ｋ初期重み付け値、及び（ｉｉ）ｋが２からｍまでの常数である場合、前記第（ｋ−１）特徴マップに含まれた値であり、ｋが１である場合、前記入力イメージに含まれた値のＬＳＢが示す数の指数の絶対値である）をさらに参照して、前記第ｋ量子化ロス値を生成することを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記（ａ）段階は、
【数１】
2020119518.tif 000007
前記数式によって前記第ｋ量子化ロス値が生成され、前記数式でθｐは（ｉ）ｋが２からｍまでの常数である場合、前記第（ｋ−１）特徴マップ及び前記第ｋ初期コンボリューション特徴マップの前記第ｋ初期重み付け値の値、（ｉｉ）ｋが１である場合、前記入力イメージ及び前記第ｋ初期コンボリューション特徴マップの前記第ｋ初期重み付け値の値を含み、Ｃｋｉは、前記第ｋスケーリングパラメータのうちで特定の第ｋスケーリングパラメータであり、ＦＬ及びＢＷはそれぞれ前記ＦＬ値及び前記ＢＷ値であり、Ｑ演算は、前記ＦＬ値及び前記ＢＷ値を参照して生成されたＣｋｉθｉの量子化された値とＣｋｉθｉとの間の差を生成する演算であり、
前記（ｂ）段階は、前記コンピューティング装置が、前記△Ｌｋを最も小さくする前記Ｃｋｉを選択することにより、前記第ｋ最適スケーリングパラメータそれぞれを決定することを特徴とする請求項２に記載の方法。
【請求項４】
前記コンピューティング装置が、ネステロフ加速勾配（Ｎｅｓｔｅｒｏｖ  Ａｃｃｅｌｅｒａｔｅｄ  Ｇｒａｄｉｅｎｔ）法を使用して、前記Ｃｋｉを選択して前記第ｋ最適スケーリングパラメータを決定することを特徴とする請求項３に記載の方法。
【請求項５】
前記（ｃ）段階は、
前記コンピューティング装置が、
前記第ｋ最適スケーリングパラメータそれぞれがその構成要素として決定される前記第ｋスケーリングレイヤを生成し、前記第ｋ最適スケーリングパラメータの逆数それぞれがその構成要素として決定される前記第ｋ逆スケーリングレイヤを生成することを特徴とする請求項１に記載の方法。
【請求項６】
前記（ｄ）段階は、
前記コンピューティング装置が、（１）ｋが１である場合、（ｉ）前記第ｋ初期コンボリューションレイヤ及び前記第ｋスケーリングレイヤの演算を入力値に適用して生成された結果と、（ｉｉ）前記第ｋ統合コンボリューションレイヤの演算を前記入力値に適用して生成された結果との間の差が閾値より小さくなるように前記第ｋ初期コンボリューションレイヤを前記第ｋ統合コンボリューションレイヤに変換し、（２）ｋが２以上ｍ以下の常数である場合、（ｉ）第（ｋ−１）逆スケーリングレイヤと、前記第ｋ初期コンボリューションレイヤと、前記第ｋスケーリングレイヤとの演算を入力値に適用して生成された結果と、（ｉｉ）前記第ｋ統合コンボリューションレイヤの演算を入力値に適用して生成された結果との間の差が前記閾値より小さくなるように前記第ｋ初期コンボリューションレイヤを前記第ｋ統合コンボリューションレイヤに変換することを特徴とする請求項１に記載の方法。
【請求項７】
（ｅ）前記コンピューティング装置が、前記第ｋコンボリューションブロックに含まれた前記第ｋ統合コンボリューションレイヤの各重み付け値を量子化して、前記第ｋコンボリューションブロックにより遂行されるＣＮＮ演算に対する最適化重み付け値として、第ｋ量子化重み付け値を生成する段階；
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項８】
ｍ個のコンボリューションブロックを含むＣＮＮのコンボリューションレイヤを変換するコンピューティング装置において、
各インストラクションを格納する少なくとも一つのメモリと、
（Ｉ）（ｉ）第ｋコンボリューションブロックに含まれた第ｋ初期コンボリューションレイヤの一つ以上の第ｋ初期重み付け値と、（ｉｉ）（ｉｉ−１）ｋが１である場合、スケーリングパラメータを決定するために使用される入力イメージ、（ｉｉ−２）ｋが２からｍまでの常数である場合、第（ｋ−１）コンボリューションブロックから出力された前記入力イメージに対応する第（ｋ−１）特徴マップと、（ｉｉｉ）（ｉｉｉ−１）ｋが１である場合、前記入力イメージに含まれたチャンネルそれぞれに対応する第ｋスケーリングパラメータそれぞれ、及び（ｉｉｉ−２）ｋが２からｍまでの常数である場合、前記第（ｋ−１）特徴マップに含まれたチャンネルそれぞれに対応する第ｋスケーリングパラメータそれぞれを参照して、一つ以上の第ｋ量子化ロス値と、を生成するプロセス（ｋは１からｍまでの常数である）；（ＩＩ）前記第ｋ量子化ロス値を参照して、前記第ｋスケーリングパラメータのうちで前記第（ｋ−１）特徴マップに含まれた前記チャンネルそれぞれに対応する第ｋ最適スケーリングパラメータそれぞれを決定するプロセス；（ＩＩＩ）前記第ｋ最適スケーリングパラメータを参照して、第ｋスケーリングレイヤ及び第ｋ逆スケーリングレイヤを生成するプロセス；（ＩＶ）（ｉ）ｋが１である場合、前記第ｋスケーリングレイヤを使用して、前記第ｋ初期コンボリューションレイヤを第ｋ統合コンボリューションレイヤに変換し、（ｉｉ）ｋが２からｍまでの常数である場合、前記第ｋスケーリングレイヤ及び前記第（ｋ−１）逆スケーリングレイヤを使用して前記第ｋ初期コンボリューションレイヤを前記第ｋ統合コンボリューションレイヤに変換するプロセス；を遂行するための前記インストラクションを実行するように構成された少なくとも一つのプロセッサと、
を含むことを特徴とするコンピューティング装置。
【請求項９】
前記（Ｉ）プロセスは、
前記プロセッサが、（ｉｖ）ＢＷ値（前記ＢＷ値は、前記ＣＮＮに含まれた重み付け値及び特徴マップに含まれた値を二進数で表現するために使用されたビットの個数である）、及び（ｖ）第ｋＦＬ値（前記第ｋＦＬ値は、（１）前記第ｋ初期コンボリューションレイヤの前記第ｋ初期重み付け値、及び（２）ｋが２からｍまでの常数である場合、前記第（ｋ−１）特徴マップに含まれた値であり、ｋが１である場合、前記入力イメージに含まれた値のＬＳＢが示す数の指数の絶対値である）をさらに参照して、前記第ｋ量子化ロス値を生成することを含むことを特徴とする請求項８に記載のコンピューティング装置。
【請求項１０】
前記（Ｉ）プロセスは、
前記プロセッサが、
【数２】
2020119518.tif 000008
前記数式によって前記第ｋ量子化ロス値が生成され、前記数式でθｐは（ｉ）ｋが２からｍまでの常数である場合、前記第（ｋ−１）特徴マップ及び前記第ｋ初期コンボリューション特徴マップの前記第ｋ初期重み付け値の値、（ｉｉ）ｋが１である場合、前記入力イメージ及び前記第ｋ初期コンボリューション特徴マップの前記第ｋ初期重み付け値の値を含み、Ｃｋｉは、前記第ｋスケーリングパラメータのうちで特定の第ｋスケーリングパラメータであり、ＦＬ及びＢＷはそれぞれ前記ＦＬ値及び前記ＢＷ値であり、Ｑ演算は、前記ＦＬ値及び前記ＢＷ値を参照して生成されたＣｋｉθｉの量子化された値とＣｋｉθｉとの間の差を生成する演算であり、
前記（ＩＩ）プロセスは、
前記プロセッサが、
前記△Ｌｋを最も小さくする前記Ｃｋｉを選択することにより、前記第ｋ最適スケーリングパラメータそれぞれを決定することを特徴とする請求項９に記載のコンピューティング装置。
【請求項１１】
前記プロセッサが、ネステロフ加速勾配（Ｎｅｓｔｅｒｏｖ  Ａｃｃｅｌｅｒａｔｅｄ  Ｇｒａｄｉｅｎｔ）法を使用して、前記Ｃｋｉを選択して前記第ｋ最適スケーリングパラメータを決定することを特徴とする請求項１０に記載のコンピューティング装置。
【請求項１２】
前記（ＩＩＩ）プロセスは、
前記プロセッサが、前記第ｋ最適スケーリングパラメータそれぞれがその構成要素として決定される前記第ｋスケーリングレイヤを生成し、前記第ｋ最適スケーリングパラメータの逆数それぞれがその構成要素として決定される前記第ｋ逆スケーリングレイヤを生成することを特徴とする請求項８に記載のコンピューティング装置。
【請求項１３】
前記（ＩＶ）プロセスは、
前記プロセッサが、（１）ｋが１である場合、（ｉ）前記第ｋ初期コンボリューションレイヤ及び前記第ｋスケーリングレイヤの演算を入力値に適用して生成された結果と、（ｉｉ）前記第ｋ統合コンボリューションレイヤの演算を前記入力値に適用して生成された結果との差が閾値より小さくなるように前記第ｋ初期コンボリューションレイヤを前記第ｋ統合コンボリューションレイヤに変換し、（２）ｋが２以上ｍ以下の常数である場合、（ｉ）第（ｋ−１）逆スケーリングレイヤと、前記第ｋ初期コンボリューションレイヤと、前記第ｋスケーリングレイヤとの演算を入力値に適用して生成された結果と、（ｉｉ）前記第ｋ統合コンボリューションレイヤの演算を入力値に適用して生成された結果との間の差が前記閾値より小さくなるように前記第ｋ初期コンボリューションレイヤを前記第ｋ統合コンボリューションレイヤに変換することを特徴とする請求項８に記載のコンピューティング装置。
【請求項１４】
前記プロセッサが、
（Ｖ）前記第ｋコンボリューションブロックに含まれた前記第ｋ統合コンボリューションレイヤの重み付け値を量子化して、前記第ｋコンボリューションブロックにより遂行されるＣＮＮ演算に対する最適化重み付け値として、第ｋ量子化重み付け値を生成するプロセス；をさらに遂行することを特徴とする請求項８に記載のコンピューティング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ｍ個のコンボリューションブロックを含むＣＮＮのコンボリューションレイヤを変換する方法において、（ａ）コンピューティング装置が、スケーリングパラメータを決定するために使用される入力イメージが取得されると、（ｉ）第ｋコンボリューションブロックに含まれた第ｋ初期コンボリューションレイヤの一つ以上の第ｋ初期重み付け値と、（ｉｉ）（ｉｉ−１）ｋが１である場合、前記入力イメージ、（ｉｉ−２）ｋが２からｍまでの常数である場合、第（ｋ−１）コンボリューションブロックから出力された前記入力イメージに対応する第（ｋ−１）特徴マップと、（ｉｉｉ）（ｉｉｉ−１）ｋが１である場合、前記入力イメージに含まれたチャンネルそれぞれに対応する第ｋスケーリングパラメータそれぞれ、及び（ｉｉｉ−２）ｋが２からｍまでの常数である場合、前記第（ｋ−１）特徴マップに含まれたチャンネルそれぞれに対応する第ｋスケーリングパラメータそれぞれを参照して、一つ以上の第ｋ量子化ロス値と、を生成する段階（ｋは１からｍまでの常数である）；（ｂ）前記コンピューティング装置が、前記第ｋ量子化ロス値を参照して、前記第ｋスケーリングパラメータのうちで前記第（ｋ−１）特徴マップに含まれた前記チャンネルそれぞれに対応する第ｋ最適スケーリングパラメータそれぞれを決定する段階；（ｃ）前記コンピューティング装置が、前記第ｋ最適スケーリングパラメータを参照して第ｋスケーリングレイヤ及び第ｋ逆スケーリングレイヤを生成する段階；（ｄ）前記コンピューティング装置が、（ｉ）ｋが１である場合、前記第ｋスケーリングレイヤを使用して、前記第ｋ初期コンボリューションレイヤを第ｋ統合コンボリューションレイヤに変換し、（ｉｉ）ｋが２からｍまでの常数である場合、前記第ｋスケーリングレイヤ及び前記第（ｋ−１）逆スケーリングレイヤを使用して前記第ｋ初期コンボリューションレイヤを前記第ｋ統合コンボリューションレイヤに変換する段階；を含むことを特徴とする方法及び装置に関する。
【背景技術】
【０００２】
ディープコンボリューションニューラルネットワーク（Ｄｅｅｐ  Ｃｏｎｖｏｌｕｔｉｏｎ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋｓ；ＤｅｅｐＣＮＮ）は、ディープラーニング分野で起きた驚くべき発展の核心である。ＣＮＮは文字の認識問題を解決するために９０年代にも使用されたが、近年になって機械学習（Ｍａｃｈｉｎｅ  Ｌｅａｒｎｉｎｇ）分野で広く使用されるようになった。例えば、ＣＮＮは２０１２年にイメージ認識コンテスト（ＩｍａｇｅＮｅｔ  Ｌａｒｇｅ  Ｓｃａｌｅ  Ｖｉｓｕａｌ  Ｒｅｃｏｇｎｉｔｉｏｎ  Ｃｈａｌｌｅｎｇｅ）で他の競争相手に勝って優勝を収めた。その後、ＣＮＮは、機械学習分野で非常に有用なツールとして使用されるようになった。
【０００３】
しかし、ディープラーニングアルゴリズムには、３２ビット浮動小数点演算が必要であるという偏見があったため、モバイル装置は、ディープラーニングアルゴリズムを含むプログラムを遂行することができないものとみなされていた。
【０００４】
ところが、３２ビット浮動小数点演算より少ないコンピューティング性能が必要な１０ビット固定小数点演算がディープラーニングアルゴリズムには十分であるということが一部の実験で証明された。従って、リソースが制限された装置、すなわちモバイル装置において、ディープラーニングアルゴリズムに１０ビット固定小数点演算を使用する方法を提供しようとする多くの試みがあった。
【０００５】
３２ビット浮動小数点で表現された数を１０ビット固定小数点に量子化するいくつかの成功裏の方法が提示されたが、重要な問題があった。複数のチャンネルに含まれた値が大きく変わる場合、チャンネルのうち小さな値を含む一つ以上の特定チャンネルの値が無視されることがある。それは、図５において見ることができる。
【０００６】
図５は、大きく異なる様々なチャンネルの値を例示的に示している。
【０００７】
図５を参照すると、第１コンボリューションブロック２１０−１から出力された第１特徴マップの第１チャンネルに含まれた各値は、（０．６４、０．６５、０．６３）であり、第２チャンネルに含まれた各値は、（０．００２、０．００１、０．００１９）であることが分かる。従来技術によると、第１チャンネルの値及び第２チャンネルの値が量子化される場合、量子化に使用される単位値は第１チャンネルまたは第２チャンネルによって決定された。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
単位値が第１チャンネルによって決定される場合、単位値は第１チャンネルに含まれた値を示すために大きくなる。そして、単位値が第２チャンネルに含まれた値に比べてあまりにも大きいため、第２チャンネルに含まれた値は０に量子化され得る。反対に、単位値が第２チャンネルによって決定される場合、単位値は第２チャンネルに含まれた値を示すために小さくなる。それでは、単位値があまりにも小さくて第１チャンネルに含まれた値を正しく量子化することができない。
【０００９】
特定チャンネルの各値が無視されるか、または特定チャンネルの各値が上記のように適切に量子化されなければ、ＣＮＮの出力が歪曲されかねない。
【００１０】
本発明は、上述した問題点を解決することを目的とする。
【００１１】
本発明は、出力値にある小さな値を含む特定チャンネルの各値を適切に反映するために、少なくとも一つの特徴マップに含まれた値を平坦化することができるようにＣＮＮレイヤを変換する方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
前記のような本発明の目的を達成し、後述する本発明の特徴的な効果を実現するための本発明の特徴的な構成は以下の通りである。
【００１３】
本発明の一態様によると、ｍ個のコンボリューションブロックを含むＣＮＮのコンボリューションレイヤを変換する方法において、（ａ）コンピューティング装置が、スケーリングパラメータを決定するために使用される入力イメージが取得されると、（ｉ）第ｋコンボリューションブロックに含まれた第ｋ初期コンボリューションレイヤの一つ以上の第ｋ初期重み付け値と、（ｉｉ）（ｉｉ−１）ｋが１である場合、前記入力イメージ、（ｉｉ−２）ｋが２からｍまでの常数である場合、第（ｋ−１）コンボリューションブロックから出力された前記入力イメージに対応する第（ｋ−１）特徴マップと、（ｉｉｉ）（ｉｉｉ−１）ｋが１である場合、前記入力イメージに含まれたチャンネルそれぞれに対応する第ｋスケーリングパラメータそれぞれ、及び（ｉｉｉ−２）ｋが２からｍまでの常数である場合、前記第（ｋ−１）特徴マップに含まれたチャンネルそれぞれに対応する第ｋスケーリングパラメータそれぞれを参照して、一つ以上の第ｋ量子化ロス値と、を生成する段階（ｋは１からｍまでの常数である）；（ｂ）前記コンピューティング装置が、前記第ｋ量子化ロス値を参照して、前記第ｋスケーリングパラメータのうちで前記第（ｋ−１）特徴マップに含まれた前記チャンネルそれぞれに対応する第ｋ最適スケーリングパラメータそれぞれを決定する段階；（ｃ）前記コンピューティング装置が、前記第ｋ最適スケーリングパラメータを参照して第ｋスケーリングレイヤ及び第ｋ逆スケーリングレイヤを生成する段階；（ｄ）前記コンピューティング装置が、（ｉ）ｋが１である場合、前記第ｋスケーリングレイヤを使用して、前記第ｋ初期コンボリューションレイヤを第ｋ統合コンボリューションレイヤに変換し、（ｉｉ）ｋが２からｍまでの常数である場合、前記第ｋスケーリングレイヤ及び前記第（ｋ−１）逆スケーリングレイヤを使用して前記第ｋ初期コンボリューションレイヤを前記第ｋ統合コンボリューションレイヤに変換する段階；を含むことを特徴とする方法が提供される。
【００１４】
一実施例において、前記（ａ）段階は、前記コンピューティング装置が、（ｉｖ）ＢＷ値（前記ＢＷ値は、前記ＣＮＮに含まれた重み付け値及び特徴マップに含まれた値を二進数で表現するために使用されたビットの個数である）、及び（ｖ）第ｋＦＬ値（前記第ｋＦＬ値は、（ｉ）前記第ｋ初期コンボリューションレイヤの前記第ｋ初期重み付け値、及び（ｉｉ）ｋが２からｍまでの常数である場合、前記第（ｋ−１）特徴マップに含まれた値であり、ｋが１である場合、前記入力イメージに含まれた値のＬＳＢが示す数の指数の絶対値である）をさらに参照して、前記第ｋ量子化ロス値を生成することを含むことを特徴とする方法が提供される。
【００１５】
【数１】
2020119518.tif 000003
一実施例において、前記（ａ）段階は、前記数式によって前記第ｋ量子化ロス値が生成され、前記数式でθｐは（ｉ）ｋが２からｍまでの常数である場合、前記第（ｋ−１）特徴マップ及び前記第ｋ初期コンボリューション特徴マップの前記第ｋ初期重み付け値の値、（ｉｉ）ｋが１である場合、前記入力イメージ及び前記第ｋ初期コンボリューション特徴マップの前記第ｋ初期重み付け値の値を含み、Ｃｋｉは、前記第ｋスケーリングパラメータのうちで特定の第ｋスケーリングパラメータであり、ＦＬ及びＢＷはそれぞれ前記ＦＬ値及び前記ＢＷ値であり、Ｑ演算は、前記ＦＬ値及び前記ＢＷ値を参照して生成されたＣｋｉθｉの量子化された値とＣｋｉθｉとの間の差を生成する演算であり、前記（ｂ）段階は、前記コンピューティング装置が、前記△Ｌｋを最も小さくする前記Ｃｋｉを選択することにより、前記第ｋ最適スケーリングパラメータそれぞれを決定することを特徴とする方法が提供される。
【００１６】
一実施例において、前記コンピューティング装置が、ネステロフ加速勾配（Ｎｅｓｔｅｒｏｖ  Ａｃｃｅｌｅｒａｔｅｄ  Ｇｒａｄｉｅｎｔ）法を使用して、前記Ｃｋｉを選択して前記第ｋ最適スケーリングパラメータを決定することを特徴とする方法が提供される。
【００１７】
一実施例において、前記（ｃ）段階は、前記コンピューティング装置が、前記第ｋ最適スケーリングパラメータそれぞれがその構成要素として決定される前記第ｋスケーリングレイヤを生成し、前記第ｋ最適スケーリングパラメータの逆数それぞれがその構成要素として決定される前記第ｋ逆スケーリングレイヤを生成することを特徴とする方法が提供される。
【００１８】
一実施例において、前記（ｄ）段階は、前記コンピューティング装置が、（１）ｋが１である場合、（ｉ）前記第ｋ初期コンボリューションレイヤ及び前記第ｋスケーリングレイヤの演算を入力値に適用して生成された結果と、（ｉｉ）前記第ｋ統合コンボリューションレイヤの演算を前記入力値に適用して生成された結果との間の差が閾値より小さくなるように前記第ｋ初期コンボリューションレイヤを前記第ｋ統合コンボリューションレイヤに変換し、（２）ｋが２以上ｍ以下の常数である場合、（ｉ）第（ｋ−１）逆スケーリングレイヤと、前記第ｋ初期コンボリューションレイヤと、前記第ｋスケーリングレイヤとの演算を入力値に適用して生成された結果と、（ｉｉ）前記第ｋ統合コンボリューションレイヤの演算を入力値に適用して生成された結果との間の差が前記閾値より小さくなるように前記第ｋ初期コンボリューションレイヤを前記第ｋ統合コンボリューションレイヤに変換することを特徴とする方法が提供される。
【００１９】
一実施例において、（ｅ）前記コンピューティング装置が、前記第ｋコンボリューションブロックに含まれた前記第ｋ統合コンボリューションレイヤの各重み付け値を量子化して、前記第ｋコンボリューションブロックによって遂行されるＣＮＮ演算に対する最適化重み付け値として、第ｋ量子化重み付け値を生成する段階；をさらに含むことを特徴とする方法が提供される。
【００２０】
本発明の他の態様によると、ｍ個のコンボリューションブロックを含むＣＮＮのコンボリューションレイヤを変換するコンピューティング装置において、各インストラクションを格納する少なくとも一つのメモリと、（Ｉ）（ｉ）第ｋコンボリューションブロックに含まれた第ｋ初期コンボリューションレイヤの一つ以上の第ｋ初期重み付け値と、（ｉｉ）（ｉｉ−１）ｋが１である場合、スケーリングパラメータを決定するために使用される入力イメージ、（ｉｉ−２）ｋが２からｍまでの常数である場合、第（ｋ−１）コンボリューションブロックから出力された前記入力イメージに対応する第（ｋ−１）特徴マップと、（ｉｉｉ）（ｉｉｉ−１）ｋが１である場合、前記入力イメージに含まれたチャンネルそれぞれに対応する第ｋスケーリングパラメータそれぞれ、及び（ｉｉｉ−２）ｋが２からｍまでの常数である場合、前記第（ｋ−１）特徴マップに含まれたチャンネルそれぞれに対応する第ｋスケーリングパラメータそれぞれを参照して、一つ以上の第ｋ量子化ロス値と、を生成するプロセス（ｋは１からｍまでの常数である）；（ＩＩ）前記第ｋ量子化ロス値を参照して、前記第ｋスケーリングパラメータのうちで前記第（ｋ−１）特徴マップに含まれた前記チャンネルそれぞれに対応する第ｋ最適スケーリングパラメータそれぞれを決定するプロセス；（ＩＩＩ）前記第ｋ最適スケーリングパラメータを参照して、第ｋスケーリングレイヤ及び第ｋ逆スケーリングレイヤを生成するプロセス；（ＩＶ）（ｉ）ｋが１である場合、前記第ｋスケーリングレイヤを使用して、前記第ｋ初期コンボリューションレイヤを第ｋ統合コンボリューションレイヤに変換し、（ｉｉ）ｋが２からｍまでの常数である場合、前記第ｋスケーリングレイヤ及び前記第（ｋ−１）逆スケーリングレイヤを使用して前記第ｋ初期コンボリューションレイヤを前記第ｋ統合コンボリューションレイヤに変換するプロセス；を遂行するための前記インストラクションを実行するように構成された少なくとも一つのプロセッサと、を含むことを特徴とするコンピューティング装置が提供される。
【００２１】
一実施例において、前記（Ｉ）プロセスは、前記プロセッサが、（ｉｖ）ＢＷ値（前記ＢＷ値は、前記ＣＮＮに含まれた重み付け値及び特徴マップに含まれた値を二進数で表現するために使用されたビットの個数である）、及び（ｖ）第ｋＦＬ値（前記第ｋＦＬ値は、（１）前記第ｋ初期コンボリューションレイヤの前記第ｋ初期重み付け値、及び（２）ｋが２からｍまでの常数である場合、前記第（ｋ−１）特徴マップに含まれた値であり、ｋが１である場合、前記入力イメージに含まれた値のＬＳＢが示す数の指数の絶対値である）をさらに参照して、前記第ｋ量子化ロス値を生成することを含むことを特徴とするコンピューティング装置が提供される。
【００２２】
【数２】
2020119518.tif 000004
一実施例において、前記（Ｉ）プロセスは、前記プロセッサが、前記数式によって前記第ｋ量子化ロス値が生成され、前記数式でθｐは（ｉ）ｋが２からｍまでの常数である場合、前記第（ｋ−１）特徴マップ及び前記第ｋ初期コンボリューション特徴マップの前記第ｋ初期重み付け値の値、（ｉｉ）ｋが１である場合、前記入力イメージ及び前記第ｋ初期コンボリューション特徴マップの前記第ｋ初期重み付け値の値を含み、Ｃｋｉは、前記第ｋスケーリングパラメータのうちで特定の第ｋスケーリングパラメータであり、ＦＬ及びＢＷはそれぞれ前記ＦＬ値及び前記ＢＷ値であり、Ｑ演算は、前記ＦＬ値及び前記ＢＷ値を参照して生成されたＣｋｉθｉの量子化された値とＣｋｉθｉとの間の差を生成する演算であり、前記（ＩＩ）プロセスは、前記プロセッサが、前記△Ｌｋを最も小さくする前記Ｃｋｉを選択することにより、前記第ｋ最適スケーリングパラメータそれぞれを決定することを特徴とするコンピューティング装置が提供される。
【００２３】
一実施例において、前記プロセッサが、ネステロフ加速勾配（Ｎｅｓｔｅｒｏｖ  Ａｃｃｅｌｅｒａｔｅｄ  Ｇｒａｄｉｅｎｔ）法を使用して、前記Ｃｋｉを選択して前記第ｋ最適スケーリングパラメータを決定することを特徴とするコンピューティング装置が提供される。
【００２４】
一実施例において、前記（ＩＩＩ）プロセスは、前記プロセッサが、前記第ｋ最適スケーリングパラメータそれぞれがその構成要素として決定される前記第ｋスケーリングレイヤを生成し、前記第ｋ最適スケーリングパラメータの逆数それぞれがその構成要素として決定される前記第ｋ逆スケーリングレイヤを生成することを特徴とするコンピューティング装置が提供される。
【００２５】
一実施例において、前記（ＩＶ）プロセスは、前記プロセッサが、（１）ｋが１である場合、（ｉ）前記第ｋ初期コンボリューションレイヤ及び前記第ｋスケーリングレイヤの演算を入力値に適用して生成された結果と、（ｉｉ）前記第ｋ統合コンボリューションレイヤの演算を前記入力値に適用して生成された結果との間の差が閾値より小さくなるように前記第ｋ初期コンボリューションレイヤを前記第ｋ統合コンボリューションレイヤに変換し、（２）ｋが２以上ｍ以下の常数である場合、（ｉ）第（ｋ−１）逆スケーリングレイヤと、前記第ｋ初期コンボリューションレイヤと、前記第ｋスケーリングレイヤとの演算を入力値に適用して生成された結果と、（ｉｉ）前記第ｋ統合コンボリューションレイヤの演算を入力値に適用して生成された結果との間の差が前記閾値より小さくなるように前記第ｋ初期コンボリューションレイヤを前記第ｋ統合コンボリューションレイヤに変換することを特徴とするコンピューティング装置が提供される。
【００２６】
一実施例において、前記プロセッサが、（Ｖ）前記第ｋコンボリューションブロックに含まれた前記第ｋ統合コンボリューションレイヤの重み付け値を量子化して、前記第ｋコンボリューションブロックによって遂行されるＣＮＮ演算に対する最適化重み付け値として、第ｋ量子化重み付け値を生成するプロセス；をさらに遂行することを特徴とするコンピューティング装置が提供される。
【発明の効果】
【００２７】
本発明は、出力値にある小さな値を含む特定チャンネルの各値を適切に反映するために、少なくとも一つの特徴マップに含まれた値を平坦化することができるようにＣＮＮレイヤを変換する方法を提供することができ、モバイル装置または高精度の小型ネットワークなどに適用することが可能なハードウェアを最適化して使用され得る。
【図面の簡単な説明】
【００２８】
本発明の実施例の説明に利用されるために添付された以下の各図面は、本発明の実施例のうちの一部に過ぎず、本発明が属する技術分野でおいて、通常の知識を有する者（以下「通常の技術者」）にとっては、発明的作業が行われることなくこの図面に基づいて他の図面が得られ得る。
【図１】図１は、本発明の一実施例によるＣＮＮパラメータ量子化の最適化のためにＣＮＮレイヤを変換する方法を遂行するためのコンピューティング装置の構成を示した図面である。
【図２】図２は、本発明の一実施例によるスケーリングレイヤ及び逆スケーリングレイヤが含まれたＣＮＮの構成を示した図面である。
【図３ａ】図３ａは、本発明の一実施例によるスケーリングレイヤ及び逆スケーリングレイヤの位置を切り換えることにより、統合コンボリューションレイヤを生成する過程を示す図面である。
【図３ｂ】図３ｂは、本発明の一実施例によるスケーリングレイヤ及び逆スケーリングレイヤの位置を切り換えることにより、統合コンボリューションレイヤを生成する過程を示す図面である。
【図４】図４は、本発明の一実施例によるスケーリング方法によって値が大きく変わらない異なるいくつかのチャンネルの値を示す例示図である。
【図５】図５は、従来技術によって値が大きく変わる異なるいくつかのチャンネルの値を示す例示図である。
【発明を実施するための形態】
【００２９】
後述する本発明に対する詳細な説明は、本発明が実施され得る特定の実施例を例示として示す添付図面を参照する。これらの実施例は、当業者が本発明を実施することができるように十分詳細に説明される。本発明の多様な実施例は互いに異なるが、相互に排他的である必要はないことが理解されるべきである。例えば、ここに記載されている特定の形状、構造及び特性は、一実施例に関連して本発明の精神及び範囲を逸脱せず、かつ他の実施例で具現され得る。また、それぞれの開示された実施例内の個別の構成要素の位置又は配置は、本発明の精神及び範囲を逸脱せず、かつ変更され得ることが理解されるべきである。したがって、後述する詳細な説明は、限定的な意味として受け取ろうとするのではなく、本発明の範囲は適切に説明されるのであれば、その請求項が主張することと均等な全ての範囲とともに添付された請求項によってのみ限定される。図面において類似した参照符号は、様々な側面にわたって同一であるか、又は類似の機能を指す。
【００３０】
また、本発明の詳細な説明及び各請求項にわたって、「含む」という単語及びそれらの変形は、他の各技術的特徴、各付加物、構成要素又は段階を除外することを意図したものではない。通常の技術者にとって本発明の他の各目的、長所及び各特性が、一部は本明細書から、また一部は本発明の実施から明らかになるであろう。以下の例示及び図面は実例として提供され、本発明を限定することを意図したものではない。
【００３１】
本発明で言及している各種イメージは、舗装または非舗装道路関連のイメージを含み得、この場合、道路環境で登場し得る物体（例えば、自動車、人、動物、植物、物、建物、飛行機やドローンのような飛行体、その他の障害物）を想定し得るが、必ずしもこれに限定されるものではなく、本発明で言及している各種イメージは、道路と関係のないイメージ（例えば、非舗装道路、路地、空き地、海、湖、川、山、森、砂漠、空、室内と関連したイメージ）でもあり得、この場合、非舗装道路、路地、空き地、海、湖、川、山、森、砂漠、空、室内環境で登場し得る物体（例えば、自動車、人、動物、植物、物、建物、飛行機やドローンのような飛行体、その他の障害物）を想定し得るが、必ずしもこれに限定されるものではない。
【００３２】
以下、本発明が属する技術分野で通常の知識を有する者が本発明を容易に実施することができるようにするために、本発明の好ましい実施例について添付の図面に基づいて詳細に説明する。
【００３３】
図１は、本発明の一実施例によるＣＮＮパラメータ量子化の最適化のためにＣＮＮレイヤを変換する方法を遂行するためのコンピューティング装置１００の構成を示した図面である。また、図２は、本発明の一実施例によるスケーリングレイヤ及び逆スケーリングレイヤが含まれたＣＮＮの構成を示した図面である。
【００３４】
図１を参照すると、コンピューティング装置１００はＣＮＮ２００を含むことができる。前記ＣＮＮ２００による様々なデータの入力及び出力と各種データ演算の過程は、それぞれ通信部１１０及びプロセッサ１２０によって行われ得る。ところが、図１において、通信部１１０とプロセッサ１２０とがどのように連結されるのについての詳細な説明は省略する。また、コンピューティング装置は、次のプロセスを遂行するためのコンピュータ読取り可能な命令語を格納することができるメモリ１１５をさらに含むことができる。一例として、プロセッサ、メモリ、ミディアム等は、統合プロセッサと統合され得る。
【００３５】
ＣＮＮ２００は、一つ以上のコンボリューションブロックを含むことができる。以下、便宜上、ＣＮＮ２００はｍ個のコンボリューションブロックを含み、ｋは１ないしｍの常数を示すための変数として使用する。ここで、第ｋコンボリューションブロックは、図２に示されたように第ｋ初期コンボリューションレイヤ２１１＿ｋ、第ｋアクティベーションレイヤ２１２＿ｋ及び第ｋプーリングレイヤ２１３＿ｋを含むことができる。
【００３６】
以上、本発明のコンピューティング装置１００及びそれに含まれたＣＮＮ２００の構成を検討したところ、本発明の一実施例による第ｋ初期コンボリューションレイヤ２１１＿ｋの変換方法について簡略に説明することにする。
【００３７】
先ず、通信部１１０によってスケーリングパラメータを決定するために使用される入力イメージが取得され得る。以後、コンピューティング装置１００は、（ｉ）第ｋコンボリューションブロック２１０＿ｋに含まれた第ｋ初期コンボリューションレイヤ２１１＿ｋの一つ以上の第ｋ初期重み付け値と、（ｉｉ）第ｋコンボリューションブロック２１０＿ｋによって処理される第（ｋ−１）特徴マップと、（ｉｉｉ）第（ｋ−１）特徴マップに含まれたチャンネルそれぞれに対応する第ｋスケーリングレイヤ２１４＿ｋのそれぞれの第ｋスケーリングパラメータとを参照して、一つ以上の第ｋ量子化ロス値を生成することができる。ここで、ｋが１である場合、第（ｋ−１）特徴マップは、入力イメージを示すことができ、以下と同じである。
【００３８】
また、コンピューティング装置１００は、（ｉｖ）ＢＷ値（前記ＢＷ値は、前記ＣＮＮに含まれた重み付け値及び特徴マップに含まれた値を二進数で表現するために使用されたビットの個数である）、及び（ｖ）第ｋＦＬ値（前記第ｋＦＬ値は、前記第ｋ初期コンボリューションレイヤの前記第ｋ初期重み付け値及び第（ｋ−１）特徴マップに含まれた値のＬＳＢが示す数の指数の絶対値である）をさらに参照して、前記第ｋ量子化ロス値を生成することができる。
【００３９】
また、コンピューティング装置１００は、下記の公式によって第ｋ量子化ロス値を生成することができる。
【００４０】
【数３】
2020119518.tif 000005
ここで、前記数式は、量子化ロスを微分して第ｋ量子化ロス値を生成する過程を示す。
【００４１】
前記数式でθｐは、前記第（ｋ−１）特徴マップ及び前記第ｋ初期コンボリューションレイヤの前記第ｋ初期重み付け値を含むことができる。Ｃｋｉは、前記第ｋスケーリングパラメータのうちで前記第（ｋ−１）特徴マップに含まれた第ｉチャンネルに対応する特定の第ｋスケーリングパラメータであり得る。ＦＬ及びＢＷはそれぞれ前記ＦＬ値及び前記ＢＷ値であり、Ｑ演算は、前記ＦＬ値及び前記ＢＷ値を参照して生成されたＣｋｉθｉの量子化された値とＣｋｉθｉとの間の差を生成する演算であり得る。
【００４２】
前記のように、第ｋ量子化ロス値が生成された後、コンピューティング装置１００は、前記第ｋスケーリングパラメータのうちで前記第（ｋ−１）特徴マップに含まれた前記チャンネルそれぞれに対応する第ｋ最適スケーリングパラメータそれぞれを決定することができる。具体的に、前記コンピューティング装置１００は、前記△Ｌｋを最も小さくする前記Ｃｋｉを選択することにより、前記第ｋ最適スケーリングパラメータそれぞれを決定する。前記Ｃｋｉを選択するためにネステロフ最適化アルゴリズムが使用され得るが、これに限定されはしない。
【００４３】
ネステロフ最適化アルゴリズムを適用するためには、第ｋスケーリングパラメータ間の制約条件（ｃｏｎｓｔｒａｉｎｔ）を決定しなければならない。したがって、コンピューティング装置１００は、ＣＮＮ２００に含まれたレイヤをトポロジー的にソート（ｔｏｐｏｌｏｇｉｃａｌｌｙ  ｓｏｒｔ）することができる。以後、各レイヤの類型に対応する第ｋスケーリングパラメータに対する制約条件が決定され得る。しかし、制約条件のうち不必要な制約条件、例えば重複した制約条件が存在し得る。したがって、一部の制約条件が除去され得る。ここで、制約条件が除去される過程で各レイヤ間の連結状態情報を参照することができる。
【００４４】
以後、コンピューティング装置１００は、ＣＮＮ２００でフォワードパッシング（Ｆｏｒｗａｒｄ  ｐａｓｓｉｎｇ）及びバックワードパッシング（ｂａｃｋｗａｒｄ  ｐａｓｓｉｎｇ）を何回か繰り返して、各レイヤに含まれた重み付け値それぞれに対応する２Ｄヒストグラム（ｈｉｓｔｏｇｒａｍ）それぞれを取得して第ｋ量子化ロス値のグラフを生成することができる。そして、コンピューティング装置１００は、第ｋスケーリングパラメータそれぞれであるＣｋｉを変化させながら第ｋ量子化ロス値に対応する最も小さい第ｋ最適スケーリングパラメータを決定することができる。前記パラメータを変化させる過程は、ネステロフ最適化アルゴリズムによって提案されたベクトル移動技法によることができる。
【００４５】
前記のような方式で、第ｋ最適スケーリングパラメータが決定されると、コンピューティング装置１００は、前記第（ｋ−１）特徴マップに含まれたチャンネルそれぞれに対応する前記第ｋ最適スケーリングパラメータのそれぞれがその構成要素として決定される前記第ｋスケーリングレイヤ２１４＿ｋを生成し、前記第（ｋ−１）特徴マップに含まれたチャンネルそれぞれに対応する前記第ｋ最適スケーリングパラメータの逆数それぞれがその構成要素として決定される前記第ｋ逆スケーリングレイヤ２１５＿ｋを生成することができる。
【００４６】
以下では、図２を参照して、第ｋスケーリングレイヤ２１４＿ｋ及び第ｋ逆スケーリングレイヤ２１５＿ｋが第ｋコンボリューションブロック２１０＿ｋにどのように挿入されるのかについて説明する。
【００４７】
図２を参照すると、第ｋスケーリングレイヤ２１４＿ｋ及び第ｋ逆スケーリングレイヤ２１５＿ｋがそれぞれアクティベーションレイヤ２１２＿ｋの前端及び後端に挿入され得る。これは第ｋアクティベーションレイヤ２１２＿ｋ、第ｋスケーリングレイヤ２１４＿ｋ、及び第ｋ逆スケーリングレイヤ２１５＿ｋによって遂行される動作に交換法則が成立するためである。ここで、第ｋアクティベーションレイヤ２１２＿ｋが遂行する演算は、ＲｅＬＵ演算であり得るが、これに限定されるわけではない。
【００４８】
数学的に整理すると、
【数４】
2020119518.tif 000006
【００４９】
前記数式を参照すると、Ｓｃ＊Ｉ．Ｓｃは元来数式に追加され得る。なぜならば、ＳｃすなわちスケーリングレイヤとＩ．Ｓｃすなわち逆スケーリングレイヤとは互いに逆関数の関係であるからである。そして、前記Ｓｃ項目とＩ．Ｓｃ項目とはアクティベーションレイヤと交換法則が成立するため、アクティベーションレイヤの両方に移され得るのである。
【００５０】
一方、第ｋスケーリングレイヤ２１４＿ｋ及び第ｋ逆スケーリングレイヤ２１５＿ｋがＣＮＮ２００に追加されると、さらに多くのコンピュータリソースが必要であり、これは非効率的である。したがって、本発明はスケーリングレイヤ、初期コンボリューションレイヤ、及び逆スケーリングレイヤを統合する方法を提示するところ、図３ａ及び図３ｂを参照して説明することにする。
【００５１】
図３ａ及び図３ｂは、本発明の一実施例によるスケーリングレイヤ及び逆スケーリングレイヤの位置を切り換えることにより、統合コンボリューションレイヤを生成する過程を示す図面である。
【００５２】
図３ａ及び図３ｂを参照すると、第（ｋ−１）コンボリューションブロック２１０＿（ｋ−１）に含まれた第（ｋ−１）逆スケーリングレイヤ２１５＿（ｋ−１）は、第ｋコンボリューションブロック２１０＿ｋに移され得る。これは第（ｋ−１）プーリングレイヤ２１３＿（ｋ−１）自体は値の変化と関連がないためである。
【００５３】
図３ｂを参照すると、第（ｋ−１）逆スケーリングレイヤ２１５＿（ｋ−１）、第ｋ初期コンボリューションレイヤ２１１＿ｋ、及び第ｋスケーリングレイヤ２１４＿ｋは、第ｋ統合コンボリューションレイヤ２１６＿ｋを生成するために統合され得る。コンピューティング装置１００は、（ｉ）第（ｋ−１）逆スケーリングレイヤと、前記第ｋ初期コンボリューションレイヤと、前記第ｋスケーリングレイヤとの演算を入力値に適用して生成された結果と、（ｉｉ）前記第ｋ統合コンボリューションレイヤの演算を入力値に適用して生成された結果との差が閾値より小さくなるように前記第ｋ統合コンボリューションレイヤ２１６＿ｋのパラメータが決定され得る。ここで、今までに説明した統合プロセスは、第（ｋ−１）逆スケーリングレイヤ２１５＿（ｋ−１）、第ｋ初期コンボリューションレイヤ２１１＿ｋ、及び第ｋスケーリングレイヤ２１４＿ｋに対応する構成要素を掛け合わせるプロセスが含まれ得るが、これに限定されるわけではない。
【００５４】
ｋが１である場合については図３ｂに示されていないが、当然その前のブロックから移動された逆スケーリングレイヤがないので、最初の初期コンボリューションレイヤ２１１＿１と最初のスケーリングレイヤ２１４＿１のみが統合コンボリューションレイヤ２１６＿１を生成するのに使用される。
【００５５】
上記で説明されたプロセスは、量子化に最適化された第ｋ統合コンボリューションレイヤ２１６＿ｋのパラメータを生成するためのものである。ここで、第ｋ統合コンボリューションレイヤ２１６＿ｋのパラメータを生成するプロセスとは独立して量子化プロセスが説明される。したがって、コンピューティング装置１００が前記第ｋコンボリューションブロック２１０＿ｋに含まれた重み付け値を量子化して、前記第ｋコンボリューションブロック２１０＿ｋによって遂行されるＣＮＮ演算に対する最適化重み付け値として、第ｋ量子化重み付け値を生成することができる。これは、前記第ｋ統合コンボリューションレイヤ２１６＿ｋを生成するプロセスの前、プロセスの途中、プロセスの後に関係なく遂行される。
【００５６】
前記最適化された量子化ＣＮＮ重み付け値の長所は、図４を参照して説明する。
【００５７】
図４は、本発明の一実施例によるスケーリング方法によって値が大きく変わらない異なるいくつかのチャンネルの値を示す例示図である。
【００５８】
まず、従来技術を説明する際に参照していた図５を参照すると、本発明によって提供される方法が適用されない場合、第１特徴マップに含まれた第２チャンネルの値が第１特徴マップに含まれた第１チャンネルの値よりはるかに小さいことが確認された。これと反対に、図４を参照すると、第１チャンネルの値と第２チャンネルの値とが類似することが分かる。これは第１統合コンボリューションレイヤ２１６＿１の重み付け値に反映された第１スケーリングパラメータによるものであって、第１値と第２値との間の差が大きくないため、第１コンボリューションブロック２１０＿２によって遂行された演算の後で第１値及び第２の値が適切に量子化され得るのである。
【００５９】
本発明の技術分野における通常の技術者にとって理解され得るところとして、上記にて説明されたイメージ、例えば原本イメージ、原本ラベル及び追加ラベルのようなイメージデータの送受信が学習装置及びテスト装置の各通信部によって行われ得、特徴マップと演算を遂行するためのデータが学習装置及びテスト装置のプロセッサ（及び／又はメモリ）により保有／維持され得、コンボリューション演算、デコンボリューション演算、ロス値演算の過程が主に学習装置及びテスト装置のプロセッサにより遂行され得るが、本発明がこれに限定されはしないであろう。
【００６０】
以上にて説明された本発明による実施例は、多様なコンピュータの構成要素を通じて遂行することができるプログラム命令語の形態で具現されて、コンピュータ読取り可能な記録媒体に格納され得る。前記コンピュータ読取り可能な記録媒体はプログラム命令語、データファイル、データ構造などを単独で又は組み合わせて含むことができる。前記コンピュータ読取り可能な記録媒体に格納されるプログラム命令語は、本発明のために特別に設計され、構成されたものであるか、コンピュータソフトウェア分野の当業者に公知にされて使用可能なものであり得る。コンピュータ読取り可能な記録媒体の例には、ハードディスク、フロッピーディスク及び磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤのような光記録媒体、フロプティカル・ディスク（Ｆｌｏｐｔｉｃａｌ  Ｄｉｓｋ）のような磁気−光メディア（Ｍａｇｎｅｔｏ−Ｏｐｔｉｃａｌ  Ｍｅｄｉａ）、及びＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令語を格納して遂行するように特別に構成されたハードウェア装置が含まれる。プログラム命令語の例には、コンパイラによって作られるもののような機械語コードだけでなく、インタープリターなどを使用してコンピュータによって実行される高級言語コードも含まれる。前記ハードウェア装置は、本発明による処理を実行するために一つ以上のソフトウェアモジュールとして作動するように構成され得、その反対も同様である。
【００６１】
以上にて本発明が具体的な構成要素などのような特定事項と限定された実施例及び図面によって説明されたが、これは本発明のより全般的な理解の一助とするために提供されたものであるに過ぎず、本発明が前記実施例に限られるものではなく、本発明が属する技術分野において通常の知識を有する者であれば、係る記載から多様な修正及び変形が行われ得る。
【００６２】
従って、本発明の思想は、前記説明された実施例に局限されて定められてはならず、後述する特許請求の範囲だけでなく、本特許請求の範囲と均等または等価的に変形されたものすべては、本発明の思想の範囲に属するといえる。
【図１】
2020119518.tif 000009
【図２】
2020119518.tif 000010
【図３ａ】
2020119518.tif 000011
【図３ｂ】
2020119518.tif 000012
【図４】
2020119518.tif 000013
【図５】
2020119518.tif 000014