JP2023514173A - サブ-カーネルサーチングモジュールを利用してオン-デバイスニューラルネットワークモデルを最適化する方法及び装置 - Google Patents
サブ-カーネルサーチングモジュールを利用してオン-デバイスニューラルネットワークモデルを最適化する方法及び装置 Download PDFInfo
- Publication number
- JP2023514173A JP2023514173A JP2022548235A JP2022548235A JP2023514173A JP 2023514173 A JP2023514173 A JP 2023514173A JP 2022548235 A JP2022548235 A JP 2022548235A JP 2022548235 A JP2022548235 A JP 2022548235A JP 2023514173 A JP2023514173 A JP 2023514173A
- Authority
- JP
- Japan
- Prior art keywords
- kernel
- neural network
- sub
- network model
- test
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000003062 neural network model Methods 0.000 title claims abstract description 246
- 238000000034 method Methods 0.000 title claims abstract description 117
- 238000012549 training Methods 0.000 claims abstract description 110
- 239000013598 vector Substances 0.000 claims abstract description 59
- 238000013528 artificial neural network Methods 0.000 claims abstract description 29
- 238000012360 testing method Methods 0.000 claims description 195
- 230000008569 process Effects 0.000 claims description 74
- 238000013527 convolutional neural network Methods 0.000 claims description 26
- 238000005457 optimization Methods 0.000 claims description 24
- 230000000306 recurrent effect Effects 0.000 claims description 11
- 238000011176 pooling Methods 0.000 claims description 10
- 238000006243 chemical reaction Methods 0.000 claims 1
- 238000012545 processing Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000001537 neural effect Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 241001465754 Metazoa Species 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002787 reinforcement Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
- G06V10/7753—Incorporation of unlabelled data, e.g. multiple instance learning [MIL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Medical Informatics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Multimedia (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Image Analysis (AREA)
Abstract
Description
Claims (24)
- サブ-カーネルサーチングモジュール(Sub-Kernel Searching Module、SSM)を利用してオン-デバイスニューラルネットワークモデル(on-device neural network model)を最適化する方法において、
(a)ニューラルネットワークモデルが搭載されたエッジデバイスが許容する最大のコンピューティングパワーを利用して目的とするタスク(task)を遂行することができる最大キャパシティ(capacity)を持つビッグニューラルネットワークモデル(Big Neural Network Model、B-NN Model)を、入力された入力データに対する第1インファレンス結果(first inference result)を生成するように学習させた状態で、学習データが獲得されると、学習装置が前記学習データをサブ-カーネルサーチングモジュールに入力し、前記サブ-カーネルサーチングモジュールによって、(i)前記学習データに対応する演算量(computational load)、パラメーター(parameters)、レイテンシ(latency)、正確度(accuracy)、及びフロップス(flops)に適用された少なくとも一つの制約(constraint)を確認し、(ii)前記学習データに対応する複雑度、鮮明度の中の少なくとも一つに対する情報を含む状態ベクトル(state vector)を生成し、(iii)前記ビッグニューラルネットワークモデルの前記最大キャパシティに対応するスーパーカーネル(super kernel)のサブセット(subset)で、前記スーパーカーネルより小さいかまたは同じカーネルの大きさと、少ないかまたは同じチャンネルの数からなり、前記制約で前記状態ベクトルを持つ前記学習データに対して前記目的とするタスクを遂行することができる最小限のカーネルの大きさと最小限のチャンネルの数とからなる特定のサブ-カーネルのアーキテクチャー情報(architecture information)を生成させるプロセスを遂行するか、または遂行するように支援する段階と、
(b)前記学習装置が、(i)前記特定のサブ-カーネルの前記アーキテクチャー情報を参照して前記ビッグニューラルネットワークモデルを最適化し、前記ビッグニューラルネットワークモデルから前記特定のサブ-カーネルの前記アーキテクチャー情報を持つ特定のスモールニューラルネットワークモデル(Small Neural Network Model、S-NN Model)を生成し、(ii)前記特定のスモールニューラルネットワークモデルによって前記学習データに対する第2インファレンス結果(second inference result)を生成させるプロセスを遂行するか、または遂行するように支援する段階と、
(c)前記学習装置が、前記第1インファレンス結果と前記第2インファレンス結果とを参照して一つ以上の第1ロスを生成し、前記第1ロスを利用して前記サブ-カーネルサーチングモジュールを学習させるプロセスを遂行するか、または遂行するように支援する段階と、
を含む方法。 - 前記(a)の段階において、
前記学習装置は、前記サブ-カーネルサーチングモジュールによって、(i)シーンオーバービューイングモジュール(Scene Overviewing Module、SSM)を通じて前記学習データに対応するシーンフィーチャー(scene features)を生成させ、前記シーンフィーチャーに対応する前記状態ベクトルを生成させ、(ii)サブ-カーネルネットワーク生成器(Sub-kernel Network Generator、SNG)を通じて前記制約で前記状態ベクトルを持つ前記学習データに対して前記目的とするタスクを遂行することができる前記最小限のカーネルの大きさと前記最小限のチャンネルの数とからなる前記特定のサブ-カーネルの前記アーキテクチャー情報を生成させるプロセスを遂行するか、または遂行するように支援することを特徴とする請求項1に記載の方法。 - 前記学習装置は、(i)与えられた前記制約で前記第1ロスを通じたバックプロパゲーション(back-propagation)を通じて前記第1ロスを最小化するように前記シーンオーバービューイングモジュールと前記サブ-カーネルネットワーク生成器とを学習させ、(ii)前記状態ベクトルと、これに対応する原本正解(ground truth)とを参照して一つ以上の第2ロスを生成し、前記第2ロスを最小化するように前記シーンオーバービューイングモジュールをさらに学習させるプロセスを遂行するか、または遂行するように支援することを特徴とする請求項2に記載の方法。
- 前記シーンオーバービューイングモジュールは、コンボリューショナルニューラルネットワーク(Convolutional Neural Network、CNN)で構成され、前記サブ-カーネルネットワーク生成器はリカレントニューラルネットワーク(Recurrent Neural Network、RNN)で構成され、
前記学習装置は前記シーンオーバービューイングモジュールと前記サブ-カーネルネットワーク生成器とをそれぞれ学習させたり同時に学習させるプロセスを遂行するか、または遂行するように支援することを特徴とする請求項2に記載の方法。 - 前記学習装置は、前記シーンオーバービューイングモジュールの前記コンボリューショナルニューラルネットワークを通じて前記学習データに対して少なくとも一つのコンボリューション(convolution)演算、少なくとも一つのプーリング(pooling)演算、及び少なくとも一つのFC(全結合:Fully-Connected)演算を適用して前記学習データに対応する前記シーンフィーチャーを生成させるプロセスを遂行するか、または遂行するように支援することを特徴とする請求項4に記載の方法。
- 前記(b)の段階において、
前記学習装置は、前記特定のサブ-カーネルの前記アーキテクチャー情報によって前記ビッグニューラルネットワークモデルの前記スーパーカーネルのカーネルの高さ、カーネルの幅、及びチャンネルの数の中の少なくとも一つを調整して前記ビッグニューラルネットワークモデルを最適化することにより、前記特定のサブ-カーネルの前記アーキテクチャー情報を持つ前記特定のスモールニューラルネットワークモデルを生成するプロセスを遂行するか、または遂行するように支援することを特徴とする請求項1に記載の方法。 - 前記学習装置は、前記第1インファレンス結果と前記第2インファレンス結果とを参照し、前記第1インファレンス結果と前記第2インファレンス結果との差が既設定された基準値を超える場合、前記学習データと前記特定のスモールニューラルネットワークモデルの前記アーキテクチャー情報とをサーバーに伝送し、前記サーバーによって前記学習データを前記特定のスモールニューラルネットワークモデルでのハードサンプル(hard sample)としてタグ付け(tag)し、学習データベースに追加させるプロセスを遂行するか、または遂行するように支援する請求項1に記載の方法。
- サブ-カーネルサーチングモジュール(Sub-Kernel Searching Module、SSM)を利用してオン-デバイスニューラルネットワークモデル(on-device neural network model)を最適化する方法において、
(a)学習装置によって、(i)ニューラルネットワークモデルが搭載されたエッジデバイスが許容する最大のコンピューティングパワーを利用して目的とするタスク(task)を遂行することができる最大キャパシティ(capacity)を持つビッグニューラルネットワークモデル(Big Neural Network Model、B-NN Model)を、入力された入力データに対する第1インファレンス結果(first inference result)を生成するように学習させた状態で、学習データが獲得されると、前記学習データをサブ-カーネルサーチングモジュールに入力し、前記サブ-カーネルサーチングモジュールによって、(i-1)前記学習データに対応する演算量(computational load)、パラメーター(parameters)、レイテンシ(latency)、正確度(accuracy)、及びフロップス(flops)の中の少なくとも一つに適用された学習用制約(constraint)を確認し、(i-2)前記学習データに対応する複雑度、鮮明度の中の少なくとも一つに対する情報を含む学習用状態ベクトル(state vector)を生成し、(i-3)前記ビッグニューラルネットワークモデルの前記最大キャパシティに対応するスーパーカーネル(super kernel)のサブセット(subset)で、前記スーパーカーネルより小さいか同じカーネルの大きさと、少ないか同じチャンネルの数とからなり、前記学習用制約で前記学習用状態ベクトルを持つ前記学習データに対して前記目的とするタスクを遂行することができる最小限のカーネルの大きさと最小限のチャンネルの数とからなる学習用特定のサブ-カーネルの学習用アーキテクチャー情報(architecture information)を生成させるプロセス、(ii)(ii-1)前記学習用特定のサブ-カーネルの前記学習用アーキテクチャー情報を参照して前記ビッグニューラルネットワークモデルを最適化し、前記ビッグニューラルネットワークモデルから前記学習用特定のサブ-カーネルの前記学習用アーキテクチャー情報を持つ学習用特定のスモールニューラルネットワークモデル(Small Neural Network Model、S-NN Model)を生成し、(ii-2)前記学習用特定のスモールニューラルネットワークモデルによって前記学習データに対する第2インファレンス結果(second inference result)を生成させるプロセス、及び(iii)前記第1インファレンス結果と前記第2インファレンス結果とを参照して一つ以上の第1ロスを生成し、前記第1ロスを利用して前記サブ-カーネルサーチングモジュールを学習させるプロセスが遂行された状態で、最適化装置がテストデータを獲得すれば前記テストデータを前記サブ-カーネルサーチングモジュールに入力し、前記サブ-カーネルサーチングモジュールによって、(i)前記テストデータに対応する演算量、パラメーター、レイテンシ、正確度、及びフロップスの中の少なくとも一つに適用されたテスト用の制約(constraint)を確認し、(ii)前記テストデータに対応する複雑度、鮮明度の中の少なくとも一つに対する情報を含むテスト用の状態ベクトルを生成し、(iii)前記ビッグニューラルネットワークモデルの前記最大キャパシティに対応する前記スーパーカーネルのサブセットで、前記スーパーカーネルより小さいか同じカーネルの大きさと少ないか同じチャンネルの数とからなり、前記テスト用の制約で前記テスト用の状態ベクトルを持つ前記テストデータに対して前記目的とするタスクを遂行することができる最小限のカーネルの大きさと最小限のチャンネルの数とからなるテスト用の特定のサブ-カーネルのテスト用のアーキテクチャー情報を生成させるプロセスを遂行するか、または遂行するように支援する段階と、
(b)前記最適化装置が、(i)前記テスト用の特定のサブ-カーネルの前記テスト用のアーキテクチャー情報を参照して前記ビッグニューラルネットワークモデルを最適化し、前記ビッグニューラルネットワークモデルから前記テスト用の特定のサブ-カーネルの前記テスト用のアーキテクチャー情報を持つテスト用の特定のスモールニューラルネットワークモデルを生成し、(ii)前記テスト用の特定のスモールニューラルネットワークモデルによって前記テストデータに対する第3インファレンス結果(third inference result)を生成させるプロセスを遂行するか、または遂行するように支援する段階と、
を含む方法。 - 前記(a)の段階において、
前記最適化装置は、前記サブ-カーネルサーチングモジュールによって、(i)シーンオーバービューイングモジュール(Scene Overviewing Module、SSM)を通じて前記テストデータに対応するテスト用のシーンフィーチャー(scene features)を生成させ、前記テスト用のシーンフィーチャーに対応する前記テスト用の状態ベクトルを生成させ、(ii)サブ-カーネルネットワーク生成器(Sub-kernel Network Generator、SNG)を通じて前記テスト用の制約で前記テスト用の状態ベクトルを持つ前記学習データに対して前記目的とするタスクを遂行することができる最小限のカーネルの大きさと最小限のチャンネルの数とからなる前記テスト用の特定のサブ-カーネルの前記テスト用のアーキテクチャー情報を生成させるプロセスを遂行するか、または遂行するように支援することを特徴とする請求項8に記載の方法。 - 前記シーンオーバービューイングモジュールはコンボリューショナルニューラルネットワーク(Convolutional Neural Network、CNN)で構成され、前記サブ-カーネルネットワーク生成器はリカレントニューラルネットワーク(Recurrent Neural Network、RNN)で構成されていることを特徴とする請求項9に記載の方法。
- 前記最適化装置は、前記シーンオーバービューイングモジュールの前記コンボリューションニューラルネットワークを通じて前記テストデータに対して少なくとも一つのコンボリューション(convolution)演算、少なくとも一つのプーリング(pooling)演算、及び少なくとも一つのFC(Fully-Connected)演算を適用して前記テストデータに対応する前記テスト用のシーンフィーチャーを生成させるプロセスを遂行するか、または遂行するように支援することを特徴とする請求項10に記載の方法。
- 前記(b)の段階において、
前記最適化装置は、前記テスト用の特定のサブ-カーネルの前記テスト用のアーキテクチャー情報によって前記ビッグニューラルネットワークモデルの前記スーパーカーネルのカーネルの高さ、カーネルの幅、及びチャンネルの数の中の少なくとも一つを調整して前記ビッグニューラルネットワークモデルを最適化することにより、前記テスト用の特定のサブ-カーネルの前記テスト用のアーキテクチャー情報を持つ前記テスト用の特定のスモールニューラルネットワークモデルを生成するプロセスを遂行するか、または遂行するように支援することを特徴とする請求項8に記載の方法。 - サブ-カーネルサーチングモジュール(Sub-Kernel Searching Module、SSM)を利用してオン-デバイスニューラルネットワークモデル(on-device neural network model)を最適化する学習装置であって、
インストラクションを格納する少なくとも一つのメモリと、
前記インストラクションを実行するために構成された少なくとも一つのプロセッサと、を含み、
前記プロセッサが、(I)ニューラルネットワークモデルが搭載されたエッジデバイスが許容する最大のコンピューティングパワーを利用して目的とするタスク(task)を遂行することができる最大キャパシティ(capacity)を持つビッグニューラルネットワークモデル(Big Neural Network Model、B-NN Model)を、入力された入力データに対する第1インファレンス結果(first inference result)を生成するように学習させた状態で、学習データが獲得されると、前記学習データをサブ-カーネルサーチングモジュールに入力し、前記サブ-カーネルサーチングモジュールによって、(i)前記学習データに対応する演算量(computational load)、パラメーター(parameters)、レイテンシ(latency)、正確度(accuracy)、及びフロップス(flops)に適用された少なくとも一つの制約(constraint)を確認し、(ii)前記学習データに対応する複雑度、鮮明度の中の少なくとも一つに対する情報を含む状態ベクトル(state vector)を生成し、(iii)前記ビッグニューラルネットワークモデルの前記最大キャパシティに対応するスーパーカーネル(super kernel)のサブセット(subset)で、前記スーパーカーネルより小さいか同じカーネルの大きさと、少ないか同じチャンネルの数とからなり、前記制約で前記状態ベクトルを持つ前記学習データに対して前記目的とするタスクを遂行することができる最小限のカーネルの大きさと最小限のチャンネルの数とからなる特定のサブ-カーネルのアーキテクチャー情報(architecture information)を生成させるプロセスを遂行するか、または遂行するように支援するステップと、(II)(i)前記特定のサブ-カーネルの前記アーキテクチャー情報を参照して前記ビッグニューラルネットワークモデルを最適化し、前記ビッグニューラルネットワークモデルから前記特定のサブ-カーネルの前記アーキテクチャー情報を持つ特定のスモールニューラルネットワークモデル(Small Neural Network Model、S-NN Model)を生成し、(ii)前記特定のスモールニューラルネットワークモデルによって前記学習データに対する第2インファレンス結果(second inference result)を生成させるプロセスを遂行するか、または遂行するように支援するステップと、(III)前記第1インファレンス結果と前記第2インファレンス結果とを参照して一つ以上の第1ロスを生成し、前記第1ロスを利用して前記サブ-カーネルサーチングモジュールを学習させるプロセスを遂行するか、または遂行するように支援するステップと、を含む学習装置。 - 前記(I)のステップにおいて、
前記プロセッサは、前記サブ-カーネルサーチングモジュールによって、(i)シーンオーバービューイングモジュール(Scene Overviewing Module、SSM)を通じて前記学習データに対応するシーンフィーチャー(scene features)を生成させ、前記シーンフィーチャーに対応する前記状態ベクトルを生成させ、(ii)サブ-カーネルネットワーク生成器(Sub-kernel Network Generator、SNG)を通じて前記制約で前記状態ベクトルを持つ前記学習データに対して前記目的とするタスクを遂行することができる前記最小限のカーネルの大きさと前記最小限のチャンネルの数とからなる前記特定のサブ-カーネルの前記アーキテクチャー情報を生成させるプロセスを遂行するか、または遂行するように支援することを特徴とする請求項13に記載の学習装置。 - 前記プロセッサは、(i)与えられた前記制約で前記第1ロスを通じたバックプロパゲーション(back-propagation)を通じて前記第1ロスを最小化するように前記シーンオーバービューイングモジュールと前記サブ-カーネルネットワーク生成器とを学習させ、(ii)前記状態ベクトルと、これに対応する原本正解(ground truth)を参照して一つ以上の第2ロスを生成し、前記第2ロスを最小化するように前記シーンオーバービューイングモジュールをさらに学習させるプロセスを遂行するか、または遂行するように支援することを特徴とする請求項14に記載の学習装置。
- 前記シーンオーバービューイングモジュールはコンボリューショナルニューラルネットワーク(Convolutional Neural Network、CNN)で構成され、前記サブ-カーネルネットワーク生成器はリカレントニューラルネットワーク(Recurrent Neural Network、RNN)で構成され、
前記プロセッサは前記シーンオーバービューイングモジュールと前記サブ-カーネルネットワーク生成器とをそれぞれ学習させたり同時に学習させるプロセスを遂行するか、または遂行するように支援することを特徴とする請求項14に記載の学習装置。 - 前記プロセッサは前記シーンオーバービューイングモジュールの前記コンボリューショナルニューラルネットワークを通じて前記学習データに対して少なくとも一つのコンボリューション(convolution)演算、少なくとも一つのプーリング(pooling)演算、及び少なくとも一つのFC(全結合:Fully-Connected)演算を適用して前記学習データに対応する前記シーンフィーチャーを生成させるプロセスを遂行するか、または遂行するように支援することを特徴とする請求項16に記載の学習装置。
- 前記(II)のステップにおいて、
前記プロセッサは、前記特定のサブ-カーネルの前記アーキテクチャー情報によって前記ビッグニューラルネットワークモデルの前記スーパーカーネルのカーネルの高さ、カーネルの幅、及びチャンネルの数の中の少なくとも一つを調整して前記ビッグニューラルネットワークモデルを最適化することにより、前記特定のサブ-カーネルの前記アーキテクチャー情報を持つ前記特定のスモールニューラルネットワークモデルを生成するプロセスを遂行するか、または遂行するように支援することを特徴とする請求項13に記載の学習装置。 - 前記プロセッサは、前記第1インファレンス結果と前記第2インファレンス結果とを参照し、前記第1インファレンス結果と前記第2インファレンス結果との差が既設定された基準値を超える場合、前記学習データと前記特定のスモールニューラルネットワークモデルの前記アーキテクチャー情報とをサーバーに伝送し、前記サーバーによって前記学習データを前記特定のスモールニューラルネットワークモデルでのハードサンプル(hard sample)としてタグ付け(tag)し、学習データベースに追加させるプロセスを遂行するか、または遂行するように支援する請求項13に記載の学習装置。
- サブ-カーネルサーチングモジュール(Sub-Kernel Searching Module、SSM)を利用してオン-デバイスニューラルネットワークモデル(on-device neural network model)を最適化する最適化装置であって、
インストラクションを格納する少なくとも一つのメモリと、
前記インストラクションを実行するために構成された少なくとも一つのプロセッサと、を含み、
(I)学習装置によって、(i)ニューラルネットワークモデルが搭載されたエッジデバイスが許容する最大のコンピューティングパワーを利用して目的とするタスク(task)を遂行することができる最大キャパシティ(capacity)を持つビッグニューラルネットワークモデル(Big Neural Network Model、B-NN Model)を、入力された入力データに対する第1インファレンス結果(first inference result)を生成するように学習させた状態で、学習データが獲得されると、前記学習データをサブ-カーネルサーチングモジュールに入力し、前記サブ-カーネルサーチングモジュールによって、(i-1)前記学習データに対応する演算量(computational load)、パラメーター(parameters)、レイテンシ(latency)、正確度(accuracy)、及びフロップス(flops)の中の少なくとも一つに適用された学習用制約(constraint)を確認し、(i-2)前記学習データに対応する複雑度、鮮明度の中の少なくとも一つに対する情報を含む学習用状態ベクトル(state vector)を生成し、(i-3)前記ビッグニューラルネットワークモデルの前記最大キャパシティに対応するスーパーカーネル(super kernel)のサブセット(subset)で、前記スーパーカーネルより小さいか同じカーネルの大きさと、少ないか同じチャンネルの数とからなり、前記学習用制約で前記学習用状態ベクトルを持つ前記学習データに対して前記目的とするタスクを遂行することができる最小限のカーネルの大きさと最小限のチャンネルの数とからなる学習用特定のサブ-カーネルの学習用アーキテクチャー情報(architecture information)を生成させるプロセス、(ii)(ii-1)前記学習用特定のサブ-カーネルの前記学習用アーキテクチャー情報を参照して前記ビッグニューラルネットワークモデルを最適化し、前記ビッグニューラルネットワークモデルから前記学習用特定のサブ-カーネルの前記学習用アーキテクチャー情報を持つ学習用特定のスモールニューラルネットワークモデル(Small Neural Network Model、S-NN Model)を生成し、(ii-2)前記学習用特定のスモールニューラルネットワークモデルによって前記学習データに対する第2インファレンス結果(second inference result)を生成させるプロセス、及び(iii)前記第1インファレンス結果と前記第2インファレンス結果とを参照して一つ以上の第1ロスを生成し、前記第1ロスを利用して前記サブ-カーネルサーチングモジュールを学習させるプロセスが遂行された状態で、前記プロセッサがテストデータを獲得すれば前記テストデータを前記サブ-カーネルサーチングモジュールに入力し、前記サブ-カーネルサーチングモジュールによって、(i)前記テストデータに対応する演算量、パラメーター、レイテンシ、正確度、及びフロップスの中の少なくとも一つに適用されたテスト用の制約(constraint)を確認し、(ii)前記テストデータに対応する複雑度、鮮明度の中の少なくとも一つに対する情報を含むテスト用の状態ベクトルを生成し、(iii)前記ビッグニューラルネットワークモデルの前記最大キャパシティに対応する前記スーパーカーネルのサブセットで、前記スーパーカーネルより小さいか同じカーネルの大きさと、少ないか同じチャンネルの数とからなり、前記テスト用の制約で前記テスト用の状態ベクトルを持つ前記テストデータに対して前記目的とするタスクを遂行することができる最小限のカーネルの大きさと最小限のチャンネルの数とからなるテスト用の特定のサブ-カーネルのテスト用のアーキテクチャー情報を生成させるプロセスを遂行するか、または遂行するように支援するステップと、(II)前記プロセッサが(i)前記テスト用の特定のサブ-カーネルの前記テスト用のアーキテクチャー情報を参照して前記ビッグニューラルネットワークモデルを最適化し、前記ビッグニューラルネットワークモデルから前記テスト用の特定のサブ-カーネルの前記テスト用のアーキテクチャー情報を持つテスト用の特定のスモールニューラルネットワークモデルを生成し、(ii)前記テスト用の特定のスモールニューラルネットワークモデルによって前記テストデータに対する第3インファレンス結果(third inference result)を生成させるプロセスを遂行するか、または遂行するように支援するステップと、を遂行する最適化装置。 - 前記(I)のステップにおいて、
前記プロセッサは、前記サブ-カーネルサーチングモジュールによって、(i)シーンオーバービューイングモジュール(Scene Overviewing Module、SSM)を通じて前記テストデータに対応するテスト用のシーンフィーチャー(scene features)を生成させ、前記テスト用のシーンフィーチャーに対応する前記テスト用の状態ベクトルを生成させ、(ii)サブ-カーネルネットワーク生成器(Sub-kernel Network Generator、SNG)を通じて前記テスト用の制約で前記テスト用の状態ベクトルを持つ前記学習データに対して前記目的とするタスクを遂行することができる最小限のカーネルの大きさと、最小限のチャンネルの数とからなる前記テスト用の特定のサブ-カーネルの前記テスト用のアーキテクチャー情報を生成させるプロセスを遂行するか、または遂行するように支援することを特徴とする請求項20に記載の最適化装置。 - 前記シーンオーバービューイングモジュールはコンボリューショナルニューラルネットワーク(Convolutional Neural Network、CNN)で構成され、前記サブ-カーネルネットワーク生成器はリカレントニューラルネットワーク(Recurrent Neural Network、RNN)で構成されていることを特徴とする請求項21に記載の最適化装置。
- 前記プロセッサは、前記シーンオーバービューイングモジュールの前記コンボリューションニューラルネットワークを通じて前記テストデータに対して少なくとも一つのコンボリューション(convolution)演算、少なくとも一つのプーリング(pooling)演算、及び少なくとも一つのFC(全結合:Fully-Connected)演算を適用して前記テストデータに対応する前記テスト用のシーンフィーチャーを生成させるプロセスを遂行するか、または遂行するように支援することを特徴とする請求項22に記載の最適化装置。
- 前記(II)のステップにおいて、
前記プロセッサは、前記テスト用の特定のサブ-カーネルの前記テスト用のアーキテクチャー情報によって前記ビッグニューラルネットワークモデルの前記スーパーカーネルのカーネルの高さ、カーネルの幅、及びチャンネルの数の中の少なくとも一つを調整して前記ビッグニューラルネットワークモデルを最適化することにより、前記テスト用の特定のサブ-カーネルの前記テスト用のアーキテクチャー情報を持つ前記テスト用の特定のスモールニューラルネットワークモデルを生成するプロセスを遂行するか、または遂行するように支援することを特徴とする請求項20に記載の最適化装置。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063024025P | 2020-05-13 | 2020-05-13 | |
US63/024,025 | 2020-05-13 | ||
US17/135,301 | 2020-12-28 | ||
US17/135,301 US10970633B1 (en) | 2020-05-13 | 2020-12-28 | Method for optimizing on-device neural network model by using sub-kernel searching module and device using the same |
PCT/KR2021/000858 WO2021230463A1 (en) | 2020-05-13 | 2021-01-21 | Method for optimizing on-device neural network model by using sub-kernel searching module and device using the same |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2023514173A true JP2023514173A (ja) | 2023-04-05 |
JP7425216B2 JP7425216B2 (ja) | 2024-01-30 |
Family
ID=75275501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022548235A Active JP7425216B2 (ja) | 2020-05-13 | 2021-01-21 | サブ-カーネルサーチングモジュールを利用してオン-デバイスニューラルネットワークモデルを最適化する方法及び装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10970633B1 (ja) |
EP (1) | EP3944154A1 (ja) |
JP (1) | JP7425216B2 (ja) |
KR (1) | KR20220088497A (ja) |
CN (1) | CN115298671A (ja) |
WO (1) | WO2021230463A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112132113A (zh) * | 2020-10-20 | 2020-12-25 | 北京百度网讯科技有限公司 | 车辆再识别的方法、装置、训练方法以及电子设备 |
KR102567024B1 (ko) * | 2022-12-26 | 2023-08-16 | 한국단자공업 주식회사 | 임베디드 기기 내 센서데이터의 온-디바이스 학습을 위한 신경망 구조 탐색방법 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002091211A1 (en) * | 2001-05-07 | 2002-11-14 | Biowulf Technologies, Llc | Kernels and methods for selecting kernels for use in learning machines |
US7599897B2 (en) * | 2006-05-05 | 2009-10-06 | Rockwell Automation Technologies, Inc. | Training a support vector machine with process constraints |
EP2144449A1 (en) * | 2008-07-07 | 2010-01-13 | BRITISH TELECOMMUNICATIONS public limited company | Video quality measurement |
US10318882B2 (en) * | 2014-09-11 | 2019-06-11 | Amazon Technologies, Inc. | Optimized training of linear machine learning models |
JP6889270B2 (ja) | 2017-02-23 | 2021-06-18 | グーグル エルエルシーGoogle LLC | ニューラルネットワークアーキテクチャの最適化 |
KR102139740B1 (ko) * | 2017-06-09 | 2020-07-31 | 한국과학기술원 | 전자 장치 및 학습 모델 최적화 방법 |
US11106975B2 (en) * | 2017-10-20 | 2021-08-31 | Asapp, Inc. | Fast neural network implementations by increasing parallelism of cell computations |
CN110598840B (zh) | 2018-06-13 | 2023-04-18 | 富士通株式会社 | 知识迁移方法、信息处理设备以及存储介质 |
US20200021815A1 (en) * | 2018-07-10 | 2020-01-16 | Fastvdo Llc | Method and apparatus for applying deep learning techniques in video coding, restoration and video quality analysis (vqa) |
US20200082247A1 (en) | 2018-09-07 | 2020-03-12 | Kneron (Taiwan) Co., Ltd. | Automatically architecture searching framework for convolutional neural network in reconfigurable hardware design |
CN110889487A (zh) | 2018-09-10 | 2020-03-17 | 富士通株式会社 | 神经网络架构搜索装置和方法及计算机可读记录介质 |
US20200104715A1 (en) * | 2018-09-28 | 2020-04-02 | Xilinx, Inc. | Training of neural networks by including implementation cost as an objective |
US11604960B2 (en) * | 2019-03-18 | 2023-03-14 | Microsoft Technology Licensing, Llc | Differential bit width neural architecture search |
US11630990B2 (en) * | 2019-03-19 | 2023-04-18 | Cisco Technology, Inc. | Systems and methods for auto machine learning and neural architecture search |
CN110334689B (zh) * | 2019-07-16 | 2022-02-15 | 北京百度网讯科技有限公司 | 视频分类方法和装置 |
-
2020
- 2020-12-28 US US17/135,301 patent/US10970633B1/en active Active
-
2021
- 2021-01-21 JP JP2022548235A patent/JP7425216B2/ja active Active
- 2021-01-21 CN CN202180022464.0A patent/CN115298671A/zh active Pending
- 2021-01-21 WO PCT/KR2021/000858 patent/WO2021230463A1/en active Application Filing
- 2021-01-21 KR KR1020227018470A patent/KR20220088497A/ko unknown
- 2021-01-25 EP EP21153231.2A patent/EP3944154A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US10970633B1 (en) | 2021-04-06 |
KR20220088497A (ko) | 2022-06-27 |
CN115298671A (zh) | 2022-11-04 |
WO2021230463A1 (en) | 2021-11-18 |
EP3944154A1 (en) | 2022-01-26 |
JP7425216B2 (ja) | 2024-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
He et al. | Learning filter pruning criteria for deep convolutional neural networks acceleration | |
US11093826B2 (en) | Efficient determination of optimized learning settings of neural networks | |
US11113574B1 (en) | Methods for performing self-supervised learning of deep-learning based detection network by using deep Q-network and devices using the same | |
JP2023514173A (ja) | サブ-カーネルサーチングモジュールを利用してオン-デバイスニューラルネットワークモデルを最適化する方法及び装置 | |
KR20200129639A (ko) | 모델 학습 방법 및 장치 | |
JP2020123345A (ja) | Ganを用いて仮想世界における仮想データから取得したトレーニングデータを生成して、自律走行用ニューラルネットワークの学習プロセスに必要なアノテーションコストを削減する学習方法や学習装置、それを利用したテスト方法やテスト装置 | |
JP6378150B2 (ja) | 最適化装置、最適化方法および最適化プログラム | |
Cheng et al. | A survey on deep neural network pruning-taxonomy, comparison, analysis, and recommendations | |
CN113313250B (zh) | 采用混合精度量化与知识蒸馏的神经网络训练方法及系统 | |
CN114757210A (zh) | 翻译模型的训练方法、语句翻译方法、装置、设备、程序 | |
KR20220032861A (ko) | 하드웨어에서의 성능을 고려한 뉴럴 아키텍처 서치 방법 빛 장치 | |
Shu et al. | Residual stacking of rnns for neural machine translation | |
JP2020123338A (ja) | ディープラーニング基盤装置の学習に使用されるバーチャル世界シミュレータの物理エンジンをキャリブレーションする方法及び装置、そしてそのためのリアル状態ネットワークを学習する方法及びそれを利用した学習装置 | |
US20220383166A1 (en) | Optimizing reservoir computers for hardware implementation | |
KR20230141828A (ko) | 적응형 그래디언트 클리핑을 사용하는 신경 네트워크들 | |
KR20220052844A (ko) | 뉴럴 네트워크의 제공 | |
KR20210155825A (ko) | 셀렉티브 딥 제너레이티브 리플레이 모듈을 사용하여 딥 뉴럴 네트워크 모델에 대한 조정 가능한 연속 학습을 수행하는 방법 및 장치 | |
US20230325671A1 (en) | Information processing apparatus, information processing method, and storage medium | |
Jang et al. | Uncertainty-Driven Pessimistic Q-Ensemble for Offline-to-Online Reinforcement Learning | |
KR102522734B1 (ko) | 3차원 의료 영상 분석을 위한 자가학습 기반 전이 학습 방법 및 그 장치 | |
Sung et al. | Exploration of on-device end-to-end acoustic modeling with neural networks | |
CN115169524A (zh) | 一种基于大数据智能优化的测试方法 | |
KR20240039776A (ko) | 시계열 데이터를 위한 학습가능한 gaf 방법 및 시스템 | |
Neto | Traffic light detection with neural network models | |
KR20210099988A (ko) | 뉴럴 네트워크의 메타 학습 방법 및 장치와 뉴럴 네트워크의 클래스 벡터 학습 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220808 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230825 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230905 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231127 |
|
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: 20240116 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240118 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7425216 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |