JP7447985B2 - 学習装置、学習方法、学習プログラム、推定装置、推定方法及び推定プログラム - Google Patents

学習装置、学習方法、学習プログラム、推定装置、推定方法及び推定プログラム Download PDF

Info

Publication number
JP7447985B2
JP7447985B2 JP2022504953A JP2022504953A JP7447985B2 JP 7447985 B2 JP7447985 B2 JP 7447985B2 JP 2022504953 A JP2022504953 A JP 2022504953A JP 2022504953 A JP2022504953 A JP 2022504953A JP 7447985 B2 JP7447985 B2 JP 7447985B2
Authority
JP
Japan
Prior art keywords
estimation
model
estimation result
increases
learning
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
JP2022504953A
Other languages
English (en)
Other versions
JPWO2021176734A1 (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2021176734A1 publication Critical patent/JPWO2021176734A1/ja
Priority to JP2024029580A priority Critical patent/JP2024051136A/ja
Application granted granted Critical
Publication of JP7447985B2 publication Critical patent/JP7447985B2/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
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • 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/217Validation; Performance evaluation; Active pattern learning techniques
    • G06F18/2178Validation; Performance evaluation; Active pattern learning techniques based on feedback of a supervisor
    • G06F18/2185Validation; Performance evaluation; Active pattern learning techniques based on feedback of a supervisor the supervisor being an automated module, e.g. intelligent oracle
    • 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/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/285Selection of pattern recognition techniques, e.g. of classifiers in a multi-classifier system
    • 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
    • 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/084Backpropagation, e.g. using gradient descent
    • 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

Landscapes

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

Description

本発明は、学習装置、学習方法、学習プログラム、推定装置、推定方法及び推定プログラムに関する。
昨今、ビデオ監視、音声アシスタント、自動運転といった、DNN(deep neural network)を使ったリアルタイムアプリケーションが登場している。このようなリアルタイムアプリケーションには、DNNの精度を保ちつつ限られたリソースで多量のクエリをリアルタイムに処理することが求められる。そこで、高速かつ低精度な軽量モデルと低速かつ高精度な高精度モデルを使って、精度劣化少なく推論処理を高速化可能なモデルカスケードという技術が提案されている。
モデルカスケードでは軽量モデル及び高精度モデルを含む複数のモデルが用いられる。モデルカスケードによる推論を行う際は、まず軽量モデルで推定を行い、その結果が信用できる場合にはその結果を採用して処理を終了する。一方、軽量モデルの推定結果が信用できない場合には、続けて高精度モデルで推論を行い、その結果を採用する。例えば、軽量モデルの推定結果を信用できるか否かを判定するためにIDK(I Don’t Know)分類器を導入したIDK Cascade(例えば、非特許文献1を参照)が知られている。
Wang, Xin, et al. "Idk cascades: Fast deep learning by learning not to overthink." arXiv preprint arXiv:1706.00885 (2017).
しかしながら、従来のモデルカスケードには、計算コスト及び計算リソースのオーバーヘッドが生じる場合があるという問題がある。例えば、非特許文献1の技術では、軽量分類器及び高精度分類器に加え、IDK分類器を設ける必要がある。このため、モデルが1つ増えることになり、計算コスト及び計算リソースのオーバーヘッドが生じる。
上述した課題を解決し、目的を達成するために、学習装置は、入力されたデータを基に推定結果を出力する第1のモデルに学習用データを入力し、第1の推定結果を取得する推定部と、前記第1の推定結果の正否及び確信度と、入力されたデータを基に推定結果を出力するモデルであって、前記第1のモデルよりも処理速度が遅い、又は前記第1のモデルよりも推定精度が高い第2のモデルに前記学習用データを入力して得られた第2の推定結果の正否と、を基に、前記第1のモデルと前記第2のモデルを含むモデルカスケードが最適化されるように、前記第1のモデルのパラメータを更新する更新部と、を有することを特徴とする。
本発明によれば、モデルカスケードの計算コスト及び計算リソースのオーバーヘッドを抑止することができる。
図1は、モデルカスケードについて説明する図である。 図2は、第1の実施形態に係る学習装置の構成例を示す図である。 図3は、ケースごとの損失の一例を示す図である。 図4は、高精度モデルの学習処理の流れを示すフローチャートである。 図5は、軽量モデルの学習処理の流れを示すフローチャートである。 図6は、第2の実施形態に係る推定システムの構成例を示す図である。 図7は、推定処理の流れを示すフローチャートである。 図8は、実験結果を示す図である。 図9は、実験結果を示す図である。 図10は、実験結果を示す図である。 図11は、実験結果を示す図である。 図12は、実験結果を示す図である。 図13は、第3の実施形態に係る推定装置の構成例を示す図である。 図14は、3つ以上のモデルを含むモデルカスケードについて説明する図である。 図15は、3つ以上のモデルの学習処理の流れを示すフローチャートである。 図16は、3つ以上のモデルによる推定処理の流れを示すフローチャートである。 図17は、学習プログラムを実行するコンピュータの一例を示す図である。
以下に、本願に係る学習装置、学習方法、学習プログラム、推定装置、推定方法及び推定プログラムの実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
[第1の実施形態]
第1の実施形態に係る学習装置は、入力された学習用データを用いて、高精度モデル及び軽量モデルの学習を行う。そして、学習装置は、学習済みの高精度モデルに関する情報、及び学習済みの軽量モデルに関する情報を出力する。例えば、学習装置は、各モデルを構築するために必要なパラメータを出力する。
高精度モデル及び軽量モデルは、入力されたデータを基に推定結果を出力するモデルである。第1の実施形態において、高精度モデル及び軽量モデルは、画像を入力とし、当該画像に写る物体のクラスごとの確率を推定する多クラス分類モデルであるものとする。ただし、高精度モデル及び軽量モデルは、そのような多クラス分類モデルに限定されるものではなく、機械学習が適用可能なあらゆるモデルであってよい。
高精度モデルは、軽量モデルと比べて処理速度が遅く推定精度が高いものとする。なお、高精度モデルは、単に軽量モデルより処理速度が遅いことが既知のものであってもよい。この場合、高精度モデルの方が軽量モデルよりも推定精度が高いことが期待される。また、高精度モデルは、単に軽量モデルより推定精度が高いことが既知のものであってもよい。この場合、軽量モデルの方が高精度モデルよりも処理速度が速いことが期待される。
高精度モデル及び軽量モデルは、モデルカスケードを構成する。図1は、モデルカスケードについて説明する図である。説明のため、図1には2つの画像を表示しているが、いずれも同じ画像である。図1に示すように、軽量モデルは、入力された画像に写る物体について各クラスの確率を出力する。例えば、軽量モデルは、画像に写る物体がcatである確率を約0.5と出力する。また、軽量モデルは、画像に写る物体がdogである確率を約0.35と出力する。
ここで、軽量モデルの出力、すなわち推定結果が条件を満たす場合、当該推定結果が採用される。つまり、軽量モデルの推定結果が、モデルカスケードの最終的な推定結果として出力される。一方で、軽量モデルの推定結果が条件を満たさない場合、同一の画像を高精度モデルに入力して得られた推定結果が、モデルカスケードの最終的な推定結果として出力される。ただし、高精度モデルは、軽量モデルと同様に、入力された画像に写る物体について各クラスの確率を出力する。例えば、条件は、軽量モデルが出力した確率の最大値が閾値を超えていることである。
例えば、高精度モデルはResNet18であって、サーバ等で動作する。また、例えば、軽量モデルはMobileNetV2であって、IoT機器及び各種端末装置で動作する。なお、高精度モデル及び軽量モデルは、同一のコンピュータで動作するものであってもよい。
[第1の実施形態の構成]
図2は、第1の実施形態に係る学習装置の構成例を示す図である。図2に示すように、学習装置10は、学習用データの入力を受け付け、学習済み高精度モデル情報及び学習済み軽量モデル情報を出力する。また、学習装置10は、高精度モデル学習部11及び軽量モデル学習部12を有する。
高精度モデル学習部11は、推定部111、損失計算部112、更新部113を有する。また、高精度モデル学習部11は、高精度モデル情報114を記憶する。高精度モデル情報114は、高精度モデルを構築するためのパラメータ等の情報である。学習用データは、ラベルが既知のデータであるものとする。例えば、学習用データは、画像とラベル(正解のクラス)の組み合わせである。
推定部111は、高精度モデル情報114を基に構築された高精度モデルに学習用データを入力し、推定結果を取得する。推定部111は、学習用データの入力を受け付け、推定結果を出力する。
損失計算部112は、推定部111によって取得された推定結果を基に損失を計算する。損失計算部112は、推定結果及びラベルの入力を受け付け、損失を出力する。例えば、損失計算部112は、推定部111によって取得された推定結果において、ラベルに対する確信度が小さいほど大きくなるように損失を計算する。例えば、確信度は、推定結果が正解であることの確からしさの度合いである。例えば、確信度は、前述の多クラス分類モデルが出力した確率であってもよい。具体的には、損失計算部112は、後述するソフトマックスクロスエントロピーを損失として計算することができる。
更新部113は、損失が最適化されるように、高精度モデルのパラメータを更新する。例えば、高精度モデルがニューラルネットワークであれば、更新部113は、誤差逆伝播法等により高精度モデルのパラメータを更新する。具体的には、更新部113は、高精度モデル情報114を更新する。更新部113は、損失計算部112によって計算された損失の入力を受け付け、更新済みのモデルの情報を出力する。
軽量モデル学習部12は、推定部121、損失計算部122、更新部123を有する。また、軽量モデル学習部12は、軽量モデル情報124を記憶する。軽量モデル情報124は、軽量モデルを構築するためのパラメータ等の情報である。
推定部121は、軽量モデル情報124を基に構築された軽量モデルに学習用データを入力し、推定結果を取得する。推定部121は、学習用データの入力を受け付け、推定結果を出力する。
ここで、高精度モデル学習部11は、高精度モデルの出力を基に、高精度モデルの学習を行うものであった。一方で、軽量モデル学習部12は、高精度モデル及び軽量モデルの両方の出力を基に、軽量モデルの学習を行う。
損失計算部122は、推定部によって取得された推定結果を基に損失を計算する。損失計算部122は、高精度モデルによる推定結果、軽量モデルによる推定結果及びラベルの入力を受け付け、損失を出力する。高精度モデルによる推定結果は、高精度モデル学習部11による学習が行われた後の高精度モデルに、さらに学習用データを入力して得られた推定結果であってよい。さらに具体的には、軽量モデル学習部12は、高精度モデルによる推定結果が正解であったか否かの入力を受け付ける。例えば、高精度モデルが出力した確率が最大であったクラスがラベルと一致していれば、その推定結果は正解である。
損失計算部122は、軽量モデル単体での推定精度の最大化に加え、モデルカスケードを構成した場合の利益の最大化を目的として損失を計算する。ここで、利益は、推定精度が高いほど大きくなり、計算コストが小さいほど大きくなるものとする。
例えば、高精度モデルには、推定精度は高いが計算コストが大きいという特徴がある。また、また、例えば、軽量モデルには、推定精度は低いが計算コストが小さいという特徴がある。そこで、損失計算部122は、(1)式のように損失Lossを計算する。ただし、wは重みであり、事前に設定されるパラメータである。
Figure 0007447985000001
ここで、Lclassifierは、多クラス分類モデルにおけるソフトマックスエントロピーである。また、Lclassifierは、軽量モデルによる推定結果における正解に対する確信度が小さいほど大きくなる第1の項の一例である。Lclassifierは、(2)式のように表される。ただし、Nはサンプル数である。また、kはクラス数である。また、yは正解のクラスを表すラベルである。また、qは軽量モデルによって出力された確率である。iはサンプルを識別する番号である。また、jはクラスを識別する番号である。ラベルyi,jは、i番目のサンプルにおいて、j番目のクラスが正解であれば1になり、不正解であれば0になる。
Figure 0007447985000002
また、Lcascadeは、モデルカスケードを構成した場合の利益の最大化のための項である。Lcascadeは、各サンプルについて、軽量モデルの確信度に基づいて高精度モデル及び軽量モデルの推定結果を採用した場合の損失を表している。ここで、損失は、不適切な確信度へのペナルティと高精度モデルを用いるコストを含む。また、損失は高精度モデルの推定結果が正解か否かと、軽量モデルの推定結果が正解か否かとの組み合わせで4パターンに分けられる。詳細は後述するが、高精度モデルの推定が不正解、かつ軽量モデルの確信度が低い場合は、ペナルティは大きくなる。一方、軽量モデルの推定が正解、かつ軽量モデルの確信度が高い場合は、ペナルティは小さくなる。Lcascadeは、(3)式のように表される。
Figure 0007447985000003
1fastは、軽量モデルの推定結果が正解であれば0、軽量モデルの推定結果が不正解であれば1を返す指示関数である。また、1accは、高精度モデルの推定結果が正解であれば0、高精度モデルの推定結果が不正解であれば1を返す指示関数である。COSTaccは、高精度モデルによる推定を行うことにかかるコストであり、事前に設定されるパラメータである。
maxjqi,jは、軽量モデルが出力する確率の最大値であり、確信度の一例である。推定結果が正解であれば、確信度が大きいほど推定精度は高いといえる。一方、推定結果が不正解であれば、確信度が大きいほど推定精度は低いといえる。
(3)式のmaxjqi,j1fastは、軽量モデルによる推定結果が不正解である場合に軽量モデルによる推定結果の確信度が大きいほど大きくなる第2の項の一例である。また、(3)式の(1-maxjqi,j)1accは、高精度モデルによる推定結果が不正解である場合に軽量モデルによる推定結果の確信度が小さいほど大きくなる第3の項の一例である。また、(3)式の(1-maxjqi,j)COSTaccは、軽量モデルによる推定結果の確信度が小さいほど大きくなる第4の項の一例である。この場合、更新部123による損失の最小化が、損失の最適化に相当する。
更新部123は、損失が最適化されるように、軽量モデルのパラメータを更新する。つまり、更新部123は、軽量モデルによる推定結果と、入力されたデータを基に推定結果を出力するモデルであって、軽量モデルよりも処理速度が遅く推定精度が高い高精度モデルに学習用データを入力して得られた推定結果と、を基に、軽量モデルと高精度モデルを含むモデルカスケードが最適化されるように、軽量モデルのパラメータを更新する。更新部123は、損失計算部122によって計算された損失の入力を受け付け、更新済みのモデルの情報を出力する。
図3は、ケースごとの損失の一例を示す図である。縦軸はLcascadeの値である。また、横軸は、maxjqi,jの値である。また、COSTacc=0.5とする。maxjqi,jは、軽量モデルによる推定結果の確信度であり、ここでは単に確信度と呼ぶ。
図3の「□」は、軽量モデル及び高精度モデルの両方の推定結果が正解である場合の、確信度に対するLcascadeの値である。この場合、確信度が大きいほどLcascadeの値は小さくなる。これは、軽量モデルによる推定結果が正解であれば、確信度が大きいほど軽量モデルが採用されやすくなるためである。
図3の「◇」は、軽量モデルの推定結果が正解であり、高精度モデルの推定結果が不正解である場合の、確信度に対するLcascadeの値である。この場合、確信度が大きいほどLcascadeの値は小さくなる。また、「□」の場合と比べて、Lcascadeの最大値及び小さくなる度合いが大きい。これは、高精度モデルによる推定結果が不正解であって、軽量モデルによる推定結果が正解であれば、確信度が大きいほど軽量モデルが採用されやすくなる傾向がさらに大きくなるためである。
図3の「■」は、軽量モデルの推定結果が不正解であり、高精度モデルの推定結果が正解である場合の、確信度に対するLcascadeの値である。この場合、確信度が大きいほどLcascadeの値は大きくなる。これは、軽量モデルの推定結果が不正解である場合も、確信度が小さいほど推定結果が採用されにくくなるためである。
図3の「◆」は、軽量モデル及び高精度モデルの両方の推定結果が不正解である場合の、確信度に対するLcascadeの値である。この場合、確信度が大きいほどLcascadeの値は小さくなる。ただし、「□」の場合と比べて、Lcascadeの値は大きい。これは、両方のモデルの推定結果が不正解であることから常に損失が大きく、そのような状況では軽量モデルで正確な推定ができるようにすべきであるためである。
[第1の実施形態の処理]
図4は、高精度モデルの学習処理の流れを示すフローチャートである。図4に示すように、まず、推定部111は、高精度モデルを用いて学習用データのクラスを推定する(ステップS101)。
次に、損失計算部112は、高精度モデルの推定結果を基に損失を計算する(ステップS102)。そして、更新部113は、損失が最適化されるように高精度モデルのパラメータを更新する(ステップS103)。なお、学習装置10は、終了条件が満たされるまで、ステップS101からステップS103までの処理を繰り返してもよい。終了条件は、既定の回数だけ処理が繰り返されたことであってもよいし、パラメータの更新幅が収束したことであってもよい。
図5は、軽量モデルの学習処理の流れを示すフローチャートである。図5に示すように、まず、推定部121は、軽量モデルを用いて学習用データのクラスを推定する(ステップS201)。
次に、損失計算部122は、軽量モデルの推定結果、及び高精度モデルの推定結果及び高精度モデルによる推定のコストを基に損失を計算する(ステップS202)。そして、更新部123は、損失が最適化されるように軽量モデルのパラメータを更新する(ステップS203)。なお、学習装置10は、終了条件が満たされるまで、ステップS201からステップS203までの処理を繰り返してもよい。
[第1の実施形態の効果]
これまで説明してきたように、推定部121は、入力されたデータを基に推定結果を出力する軽量モデルに学習用データを入力し、第1の推定結果を取得する。また、更新部123は、第1の推定結果と、入力されたデータを基に推定結果を出力するモデルであって、軽量モデルよりも処理速度が遅く推定精度が高い高精度モデルに学習用データを入力して得られた第2の推定結果と、を基に、軽量モデルと高精度モデルを含むモデルカスケードが最適化されるように、軽量モデルのパラメータを更新する。このように、第1の実施形態では、軽量モデルと高精度モデルによって構成されるモデルカスケードにおいて、IDK分類器等のモデルを設けることなく、軽量モデルがモデルカスケードに適した推定を行えるようにすることで、モデルカスケードの性能を向上させることができる。その結果、第1の実施形態によれば、モデルカスケードの精度が向上するだけでなく、計算コスト及び計算リソースのオーバーヘッドを抑止することができる。さらに、第1の実施形態では、損失関数に変更を加えるものであるため、モデルアーキテクチャの変更が不要であり、適用するモデルや最適化手法に制限がない。
更新部123は、第1の推定結果における正解に対する確信度が小さいほど大きくなる第1の項と、第1の推定結果が不正解である場合に第1の推定結果の確信度が大きいほど大きくなる第2の項と、第2の推定結果が不正解である場合に第1の推定結果の確信度が小さいほど大きくなる第3の項と、第1の推定結果の確信度が小さいほど大きくなる第4の項と、を含む損失関数を基に計算される損失が最小化されるように、軽量モデルのパラメータを更新する。この結果、第1の実施形態では、軽量モデルと高精度モデルによって構成されるモデルカスケードにおいて、高精度モデルの推定結果を採用する場合のコストを考慮した上で、モデルカスケードの推定精度を向上させることができる。
[第2の実施形態]
[第2の実施形態の構成]
第2の実施形態では、学習済みの高精度モデル及び軽量モデルを使って推定を行う推定システムについて説明する。第2の実施形態の推定システムによれば、IDK分類器等を設けることなく、モデルカスケードによる推定を精度良く行うことができる。また、以降の実施形態の説明においては、説明済みの実施形態と同様の機能を有する部には同じ符号を付し、適宜説明を省略する。
図6に示すように、推定システム2は、高精度推定装置20及び軽量推定装置30を有する。また、高精度推定装置20及び軽量推定装置30は、ネットワークNを介して接続される。ネットワークNは、例えばインターネットである。その場合、高精度推定装置20は、クラウド環境に設けられたサーバであってもよい。また、軽量推定装置30は、IoT機器及び各種端末装置であってもよい。
図6に示すように、高精度推定装置20は、高精度モデル情報201を記憶する。高精度モデル情報201は、学習済みの高精度モデルのパラメータ等の情報である。また、高精度推定装置20は、推定部202を有する。
推定部202は、高精度モデル情報201を基に構築された高精度モデルに推定用データを入力し、推定結果を取得する。推定部202は、推定用データの入力を受け付け、推定結果を出力する。推定用データは、ラベルが未知のデータであるものとする。例えば、推定用データは、画像である。
ここで、高精度推定装置20及び軽量推定装置30は、モデルカスケードを構成する。このため、推定部202は、常に推定用データについての推定を行うわけではない。推定部202は、軽量モデルの推定結果を採用しないという判断がされた場合に、高精度モデルによる推定を行う。
軽量推定装置30は、軽量モデル情報301を記憶する。軽量モデル情報301は、学習済みの軽量モデルのパラメータ等の情報である。また、軽量推定装置30は、推定部302及び判定部303を有する。
推定部302は、入力されたデータを基に推定結果を出力する軽量モデルに学習用データを入力して得られた推定結果と、入力されたデータを基に推定結果を出力するモデルであって、軽量モデルよりも推定精度が高い高精度モデルに学習用データを入力して得られた推定結果と、を基に、軽量モデルと高精度モデルを含むモデルカスケードが最適化されるように予め学習されたパラメータが設定された軽量モデルに、推定用のデータを入力して推定結果を取得する。推定部302は、推定用データの入力を受け付け、推定結果を出力する。
また、判定部303は、軽量モデルによる推定結果が、推定精度に関する所定の条件を満たすか否かを判定する。例えば、判定部303は、確信度が閾値以上である場合に、軽量モデルによる推定結果が条件を満たすと判定する。その場合、推定システム2は、軽量モデルの推定結果を採用する。
また、高精度推定装置20の推定部202は、判定部303によって、軽量モデルによる推定結果が条件を満たさないと判定された場合、高精度モデルに、推定用のデータを入力して推定結果を取得する。その場合、推定システム2は、高精度モデルの推定結果を採用する。
[第2の実施形態の処理]
図7は、図7は、推定処理の流れを示すフローチャートである。図7に示すように、まず、推定部302は、軽量モデルを用いて推定用データのクラスを推定する(ステップS301)。
ここで、判定部303は、推定結果が条件を満たすか否かを判定する(ステップS302)。推定結果が条件を満たす場合(ステップS302、Yes)、推定システム2は軽量モデルの推定結果を出力する(ステップS303)。
一方、推定結果が条件を満たさない場合(ステップS302、No)、推定部202は、高精度モデルを用いて推定用データのクラスを推定する(ステップS304)。そして、推定システム2は高精度モデルの推定結果を出力する(ステップS305)。
[第2の実施形態の効果]
これまで説明してきたように、推定部302は、入力されたデータを基に推定結果を出力する軽量モデルに学習用データを入力して得られた推定結果と、入力されたデータを基に推定結果を出力するモデルであって、軽量モデルよりも推定精度が高い高精度モデルに学習用データを入力して得られた推定結果と、を基に、軽量モデルと高精度モデルを含むモデルカスケードが最適化されるように予め学習されたパラメータが設定された軽量モデルに、推定用のデータを入力して推定結果を取得する。また、判定部303は、軽量モデルによる推定結果が、推定精度に関する所定の条件を満たすか否かを判定する。この結果、第2の実施形態では、軽量モデルと高精度モデルによって構成されるモデルカスケードにおいて、オーバーヘッドの発生を抑止しつつ高精度な推定を行うことができる。
推定部202は、判定部303によって、軽量モデルによる推定結果が条件を満たさないと判定された場合、高精度モデルに、推定用のデータを入力して推定結果を取得する。これにより、第2の実施形態によれば、軽量モデルによる推定結果が採用できない場合であっても、高精度の推定結果を得ることができる。
ここで、第2の実施形態に係る推定システム2は、以下のように表現することができる。すなわち、推定システム2は、高精度推定装置20及び軽量推定装置30を有する。軽量推定装置30は、入力されたデータを基に推定結果を出力する軽量モデルに学習用データを入力して得られた推定結果と、入力されたデータを基に推定結果を出力するモデルであって、軽量モデルよりも処理速度が遅い、又は軽量のモデルよりも推定精度が高い高精度モデルに学習用データを入力して得られた推定結果と、を基に、軽量モデルと高精度モデルを含むモデルカスケードが最適化されるように予め学習されたパラメータが設定された軽量モデルに、推定用のデータを入力して第1の推定結果を取得する推定部302と、第1の推定結果が、推定精度に関する所定の条件を満たすか否かを判定する判定部303と、を有する。高精度推定装置20は、判定部303によって、第1の推定結果が条件を満たさないと判定された場合、高精度モデルに、推定用のデータを入力して第2の推定結果を取得する推定部202を有する。また、高精度推定装置20は、推定用データを軽量推定装置30から取得してもよい。
推定部202は、軽量推定装置30による推定の結果に応じて推定を行う。すなわち、推定部202は、入力されたデータを基に推定結果を出力する軽量モデルに学習用データを入力して得られた推定結果と、入力されたデータを基に推定結果を出力するモデルであって、軽量モデルよりも処理速度が遅い、又は軽量モデルよりも推定精度が高い高精度モデルに学習用データを入力して得られた推定結果と、を基に、軽量モデルと高精度モデルを含むモデルカスケードが最適化されるように予め学習されたパラメータが設定された軽量モデルに、軽量推定装置30が推定用のデータを入力して取得する第1の推定結果に応じて、推定用のデータを高精度モデルに入力して第2の推定結果を取得する。
[実験]
ここで、実施形態の効果を確認するために行った実験とその結果について説明する。図8から図9は、実験結果を示す図である。実験では、第2の実施形態における判定部303が、確信度が閾値を超えているか否かを判定するものとする。実験における各設定は下記の通りである。
データセット:CIFAR100
train:45000, validation:5000, test:10000
軽量モデル:MobileNetV2
高精度モデル:ResNet18
モデルの学習方法
Momentum SGD
lr=0.01, momentum=0.9, weight decay=5e-4
lrは60,120,160エポックで0.2倍
batch size:128
比較手法(各5回ずつ実験)
・Base:クラス確率の最大値を利用
・IDK Cascades(非特許文献1を参照)
・ConfNet(参考文献1を参照)
・Temperature Scaling(参考文献2を参照)
・第2の実施形態
精度:モデルカスケード構成で推論を行った際の精度
オフロード数:高精度モデルで推論を行った回数
(参考文献1)Wan, Sheng, et al. "Confnet: Predict with Confidence." 2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). IEEE, 2018.
(参考文献2)Guo, Chuan, et al. "On calibration of modern neural networks." Proceedings of the 34th International Conference on Machine Learning-Volume 70. JMLR. org, 2017.
上記のtestデータを用いて、第2の実施形態を含む各手法で実際に推定を行い、閾値を0から1まで0.01刻みで変化させた際のオフロード数と精度の関係を図8に示す。図8に示すように、実施形態の手法(proposed)は、他の手法と比べ、オフロード数が減った場合であっても高い精度を示した。
また、上記のvalidationデータで最も精度が高くなる閾値を採用して、testデータの推定を行った際のオフロード数と精度の関係を図9及び図10に示す。これより、第2の実施形態によれば、高精度モデルの精度を維持しつつ最もオフロード数が削減されていることがわかる。
さらに、testデータで高精度モデルの精度を維持しつつ最もオフロードが少なかった際のオフロード数と精度の関係を図11及び図12に示す。これより、第2の実施形態によれば最もオフロード数が削減されていることがわかる。
[第3の実施形態]
第2の実施形態では、軽量モデルによる推定を行う装置と、高精度モデルによる推定を行う装置が別々である場合の例について説明した。一方で、軽量モデルによる推定と高精度モデルによる推定は同じ装置で行われてもよい。
図13は、第3の実施形態に係る推定装置の構成例を示す図である。推定装置2aは、第2の実施形態の推定システム2と同様の機能を有する。また、高精度推定部20aは、第2の実施形態の高精度推定装置20と同様の機能を有する。また、軽量推定部30aは、第2の実施形態の軽量推定装置30と同様の機能を有する。第2の実施形態と異なり、推定部202と判定部303は同じ装置内にあるため、推定処理において、ネットワークを介したデータのやり取りは発生しない。
[第4の実施形態]
これまで、モデルが軽量モデル及び高精度モデルの2つである場合の実施形態について説明した。一方で、これまでに説明した実施形態は、モデルが3つ以上の場合に拡張することができる。
図14は、3つ以上のモデルを含むモデルカスケードについて説明する図である。ここでは、M個(M>3)のモデルがあるものとする。m+1番目(M-1≧m≧1)のモデルは、m番目のモデルよりも処理速度が遅い、又はm番目のモデルよりも推定精度が高いものとする。つまり、m+1番目のモデルとm番目のモデルとの関係は、高精度モデルと軽量モデルとの関係と同様である。さらに、M番目のモデルは最も高精度なモデルであり、1番目のモデルは最も軽量なモデルということができる。
第4の実施形態では、第2の実施形態で説明した推定システム2を使って、3つ以上のモデルによる推定処理を実現することができる。まず、推定システム2は、高精度モデル情報201を2番目のモデルの情報に置き換え、軽量モデル情報301を1番目のモデルの情報に置き換える。そして、推定システム2は、第2の実施形態と同様の推定処理を実行する。
その後、1番目のモデルの推定結果が条件と満たさず、かつ、2番目のモデルの推定結果が条件を満たさない場合、推定システム2は、高精度モデル情報201を3番目のモデルの情報に置き換え、軽量モデル情報301を2番目のモデルの情報に置き換えて推定処理をさらに実行する。推定システム2は、条件を満たす推定結果が得られるか、又はM番目のモデルによる推定処理が終わるまでこの処理を繰り返す。なお、同様の処理は、軽量モデル情報301を置き換えていくことにより、軽量推定装置30のみでも実現可能である。
さらに、第4の実施形態では、第1の実施形態で説明した学習装置10を使って、3つ以上のモデルの学習処理を実現することができる。学習装置10は、M個のモデルから番号が連続する2つのモデルを抽出し、それらのモデルの情報を用いて学習処理を実行する。まず、学習装置10は、高精度モデル情報114をM番目のモデルの情報に置き換え、軽量モデル情報124をM-1番目のモデルの情報に置き換える。そして、学習装置10は、第1の実施形態と同様の学習処理を実行する。一般化すると、学習装置10は、高精度モデル情報114をm番目のモデルの情報に置き換え、軽量モデル情報124をm-1番目のモデルの情報に置き換えた上で、第1の実施形態と同様の学習処理を実行する。
図15は、3つ以上のモデルの学習処理の流れを示すフローチャートである。ここでは、第1の実施形態の学習装置10が学習処理を行うものとする。図15に示すように、まず、学習装置10は、mの初期値としてMを設定する(ステップS401)。推定部121は、m-1番目のモデルを用いて学習用データのクラスを推定する(ステップS402)。
次に、損失計算部122は、m-1番目のモデルの推定結果、及びm番目のモデルの推定結果及びm番目のモデルによる推定のコストを基に損失を計算する(ステップS403)。そして、更新部123は、損失が最適化されるようにm-1番目のモデルのパラメータを更新する(ステップS404)。
ここで、学習装置10は、mを1だけ減少させる(ステップS405)。mが1に達した場合(ステップS406、Yes)、学習装置10は処理を終了する。一方、mが1に達していない場合(ステップS406、No)、学習装置10はステップS402に戻り処理を繰り返す。
図16は、3つ以上のモデルによる推定処理の流れを示すフローチャートである。ここでは、第2の実施形態の軽量推定装置30が推定処理を行うものとする。図16に示すように、まず、軽量推定装置30は、mの初期値として1を設定する(ステップS501)。推定部302は、m番目のモデルを用いて推定用データのクラスを推定する(ステップS502)。
ここで、判定部303は、推定結果が条件を満たすか否か、及びmがMに達しているか否かを判定する(ステップS503)。推定結果が条件を満たすか、又はmがMに達している場合(ステップS503、Yes)、軽量推定装置30はm番目のモデルの推定結果を出力する(ステップS504)。
一方、推定結果が条件を満たさず、かつmがMに達していない場合(ステップS503、No)、推定部302は、軽量推定装置30は、mを1だけ増加させ(ステップS505)、ステップS502に戻り処理を繰り返す。
例えば、従来の技術では、モデルが増加するのに従いIDK分類器の数も増加し、計算コスト及び計算リソースのオーバーヘッドが拡大する。一方で、第4の実施形態によれば、モデルカスケードを構成するモデルの数が3つ以上に増加したとしても、そのようなオーバーヘッドが拡大する問題は生じない。
[システム構成等]
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散及び統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散又は統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
一実施形態として、学習装置10及び軽量推定装置30は、パッケージソフトウェアやオンラインソフトウェアとして上記の学習処理又は推定処理を実行するプログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記のプログラムを情報処理装置に実行させることにより、情報処理装置を学習装置10又は軽量推定装置30として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。
また、学習装置10及び軽量推定装置30は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の学習処理又は推定処理に関するサービスを提供するサーバ装置として実装することもできる。例えば、サーバ装置は、学習用のデータを入力とし、学習済みのモデルの情報を出力とするサービスを提供するサーバ装置として実装される。この場合、サーバ装置は、Webサーバとして実装することとしてもよいし、アウトソーシングによって上記の処理に関するサービスを提供するクラウドとして実装することとしてもかまわない。
図17は、学習プログラムを実行するコンピュータの一例を示す図である。なお、推定プログラムについても同様のコンピュータによって実行されてもよい。コンピュータ1000は、例えば、メモリ1010、プロセッサ1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(BASIC Input Output System)等のブートプログラムを記憶する。プロセッサ1020は、CPU1021及びGPU(Graphics Processing Unit)1022を含む。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、学習装置10の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、学習装置10における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSDにより代替されてもよい。
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020は、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した実施形態の処理を実行する。
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
2 推定システム
2a 推定装置
10 学習装置
11 高精度モデル学習部
12 軽量モデル学習部
20 高精度推定装置
20a 高精度推定部
30 軽量推定装置
30a 軽量推定部
111、121、202、302 推定部
112、122 損失計算部
113、123 更新部
114、201 高精度モデル情報
124、301 軽量モデル情報
303 判定部

Claims (7)

  1. 入力されたデータを基に推定結果を出力する第1のモデルに学習用データを入力し、第1の推定結果を取得する推定部と、
    前記第1の推定結果と、前記第1の推定結果における正解に対する確信度が小さいほど大きくなる第1の項と、前記第1の推定結果が不正解である場合に前記第1の推定結果の確信度が大きいほど大きくなる第2の項と、入力されたデータを基に推定結果を出力するモデルであって、前記第1のモデルよりも処理速度が遅い、又は前記第1のモデルよりも推定精度が高い第2のモデルに前記学習用データを入力して得られた第2の推定結果が不正解である場合に前記第1の推定結果の確信度が小さいほど大きくなる第3の項と、前記第1の推定結果の確信度が小さいほど大きくなる第4の項と、を含む損失関数を基に計算される損失が最適化されるように、前記第1のモデルのパラメータを更新する更新部と、
    を有することを特徴とする学習装置。
  2. 学習装置によって実行される学習方法であって、
    入力されたデータを基に推定結果を出力する第1のモデルに学習用データを入力し、第1の推定結果を取得する推定工程と、
    前記第1の推定結果と、前記第1の推定結果における正解に対する確信度が小さいほど大きくなる第1の項と、前記第1の推定結果が不正解である場合に前記第1の推定結果の確信度が大きいほど大きくなる第2の項と、入力されたデータを基に推定結果を出力するモデルであって、前記第1のモデルよりも処理速度が遅い、又は前記第1のモデルよりも推定精度が高い第2のモデルに前記学習用データを入力して得られた第2の推定結果が不正解である場合に前記第1の推定結果の確信度が小さいほど大きくなる第3の項と、前記第1の推定結果の確信度が小さいほど大きくなる第4の項と、を含む損失関数を基に計算される損失が最適化されるように、前記第1のモデルのパラメータを更新する更新工程と、
    を含むことを特徴とする学習方法。
  3. コンピュータを、請求項1に記載の学習装置として機能させるための学習プログラム。
  4. 入力されたデータを基に推定結果を出力する第1のモデルに学習用データを入力して得られた第1の推定結果と、前記第1の推定結果における正解に対する確信度が小さいほど大きくなる第1の項と、前記第1の推定結果が不正解である場合に前記第1の推定結果の確信度が大きいほど大きくなる第2の項と、入力されたデータを基に推定結果を出力するモデルであって、前記第1のモデルよりも処理速度が遅い、又は前記第1のモデルよりも推定精度が高い第2のモデルに前記学習用データを入力して得られた第2の推定結果が不正解である場合に前記第1の推定結果の確信度が小さいほど大きくなる第3の項と、前記第1の推定結果の確信度が小さいほど大きくなる第4の項と、を含む損失関数を基に計算される損失が最適化されるように予め学習されたパラメータが設定された前記第1のモデルに、推定用のデータを入力して第1の推定結果を取得する第1の推定部と、
    前記第1の推定結果が、推定精度に関する所定の条件を満たすか否かを判定する判定部と、
    を有することを特徴とする推定装置。
  5. 入力されたデータを基に推定結果を出力する第1のモデルに学習用データを入力して得られた第1の推定結果と、前記第1の推定結果における正解に対する確信度が小さいほど大きくなる第1の項と、前記第1の推定結果が不正解である場合に前記第1の推定結果の確信度が大きいほど大きくなる第2の項と、入力されたデータを基に推定結果を出力するモデルであって、前記第1のモデルよりも処理速度が遅い、又は前記第1のモデルよりも推定精度が高い第2のモデルに前記学習用データを入力して得られた第2の推定結果が不正解である場合に前記第1の推定結果の確信度が小さいほど大きくなる第3の項と、前記第1の推定結果の確信度が小さいほど大きくなる第4の項と、を含む損失関数を基に計算される損失が最適化されるように予め学習されたパラメータが設定された前記第1のモデルに、他の推定装置が推定用のデータを入力して取得する第1の推定結果に応じて、前記推定用のデータを前記第2のモデルに入力して第2の推定結果を取得する第2の推定部を有することを特徴とする推定装置。
  6. 推定装置によって実行される推定方法であって、
    入力されたデータを基に推定結果を出力する第1のモデルに学習用データを入力して得られた第1の推定結果と、前記第1の推定結果における正解に対する確信度が小さいほど大きくなる第1の項と、前記第1の推定結果が不正解である場合に前記第1の推定結果の確信度が大きいほど大きくなる第2の項と、入力されたデータを基に推定結果を出力するモデルであって、前記第1のモデルよりも処理速度が遅い、又は前記第1のモデルよりも推定精度が高い第2のモデルに前記学習用データを入力して得られた第2の推定結果が不正解である場合に前記第1の推定結果の確信度が小さいほど大きくなる第3の項と、前記第1の推定結果の確信度が小さいほど大きくなる第4の項と、を含む損失関数を基に計算される損失が最適化されるように予め学習されたパラメータが設定された前記第1のモデルに、推定用のデータを入力して第1の推定結果を取得する第1の推定工程と、
    前記第1の推定結果が、推定精度に関する所定の条件を満たすか否かを判定する判定工程と、
    を含むことを特徴とする推定方法。
  7. コンピュータを、請求項又はに記載の推定装置として機能させるための推定プログラム。
JP2022504953A 2020-03-06 2020-03-06 学習装置、学習方法、学習プログラム、推定装置、推定方法及び推定プログラム Active JP7447985B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2024029580A JP2024051136A (ja) 2020-03-06 2024-02-29 学習装置、学習方法、学習プログラム、推定装置、推定方法及び推定プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/009878 WO2021176734A1 (ja) 2020-03-06 2020-03-06 学習装置、学習方法、学習プログラム、推定装置、推定方法及び推定プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2024029580A Division JP2024051136A (ja) 2020-03-06 2024-02-29 学習装置、学習方法、学習プログラム、推定装置、推定方法及び推定プログラム

Publications (2)

Publication Number Publication Date
JPWO2021176734A1 JPWO2021176734A1 (ja) 2021-09-10
JP7447985B2 true JP7447985B2 (ja) 2024-03-12

Family

ID=77614024

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2022504953A Active JP7447985B2 (ja) 2020-03-06 2020-03-06 学習装置、学習方法、学習プログラム、推定装置、推定方法及び推定プログラム
JP2024029580A Pending JP2024051136A (ja) 2020-03-06 2024-02-29 学習装置、学習方法、学習プログラム、推定装置、推定方法及び推定プログラム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2024029580A Pending JP2024051136A (ja) 2020-03-06 2024-02-29 学習装置、学習方法、学習プログラム、推定装置、推定方法及び推定プログラム

Country Status (3)

Country Link
US (1) US20230112076A1 (ja)
JP (2) JP7447985B2 (ja)
WO (1) WO2021176734A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220156524A1 (en) * 2020-11-16 2022-05-19 Google Llc Efficient Neural Networks via Ensembles and Cascades

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018170175A1 (en) 2017-03-15 2018-09-20 Salesforce.Com, Inc. Probability-based guider

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018170175A1 (en) 2017-03-15 2018-09-20 Salesforce.Com, Inc. Probability-based guider

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HANYA, Toshinori,Deep Learningにおける知識の蒸留,CODE CRAFT HOUSE[online],2018年01月12日,[retrieved on 2020.07.17], Retrieved from the Internet: <URL: http://codecrafthouse.jp/p/2018/01/knowledge-distillation/>

Also Published As

Publication number Publication date
US20230112076A1 (en) 2023-04-13
JPWO2021176734A1 (ja) 2021-09-10
JP2024051136A (ja) 2024-04-10
WO2021176734A1 (ja) 2021-09-10

Similar Documents

Publication Publication Date Title
US11675940B2 (en) Generating integrated circuit floorplans using neural networks
US11941527B2 (en) Population based training of neural networks
JP7293504B2 (ja) 強化学習を用いたデータ評価
CN111406264A (zh) 神经架构搜索
JP2024051136A (ja) 学習装置、学習方法、学習プログラム、推定装置、推定方法及び推定プログラム
JP7430820B2 (ja) ソートモデルのトレーニング方法及び装置、電子機器、コンピュータ可読記憶媒体、コンピュータプログラム
US10599976B2 (en) Update of attenuation coefficient for a model corresponding to time-series input data
US20180150143A1 (en) Data input system with online learning
WO2022068934A1 (en) Method of neural architecture search using continuous action reinforcement learning
JP2020525872A (ja) インフルエンザ予測モデルの生成方法、装置及びコンピュータ可読記憶媒体
US11914672B2 (en) Method of neural architecture search using continuous action reinforcement learning
WO2023245869A1 (zh) 语音识别模型的训练方法、装置、电子设备及存储介质
CN116187416A (zh) 一种基于层剪枝灵敏度的迭代式重训练方法及一种图像处理器
CN116340574A (zh) 用于管理知识图谱的方法、设备和程序产品
JP6928346B2 (ja) 予測装置、予測方法および予測プログラム
JP6612796B2 (ja) 音響モデル学習装置、音声認識装置、音響モデル学習方法、音声認識方法、音響モデル学習プログラム及び音声認識プログラム
US20230068381A1 (en) Method and electronic device for quantizing dnn model
US20220391765A1 (en) Systems and Methods for Semi-Supervised Active Learning
CN113836438B (zh) 用于帖子推荐的方法、电子设备和存储介质
US20230106295A1 (en) System and method for deriving a performance metric of an artificial intelligence (ai) model
US20230214629A1 (en) Transformer-based autoregressive language model selection
WO2023181223A1 (ja) 音声認識方法、音声認識装置及び音声認識プログラム
CN116403001A (zh) 目标检测模型训练及目标检测方法、装置、设备和介质
AU2022376150A1 (en) Bnn training with mini-batch particle flow
CN117876860A (zh) 分类模型的训练和数据分类方法、装置、设备及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220608

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

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240212

R150 Certificate of patent or registration of utility model

Ref document number: 7447985

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150