JP2021507378A - ニューラルネットワークの関数サブネットワークの同時トレーニング - Google Patents

ニューラルネットワークの関数サブネットワークの同時トレーニング Download PDF

Info

Publication number
JP2021507378A
JP2021507378A JP2020532778A JP2020532778A JP2021507378A JP 2021507378 A JP2021507378 A JP 2021507378A JP 2020532778 A JP2020532778 A JP 2020532778A JP 2020532778 A JP2020532778 A JP 2020532778A JP 2021507378 A JP2021507378 A JP 2021507378A
Authority
JP
Japan
Prior art keywords
network
values
value
subnet
artificial neural
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
JP2020532778A
Other languages
English (en)
Other versions
JP7246392B2 (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.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of JP2021507378A publication Critical patent/JP2021507378A/ja
Application granted granted Critical
Publication of JP7246392B2 publication Critical patent/JP7246392B2/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/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/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

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

既知関数を実施する第1サブネットワーク[311〜315]と、未知関数を実施する第2サブネットワーク[310]と、を含む人工ニューラルネットワーク[200]がトレーニングされる。第1サブネットワークは、対応する既知のトレーニングデータセットで個別に並行してトレーニングされ、第1サブネットワークを定義する第1パラメータ値が決定される。第1サブネットワークは、処理システム内の複数の処理要素で実行されている。ネットワークトレーニングデータセットからの入力値[320,325]が、トレーニングされた第1サブネットワークを含む人工ニューラルネットワークに提供される。人工ニューラルネットワークによって生成された出力値[335]を、ネットワークトレーニングデータセットのラベル付き出力値と比較することによって、誤差値が生成される。誤差値を逆伝播して、第1パラメータ値を変更することなく、第2サブネットワークを定義する第2パラメータ値を変更することによって、第2サブネットワークがトレーニングされる。【選択図】図2

Description

ディープニューラルネットワーク(DNN)は、画像認識、自然言語処理、ゲームプレイ等のタスクを実行する方法を学習することができる人工ニューラルネットワーク(ANN)のクラスである。DNNアーキテクチャは、入力ボリューム(デジタル画像等)を出力ボリューム(デジタル画像内で検出されたラベル付き特徴等)に変換する関数を実施する多数の層を含む。例えば、DNNの層は、畳み込みニューラルネットワーク(CNN)を表す畳み込み層、プーリング層、全結合層に分離することができる。畳み込み層、プーリング層、全結合層の複数のセットを交互に配置して、完成したDNNを形成することができる。例えば、DNN内では、畳み込み層のセットは、入力を受信して、プーリング層のセットに出力を提供し、プーリング層のセットは、別の畳み込み層のセットに出力を提供する。畳み込み層の第2セットは、プーリング層の別のセットに出力を提供し、プーリング層の別のセットは、出力ボリュームを生成する全結合層の1つ以上のセットに出力を提供する。DNNの層によって実施される関数は、陽関数(explicit)(すなわち、既知関数若しくは所定関数)又は陰関数(hidden)(すなわち、未知関数)である。CNNは、複数の隠れ層を含むタスクで深層学習を行うディープニューラルネットワーク(DNN)である。例えば、コンピュータビジョンを実施するのに使用されるDNNは、ビジョンフローの階層に、陽関数(方向マップ等)及び陰関数を含む。
添付の図面を参照することにより、本開示をより良く理解することができ、その多くの特徴及び利点が当業者に明らかになる。異なる図面で同じ符号を使用している場合、類似又は同一のアイテムを示す。
いくつかの実施形態による、処理システムのブロック図である。 いくつかの実施形態による、畳み込み層を含み、画像認識等のタスクを実行するようにトレーニングされたディープニューラルネットワーク(DNN)を示すブロック図である。 いくつかの実施形態による、既知関数を実施するサブネットワークも含む人工ニューラルネットワークのインスタンス内で未知関数を実施するサブネットワークのトレーニングを示すブロック図である。 いくつかの実施形態による、品質保証ステップを行うように実行される図3に示すCNNのインスタンスを示すブロック図である。 いくつかの実施形態による、既知関数を実施するサブネットワークも含む人工ニューラルネットワークのカットアウト部分(cutout portion)で未知関数を実施するサブネットワークのトレーニングを示すブロック図である。 いくつかの実施形態による、第1サブネットワークを含む人工ニューラルネットワーク(CNN又はDNN等)をトレーニングする方法のフロー図である。 いくつかの実施形態による、既知関数及び未知関数を実施するサブネットワークを含む人工ニューラルネットワーク(CNN又はDNN等)で未知関数を実施するサブネットワークをトレーニングする方法のフロー図である。 いくつかの実施形態による、以前にトレーニングされたサブネットワークに基づいて、ニューラルネットワークを生成しトレーニングする方法のフロー図である。
ディープニューラルネットワーク(DNN)の関数は、異なる層の異なるラメータ集合によって表される。畳み込み層のパラメータは、入力データを入力ボリュームの幅及び高さに亘って畳み込み、フィルタの二次元(2D)活性化マップを生成する学習可能フィルタ(又は、カーネル)のセットを定義する。プーリング層のパラメータは、入力ボリュームをサブ領域に分割する方法を定義する。例えば、プーリング層は、入力画像を非重複矩形のセットに分割し、各サブ領域の最大値を生成するように構成されてもよい。全結合層のパラメータは、前のプーリング層等の前の層の活性化への接続に基づいて、DNNによって実行される高次推論を定義する。DNNのパラメータは、入力ボリュームのセットと、対応する(既知の又はラベル付き)出力値のセットと、とを含むトレーニングデータセットを使用して、DNNをトレーニングすることによって決定される。例えば、顔認識DNNは、顔認識DNNによって他の画像で識別される個人を含むことが分かっている画像を使用して、トレーニングすることができる。トレーニング画像は、1つ以上のラベルでタグ付けされたサンプルのグループとして定義されるラベル付きデータと呼ばれる。トレーニング中、トレーニングデータセットからの入力データがDNNに逐次提供され、DNNによって生成された出力値と既知の出力値との誤差が蓄積される。蓄積された誤差は、DNNのパラメータを変更するために、逆伝播される。このプロセスは、収束基準が満たされるまで繰り返される。しかし、大規模なDNNのトレーニングは、ネットワークのサイズに応じて数時間、数日又は数か月さえ要する場合がある計算負荷の重いタスクである。
人工ニューラルネットワークのトレーニングは、典型的には、逐次プロセスである。逆伝播誤差を使用して、人工ニューラルネットワークを定義するパラメータが変更される。トレーニング済みのパラメータの例には、ネットワーク内のノード間の接続に対する接続重みが挙げられる。トレーニングセットからの連続したサンプルの各々によって生成された逆伝播誤差に基づいてパラメータが変更されるため、逐次プロセスの反復毎に、人工ニューラルネットワークによって実施される関数(例えば、パターン認識)の精度が向上する。従って、ネットワークの各インスタンスは、トレーニングセットの一部のみに基づいてトレーニングされるので、トレーニングデータセットを細分化して、ネットワークの複数のインスタンスを並行してトレーニングすることによって、トレーニングプロセスを並列化することは困難である。よって、トレーニングデータセットのサブ集合を使用して並行してトレーニングされたネットワークのインスタンスを単一のトレーニングされたネットワークに統合しても、全てのトレーニングデータセットを使用して逐次的にトレーニングされたネットワークの精度で、その関数を実行するネットワークにはならない可能性がある。
従来の逐次トレーニングプロセスにおけるこれらの欠点は、既知関数を実施する(従って、対応する既知のトレーニングデータセットを使用してトレーニングすることができる)第1サブネットワークと、対応するトレーニングデータセットを有しない未知関数を実施する第2サブネットワークと、を含む人工ニューラルネットワーク(CNN又はDNN等)のトレーニングを並列化することによって対処される。第1サブネットワークは、既知のトレーニングデータセットで別々に並行してトレーニングされる。次に、ネットワークトレーニングデータセットからの入力値を人工ニューラルネットワークに提供し、人工ニューラルネットワークの出力値と、ネットワークトレーニングデータセットからのラベル付き出力値との差を表す誤差を蓄積することによって、第1サブネットワーク及び第2サブネットワークを含む人工ニューラルネットワークが、ネットワークトレーニングデータセットでトレーニングされる。蓄積された誤差は、第2サブネットワークのパラメータを変更するために逆伝播される。以前にトレーニングされた第1サブネットワークのパラメータは、人工ニューラルネットワークのトレーニング中に変更されない。このプロセスは、第2サブネットワークのパラメータの収束基準が満たされるまで繰り返される。第1サブネットワーク及び第2サブネットワークは、人工ニューラルネットワークよりも大幅に小さく、したがって、第1サブネットワーク及び第2サブネットワークを個別にトレーニングすることは、人工ニューラルネットワークをトレーニングするよりも著しく高速である。
トレーニングされた第1サブネットワーク及び第2サブネットワークに対して決定されたパラメータ値が与えられると、人工ニューラルネットワークのパラメータをトレーニングするために品質保証ステップが実行される。品質保証ステップの間、トレーニングデータセットの入力値が、第1サブネットワーク及び第2サブネットワークの変更されたパラメータによって定義された人工ニューラルネットワークのインスタンスに提供される。人工ニューラルネットワークによって生成された誤差値は、人工ニューラルネットワーク内の第1サブネットワーク及び第2サブネットワークを定義するパラメータを変更するために逆伝播され、収束基準が満たされるまでプロセスが繰り返される。別々にトレーニングされた第1サブネットワーク及び第2サブネットワークのパラメータ値を使用して品質保証ステップを開始することは、(逆伝播を使用して人工ニューラルネットワーク全体をトレーニングする技術と比べて)品質保証ステップの収束性を早めることが期待される。これは、トレーニングされた第1サブネットワーク及び第2サブネットワークのパラメータ値は、任意又はランダムに選択されたパラメータ値等のパラメータの他の可能な初期値よりも完成した(complete)ニューラルネットワークの収束値にかなり近いことが予想されるからである。
図1は、いくつかの実施形態による、処理システム100のブロック図である。処理システム100は、ダイナミックランダムアクセスメモリ(DRAM)等の非一時的なコンピュータ可読媒体を使用して実施されるメモリ105又は他のストレージコンポーネントを含むか、メモリ105又は他のストレージコンポーネントへのアクセスを有する。しかし、メモリ105は、スタティックランダムアクセスメモリ(SRAM)、不揮発性RAM等を含む他のタイプのメモリを使用して実装されてもよい。また、処理システム100は、メモリ105等のように処理システム100に実装されたエンティティ間の通信をサポートするバス110を含む。処理システム100のいくつかの実施形態は、他のバス、ブリッジ、スイッチ、ルータ等を含むが、明確にするために図1に示されていない。
処理システム100は、ディスプレイ120上に表示するための画像をレンダリングするように構成されたグラフィックス処理装置(GPU)115を含む。例えば、GPU115は、オブジェクトをレンダリングして、ディスプレイ120に提供する画素値を生成し、ディスプレイ120は、画素値を使用して、レンダリングされたオブジェクトを表す画像を表示する。GPU115のいくつかの実施形態は、汎用コンピューティングにも使用することができる。図示した実施形態では、GPU115は、命令を同時に又は並行して実行するように構成された複数の処理要素116,117,118(本明細書では「処理要素116〜118」と総称する)を実装する。図示した実施形態では、GPU115は、バス110を介してメモリ105と通信する。しかし、GPU115のいくつかの実施形態は、直接接続を介して、又は、他のバス、ブリッジ、スイッチ、ルータ等を介して、メモリ105と通信する。GPU115は、メモリ105に記憶された命令を実行することができ、GPU115は、実行された命令の結果等の情報をメモリ105に記憶することができる。例えば、メモリ105は、GPU115によって実行されるプログラムコードからの命令のコピー125を記憶することができる。
また、処理システム100は、本明細書では「処理要素131〜133」と総称する複数の処理要素131,132,133を実装する中央処理装置(CPU)130を含む。処理要素131〜133は、命令を同時に又は並行して実行するように構成されている。CPU130は、バス110に接続されており、バス110を介してGPU115及びメモリ105と通信することができる。CPU130は、メモリ105に記憶されたプログラムコード135等の命令を実行することができ、CPU130は、実行された命令の結果等の情報をメモリ105に記憶することができる。また、CPU130は、GPU115にドローコールを発行することによって、グラフィック処理を開始することができる。
入出力(I/O)エンジン140は、キーボード、マウス、プリンタ、外部ディスク等の処理システム100の他の要素と同様に、ディスプレイ120に関連する入出力動作を処理する。I/Oエンジン140は、I/Oエンジン140がメモリ105、GPU115又はCPU130と通信できるように、バス110に接続されている。図示した実施形態では、I/Oエンジン140は、コンパクトディスク(CD)、デジタルビデオディスク(DVD)等の非一時的なコンピュータ可読媒体を使用して実装される外部ストレージコンポーネント145に記憶された情報を読み出すように構成されている。また、I/Oエンジン140は、GPU115又はCPU130による処理の結果等の情報を外部ストレージコンポーネント145に書き込むことができる。
CNN又はDNN等の人工ニューラルネットワークは、対応するパラメータセットを使用して構成されたプログラムコードとして表される。従って、人工ニューラルネットワークを、GPU115又はCPU130、或いは、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、メモリ内処理(PIM)等を含む他の処理装置上で実行することができる。人工ニューラルネットワークが、対応する既知のデータセットを使用してトレーニングすることができる既知関数を実施する場合、GPU115又はCPU130上で実行される人工ニューラルネットワークに既知のトレーニングデータセットの入力値を提供し、人工ニューラルネットワークの出力値と、既知のトレーニングデータセットのラベル付き出力値とを比較することによって、人工ニューラルネットワークがトレーニングされる(すなわち、人工ニューラルネットワークを定義するパラメータの値が確立される)。比較に基づいて誤差値が特定され、人工ニューラルネットワークを定義するパラメータの値を変更するために逆伝播される。このプロセスは、パラメータの値が収束基準を満たすまで繰り返される。
ただし、本明細書で説明するように、人工ニューラルネットワークは、多くの場合、既知関数(又は、陽関数)を実行するサブネットワークと、未知関数(又は、陰関数)を実行するサブネットワークと、から構成されている。既知関数及び未知関数を実施するサブネットワークを含む人工ニューラルネットワークを、ネットワークトレーニングデータセットで逐次トレーニングすることは、時間及びリソースを多く使用するプロセスである。人工ニューラルネットワークのトレーニングによって消費される時間及びリソースを低減するために、人工ニューラルネットワークは、既知関数(対応する既知のトレーニングデータセットを有する)を実行する第1サブネットワークと、未知関数を実行し、したがって既知のトレーニングデータセットを有しない第2サブネットワークと、に細分化される。第1サブネットワークは、対応する既知のトレーニングデータセットに基づいて、個別に並行してトレーニングされる。例えば、第1サブネットワークの別々のインスタンスは、GPU115内の処理要素116〜118、CPU130内の処理要素131〜133、又は、全ての処理要素116〜118,131〜133から得られる組み合わせで同時に実行される。いくつかの実施形態では、単一の第1サブネットワークの複数のインスタンスを処理要素で同時にトレーニングすることができ、次いで、人工ニューラルネットワークに統合するために最適にトレーニングされたインスタンスが選択される。また、第1サブネットワークの別々のインスタンスを、既知関数の様々バリエーションに対してトレーニングすることもできる。
第1サブネットワークがトレーニングされると、人工ニューラルネットワークは、ネットワークトレーニングデータセットでトレーニングされる。第1サブネットワークのパラメータは、既知のデータセットに基づいて第1サブネットワークをトレーニングすることによって正確に定義されることが期待されるので、当該パラメータは、トレーニングのこの段階では一定に保持される。ネットワークトレーニングデータセットからの入力値は、処理要素116〜118,131〜133のうち何れか、いくつか又は全てで実行されている人工ニューラルネットワークに提供される。人工ニューラルネットワークの出力値と、ネットワークトレーニングデータセットからのラベル付き出力値と、を比較することによって、誤差値が生成される。誤差値は、逆伝播され、第2サブネットワークのパラメータを変更するために使用される。このプロセスは、第2サブネットワークを定義するパラメータの値が収束基準を満たすまで繰り返される。例えば、第2サブネットワークを定義するパラメータの値は、2つの反復間でパラメータの値の変化量が閾値を下回ると、収束する。人工ニューラルネットワークを定義するパラメータ(例えば、第1サブネットワーク及び第2サブネットワークを定義するパラメータ)の収束値は、メモリ105又は外部ストレージコンポーネント145等の非一時的なコンピュータ可読媒体に記憶される。いくつかの実施形態では、第1サブネットワーク及び第2サブネットワークのパラメータの記憶された値は、非一時的なコンピュータ可読媒体から読み出され、トレーニングされてもされなくてもよい他のサブネットワークと潜在的に組み合わせて他のニューラルネットワークを構築するために使用される。
第1サブネットワーク及び第2サブネットワークを定義するパラメータの値が決定されると、完成した人工ニューラルネットワークに対して品質保証ステップが実行される。人工ニューラルネットワークのインスタンスは、GPU115又はCPU130で実行される。インスタンスは、第1サブネットワーク及び第2サブネットワークを完成した人工ニューラルネットワークに統合することによって定義される。人工ニューラルネットワークのインスタンスに入力値が提供され、人工ニューラルネットワークを定義するパラメータの現在値に基づいて、対応する出力値が生成される。出力値と、トレーニングデータセットのラベル付き出力値とを比較することによって、誤差値が決定される。誤差値は、逆伝播され、人工ニューラルネットワーク内の第1サブネットワーク及び第2サブネットワークを定義するパラメータの値を変更するために使用される。このプロセスは、人工ニューラルネットワークを定義するパラメータの値が収束基準を満たすまで繰り返される。次に、人工ニューラルネットワークは、人工ニューラルネットワークに割り当てられたタスクを実行するためにトレーニングされると考えられる。いくつかの実施形態では、第1サブネットワークの同時トレーニング、第2サブネットワーク内の未知関数のトレーニング、及び、その後の人工ニューラルネットワークの品質保証トレーニングは、人工ニューラルネットワークをトレーニングするために1回以上繰り返される。
図2は、いくつかの実施形態による、画像認識等のタスクを実行するようにトレーニングされたディープニューラルネットワーク(DNN)200を示すブロック図である。DNN200は、図1に示すGPU115内の処理要素116〜118、又は、CPU130内の処理要素131〜133で実行される。DNN200は、画像210の一部205等の入力値を受信して、DNN200で実施される関数及び当該関数を定義するパラメータの値に基づいて出力値215を生成するように構成されている。
DNN200は、1つ以上のトレーニングデータセットに基づいてトレーニングされたパラメータのセットによって定義された畳み込み関数を実施する畳み込み層220を含む。パラメータには、小さい受容野を有し、畳み込み層220の入力ボリュームの全深さ(full depth)に広がる学習可能フィルタ(又は、カーネル)のセットが含まれている。また、パラメータには、畳み込み層220の出力ボリュームのサイズを制御する深さパラメータ、ストライドパラメータ及びゼロパディングパラメータが含まれてもよい。畳み込み層220は、入力値に対して畳み込み演算を適用し、畳み込み演算の結果をDNN200内の後続の層に提供する。例えば、画像210の一部205は、畳み込み層220への入力225として提供され、畳み込み層220は、パラメータのセットに基づいて入力225に対して畳み込み演算を適用して、対応する出力値230を生成する。いくつかの実施形態では、畳み込み層220は、DNN200のサブネットワークとして識別される。この場合、サブネットワークは、畳み込みニューラルネットワーク(CNN)を表す。しかしながら、畳み込み層220は、DNN200のより大きなサブネットワークの一部であってもよいし、畳み込み層220は、DNN200の複数のサブネットワークにさらに細分化されてもよい。
畳み込み層220によって生成された結果は、DNN200内のプーリング層235に提供される。プーリング層235は、畳み込み層220におけるニューロンクラスタの出力を、プーリング層235から出力されるより少ない数のニューロンクラスタに組み合わせる。プーリング層235は、通常、既知関数(又は、陽関数)を実施する。例えば、最大プーリングを実施するプーリング層235は、畳み込み層220から出力されたクラスタのニューロンの値の最大値を、プーリング層235から出力される単一のニューロンに割り当てることができる。別の例では、平均プーリングを実施するプーリング層235は、畳み込み層220から出力されるクラスタのニューロンの値の平均値を、プーリング層235から出力される単一のニューロンに割り当てることができる。従って、プーリング層235の既知関数(又は、陽関数)は、所定のトレーニングデータセットを使用してトレーニングすることができる。いくつかの実施形態では、プーリング層235は、DNN200のサブネットワークとして識別される。しかしながら、プーリング層235は、DNN200のより大きなサブネットワークの一部であってもよいし、プーリング層235は、DNN200の複数のサブネットワークにさらに細分化されてもよい。
図示した実施形態では、DNN200は、プーリング層235から入力を受信する追加の畳み込み層240と、追加の畳み込み層240から入力を受信する追加のプーリング層245と、を含む。しかしながら、追加の畳み込み層240及び追加のプーリング層245は、オプションであり、DNN200のいくつかの実施形態には存在しない。さらに、DNN200のいくつかの実施形態は、より多数の畳み込み層及びプーリング層を含むことができる。追加の畳み込み層240及び追加のプーリング層245は、DNN200のサブネットワーク、DNN200のサブネットワークの一部として識別されてもよいし、DNN200の複数のサブネットワークに細分化されてもよい。
追加のプーリング層245からの出力は、全結合層250,255に提供される。全結合層250,255内のニューロンは、追加のプーリング層245又は他の全結合層等の別の層内の全てのニューロンに結合される。全結合層250,255は、通常、出力値215を生成する高次推論を表す機能を実施する。例えば、DNN200が画像認識を実行するようにトレーニングされた場合、全結合層250,255は、DNN200によって「認識」された画像の部分にラベル付けする機能を実施する。ラベルの例には、画像210内で顔が検出された人の名前、画像内で検出されたオブジェクトのタイプ等が挙げられる。全結合層250,255で実施される関数は、本明細書で説明するように、トレーニングデータセットを使用して決定されたパラメータの値で表される。全結合層250,255は、DNN200のサブネットワーク又はDNN200のサブネットワークの一部として識別されてもよいし、DNN200の複数のサブネットワークに細分化されてもよい。
図3は、いくつかの実施形態による、既知関数を実施するサブネットワークも含む人工ニューラルネットワークのインスタンス300内で未知関数を実施するサブネットワークのトレーニングを示すブロック図である。インスタンス300は、図1に示す処理要素116〜118,131〜133等の処理要素で実行される。DNNは、相互接続されたサブネットワーク310,311,312,313,314,315を使用して実施され、これらは、本明細書で「サブネットワーク310〜315」と総称される。サブネットワーク310〜315は、サブネットワーク310〜315を特徴付けるパラメータの値によって定義される異なる関数を実施する。図示した実施形態では、サブネットワーク310は、未知関数を実施するので、既知のトレーニングデータセットを有しない。未知関数を実施する単一のサブネットワーク310が図3に示されているが、人工ニューラルネットワークのいくつかの実施形態は、1つ以上の未知関数を実施する複数のサブネットワークを含む。サブネットワーク311〜315は、対応する既知のトレーニングデータセットを有する既知関数を実施する。従って、サブネットワーク311〜315は、対応する既知のトレーニングデータセットに基づいて、個別に並行してトレーニングされている。
DNNのインスタンス300は、入力値320,325と、ラベル付き出力値330と、を含むネットワークトレーニングデータセットを使用してトレーニングされる。DNNのインスタンス300は、入力値320,325を受信して、出力値335を生成することができる。次に、出力値335を、ラベル付き出力値330と比較することによって、DNNのインスタンス300の誤差値が決定される。サブネットワーク310は、実線で示すように、トレーニングサブネットワークとして識別され、つまり、サブネットワーク310を定義するパラメータが、逆伝播された誤差値に基づいて変更されることを意味する。サブネットワーク311〜315は、破線で示すように、非トレーニングサブネットワークとして識別され、つまり、サブネットワーク311〜315を定義するパラメータが、サブネットワーク311〜315の関数に関連する既知のトレーニングデータセットに基づいて事前にトレーニングされて得られたものであるため、逆伝播された誤差値に基づいて変更されないことを意味する。
次に、DNNのインスタンス300によって生成される誤差値は、トレーニングサブネットワーク310を定義するパラメータの不正確な値によって生成されると想定して、トレーニングサブネットワーク310がトレーニングされる。従って、パラメータの値は、後続の反復中に生成される誤差値を低減するために、現在の反復中に生成される誤差値に基づいて変更される。他の(非トレーニング)サブネットワーク311〜315を定義するパラメータの値は、トレーニングプロセスの間、一定に保持される。例えば、サブネットワーク311〜315を定義するパラメータの値を一定に保持しながら、DNNのインスタンス300内のサブネットワーク310を定義するパラメータの値が、DNNのインスタンス300によって生成される誤差値を低減するように繰り返し変更される。
図4は、いくつかの実施形態による、品質保証ステップを行うように実行する図3に示すDNNのインスタンス400を示すブロック図である。インスタンス400は、図1に示す処理要素116〜118,131〜133のうち何れか等の処理要素で実行されてもよい。品質保証ステップの間、実線で示すように、全てのサブネットワーク310〜315は、トレーニングサブネットワークとして扱われる。完成したDNNは、以前にトレーニングされたサブネットワーク310〜315(これは、例えば、図3に示すようなものである)を定義するパラメータの値を反復トレーニングプロセスの初期値として使用して、ネットワークトレーニングデータセット320,325,330でトレーニングされる。DNNのインスタンス400は、入力値320,325を受信して、DNNを定義するパラメータ(例えば、サブネットワーク310〜315を定義するパラメータ等)の現在値に基づいて出力値405を生成する。出力値405は、ラベル付き出力値330と比較されて誤差値が決定され、誤差値は、逆伝播され、DNNを定義するパラメータ値を変更するために使用される。このプロセスは、誤差値の変化率又は誤差値の大きさの測定値が閾値を下回る等の収束基準が満たされるまで繰り返される。
既知関数を実施するサブネットワーク311〜315を個別に並行してトレーニングすることによって、サブネットワークトレーニングを異なる処理要素で同時に又は並行して行うことが可能となるので、サブネットワーク311〜315のトレーニングに必要な時間が短縮される。トレーニングされたサブネットワーク311〜315を定義するパラメータの値は、例えば図4に示すインスタンス400を用いて、トレーニングデータセットの入力値320,325及び出力値330を使用して、完成したDNNをトレーニングすることによって決定されるパラメータの値に非常に近い可能性がある。従って、完成したDNNのトレーニングプロセス(サブネットワーク310〜315のトレーニング及び品質保証ステップの実行を含む)の収束は、パラメータの任意の又はランダムな初期値を使用してトレーニングデータセットの入力値320,325及び出力値330で完成したDNNをトレーニングする従来の実施方法よりも、消費する時間、エネルギー及びリソースが少ないと期待される。
図5は、いくつかの実施形態による、既知関数を実施するサブネットワークも含む人工ニューラルネットワークのカットアウト部分500内で未知関数を実施するサブネットワークのトレーニングを示すブロック図である。カットアウト部分500は、図1に示す処理要素116〜118,131〜133等の処理要素で実行される。人工ニューラルネットワークのカットアウト部分500は、相互接続されたサブネットワーク510,511,512,513,514,515,516を使用して実施され、これらは、本明細書で「サブネットワーク510〜516」と総称される。サブネットワーク510〜516は、サブネットワーク510〜516を特徴付けるパラメータの値によって定義される異なる関数を実施する。図示した実施形態では、サブネットワーク510は、未知関数を実施するので、既知のトレーニングデータセットを有しない。未知関数を実施する単一のサブネットワーク510が図5に示されているが、人工ニューラルネットワークのいくつかの実施形態は、1つ以上の未知関数を実施する複数のサブネットワークを含む。サブネットワーク511〜516は、対応する既知のトレーニングデータセットを有する既知関数を実施する。従って、サブネットワーク511〜516は、対応する既知のトレーニングデータセットに基づいて、個別に並行してトレーニングされている。
サブネットワーク510は、サブネットワーク511〜516によって実質的に包含される。本明細書で使用する場合、「実質的に包含される」という語句は、サブネットワーク510への入力が1つ以上のサブネットワーク511〜516によって排他的に(又は、主に)提供され、サブネットワーク510からの出力がサブネットワーク511〜516以外の何れのサブネットワークに全く公開されない(又は、少数の出力がサブネットワーク511〜516以外の任意のサブネットワークに公開される)ことを示す。この場合、サブネットワーク510は、サブネットワーク511〜516用の既知のトレーニングデータセットから構成された、組み合わされたトレーニングデータセットに基づいてトレーニングされる。例えば、サブネットワーク511〜516は、本明細書で説明するように、これらの対応する既知のトレーニングデータセットに基づいて、個別に並行してトレーニングされ得る。次に、以前にトレーニングされたサブネットワーク511〜516のパラメータを一定に保持しながら、組み合わされたトレーニングデータセットに基づいてカットアウト部分500をトレーニングすることによって、サブネットワーク510がトレーニングされる。カットアウト部分500は、トレーニングされると、完成した人工ニューラルネットワークに統合され、完成した人工ニューラルネットワークは、本明細書で説明するように、ネットワークトレーニングデータセットに基づいてトレーニングされる。
図6は、いくつかの実施形態による、第1サブネットワークを含む人工ニューラルネットワーク(CNN又はDNN等)をトレーニングする方法600のフロー図である。方法600は、図1に示す処理システム100のいくつかの実施形態で実施される。
ブロック605において、人工ニューラルネットワークは、人工ニューラルネットワークにおいて既知関数を実行するサブネットワークと、未知関数を実行するサブネットワークと、に区分される。関数の定義は厳密ではない。DNNアーキテクトは、サブネットワーク又は他の合理的な基準に基づいて実行されるネットワークトポロジ又は内部プリミティブ動作に基づいて、関数を定義することができる。例えば、図2に示す畳み込み層220、プーリング層235、畳み込み層240、プーリング層245、全結合層250,255を含むディープニューラルネットワーク200等の人工ニューラルネットワークは、畳み込み層220を含む第1サブネットワークと、プーリング層235を含む第2サブネットワークと、畳み込み層240を含む第3サブネットワークと、プーリング層245を含む第4サブネットワークと、全結合層250を含む第5サブネットワークと、全結合層255を含む第6サブネットワークと、に区分される。また、粒度のより高い又はより低い層でのニューラルネットワークの他の区分も可能である。例えば、層の区分は、畳み込み層220等の個々の層内で行われてもよい。
既知関数を有する第1サブネットワークは、図1に示す処理要素116〜118,131〜133等の異なる処理要素で個別に並行してトレーニングされる。第1サブネットワークは、第1サブネットワークで実施される関数に対応する既知のデータセットでトレーニングされる。図示した実施形態では、トレーニングサブネットワークを定義するパラメータの値は、各サブネットワークに特有のトレーニングデータセットに基づいて変更される。サブネットワークの関数(入力に応じて生成される出力の値)も既知であるため、このトレーニングデータセットは既知のものである。例えば、ブロック610において、第1の既知のサブネットワークを定義するパラメータの値は、このサブネットワークの出力値と、このサブネットワークのトレーニングデータセットのラベル付き出力値と、を比較することによって決定される誤差値に基づいて変更される。ブロック615において、第2の既知のサブネットワークを定義するパラメータの値は、第2サブネットワークの出力値と、第2の既知のサブネットワークのトレーニングデータセットのラベル付き出力値と、を比較することによって決定される誤差値に基づいて変更される。ブロック620において、第Nの既知のサブネットワークを定義するパラメータの値は、第Nサブネットワークの出力値と、第Nサブネットワークの既知のトレーニングデータセットのラベル付き出力値と、を比較することによって決定される誤差値に基づいて変更される。ブロック610,615,620で表されるプロセスは、同時に又は並行して実行される。
ブロック625において、未知関数を実施する第2サブネットワークのパラメータは、人工ニューラルネットワーク用のネットワークトレーニングデータセットに基づいて変更される。人工ニューラルネットワーク内の第1サブネットワークを定義するパラメータの値は、ブロック610,615,620で決定されたパラメータの値に等しく設定され、これにより、第1サブネットワークは、人工ニューラルネットワーク全体に再び統合される。第2サブネットワークを定義するパラメータの値は、ランダム若しくは任意の値に設定され、又は、初期値を設定するための任意の他の基準を使用して設定される。ネットワークトレーニングデータセットからの入力値は、人工ニューラルネットワークに提供され、人工ニューラルネットワークは、パラメータの現在値に基づいて出力値を生成する。出力値は、ネットワークトレーニングデータセットのラベル付き出力値と比較されて誤差値が決定され、誤差値が逆伝播され、第2サブネットワークを定義するパラメータの値が変更される。第1サブネットワークを定義するパラメータは、このプロセスの間、一定に保持され、このプロセスは、第2ネットワークの収束基準が満たされるまで繰り返される。
ブロック630において、品質保証ステップが実行される。品質保証ステップでは、ネットワークトレーニングデータセットからの入力値が、人工ニューラルネットワークに提供され、人工ニューラルネットワークは、パラメータの現在値に基づいて出力値を生成する。出力値は、ネットワークトレーニングデータセットのラベル付き出力値と比較され、誤差値が決定される。ブロック630で実行される品質保証ステップは、誤差値を逆伝播して、第1サブネットワーク及び第2サブネットワークの両方を定義するパラメータの値を変更するので、ブロック625で実行されるステップとは異なる。品質保証ステップは、人工ニューラルネットワークの収束基準が満たされるまで繰り返される。プロセスが収束すると、第1サブネットワーク及び第2サブネットワークを定義するパラメータの値は、図1に示すメモリ105又は外部ストレージコンポーネント145等の非一時的なコンピュータ可読媒体を使用して実装されるストレージコンポーネントに記憶される。
図7は、いくつかの実施形態による、既知関数及び未知関数を実施するサブネットワークを含む人工ニューラルネットワーク(CNN又はDNN等)内で未知関数を実施するサブネットワークをトレーニングする方法700のフロー図である。方法700は、図1に示す処理システム100のいくつかの実施形態で実施される。方法700は、図6に示す方法600のいくつかの実施形態を実施するために使用される。
ブロック705において、人工ニューラルネットワークは、トレーニングデータセットからの入力トレーニング値と、ニューラルネットワークを構成するサブネットワークのパラメータの現在値と、に基づいて出力値を生成する。本明細書で説明するように、人工ニューラルネットワーク内で未知関数を実施するサブネットワークは、トレーニングサブネットワークとして識別される。
ブロック710において、人工ニューラルネットワークの出力値は、トレーニングデータセットのラベル付き出力値と比較される。誤差値は、比較に基づいて決定される。例えば、誤差値は、出力値とラベル付き出力値との比較によって示されるように、1つ以上のトレーニング画像において、人工ニューラルネットワークによって正しく識別された人又はオブジェクトの割合を示すことができる。
ブロック715において、トレーニングサブネットワーク(すなわち、未知関数を実施したサブネットワーク)を定義するパラメータの値は、誤差値に基づいて変更される。人工ニューラルネットワーク内で既知関数を実施する他のサブネットワークを定義するパラメータの値が一定に保持され、すなわち、トレーニングサブネットワークを定義するパラメータの値は、トレーニングサブネットワークのみを定義するパラメータの誤った値によって誤差が生じているという想定の下で変更される。
判別ブロック720において、トレーニングサブネットワークを定義するパラメータの値に関して収束基準が評価される。例えば、方法700の現在の反復で決定されたパラメータの値を、方法700の以前の反復で決定されたパラメータの値と比較することができる。現在の反復と以前の反復との値の変化量が閾値を下回ると、パラメータの値は収束基準を満たす。別の実施形態では、ネットワークの出力をラベル付きデータと比較する等の他の収束基準が適用されてもよい。この場合、収束の検査(ブロック720)は、ブロック710とブロック715との間に配置されてもよい。収束基準が満たされない場合、方法700は、ブロック705に戻り、パラメータの変更された値を使用して方法700の別の反復を開始する。変更は、逆伝播、又は、ニューラルネットワークのトレーニングに使用される任意の他の方法によって行われる。収束基準が満たされると、方法700は、ブロック725に進む。
ブロック725において、トレーニングサブネットワークを定義するパラメータの収束値が、非一時的なコンピュータ可読媒体を使用して実装されるストレージコンポーネントに記憶される。例えば、収束値は、図1に示すメモリ105又は外部ストレージコンポーネント145に記憶される。記憶された値は、ニューラルネットワークに対して実行される後続の品質保証ステップでアクセスされてもよい。本明細書で説明するように、記憶された値にアクセスし、他のサブネットワークの他のパラメータ値と組み合わせて、新たなニューラルネットワークを形成することもできる。
図8は、いくつかの実施形態による、以前にトレーニングされたサブネットワークに基づいて、ニューラルネットワークを生成し、トレーニングする方法800のフロー図である。図示した実施形態では、第1ニューラルネットワークは、複数のサブネットワークに細分化されており、ネットワークトレーニングデータセットを使用してトレーニングされている。例えば、第1ニューラルネットワークは、図6に示す方法600及び図7に示す方法700の実施形態に従ってトレーニングされてもよい。第1ニューラルネットワーク内のサブネットワークを定義するパラメータの値は、図1に示す外部ストレージコンポーネント145等の非一時的なコンピュータ可読媒体に記憶されている。第1ニューラルネットワークのトレーニングは、図1に示す処理システム100又は別の処理システムによって実行される。
ブロック805において、第1ニューラルネットワークのサブネットワークのサブセットを定義するパラメータの値が、非一時的なコンピュータ可読記憶媒体から読み出される。いくつかの実施形態では、他のニューラルネットワークのサブネットワークを定義するパラメータの値も、非一時的なコンピュータ可読記憶媒体から読み出される。
ブロック810において、サブネットワークを組み合わせて、第2ニューラルネットワークが形成される。本明細書で説明するように、サブネットワークを組み合わせて第2ニューラルネットワークを形成することは、第2ニューラルネットワークを表すようにプログラムコード及びパラメータ値を設定すること、例えば、サブネットワークのセットの出力をサブネットワークの別のセットの入力に接続すること、を含む。複数のネットワークからのサブネットワークを新たなネットワークに統合するために、様々な基準(例えば、機能統合、情報データストリーム、リアルタイム態様及び他の多くの基準)が選択されてもよい。よって、第2ニューラルネットワークを、1つ以上の処理要素で実行することができる。例えば、第1ニューラルネットワークのサブネットワークのサブセットを定義するパラメータの値と、利用可能な場合には他のニューラルネットワークのサブネットワークを定義するパラメータの値と、を相互接続して第2ニューラルネットワークを構築し、その結果、第2ニューラルネットワークを、図1に示す処理要素116〜118,131〜133等の1つ以上の処理要素で実行することができる。
ブロック815において、第2ニューラルネットワークは、ネットワークトレーニングデータセットに基づいてトレーニングされる。第2ニューラルネットワークを定義するパラメータの値は、第2ニューラルネットワークを構成するサブネットワークを定義するパラメータの対応する値に等しく初期設定される。次に、第2ニューラルネットワークは、図6に示す方法600及び図7に示す方法700のいくつかの実施形態を使用してトレーニングされてもよい。サブネットワークを定義するパラメータの以前のトレーニングで得られた値を使用してトレーニングプロセスを開始することによって、トレーニングプロセスを早めることができ、よって、第2ニューラルネットワークを定義するパラメータの任意又はランダムな値を使用して第2ニューラルネットワークのトレーニングプロセスを開始する場合と比較して、トレーニングにかかる時間及びリソースを低減することができる。
第1態様では、方法は、既知関数を実施する第1サブネットワークと、未知関数を実施する第2サブネットワークと、を含む人工ニューラルネットワークをトレーニングすることを含み、方法は、第1サブネットワークを、対応する既知のトレーニングデータセットで個別に並行してトレーニングして、第1サブネットワークを定義する第1パラメータ値を決定することと、ネットワークトレーニングデータセットからの入力値を、トレーニングされた第1サブネットワークを含む人工ニューラルネットワークに提供することと、人工ニューラルネットワークによって生成された出力値をネットワークトレーニングデータセットのラベル付き出力値と比較することによって、誤差値を生成することと、第1パラメータ値を変更することなく、第2サブネットワークを定義する第2パラメータ値を、誤差値を使用して変更することと、第1パラメータ値及び第2パラメータ値を記憶することと、を含む。
第1態様の一実施形態では、方法は、第1サブネットワークをトレーニングすることが、対応する既知のトレーニングデータセットの入力値を第1サブネットワークに同時に提供することと、第1サブネットワークの誤差値を同時に生成することと、第1パラメータ値を同時に変更することと、を含む。一実施形態では、方法は、対応する既知のトレーニングデータセットの入力値を第1サブネットワークに同時に提供することと、第1サブネットワークの誤差値を同時に生成することと、第1サブネットワークを定義する第1パラメータ値を同時に変更することとが、第1パラメータ値の収束基準を満たすまで繰り返し実行される。特定の実施形態では、方法は、第1サブネットワークの第1サブセットに対応する既知のトレーニングデータセットのサブセットから構成されたカットアウトトレーニングセットに基づいて、第2サブネットワークをトレーニングすることを含み、第1サブセットは、第2サブネットワークを含む。
第1態様の別の実施形態では、方法は、ネットワークトレーニングデータセットの入力値を、第1サブネットワーク及び第2サブネットワークの変更されたパラメータ値によって定義された人工ニューラルネットワークのインスタンスに提供することと、人工ニューラルネットワークからの出力値をネットワークトレーニングデータセットのラベル付き出力値と比較することによって、誤差値を生成することと、第1サブネットワーク及び第2サブネットワークを定義する第1パラメータ値及び第2パラメータ値を、誤差値を使用して変更することと、第1サブネットワーク及び第2サブネットワークを定義する変更されたパラメータ値を記憶することと、を含む。特定の実施形態では、方法は、ネットワークトレーニングデータセットの入力値を人工ニューラルネットワークに提供することと、誤差値を生成することと、第1サブネットワーク及び第2サブネットワークを定義する第1パラメータ値を変更することとが、第1パラメータ値の収束基準を満たすまで繰り返し実行される。
第1態様のさらなる実施形態では、方法は、人工ニューラルネットワークの第1サブネットワークのサブセットの記憶されたパラメータ値を読み出すことと、人工ニューラルネットワークの第1サブネットワークのサブセットの記憶されたパラメータ値を使用して、異なる人工ニューラルネットワークのパラメータ値を定義することと、を含む。
第2態様では、処理システムは、複数の処理要素と、入出力エンジンと、を備え、複数の処理要素は、既知関数を実施する第1サブネットワークと、未知関数を実施する第2サブネットワークと、を含む人工ニューラルネットワークをトレーニングするために、第1サブネットワークを、対応する既知のトレーニングデータ集合で個別に並行してトレーニングして、第1サブネットワークを定義する第1パラメータ値を決定することと、ネットワークトレーニングデータセットからの入力値を、トレーニングされた第1サブネットワークを含む人工ニューラルネットワークに提供することと、人工ニューラルネットワークによって生成された出力値をネットワークトレーニングデータセットのラベル付き出力値と比較することによって、誤差値を生成することと、第1パラメータ値を変更することなく、第2サブネットワークを定義する第2パラメータ値を、誤差値を使用して変更することによって、第2サブネットワークをトレーニングすることと、を実行するように構成されており、入出力エンジンは、第1パラメータ値及び第2パラメータ値をストレージコンポーネントに記憶するように構成されている。
第2態様の別の実施形態では、複数の処理要素は、対応する既知のトレーニングデータセットの入力値を第1サブネットワークに同時に提供することと、第1サブネットワークの誤差値を同時に生成することと、第1パラメータ値を同時に変更することと、を実行するように構成されている。特定の実施形態では、複数の処理要素は、対応する既知のトレーニングデータセットの入力値を第1サブネットワークに同時に提供することと、第1サブネットワークの誤差値を同時に生成することと、第1サブネットワークを定義する第1パラメータ値を同時に変更することとを、第1パラメータ値の収束基準が満たされるまで繰り返し実行するように構成されている。さらに特定の実施形態では、複数の処理要素は、第1サブネットワークの第1サブセットに対応する既知のトレーニングデータセットのサブセットから構成されたカットアウトトレーニングセットに基づいて、第2サブネットワークをトレーニングするように構成されており、第1サブセットは、第2サブネットワークを含む。
第2態様のさらなる実施形態では、複数の処理要素は、ネットワークトレーニングデータセットの入力値を、第1サブネットワーク及び第2サブネットワークの変更された第1パラメータ値及び第2パラメータ値によって定義された人工ニューラルネットワークのインスタンスに提供することと、人工ニューラルネットワークからの出力値を、ネットワークトレーニングデータセットのラベル付き出力値と比較することによって、誤差値を生成することと、第1サブネットワーク及び第2サブネットワークを定義する第1パラメータ値及び第2パラメータ値を、誤差値を使用して変更することと、を実行するように構成されている。さらに、入出力エンジンは、第1サブネットワーク及び第2サブネットワークを定義する変更されたパラメータ値を、ストレージコンポーネントに記憶するように構成されている。特定の実施形態では、複数の処理要素は、ネットワークトレーニングデータセットの入力値を人工ニューラルネットワークに提供することと、誤差値を生成することと、第1サブネットワーク及び第2サブネットワークを定義する第1パラメータ値及び第2パラメータ値を変更することとを、第1パラメータ値の収束基準が満たされるまで繰り返し実行するように構成されている。
第2態様のさらに別の実施形態では、入出力エンジンは、人工ニューラルネットワークの第1サブネットワークのサブセットのパラメータ値をストレージコンポーネントから読み出すように構成されており、複数の処理要素のうち少なくとも1つは、人工ニューラルネットワークの第1サブネットワークのサブセットのパラメータ値を使用して、異なる人工ニューラルネットワークのパラメータ値を定義するように構成されている。
第3態様において、方法は、処理システムの入出力エンジンを使用して、既知関数を実施する第1サブネットワークを定義する第1パラメータ値と、未知関数を実施する第2サブネットワークを定義する第2パラメータ値と、を読み出すことを含み、第1サブネットワークは、対応する既知のトレーニングデータセットでトレーニングされている。また、方法は、処理システムにおいて、第1サブネットワーク及び第2サブネットワークを組み合わせて、人工ニューラルネットワークを生成することと、ネットワークトレーニングデータセットからの入力値を人工ニューラルネットワークに提供することと、処理システムにおいて、人工ニューラルネットワークからの出力値を、ネットワークトレーニングデータセットのラベル付き出力値と比較することによって、人工ニューラルネットワークの誤差値を生成することと、処理システムにおいて、第2サブネットワークを定義する第2パラメータ値を、誤差値に基づいて変更することと、を含む。
第3態様の一実施形態では、ネットワークトレーニングデータセットの入力値を人工ニューラルネットワークに提供することと、人工ニューラルネットワークの誤差値を生成することと、第2サブネットワークを定義する第2パラメータ値を変更することとは、第2サブネットワークを定義する第2パラメータ値の収束基準を満たすまで繰り返し実行される。別の実施形態において、方法は、第1パラメータ値及び第2パラメータ値をストレージコンポーネントに記憶することを含む。特定の実施形態では、方法は、ネットワークトレーニングデータセットの入力値を、第2サブネットワークの変更されたパラメータ値によって定義された人工ニューラルネットワークのインスタンスに提供することを含む。また、方法は、人工ニューラルネットワークからの出力値を、ネットワークトレーニングデータセットのラベル付き出力値と比較することによって、誤差値を生成することと、第1サブネットワーク及び第2サブネットワークを定義する第1パラメータ値及び第2パラメータ値を、誤差値を使用して変更することと、を含む。別の特定の実施形態では、方法は、ネットワークトレーニングデータセットの入力値を人工ニューラルネットワークに提供することと、誤差値を生成することと、第1サブネットワーク及び第2サブネットワークを定義する第1パラメータ値及び第2パラメータ値を変更することとが、第1パラメータ値及び第2パラメータ値の収束基準を満たすまで繰り返し実行される。さらに特定の実施形態では、方法は、第1サブネットワーク及び第2サブネットワークを定義する変更されたパラメータ値をストレージコンポーネントに記憶することと、記憶されたパラメータ値のサブセットを使用して、異なる人工ニューラルネットワークのパラメータ値を定義することと、を含む。
いくつかの実施形態では、上記の装置及び技術は、図1〜図7を参照して上述した処理システム等の1つ以上の集積回路(IC)デバイス(集積回路パッケージ又はマイクロチップとも呼ばれる)を含むシステムに実装される。これらのICデバイスの設計及び製造には、電子設計自動化(EDA)及びコンピュータ支援設計(CAD)ソフトウェアツールが使用される。これらのICデバイスは、本明細書で説明する方法を、トランジスタ回路で直接実施してもよいし、当該回路で実行されるプログラマブルコードとして実施してもよい。
コンピュータ可読記憶媒体は、命令及び/又はデータをコンピュータシステムに提供するために、使用中にコンピュータシステムによってアクセス可能な任意の非一時的な記憶媒体又は非一時的な記憶媒体の組み合わせを含む。かかる記憶媒体には、限定されないが、光媒体(例えば、コンパクトディスク(CD)、デジタル多用途ディスク(DVD)、ブルーレイ(登録商標)ディスク)、磁気媒体(例えば、フロッピー(登録商標)ディスク、磁気テープ、磁気ハードドライブ)、揮発性メモリ(例えば、ランダムアクセスメモリ(RAM)、キャッシュ)、不揮発性メモリ(例えば、読み出し専用メモリ(ROM)、フラッシュメモリ)、又は、微小電気機械システム(MEMS)ベースの記憶媒体が含まれ得る。コンピュータ可読記憶媒体は、コンピュータシステムに内蔵されてもよいし(例えば、システムRAM又はROM)、コンピュータシステムに固定的に取り付けられてもよいし(例えば、磁気ハードドライブ)、コンピュータシステムに着脱可能に取り付けられてもよいし(例えば、光学ディスク又はユニバーサルシリアルバス(USB)ベースのフラッシュメモリ)、有線又は無線のネットワークを介してコンピュータシステムに接続されてもよい(例えば、ネットワークアクセス可能なストレージ(NAS))。本明細書で説明するサブネットワーク及びネットワークは、このような記憶媒体に記憶されてもよい。
いくつかの実施形態では、上記の技術のいくつかの態様は、ソフトウェアを実行する処理システムの1つ以上のプロセッサによって実装されてもよい。ソフトウェアは、非一時的なコンピュータ可読記憶媒体に記憶され、又は、非一時的なコンピュータ可読記憶媒体上で有形に具現化された実行可能命令の1つ以上のセットを含む。ソフトウェアは、1つ以上のプロセッサによって実行されると、上記の技術の1つ以上の態様を実行するように1つ以上のプロセッサを操作する命令及び特定のデータを含むことができる。非一時的なコンピュータ可読記憶媒体は、例えば、磁気若しくは光ディスク記憶デバイス、例えばフラッシュメモリ等のソリッドステート記憶デバイス、キャッシュ、ランダムアクセスメモリ(RAM)、又は、他の不揮発性メモリデバイス等を含むことができる。非一時的なコンピュータ可読記憶媒体に記憶された実行可能命令は、ソースコード、アセンブリ言語コード、オブジェクトコード、又は、1つ以上のプロセッサによって解釈若しくは実行可能な他の命令フォーマットであってもよい。
上述したものに加えて、概要説明において説明した全てのアクティビティ又は要素が必要とされているわけではなく、特定のアクティビティ又はデバイスの一部が必要とされない場合があり、1つ以上のさらなるアクティビティが実行される場合があり、1つ以上のさらなる要素が含まれる場合があることに留意されたい。さらに、アクティビティが列挙された順序は、必ずしもそれらが実行される順序ではない。また、概念は、特定の実施形態を参照して説明された。しかしながら、当業者であれば、特許請求の範囲に記載されているような本発明の範囲から逸脱することなく、様々な変更及び変形を行うことができるのを理解するであろう。したがって、明細書及び図面は、限定的な意味ではなく例示的な意味で考慮されるべきであり、これらの変更形態の全ては、本発明の範囲内に含まれることが意図される。
利益、他の利点及び問題に対する解決手段を、特定の実施形態に関して上述した。しかし、利益、利点、問題に対する解決手段、及び、何かしらの利益、利点若しくは解決手段が発生又は顕在化する可能性のある特徴は、何れか若しくは全ての請求項に重要な、必須の、又は、不可欠な特徴と解釈されない。さらに、開示された発明は、本明細書の教示の利益を有する当業者には明らかな方法であって、異なっているが同様の方法で修正され実施され得ることから、上述した特定の実施形態は例示にすぎない。添付の特許請求の範囲に記載されている以外に本明細書に示されている構成又は設計の詳細については限定がない。したがって、上述した特定の実施形態は、変更又は修正されてもよく、かかる変更形態の全ては、開示された発明の範囲内にあると考えられることが明らかである。したがって、ここで要求される保護は、添付の特許請求の範囲に記載されている。

Claims (20)

  1. 既知関数を実施する第1サブネットワークと、未知関数を実施する第2サブネットワークと、を含む人工ニューラルネットワークをトレーニングする方法であって、
    前記第1サブネットワークを、対応する既知のトレーニングデータセットで個別に並行してトレーニングして、前記第1サブネットワークを定義する第1パラメータ値を決定することと、
    ネットワークトレーニングデータセットからの入力値を、トレーニングされた前記第1サブネットワークを含む前記人工ニューラルネットワークに提供することと、
    前記人工ニューラルネットワークによって生成された出力値を前記ネットワークトレーニングデータセットのラベル付き出力値と比較することによって、誤差値を生成することと、
    前記第1パラメータ値を変更することなく、前記第2サブネットワークを定義する第2パラメータ値を、前記誤差値を使用して変更することと、
    前記第1パラメータ値及び前記第2パラメータ値を記憶することと、を含む、
    方法。
  2. 前記第1サブネットワークをトレーニングすることは、前記対応する既知のトレーニングデータセットの入力値を前記第1サブネットワークに同時に提供することと、前記第1サブネットワークの誤差値を同時に生成することと、前記第1パラメータ値を同時に変更することと、を含む、
    請求項1の方法。
  3. 前記対応する既知のトレーニングデータセットの入力値を前記第1サブネットワークに同時に提供することと、前記第1サブネットワークの誤差値を同時に生成することと、前記第1サブネットワークを定義する前記第1パラメータ値を同時に変更することとは、前記第1パラメータ値の収束基準を満たすまで繰り返し実行される、
    請求項2の方法。
  4. 前記第1サブネットワークの第1サブセットに対応する既知のトレーニングデータセットのサブセットから構成されたカットアウトトレーニングセットに基づいて、前記第2サブネットワークをトレーニングすることであって、前記第1サブセットは、前記第2サブネットワークを含む、ことをさらに含む、
    請求項3の方法。
  5. 前記ネットワークトレーニングデータセットの入力値を、前記第1サブネットワーク及び前記第2サブネットワークの前記変更されたパラメータ値によって定義された前記人工ニューラルネットワークのインスタンスに提供することと、
    前記人工ニューラルネットワークからの出力値を、前記ネットワークトレーニングデータセットのラベル付き出力値と比較することによって、誤差値を生成することと、
    前記第1サブネットワーク及び前記第2サブネットワークを定義する前記第1パラメータ値及び前記第2パラメータ値を、前記誤差値を使用して変更することと、
    前記第1サブネットワーク及び前記第2サブネットワークを定義する前記変更されたパラメータ値を記憶することと、をさらに含む、
    請求項1の方法。
  6. 前記ネットワークトレーニングデータセットの入力値を前記人工ニューラルネットワークに提供することと、前記誤差値を生成することと、前記第1サブネットワーク及び前記第2サブネットワークを定義する前記第1パラメータ値を変更することとは、前記第1パラメータ値の収束基準を満たすまで繰り返し実行される、
    請求項5の方法。
  7. 前記人工ニューラルネットワークの前記第1サブネットワークのサブセットの記憶されたパラメータ値を読み出すことと、
    前記人工ニューラルネットワークの前記第1サブネットワークの前記サブセットの記憶されたパラメータ値を使用して、異なる人工ニューラルネットワークのパラメータ値を定義することと、をさらに含む、
    請求項1の方法。
  8. 複数の処理要素と、入出力エンジンと、を備える処理システムであって、
    前記複数の処理要素は、既知関数を実施する第1サブネットワークと、未知関数を実施する第2サブネットワークと、を含む人工ニューラルネットワークをトレーニングするために、
    前記第1サブネットワークを、対応する既知のトレーニングデータ集合で個別に並行してトレーニングして、前記第1サブネットワークを定義する第1パラメータ値を決定することと、
    ネットワークトレーニングデータセットからの入力値を、トレーニングされた第1サブネットワークを含む前記人工ニューラルネットワークに提供することと、
    前記人工ニューラルネットワークによって生成された出力値を前記ネットワークトレーニングデータセットのラベル付き出力値と比較することによって、誤差値を生成することと、
    前記第1パラメータ値を変更することなく、前記第2サブネットワークを定義する第2パラメータ値を、前記誤差値を使用して変更することによって、前記第2サブネットワークをトレーニングすることと、
    を実行するように構成されており、
    前記入出力エンジンは、前記第1パラメータ値及び前記第2パラメータ値をストレージコンポーネントに記憶するように構成されている、
    処理システム。
  9. 前記複数の処理要素は、前記対応する既知のトレーニングデータセットの入力値を前記第1サブネットワークに同時に提供することと、前記第1サブネットワークの誤差値を同時に生成することと、前記第1パラメータ値を同時に変更することと、を実行するように構成されている、
    請求項8の処理システム。
  10. 前記複数の処理要素は、前記対応する既知のトレーニングデータセットの入力値を前記第1サブネットワークに同時に提供することと、前記第1サブネットワークの前記誤差値を同時に生成することと、前記第1サブネットワークを定義する前記第1パラメータ値を同時に変更することとを、前記第1パラメータ値の収束基準が満たされるまで繰り返し実行するように構成されている、
    請求項9の処理システム。
  11. 前記複数の処理要素は、
    前記第1サブネットワークの第1サブセットに対応する既知のトレーニングデータセットのサブセットから構成されたカットアウトトレーニングセットに基づいて、前記第2サブネットワークをトレーニングすることであって、前記第1サブセットは、前記第2サブネットワークを含む、ことを実行するように構成されている、
    請求項10の処理システム。
  12. 前記複数の処理要素は、
    前記ネットワークトレーニングデータセットの入力値を、前記第1サブネットワーク及び前記第2サブネットワークの変更された前記第1パラメータ値及び前記第2パラメータ値によって定義された前記人工ニューラルネットワークのインスタンスに提供することと、
    前記人工ニューラルネットワークからの出力値を、前記ネットワークトレーニングデータセットのラベル付き出力値と比較することによって、誤差値を生成することと、
    前記第1サブネットワーク及び前記第2サブネットワークを定義する前記第1パラメータ値及び前記第2パラメータ値を、前記誤差値を使用して変更することと、
    を実行するように構成されており、
    前記入出力エンジンは、前記第1サブネットワーク及び前記第2サブネットワークを定義する前記変更されたパラメータ値を、前記ストレージコンポーネントに記憶するように構成されている、
    請求項8の処理システム。
  13. 前記複数の処理要素は、前記ネットワークトレーニングデータセットの入力値を前記人工ニューラルネットワークに提供することと、前記誤差値を生成することと、前記第1サブネットワーク及び前記第2サブネットワークを定義する前記第1パラメータ値及び前記第2パラメータ値を変更することとを、前記第1パラメータ値の収束基準が満たされるまで繰り返し実行するように構成されている、
    請求項12の処理システム。
  14. 前記入出力エンジンは、前記人工ニューラルネットワークの前記第1サブネットワークのサブセットのパラメータ値を前記ストレージコンポーネントから読み出すように構成されており、
    前記複数の処理要素のうち少なくとも1つは、前記人工ニューラルネットワークの前記第1サブネットワークの前記サブセットのパラメータ値を使用して、異なる人工ニューラルネットワークのパラメータ値を定義するように構成されている、
    請求項8の処理システム。
  15. 処理システムの入出力エンジンを使用して、既知関数を実施する第1サブネットワークを定義する第1パラメータ値と、未知関数を実施する第2サブネットワークを定義する第2パラメータ値と、を読み出すことであって、前記第1サブネットワークは、対応する既知のトレーニングデータセットでトレーニングされている、ことと、
    前記処理システムにおいて、前記第1サブネットワーク及び前記第2サブネットワークを組み合わせて、人工ニューラルネットワークを生成することと、
    ネットワークトレーニングデータセットからの入力値を前記人工ニューラルネットワークに提供することと、
    前記処理システムにおいて、前記人工ニューラルネットワークからの出力値を、前記ネットワークトレーニングデータセットのラベル付き出力値と比較することによって、前記人工ニューラルネットワークの誤差値を生成することと、
    前記処理システムにおいて、前記第2サブネットワークを定義する前記第2パラメータ値を、前記誤差値に基づいて変更することと、を含む、
    方法。
  16. 前記ネットワークトレーニングデータセットの入力値を前記人工ニューラルネットワークに提供することと、前記人工ニューラルネットワークの前記誤差値を生成することと、前記第2サブネットワークを定義する前記第2パラメータ値を変更することとは、前記第2サブネットワークを定義する前記第2パラメータ値の収束基準を満たすまで繰り返し実行される、
    請求項15の方法。
  17. 前記第1パラメータ値及び前記第2パラメータ値をストレージコンポーネントに記憶することをさらに含む、
    請求項16の方法。
  18. 前記ネットワークトレーニングデータセットの入力値を、前記第2サブネットワークの変更されたパラメータ値によって定義された前記人工ニューラルネットワークのインスタンスに提供することと、
    前記人工ニューラルネットワークからの出力値を、前記ネットワークトレーニングデータセットのラベル付き出力値と比較することによって、誤差値を生成することと、
    前記第1サブネットワーク及び前記第2サブネットワークを定義する前記第1パラメータ値及び前記第2パラメータ値を、前記誤差値を使用して変更することと、をさらに含む、
    請求項17の方法。
  19. 前記ネットワークトレーニングデータセットの入力値を前記人工ニューラルネットワークに提供することと、前記誤差値を生成することと、前記第1サブネットワーク及び前記第2サブネットワークを定義する前記第1パラメータ値及び前記第2パラメータ値を変更することとは、前記第1パラメータ値及び前記第2パラメータ値の収束基準を満たすまで繰り返し実行される、
    請求項18の方法。
  20. 前記第1サブネットワーク及び前記第2サブネットワークを定義する前記変更されたパラメータ値を前記ストレージコンポーネントに記憶することと、
    前記記憶されたパラメータ値のサブセットを使用して、異なる人工ニューラルネットワークのパラメータ値を定義することと、をさらに含む、
    請求項18の方法。
JP2020532778A 2017-12-13 2018-09-24 ニューラルネットワークの関数サブネットワークの同時トレーニング Active JP7246392B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/841,030 2017-12-13
US15/841,030 US11836610B2 (en) 2017-12-13 2017-12-13 Concurrent training of functional subnetworks of a neural network
PCT/US2018/052381 WO2019118041A1 (en) 2017-12-13 2018-09-24 Concurrent training of functional subnetworks of a neural network

Publications (2)

Publication Number Publication Date
JP2021507378A true JP2021507378A (ja) 2021-02-22
JP7246392B2 JP7246392B2 (ja) 2023-03-27

Family

ID=66696263

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020532778A Active JP7246392B2 (ja) 2017-12-13 2018-09-24 ニューラルネットワークの関数サブネットワークの同時トレーニング

Country Status (6)

Country Link
US (1) US11836610B2 (ja)
EP (1) EP3724823A4 (ja)
JP (1) JP7246392B2 (ja)
KR (1) KR20200088475A (ja)
CN (1) CN111492381A (ja)
WO (1) WO2019118041A1 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10592732B1 (en) * 2017-12-14 2020-03-17 Perceive Corporation Probabilistic loss function for training network with triplets
US11586902B1 (en) 2018-03-14 2023-02-21 Perceive Corporation Training network to minimize worst case surprise
US11995537B1 (en) 2018-03-14 2024-05-28 Perceive Corporation Training network with batches of input instances
US11995533B1 (en) 2018-12-05 2024-05-28 Perceive Corporation Executing replicated neural network layers on inference circuit
US11847567B1 (en) 2018-12-05 2023-12-19 Perceive Corporation Loss-aware replication of neural network layers
US11610116B2 (en) * 2018-12-31 2023-03-21 SK Hynix Inc. Storage device performance optimization using deep learning
EP3748545A1 (en) * 2019-06-07 2020-12-09 Tata Consultancy Services Limited Sparsity constraints and knowledge distillation based learning of sparser and compressed neural networks
US11494237B2 (en) * 2019-06-26 2022-11-08 Microsoft Technology Licensing, Llc Managing workloads of a deep neural network processor
CN110334799B (zh) * 2019-07-12 2022-05-24 电子科技大学 基于存算一体的神经网络推理与训练加速器及其运行方法
CN110414748B (zh) * 2019-08-12 2022-04-08 阳光新能源开发股份有限公司 光伏功率预测方法
US11941511B1 (en) 2019-11-11 2024-03-26 Perceive Corporation Storing of intermediate computed values for subsequent use in a machine trained network
US11620516B2 (en) * 2019-12-23 2023-04-04 Arm Limited Specializing neural networks for heterogeneous systems
US11809908B2 (en) 2020-07-07 2023-11-07 SambaNova Systems, Inc. Runtime virtualization of reconfigurable data flow resources
US11960989B2 (en) 2020-07-24 2024-04-16 SK Hynix Inc. Read threshold estimation systems and methods using deep learning
JP7423484B2 (ja) * 2020-09-16 2024-01-29 株式会社東芝 学習装置、方法及びプログラム
US11237880B1 (en) 2020-12-18 2022-02-01 SambaNova Systems, Inc. Dataflow all-reduce for reconfigurable processor systems
US11392740B2 (en) 2020-12-18 2022-07-19 SambaNova Systems, Inc. Dataflow function offload to reconfigurable processors
US11182221B1 (en) 2020-12-18 2021-11-23 SambaNova Systems, Inc. Inter-node buffer-based streaming for reconfigurable processor-as-a-service (RPaaS)
US20220202348A1 (en) * 2020-12-31 2022-06-30 X Development Llc Implementing brain emulation neural networks on user devices
US11782760B2 (en) 2021-02-25 2023-10-10 SambaNova Systems, Inc. Time-multiplexed use of reconfigurable hardware
CN114118236A (zh) * 2021-11-10 2022-03-01 杭州海康威视数字技术股份有限公司 训练智能模型的方法及装置
US11978174B1 (en) * 2022-03-28 2024-05-07 Amazon Technologies, Inc. Virtual shoe try-on
US11804023B1 (en) * 2022-07-11 2023-10-31 Stylitics, Inc. Systems and methods for providing a virtual dressing room and a virtual stylist

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06309293A (ja) * 1993-04-26 1994-11-04 Nippon Telegr & Teleph Corp <Ntt> 多層構造型ニューラルネットワークの構成方法
JP2014229124A (ja) * 2013-05-23 2014-12-08 独立行政法人情報通信研究機構 ディープ・ニューラルネットワークの学習方法、ディープ・ニューラルネットワークのサブネットワークのパラメータを記憶した記憶媒体及びコンピュータプログラム
WO2016189675A1 (ja) * 2015-05-27 2016-12-01 株式会社日立製作所 ニューラルネットワークの学習装置及び学習方法
US20170286809A1 (en) * 2016-04-04 2017-10-05 International Business Machines Corporation Visual object recognition

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2639736B1 (fr) 1988-11-25 1991-03-15 Labo Electronique Physique Procede de retropropagation du gradient et structure de reseau de neurones
US6269351B1 (en) 1999-03-31 2001-07-31 Dryken Technologies, Inc. Method and system for training an artificial neural network
US6587845B1 (en) * 2000-02-15 2003-07-01 Benjamin B. Braunheim Method and apparatus for identification and optimization of bioactive compounds using a neural network
JPWO2007135723A1 (ja) 2006-05-22 2009-09-24 富士通株式会社 ニューラルネットワーク学習装置、方法、及びプログラム
US9224068B1 (en) * 2013-12-04 2015-12-29 Google Inc. Identifying objects in images
CN113255885A (zh) * 2014-04-11 2021-08-13 谷歌有限责任公司 使卷积神经网络的训练并行化
US9715642B2 (en) * 2014-08-29 2017-07-25 Google Inc. Processing images using deep neural networks
CN110443351B (zh) * 2014-11-14 2021-05-28 谷歌有限责任公司 生成映像的自然语言描述
US10482389B2 (en) * 2014-12-04 2019-11-19 Sap Se Parallel development and deployment for machine learning models
CN104980518B (zh) * 2015-06-26 2018-11-23 深圳市腾讯计算机系统有限公司 多学习主体并行训练模型的方法、装置和系统
US9633282B2 (en) 2015-07-30 2017-04-25 Xerox Corporation Cross-trained convolutional neural networks using multimodal images
US9805305B2 (en) 2015-08-07 2017-10-31 Yahoo Holdings, Inc. Boosted deep convolutional neural networks (CNNs)
US20170193361A1 (en) * 2015-12-31 2017-07-06 Microsoft Technology Licensing, Llc Neural network training performance optimization framework
US10824940B1 (en) * 2016-11-30 2020-11-03 Amazon Technologies, Inc. Temporal ensemble of machine learning models trained during different time intervals
CN107341480A (zh) * 2017-07-12 2017-11-10 中国电子科技集团公司第二十八研究所 一种改进型pccnn神经网络模型的人群聚集检测方法
US11551135B2 (en) * 2017-09-29 2023-01-10 Oracle International Corporation Techniques for generating a hierarchical model to identify a class among a plurality of classes

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06309293A (ja) * 1993-04-26 1994-11-04 Nippon Telegr & Teleph Corp <Ntt> 多層構造型ニューラルネットワークの構成方法
JP2014229124A (ja) * 2013-05-23 2014-12-08 独立行政法人情報通信研究機構 ディープ・ニューラルネットワークの学習方法、ディープ・ニューラルネットワークのサブネットワークのパラメータを記憶した記憶媒体及びコンピュータプログラム
WO2016189675A1 (ja) * 2015-05-27 2016-12-01 株式会社日立製作所 ニューラルネットワークの学習装置及び学習方法
US20170286809A1 (en) * 2016-04-04 2017-10-05 International Business Machines Corporation Visual object recognition

Also Published As

Publication number Publication date
JP7246392B2 (ja) 2023-03-27
EP3724823A4 (en) 2021-09-01
KR20200088475A (ko) 2020-07-22
WO2019118041A1 (en) 2019-06-20
CN111492381A (zh) 2020-08-04
US11836610B2 (en) 2023-12-05
US20190180176A1 (en) 2019-06-13
EP3724823A1 (en) 2020-10-21

Similar Documents

Publication Publication Date Title
JP2021507378A (ja) ニューラルネットワークの関数サブネットワークの同時トレーニング
US20200151573A1 (en) Dynamic precision scaling at epoch granularity in neural networks
EP3467723B1 (en) Machine learning based network model construction method and apparatus
JP5865456B1 (ja) 半導体装置
JP7450815B2 (ja) 階層的重み疎畳み込み処理のための方法とシステム
JP6393058B2 (ja) 情報処理装置、情報処理方法
JP5864684B1 (ja) 半導体装置
JP2017054122A (ja) 音響モデル生成装置及び方法、音声認識装置及び方法
BR112021009042A2 (pt) geração automatizada de modelos de aprendizagem por máquina
CN111325664B (zh) 风格迁移方法、装置、存储介质及电子设备
CN113052955B (zh) 一种点云补全方法、系统及应用
WO2022067874A1 (zh) 图像数据增强网络的训练方法及其训练装置、存储介质
US20200364538A1 (en) Method of performing, by electronic device, convolution operation at certain layer in neural network, and electronic device therefor
JP7042210B2 (ja) 学習モデル生成装置、学習モデル生成方法、及びプログラム
WO2020003434A1 (ja) 機械学習方法、機械学習装置、及び機械学習プログラム
KR20210034462A (ko) 픽셀 별 주석을 생성하는 생성적 적대 신경망(gan)을 학습시키는 방법
WO2021218037A1 (zh) 目标检测方法、装置、计算机设备和存储介质
CN112819151A (zh) 用于识别图像的方法和设备以及训练方法
CN114972791A (zh) 图像分类模型训练方法、图像分类方法及相关装置
CN113158970B (zh) 一种基于快慢双流图卷积神经网络的动作识别方法与系统
Chen et al. Polydiffuse: Polygonal shape reconstruction via guided set diffusion models
CN113496248A (zh) 训练计算机实施的模型的方法和设备
CN113408693A (zh) 识别图像的方法和设备
JP6207583B2 (ja) 半導体装置および情報処理方法
JP6991960B2 (ja) 画像認識装置、画像認識方法及びプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200818

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210921

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221011

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221226

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230314

R150 Certificate of patent or registration of utility model

Ref document number: 7246392

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150