TOP特許意匠商標
特許ウォッチ Twitter
10個以上の画像は省略されています。
公開番号2024120338
公報種別公開特許公報(A)
公開日2024-09-05
出願番号2023027070
出願日2023-02-24
発明の名称機械学習装置、方法及びプログラム
出願人株式会社デンソーテン
代理人弁理士法人 佐野特許事務所
主分類G06N 3/084 20230101AFI20240829BHJP(計算;計数)
要約【課題】勾配クリッピングにおける閾値を適正化する。
【解決手段】入力データから出力データを生成するモデルのパラメータを教師あり機械学習により調整する機械学習装置であって、訓練データ(TD[i])を順次取得し、訓練データごとに訓練データに基づきモデルにおける損失関数(L[i])の勾配(g[i])の導出を通じてパラメータを更新する。訓練データごとに勾配のノルムである勾配ノルム(||g[i]||)を導出して勾配ノルムを閾値(u)と比較する。勾配ノルムが閾値を超えるとき、閾値を用いて勾配を修正する勾配クリッピングを実行してから修正後の勾配を用いてパラメータを更新する。訓練データごとに勾配ノルムをメモリに格納してゆくことでメモリに勾配ノルム群を保持させ、勾配ノルム群に基づいて閾値を設定する。
【選択図】図4
特許請求の範囲【請求項1】
入力データから出力データを生成するモデルのパラメータを教師あり機械学習により調整する機械学習装置であって、
訓練データを順次取得し、前記訓練データごとに前記訓練データに基づき前記モデルにおける損失関数の勾配の導出を通じて前記パラメータを更新する演算処理部と、
メモリと、備え、
前記演算処理部は、前記訓練データごとに前記勾配のノルムである勾配ノルムを導出して前記勾配ノルムを閾値と比較し、前記勾配ノルムが前記閾値を超えるとき、前記閾値を用いて前記勾配を修正し、前記修正後の前記勾配を用いて前記パラメータを更新し、
前記演算処理部は、前記訓練データごとに前記勾配ノルムを前記メモリに格納してゆくことで前記メモリに勾配ノルム群を保持させ、前記勾配ノルム群に基づいて前記閾値を設定する
、機械学習装置。
続きを表示(約 1,400 文字)【請求項2】
前記演算処理部は、前記勾配ノルム群に含まれる複数の勾配ノルムから、勾配ノルムの値が小さい方から予め定めた所定の割合に対応する勾配ノルムを抽出し、前記抽出した勾配ノルムを前記閾値に設定する
、請求項1に記載の機械学習装置。
【請求項3】
前記演算処理部は、前記勾配ノルム群に含まれる複数の勾配ノルムから、勾配ノルムの値が小さい方から予め定めた所定の割合内に属する2以上の勾配ノルムを抽出し、前記抽出した2以上の勾配ノルムの平均を前記閾値に設定する
、請求項1に記載の機械学習装置。
【請求項4】
前記演算処理部は、前記訓練データごとに前記訓練データに基づき前記勾配及び前記勾配ノルムを導出する導出処理を実行し、前記訓練データごと前記勾配ノルムと前記閾値とを比較し、
前記勾配ノルムが前記閾値以下であるとき、前記導出処理にて導出された前記勾配である原勾配を用いて前記パラメータを更新し、
前記勾配ノルムが前記閾値を超えるとき、前記閾値を用いて前記原勾配を修正することで修正勾配を導出し、前記修正勾配を用いて前記パラメータを更新する
、請求項1~3の何れかに記載の機械学習装置。
【請求項5】
前記演算処理部は、単位処理を繰り返し実行し、
前記演算処理部は、各単位処理において、
ミニバッチとして前記訓練データを取得して、取得した前記訓練データに基づき前記勾配及び前記勾配ノルムの導出を経て前記勾配ノルムを前記メモリに格納し、前記勾配ノルムと前記閾値との比較結果に基づき、前記原勾配又は前記修正勾配を用いて前記パラメータを更新する
、請求項4に記載の機械学習装置。
【請求項6】
前記演算処理部は、前記閾値を用いた前記原勾配の修正において、前記原勾配と前記閾値との積を前記勾配ノルムで除することで前記修正勾配を導出する
、請求項4に記載の機械学習装置。
【請求項7】
前記演算処理部は、前記メモリに格納される前記勾配ノルムの個数が基準数より少ないとき、予め定められた初期値を前記閾値に設定する
、請求項2又は3に記載の機械学習装置。
【請求項8】
前記演算処理部は、前記メモリに格納される前記勾配ノルムの個数が2以上であって且つ基準数より少ないとき、前記メモリに格納される前記勾配ノルムの平均を前記閾値に設定する
、請求項2又は3に記載の機械学習装置。
【請求項9】
入力データから出力データを生成するモデルのパラメータを教師あり機械学習により調整する機械学習方法であって、
訓練データを順次取得し、前記訓練データごとに前記訓練データに基づき前記モデルにおける損失関数の勾配の導出を通じて前記パラメータを更新し、
前記訓練データごとに前記勾配のノルムである勾配ノルムを導出して前記勾配ノルムを閾値と比較し、前記勾配ノルムが前記閾値を超えるとき、前記閾値を用いて前記勾配を修正し、前記修正後の前記勾配を用いて前記パラメータを更新し、
前記訓練データごとに前記勾配ノルムをメモリに格納してゆくことで前記メモリに勾配ノルム群を保持させ、前記勾配ノルム群に基づいて前記閾値を設定する
、機械学習方法。
【請求項10】
請求項9に記載の機械学習方法をコンピュータ装置に実行させるための機械学習プログラム。

発明の詳細な説明【技術分野】
【0001】
本発明は、機械学習装置、方法及びプログラムに関する。
続きを表示(約 1,900 文字)【背景技術】
【0002】
ニューラルネットワークによるモデルの機械学習において、勾配爆発と呼ばれる、損失関数の勾配の値が非常に大きくなる現象が知られている。勾配爆発が発生すると、モデルのパラメータ(ニューラルネットワークの重み及びバイアスのパラメータ)が大きく変動するため、損失関数が発散し、学習が不安定になる。
【0003】
勾配爆発の対処方法として勾配クリッピングと称される方法が知られている。勾配クリッピングでは、損失関数の勾配のノルムに対して上限値に相当する閾値を設定しておき、損失関数の勾配のノルムが閾値を超える場合に、閾値を用いて勾配が小さくなるよう修正する。勾配クリッピングの利用により学習を安定化させることができる。
【先行技術文献】
【特許文献】
【0004】
特開2018-160200号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
勾配クリッピングにおいて閾値は基本的にハイパーパラメータである。このため、モデルの構造及び学習に使用するデータセットに応じて閾値を実験的又は探索的に決定する必要がある。このため、最適な閾値を得るためには、閾値に対して様々な学習及び評価を繰り返す必要がある。モデル又はデータセットが大規模である場合、学習プロセスの計算コストも大きいため、閾値を最適化することは困難である。
【0006】
閾値が小さいほど学習は安定化するが、一方で学習に有益な勾配情報が失われ易くなるため、モデルの性能の低下や、学習にかかる時間が増大する可能性がある。逆に、閾値が必要以上に大きいと勾配が0に収束できない(学習が収束しない)場合等が発生するため、学習が不安定になる。このように、勾配クリッピングを利用した機械学習では、学習の安定性と、学習を経て得られるモデルの性能と、がトレードオフの関係にある。勾配クリッピングにおける閾値を適正化することができれば、学習の安定性確保とモデルの性能向上とを両立させ、また学習時間を適度なものとすることができる。
【0007】
本発明は、勾配クリッピングにおける閾値の適正化に寄与する機械学習装置、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明に係る機械学習装置は、入力データから出力データを生成するモデルのパラメータを教師あり機械学習により調整する機械学習装置であって、訓練データを順次取得し、前記訓練データごとに前記訓練データに基づき前記モデルにおける損失関数の勾配の導出を通じて前記パラメータを更新する演算処理部と、メモリと、備え、前記演算処理部は、前記訓練データごとに前記勾配のノルムである勾配ノルムを導出して前記勾配ノルムを閾値と比較し、前記勾配ノルムが前記閾値を超えるとき、前記閾値を用いて前記勾配を修正し、前記修正後の前記勾配を用いて前記パラメータを更新し、前記演算処理部は、前記訓練データごとに前記勾配ノルムを前記メモリに格納してゆくことで前記メモリに勾配ノルム群を保持させ、前記勾配ノルム群に基づいて前記閾値を設定する。
【発明の効果】
【0009】
本発明によれば、勾配クリッピングにおける閾値の適正化に寄与する機械学習装置、方法及びプログラムを提供することが可能となる。
【図面の簡単な説明】
【0010】
本発明の実施形態に係る機械学習システムの全体構成図である。
本発明の実施形態に係り、機械学習が適用されるモデルの構成及び入出力データを示す図である。
本発明の実施形態に係り、学習用データとしての画像データセットの構成図である。
本発明の実施形態に係り、機械学習工程のフローチャートである。
本発明の実施形態に係り、勾配ノルム格納部に勾配ノルム群が格納される様子を示す図である。
本発明の実施形態に係り、勾配ノルム格納部に勾配ノルム群が格納される様子を示す図である。
本発明の実施形態に係り、勾配ノルム群の昇順ソート配列を示す図である。
本発明の実施形態に係り、勾配ノルム群の昇順ソート配列に基づく閾値設定方法の概念図である。
本発明の実施形態に係り、勾配ノルム群の昇順ソート配列に基づく他の閾値設定方法の概念図である。
本発明の実施形態に係る演算処理部の機能ブロック図である。
【発明を実施するための形態】
(【0011】以降は省略されています)

この特許をJ-PlatPatで参照する
Flag Counter

関連特許