JP7242590B2 - 機械学習モデル圧縮システム、プルーニング方法及びプログラム - Google Patents

機械学習モデル圧縮システム、プルーニング方法及びプログラム Download PDF

Info

Publication number
JP7242590B2
JP7242590B2 JP2020017920A JP2020017920A JP7242590B2 JP 7242590 B2 JP7242590 B2 JP 7242590B2 JP 2020017920 A JP2020017920 A JP 2020017920A JP 2020017920 A JP2020017920 A JP 2020017920A JP 7242590 B2 JP7242590 B2 JP 7242590B2
Authority
JP
Japan
Prior art keywords
machine learning
evaluation
model
unit
learning model
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.)
Active
Application number
JP2020017920A
Other languages
English (en)
Other versions
JP2021124949A (ja
Inventor
孝浩 田中
耕祐 春木
隆二 境
昭行 谷沢
敦司 谷口
修平 新田
幸辰 坂田
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2020017920A priority Critical patent/JP7242590B2/ja
Priority to US17/002,820 priority patent/US20210241172A1/en
Publication of JP2021124949A publication Critical patent/JP2021124949A/ja
Application granted granted Critical
Publication of JP7242590B2 publication Critical patent/JP7242590B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/211Selection of the most significant subset of features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • 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/0495Quantised networks; Sparse networks; Compressed networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Medical Informatics (AREA)
  • Complex Calculations (AREA)
  • Image Analysis (AREA)

Description

本発明の実施形態は機械学習モデル圧縮システム、プルーニング方法及びプログラムに関する。
機械学習、特にディープラーニングの応用が、自動運転、製造工程監視及び疾病予測など様々な分野で進んでいる。こうした中、機械学習モデルの圧縮技術が注目されている。例えば自動運転では、車載向け画像認識プロセッサのように演算能力が低くメモリ資源の少ないエッジデバイスでのリアルタイム動作が必須である。そのため、演算能力が低くメモリ資源の少ないエッジデバイスでは、小規模なモデルが求められる。したがって、学習済みモデルの認識精度をなるべく維持したままモデルを圧縮する技術が必要とされている。
Pruning Filters for Efficient ConvNets [Li 2017]
しかしながら、従来の技術では、エッジやテクスチャといった簡単な形状を抽出する入力側のレイヤー付近に比べ、データセットに依存した複雑な特徴を抽出する出力側のレイヤー付近のチャネルを適切に選択してプルーニングすることが困難だった。
実施形態の機械学習モデル圧縮システムは、第1の評価部とソート部と削除部とを備える。第1の評価部は、学習済み機械学習モデルのレイヤーを出力側から入力側の順に選択し、選択されたレイヤーに含まれる複数の重みを評価する第1の評価値を、入力チャネル単位で算出する。ソート部は、前記入力チャネル単位で算出された前記第1の評価値を昇順または降順にソートする。削除部は、前記第1の評価値が小さい順に所定の数だけ前記第1の評価値を選択し、選択された前記第1の評価値の算出に使用された前記入力チャネルを削除する。
第1実施形態の機械学習モデル圧縮システムの機能構成の例を示す図。 第1実施形態のプルーニング部の機能構成の例を示す図。 第1実施形態のプルーニング処理の例を示すフローチャート。 第1実施形態のプルーニング処理を説明するための図。 第1実施形態の効果を説明するための図。 第2実施形態の機械学習モデル圧縮システムの機能構成の例を示す図。 第2実施形態の抽出制御部の機能構成の例を示す図。 第2実施形態の機械学習モデル圧縮方法の例を示すフローチャート。 第3実施形態の機械学習モデル圧縮システムの機能構成の例を示す図。 第3実施形態の機械学習モデル圧縮方法の例を示すフローチャート。 第1乃至第3実施形態の機械学習モデル圧縮システムに使用されるコンピュータのハードウェア構成の例を示す図。 第1乃至第3実施形態の機械学習モデル圧縮システムの装置構成の例を示す図。
以下に添付図面を参照して、機械学習モデル圧縮システム、プルーニング方法及びプログラムの実施形態を詳細に説明する。
(第1実施形態)
はじめに、第1実施形態の機械学習モデル圧縮システムの機能構成の例について説明する。
[機能構成の例]
図1は第1実施形態の機械学習モデル圧縮システム10の機能構成の例を示す図である。第1実施形態の機械学習モデル圧縮システム10は、プルーニング部1及び学習部2を備える。
プルーニング部1は、入力されたレイヤーごとのプルーニング率201に基づき、学習済み機械学習モデル202から重みをプルーニングする。なお、プルーニング率201の代わりに、レイヤーごとのチャネル数がプルーニング部1に入力されてもよい。プルーニング部1の処理の詳細は図2を用いて後述する。
学習部2は、プルーニングにより生成された圧縮モデル203を、データセット204で再学習し、再学習された圧縮モデル203を出力する。
図2は第1実施形態のプルーニング部1の機能構成の例を示す図である。第1実施形態のプルーニング部1は、第1の評価部11、ソート部12及び削除部13を備える。
第1の評価部11は、学習済み機械学習モデル202のレイヤーを出力側(出力レイヤー)から入力側(入力レイヤー)の順に選択し、選択されたレイヤーに含まれる複数の重みを評価する第1の評価値を、入力チャネル単位で算出する。第1の評価値の算出方法の詳細は図3及び図4を用いて後述する。
ソート部12は、入力チャネル単位で算出された第1の評価値を昇順(又は降順)にソートする。
削除部13は、第1の評価値が小さい順に所定の数だけ第1の評価値を選択し、選択された第1の評価値の算出に使用された入力チャネルを削除する。
[プルーニング処理の例]
図3は第1実施形態のプルーニング処理の例を示すフローチャートである。図4は第1実施形態のプルーニング処理を説明するための図である。図4において、iはレイヤー番号、cはチャネル数、wとhはそれぞれ特徴マップの幅と高さを表す。iの値が小さいほど入力レイヤーに近く、iの値が大きいほど出力レイヤーに近いことを表す。Kernel matrixの列数nは入力チャネル数に、行数mは出力チャネル数に対応する。以下に、i+1番目のレイヤーからフィルタをプルーニングする手順を説明する。この処理は、出力レイヤーから入力レイヤーの順に行われる。
まず、第1の評価部11が、Kernel matrixに含まれる各フィルタFm,n(m=1~ci+1,n=1~ci+2)について係数(重み)の絶対値和|Κ|を算出する(ステップS101)。例えば各フィルタFm,nが3×3カーネルである場合、9つの係数の絶対値和が|Κ|となる。絶対値和|Κ|は、いわゆるL1ノルムである。なお、L1ノルムの代わりに、係数の二乗和であるL2ノルムや、係数の絶対値の最大値であるL∞ノルム(Maxノルム)などを用いてもよい。
次に、第1の評価部11が、下記式(1)によって、入力チャネルごとに絶対値和|Κ|を、第1の評価値として求める(ステップS102)。
Figure 0007242590000001
次に、ソート部12が、絶対値和Smを昇順(又は降順)にソートする(ステップS102)。
次に、削除部13が、絶対値和Smがより小さい入力チャネルと、当該入力チャネルに対応する特徴マップとを所定の数だけ削除し、次のレイヤーにおいて、削除された特徴マップに対応する出力チャネルも削除する(ステップS103)。図4の例は、4番目のチャネルc、及び、当該チャネルcに対応する特徴マップが削除される場合を示す。
次に、削除部13が、全てのレイヤーのプルーニング処理が完了したかどうかを判定する(ステップS104)。全てのレイヤーのプルーニング処理が完了していない場合(ステップS104,No)、削除部13が、iの値を1小さくし(ステップS105)、処理はステップS101に戻る。全てのレイヤーのプルーニング処理が完了すれば(ステップS104,Yes)、プルーニング処理は終了となる。
以上、説明したように、第1実施形態の機械学習モデル圧縮システム10では、第1の評価部11が、学習済み機械学習モデル202のレイヤーを出力側から入力側の順に選択し、選択されたレイヤーに含まれる複数の重みを評価する第1の評価値を、入力チャネル単位で算出する。ソート部12は、入力チャネル単位で算出された第1の評価値を昇順(又は降順)にソートする。削除部13は、第1の評価値が小さい順に所定の数だけ第1の評価値を選択し、選択された第1の評価値の算出に使用された入力チャネルを削除する。
これにより第1実施形態によれば、出力レイヤーから入力レイヤーの順にプルーニング処理を行うことで、データセット204に依存した複雑な特徴を抽出する出力レイヤー付近のチャネルを適切に選択することができ、プルーニング後のモデルを再学習する場合に、学習の収束を早めることが可能となる。
一般的に、プルーニング後のモデルは、認識性能を確保するため、対象とするデータセット204で再学習を行う。削除部13は、再学習後の認識性能が、プルーニング前の認識性能と比較して許容範囲内の低下に収まるよう、ステップS103における所定の数を調整する。
図5は第1実施形態の効果を説明するための図である。図5は、CIFAR-10データセットで学習済みのVGG-16ネットワークを、非特許文献1に記載の方法(図5点線)及び第1実施形態の方法(図5実線)でそれぞれプルーニングし、重みの数を約1/10に削減した機械学習モデルを、CIFAR-10データセットで再学習した場合の学習曲線を示す。図5の横軸が学習時間、縦軸が認識性能である。第1実施形態のプルーニング方法でプルーニングした機械学習モデルの認識性能が、より早く収束していることが分かる。
また、第1実施形態によれば、生成したい圧縮モデル203の重みパラメータ数があらかじめおおよそ決まっている場合は、探索処理(詳細は第2実施形態で後述)を省くことにより、比較的短時間で所望の圧縮モデルを得ることができる。
(第2実施形態)
次に第2実施形態の機械学習モデル圧縮システムについて説明する。第2実施形態の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。第2実施形態では、生成すべき圧縮モデル203の探索処理を実行する場合について説明する。
[機能構成の例]
図6は第1実施形態の機械学習モデル圧縮システム10-2の機能構成の例を示す図である。第2実施形態の機械学習モデル圧縮システム10-2は、選択部21、抽出制御部22、生成部23、第2の評価部24、及び、判定部25を備える。
選択部21は、所定の探索範囲に含まれる圧縮モデルの構造を決定するパラメータの選択処理を実行する。
抽出制御部22は、学習済み機械学習モデルから圧縮モデルの重みを抽出する重み抽出処理を実行する。抽出制御部22の処理の詳細は図7を用いて後述する。
生成部23は、パラメータを使用して圧縮モデル203を生成し、抽出された重みを203圧縮モデルの少なくとも1つのレイヤーの重みの初期値として設定する圧縮モデル生成処理を実行する。
第2の評価部24は、圧縮モデル203を所定の期間学習し、圧縮モデル203の認識性能を示す第2の評価値を算出する性能評価処理を実行する。
判定部25は、所定の終了条件に基づいて、上述のパラメータの選択処理と、上述の重み抽出処理と、上述の圧縮モデル生成処理と、上述の性能評価処理とを繰り返すか否かを判定する。
図7は第2実施形態の抽出制御部22の機能構成の例を示す図である。第2実施形態の抽出制御部22は、第1の評価部11、ソート部12、削除部13及び抽出部14を備える。第1の評価部11、ソート部12及び削除部13の説明は、第1実施形態と同様のため省略する。抽出部14は、削除部13によって削除された入力チャネルに対応する重みを削除することによって、学習済み機械学習モデルから圧縮モデルの重みを抽出する(削除されずに残った重みを抽出する)。
[機械学習モデル圧縮処理の例]
図8は第2実施形態の機械学習モデル圧縮方法の例を示すフローチャートである。はじめに、選択部21は、探索範囲211に含まれる圧縮モデル203の構造を決定するパラメータとして、チャネル数(又はノード数)の情報を含むハイパーパラメータ212を選択する(ステップS201)。
なお、圧縮モデル203(圧縮モデル203のモデル構造を決定するハイパーパラメータ212)の具体的な選択方法は任意でよい。例えば、選択部21は、ベイズ推定や遺伝的アルゴリズムを用いて、認識性能がより高くなると期待される圧縮モデル203を選択してもよい。また例えば、選択部21は、ランダム探索やグリッド探索を用いて圧縮モデル203を選択してもよい。また例えば、選択部21は、複数の選択方法を組み合わせて、より最適な圧縮モデル203を選択してもよい。
また、探索範囲211は機械学習モデル圧縮システム10-2の内部で自動的に決定してもよい。例えば、学習済みの機械学習モデル202の学習に用いたデータセット204を、学習済みの機械学習モデル202に入力し、推論の結果得られたレイヤーごとの固有値を解析することによって、探索範囲211を自動的に決定してもよい。
次に、抽出部14が、第1実施形態のプルーニング方法(図3参照)を用いて重みを削除することによって、学習済みの機械学習モデル202から、ハイパーパラメータ212に含まれるチャネル数(又はノード数)の情報に応じた数の重みパラメータ213を抽出する(ステップS202)。
次に、生成部23が、ステップS201により選択されたハイパーパラメータ212が表す圧縮モデル203を生成し、ステップS202により抽出された重みパラメータ213を、圧縮モデル203の重みの初期値として設定する(ステップS203)。
次に、評価部205が、データセット204を用いて、圧縮モデル203を所定の期間学習させて、圧縮モデル203の認識性能を測定し、認識性能を示す値を第2の評価値214として出力する(ステップS204)。第2の評価値214は、例えばクラス分類タスクであればaccuracy、物体検出タスクであればmAPなど、圧縮モデル203の認識性能を表す値である。
なお、探索時間を削減するため、評価部205が、圧縮モデル203の学習状況から、それほど高い認識性能が得られそうにないと判断した場合に学習を打ち切ってもよい。具体的には、評価部205は、例えば学習時間に応じた認識率の上昇率を評価し、当該上昇率が閾値以下の場合、学習を打ち切ってもよい。これにより圧縮モデル203の探索を効率化することができる。
また、評価部205は、機械学習モデル圧縮システム10-2に入力された制約条件216に基づいて、ステップS204の処理の実行を判断してもよい。制約条件216とは、圧縮モデル203を動作させる場合に満たさなければならない制約の集合を示す。制約条件216は、例えば推論速度(処理時間)の上限、使用メモリ量の上限、及び、圧縮モデル203のバイナリサイズの上限などである。圧縮モデル203が制約条件216を満たさない場合は、ステップS204の処理を行わないことで、圧縮モデル203の探索を高速化することができる。
次に、判定部206は、あらかじめ設定された所定の終了条件に基づいて探索の終了を判定する(ステップS205)。所定の終了条件は、例えば第2の評価値214が評価閾値を超えた場合である。また例えば、所定の終了条件は、評価部205での評価回数(第2の評価値214の評価回数)が回数閾値を超えた場合である。また例えば、所定の終了条件は、圧縮モデル203の探索時間が時間閾値を超えた場合である。また例えば、所定の終了条件は、複数の終了条件を組み合わせてもよい。
判定部206は、あらかじめ設定された終了条件に応じて、ハイパーパラメータ212、当該ハイパーパラメータ212に対応する第2の評価値214、ループ回数及び探索経過時間などのうち、必要な情報を内部に保持しておく。
所定の終了条件を満たさない場合(ステップS205,No)、判定部206は、第2の評価値214を選択部21に入力し、処理はステップS201に戻る。選択部21は、判定部206から上述の第2の評価値214を受け付けると、次に処理される圧縮モデル203のモデル構造を決定するハイパーパラメータ212を選択する(ステップS201)。
一方、所定の終了条件を満たす場合(ステップS205,Yes)、判定部206は、例えば第2の評価値214が最も高かった圧縮モデル203のハイパーパラメータ212を、選択モデルパラメータ215として、評価部205に入力する。
評価部205は、学習済みの圧縮モデル203を出力する場合(ステップS206,Yes)、選択モデルパラメータ215で決定される圧縮モデル203を、データセット204を使用して十分に学習させ(ステップS207)、学習済みの圧縮モデル203として出力する。
なお、評価部205から出力される圧縮モデル203は未学習の圧縮モデルであってもよい(ステップS206,No)。また、評価部205から出力される情報は、例えば圧縮モデル203のチャネル数(又はノード数)の情報を含むハイパーパラメータであってもよい。また例えば、評価部205から出力される情報は、未学習の圧縮モデル203、学習済みの圧縮モデル203、及び、ハイパーパラメータの2つ以上の組み合わせであってもよい。
以上、説明したように、第2実施形態によれば、学習済み機械学習モデル202の重みの一部を圧縮モデル203の重みの初期値とすることで、学習の収束が早くなり、ステップS204の処理での学習期間を短くできるため、探索範囲211で認識精度を最大化する圧縮モデル203を効率的に探索することが可能となる。
(第3実施形態)
次に第3実施形態の機械学習モデル圧縮システムについて説明する。第3実施形態の説明では、第2実施形態と同様の説明については省略する。第3実施形態は、学習済み機械学習モデル202の重みを、圧縮モデル203の重みの初期値として利用するかどうかをレイヤーごとに選択できる部分が第2実施形態と異なる。
[機能構成の例]
図9は第3実施形態の機械学習モデル圧縮システム10-3の機能構成の例を示す図である。第3実施形態の機械学習モデル圧縮システム10-3は、選択部21、抽出制御部22、生成部23、第2の評価部24、及び、判定部25を備える。
第3実施形態の抽出制御部22は、抽出された重みを圧縮モデルの重みの初期値として設定するレイヤーを指定する入力(重み設定パラメータ221)を受け付け、指定されたレイヤーの重みを抽出する。重み設定パラメータ221は、例えばユーザによって設定される。
第3実施形態の生成部23は、抽出された重みを圧縮モデルの重みの初期値として設定するレイヤーを指定する入力(重み設定パラメータ221)を受け付け、抽出制御部22によって抽出された重みを、指定されたレイヤーの重みの初期値として設定する。
[機械学習モデル圧縮処理の例]
図10は第3実施形態の機械学習モデル圧縮方法の例を示すフローチャートである。ステップS301の説明は、第2実施形態のステップS201と同じなので省略する。
抽出制御部22は、上述の重み設定パラメータ221に基づいて、学習済み機械学習モデル202から重みを抽出するか否かを判定する(ステップS302)。
圧縮モデル203の少なくとも1つのレイヤーで、学習済み機械学習モデル202の重みを利用する場合(S302,Yes)、生成部23は、重みパラメータ213を、重み設定パラメータ221で指定された圧縮モデル203のレイヤーの重みの初期値として設定する(ステップS203)。なお、重み設定パラメータ221で指定されなかった圧縮モデル203のレイヤーの重みの初期値は、ランダムな値でもよいし、所定の定数値でもよい。
圧縮モデル203の全てのレイヤーで、学習済み機械学習モデル202の重みを利用しない場合(S302,No)、処理はステップS304に進む。
ステップS304~ステップS308の説明は、第2実施形態のステップS203~ステップS207と同じなので省略する。
以上、説明したように、第3実施形態によれば、学習済み機械学習モデル202の重みを利用するかどうかを、レイヤーごとに指定できるため、学習済み機械学習モデル202の学習に用いたデータセットとは異なるデータセットにfine tuningすることが可能となる。例えば、エッジやテクスチャといった、データセットに依存しない特徴を抽出する入力レイヤー付近のみ、学習済み機械学習モデル202の重みを利用することで、異なるデータセットに効率的にfine tuningすることができる。
最後に、第1乃至第3実施形態の機械学習モデル圧縮システム10~10-3に使用されるコンピュータのハードウェア構成の例について説明する。
[ハードウェア構成の例]
図11は第1乃至第3実施形態の機械学習モデル圧縮システム10~10-3に使用されるコンピュータのハードウェア構成の例を示す図である。
機械学習モデル圧縮システム10~10-3に使用されるコンピュータは、制御装置501、主記憶装置502、補助記憶装置503、表示装置504、入力装置505及び通信装置506を備える。制御装置501、主記憶装置502、補助記憶装置503、表示装置504、入力装置505及び通信装置506は、バス510を介して接続されている。
制御装置501は、補助記憶装置503から主記憶装置502に読み出されたプログラムを実行する。主記憶装置502は、ROM(Read Only Memory)、及び、RAM(Random Access Memory)等のメモリである。補助記憶装置503は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、及び、メモリカード等である。
表示装置504は表示情報を表示する。表示装置504は、例えば液晶ディスプレイ等である。入力装置505は、コンピュータを操作するためのインタフェースである。入力装置505は、例えばキーボードやマウス等である。コンピュータがスマートフォン及びタブレット型端末等のスマートデバイスの場合、表示装置504及び入力装置505は、例えばタッチパネルである。通信装置506は、他の装置と通信するためのインタフェースである。
コンピュータで実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、メモリカード、CD-R及びDVD(Digital Versatile Disc)等のコンピュータで読み取り可能な記憶媒体に記録されてコンピュータ・プログラム・プロダクトとして提供される。
またコンピュータで実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。またコンピュータで実行されるプログラムをダウンロードさせずにインターネット等のネットワーク経由で提供するように構成してもよい。
またコンピュータで実行されるプログラムを、ROM等に予め組み込んで提供するように構成してもよい。
コンピュータで実行されるプログラムは、上述の機械学習モデル圧縮システム10~10-3の機能構成(機能ブロック)のうち、プログラムによっても実現可能な機能ブロックを含むモジュール構成となっている。当該各機能ブロックは、実際のハードウェアとしては、制御装置501が記憶媒体からプログラムを読み出して実行することにより、上記各機能ブロックが主記憶装置502上にロードされる。すなわち上記各機能ブロックは主記憶装置502上に生成される。
なお上述した各機能ブロックの一部又は全部をソフトウェアにより実現せずに、IC(Integrated Circuit)等のハードウェアにより実現してもよい。
また複数のプロセッサを用いて各機能を実現する場合、各プロセッサは、各機能のうち1つを実現してもよいし、各機能のうち2つ以上を実現してもよい。
また機械学習モデル圧縮システム10~10-3を実現するコンピュータの動作形態は任意でよい。例えば、機械学習モデル圧縮システム10~10-3を1台のコンピュータにより実現してもよい。また例えば、機械学習モデル圧縮システム10~10-3を、ネットワーク上のクラウドシステムとして動作させてもよい。
[装置構成の例]
図12は第1乃至第3実施形態の機械学習モデル圧縮システム10~10-3の装置構成の例を示す図である。図10の例では、機械学習モデル圧縮システム10~10-3は、複数のクライアント装置100a~100z、ネットワーク200及びサーバ装置300を備える。
クライアント装置100a~100zを区別する必要がない場合は、単にクライアント装置100という。なお、機械学習モデル圧縮システム10~10-3内のクライアント装置100の数は任意でよい。クライアント装置100は、例えば、パソコン及びスマートフォンなどのコンピュータである。複数のクライアント装置100a~100zとサーバ装置300とは、ネットワーク200を介して互いに接続されている。ネットワーク200の通信方式は、有線方式であっても無線方式であってもよく、また、両方を組み合わせてもよい。
例えば、機械学習モデル圧縮システム10のプルーニング部1及び学習部2をサーバ装置300により実現し、ネットワーク200上のクラウドシステムとして動作させてもよい。例えば、クライアント装置100が、機械学習モデル202及びデータセット204をサーバ装置300へ送信してもよい。そして、サーバ装置3が、学習部2により再学習された圧縮モデル203をクライアント装置100に送信してもよい。
また例えば、機械学習モデル圧縮システム10-2及び10-3の選択部21、抽出制御部22、生成部23、第2の評価部24、及び、判定部25をサーバ装置300により実現し、ネットワーク200上のクラウドシステムとして動作させてもよい。例えば、クライアント装置100が、機械学習モデル202及びデータセット204をサーバ装置300へ送信してもよい。そして、サーバ装置300が、探索部104により探索された圧縮モデル203をクライアント装置100に送信してもよい。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1 プルーニング部
2 学習部
10 機械学習モデル圧縮システム
11 第1の評価部
12 ソート部
13 削除部
14 抽出部
21 選択部
22 抽出制御部
23 生成部
24 第2の評価部
25 判定部
100 クライアント装置
200 ネットワーク
300 サーバ装置
501 制御装置
502 主記憶装置
503 補助記憶装置
504 表示装置
505 入力装置
506 通信装置
510 バス

Claims (7)

  1. 学習済み機械学習モデルのレイヤーを出力側から入力側の順に選択し、選択されたレイヤーに含まれる複数の重みを評価する第1の評価値を、入力チャネル単位で算出する第1の評価部と、
    前記入力チャネル単位で算出された前記第1の評価値を昇順または降順にソートするソート部と、
    前記第1の評価値が小さい順に所定の数だけ前記第1の評価値を選択し、選択された前記第1の評価値の算出に使用された前記入力チャネルを削除する削除部と、
    を備える機械学習モデル圧縮システム。
  2. 前記第1の評価値は、前記複数の重みのL1ノルムである、
    請求項1に記載の機械学習モデル圧縮システム。
  3. 所定の探索範囲に含まれる圧縮モデルの構造を決定するパラメータの選択処理を実行する選択部と、
    前記削除部によって削除された前記入力チャネルに対応する重みを削除することによって、前記学習済み機械学習モデルから前記圧縮モデルの重みを抽出する重み抽出処理を実行する抽出部と、
    前記パラメータを使用して前記圧縮モデルを生成し、前記抽出された重みを前記圧縮モデルの少なくとも1つのレイヤーの重みの初期値として設定する圧縮モデル生成処理を実行する生成部と、
    前記圧縮モデルを所定の期間学習し、前記圧縮モデルの認識性能を示す第2の評価値を算出する性能評価処理を実行する第2の評価部と、
    所定の終了条件に基づいて、前記パラメータの選択処理と、前記重み抽出処理と、前記圧縮モデル生成処理と、前記性能評価処理とを繰り返すか否かを判定する判定部と、
    を更に備える請求項1又は2に記載の機械学習モデル圧縮システム。
  4. 前記生成部は、前記抽出された重みを前記圧縮モデルの重みの初期値として設定するレイヤーを指定する入力を受け付け、前記抽出された重みを、指定されたレイヤーの重みの初期値として設定する、
    請求項3に記載の機械学習モデル圧縮システム。
  5. 前記所定の終了条件は、前記第2の評価値が評価閾値を超えた場合、前記第2の評価値の評価回数が回数閾値を超えた場合、又は、前記圧縮モデルの探索時間が時間閾値を超えた場合である、
    請求項3又は4に記載の機械学習モデル圧縮システム。
  6. 機械学習モデル圧縮システムが、学習済み機械学習モデルのレイヤーを出力側から入力側の順に選択し、選択されたレイヤーに含まれる複数の重みを評価する第1の評価値を、入力チャネル単位で算出するステップと、
    前記機械学習モデル圧縮システムが、前記入力チャネル単位で算出された前記第1の評価値を昇順または降順にソートするステップと、
    前記機械学習モデル圧縮システムが、前記第1の評価値が小さい順に所定の数だけ前記第1の評価値を選択し、選択された前記第1の評価値の算出に使用された前記入力チャネルを削除するステップと、
    を含むプルーニング方法。
  7. コンピュータを、
    学習済み機械学習モデルのレイヤーを出力側から入力側の順に選択し、選択されたレイヤーに含まれる複数の重みを評価する第1の評価値を、入力チャネル単位で算出する第1の評価部と、
    前記入力チャネル単位で算出された前記第1の評価値を昇順または降順にソートするソート部と、
    前記第1の評価値が小さい順に所定の数だけ前記第1の評価値を選択し、選択された前記第1の評価値の算出に使用された前記入力チャネルを削除する削除部、
    として機能させるためのプログラム。
JP2020017920A 2020-02-05 2020-02-05 機械学習モデル圧縮システム、プルーニング方法及びプログラム Active JP7242590B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020017920A JP7242590B2 (ja) 2020-02-05 2020-02-05 機械学習モデル圧縮システム、プルーニング方法及びプログラム
US17/002,820 US20210241172A1 (en) 2020-02-05 2020-08-26 Machine learning model compression system, pruning method, and computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020017920A JP7242590B2 (ja) 2020-02-05 2020-02-05 機械学習モデル圧縮システム、プルーニング方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2021124949A JP2021124949A (ja) 2021-08-30
JP7242590B2 true JP7242590B2 (ja) 2023-03-20

Family

ID=77062041

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020017920A Active JP7242590B2 (ja) 2020-02-05 2020-02-05 機械学習モデル圧縮システム、プルーニング方法及びプログラム

Country Status (2)

Country Link
US (1) US20210241172A1 (ja)
JP (1) JP7242590B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023077818A (ja) 2021-11-25 2023-06-06 富士通株式会社 機械学習プログラム、機械学習方法、及び、情報処理装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170337472A1 (en) 2016-05-19 2017-11-23 Nec Laboratories America, Inc. Passive pruning of filters in a convolutional neural network
US20190258932A1 (en) 2018-02-20 2019-08-22 Samsung Electronics Co., Ltd. Method of performing learning of deep neural network and apparatus thereof
JP2019212206A (ja) 2018-06-08 2019-12-12 沖電気工業株式会社 ニューラルネットワーク軽量化装置、情報処理装置、ニューラルネットワーク軽量化方法およびプログラム
JP2020008993A (ja) 2018-07-04 2020-01-16 株式会社東芝 学習方法、学習装置および画像認識システム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7657494B2 (en) * 2006-09-20 2010-02-02 Chevron U.S.A. Inc. Method for forecasting the production of a petroleum reservoir utilizing genetic programming

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170337472A1 (en) 2016-05-19 2017-11-23 Nec Laboratories America, Inc. Passive pruning of filters in a convolutional neural network
US20190258932A1 (en) 2018-02-20 2019-08-22 Samsung Electronics Co., Ltd. Method of performing learning of deep neural network and apparatus thereof
JP2019212206A (ja) 2018-06-08 2019-12-12 沖電気工業株式会社 ニューラルネットワーク軽量化装置、情報処理装置、ニューラルネットワーク軽量化方法およびプログラム
JP2020008993A (ja) 2018-07-04 2020-01-16 株式会社東芝 学習方法、学習装置および画像認識システム

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Hao Li et al.,Pruning Filters for Efficient ConvNets,arXiv,arXiv: 1608.08710v3,2017年03月10日,https://arxiv.org/abs/1608.08710v3,先行技術文献
佐々木 健太,ニューラルネットワークの全結合層におけるパラメータ削減手法の比較,DEIM Forum 2017 論文集,日本,電子情報通信学会データ工学研究専門委員会、日本データベース学会、情報処理学会データベースシステム研究会,2017年03月,DEIM 2017 B3-3
山本 康平,ディープラーニングのモデル軽量化技術,OKIテクニカルレビュー,日本,沖電気工業株式会社,2019年05月20日,第233号, Vol. 86, No. 1,pp. 24-27
谷口 敦司,重み係数のスパース化による深層ニューラルネットワークのコンパクト化技術,東芝レビュー[online],2019年07月,Vlo. 74, No. 4,pp. 42-45,ISSN 2432-1168

Also Published As

Publication number Publication date
JP2021124949A (ja) 2021-08-30
US20210241172A1 (en) 2021-08-05

Similar Documents

Publication Publication Date Title
US11334795B2 (en) Automated and adaptive design and training of neural networks
US11282208B2 (en) Identifying target objects using scale-diverse segmentation neural networks
US9519868B2 (en) Semi-supervised random decision forests for machine learning using mahalanobis distance to identify geodesic paths
JP6937330B2 (ja) 機械学習モデル圧縮システム、機械学習モデル圧縮方法及びプログラム
JP5521881B2 (ja) 画像識別情報付与プログラム及び画像識別情報付与装置
US11301509B2 (en) Image search system, image search method, and program
CN112418292B (zh) 一种图像质量评价的方法、装置、计算机设备及存储介质
US20200133998A1 (en) Estimation method, estimation apparatus, and computer-readable recording medium
US11562294B2 (en) Apparatus and method for analyzing time-series data based on machine learning
CN112488999B (zh) 一种图像中小目标检测方法、系统、存储介质及终端
CN114580263A (zh) 基于知识图谱的信息系统故障预测方法及相关设备
CN112446888A (zh) 图像分割模型的处理方法和处理装置
CN103177177A (zh) 信息处理设备、估计器生成方法和程序
JP7242590B2 (ja) 機械学習モデル圧縮システム、プルーニング方法及びプログラム
WO2022036520A1 (en) Method and apparatus for enhancing performance of machine learning classification task
CN113869332A (zh) 一种特征选择方法、装置、存储介质和设备
US20200257999A1 (en) Storage medium, model output method, and model output device
CN114118411A (zh) 图像识别网络的训练方法、图像识别方法及装置
US11295229B1 (en) Scalable generation of multidimensional features for machine learning
US11676050B2 (en) Systems and methods for neighbor frequency aggregation of parametric probability distributions with decision trees using leaf nodes
US20200372280A1 (en) Apparatus and method for image processing for machine learning
JP6217164B2 (ja) データ管理装置及びデータ分析装置
CN114283350B (zh) 视觉模型训练和视频处理方法、装置、设备及存储介质
US11551436B2 (en) Method and processing unit for computer-implemented analysis of a classification model
KR102317205B1 (ko) 압축된 데이터를 복원하는 방법 및 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220228

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221228

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230308

R151 Written notification of patent or utility model registration

Ref document number: 7242590

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151