JP2020184311A - 自動データ水増しにおけるトレーニング時間の短縮 - Google Patents

自動データ水増しにおけるトレーニング時間の短縮 Download PDF

Info

Publication number
JP2020184311A
JP2020184311A JP2020027425A JP2020027425A JP2020184311A JP 2020184311 A JP2020184311 A JP 2020184311A JP 2020027425 A JP2020027425 A JP 2020027425A JP 2020027425 A JP2020027425 A JP 2020027425A JP 2020184311 A JP2020184311 A JP 2020184311A
Authority
JP
Japan
Prior art keywords
training data
data point
training
class
mutations
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
JP2020027425A
Other languages
English (en)
Other versions
JP7404924B2 (ja
Inventor
ケイ サハ・リポン
K Saha Ripon
ケイ サハ・リポン
ガオ・シアン
Xiang Gao
アール プラサド・ムクル
R Prasad Mukul
アール プラサド・ムクル
ゴーシュ・インドラディープ
Ghosh Indradeep
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JP2020184311A publication Critical patent/JP2020184311A/ja
Application granted granted Critical
Publication of JP7404924B2 publication Critical patent/JP7404924B2/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
    • 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/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

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

Abstract

【課題】深層ニューラルネットワーク(DNN)並びにそのトレーニング時間を短縮するシステム及び方法を提供する。【解決手段】DNNをトレーニングす方法において、深層ニューラルネットワークモデルを取得し、第1トレーニングエポックの間に深層ニューラルネットワークモデルのための第1トレーニングデータ点及び第2トレーニングデータ点を取得し、第1トレーニングデータ点の第1ロバストネス値、及び第2トレーニングデータ点の第2ロバストネス値を決定し、第1ロバストネス値がロバストネス閾を満たすことに応答して、第1トレーニングデータ点の水増しを省略し、第2ロバストネス値がロバストネス閾を満たさないことに応答して、第2トレーニングデータ点を水増しし、第1トレーニングエポックの間に、第1トレーニングデータ点及び水増しした第2トレーニングデータ点で、深層ニューラルネットワークモデルをトレーニングする。【選択図】図7

Description

本開示に記載の実施形態は、深層ニューラルネットワーク、並びに、そのトレーニング時間を短縮するシステム及び方法に関する。
深層ニューラルネットワーク(Deep Neural Network:DNN)は、益々多様な用途で使用されている。しかしながら、DNNは入力におけるノイズの影響を受けやすいことがある。より具体的には、DNNの入力に注入された僅かな量のノイズでも、結果として、高精度と考えられるDNNが不正確な予測を返してしまうことがある。ノイズに直面したDNNの精度を向上するためのトレーニングデータセットの水増し(augmenting)は、DNNをトレーニングするために要する時間を増大してしまうことがある。
本開示で請求される主題は、上述のような欠点を解決する実施形態や上述のような環境でのみ機能する実施形態に限定されない。むしろ、この背景技術は、単に、本開示に記載される複数の実施形態が実施される技術分野の一例を説明するために提供される。
方法は、深層ニューラルネットワークモデルを取得するステップと、第1トレーニングエポックの間に深層ニューラルネットワークモデルのための第1トレーニングデータ点及び第2トレーニングデータ点を取得するステップと、を含み得る。方法は、第1トレーニングデータ点の第1ロバストネス値、及び第2トレーニングデータ点の第2ロバストネス値を決定するステップを含み得る。方法は、第1ロバストネス値がロバストネス閾を満たすことに応答して、第1トレーニングデータ点の水増しを省略するステップと、第2ロバストネス値がロバストネス閾を満たさないことに応答して、第2トレーニングデータ点を水増しするステップと、を更に含み得る。方法は、また、第1トレーニングエポックの間に、第1トレーニングデータ点及び増大した第2トレーニングデータ点で、深層ニューラルネットワークモデルをトレーニングするステップを含み得る。
実施形態の目的及び利点が理解され、少なくとも特に特許請求の範囲で指摘された要素、特徴及び組合せを用いて達成されるだろう。
上述の全体的説明及び以下の詳細な説明の両方は、例示及び説明のためであり、本発明の範囲を限定しない。
例示的な実施形態は、添付の図面を用いて、更なる特異性及び詳細事項と共に記載され説明される。
深層ニューラルネットワーク(DNN)モデルのトレーニング時間の短縮に関連する例示的な環境を示す図である。
DNNモデルのロバストネスと精度との間の相違の概念的説明である。
DNNモデルのトレーニング時間の短縮の図である。
DNNモデルのトレーニング時間の短縮を説明する表である。
トレーニングデータ点のロバストネスを決定する第1の例示的な方法のフローチャートである。
トレーニングデータ点のロバストネスを決定する第2の例示的な方法のフローチャートである。
DNNをトレーニングする例示的な方法のフローチャートである。
DNNのトレーニング時間を短縮する例示的な方法のフローチャートである。
DNNモデルのロバストネスを評価するよう構成され得る例示的なコンピューティングシステムを示す。
本開示に記載の幾つかの実施形態は、深層ニューラルネットワーク(Deep Neural Network:DNN)のロバストネスを測定する方法及びシステムに関する。DNNは、人工の神経ネットワーク(artificial neural network:ANN)であり、通常、入力層、出力層、及び入力層と出力層との間の複数の層と、を含む。入力層と出力層との間の層の数が増えるほど、ニューラルネットワークの深さが増し、ニューラルネットワークの性能が向上する。
DNNは、画像、オーディオ、テキスト、又は他のデータを含み得る入力を受信してよく、入力の分類に関する予測、又は入力に基づき期待される動作に関する予測を実行してよい。例えば、入力が画像であるとき、DNNの可能な出力は、画像の分類(例えば、「犬の」画像、「猫の」画像、「人の」画像、等のような)、又は期待される動作(例えば、入力が停車ランプでの赤色光であると決定されると、車両を停止するような)を含んでよい。代替として、入力がオーディオであるとき、DNNの可能な出力は、オーディオの分類(例えば、オーディオの中の言葉の識別、オーディオのソースの識別(例えば、特定の動物又は特定の人物)、オーディオの中で表現された感情の識別)を含んでよい。DNNのトレーニングの部分として、ラベル付けされた入力のセット、つまり対応する出力と一緒に入力のセットが提供されてよい。その結果、DNNは、多くの異なる入力を識別し分類することを学習し得る。
DNNは、線形関係又は非線形関係かに関わらず、入力を出力に変えるための特定の数学的操作を見出し得る。ネットワークは、各出力の確率を計算する層を通じて移動する。各数学的操作は、したがって、層と見なされ、複雑なDNNは多くの層を有し、したがって「深層」ネットワークと呼ばれる。
深層ニューラルネットワーク(Deep Neural Network:DNN)は、益々多様な用途で使用されている。応用分野の少数の例は、自動運転、医療診断、マルウェア検出、画像認識、視覚芸術処理、自然言語処理、薬物発見及び毒物学、提案システム、モバイル広告、画像復元、詐欺検出、を含む。非常に広範な異なる技術分野におけるDNNの最近の普及及び明確な有用性にも拘わらず、幾つかの例では、DNNは、入力におけるノイズに対して脆弱であり得る。入力におけるノイズは、不正確な予測及び誤った出力を生じ得る。DNNの正常な動作では、少量のノイズは、出力における小さな摂動しか生じない。例えば、オブジェクト認識システムが淡い色のセーターをおむつと間違える。しかし、他の例では、これらの不正確な予測は、深刻な誤りを生じ得る。例えば、自律自動車がスクールバスをダチョウと間違えてしまう。
このようなノイズに対してより回復力があり且つより少ない不正確な予測しか生じないDNNを生成するために、DNNを機能不能にし又は許容できないほど不正確にさせ得る不正確な予測を生じるサンプル入力を見付ける改良された能力を有する、改良された敵対的テストシステムが開示される。このようなサンプル入力を見付けることの1つの利点は、DNNの信頼性を成功裏に測る能力であり得る。別の利点は、DNNを「再トレーニングする」又は改善するために不正確な予測を生じるサンプル入力を使用する能力であり得る。その結果、不正確な予測が修正される。
DNNのノイズに対する脆弱性を改善するために、DNNをトレーニングするために使用されるトレーニングデータ点は、トレーニングデータ点の変異により水増しされてよい。例えば、トレーニングデータ点の自然変異体、例えば画像の回転が、トレーニングセットに追加されて、入力を分類するDNNの能力を向上させてよい。変異により水増しされたトレーニングデータ点の処理は、DNNの精度を向上し得る。データ水増しは、各トレーニングデータ点をトレーニングデータ点のランダムな変異により水増しするステップを含み得る。これは、結果として、DNNのトレーニング時間の僅かな増大と一緒に、DNNの精度の僅かな改善をもたらし得る。代替として、各トレーニングデータ点の多数の変異が、トレーニングデータに追加されて、トレーニングデータを水増ししてよい。しかしながら、トレーニングデータの更なる水増しの追加は、遅いことがあり、時間的にDNNの精度を向上しない場合がある。
正しい出力をトレーニングデータ点の変異から提供させることに関してロバストであると決定されたトレーニングデータ点を識別することは、DNNにおける犠牲を縮小しながら、DNNのトレーニング時間の増大を軽減し得る。例えば、幾つかのDNN及び幾つかのトレーニングデータ点について、DNNは、トレーニングデータ点でDNNをトレーニングすることなく、トレーニングデータ点の変異を精確に分類し得る。このシナリオでは、トレーニングデータ点の変異でトレーニングデータセットを水増しすることは、DNNの精度を改善せず、DNNのトレーニング時間を増大し得る。DNNがトレーニングデータ点の変異を正しく分類したときに、トレーニングデータ点をロバストであると識別することにより、特定のトレーニングデータ点のみが水増しでき、DNNは精度の向上及びトレーニング時間の短縮の両方を有し得る。
本開示の実施形態を、添付の図面を参照して以下に説明する。
図1は、本開示に記載の少なくとも1つの実施形態に従い構成される、DNNモデルのトレーニング時間の短縮に関連する例示的な環境100を示す図である。環境100は、深層ニューラルネットワークモデル120、トレーニングデータ130、DNN構成モジュール110、及びトレーニング済みDNNモデル180を含んでよい。DNN構成モジュール110は、トレーニングモジュール140、変異モジュール150、ロバストネスモジュール160、及び水増しモジュール170を含む。
幾つかの実施形態では、深層ニューラルネットワークモデル120は、入力層、出力層、及び入力層と出力層との間の複数の層を含んでよい。各層は、入力を出力に変換するための数学的操作に対応してよい。トレーニングデータ130のようなトレーニングデータは、層が入力データを出力データに正確に変換することを可能にしてよい。
幾つかの実施形態では、トレーニングデータ130は、複数のトレーニングデータ点を含んでよい。トレーニングデータ点の各々は、分類されるべきアイテム、及びアイテムの正しい分類を含んでよい。例えば、幾つかの実施形態では、深層ニューラルネットワークモデル130は、画像分類モデルであってよい。上述の及び他の実施形態では、トレーニングデータ130は、複数の画像を含んでよく、各画像は分類に関連付けられてよい。例えば、動物の画像は「動物」として分類されてよく、一方で、他の画像は「非動物」として分類されてよい。代替として又は追加で、幾つかの実施形態では、特定種類の動物の画像は異なる方法で分類されてよい。例えば、猫の画像は「猫」として分類されてよく、一方で、犬の画像は「犬」として分類されてよい。代替として又は追加で、他の分類が可能である。例えば、分類は、「自動車」、「自転車」、「人」、「建物」、又は任意の他の分類を含んでよい。
幾つかの実施形態では、深層ニューラルネットワークモデル130は、オーディオ分類モデルであってよい。上述の及び他の実施形態では、トレーニングデータ130は、複数のオーディオファイルを含んでよく、各オーディオファイルは分類に関連付けられてよい。例えば、オーディオファイルは人間の会話を含んでよい。上述の及び他の実施形態では、分類は、幸せ、悲しい、不満、怒り、驚き、及び/又は困惑のような、人間の会話の話者の感情を含んでよい。代替として又は追加で、幾つかの実施形態では、分類は、会話に含まれる特定の単語、会話に含まれる話題、又は会話の他の特徴を含んでよい。
幾つかの実施形態では、トレーニング済みDNNモデル180は、トレーニングデータ130及び/又は他のデータでトレーニングされた後の、深層ニューラルネットワークモデル120を含んでよい。上述の及び他の実施形態では、トレーニング済みDNNモデル180は、ニューラルネットワーク120、テストデータ130、及び水増しされたトレーニングデータに基づき決定された、適切なモデルパラメータ及び数学的操作を含んでよい。
幾つかの実施形態では、DNN構成モジュール110は、コンピューティングシステムに1つ以上のトレーニング済みDNNモデルを生成するための1つ以上の動作を実行させるよう構成されるコード及びルーチンを含んでよい。追加で又は代替として、DNN構成モジュール110は、プロセッサ、(例えば、1つ以上の動作を実行する又はその実行を制御する)マイクロプロセッサ、FPGA(field−programmable gate array)又はASIC(application−specific integrated circuit)を含むハードウェアを用いて実装されてよい。幾つかの他の例では、DNN構成モジュール110は、ハードウェア及びソフトウェアの組み合わせを用いて実装されてよい。本開示では、DNN構成モジュール110により実行されるとして記載される動作は、DNN構成モジュール110がシステムに実行するよう指示し得る動作を含み得る。
幾つかの実施形態では、DNN構成モジュール110は、深層ニューラルネットワークモデル120及びトレーニングデータ130を取得するよう、及びトレーニング済みDNNモデル180を生成するよう構成されてよい。上述の及び他の実施形態では、DNN構成モジュール110は、トレーニングモジュール140、変異モジュール150、ロバストネスモジュール160、及び水増しモジュール170を含んでよい。DNN構成モジュール110は、トレーニングモジュール140、変異モジュール150、ロバストネスモジュール160、及び水増しモジュール170の動作を指示し、トレーニングデータ130のトレーニングデータ点を選択的に水増しして、トレーニング済みDNNモデル180を生成してよい。上述の及び他の実施形態では、トレーニングデータ130の幾つかのトレーニングデータ点は、ロバストであると決定されてよく、トレーニングデータ点の変異により水増しされなくてよい。上述の及び他の実施形態では、トレーニングデータ130の幾つかのトレーニングデータ点は、ロバストではないと決定されてよく、トレーニングデータ点の変異により水増しされてよい。深層ニューラルネットワークモデル120をトレーニングデータ130及び水増ししたトレーニングデータによりトレーニングした後に、DNN構成モジュール110は、トレーニング済みDNNモデル180を生成してよい。
幾つかの実施形態では、変異モジュール150は、コンピューティングシステムに、トレーニングデータの1つ以上の変異を生成するための1つ以上の動作を実行させるよう構成されるコード及びルーチンを含んでよい。追加又は代替として、変異モジュール150は、プロセッサ、(例えば、1つ以上の操作を実行する又はその実行を制御する)マイクロプロセッサ、FPGA(field−programmable gate array)又はASIC(application−specific integrated circuit)を含むハードウェアを用いて実装されてよい。幾つかの他の例では、変異モジュール150は、ハードウェア及びソフトウェアの組み合わせを用いて実装されてよい。本開示では、変異モジュール150により実行されるとして記載される動作は、変異モジュール150がシステムに実行するよう指示し得る動作を有してよい。
幾つかの実施形態では、変異モジュール150は、トレーニングデータ130の複数の変異を生成してよい。例えば、幾つかの実施形態では、変異モジュール150は、トレーニングデータ130の中の各トレーニングデータ点の変異をランダムに生成してよい。トレーニングデータ130が、例えば画像及び/又はビデオのような視覚的データを含むとき、変異モジュール150は、トレーニングデータ130の視覚的変異を生成してよい。視覚的変異は、トレーニングデータの回転(例えば、トレーニングデータ点の時計方向の1°の回転)、トレーニングデータの平行移動(例えば、トレーニングデータ点の右への5ピクセルのシフト)、トレーニングデータのせん断(shearing)(例えば、別の部分に対するトレーニングデータ点の一部分のシフト)、トレーニングデータのズーム(例えば、トレーニングデータ点の一部の拡大)、第1トレーニングデータ点の輝度の変化(例えば、トレーニングデータ点の部分及び/又は全部を明るくする)、第1トレーニングデータ点のコントラストの変化(例えば、トレーニングデータ点の部分間の色変化を低減する)、及び/又はトレーニングデータ点の他の変異を含んでよい。
トレーニングデータ130が、例えば音響、会話、及び/又は音楽のような聴覚的データを含むとき、変異モジュール150は、トレーニングデータ130の聴覚的変異を生成してよい。聴覚的変異は、トレーニングデータの中の速度に基づく会話の摂動、トレーニングデータへの背景雑音の追加、トレーニングデータのテンポに基づく摂動、及び/又はトレーニングデータ点の他の変異を含んでよい。
幾つかの実施形態では、変異モジュール150は、トレーニングデータの中の各データ点の複数の変異を生成してよい。例えば、幾つかの実施形態では、変異モジュール150は、トレーニングデータの回転、せん断、ズーム、輝度の変化、及びコントラストの変化をランダムに生成してよい。
幾つかの実施形態では、ロバストネスモジュール160は、コンピューティングシステムに、トレーニングデータのロバストネスを決定するための1つ以上の動作を実行させるよう構成されるコード及びルーチンを含んでよい。追加又は代替として、ロバストネスモジュール160は、プロセッサ、(例えば、1つ以上の操作を実行する又はその実行を制御する)マイクロプロセッサ、FPGA(field−programmable gate array)又はASIC(application−specific integrated circuit)を含むハードウェアを用いて実装されてよい。幾つかの他の例では、ロバストネスモジュール160は、ハードウェア及びソフトウェアの組み合わせを用いて実装されてよい。本開示では、ロバストネスモジュール160により実行されるとして記載される動作は、ロバストネスモジュール160がシステムに実行するよう指示し得る動作を有してよい。
幾つかの実施形態では、ロバストネスモジュール160は、トレーニングデータ130の中の各データ点のロバストネス値を決定し、ロバストネス値をロバストネス閾と比較するよう構成されてよい。上述の及び他の実施形態では、「ロバストネス」は、深層ニューラルネットワークモデル120が変異モジュール150により生成されたトレーニングデータ130の変異を正しく分類する能力を表してよい。例えば、幾つかの実施形態では、ロバストネスモジュール160は、データ点のロバストネス値を、深層ニューラルネットワークモデルにより正しく分類されたデータ点の変異の数として決定してよい。例えば、幾つかの実施形態では、ロバストネス閾は85であってよく、変異モジュール150は、トレーニングデータ点の100個の変異を生成してよく、該100個の変異をロバストネスモジュール160に提供してよい。ロバストネスモジュール160は、深層ニューラルネットワークモデル120に変異を提供してよい。深層ニューラルネットワークモデル120は、変異のうちの87個を正しく分類し得る。ロバストネスモジュール160は、トレーニングデータ点のロバストネス値が87であると決定してよく、ロバストネス値がロバストネス閾を超えるので、ロバストネスモジュール160はトレーニングデータ点がロバストであると決定してよい。
代替として又は追加で、幾つかの実施形態では、ロバストモジュール160は、データ点のロバストネス値を、トレーニングデータ点の各変異の損失として決定してよい。上述の及び他の実施形態では、ロバストネスモジュール160は、深層ニューラルネットワークモデル120が変異を正しく分類する信頼度に基づき、該変異の損失を決定してよい。例えば、深層ニューラルネットワークモデル120は、84%の信頼度で変異を正しく分類し得る。変異の損失は、100%−84%=16%であると決定されてよい。上述の及び他の実施形態では、ロバストネスモジュール160は、データ点のロバストネス値が、トレーニングデータ点の変異に関連付けられた損失のうちの最大損失であると決定してよい。幾つかの実施形態では、ロバストネス閾は15%であってよい。ロバストネスモジュール160は、トレーニングデータ点のロバストネス値が16%であると決定してよく、ロバストネス値がロバストネス閾を超えるので、ロバストネスモジュール160はトレーニングデータ点がロバストではないと決定してよい。
幾つかの実施形態では、ロバストネスモジュール160は、トレーニングデータ点がロバストであると決定された後の特定数のエポックの間、トレーニングデータ点のロバストネスを決定しなくてよい。例えば、ロバストネスモジュール160は、ロバストネスモジュール160がトレーニングデータ点をロバストであると決定した後の、次の2つのエポックの間、全てのトレーニングエポックの間、又は任意の他の間隔で、トレーニングデータ点のロバストネスを決定しなくてよい。更なる例として、幾つかの実施形態では、ロバストネスモジュール160は、4番目のエポックの間、トレーニングデータ点がロバストであると決定してよい。トレーニングデータ点は4番目のトレーニングエポックの間にロバストであると決定されたので、ロバストネスモジュール160は、続く5番目のエポックの間、トレーニングデータ点のロバストネスを決定しなくてよい。
幾つかの実施形態では、水増しモジュール170は、コンピューティングシステムに、トレーニングデータの1つ以上の変異によりトレーニングデータを水増しするための1つ以上の動作を実行させるよう構成されるコード及びルーチンを含んでよい。追加又は代替として、水増しモジュール170は、プロセッサ、(例えば、1つ以上の操作を実行する又はその実行を制御する)マイクロプロセッサ、FPGA(field−programmable gate array)又はASIC(application−specific integrated circuit)を含むハードウェアを用いて実装されてよい。幾つかの他の例では、水増しモジュール170は、ハードウェア及びソフトウェアの組み合わせを用いて実装されてよい。本開示では、水増しモジュール170により実行されるとして記載される動作は、水増しモジュール170がシステムに実行するよう指示し得る動作を有してよい。
幾つかの実施形態では、水増しモジュール170は、トレーニングデータ130のトレーニングデータ点を、トレーニングデータ点の1つ以上の変異により水増ししてよい。幾つかの実施形態では、水増しモジュール170は、ロバストネスモジュール160によりロバストであると決定されたトレーニングデータ点を水増ししてよく、ロバストネスモジュール160によりロバストではないと決定されたトレーニングデータ点を水増ししなくてよい。上述の及び他の実施形態では、水増しモジュール170は、変異モジュール150により生成されロバストネスモジュール160によりトレーニングデータ点がロバストであると決定するために使用された、変異のセットによりトレーニングデータ点を水増ししてよい。例えば、幾つかの実施形態では、変異モジュール150は、50、100、1000、又は任意の数の変異をロバストネスモジュール160のために生成してよい。上述の及び他の実施形態では、水増しモジュール170は、トレーニングデータ点の1、2、5、又は別の個数の変異によりロバストではないと決定されたトレーニングデータ点を水増ししてよい。
幾つかの実施形態では、トレーニングモジュール140は、コンピューティングシステムに、トレーニングデータ及び水増しされたトレーニングデータを用いて、深層ニューラルネットワークモデル120をトレーニングするための1つ以上の動作を実行させるよう構成されるコード及びルーチンを含んでよい。追加又は代替として、トレーニングモジュール140は、プロセッサ、(例えば、1つ以上の操作を実行する又はその実行を制御する)マイクロプロセッサ、FPGA(field−programmable gate array)又はASIC(application−specific integrated circuit)を含むハードウェアを用いて実装されてよい。幾つかの他の例では、トレーニングモジュール140は、ハードウェア及びソフトウェアの組み合わせを用いて実装されてよい。本開示では、トレーニングモジュール140により実行されるとして記載される動作は、トレーニングモジュール140がシステムに実行するよう指示し得る動作を有してよい。
幾つかの実施形態では、トレーニングモジュール140は、トレーニングデータ130及び水増しモジュール170からの水増しされたトレーニングデータを用いて、深層ニューラルネットワークモデル120をトレーニングしてよい。例えば、トレーニングモジュール140は、トレーニングデータ130及び水増しされたトレーニングデータで、複数のトレーニングエポックに渡り、深層ニューラルネットワークモデル120を繰り返しトレーニングしてよい。各トレーニングエポックの間、トレーニングモジュール140は、トレーニングデータ130及び水増ししたトレーニングデータに渡り順伝播及び逆伝播を実行して、適切なモデルパラメータを決定してよい。上述の及び他の実施形態では、トレーニングモジュール140は、トレーニングデータ130及び水増ししたトレーニングデータに渡る相互エントロピー損失関数(cross−entropy loss function)を最小化するアルゴリズムを用いて、深層ニューラルネットワークモデル120をトレーニングしてよい。幾つかの実施形態では、トレーニングデータ130の一部は、幾つかのトレーニングエポックの間、水増しされなくてよい。例えば、幾つかのトレーニングエポックの間、トレーニングデータ130の1つ以上のトレーニングデータ点は、ロバストネスモジュール160によりロバストであると決定されてよい。トレーニングデータ点がロバストであると決定されたので、水増しモジュール170はトレーニングデータ点を水増ししなくてよい。トレーニングモジュール140は、次に、水増しのないトレーニングデータ点を用いて、深層ニューラルネットワークモデル120をトレーニングしてよい。トレーニングモジュール140が複数のトレーニングエポックに渡る深層ニューラルネットワークモデル120のトレーニングを完了した後に、結果は、トレーニング済みDNNモデル180であってよい。
環境100の動作の説明は次の通りである。DNN構成モジュール110は、深層ニューラルネットワークモデル120及び深層ニューラルネットワークモデル120のためのトレーニングデータ130を取得してよい。DNNは、深層ニューラルネットワークモデル120及びトレーニングデータ130を、トレーニングモジュール140、変異モジュール150、ロバストネスモジュール160、及び水増しモジュール170に提供してよい。第1トレーニングエポックの間、トレーニングモジュール140は、深層ニューラルネットワークモデル120をトレーニングデータ130でトレーニングして、モデルパラメータを生成してよい。後続のトレーニングエポックの間、変異モジュール150は、ロバストネスモジュール160にトレーニングデータ130を提供してよく、ロバストネスモジュール160は、トレーニングデータ130の各トレーニングデータ点がロバストであるか又はロバストではないかを決定してよい。トレーニングデータ130のトレーニングデータ点がロバストではないと決定されたことに応答して、水増しモジュール170は、該トレーニングデータ点の1つ以上の変異により、該トレーニングデータ点を水増ししてよい。トレーニングモジュール140は、次に、トレーニングデータ130及び任意の水増しされたトレーニングデータ点を用いて、深層ニューラルネットワークモデル120をトレーニングしてよい。トレーニングモジュール140が深層ニューラルネットワークモデル120をトレーニングした後に、トレーニング済みDNNモデル180が生成されてよい。
幾つかの実施形態では、変異モジュール150は、前のトレーニングエポックでロバストであると決定されたトレーニングデータ点の変異を生成しないよう構成されてよい。上述の及び他の実施形態では、ロバストネスモジュール160は、同様に、前のトレーニングエポックでロバストであると決定されたトレーニングデータ点のロバストネスを決定しないよう構成されてよい。この方法では、環境100は、水増しがトレーニングされた深層ニューラルネットワークモデル120の精度を向上する可能性がより高いとき、水増しのためのトレーニングデータ点を優先的に選択してよい。開示された方法で、水増しのための特定のトレーニングデータ点を選択することにより、深層ニューラルネットワークモデル120をトレーニングするための時間が短縮され得、深層ニューラルネットワークモデル120の使用効率を向上し、同時にトレーニングされた深層ニューラルネットワークモデル120の精度を維持し及び/又は改善する。
本開示の範囲から逸脱することなく図1に対し変更、追加又は省略が行われてよい。例えば、環境100は、本開示で示され説明されたものより多くの又は少ない要素を有してよい。さらに、別個に記載したが、幾つかの実施形態では、トレーニングモジュール140、変異モジュール150、ロバストネスモジュール160、及び水増しモジュール170のうちの2つ以上は、同じシステムの部分であり、又は記載されたものと異なる方法で分割されてよい。本記載における上述の及び他の要素の間の描写は、限定的ではなく、本開示において使用される概念及び原理の理解及び説明を助けることを意味する。代替として又は追加で、幾つかの実施形態では、DNN構成モジュール110、変異モジュール150、ロバストネスモジュール160、水増しモジュール170、及びトレーニングモジュール140のうちの1つ以上は、異なるシステムに渡り分散されてよい。上述の及び他の実施形態では、環境100はネットワークを含んでよく、DNN構成モジュール110、変異モジュール150、ロバストネスモジュール160、水増しモジュール170、及びトレーニングモジュール140のうちの1つ以上は、ネットワークを介して通信可能に結合されてよい。
図2は、ロバストネスの概念的説明である。図2に示すように、第1クラス210及び第2クラス220について、深層ニューラルネットワークモデル(例えば、図1の深層ニューラルネットワークモデル120)は、第1予測クラス230及び第2予測クラス240を含む予測クラスのペアを生成してよい。これらの予測クラスは、第1クラス210及び第2クラス220の一連の結果を正確に予測する、深層ニューラルネットワークモデル120による試みである。典型的に、深層ニューラルネットワークモデルは、一連のトレーニングデータ点251a〜251cを利用することにより、第1予測クラス230及び第2予測クラス240を生み出す。通常、深層ニューラルネットワークモデルの精度は、敵対インスタンス又は誤判別を最小化する能力に基づく。例えば、点270a〜270eは、第1予測クラス230及び第2予測クラス240が、それぞれ第1クラス210及び第2クラス220の範囲を正確に予測しなかった領域内に見られる。
トレーニングデータ点251a〜251cは深層ニューラルネットワークモデルを発展させるために使用されるので、深層ニューラルネットワークモデルは、該トレーニングデータ点251a〜251cの近く又はそれらへの所定の距離範囲内にある点において非常に正確であることが期待される。この図では、これらのトレーニングデータ点251a〜251cまでの所定の距離範囲内にある領域は、トレーニングデータ点251a〜251cの領域250a〜250cとして参照される。現実には、しかしながら、ときに、深層ニューラルネットワークモデルはトレーニングデータ点の領域内で失敗することがある。例えば、図2に示す概念では、トレーニングデータ点290の正確さにも拘わらず、深層ニューラルネットワークモデルは、トレーニングデータ点290の領域295内にある点280a〜280bの結果を不正確に予測することがある。
水増しは、深層ニューラルネットワークモデルの精度を、トレーニングデータ点251a〜251cの近く又は該点までの所定の距離範囲内にある点において改善し得る。幾つかの実施形態では、トレーニングデータ点251a〜251cまでの所定の距離範囲内にある点は、トレーニングデータ点の変異であってよい。例えば、幾つかの実施形態では、点280a〜280bは、トレーニングデータ点290の変異であってよい。上述の及び他の実施形態では、DNN構成モジュール、例えば図1のDNN構成モジュール110は、変異280a〜280bのうちの1つ以上により、トレーニングデータ点290を水増しするよう構成されてよい。上述の及び他の実施形態では、トレーニングデータ点290を変異280a〜280bのうちの1つ以上により水増しすることは、深層ニューラルネットワークモデルが変異280a〜280bの結果を正しく予測することを助け得る。したがって、トレーニングデータ点をトレーニングデータ点の変異で水増しすることは、図2に示した問題を改善し得る。
図3は、DNNモデルのトレーニング時間の短縮の図である。図300は、第1トレーニングエポック310aと、第1トレーニングエポック310aの直後に生じる第2トレーニングエポック310bと、第2トレーニングエポック310bの後の少なくとも1つのトレーニングエポックにおいて生じる第3トレーニングエポック310cと、に分けられてよい。図300は、第1トレーニングデータ点330a及び第2トレーニングデータ点330bも含んでよい。第1トレーニングエポック310aの間、図1の変異モジュール150のような変異モジュール350は、第1トレーニングデータ点330aの複数の変異355a、及び第2トレーニングデータ点330bの複数の変異355bを生成してよい。図1のロバストネスモジュール160のようなロバストネスモジュール360は、第1トレーニングデータ点330a及び第2トレーニングデータ点330bがロバストであるか否かを、図1を参照して上述した又は図5及び6を参照して後述するのと同様の方法で決定してよい。ロバストネスモジュール360は、第1トレーニングエポック310aの間に第1トレーニングデータ点330aがロバストではないと決定してよく、第1トレーニングエポック310aの間に第2トレーニングデータ点330bがロバストであると決定してよい。第1トレーニングデータ点330aはロバストではないと決定されたので、図1の水増しモジュール170のような水増しモジュールは、複数の変異335aから第1トレーニングデータ点330aの変異を選択してよく、第1トレーニングデータ点330aを変異370aで水増ししてよい。第2トレーニングデータ点330bがロバストであると決定されたので、水増しモジュールは第2トレーニングデータ点330bの変異を選択しなくてよい。
第2トレーニングエポック310bの間、変異モジュール350は、第1トレーニングデータ点330aの複数の変異355aを生成してよい。幾つかの実施形態では、第2トレーニングエポック310bの間に生成された、第1トレーニングデータ点330aの複数の変異355aは、第1トレーニングエポック310aの間に生成された複数のトレーニング変異355aと異なってよい。代替として、幾つかの実施形態では、変異モジュール350は、第1トレーニングエポック310a及び第2トレーニングエポック310bの両方の間に、同じ複数の変異355aを生成してよい。幾つかの実施形態では、変異モジュール350は、第2トレーニングエポック310bの間に、第2トレーニングデータ点330bの変異を生成しなくてよい。なぜなら、ロバストネスモジュール360が、第1トレーニングエポック310aの間に、第2トレーニングデータ点330bがロバストであると決定したからである。幾つかの実施形態では、ロバストネスモジュール360は、第2トレーニングエポック310bの間に、第1トレーニングデータ点330aがロバストではないと決定してよい。第1トレーニングデータ点330aはロバストではないと決定されたので、水増しモジュールは、複数の変異335aから第1トレーニングデータ点330aの変異を選択してよく、第1トレーニングデータ点330aを変異370aで水増ししてよい。幾つかの実施形態では、水増しモジュールは、第2トレーニングエポック310bにおいて、第1トレーニングエポック310aの間に選択されたのと異なる、第1トレーニングデータ点330aの変異370aを選択して、第1トレーニングデータ点330aを水増ししてよい。代替として、幾つかの実施形態では、水増しモジュールは、第2トレーニングエポック310b及び第1トレーニングエポック310aにおいて、第1トレーニングデータ点330aの同じ変異370aを選択してよい。
第3トレーニングエポック310cの間、変異モジュール350は、第1トレーニングデータ点330aの複数の変異355a、及び第2トレーニングデータ点330bの複数の変異355bを生成してよい。幾つかの実施形態では、第3トレーニングエポック310cの間に生成された、第1トレーニングデータ点330aの複数の変異355aは、第1トレーニングエポック310a及び/又は第2トレーニングエポック310bの間に生成された複数のトレーニング変異355aと異なってよい。代替として、幾つかの実施形態では、変異モジュール350は、第1トレーニングエポック310a、第2トレーニングエポック310b、及び第3トレーニングエポック310cの間に、同じ複数の変異355aを生成してよい。幾つかの実施形態では、第3トレーニングエポック310cの間に生成された、第2トレーニングデータ点330bの複数の変異355bは、第1トレーニングエポック310aの間に生成された複数のトレーニング変異355bと異なってよい。代替として、幾つかの実施形態では、変異モジュール350は、第1トレーニングエポック310a及び第3トレーニングエポック310cの両方の間に、同じ複数の変異355bを生成してよい。
幾つかの実施形態では、ロバストネスモジュール360は、第3トレーニングエポック310cの間に、第1トレーニングデータ点330a及び第23トレーニングデータ点330bがロバストではないと決定してよい。第1トレーニングデータ点330aはロバストではないと決定されたので、水増しモジュールは、複数の変異335aから第1トレーニングデータ点330aの変異を選択してよく、第1トレーニングデータ点330aを変異370aで水増ししてよい。幾つかの実施形態では、水増しモジュールは、第3トレーニングエポック310cにおいて、第1トレーニングエポック310a及び/又は第2トレーニングエポック310bの間に選択されたのと異なる、第1トレーニングデータ点330aの変異370aを選択して、第1トレーニングデータ点330aを水増ししてよい。代替として、幾つかの実施形態では、水増しモジュールは、第1トレーニングエポック310a、第2トレーニングエポック310b及び第3トレーニングエポック310cにおいて、第1トレーニングデータ点330aの同じ変異370aを選択してよい。第2トレーニングデータ点330bはロバストではないと決定されたので、水増しモジュールは、複数の変異335bから第2トレーニングデータ点330bの変異を選択してよく、第2トレーニングデータ点330bを変異370bで水増ししてよい。
本開示の範囲から逸脱することなく図3に対し変更、追加又は省略が行われてよい。例えば、図300は、本開示で示され説明されたものより多くの又は少ない要素を有してよい。
図4は、DNNモデルのトレーニング時間の短縮を説明する表400である。図4に示すように、深層ニューラルネットワークモデルのトレーニングは、30個のトレーニングエポック、410a、410b、410c、410d、410e、410f、410g、410n(集合的にトレーニングエポック410)の期間の間に生じてよい。深層ニューラルネットワークモデルのためのトレーニングデータは、n個のトレーニングデータ点、430a、430b、430c、430d、430n(集合的にトレーニングデータ点430)を含んでよい。表400に示すように、最初のトレーニングエポック410aを除いて、各トレーニングエポックの間に、トレーニングデータ点430の各々は、トレーニングデータ点430の変異により水増しされてよい(表中に「A」として示される)。例えば、第2トレーニングエポック410bの間、トレーニングデータ点430a、430b、430d、及び430nは、ロバストではないと決定されてよく、水増しされてよい。トレーニングデータ点430cは、ロバストであると決定されてよく、水増しされなくてよい。連続するトレーニングエポック410の間に、トレーニングデータ点430は、トレーニングデータ点430がロバストではないと決定されると、水増しされてよい。幾つかの実施形態では、特定のトレーニングデータ点430のロバストネスは、特定のトレーニングデータ点430がロバストであると決定された後の多数のトレーニングエポック410の間、決定されなくてよい。例えば、表400に示すように、トレーニングデータ点430cのロバストネスは、トレーニングエポック410c、410d、及び410eの間、決定されなくてよい。なぜなら、トレーニングデータ点430cは、トレーニングエポック410bの間にロバストであると決定されたからである。同様に、トレーニングデータ点430nのロバストネスは、トレーニングエポック410d、410e、及び410fの間、決定されなくてよい。なぜなら、トレーニングデータ点430nは、トレーニングエポック410cの間にロバストであると決定されたからである。
本開示の範囲から逸脱することなく図4に対し変更、追加又は省略が行われてよい。例えば、表400は、本開示で示され説明されたものより多くの又は少ない要素を有してよい。
図5は、トレーニングデータ点がロバストであるか否かを決定する第1の例示的な方法500のフローチャートである。ブロック510で、トレーニングデータ点及び該トレーニングデータ点のクラスが取得されてよい。幾つかの実施形態では、クラスは、トレーニングデータ点のカテゴリを含んでよい。例えば、トレーニングデータ点が画像であるとき、クラスは、「猫」、「犬」、「人」、「自動車」、又は他の説明のような画像の説明を含んでよい。
ブロック520で、予測クラス閾が取得されてよい。幾つかの実施形態では、予測クラス閾は、深層ニューラルネットワークモデルにより正しく分類されたトレーニングデータ点の変異の数であってよい。ブロック530で、トレーニングデータ点の複数の変異が取得されてよい。上述の及び他の実施形態では、変異は、トレーニングデータ点の種類に依存して、視覚的変異及び/又は聴覚的変異を含んでよい。視覚的変異は、トレーニングデータの回転、トレーニングデータの平行移動、トレーニングデータのせん断、トレーニングデータのズーム、第1トレーニングデータ点の輝度の変化、第1トレーニングデータ点のコントラストの変化、及び/又はトレーニングデータ点の他の変異を含み得る。聴覚的変異は、トレーニングデータの中の速度に基づく会話の摂動、トレーニングデータへの背景雑音の追加、トレーニングデータのテンポに基づく摂動、及び/又はトレーニングデータ点の他の変異を含んでよい。
ブロック540で、各変異に関して、予測クラス決定が実行されてよい。幾つかの実施形態では、予測クラス決定は、各変異が入力として提供されるとき、深層ニューラルネットワークモデルのクラス予測を決定するステップを含んでよい。ブロック550で、予測クラス決定の一致したクラスの数が決定されてよい。例えば、予測クラス決定のうちの50個が、トレーニングデータ点のクラスと一致してよい。
決定ブロック560で、方法500は、一致したクラスの数が予測クラス閾を超えるか否かを決定してよい。一致したクラスの数が予測クラス閾を超えたことに応答して(決定ブロック560で「Yes」)、方法500は、ブロック570に進んでよく、トレーニングデータ点はロバストであると決定される。一致したクラスの数が予測クラス閾を超えないことに応答して(決定ブロック560で「No」)、方法500は、ブロック580に進んでよく、トレーニングデータ点はロバストではないと決定される。方法500は、ブロック570及び580の後に、ブロック510に戻ってよい。
本開示の範囲から逸脱することなく図5に対し変更、追加又は省略が行われてよい。例えば、方法500は、本開示で示され説明されたものより多くの又は少ない要素を有してよい。
図6は、トレーニングデータ点がロバストであるか否かを決定する第2の例示的な方法600のフローチャートである。ブロック610で、トレーニングデータ点及び該トレーニングデータ点のクラスが取得されてよい。幾つかの実施形態では、クラスは、トレーニングデータ点のカテゴリを含んでよい。例えば、トレーニングデータ点が画像であるとき、クラスは、「猫」、「犬」、「人」、「自動車」、又は他の説明のような画像の説明を含んでよい。
ブロック620で、損失閾が取得されてよい。ブロック630で、トレーニングデータ点の複数の変異が取得されてよい。上述の及び他の実施形態では、変異は、視覚的変異及び/又は聴覚的変異を含んでよい。視覚的変異は、トレーニングデータの回転、トレーニングデータの平行移動、トレーニングデータのせん断、トレーニングデータのズーム、第1トレーニングデータ点の輝度の変化、第1トレーニングデータ点のコントラストの変化、及び/又はトレーニングデータ点の他の変異を含み得る。聴覚的変異は、トレーニングデータの中の速度に基づく会話の摂動、トレーニングデータへの背景雑音の追加、トレーニングデータのテンポに基づく摂動、及び/又はトレーニングデータ点の他の変異を含んでよい。
ブロック640で、各変異に関して、損失決定が実行されてよい。幾つかの実施形態では、損失決定は、各変異が入力として提供されるとき、深層ニューラルネットワークモデルの損失を決定するステップを含んでよい。各損失は、変異の予測クラスがトレーニングデータ点のクラスと一致する予測確率に基づき決定されてよい。ブロック650で、決定された損失のうちの最大損失が識別されてよい。
決定ブロック660で、方法600は、最大損失が損失閾より小さいか否かを決定してよい。最大損失が損失閾より小さいことに応答して(決定ブロック660で「Yes」)、方法600は、ブロック670に進んでよく、トレーニングデータ点はロバストであると決定される。最大損失が損失閾以上であることに応答して(決定ブロック560で「No」)、方法600は、ブロック680に進んでよく、トレーニングデータ点はロバストではないと決定される。方法600は、ブロック670及び680の後に、ブロック610に戻ってよい。
本開示の範囲から逸脱することなく図6に対し変更、追加又は省略が行われてよい。例えば、方法600は、本開示で示され説明されたものより多くの又は少ない要素を有してよい。
図7は、深層ニューラルネットワークモデルをトレーニングする例示的な方法700のフローチャートである。方法700は、ブロック705で開始してよく、深層ニューラルネットワークモデルが取得されてよい。ブロック710で、方法700は、トレーニングエポックを開始するステップを含んでよい。ブロック715で、トレーニングデータ点が取得されてよい。決定ブロック720で、方法700は、前のk個のトレーニングエポックのうちの1つにおいて、トレーニングデータ点がロバストであると決定されたか否かを決定するステップを含んでよい。幾つかの実施形態では、「k」は任意の整数を表してよい。例えば、幾つかの実施形態では、kは0、1、2、5、又は任意の他の数であってよい。代替として、幾つかの実施形態では、方法700は、前のトレーニングエポックにおいて、トレーニングデータ点がロバストであると決定されたか否かを決定するステップを含んでよい。
前のk個のトレーニングエポックのうちの1つにおいて、トレーニングデータ点がロバストであると決定されたことに応答して(決定ブロック720で「Yes」)、方法700は、ブロック735に進んでよい。前のk個のトレーニングエポックのうちの1つにおいて、トレーニングデータ点がロバストではないと決定されたことに応答して(決定ブロック720で「No」)、方法700は、ブロック725に進んでよい。ブロック725で、方法700は、トレーニングデータ点がロバストであるか否かを決定するステップを含んでよい。幾つかの実施形態では、方法700は、図5及び/又は6を参照して上述したのと同様の方法を用いて、トレーニングデータ点がロバストであるか否かを決定してよい。代替として、幾つかの実施形態では、方法700は、トレーニングデータ点がロバストであるか否かを決定するために異なる方法を用いてよい。トレーニングデータ点がロバストであると決定されたことに応答して(決定ブロック725で「Yes」)、方法700は、ブロック735に進んでよい。トレーニングデータ点がロバストではないと決定されたことに応答して(決定ブロック725で「No」)、方法700は、ブロック730に進んでよい。
ブロック735で、トレーニングデータ点は、トレーニングデータ点の1つ以上の変異により水増しされてよい。ブロック740で、深層ニューラルネットワークモデルは、水増しされたトレーニングデータ点を用いてトレーニングされてよい。ブロック735で、深層ニューラルネットワークモデルは、トレーニングデータ点を用いてトレーニングされてよい。ブロック735又はブロック740の後に、方法700はブロック745に進み得る。深層ニューラルネットワークモデルのトレーニングは、トレーニングデータ点及び/又は水増しされたトレーニングデータ点に渡る順伝播及び逆伝播を含んでよい。幾つかの実施形態では、深層ニューラルネットワークモデルは、トレーニングデータに渡り相互エントロピー関数を最小化するアルゴリズムを用いてトレーニングされてよい。
決定ブロック745で、方法700は、更なるトレーニングデータ点があるか否かを決定してよい。更なるトレーニングデータ点が存在することに応答して(決定ブロック745で「Yes」)、方法700は、ブロック715に戻ってよい。更なるトレーニングデータ点が存在しないことに応答して(決定ブロック745で「No」)、方法715は、ブロック750に進んでよい。決定ブロック750で、方法700は、更なるトレーニングエポックがあるか否かを決定してよい。更なるトレーニングエポックが存在することに応答して(決定ブロック750で「Yes」)、方法700は、ブロック710に戻ってよい。更なるトレーニングエポックが存在しないことに応答して(決定ブロック750で「No」)、方法700は、ブロック755に進んでよい。ブロック755で、深層ニューラルネットワークモデルのトレーニングが完了してよい。
本開示の範囲から逸脱することなく図7に対し変更、追加又は省略が行われてよい。例えば、方法700は、本開示で示され説明されたものより多くの又は少ない要素を有してよい。
図8は、深層ニューラルネットワークモデルのトレーニング時間を短縮する例示的な方法のフローチャートである。方法800は、本開示に記載の少なくとも1つの実施形態に従い構成されてよい。方法800は、幾つかの実施形態では、図1及び9の環境100及び/又はコンピュータシステム902のようなシステム及び/又は環境によりそれぞれ全部又は部分的に実行されてよい。上述の及び他の実施形態では、方法800は、1つ以上の非一時的コンピュータ可読媒体に格納された命令の実行に基づき実行されてよい。別個のブロックとして示したが、所望の実装に依存して、種々のブロックは、更なるブロックに分割され、少ないブロックに結合され、又は除去されてよい。
方法800は、ブロック810で開始してよく、深層ニューラルネットワークモデルが取得されてよい。ブロック820で、第1トレーニングデータ点及び第2トレーニングデータ点が、第1トレーニングエポックの間に、深層ニューラルネットワークモデルのためのトレーニングデータ点の母集団から取得されてよい。ブロック830で、第1トレーニングデータ点の第1ロバストネス値が、第1トレーニングデータ点の変異に関する深層ニューラルネットワークモデルの第1精度に基づき決定されてよい。幾つかの実施形態では、深層ニューラルネットワークモデルは、予測クラス決定に基づき、損失決定に基づき、及び/又は別の決定に基づき、第1トレーニングデータ点の変異に関して正確であることを決定されてよい。
幾つかの実施形態では、第1ロバストネス値は、予測クラス決定に基づき決定されてよい。上述の及び他の実施形態では、第1トレーニングデータ点のクラスが取得されてよい。クラスは、第1トレーニングデータ点のカテゴリであってよい。上述の及び他の実施形態では、トレーニングデータ点の複数の変異が取得されてよい。予測クラス決定は、複数の変異のうちの、それぞれの変異に関して実行されてよい。予測クラス決定は、それぞれの変異が提供されると、深層ニューラルネットワークモデルのそれぞれのクラス予測を決定するステップを含んでよい。その結果、複数の変異に関して、複数のクラス予測が取得される。上述の及び他の実施形態では、第1ロバストネス値は、第1トレーニングデータ点の取得したクラスに一致する、複数の予測のうちの一致するクラスの数として決定されてよい。
幾つかの実施形態では、第1ロバストネス値は、損失決定に基づき決定されてよい。上述の及び他の実施形態では、第1トレーニングデータ点のクラスが取得されてよい。クラスは、第1トレーニングデータ点のカテゴリであってよい。上述の及び他の実施形態では、トレーニングデータ点の複数の変異が取得されてよい。損失決定は、複数の変異のうちの、それぞれの変異に関して実行されてよい。損失決定は、それぞれの変異の予測クラスが第1トレーニングデータ点のクラスと一致する予測確率に基づき決定されてよい。上述の及び他の実施形態では、第1ロバストネス値は、1つ以上の損失のうちの最大損失として決定されてよい。
ブロック840で、第2トレーニングデータ点の第2ロバストネス値が、第2トレーニングデータ点の変異に関する深層ニューラルネットワークモデルの第2精度に基づき決定されてよい。ブロック850で、第1ロバストネス値がロバストネス閾を満たすことに応答して、方法800は、第1トレーニングエポックの間に、第1トレーニングデータ点の変異により第1トレーニングデータ点の水増しを省略するステップを含んでよい。幾つかの実施形態では、ロバストネス閾は予測クラス閾を含んでよい。代替として又は追加で、幾つかの実施形態では、ロバストネス閾は損失閾を含んでよい。
ブロック860で、第2ロバストネス値がロバストネス閾を満たさないことに応答して、第2トレーニングデータ点は、第1トレーニングエポックの間に、第2トレーニングデータ点の1つ以上の変異により水増しされてよい。ブロック870で、深層ニューラルネットワークモデルは、第1トレーニングエポックの間に、第1トレーニングデータ点及び水増しした第2トレーニングデータ点で、トレーニングされてよい。
当業者は、本願明細書に開示された上述の及び他の処理、動作、及び方法について、実行される機能及び/又は工程が異なる順序で実施されてよいことを理解するだろう。さらに、概略の機能及び動作は、単に例として提供され、幾つかの機能及び動作は、開示の実施形態の本質から逸脱することなく、任意であり、より少ない機能及び動作に組み合わされ、又は追加機能及び動作に拡張されてよい。幾つかの実施形態では、方法800は、追加のブロック又はより少ないブロックを含んでよい。例えば、幾つかの実施形態では、方法800は、第2トレーニングデータ点及び関連するブロックを含まなくてよい。
代替として又は追加で、幾つかの実施形態では、方法800は、第1トレーニングエポックの後の1つ以上の第2トレーニングエポックの間に、第1トレーニングデータ点で、深層ニューラルネットワークモデルをトレーニングするステップを含んでよい。上述の及び他の実施形態では、方法800は、さらに、1つ以上の第2トレーニングエポックの後の第3トレーニングエポックの間に、トレーニングデータ点の母集団から第1トレーニングデータ点を取得するステップを含んでよい。上述の及び他の実施形態では、方法800は、さらに、第1トレーニングデータ点の変異に関する深層ニューラルネットワークモデルの第3精度に基づき、第1トレーニングデータ点の第3ロバストネス値を決定するステップを含んでよい。上述の及び他の実施形態では、方法800は、さらに、第3ロバストネス値がロバストネス閾を満たさないことに応答して、第3トレーニングエポックの間に、第1トレーニングデータ点の1つ以上の変異により第1トレーニングデータ点の水増しを省略するステップを含んでよい。上述の及び他の実施形態では、方法800は、さらに、第3トレーニングエポックの間に、水増しした第1トレーニングデータ点で深層ニューラルネットワークモデルをトレーニングするステップを含んでよい。
図9は、本開示の特定の少なくとも一実施形態による例示的なコンピューティングシステム902のブロック図を示す。コンピューティングシステム902は、水増しモジュール(例えば、図1の水増しモジュール170)と関連する1つ以上の動作を実施し又は指示するよう構成されてよい。コンピューティングシステム902は、プロセッサ950、メモリ952、及びデータ記憶954を含んでよい。プロセッサ950、メモリ952、及びデータ記憶装置954は、通信可能に結合されてよい。
概して、プロセッサ950は、任意の適切な特定用途向け又は汎用コンピュータ、コンピューティングエンティティ、又は種々のコンピュータハードウェア若しくはソフトウェアモジュールを有してよく、任意の適切なコンピュータ可読媒体に格納された命令を実行するよう構成され得る処理装置を用いて実施されてよい。例えば、プロセッサ950は、マイクロプロセッサ、マイクロコントローラ、デジタシグナルプロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)又はプログラム命令を解釈し及び/若しくは実行し並びに/又はデータを処理するよう構成された任意の他のデジタル若しくはアナログ回路を有してよい。図9には単一のプロセッサを示したが、プロセッサ950は、本開示で説明される任意の数の操作を個々に又は共同で実行する又は実行を指示するよう構成される任意の数のプロセッサを有してよい。さらに、プロセッサのうちの1つ以上は、異なるサーバのような1つ以上の異なる電子装置に存在してよい。
幾つかの実施形態では、プロセッサ950は、プログラム命令を解釈し及び/又は実行し、及び/又はメモリ952、データ記憶954又はメモリ952及びデータ記憶装置954に格納されたデータを処理してよい。幾つかの実施形態では、プロセッサ950は、データ記憶装置954からプログラム命令をフェッチし、該プログラム命令をメモリ952にロードしてよい。プログラム命令がメモリ952にロードされた後、プロセッサ950は該プログラム命令を実行してよい。
例えば、幾つかの実施形態では、DNN構成モジュールは、プログラム命令としてデータ記憶装置954に含まれてよい。プロセッサ950は、データ記憶装置954からDNN構成モジュールのプログラム命令をフェッチしてよく、DNN構成モジュールのプログラム命令をメモリ952にロードしてよい。DNN構成モジュールのプログラム命令がメモリ952にロードされた後、プロセッサ950は、コンピューティングシステムが命令により指示されるようにDNN構成モジュールと関連する動作を実施できるように、プログラム命令を実行してよい。
メモリ952及びデータ記憶装置954は、コンピュータ実行可能命令又はデータ構造を伝える又は格納しているコンピュータ可読記憶媒体を含み得る。このようなコンピュータ可読媒体は、プロセッサ950のような汎用又は特定目的コンピュータによりアクセスできる任意の利用可能な媒体を含み得る。例として且つ限定ではなく、このようなコンピュータ可読媒体は、RAM(Random Access Memory)、ROM(Read−Only Memory)、EEPROM(Electrically Erasable Programmable Read−Only Memory)、CD−ROM(Compact Disc Read−Only Memory)又は他の光ディスク記憶装置、磁気ディスク記憶装置又は他の磁気記憶装置、フラッシュメモリ装置(例えば、固体メモリ素子)を含む有形又は非一時的コンピュータ可読記憶媒体、又はコンピュータにより実行可能な命令若しくはデータ構造の形式で特定のプログラムコード手段を伝える若しくは格納するために用いられ汎用若しくは特定目的コンピュータによりアクセス可能な他の記憶媒体を有し得る。上述の組合せも、コンピュータ可読記憶媒体の範囲に包含され得る。コンピュータ実行可能命令は、例えば、プロセッサ950に特定の工程又は工程のグループを実行させるよう構成される命令及びデータを含み得る。
本開示の範囲から逸脱することなくコンピューティングシステム902に対し変更、追加又は省略が行われてよい。例えば、幾つかの実施形態では、コンピューティングシステム902は、明示的に示され又は記載されてない任意の数の他のコンポーネントを有してよい。
理解され得るように、水増しによる利益を得る深層ニューラルネットワークモデル120のトレーニングデータ点を識別することは、既存の深層ニューラルネットワークモデル120を改善する又は深層ニューラルネットワークモデル120のトレーニング時間を短縮するための手段として使用されてよい。したがって、本願明細書に記載のシステム及び方法は、深層ニューラルネットワークモデルの品質を向上しながら、トレーニングし及び幾つかの場合にはトレーニング時間を短縮する能力を提供し、より正確な機械学習を提供する。
上述のように、本開示で記載した実施形態は、以下に更に詳細に議論するように、種々のコンピュータハードウェア又はソフトウェアモジュールを備えた特定用途又は汎用コンピュータ(例えば、図9のプロセッサ950)の使用を含み得る。さらに、上述のように、本開示に記載の実施形態は、コンピュータ実行可能命令又はデータ構造を伝える又はそれを格納されたコンピュータ可読媒体(例えば、図9のメモリ952又はデータ記憶装置954)を用いて実施されてよい。
本開示で用いられるように、用語「モジュール」又は「コンポーネント」は、モジュール若しくはコンポーネントのアクションを実行するよう構成される特定ハードウェア実装、及び/又はコンピューティングシステムの汎用ハードウェア(例えばコンピュータ可読媒体、処理装置、等)に格納され及び/又はそれらにより実行され得るソフトウェアオブジェクト又はソフトウェアルーチンを表してよい。幾つかの実施形態では、本開示に記載されたのと異なるコンポーネント、モジュール、エンジン及びサービスは、(例えば、別個のスレッドとして)コンピューティングシステムで実行されるオブジェクト又は処理として実施されてよい。本開示に記載のシステム及び方法の幾つかは概して(汎用ハードウェアに格納される及び/又はそれにより実行される)ソフトウェアで実装されるように記載されたが、専用ハードウェアの実装又はソフトウェアと専用ハードウェアの組み合わせの実装も可能であり考えられる。この説明では、「コンピュータエンティティ」は、本開示で先に定められたようにコンピューティングシステム、又はコンピューティングシステムで実行されるモジュール若しくはモジュールの組合せであってよい。
本開示で及び特に添付の特許請求の範囲(例えば、添付の特許請求の範囲の本体)で使用される用語は、概して、広義の(open)用語と考えられる(例えば、用語「含む(including)」は「含むが、限定されない」と解釈されるべきであり、用語「有する(having)」は「少なくとも有する」と解釈されるべきであり、用語「含む(includes)」は「含むが、限定されない」と解釈されるべきである)。
さらに、特定数の導入された請求項の引用が意図される場合、このような意図は、請求項の中に明示的に示され、このような引用が存在しない場合はこのような意図が存在しない。例えば、理解の助けとして、以下の添付の特許請求の範囲は、請求項の引用を導入するために、「少なくとも1つの」及び「1又は複数の」をいう前置語句の使用を含み得る。しかしながら、このような語句の使用は、同じ請求項が前置語句「1又は複数」又は「少なくとも1つの」及び「a又はan」のような不定冠詞を含むときでも、不定冠詞「a、an」による請求項引用の導入がこのような導入された請求項引用を含む任意の特定の請求項をこのような引用を1つだけ含む実施形態に限定することを示すと考えられてはならない(例えば、「a」及び/又は「an」は「少なくとも1つの」又は「1又は複数の」を意味すると解釈されるべきである)。同様のことは、請求項引用を導入するために使用される定冠詞の使用についても該当する。
さらに、特定数の導入された請求項引用が明示的に引用される場合、当業者は、このような引用が少なくとも引用された番号を意味することと解釈されるべきであることを認識するだろう(例えば、「2つの引用」はそのままで、他の変更が無ければ、少なくとも2つの引用、又は2以上の引用を意味する)。さらに、「A、B、C、等のうちの少なくとも1つ」又は「A、B、C、等のうちの1又は複数」に類似する慣例が用いられる例では、通常、このような構成は、Aのみ、Bのみ、Cのみ、A及びBを一緒に、A及びCを一緒に、B及びCを一緒に、又はA、B、Cを一緒に、等を含むと意図される。
さらに、2以上の代替用語を表す任意の離接語又は語句は、説明、請求項、又は図面の中であるかに係わらず、用語のうちの1つ、用語のうちのいずれか、又は両方の用語を含む可能性を包含すると理解されるべきである。例えば、語句「A又はB」は、「A」又は「B」又は「A及びB」の可能性を含むと理解されるべきである。
本開示に記載された全ての例及び条件文は、教育上の目的で、読者が本開示の原理及び発明者により考案された概念を理解するのを助け、技術を促進させるためであり、これらの特に記載された例及び条件に限定されないものと考えられるべきである。本開示の実施形態が詳細に記載されたが、種々の変更、置換及び修正が本開示の精神及び範囲から逸脱することなく行われ得る。
以上の実施形態に加えて、更に以下の付記を開示する。
(付記1) 深層ニューラルネットワークモデルを取得するステップと、
第1トレーニングエポックの間に前記深層ニューラルネットワークモデルのためのトレーニングデータ点の母集団から、第1トレーニングデータ点及び第2トレーニングデータ点を取得するステップと、
前記第1トレーニングデータ点の変異に関する前記深層ニューラルネットワークモデルの第1精度に基づき、前記第1トレーニングデータ点の第1ロバストネス値を決定するステップと、
前記第2トレーニングデータ点の変異に関する前記深層ニューラルネットワークモデルの第2精度に基づき、前記第2トレーニングデータ点の第2ロバストネス値を決定するステップと、
前記第1ロバストネス値がロバストネス閾を満たすことに応答して、前記第1トレーニングエポックの間に前記第1トレーニングデータ点の変異による前記第1トレーニングデータ点の水増しを省略するステップと、
前記第2ロバストネス値が前記ロバストネス閾を満たさないことに応答して、前記第1トレーニングエポックの間に前記第2トレーニングデータ点の1つ以上の変異により前記第2トレーニングデータ点を水増しするステップと、
前記第1トレーニングエポックの間に、前記第1トレーニングデータ点及び前記水増しした第2トレーニングデータ点で、前記深層ニューラルネットワークモデルをトレーニングするステップと、
を含む方法。
(付記2) 前記第1ロバストネス値を決定するステップは、
前記第1トレーニングデータ点のクラスを取得するステップであって、前記クラスは、前記第1トレーニングデータ点のカテゴリである、ステップと、
前記ロバストネス閾として、予測クラス閾を取得するステップと、
前記第1トレーニングデータ点の複数の変異を取得するステップと、
前記複数の変異のうちのそれぞれの変異に関し、予測クラス決定を実行するステップであって、前記予測クラス決定は、それぞれの変異が提供されると、前記深層ニューラルネットワークモデルのそれぞれのクラス予測を決定し、その結果、前記複数の変異に関して複数のクラス予測が取得される、ステップと、
前記第1ロバストネス値として、前記第1トレーニングデータ点についての前記取得したクラスと一致する、前記複数のクラス予測のうちの一致するクラスの数を決定するステップと、
前記一致するクラスの数が前記予測クラス閾を満たすことに応答して、前記第1トレーニングデータ点がロバストであると決定するステップであって、前記第1トレーニングデータ点の水増しを省略するステップは、前記一致するクラスの数が前記予測クラス閾を満たすことに応答して前記第1トレーニングデータ点がロバストであると決定することに応答する、ステップと、
を含む、付記1に記載の方法。
(付記3) 前記第1トレーニングデータ点の前記複数の変異を取得するステップは、前記第1トレーニングデータ点の1つ以上のランダム変異を取得するステップを含む、付記2に記載の方法。
(付記4) 前記第1ロバストネス値を決定するステップは、
前記ロバストネス閾として、損失閾を取得するステップと、
前記第1トレーニングデータ点の複数の変異を取得するステップと、
前記複数の変異のうちのそれぞれの変異に関し、損失決定を実行するステップであって、前記損失決定は、それぞれの変異が提供されると、前記深層ニューラルネットワークモデルのそれぞれの損失を決定し、その結果、前記複数の変異に関して複数の損失が取得され、前記複数の損失のうちの各損失は、前記それぞれの変異の予測クラスが前記第1トレーニングデータ点のクラスと一致する予測確率に基づき決定される、ステップと、
前記第1ロバストネス値として、前記1つ以上の損失のうちの最大損失を識別するステップと、
前記最大損失が前記損失閾を満たすことに応答して、前記第1トレーニングデータ点がロバストであると決定するステップであって、前記第1トレーニングデータ点の水増しを省略するステップは、前記最大損失が前記損失閾を満たすことに応答して前記第1トレーニングデータ点がロバストであると決定することに応答する、ステップと、
を含む、付記1に記載の方法。
(付記5) 前記第1ロバストネス値を決定するステップは、前記第1トレーニングデータ点の複数の変異に基づく、付記1に記載の方法。
(付記6) 前記第1トレーニングデータ点の前記複数の変異は、複数の視覚的変異種類のうちの1つ以上の視覚的変異種類を含み、前記複数の視覚的変異種類は、前記第1トレーニングデータ点の回転、前記第1トレーニングデータ点の平行移動、前記第1トレーニングデータ点のせん断、前記第1トレーニングデータ点のズーム、前記第1トレーニングデータ点の輝度の変化、前記第1トレーニングデータ点のコントラストの変化、を含む、付記5に記載の方法。
(付記7) 前記第1トレーニングデータ点の前記複数の変異は、複数の聴覚的変異種類のうちの1つ以上の聴覚的変異種類を含み、前記複数の聴覚的変異種類は、前記第1トレーニングデータ点の速度に基づく会話の摂動、前記第1トレーニングデータ点への背景雑音の追加、及び前記第1トレーニングデータ点のテンポに基づく摂動、を含む、付記5に記載の方法。
(付記8) 1つ以上の命令を記憶し、該命令は、少なくとも1つのシステムにより実行されることに応答して、前記少なくとも1つのシステムに付記1に記載の方法を実行させる、少なくとも1つの非一時的コンピュータ可読媒体。
(付記9) 深層ニューラルネットワークモデルを取得するステップと、
第1トレーニングエポックの間に、前記深層ニューラルネットワークモデルのためのトレーニングデータ点の母集団から、第1トレーニングデータ点を取得するステップと、
前記第1トレーニングデータ点の変異に関する前記深層ニューラルネットワークモデルの第1精度に基づき、前記第1トレーニングデータ点の第1ロバストネス値を決定するステップと、
前記第1ロバストネス値がロバストネス閾を満たすことに応答して、前記第1トレーニングエポックの間、及び前記第1トレーニングエポックの後の1つ以上の第2トレーニングエポックの間に、前記第1トレーニングデータ点の変異による前記第1トレーニングデータ点の水増しを省略するステップと、
前記第1トレーニングエポックの間に前記第1トレーニングデータ点で前記深層ニューラルネットワークモデルをトレーニングするステップと、
前記1つ以上の第2トレーニングエポックの間に前記第1トレーニングデータ点で前記深層ニューラルネットワークモデルをトレーニングするステップと、
前記1つ以上の第2トレーニングエポックの後の第3トレーニングエポックの間に、前記トレーニングデータ点の母集団から、前記第1トレーニングデータ点を取得するステップと、
前記第1トレーニングデータ点の変異に関する前記深層ニューラルネットワークモデルの第2精度に基づき、前記第1トレーニングデータ点の第2ロバストネス値を決定するステップと、
前記第2ロバストネス値が前記ロバストネス閾を満たさないことに応答して、前記第3トレーニングエポックの間に、前記第1トレーニングデータ点の1つ以上の変異により前記第1トレーニングデータ点を水増しするステップと、
前記第3トレーニングエポックの間に、前記水増しした第1トレーニングデータ点で前記深層ニューラルネットワークモデルをトレーニングするステップと、
を含む方法。
(付記10) 前記第1ロバストネス値を決定するステップは、
前記第1トレーニングデータ点のクラスを取得するステップであって、前記クラスは、前記第1トレーニングデータ点のカテゴリである、ステップと、
前記ロバストネス閾として、予測クラス閾を取得するステップと、
前記第1トレーニングデータ点の複数の変異を取得するステップと、
前記複数の変異のうちのそれぞれの変異に関し、予測クラス決定を実行するステップであって、前記予測クラス決定は、それぞれの変異が提供されると、前記深層ニューラルネットワークモデルのそれぞれのクラス予測を決定し、その結果、前記複数の変異に関して複数のクラス予測が取得される、ステップと、
前記第1ロバストネス値として、前記第1トレーニングデータ点についての前記取得したクラスと一致する、前記複数のクラス予測のうちの一致するクラスの数を決定するステップと、
前記一致するクラスの数が前記予測クラス閾を満たすことに応答して、前記第1トレーニングデータ点がロバストであると決定するステップであって、前記第1トレーニングデータ点の水増しを省略するステップは、前記一致するクラスの数が前記予測クラス閾を満たすことに応答して前記第1トレーニングデータ点がロバストであると決定することに応答する、ステップと、
を含む、付記9に記載の方法。
(付記11) 前記第1トレーニングデータ点の前記複数の変異を取得するステップは、前記第1トレーニングデータ点の1つ以上のランダム変異を取得するステップを含む、付記10に記載の方法。
(付記12) 前記第1ロバストネス値を決定するステップは、
前記ロバストネス閾として、損失閾を取得するステップと、
前記第1トレーニングデータ点の複数の変異を取得するステップと、
前記複数の変異のうちのそれぞれの変異に関し、損失決定を実行するステップであって、前記損失決定は、それぞれの変異が提供されると、前記深層ニューラルネットワークモデルのそれぞれの損失を決定し、その結果、前記複数の変異に関して複数の損失が取得され、前記複数の損失のうちの各損失は、前記それぞれの変異の予測クラスが前記第1トレーニングデータ点のクラスと一致する予測確率に基づき決定される、ステップと、
前記第1ロバストネス値として、前記1つ以上の損失のうちの最大損失を識別するステップと、
前記最大損失が前記損失閾を満たすことに応答して、前記第1トレーニングデータ点がロバストであると決定するステップであって、前記第1トレーニングデータ点の水増しを省略するステップは、前記最大損失が前記損失閾を満たすことに応答して前記第1トレーニングデータ点がロバストであると決定することに応答する、ステップと、
を含む、付記9に記載の方法。
(付記13) 前記第1ロバストネス値を決定するステップは、前記第1トレーニングデータ点の複数の変異に基づく、付記9に記載の方法。
(付記14) 前記第1トレーニングデータ点の前記複数の変異は、複数の視覚的変異種類のうちの1つ以上の視覚的変異種類を含み、前記複数の視覚的変異種類は、前記第1トレーニングデータ点の回転、前記第1トレーニングデータ点の平行移動、前記第1トレーニングデータ点のせん断、前記第1トレーニングデータ点のズーム、前記第1トレーニングデータ点の輝度の変化、前記第1トレーニングデータ点のコントラストの変化、を含む、付記13に記載の方法。
(付記15) 前記第1トレーニングデータ点の前記複数の変異は、複数の聴覚的変異種類のうちの1つ以上の聴覚的変異種類を含み、前記複数の聴覚的変異種類は、前記第1トレーニングデータ点の速度に基づく会話の摂動、前記第1トレーニングデータ点への背景雑音の追加、及び前記第1トレーニングデータ点のテンポに基づく摂動、を含む、付記13に記載の方法。
(付記16) 1つ以上の命令を記憶し、該命令は、少なくとも1つのシステムにより実行されることに応答して、前記少なくとも1つのシステムに付記9に記載の方法を実行させる、少なくとも1つの非一時的コンピュータ可読媒体。
(付記17) 深層ニューラルネットワークモデルを取得するステップと、
第1トレーニングエポックの間に前記深層ニューラルネットワークモデルのためのトレーニングデータ点の母集団から第1トレーニングデータ点を取得するステップと、
前記第1トレーニングデータ点に関する前記深層ニューラルネットワークモデルの第1精度に基づき、前記第1トレーニングデータ点の第1ロバストネス値を決定するステップと、
前記第1ロバストネス値がロバストネス閾を満たすことに応答して、前記第1トレーニングエポックの間に前記第1トレーニングデータ点の変異による前記第1トレーニングデータ点の水増しを省略するステップと、
前記第1トレーニングエポックの間に前記第1トレーニングデータ点で前記深層ニューラルネットワークモデルをトレーニングするステップと、
を含む方法。
(付記18) 前記第1ロバストネス値を決定するステップは、
前記第1トレーニングデータ点のクラスを取得するステップであって、前記クラスは、前記第1トレーニングデータ点のカテゴリである、ステップと、
前記ロバストネス閾として、予測クラス閾を取得するステップと、
前記第1トレーニングデータ点の複数の変異を取得するステップと、
前記複数の変異のうちのそれぞれの変異に関し、予測クラス決定を実行するステップであって、前記予測クラス決定は、それぞれの変異が提供されると、前記深層ニューラルネットワークモデルのそれぞれのクラス予測を決定し、その結果、前記複数の変異に関して複数のクラス予測が取得される、ステップと、
前記第1ロバストネス値として、前記第1トレーニングデータ点についての前記取得したクラスと一致する、前記複数のクラス予測のうちの一致するクラスの数を決定するステップと、
前記一致するクラスの数が前記予測クラス閾を満たすことに応答して、前記第1トレーニングデータ点がロバストであると決定するステップであって、前記第1トレーニングデータ点の水増しを省略するステップは、前記一致するクラスの数が前記予測クラス閾を満たすことに応答して前記第1トレーニングデータ点がロバストであると決定することに応答する、ステップと、
を含む、付記17に記載の方法。
(付記19) 前記第1ロバストネス値を決定するステップは、
前記ロバストネス閾として、損失閾を取得するステップと、
前記第1トレーニングデータ点の複数の変異を取得するステップと、
前記複数の変異のうちのそれぞれの変異に関し、損失決定を実行するステップであって、前記損失決定は、それぞれの変異が提供されると、前記深層ニューラルネットワークモデルのそれぞれの損失を決定し、その結果、前記複数の変異に関して複数の損失が取得され、前記複数の損失のうちの各損失は、前記それぞれの変異の予測クラスが前記第1トレーニングデータ点のクラスと一致する予測確率に基づき決定される、ステップと、
前記第1ロバストネス値として、前記1つ以上の損失のうちの最大損失を識別するステップと、
前記最大損失が前記損失閾を満たすことに応答して、前記第1トレーニングデータ点がロバストであると決定するステップであって、前記第1トレーニングデータ点の水増しを省略するステップは、前記最大損失が前記損失閾を満たすことに応答して前記第1トレーニングデータ点がロバストであると決定することに応答する、ステップと、
を含む、付記17に記載の方法。
(付記20) 1つ以上の命令を記憶し、該命令は、少なくとも1つのシステムにより実行されることに応答して、前記少なくとも1つのシステムに付記17に記載の方法を実行させる、少なくとも1つの非一時的コンピュータ可読媒体。
100 環境
110 DNN構成モジュール
120 深層ニューラルネットワークモデル
130 トレーニングデータ
140 トレーニングモジュール
150 変異モジュール
160 ロバストネスモジュール
170 水増しモジュール
180 トレーニング済みDNNモデル

Claims (20)

  1. 深層ニューラルネットワークモデルを取得するステップと、
    第1トレーニングエポックの間に前記深層ニューラルネットワークモデルのためのトレーニングデータ点の母集団から、第1トレーニングデータ点及び第2トレーニングデータ点を取得するステップと、
    前記第1トレーニングデータ点の変異に関する前記深層ニューラルネットワークモデルの第1精度に基づき、前記第1トレーニングデータ点の第1ロバストネス値を決定するステップと、
    前記第2トレーニングデータ点の変異に関する前記深層ニューラルネットワークモデルの第2精度に基づき、前記第2トレーニングデータ点の第2ロバストネス値を決定するステップと、
    前記第1ロバストネス値がロバストネス閾を満たすことに応答して、前記第1トレーニングエポックの間に前記第1トレーニングデータ点の変異による前記第1トレーニングデータ点の水増しを省略するステップと、
    前記第2ロバストネス値が前記ロバストネス閾を満たさないことに応答して、前記第1トレーニングエポックの間に前記第2トレーニングデータ点の1つ以上の変異により前記第2トレーニングデータ点を水増しするステップと、
    前記第1トレーニングエポックの間に、前記第1トレーニングデータ点及び前記水増しした第2トレーニングデータ点で、前記深層ニューラルネットワークモデルをトレーニングするステップと、
    を含む方法。
  2. 前記第1ロバストネス値を決定するステップは、
    前記第1トレーニングデータ点のクラスを取得するステップであって、前記クラスは、前記第1トレーニングデータ点のカテゴリである、ステップと、
    前記ロバストネス閾として、予測クラス閾を取得するステップと、
    前記第1トレーニングデータ点の複数の変異を取得するステップと、
    前記複数の変異のうちのそれぞれの変異に関し、予測クラス決定を実行するステップであって、前記予測クラス決定は、それぞれの変異が提供されると、前記深層ニューラルネットワークモデルのそれぞれのクラス予測を決定し、その結果、前記複数の変異に関して複数のクラス予測が取得される、ステップと、
    前記第1ロバストネス値として、前記第1トレーニングデータ点についての前記取得したクラスと一致する、前記複数のクラス予測のうちの一致するクラスの数を決定するステップと、
    前記一致するクラスの数が前記予測クラス閾を満たすことに応答して、前記第1トレーニングデータ点がロバストであると決定するステップであって、前記第1トレーニングデータ点の水増しを省略するステップは、前記一致するクラスの数が前記予測クラス閾を満たすことに応答して前記第1トレーニングデータ点がロバストであると決定することに応答する、ステップと、
    を含む、請求項1に記載の方法。
  3. 前記第1トレーニングデータ点の前記複数の変異を取得するステップは、前記第1トレーニングデータ点の1つ以上のランダム変異を取得するステップを含む、請求項2に記載の方法。
  4. 前記第1ロバストネス値を決定するステップは、
    前記ロバストネス閾として、損失閾を取得するステップと、
    前記第1トレーニングデータ点の複数の変異を取得するステップと、
    前記複数の変異のうちのそれぞれの変異に関し、損失決定を実行するステップであって、前記損失決定は、それぞれの変異が提供されると、前記深層ニューラルネットワークモデルのそれぞれの損失を決定し、その結果、前記複数の変異に関して複数の損失が取得され、前記複数の損失のうちの各損失は、前記それぞれの変異の予測クラスが前記第1トレーニングデータ点のクラスと一致する予測確率に基づき決定される、ステップと、
    前記第1ロバストネス値として、前記1つ以上の損失のうちの最大損失を識別するステップと、
    前記最大損失が前記損失閾を満たすことに応答して、前記第1トレーニングデータ点がロバストであると決定するステップであって、前記第1トレーニングデータ点の水増しを省略するステップは、前記最大損失が前記損失閾を満たすことに応答して前記第1トレーニングデータ点がロバストであると決定することに応答する、ステップと、
    を含む、請求項1に記載の方法。
  5. 前記第1ロバストネス値を決定するステップは、前記第1トレーニングデータ点の複数の変異に基づく、請求項1に記載の方法。
  6. 前記第1トレーニングデータ点の前記複数の変異は、複数の視覚的変異種類のうちの1つ以上の視覚的変異種類を含み、前記複数の視覚的変異種類は、前記第1トレーニングデータ点の回転、前記第1トレーニングデータ点の平行移動、前記第1トレーニングデータ点のせん断、前記第1トレーニングデータ点のズーム、前記第1トレーニングデータ点の輝度の変化、前記第1トレーニングデータ点のコントラストの変化、を含む、請求項5に記載の方法。
  7. 前記第1トレーニングデータ点の前記複数の変異は、複数の聴覚的変異種類のうちの1つ以上の聴覚的変異種類を含み、前記複数の聴覚的変異種類は、前記第1トレーニングデータ点の速度に基づく会話の摂動、前記第1トレーニングデータ点への背景雑音の追加、及び前記第1トレーニングデータ点のテンポに基づく摂動、を含む、請求項5に記載の方法。
  8. 1つ以上の命令を記憶し、該命令は、少なくとも1つのシステムにより実行されることに応答して、前記少なくとも1つのシステムに請求項1に記載の方法を実行させる、少なくとも1つの非一時的コンピュータ可読媒体。
  9. 深層ニューラルネットワークモデルを取得するステップと、
    第1トレーニングエポックの間に、前記深層ニューラルネットワークモデルのためのトレーニングデータ点の母集団から、第1トレーニングデータ点を取得するステップと、
    前記第1トレーニングデータ点の変異に関する前記深層ニューラルネットワークモデルの第1精度に基づき、前記第1トレーニングデータ点の第1ロバストネス値を決定するステップと、
    前記第1ロバストネス値がロバストネス閾を満たすことに応答して、前記第1トレーニングエポックの間、及び前記第1トレーニングエポックの後の1つ以上の第2トレーニングエポックの間に、前記第1トレーニングデータ点の変異による前記第1トレーニングデータ点の水増しを省略するステップと、
    前記第1トレーニングエポックの間に前記第1トレーニングデータ点で前記深層ニューラルネットワークモデルをトレーニングするステップと、
    前記1つ以上の第2トレーニングエポックの間に前記第1トレーニングデータ点で前記深層ニューラルネットワークモデルをトレーニングするステップと、
    前記1つ以上の第2トレーニングエポックの後の第3トレーニングエポックの間に、前記トレーニングデータ点の母集団から、前記第1トレーニングデータ点を取得するステップと、
    前記第1トレーニングデータ点の変異に関する前記深層ニューラルネットワークモデルの第2精度に基づき、前記第1トレーニングデータ点の第2ロバストネス値を決定するステップと、
    前記第2ロバストネス値が前記ロバストネス閾を満たさないことに応答して、前記第3トレーニングエポックの間に、前記第1トレーニングデータ点の1つ以上の変異により前記第1トレーニングデータ点を水増しするステップと、
    前記第3トレーニングエポックの間に、前記水増しした第1トレーニングデータ点で前記深層ニューラルネットワークモデルをトレーニングするステップと、
    を含む方法。
  10. 前記第1ロバストネス値を決定するステップは、
    前記第1トレーニングデータ点のクラスを取得するステップであって、前記クラスは、前記第1トレーニングデータ点のカテゴリである、ステップと、
    前記ロバストネス閾として、予測クラス閾を取得するステップと、
    前記第1トレーニングデータ点の複数の変異を取得するステップと、
    前記複数の変異のうちのそれぞれの変異に関し、予測クラス決定を実行するステップであって、前記予測クラス決定は、それぞれの変異が提供されると、前記深層ニューラルネットワークモデルのそれぞれのクラス予測を決定し、その結果、前記複数の変異に関して複数のクラス予測が取得される、ステップと、
    前記第1ロバストネス値として、前記第1トレーニングデータ点についての前記取得したクラスと一致する、前記複数のクラス予測のうちの一致するクラスの数を決定するステップと、
    前記一致するクラスの数が前記予測クラス閾を満たすことに応答して、前記第1トレーニングデータ点がロバストであると決定するステップであって、前記第1トレーニングデータ点の水増しを省略するステップは、前記一致するクラスの数が前記予測クラス閾を満たすことに応答して前記第1トレーニングデータ点がロバストであると決定することに応答する、ステップと、
    を含む、請求項9に記載の方法。
  11. 前記第1トレーニングデータ点の前記複数の変異を取得するステップは、前記第1トレーニングデータ点の1つ以上のランダム変異を取得するステップを含む、請求項10に記載の方法。
  12. 前記第1ロバストネス値を決定するステップは、
    前記ロバストネス閾として、損失閾を取得するステップと、
    前記第1トレーニングデータ点の複数の変異を取得するステップと、
    前記複数の変異のうちのそれぞれの変異に関し、損失決定を実行するステップであって、前記損失決定は、それぞれの変異が提供されると、前記深層ニューラルネットワークモデルのそれぞれの損失を決定し、その結果、前記複数の変異に関して複数の損失が取得され、前記複数の損失のうちの各損失は、前記それぞれの変異の予測クラスが前記第1トレーニングデータ点のクラスと一致する予測確率に基づき決定される、ステップと、
    前記第1ロバストネス値として、前記1つ以上の損失のうちの最大損失を識別するステップと、
    前記最大損失が前記損失閾を満たすことに応答して、前記第1トレーニングデータ点がロバストであると決定するステップであって、前記第1トレーニングデータ点の水増しを省略するステップは、前記最大損失が前記損失閾を満たすことに応答して前記第1トレーニングデータ点がロバストであると決定することに応答する、ステップと、
    を含む、請求項9に記載の方法。
  13. 前記第1ロバストネス値を決定するステップは、前記第1トレーニングデータ点の複数の変異に基づく、請求項9に記載の方法。
  14. 前記第1トレーニングデータ点の前記複数の変異は、複数の視覚的変異種類のうちの1つ以上の視覚的変異種類を含み、前記複数の視覚的変異種類は、前記第1トレーニングデータ点の回転、前記第1トレーニングデータ点の平行移動、前記第1トレーニングデータ点のせん断、前記第1トレーニングデータ点のズーム、前記第1トレーニングデータ点の輝度の変化、前記第1トレーニングデータ点のコントラストの変化、を含む、請求項13に記載の方法。
  15. 前記第1トレーニングデータ点の前記複数の変異は、複数の聴覚的変異種類のうちの1つ以上の聴覚的変異種類を含み、前記複数の聴覚的変異種類は、前記第1トレーニングデータ点の速度に基づく会話の摂動、前記第1トレーニングデータ点への背景雑音の追加、及び前記第1トレーニングデータ点のテンポに基づく摂動、を含む、請求項13に記載の方法。
  16. 1つ以上の命令を記憶し、該命令は、少なくとも1つのシステムにより実行されることに応答して、前記少なくとも1つのシステムに請求項9に記載の方法を実行させる、少なくとも1つの非一時的コンピュータ可読媒体。
  17. 深層ニューラルネットワークモデルを取得するステップと、
    第1トレーニングエポックの間に前記深層ニューラルネットワークモデルのためのトレーニングデータ点の母集団から第1トレーニングデータ点を取得するステップと、
    前記第1トレーニングデータ点に関する前記深層ニューラルネットワークモデルの第1精度に基づき、前記第1トレーニングデータ点の第1ロバストネス値を決定するステップと、
    前記第1ロバストネス値がロバストネス閾を満たすことに応答して、前記第1トレーニングエポックの間に前記第1トレーニングデータ点の変異による前記第1トレーニングデータ点の水増しを省略するステップと、
    前記第1トレーニングエポックの間に前記第1トレーニングデータ点で前記深層ニューラルネットワークモデルをトレーニングするステップと、
    を含む方法。
  18. 前記第1ロバストネス値を決定するステップは、
    前記第1トレーニングデータ点のクラスを取得するステップであって、前記クラスは、前記第1トレーニングデータ点のカテゴリである、ステップと、
    前記ロバストネス閾として、予測クラス閾を取得するステップと、
    前記第1トレーニングデータ点の複数の変異を取得するステップと、
    前記複数の変異のうちのそれぞれの変異に関し、予測クラス決定を実行するステップであって、前記予測クラス決定は、それぞれの変異が提供されると、前記深層ニューラルネットワークモデルのそれぞれのクラス予測を決定し、その結果、前記複数の変異に関して複数のクラス予測が取得される、ステップと、
    前記第1ロバストネス値として、前記第1トレーニングデータ点についての前記取得したクラスと一致する、前記複数のクラス予測のうちの一致するクラスの数を決定するステップと、
    前記一致するクラスの数が前記予測クラス閾を満たすことに応答して、前記第1トレーニングデータ点がロバストであると決定するステップであって、前記第1トレーニングデータ点の水増しを省略するステップは、前記一致するクラスの数が前記予測クラス閾を満たすことに応答して前記第1トレーニングデータ点がロバストであると決定することに応答する、ステップと、
    を含む、請求項17に記載の方法。
  19. 前記第1ロバストネス値を決定するステップは、
    前記ロバストネス閾として、損失閾を取得するステップと、
    前記第1トレーニングデータ点の複数の変異を取得するステップと、
    前記複数の変異のうちのそれぞれの変異に関し、損失決定を実行するステップであって、前記損失決定は、それぞれの変異が提供されると、前記深層ニューラルネットワークモデルのそれぞれの損失を決定し、その結果、前記複数の変異に関して複数の損失が取得され、前記複数の損失のうちの各損失は、前記それぞれの変異の予測クラスが前記第1トレーニングデータ点のクラスと一致する予測確率に基づき決定される、ステップと、
    前記第1ロバストネス値として、前記1つ以上の損失のうちの最大損失を識別するステップと、
    前記最大損失が前記損失閾を満たすことに応答して、前記第1トレーニングデータ点がロバストであると決定するステップであって、前記第1トレーニングデータ点の水増しを省略するステップは、前記最大損失が前記損失閾を満たすことに応答して前記第1トレーニングデータ点がロバストであると決定することに応答する、ステップと、
    を含む、請求項17に記載の方法。
  20. 1つ以上の命令を記憶し、該命令は、少なくとも1つのシステムにより実行されることに応答して、前記少なくとも1つのシステムに請求項17に記載の方法を実行させる、少なくとも1つの非一時的コンピュータ可読媒体。
JP2020027425A 2019-04-30 2020-02-20 自動データ水増しにおけるトレーニング時間の短縮 Active JP7404924B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/399,399 US20200349425A1 (en) 2019-04-30 2019-04-30 Training time reduction in automatic data augmentation
US16/399399 2019-04-30

Publications (2)

Publication Number Publication Date
JP2020184311A true JP2020184311A (ja) 2020-11-12
JP7404924B2 JP7404924B2 (ja) 2023-12-26

Family

ID=73015962

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020027425A Active JP7404924B2 (ja) 2019-04-30 2020-02-20 自動データ水増しにおけるトレーニング時間の短縮

Country Status (2)

Country Link
US (1) US20200349425A1 (ja)
JP (1) JP7404924B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11281227B2 (en) * 2019-08-20 2022-03-22 Volkswagen Ag Method of pedestrian activity recognition using limited data and meta-learning
US11423264B2 (en) 2019-10-21 2022-08-23 Adobe Inc. Entropy based synthetic data generation for augmenting classification system training data
GB2602630A (en) * 2021-01-05 2022-07-13 Nissan Motor Mfg Uk Limited Traffic light detection
US20230098315A1 (en) * 2021-09-30 2023-03-30 Sap Se Training dataset generation for speech-to-text service
US20240087300A1 (en) * 2022-09-08 2024-03-14 Fraunhofer Usa, Inc. Systematic testing of ai image recognition

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0683795A (ja) * 1992-08-31 1994-03-25 Hitachi Ltd 認識又は診断方法
JP2016161823A (ja) * 2015-03-03 2016-09-05 株式会社日立製作所 音響モデル学習支援装置、音響モデル学習支援方法
JP2018513399A (ja) * 2015-11-25 2018-05-24 バイドゥ ユーエスエー エルエルシーBaidu USA LLC 配置されたエンドツーエンド音声認識
US20190266418A1 (en) * 2018-02-27 2019-08-29 Nvidia Corporation Real-time detection of lanes and boundaries by autonomous vehicles

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015009620A1 (en) * 2013-07-17 2015-01-22 President And Fellows Of Harvard College Systems and methods for keyword determination and document classification from unstructured text
US10210861B1 (en) * 2018-09-28 2019-02-19 Apprente, Inc. Conversational agent pipeline trained on synthetic data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0683795A (ja) * 1992-08-31 1994-03-25 Hitachi Ltd 認識又は診断方法
JP2016161823A (ja) * 2015-03-03 2016-09-05 株式会社日立製作所 音響モデル学習支援装置、音響モデル学習支援方法
JP2018513399A (ja) * 2015-11-25 2018-05-24 バイドゥ ユーエスエー エルエルシーBaidu USA LLC 配置されたエンドツーエンド音声認識
US20190266418A1 (en) * 2018-02-27 2019-08-29 Nvidia Corporation Real-time detection of lanes and boundaries by autonomous vehicles

Also Published As

Publication number Publication date
US20200349425A1 (en) 2020-11-05
JP7404924B2 (ja) 2023-12-26

Similar Documents

Publication Publication Date Title
JP7404924B2 (ja) 自動データ水増しにおけるトレーニング時間の短縮
US11568240B2 (en) Method and apparatus for classifying class, to which sentence belongs, using deep neural network
CN105654946B (zh) 用于语音识别的设备和方法
CN105679317B (zh) 用于训练语言模型并识别语音的方法和设备
US9818409B2 (en) Context-dependent modeling of phonemes
US20160035344A1 (en) Identifying the language of a spoken utterance
US11282524B2 (en) Text-to-speech modeling
KR20200052444A (ko) 신경망을 이용하여 예측 결과를 출력하는 방법, 신경망을 생성하는 방법 및 그 장치들
US11749264B2 (en) System and methods for training task-oriented dialogue (TOD) language models
US20200312324A1 (en) Hybrid arbitration System
KR20200128938A (ko) 모델 학습 방법 및 장치
CN112700778B (zh) 语音识别方法和语音识别设备
CN112528637A (zh) 文本处理模型训练方法、装置、计算机设备和存储介质
US11954202B2 (en) Deep learning based detection of malicious shell scripts
JP2021157792A (ja) 事前トレーニングされた分類器に基づく深層ニューラル・ネットワーク(dnn)予測の検証
Chi et al. Speaker role contextual modeling for language understanding and dialogue policy learning
KR20220130565A (ko) 키워드 검출 방법 및 장치
US11682400B1 (en) Speech processing
Kim et al. Sequential labeling for tracking dynamic dialog states
CN105677636A (zh) 智能问答系统的信息处理方法及信息处理装置
US11996119B2 (en) End-of-talk prediction device, end-of-talk prediction method, and non-transitory computer readable recording medium
EP3267438B1 (en) Speaker authentication with artificial neural networks
US20230130662A1 (en) Method and apparatus for analyzing multimodal data
KR102548519B1 (ko) 준합성 데이터 생성 장치 및 데이터 생성 방법
EP3373208A1 (en) Method and system for facilitating reliable pattern detection

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221117

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231025

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231127

R150 Certificate of patent or registration of utility model

Ref document number: 7404924

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150