JP2020119528A - モバイルデバイスまたは高精度の小型ネットワークに適用可能なハードウェアを最適化するために利用されるCNNパラメータ及び特徴値を量子化するために、重み量子化ロス値を利用してFL(Fractional Length)値を決定する方法及び装置{METHOD AND DEVICE FOR DETERMINING FL VALUE BY USING WEIGHTED QUANTIZATION LOSS VALUES TO THEREBY QUANTIZE CNN PARAMETERS AND FEATURE VALUES TO BE USED FOR OPTIMIZING HARDWARE APPLICABLE TO MOBILE DEVICES OR COMPACT NETWORKS WITH HIGH PRECISION} - Google Patents

モバイルデバイスまたは高精度の小型ネットワークに適用可能なハードウェアを最適化するために利用されるCNNパラメータ及び特徴値を量子化するために、重み量子化ロス値を利用してFL(Fractional Length)値を決定する方法及び装置{METHOD AND DEVICE FOR DETERMINING FL VALUE BY USING WEIGHTED QUANTIZATION LOSS VALUES TO THEREBY QUANTIZE CNN PARAMETERS AND FEATURE VALUES TO BE USED FOR OPTIMIZING HARDWARE APPLICABLE TO MOBILE DEVICES OR COMPACT NETWORKS WITH HIGH PRECISION} Download PDF

Info

Publication number
JP2020119528A
JP2020119528A JP2020001009A JP2020001009A JP2020119528A JP 2020119528 A JP2020119528 A JP 2020119528A JP 2020001009 A JP2020001009 A JP 2020001009A JP 2020001009 A JP2020001009 A JP 2020001009A JP 2020119528 A JP2020119528 A JP 2020119528A
Authority
JP
Japan
Prior art keywords
value
quantized
vector
original
computing device
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
JP2020001009A
Other languages
English (en)
Other versions
JP6970460B2 (ja
Inventor
金桂賢
Kye-Hyeon Kim
金鎔重
Yongjoong Kim
金寅洙
Insu Kim
金鶴京
Hak-Kyoung Kim
南雲鉉
Woonhyun Nam
夫碩▲くん▼
Sukhoon Boo
成明哲
Myungchul Sung
呂東勳
Donghun Yeo
柳宇宙
Wooju Ryu
張泰雄
Taewoong Jang
鄭景中
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 JP2020119528A publication Critical patent/JP2020119528A/ja
Application granted granted Critical
Publication of JP6970460B2 publication Critical patent/JP6970460B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Neurology (AREA)
  • Image Analysis (AREA)
  • Complex Calculations (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

【課題】モバイルデバイスまたは高精度の小型ネットワークに適用可能なハードウェアを最適化する。【解決手段】量子化された値に含まれているLSBのサイズに対応しFL値のサイズに対応するFLパラメータ決定において、オリジナル値を含むオリジナルベクトルを取得し、BW値(量子化された値それぞれを示すために利用されたビット数に対応するBWパラメータ)及びFL候補値それぞれを参照して、オリジナル値に量子化演算を適用し、量子化されたベクトル(FL候補値それぞれに対応し、量子化された値を含む)それぞれを生成し、量子化されたベクトルそれぞれに含まれている量子化された値と、オリジナルベクトルに含まれているオリジナル値との差異それぞれに対する情報に対して、重み量子化ロス演算を適用し、FL候補値それぞれに対応する重み量子化ロス値を生成し、重み量子化ロス値を参照として、FL候補値の中からFL値を決定する。【選択図】なし

Description

本発明は、モバイルデバイスまたは高精度の小型ネットワークに適用可能なハードウェアを最適化するために利用されるCNNパラメータ及び特徴値を量子化するために、重み量子化ロス値を利用してFL(Fractional Length)値を決定する方法及び装置に関する。より詳細には、 量子化された値に含まれているLSB(Least Significant Bit)のサイズに対応するFLパラメータであるFL(Fractional Length)値を決定する方法において、(a)コンピューティング装置が、オリジナル値(original values)を含むオリジナルベクトル(original vector)を取得すると、(i)BW値(前記BW値は、前記量子化された値それぞれを示すために利用されたビット数に対応するBWパラメータである)及び(ii)FL候補値それぞれを参照にして、前記オリジナル値に量子化演算を適用することにより、量子化されたベクトル(前記量子化されたベクトルは、前記FL候補値それぞれに対応し、前記量子化された値を含む)それぞれを生成するようにする段階;(b)前記コンピューティング装置が、前記量子化されたベクトルそれぞれに含まれている前記量子化された値と、前記オリジナルベクトルに含まれている前記オリジナル値との差異それぞれに対する情報に対して、重み量子化ロス演算を適用することにより、前記FL候補値それぞれに対応する、重み量子化ロス値を生成するようにする段階;及び(c)前記コンピューティング装置が、前記重み量子化ロス値を参照として、前記FL候補値の中から前記FL値を決定するようにする段階;を含むことを特徴とする方法及び装置に関する。
ディープ・コンボリューション・ニューラル・ネットワーク(Deep Convolution Neural Networks;DeepCNN)は、ディープラーニング分野で起きた驚くべき発展の核心である。CNNは文字の認識問題を解決するために90年代にも利用されたが、近年になって機械学習(Machine Learning)分野で広く利用されるようになった。例えば、CNNは2012年にイメージ認識コンテスト(ImageNet Large Scale Visual Recognition Challenge)で他の競争相手に勝って優勝を収めた。それから、CNNは、機械学習分野で非常に有用なツールとなった。
しかし、ディープラーニングアルゴリズムには、32ビット浮動小数点演算が必要だという偏見があったため、モバイルデバイスは、ディープラーニングアルゴリズムを含むプログラムを遂行できないものとみなされていた。
ところが、32ビット浮動小数点演算より低いコンピューティング性能が必要な10ビット固定小数点演算がディープラーニングアルゴリズムに十分だということが実験で証明された。従って、リソースが制限された装置、つまりモバイルデバイスで、ディープラーニングアルゴリズムに10ビット固定小数点演算を利用する方法を提供しようとする多くの試みがあった。このような試みの中で最も広く使われているのが、カフェ・リストレット(Caffe−Ristretto)の動的固定小数点(Dynamic Fixed Point)という方法である。動的固定小数点方法は、それぞれのトランジショナル(transitional)FL値がCNNに含まれている各部分に適用され得るという点で他の方法と区別される。ここで、FL値は、量子化された値に含まれるLSB(Least Significant Bit)のサイズに対応するパラメータであり、LSBは最も小さい値、すなわち、単位値を有する二進数のビット位置である。トランジショナルFL値により、量子化プロセスの間に相違するFL値が、相違するチャンネルに適用され得、これは浮動小数点値を固定小数点値に近似して、量子化エラーが減少され得る。動的固定小数点方法では、オリジナル浮動小数点値の中で最も大きな値の量子化エラーを参照してFL値を決定する。
しかし、従来の動的固定小数点方法により提案されたFL値を決定するプロセスには、決定的な欠点がある。ニューラルネットワークにおいて、パラメータの値または特徴マップの値を含むオリジナル浮動小数点の値は特定の分布に従わない。むしろ、値が不規則に分布し、小さな値がほとんどで、大きな値は稀で、従来の方式どおりにオリジナル浮動小数点値の中で最も大きな値の量子化エラーを参照してFL値が決定されると、最も大きな値より相対的に小さい値に対する量子化エラーが大きくなりすぎる。
図4は、このような問題点が見られる、従来の技術によって各チャネルに含まれた量子化された値のそれぞれの分散を示した例示図面である。
図4を参照すれば、第1チャネルの分散と、第2チャネルの分散との間の差が非常に大きいということがわかる。量子化のためのFL値は、最も大きな値の量子化エラーを参照することで決定されるため、小さな値が適切に量子化されないからである。これはチャネル間の変動の差が大きい場合、出力値に歪みが生じるという問題がある。
本発明は、前述した問題点を解決することを目的とする。
本発明は、同一のFL値を利用して浮動小数点値を量子化しても、重み量子化ロス値を参照して、大きさが様々な浮動小数点値を、固定小数点値によってより正確に量子化することを他の目的とする。
前記のような本発明の目的を達成し、後述する本発明の特徴的な効果を実現するための、本発明の特徴的な構成は次の通りである。
本発明の一態様によれば、量子化された値に含まれているLSB(Least Significant Bit)のサイズに対応するFLパラメータであるFL(Fractional Length)値を決定する方法において、(a)コンピューティング装置が、オリジナル値(original values)を含むオリジナルベクトル(original vector)を取得すると、(i)BW値(前記BW値は、前記量子化された値それぞれを示すために利用されたビット数に対応するBWパラメータである)及び(ii)FL候補値それぞれを参照にして、前記オリジナル値に量子化演算を適用することにより、量子化されたベクトル(前記量子化されたベクトルは、前記FL候補値それぞれに対応し、前記量子化された値を含む)それぞれを生成するようにする段階;(b)前記コンピューティング装置が、前記量子化されたベクトルそれぞれに含まれている前記量子化された値と、前記オリジナルベクトルに含まれている前記オリジナル値との差異それぞれに対する情報に対して、重み量子化ロス演算を適用することにより、前記FL候補値それぞれに対応する、重み量子化ロス値を生成するようにする段階;及び(c)前記コンピューティング装置が、前記重み量子化ロス値を参照にして、前記FL候補値の中から前記FL値を決定するようにする段階;を含むことを特徴とする方法が提供される。
一例として、前記(a)段階で、

前記数式に従って前記量子化演算を遂行し、

は第l番目の量子化されたベクトルであり、xは、前記オリジナルベクトルに含まれる第k番目のオリジナル値であり、εは、前記量子化演算の方式を決定する定数、[ ]は、ガウス演算を意味することを特徴とする方法が提供される。
一例として、 前記(b)段階で、前記重み量子化ロス演算は、重み付け値ベクトル(前記重み付け値ベクトルは、前記オリジナル値のサイズを参照して生成された重み付け値の少なくとも一部を含む)を参照にして、前記FL候補値それぞれに対応する前記重み量子化ロス値それぞれを生成することを特徴とする方法が提供される。
一例として、前記(b)段階で、

前記重み量子化ロス演算は前記数式に従い、

は、前記オリジナルベクトル、

は、第l番目量子化されたベクトル、

は、重み付け値ベクトル(前記重み付け値ベクトルは、前記オリジナル値のサイズを参照にして生成された重み付け値の少なくとも一部を含む)、・は、前記重み付け値ベクトル

及びディファレンスベクトル

の積の結果として決定される成分を含む統合ベクトルを生成する演算、そして

は、L−Pノルム(norm)演算を意味することを特徴とする方法が提供される。
一例として、前記オリジナル値は、(i)CNNの任意の特定レイヤに含まれたCNNパラメータ及び(ii)前記特定レイヤが前記特徴マップを処理する間、前記FL値を決定するために利用されるトレーニングイメージに対応する特徴マップの特徴値を含むことを特徴とする方法が提供される。
一例として、 前記FL値は、前記特徴マップの値が量子化される際、前記重み量子化ロス値が閾値より小さいように最適化された値であり、前記特徴マップの値の少なくとも一部は、互いに異なるチャネルに含まれることを特徴とする方法が提供される。
一例として、(d)前記コンピューティング装置が、前記FL値及び前記BW値を参照にして、CNNそれぞれのレイヤに含まれているパラメータに前記量子化演算を適用して、量子化されたパラメータを生成する段階;をさらに含むことを特徴とする方法が提供される。
一例として、(e)テスト値が取得されると、前記コンピューティング装置が、前記CNNをもって、前記量子化されたパラメータを利用して前記テスト値にコンボリューション演算を適用して、テスト特徴値を生成するようにし、前記CNNをもって、前記テスト特徴値を累積するようにさせる段階;及び(f)前記コンピューティング装置が、前記FL値及び前記BW値を参照にして、累積されたテスト特徴値に前記量子化演算を適用して、量子化されたテスト特徴値を生成するようにし、前記量子化されたテスト特徴値をメモリに格納するようにする段階;をさらに含むことを特徴とする方法が提供される。
一例として、前記(e)段階で、前記テスト値は、固定小数点(fixed point)形式で取得され、前記テスト特徴値は、浮動小数点(floating point)形式で生成され、前記コンピューティング装置は、前記CNNをもって、前記テスト特徴値を前記浮動小数点形式で累積するようにさせ、前記(f)段階で、前記コンピューティング装置は、前記固定小数点形式に量子化された特徴値を生成し、前記メモリに前記固定小数点形式に量子化された特徴値を格納することを特徴とする方法が提供される。
本発明の他の態様によれば、量子化された値に含まれているLSB(Least Significant Bit)のサイズに対応するFLパラメータであるFL(Fractional Length)値のサイズに対応するFLパラメータである)を決定するコンピューティング装置において、各インストラクションを格納する少なくとも一つのメモリ;及び(I)オリジナル値(original values)を含むオリジナルベクトル(original vector)を取得すると、(i)BW値(前記BW値は、前記量子化された値それぞれを示すために利用されたビット数に対応するBWパラメータである)及び(ii)FL候補値それぞれを参照にして、前記オリジナル値に量子化演算を適用することにより、量子化されたベクトル(前記量子化されたベクトルは、前記FL候補値それぞれに対応し、前記量子化された値を含む)それぞれを生成するようにするプロセス;(II)前記量子化されたベクトルそれぞれに含まれている前記量子化された値と、前記オリジナルベクトルに含まれている前記オリジナル値との差異それぞれに対する情報に対して、重み量子化ロス演算を適用することにより、前記FL候補値それぞれに対応する、重み量子化ロス値を生成するようにするプロセス;及び(III)前記重み量子化ロス値を参照にして、前記FL候補値の中で前記FL値を決定するようにするプロセス;を遂行するための前記インストラクションを実行するように構成された少なくとも一つのプロセッサ;を含むことを特徴とするコンピューティング装置が提供される。
一例として、前記(I)プロセスは、

前記数式に従って前記量子化演算を遂行し、

は、第l番目の量子化されたベクトルであり、xは、前記オリジナルベクトルに含まれる第k番目のオリジナル値であり、εは、前記量子化演算の方式を決定する定数、[ ]は、ガウス演算を意味することを特徴とするコンピューティング装置が提供される。
一例として、 前記(II)プロセスで、前記重み量子化ロス演算は、重み付け値ベクトル(前記重み付け値ベクトルは、前記オリジナル値のサイズを参照して生成された重み付け値の少なくとも一部を含む)を参照にして、前記FL候補値それぞれに対応する前記重み量子化ロス値それぞれを生成することを特徴とするコンピューティング装置が提供される。
一例として、前記(II)プロセスで、

前記重み量子化ロス演算は前記数式に従い、

は、前記オリジナルベクトル、

は、第l番目量子化されたベクトル、

は、重み付け値ベクトル(前記重み付け値ベクトルは、前記オリジナル値のサイズを参照にして生成された重み付け値の少なくとも一部を含む)、・は、前記重み付け値ベクトル

及びディファレンスベクトル

の積の結果として決定される成分を含む統合ベクトルを生成する演算、そして

は、L−Pノルム(norm)演算を意味することを特徴とするコンピューティング装置が提供される。
一例として、前記オリジナル値は、(i)CNNの任意の特定レイヤに含まれたCNNパラメータ及び(ii)前記特定レイヤが前記特徴マップを処理する間、前記FL値を決定するために利用されるトレーニングイメージに対応する特徴マップの特徴値を含むことを特徴とするコンピューティング装置が提供される。
一例として、前記FL値は、前記特徴マップの値が量子化される際、前記重み量子化ロス値が閾値より小さいように最適化された値であり、前記特徴マップの値の少なくとも一部は、互いに異なるチャネルに含まれることを特徴とするコンピューティング装置が提供される。
一例として、(IV)前記FL値及び前記BW値を参照にして、CNNそれぞれのレイヤに含まれているパラメータに前記量子化演算を適用して、量子化されたパラメータを生成するプロセス;をさらに含むことを特徴とするコンピューティング装置が提供される。
一例として、(V)テスト値が取得されると、前記CNNをもって、前記量子化されたパラメータを利用して前記テスト値にコンボリューション演算を適用して、テスト特徴値を生成するようにさせ、前記CNNをもって、前記テスト特徴値を累積するようにさせるプロセス;及び(VI)前記FL値及び前記BW値を参照にして、累積されたテスト特徴値に前記量子化演算を適用して、量子化されたテスト特徴値を生成するようにし、前記量子化されたテスト特徴値をメモリに格納するプロセス;をさらに遂行することを特徴とするコンピューティング装置が提供される。
一例として、前記(V)プロセスで、前記テスト値は、固定小数点(fixed point)形式で取得され、前記テスト特徴値は、浮動小数点(floating point)形式で生成され、前記CNNをもって、前記テスト特徴値を前記浮動小数点形式で累積するようにさせ、前記(VI)プロセスで、前記固定小数点形式に量子化された特徴値を生成し、前記メモリに前記固定小数点形式に量子化された特徴値を格納することを特徴とするコンピューティング装置が提供される。
本発明は、相違するチャネルに含まれている値の分散の間の大きな違いによってもたらされる歪みを避け得り、モバイルデバイスまたは高精度の小型ネットワーク等に適用可能なハードウェアを最適化して利用され得る。
本発明の実施例の説明に利用されるために添付された以下の各図面は、本発明の実施例のうちの一部に過ぎず、本発明が属する技術分野でおいて、通常の知識を有する者(以下「通常の技術者」)は、発明的作業が行われることなくこの図面に基づいて他の図面が得られ得る。
本発明の一例によってFL値を決定し得るコンピューティング装置の構成を示した図面である。 本発明の一例に係るコンピューティング装置の内部ユニットの構成を示した図面である。 本発明の一例に係る各チャネルに含まれた量子化された値のそれぞれの分散を示した例示図面である。 従来の技術によって各チャネルに含まれた量子化された値のそれぞれの分散を示した例示図面である。
後述する本発明に対する詳細な説明は、本発明が実施され得る特定の実施例を例示として示す添付図面を参照する。これらの実施例は当業者が本発明を実施することができるように充分詳細に説明される。本発明の多様な実施例は相互異なるが、相互排他的である必要はないことを理解されたい。例えば、ここに記載されている特定の形状、構造及び特性は一例と関連して、本発明の精神及び範囲を逸脱せず、かつ他の実施例で実装され得る。また、各々の開示された実施例内の個別構成要素の位置または配置は本発明の精神及び範囲を逸脱せずに変更され得ることを理解されたい。従って、後述する詳細な説明は限定的な意味で捉えようとするものではなく、本発明の範囲は、適切に説明されれば、その請求項が主張することと均等なすべての範囲と、併せて添付された請求項によってのみ限定される。図面で類似する参照符号はいくつかの側面にかけて同一か類似する機能を指称する。
また、本発明の詳細な説明及び各請求項にわたって、「含む」という単語及びそれらの変形は、他の技術的各特徴、各付加物、構成要素又は段階を除外することを意図したものではない。通常の技術者にとって本発明の他の各目的、長所及び各特性が、一部は本説明書から、また一部は本発明の実施から明らかになるであろう。以下の例示及び図面は実例として提供され、本発明を限定することを意図したものではない。
本発明で言及している各種イメージは、舗装または非舗装道路関連のイメージを含み得り、この場合、道路環境で登場し得る物体(例えば、自動車、人、動物、植物、物、建物、飛行機やドローンのような飛行体、その他の障害物)を想定し得るが、必ずしもこれに限定されるものではなく、本発明で言及している各種イメージは、道路と関係のないイメージ(例えば、非舗装道路、路地、空き地、海、湖、川、山、森、砂漠、空、室内と関連したイメージ)でもあり得、この場合、非舗装道路、路地、空き地、海、湖、川、山、森、砂漠、空、室内環境で登場し得る物体(例えば、自動車、人、動物、植物、物、建物、飛行機やドローンのような飛行体、その他の障害物)を想定し得るが、必ずしもこれに限定されるものではない。
以下、本発明が属する技術分野で通常の知識を有する者が本発明を容易に実施することができるようにするために、本発明の好ましい実施例について添付の図面に基づいて詳細に説明する。
図1は、本発明の一例によってFL値を決定し得るコンピューティング装置の構成を示した図面であり、図2は、本発明の一例に係るコンピューティング装置の内部ユニットの構成を示した図面である。
図1及び図2を参照すれば、コンピューティング装置100は、CNN200、量子化近似ユニット130、ロスユニット140、選択ユニット150を含み得る。CNN200、量子化近似ユニット130、ロスユニット140、選択ユニット150の各種データ及び各種データを動作させる機能は、それぞれ通信部110及びプロセッサ120によって遂行され得る。しかし、図1において、通信部110とプロセッサ120とが如何につながるかについての詳細な説明は省略する。また、コンピューティング装置は、次のプロセスを遂行するためのコンピュータで判読可読な命令語を格納できるメモリ115を追加で含み得る。一例として、プロセッサ、メモリ、ミディアム等は、統合プロセッサと統合され得る。
本発明によってFL値を決定する方法を説明する前に、FL値及びBW値等についてまず説明する。
コンピューティング装置100で、値(value)は二進数で表される。ここで、MSB(Most Significant Bit)、つまり最上位ビットは、数字がコンピューティング装置100において二進数で表されるとき、最も高い桁を示すビットを意味する。反対に、LSB(Least Significant Bit)、すなわち最下位ビットは、最も低い桁を示すビットを意味する。さらに、BW(Bit Width)値は、すなわち、ビット幅は、値を二進数で表すのに用いられるビット数を示すBWパラメータである。
一方、FL値は、量子化された値に含まれているLSBのサイズに対応するFLパラメータを示す。特に、FL値は、LSB及びBW値と連関する値である。ここで、LSBが表す数は2の指数乗を示すが、FL値は、前記LSBが示す数字の指数の絶対値を示している。たとえば、LSBが示す数字が0.125、すなわち2−3ならば、該当LSBに対応するFL値は、3であろう。
FL値は、LSBのサイズを決定することにより浮動小数点値を固定小数点値に量子化するのに用いられる。もし、FL値が小さすぎれば、大きな値がきちんと量子化されないことがあり、逆にFL値が大きすぎれば、小さい値がきちんと量子化されないことがある。
たとえば、浮動小数点値が0.03125、0.03216、0.03214など1/32に近い値である場合、この際、FL値が4に決定されれば、LSBが1/16を示すので、量子化された固定小数点値はすべて0になる。このような小さな値が無視されれば、出力値に大きな歪みが生じかねない。
逆に、浮動小数点値が0.25、0.24、0.26など1/4に近い値である場合、BW値及びFL値それぞれが4と10に決定されると、LSBは1/1024を示す。従って、最大値が15/1024なので、大きな値があまりにも小さく近似するため、出力値に歪みが生じかねないのである。
そのため、FL値をうまく選択することで、LSBが適切な大きさに決定されるようにすることが非常に重要なのである。
以上、本発明を説明するための前提事項を十分に説明したところ、本発明でどのようにFL値を決定するのかについて図2を参照にして説明する。
図2を参照すれば、コンピューティング装置100は、量子化近似ユニット130、ロスユニット140及び選択ユニット150を含み得る。
まず、コンピューティング装置100は、通信部110によって、固定小数点値で量子化される浮動小数点値であるオリジナル値を含むオリジナルベクトルを取得し得る。前記オリジナル値は、(i)CNN200の任意の特定レイヤに含まれたCNNパラメータ及び(ii)前記特定レイヤが前記特徴マップを処理する間、前記FL値を決定するために利用されるトレーニングイメージに対応する特徴マップの特徴値を含み得る。
オリジナルベクトルが取得されると、コンピューティング装置100は、量子化近似ユニット130をもって、BW値及びFL候補値それぞれを参照にして、前記オリジナル値に量子化演算を適用することにより、前記FL候補値それぞれに対応する量子化された値を含む量子化されたベクトルそれぞれを生成するようにさせる。その後、コンピューティング装置100が、ロスユニット140をもって、前記量子化されたベクトルそれぞれに含まれている前記量子化された値と、前記オリジナルベクトルに含まれている前記オリジナル値との差異それぞれに対する情報に対して、重み量子化ロス演算を適用することにより、前記FL候補値それぞれに対応する、重み量子化ロス値を生成するようにさせる。そして、コンピューティング装置100は、選択ユニット150をもって、前記重み量子化ロス値を参照にして、前記FL候補の値の中から前記FL値を決定するようにさせるのである。
前記量子化近似ユニット130と、ロスユニット140と、選択ユニット150とは、ソフトウェアで実装され得るが、これに限定されるわけではない。
以上、概括的な本発明の構成を調べたところで、量子化近似ユニット130と、ロスユニット140と、選択ユニット150とで行われる演算に対して詳しく説明することにする。
まず、コンピューティング装置100が、量子化近似ユニット130をもって、FL候補値の範囲を決定するようにさせる方式について説明する。
FL候補値の範囲は、BW値と、オリジナルの値の中の最も大きな値及び最も小さな値とを参照にしてその範囲が決まる。すなわち、最も大きな値を所定MSBで表すことができるFL候補値が最小FL値であり、最も小さい値を所定LSBで表すことができるFL候補値が最大FL値となる範囲に決定されるのである。
例えば、オリジナル値の中で最も大きい値が0.26であり、最も小さい値が0.000142であり、BWは4と仮定する。0.26を二進数で適切に表すためには、MSBが最小でも2−2を示すべきである。この際、BWが4なので、LSBは2−5を示し、従って与えられたオリジナルベクトルに対する最も小さいFL候補の値は5になる。
また、0.000142を二進数で適切に表すためには、MSBが最小でも2−13を示すべきなので、LSBは、2−16を示し、オリジナルベクトルのFL候補値の最大値は、16になる。結局、与えられたオリジナルベクトルに対するFL候補値の最大値は、16になる。前記例示によれば、FL候補値の範囲は、5以上16以下になるのである。
前記のようにFL候補値の範囲が決定されると、コンピューティング装置100は、量子化近似ユニット130をもって、BW値及びそれぞれのFL候補値を参照にしてオリジナル値に量子化演算を適用する。従って、量子化演算は、次の数式に従って行われ得る。

ここで、

は、第l番目の量子化されたベクトルであり、xは、前記オリジナルベクトルに含まれた第k番目のオリジナル値であり、[ ]はガウス演算、すなわち、ローフロア演算(low floor operation)であり得る。前記式において、FL及びBWは、これまでに説明したFL値及びBW値と同一であり得る。εは、前記量子化演算の方式を決定する定数であり得る。もし、εが0.5である場合、オリジナル値は、最も近い整数に四捨五入される。εが0である場合、オリジナル値は切り捨てられる。εが任意の値である場合、オリジナル値は、確率的に近似演算をすることになるのである。
次に、ロスユニット140で随行される重み量子化演算方式について説明する。
重み量子化ロス演算は、前記量子化されたベクトルそれぞれに含まれている前記量子化された値と、前記オリジナルベクトルに含まれている前記オリジナル値との差異それぞれに対する情報に対して重み付け値を付与して、それぞれの重み量子化ロス値を生成し得る。重み量子化ロス値を利用することにより、小さい値がほとんどであり、大きい値は稀なニューラルネットワーク上の値の分布に合わせて、小さい値に対するエラーが大きく反映されるように決定し得る。
重み量子化ロス演算は次の数式に従い得る。

ここで、

は、前記オリジナルベクトル、

は、第l番目量子化されたベクトル、

は、重み付け値ベクトル(前記重み付け値ベクトルは、前記オリジナル値のサイズを参照にして生成された重み付け値の少なくとも一部を含む)、・は、前記重み付け値ベクトル

及びディファレンスベクトル

の積の結果として決定される成分を含む統合ベクトルを生成する演算、そして

は、L−Pノルム(norm)演算を意味し得る。
従って、オリジナル値と、量子化された値との間の各差異に対する情報がディファレンスベクトル

に対して生成されると、ロスユニット140は、重み付け値ベクトル

及びディファレンスベクトル

成分別積から統合ベクトルを生成し得る。そして、残りユニット140は、L−Pノルム(norm)演算を統合ベクトルに適用することにより、重み量子化ロス値を生成し得る。ここで、重み付け値ベクトルの成分は、小さい値に対応する量子化エラーが大きく反映されるようにするために、対応するオリジナル値の各成分の逆数で決定され得る。
例えば、オリジナルベクトルが(0.124、0.249、4.748)で、FL値が2である場合、量子化されたベクトルは(1/8、1/4、19/4)で生成され、ディファレンスベクトルは(0.001、0.001、0.002)で演算されるであろう。オリジナルベクトル(0.124、0.249、4.748)に対応する重み付け値ベクトルは、それぞれの成分がオリジナルの値の逆数で計算されるため、(8.06、4.02、0.21)として生成され得る。一方、FL値を決定するための従来の方法において利用された重み付け値ベクトルは、オリジナル値の中で最も大きい値については1、残りの値については0の重み付け値を与えたものと同じである。従って、オリジナル値の中の最も大きな値に対応する量子化エラーのみが量子化ロス値に反映されるようにする。
前記例示の4.748は、他のオリジナル値よりもはるかに大きい。大きな値は、異なるチャネルに含まれている特徴マップの量子化された値の分散に大きな影響を及ぼすことになる。従来技術と本発明との最も大きな違いは、これらの大きな値に比重を大きく与えるか又は小さく与えるかであるが、これらの相違点が分散にどのような影響を及ぼすかについては後述する。
前述した本発明の実施例に係る方式で導出された重み付け値ベクトル及びディファレンスベクトルを成分ごとに掛けた上で、L−Pノルム演算が統合ベクトルに適用され、重み量子化ロス値を生成し得る。
例えば、オリジナルベクトル及び重み付け値ベクトルを成分ごとに掛けると、結果ベクトルは(0.00806、0.004748、0.00042)で導出されるであろう。ここで、pを2と仮定すれば、重み量子化ロス値は、


つまり、0.0093と計算されることになるであろう。
前述した方式によれば、オリジナル値の大半を占める小さい値に対する量子化エラーを反映し得、大きな値に対する量子化エラーも重み量子化ロス値とともに反映され得る。
他の例として、単純に重み付け値ベクトルの各成分値を全部1に決定することで、小さい値と大きい値とを区別することなく、すべて重み量子化ロス値に反映され得るように実装することもできるであろう。その演算過程は、前記と類似しているので省略する。
前記のように、重み量子化ロスが生成された条件で、FL候補値の中からFL値が決定される。コンピューティング装置100は、選択ユニット150をもって、最も小さい重み量子化ロス値を選択するようにさせ、FL候補値の中から最も小さい重み量子化ロス値に対応するFLを特定FL候補の値に決定するようにさせる。
以上、本発明の一例に係るFL値の決定方式について説明した。このように決定されたFL値がニューラルネットワークでどのように利用されるかを確認する。
コンピューティング装置100は、まず、FL値及びBW値を参照にして、浮動小数点形式であるCNNのそれぞれのレイヤに含まれたCNNパラメータに量子化演算を適用して、固定小数点形式の量子化されたパラメータを生成する。
その後、テスト値が取得されるとコンピューティング装置100は、CNN200をもって、量子化されたパラメータを利用してテスト値にコンボリューション演算を適用して、テスト特徴値を生成するようにさせ、CNN200をもって、浮動小数点形式のテスト特徴値を累積するようにさせる。
最後に、コンピューティング装置100は、CNN200の特定レイヤに対応するFL値を参照して累積されたテスト特徴値に量子化演算を適用し、BW値に量子化されたテスト特徴値を生成し、固定小数点形式である量子化されたテスト特徴値をメモリに格納する。
前記方法によれば、FL値は、前記特徴マップの値が量子化される際、前記重み量子化ロス値が閾値より小さいように最適化された値であり、前記特徴マップの値の少なくとも一部は、互いに異なるチャネルに含まれ得る。このような点は、図3を参照すれば確認することができる。
図3は、本発明の一例に係る各チャネルに含まれた量子化された値のそれぞれの分散を示した例示図面である。
図3を参照すれば、特徴マップが第1レイヤ210によって処理される間、第1チャネルに含まれた値の第1分散と、第2チャネルに含まれた第2分散との差異は、従来の方法より相対的に少なく導出されたことが分かる。量子化近似後の値の分散が、チャネル間の差異が大きければ演算結果に歪みが生じる場合が多いが、本発明によれば、このような問題を解決し得るのである。
本発明技術分野の通常の技術者に理解され、前記で説明されたイメージ、例えば原本イメージ及び原本レーブル及び追加レーブルといったイメージデータの送受信が学習装置及びテスト装置の各通信部によって行われ得、特徴マップと演算を遂行するためのデータが学習装置及びテスト装置のプロセッサ(及び/またはメモリ)によって保有/維持され得、コンボリューション演算、デコンボリューション演算、ロス値の演算過程が主に学習装置及びテスト装置のプロセッサにより遂行され得るが、本発明はこれに限定されるものではない。
また、以上で説明された本発明に係る実施例は、多様なコンピュータ構成要素を通じて遂行できるプログラム命令語の形態で実装されてコンピュータで判読可能な記録媒体に記録され得る。前記コンピュータで判読可能な記録媒体はプログラム命令語、データファイル、データ構造などを単独でまたは組み合わせて含まれ得る。前記コンピュータ判読可能な記録媒体に記録されるプログラム命令語は、本発明のために特別に設計されて構成されたものか、コンピュータソフトウェア分野の当業者に公知となって使用可能なものでもよい。コンピュータで判読可能な記録媒体の例には、ハードディスク、フロッピィディスク及び磁気テープのような磁気媒体、CD−ROM、DVDのような光記録媒体、フロプティカルディスク(flopticaldisk)のような磁気−光媒体(magneto−opticalmedia)、およびROM、RAM、フラッシュメモリなどといったプログラム命令語を格納して遂行するように特別に構成されたハードウェア装置が含まれる。プログラム命令語の例には、コンパイラによって作られるもののような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行され得る高級言語コードも含まれる。前記ハードウェア装置は、本発明に係る処理を遂行するために一つ以上のソフトウェアモジュールとして作動するように構成され得、その逆も同様である。
以上、本発明が具体的な構成要素などのような特定事項と限定された実施例及び図面によって説明されたが、これは本発明のより全般的な理解を助けるために提供されたものであるに過ぎず、本発明が前記実施例に限られるものではなく、本発明が属する技術分野において通常の知識を有する者であれば係る記載から多様な修正及び変形が行われ得る。
従って、本発明の思想は前記説明された実施例に局限されて定められてはならず、後述する特許請求の範囲だけでなく、本特許請求の範囲と均等または等価的に変形されたものすべては、本発明の思想の範囲に属するといえる。

Claims (18)

  1. 量子化された値に含まれているLSB(Least Significant Bit)のサイズに対応するFLパラメータであるFL(Fractional Length)値を決定する方法において、
    (a)コンピューティング装置が、オリジナル値(original values)を含むオリジナルベクトル(original vector)を取得すると、(i)BW値(前記BW値は、前記量子化された値それぞれを示すために利用されたビット数に対応するBWパラメータである)及び(ii)FL候補値それぞれを参照にして、前記オリジナル値に量子化演算を適用することにより、量子化されたベクトル(前記量子化されたベクトルは、前記FL候補値それぞれに対応し、前記量子化された値を含む)それぞれを生成するようにする段階;
    (b)前記コンピューティング装置が、前記量子化されたベクトルそれぞれに含まれている前記量子化された値と、前記オリジナルベクトルに含まれている前記オリジナル値との差異それぞれに対する情報に対して、重み量子化ロス演算を適用することにより、前記FL候補値それぞれに対応する、重み量子化ロス値を生成するようにする段階;及び
    (c)前記コンピューティング装置が、前記重み量子化ロス値を参照にして、前記FL候補値の中から前記FL値を決定するようにする段階;
    を含むことを特徴とする方法。
  2. 前記(a)段階で、

    前記数式に従って前記量子化演算を遂行し、

    は第l番目の量子化されたベクトルであり、xは、前記オリジナルベクトルに含まれる第k番目のオリジナル値であり、εは、前記量子化演算の方式を決定する定数、[ ]は、ガウス演算を意味することを特徴とする請求項1に記載の方法。
  3. 前記(b)段階で、
    前記重み量子化ロス演算は、重み付け値ベクトル(前記重み付け値ベクトルは、前記オリジナル値のサイズを参照して生成された重み付け値の少なくとも一部を含む)を参照にして、前記FL候補値それぞれに対応する前記重み量子化ロス値それぞれを生成することを特徴とする請求項1に記載の方法。
  4. 前記(b)段階で、

    前記重み量子化ロス演算は前記数式に従い、

    は、前記オリジナルベクトル、

    は、第l番目量子化されたベクトル、

    は、重み付け値ベクトル(前記重み付け値ベクトルは、前記オリジナル値のサイズを参照にして生成された重み付け値の少なくとも一部を含む)、・は、前記重み付け値ベクトル

    及びディファレンスベクトル

    の積の結果として決定される成分を含む統合ベクトルを生成する演算、そして

    は、L−Pノルム(norm)演算を意味することを特徴とする請求項1に記載の方法。
  5. 前記オリジナル値は、(i)CNNの任意の特定レイヤに含まれたCNNパラメータ及び(ii)前記特定レイヤが前記特徴マップを処理する間、前記FL値を決定するために利用されるトレーニングイメージに対応する特徴マップの特徴値を含むことを特徴とする請求項1に記載の方法。
  6. 前記FL値は、前記特徴マップの値が量子化される際、前記重み量子化ロス値が閾値より小さいように最適化された値であり、前記特徴マップの値の少なくとも一部は、互いに異なるチャネルに含まれることを特徴とする請求項5に記載の方法。
  7. (d)前記コンピューティング装置が、前記FL値及び前記BW値を参照にして、CNNそれぞれのレイヤに含まれているパラメータに前記量子化演算を適用して、量子化されたパラメータを生成する段階;
    をさらに含むことを特徴とする請求項1に記載の方法。
  8. (e)テスト値が取得されると、前記コンピューティング装置が、前記CNNをもって、前記量子化されたパラメータを利用して前記テスト値にコンボリューション演算を適用して、テスト特徴値を生成するようにさせ、前記CNNをもって、前記テスト特徴値を累積するようにさせる段階;及び
    (f)前記コンピューティング装置が、前記FL値及び前記BW値を参照にして、累積されたテスト特徴値に前記量子化演算を適用して、量子化されたテスト特徴値を生成するようにし、前記量子化されたテスト特徴値をメモリに格納するようにする段階;
    をさらに含むことを特徴とする請求項7に記載の方法。
  9. 前記(e)段階で、前記テスト値は、固定小数点(fixed point)形式で取得され、前記テスト特徴値は、浮動小数点(floating point)形式で生成され、前記コンピューティング装置は、前記CNNをもって、前記テスト特徴値を前記浮動小数点形式で累積するようにさせ、
    前記(f)段階で、前記コンピューティング装置は、前記固定小数点形式に量子化された特徴値を生成し、前記メモリに前記固定小数点形式に量子化された特徴値を格納することを特徴とする請求項8に記載の方法。
  10. 量子化された値に含まれているLSB(Least Significant Bit)のサイズに対応するFLパラメータであるFL(Fractional Length)値のサイズに対応するFLパラメータである)を決定するコンピューティング装置において、
    各インストラクションを格納する少なくとも一つのメモリ;及び
    (I)オリジナル値(original values)を含むオリジナルベクトル(original vector)を取得すると、(i)BW値(前記BW値は、前記量子化された値それぞれを示すために利用されたビット数に対応するBWパラメータである)及び(ii)FL候補値それぞれを参照にして、前記オリジナル値に量子化演算を適用することにより、量子化されたベクトル(前記量子化されたベクトルは、前記FL候補値それぞれに対応し、前記量子化された値を含む)それぞれを生成するようにするプロセス;(II)前記量子化されたベクトルそれぞれに含まれている前記量子化された値と、前記オリジナルベクトルに含まれている前記オリジナル値との差異それぞれに対する情報に対して、重み量子化ロス演算を適用することにより、前記FL候補値それぞれに対応する、重み量子化ロス値を生成するようにするプロセス;及び(III)前記重み量子化ロス値を参照にして、前記FL候補値の中で前記FL値を決定するようにするプロセス;を遂行するための前記インストラクションを実行するように構成された少なくとも一つのプロセッサ;
    を含むことを特徴とするコンピューティング装置。
  11. 前記(I)プロセスは、

    前記数式に従って前記量子化演算を遂行し、

    は、第l番目の量子化されたベクトルであり、xは、前記オリジナルベクトルに含まれる第k番目のオリジナル値であり、εは、前記量子化演算の方式を決定する定数、[ ]は、ガウス演算を意味することを特徴とする請求項10に記載のコンピューティング装置。
  12. 前記(II)プロセスで、
    前記重み量子化ロス演算は、重み付け値ベクトル(前記重み付け値ベクトルは、前記オリジナル値のサイズを参照して生成された重み付け値の少なくとも一部を含む)を参照にして、前記FL候補値それぞれに対応する前記重み量子化ロス値それぞれを生成することを特徴とする請求項10に記載のコンピューティング装置。
  13. 前記(II)プロセスで、

    前記重み量子化ロス演算は前記数式に従い、

    は、前記オリジナルベクトル、

    は、第l番目量子化されたベクトル、

    は、重み付け値ベクトル(前記重み付け値ベクトルは、前記オリジナル値のサイズを参照にして生成された重み付け値の少なくとも一部を含む)、・は、前記重み付け値ベクトル

    及びディファレンスベクトル

    の積の結果として決定される成分を含む統合ベクトルを生成する演算、そして

    は、L−Pノルム(norm)演算を意味することを特徴とする請求項10に記載のコンピューティング装置。
  14. 前記オリジナル値は、(i)CNNの任意の特定レイヤに含まれたCNNパラメータ及び(ii)前記特定レイヤが前記特徴マップを処理する間、前記FL値を決定するために利用されるトレーニングイメージに対応する特徴マップの特徴値を含むことを特徴とする請求項10に記載のコンピューティング装置。
  15. 前記FL値は、前記特徴マップの値が量子化される際、前記重み量子化ロス値が閾値より小さいように最適化された値であり、前記特徴マップの値の少なくとも一部は、互いに異なるチャネルに含まれることを特徴とする請求項14に記載のコンピューティング装置。
  16. (IV)前記FL値及び前記BW値を参照にして、CNNそれぞれのレイヤに含まれているパラメータに前記量子化演算を適用して、量子化されたパラメータを生成するプロセス;をさらに含むことを特徴とする請求項10に記載のコンピューティング装置。
  17. (V)テスト値が取得されると、前記CNNをもって、前記量子化されたパラメータを利用して前記テスト値にコンボリューション演算を適用して、テスト特徴値を生成するようにさせ、前記CNNをもって、前記テスト特徴値を累積するようにさせるプロセス;及び
    (VI)前記FL値及び前記BW値を参照にして、累積されたテスト特徴値に前記量子化演算を適用して、量子化されたテスト特徴値を生成するようにし、前記量子化されたテスト特徴値をメモリに格納するプロセス;
    をさらに遂行することを特徴とする請求項16に記載のコンピューティング装置。
  18. 前記(V)プロセスで、前記テスト値は、固定小数点(fixed point)形式で取得され、前記テスト特徴値は、浮動小数点(floating point)形式で生成され、前記CNNをもって、前記テスト特徴値を前記浮動小数点形式で累積するようにさせ、
    前記(VI)プロセスで、前記固定小数点形式に量子化された特徴値を生成し、前記メモリに前記固定小数点形式に量子化された特徴値を格納することを特徴とする請求項17に記載のコンピューティング装置。
JP2020001009A 2019-01-23 2020-01-07 モバイルデバイスまたは高精度の小型ネットワークに適用可能なハードウェアを最適化するために利用されるCNNパラメータ及び特徴値を量子化するために、重み量子化ロス値を利用してFL(Fractional Length)値を決定する方法及び装置{METHOD AND DEVICE FOR DETERMINING FL VALUE BY USING WEIGHTED QUANTIZATION LOSS VALUES TO THEREBY QUANTIZE CNN PARAMETERS AND FEATURE VALUES TO BE USED FOR OPTIMIZING HARDWARE APPLICABLE TO MOBILE DEVICES OR COMPACT NETWORKS WITH HIGH PRECISION} Active JP6970460B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/255012 2019-01-23
US16/255,012 US10592799B1 (en) 2019-01-23 2019-01-23 Determining FL value by using weighted quantization loss values to thereby quantize CNN parameters and feature values to be used for optimizing hardware applicable to mobile devices or compact networks with high precision

Publications (2)

Publication Number Publication Date
JP2020119528A true JP2020119528A (ja) 2020-08-06
JP6970460B2 JP6970460B2 (ja) 2021-11-24

Family

ID=68886758

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020001009A Active JP6970460B2 (ja) 2019-01-23 2020-01-07 モバイルデバイスまたは高精度の小型ネットワークに適用可能なハードウェアを最適化するために利用されるCNNパラメータ及び特徴値を量子化するために、重み量子化ロス値を利用してFL(Fractional Length)値を決定する方法及び装置{METHOD AND DEVICE FOR DETERMINING FL VALUE BY USING WEIGHTED QUANTIZATION LOSS VALUES TO THEREBY QUANTIZE CNN PARAMETERS AND FEATURE VALUES TO BE USED FOR OPTIMIZING HARDWARE APPLICABLE TO MOBILE DEVICES OR COMPACT NETWORKS WITH HIGH PRECISION}

Country Status (5)

Country Link
US (1) US10592799B1 (ja)
EP (1) EP3686809A1 (ja)
JP (1) JP6970460B2 (ja)
KR (1) KR102325031B1 (ja)
CN (1) CN111476362B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6992864B1 (ja) 2020-09-28 2022-01-13 沖電気工業株式会社 ニューラルネットワーク軽量化装置、ニューラルネットワーク軽量化方法およびプログラム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210110382A1 (en) * 2019-10-13 2021-04-15 MobileCoin System and method for providing auxiliary curve cold storage
CN113762496B (zh) * 2020-06-04 2024-05-03 合肥君正科技有限公司 一种降低低比特卷积神经网络推理运算复杂度的方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180046894A1 (en) * 2016-08-12 2018-02-15 DeePhi Technology Co., Ltd. Method for optimizing an artificial neural network (ann)
JP2020064635A (ja) * 2018-10-17 2020-04-23 三星電子株式会社Samsung Electronics Co.,Ltd. ニューラルネットワークのパラメータを量子化する方法及びその装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107688855B (zh) * 2016-08-12 2021-04-13 赛灵思公司 针对于复杂神经网络的分层量化方法与装置
US10643124B2 (en) * 2016-08-12 2020-05-05 Beijing Deephi Intelligent Technology Co., Ltd. Method and device for quantizing complex artificial neural network
US10381020B2 (en) * 2017-06-16 2019-08-13 Apple Inc. Speech model-based neural network-assisted signal enhancement
KR20190034985A (ko) * 2017-09-25 2019-04-03 삼성전자주식회사 인공 신경망의 양자화 방법 및 장치
CN108701250B (zh) * 2017-10-16 2022-03-04 深圳市大疆创新科技有限公司 数据定点化方法和装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180046894A1 (en) * 2016-08-12 2018-02-15 DeePhi Technology Co., Ltd. Method for optimizing an artificial neural network (ann)
JP2020064635A (ja) * 2018-10-17 2020-04-23 三星電子株式会社Samsung Electronics Co.,Ltd. ニューラルネットワークのパラメータを量子化する方法及びその装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DOYUN KIM, ET AL.: "Convolutional Neural Network Quantization using Generalized Gamma Distribution", [ONLINE], JPN6021007852, 31 October 2018 (2018-10-31), ISSN: 0004461620 *
SUYOG GUPTA, ET AL: "Deep Learning with Limited Numerical Precision", [ONLINE], JPN6021007854, 9 February 2015 (2015-02-09), ISSN: 0004461621 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6992864B1 (ja) 2020-09-28 2022-01-13 沖電気工業株式会社 ニューラルネットワーク軽量化装置、ニューラルネットワーク軽量化方法およびプログラム
JP2022054660A (ja) * 2020-09-28 2022-04-07 沖電気工業株式会社 ニューラルネットワーク軽量化装置、ニューラルネットワーク軽量化方法およびプログラム

Also Published As

Publication number Publication date
KR20200091784A (ko) 2020-07-31
JP6970460B2 (ja) 2021-11-24
EP3686809A1 (en) 2020-07-29
KR102325031B1 (ko) 2021-11-12
CN111476362B (zh) 2024-05-03
CN111476362A (zh) 2020-07-31
US10592799B1 (en) 2020-03-17

Similar Documents

Publication Publication Date Title
JP6872264B2 (ja) ハードウェア最適化を通じてモバイル装置または高精度の小型ネットワークに使用されるcnnパラメータ量子化を最適化するためにcnnレイヤを変換する方法及び装置
JP2020119528A (ja) モバイルデバイスまたは高精度の小型ネットワークに適用可能なハードウェアを最適化するために利用されるCNNパラメータ及び特徴値を量子化するために、重み量子化ロス値を利用してFL(Fractional Length)値を決定する方法及び装置{METHOD AND DEVICE FOR DETERMINING FL VALUE BY USING WEIGHTED QUANTIZATION LOSS VALUES TO THEREBY QUANTIZE CNN PARAMETERS AND FEATURE VALUES TO BE USED FOR OPTIMIZING HARDWARE APPLICABLE TO MOBILE DEVICES OR COMPACT NETWORKS WITH HIGH PRECISION}
KR102337358B1 (ko) 모바일 장치 또는 소형 네트워크에 적용 가능한 하드웨어를 최적화하는데 사용될 수 있는 roi를 풀링하기 위하여, 마스킹 파라미터를 이용하는 방법 및 장치, 그리고 이를 이용한 테스트 방법 및 테스트 장치
JP6916549B2 (ja) 軍事的目的、ドローンまたはロボットに利用されるために一つ以上の以前のバッチをさらに参照してモバイル装置またはiot装置に適用可能なオンラインバッチ正規化、オンデバイス学習、及び連続学習を遂行する方法と装置、並びにそれを利用したテスト方法及びテスト装置
CN111783961A (zh) 基于激活定点拟合的卷积神经网络训练后量化方法及系统
KR20200094622A (ko) 뉴럴 네트워크 학습에 이용될 오토 라벨링된 이미지 중에서 라벨 검수를 위한 샘플 이미지를 획득하는 방법 및 이를 이용한 샘플 이미지 획득 장치
JP2020119533A (ja) 自律走行自動車のレベル4を満たすために要求されるhdマップアップデートに利用される、少なくとも一つのアダプティブロス重み付け値マップを利用したアテンションドリブン・イメージセグメンテーション学習方法及び学習装置、そしてこれを利用したテスティング方法及びテスティング装置
JP2020038664A (ja) コンボリューションニューラルネットワークから複数の出力のアンサンブルを利用して統合された特徴マップを提供するための方法及び装置{method and device for providing integrated feature map using ensemble of multiple outputs from convolutional neural network}
CN111985495A (zh) 模型部署方法、装置、系统及存储介质
JP6856904B2 (ja) 物体のスケールに応じてモード転換が可能なcnn基盤の監視用物体検出器の学習方法及び学習装置、そしてこれを利用したテスト方法及びテスト装置
KR20200040185A (ko) 적응적 학습률로 뉴럴 네트워크를 학습하는 방법 및 장치, 이를 이용한 테스트 방법 및 장치
CN109446933B (zh) 一种基于卷积神经网络的道路场景语义分割方法
US11531884B2 (en) Separate quantization method of forming combination of 4-bit and 8-bit data of neural network
JP6860943B2 (ja) コンボリューション演算の無欠性を検証するためにテストパターンを生成し、前記テストパターンの中から最適化テストパターンを選択して、極度の状況で欠陥許容能力及び揺れに強靭な性質を向上させる方法及び装置
US6813390B2 (en) Scalable expandable system and method for optimizing a random system of algorithms for image quality
Kwak et al. Quantization aware training with order strategy for CNN
CN114048853A (zh) 神经网络的量化方法、装置、计算机设备及存储介质
JP2004527172A (ja) 画像品質についてのアルゴリズムのランダムシステムを最適化するための拡張可能なシステム及び方法
CN116189667B (zh) 语音处理模型的量化压缩方法、装置、设备和存储介质
CN112800813B (zh) 一种目标识别方法及装置
WO2021230006A1 (ja) ネットワーク量子化方法及びネットワーク量子化装置
CN117274049A (zh) 一种基于训练后量化的视频超分方法
CN115331067A (zh) 图像的处理方法、装置、设备及存储介质
CN117273075A (zh) 负载预测模型的训练方法、负载预测方法、装置及设备
CN114492721A (zh) 神经网络的混合精度量化方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200108

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20200706

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20200709

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20201022

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210310

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210607

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: 20211020

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211022

R150 Certificate of patent or registration of utility model

Ref document number: 6970460

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150