(57)【要約】      （修正有）【課題】入力データを分析するニューラルネットワークのオンデバイス連続学習において、プライバシーの侵害防止、ストレージ等のリソース最適化及びトレーニングイメージサンプリングプロセスの最適化を可能とする。【解決手段】学習装置１００において、新しいデータをユニフォームサンプリングして第１ボリュームを有するようにし、ブースティングネットワークをもって、ｋ次元ランダムベクトルを、ｋ次元修正ベクトルに対応し学習に用いられた以前のデータに対応する、第２ボリュームの合成以前データを出力するプロセスを繰り返すようにし、現在学習に利用されるバッチを生成する段階１３０と、ニューラルネットワークをもって、第１バッチに対応する出力情報を生成するようにする段階１２５を含む。【選択図】図２
2020123337.tif 000002
【特許請求の範囲】
【請求項１】
入力データを分析するニューラルネットワーク（Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）のオンデバイス連続学習（Ｏｎ−Ｄｅｖｉｃｅ  Ｃｏｎｔｉｎｕａｌ  Ｌｅａｒｎｉｎｇ）のための方法において、
（ａ）学習のために取得される新しいデータが予め設定された基準ボリューム（Ｐｒｅｓｅｔ  Ｂａｓｅ  Ｖｏｌｕｍｅ）になると、学習装置が、前記予め設定された基準ボリュームの前記新しいデータをユニフォームサンプリング（Ｕｎｉｆｏｒｍ−Ｓａｍｐｌｉｎｇ）して前記新しいデータが予め設定された第１ボリュームを有するようにし、少なくとも一つのｋ次元ランダムベクトル（ｋ−Ｄｉｍｅｎｓｉｏｎ  Ｒａｎｄｏｍ  Ｖｅｃｔｏｒ）をブースティングネットワーク（Ｂｏｏｓｔｉｎｇ  Ｎｅｔｗｏｒｋ）に入力して、前記ブースティングネットワークをもって、前記ｋ次元ランダムベクトルを、これより高いロスを有する少なくとも一つのｋ次元修正ベクトル（k−Ｄｉｍｅｎｓｉｏｎ  Ｍｏｄｉｆｉｅｄ  Ｖｅｃｔｏｒ）に変換するようにし、前記ｋ次元修正ベクトルを、学習が完了したオリジナルデータ生成器ネットワーク（Ｏｒｉｇｉｎａｌ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）に入力して、前記オリジナルデータ生成器ネットワークをもって、前記ｋ次元修正ベクトルに対応し、前記オリジナルデータ生成器ネットワークを学習するのに用いられていた以前データ（Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）に対応する、第１合成以前データ（Ｓｙｎｔｈｅｔｉｃ  Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）を出力するプロセスを繰り返すようにして、前記第１合成以前データが予め設定された第２ボリュームを有するようにし、前記予め設定された第１ボリュームの前記新しいデータ及び前記予め設定された第２ボリュームの前記第１合成以前データを参照して第１現在学習（Ｃｕｒｒｅｎｔ−Ｌｅａｒｎｉｎｇ）に利用される第１バッチ（ｂａｔｃｈ）を生成する段階；及び
（ｂ）前記学習装置が、前記ニューラルネットワークをもって、前記第１バッチを前記ニューラルネットワークに入力して前記第１バッチに対応する出力情報（Ｏｕｔｐｕｔ  Ｉｎｆｏｒｍａｔｉｏｎ）を生成するようにし、第１ロスレイヤ（Ｌｏｓｓ  Ｌａｙｅｒ）をもって、前記出力情報とこれに対応するＧＴ（Ｇｒｏｕｎｄ  Ｔｒｕｔｈ）とを参照して少なくとも一つの第１ロスを算出するようにし、前記第１ロスをバックプロパゲーションすることで前記ニューラルネットワークと前記ブースティングネットワークとの前記第１現在学習を遂行する段階；
を含むことを特徴とする方法。
【請求項２】
（ｃ）前記学習装置が、前記予め設定された基準ボリュームの前記新しいデータをユニフォームサンプリングして前記新しいデータが前記予め設定された第１ボリュームを有するようにし、前記オリジナルデータ生成器ネットワークを複製して複製データ生成器ネットワーク（Ｃｌｏｎｅｄ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）を生成するようにし、前記複製データ生成器ネットワークをもって、前記ｋ次元ランダムベクトルに対応し、前記オリジナルデータ生成器ネットワークを学習するのに用いられた前記以前データに対応する、第２合成以前データを出力するプロセスを繰り返すようにして、前記第２合成以前データが前記予め設定された第２ボリュームを有するようにし、前記オリジナルデータ生成器ネットワークをもって、前記ｋ次元ランダムベクトルに対応し前記オリジナルデータ生成器ネットワークを学習するのに用いられた前記以前データに対応する、第３合成以前データを出力するプロセスを繰り返すようにして、前記第３合成以前データが、前記予め設定された第１ボリュームと前記予め設定された第２ボリュームとの和と同じ予め設定された第３ボリュームを有するようにし、前記予め設定された第１ボリュームの前記新しいデータと、前記予め設定された第２ボリュームの前記第２合成以前データと、前記予め設定された第３ボリュームの前記第３合成以前データとを参照して第２現在学習に利用される第２バッチを生成する段階；及び
（ｄ）前記学習装置が、判別器（Ｄｉｓｃｒｉｍｉｎａｔｏｒ）をもって、前記第２バッチを前記判別器に入力して前記第２バッチに対応するスコアベクトル（Ｓｃｏｒｅ  Ｖｅｃｔｏｒ）を生成するようにし、第２ロスレイヤをもって、前記スコアベクトルとこれに対応するＧＴとを参照して少なくとも一つの第２ロスを算出するようにし、前記第２ロスをバックプロパゲーションすることで前記判別器及び前記オリジナルデータ生成器ネットワークの前記第２現在学習を遂行する段階；
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記学習装置は、前記第２ロスをバックプロパゲーションすることで、前記判別器のロス及び前記第２データ生成器ネットワークのロスがそれぞれ収束するまで前記（ｃ）段階と前記（ｄ）段階とを繰り返すことを特徴とする請求項２に記載の方法。
【請求項４】
前記（ｄ）段階で、
前記学習装置は、前記第２ロスをバックプロパゲーションすることで前記判別器の少なくとも一つの重み付け値及び前記複製データ生成器ネットワークの少なくとも一つの重み付け値の最急上昇法（ｇｒａｄｉｅｎｔ  ａｓｃｅｎｔ）を遂行することを特徴とする請求項２に記載の方法。
【請求項５】
前記（ｄ）段階で、
前記学習装置は、前記第２ロスをバックプロパゲーションすることで、前記判別器の前記第２現在学習を遂行中に、前記複製データ生成器ネットワークからの前記第２合成以前データを本物のデータ（Ｒｅａｌ  Ｄａｔａ）とみなし、前記判別器の前記第２現在学習を遂行することを特徴とする請求項２に記載の方法。
【請求項６】
前記（ｄ）段階で、
前記学習装置は、前記オリジナルデータ生成器ネットワークの前記第２現在学習を遂行して、前記スコアベクトルのうちの前記第３合成以前データに対応する前記第３合成以前データスコアベクトルが最大化するようにすることを特徴とする請求項２に記載の方法。
【請求項７】
前記第２現在学習が最初の学習である場合、
前記（ａ）段階で、
前記学習装置は、前記予め設定された第１ボリュームの前記新しいデータのみを利用して前記第１バッチを生成し、
前記（ｃ）段階で、
前記学習装置は、前記オリジナルデータ生成器ネットワークをもって、前記ｋ次元ランダムベクトルに対応する前記第３合成以前データを出力するプロセスを繰り返すようにして前記第３合成以前データが前記予め設定された第１ボリュームを有するようにし、前記予め設定された第１ボリュームの前記新しいデータ及び前記予め設定された第１ボリュームの前記第３合成以前データを参照して、前記第２バッチを生成することを特徴とする請求項２に記載の方法。
【請求項８】
前記学習装置は、前記第１ロスをバックプロパゲーションすることで、前記第１ロスが収束するまで前記（ａ）段階と前記（ｂ）段階とを繰り返すことを特徴とする請求項１に記載の方法。
【請求項９】
前記（ａ）段階と前記（ｂ）段階とを前記第１現在学習で繰り返す場合、
前記学習装置は、
（ｉ）最初のイテレーション（Ｉｔｅｒａｔｉｏｎ）で、前記（ａ）段階で前記予め設定された基準ボリュームの前記新しいデータそれぞれに対応するサンプリング確率（Ｓａｍｐｌｉｎｇ  Ｐｒｏｂａｂｉｌｉｔｙ）それぞれを初期化し、初期化された前記サンプリング確率を参照して前記予め設定された基準ボリュームの前記新しいデータを前記ユニフォームサンプリングして前記予め設定された第１ボリュームの前記新しいデータを生成し、前記（ｂ）段階において、前記ニューラルネットワークの前記第１現在学習が完了すれば、前記予め設定された第１ボリュームの前記新しいデータに対応する前記第１ロスを参照して前記予め設定された第１ボリュームの前記新しいデータそれぞれに対応する前記サンプリング確率それぞれをアップデートすることで、前記予め設定された基準ボリュームの前記新しいデータそれぞれに対応する前記サンプリング確率それぞれをアップデートし、
（ｉｉ）次のイテレーションで、前記（ａ）段階で前記予め設定された基準ボリュームの前記新しいデータそれぞれに対応する以前のイテレーションでアップデートされた前記サンプリング確率それぞれを参照して、前記予め設定された基準ボリュームの前記新しいデータの前記ユニフォームサンプリングによって前記予め設定された第１ボリュームの前記新しいデータを生成し、前記（ｂ）段階において、前記ニューラルネットワークの前記第１現在学習が完了すると、前記予め設定された第１ボリュームの前記新しいデータに対応する前記第１ロスを参照して前記予め設定された基準ボリュームの前記新しいデータそれぞれに対応する前記以前イテレーションでアップデートされた前記サンプリング確率それぞれをアップデートすることを特徴とする請求項８に記載の方法。
【請求項１０】
前記（ａ）段階と前記（ｂ）段階とを前記第１現在学習で繰り返す場合、
最初のイテレーションで、前記学習装置は、前記（ａ）段階で、前記ブースティングネットワークを初期化した後、初期化された前記ブースティングネットワークをもって、前記ｋ次元ランダムベクトルを前記ｋ次元修正ベクトルに変換するようにし、
次のイテレーションで、前記学習装置は、前記（ａ）段階で、以前イテレーションでの前記（ｂ）段階で前記第１現在学習を完了した前記ブースティングネットワークをもって、前記ｋ次元ランダムベクトルを前記ｋ次元修正ベクトルに変換するようにすることを特徴とする請求項８に記載の方法。
【請求項１１】
前記（ｂ）段階で、
前記学習装置は、前記第１ロスをバックプロパゲーションして、前記ニューラルネットワークのロスを最小化するように前記ニューラルネットワークの少なくとも一つの重み付け値の最急降下法（Ｇｒａｄｉｅｎｔ  Ｄｅｓｃｅｎｔ）を遂行して、前記第１ロスのうちの前記第１合成以前データに対応するロスを最大化するように前記ブースティングネットワークの少なくとも一つの重み付け値の最急上昇法を遂行することを特徴とする請求項１に記載の方法。
【請求項１２】
前記学習装置は、前記ブースティングネットワークの前記重み付け値の前記最急上昇法を遂行する場合、前記ブースティングネットワークの前記重み付け値をクリッピング（Ｃｌｉｐｐｉｎｇ）することを特徴とする請求項１１に記載の方法。
【請求項１３】
前記ブースティングネットワークは、低次元の少なくとも一つのＦＣレイヤ（Ｆｕｌｌｙ  Ｃｏｎｎｅｃｔｅｄ  Ｌａｙｅｒ）を含むことを特徴とする請求項１に記載の方法。
【請求項１４】
入力データを分析するニューラルネットワーク（Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）をテストする方法において、
（ａ）学習装置が、（Ｉ）学習のために取得される新しいデータが予め設定された基準ボリューム（Ｐｒｅｓｅｔ  Ｂａｓｅ  Ｖｏｌｕｍｅ）になると、前記予め設定された基準ボリュームの前記学習用新しいデータをユニフォームサンプリング（Ｕｎｉｆｏｒｍ−Ｓａｍｐｌｉｎｇ）して前記学習用新しいデータが予め設定された第１ボリュームを有するようにし、少なくとも一つの学習用ｋ次元ランダムベクトル（ｋ−Ｄｉｍｅｎｓｉｏｎ  Ｒａｎｄｏｍ  Ｖｅｃｔｏｒ）をブースティングネットワーク（Ｂｏｏｓｔｉｎｇ  Ｎｅｔｗｏｒｋ）に入力して、前記ブースティングネットワークをもって、前記学習用ｋ次元ランダムベクトルを、これより高いロスを有する少なくとも一つの学習用ｋ次元修正ベクトル（k−Ｄｉｍｅｎｓｉｏｎ  Ｍｏｄｉｆｉｅｄ  Ｖｅｃｔｏｒ）に変換するようにし、前記学習用ｋ次元修正ベクトルを、学習が完了したオリジナルデータ生成器ネットワーク（Ｏｒｉｇｉｎａｌ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）に入力して、前記オリジナルデータ生成器ネットワークをもって、前記学習用ｋ次元修正ベクトルに対応し、前記オリジナルデータ生成器ネットワークを学習するのに用いられていた学習用以前データ（Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）に対応する、学習用第１合成以前データ（Ｓｙｎｔｈｅｔｉｃ  Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）を出力するプロセスを繰り返すようにして、前記学習用第１合成以前データが予め設定された第２ボリュームを有するようにし、前記予め設定された第１ボリュームの前記学習用新しいデータ及び前記予め設定された第２ボリュームの前記学習用第１合成以前データを参照して第１現在学習（Ｃｕｒｒｅｎｔ−Ｌｅａｒｎｉｎｇ）に利用される学習用第１バッチ（ｂａｔｃｈ）を生成するプロセス、及び（ＩＩ）前記ニューラルネットワークをもって、前記学習用第１バッチを前記ニューラルネットワークに入力して前記学習用第１バッチに対応する学習用出力情報（Ｏｕｔｐｕｔ  Ｉｎｆｏｒｍａｔｉｏｎ）を生成するようにし、第１ロスレイヤ（Ｌｏｓｓ  Ｌａｙｅｒ）をもって、前記学習用出力情報とこれに対応するＧＴ（Ｇｒｏｕｎｄ  Ｔｒｕｔｈ）とを参照して少なくとも一つの第１ロスを算出するようにし、前記第１ロスをバックプロパゲーションすることで前記ニューラルネットワークと前記ブースティングネットワークとの前記第１現在学習を遂行するプロセスを完了した状態で、テスト装置がテストデータを取得する段階；及び
（ｂ）前記テスト装置が、前記ニューラルネットワークをもって、前記テストデータを前記ニューラルネットワークに入力して前記テストデータに対応するテスト用出力情報を生成するようにする段階；
を含むことを特徴とする方法。
【請求項１５】
前記（ａ）段階で、
前記学習装置が、
（ＩＩＩ）前記予め設定された基準ボリュームの前記学習用新しいデータをユニフォームサンプリングして前記学習用新しいデータが前記予め設定された第１ボリュームを有するようにし、前記オリジナルデータ生成器ネットワークを複製して複製データ生成器ネットワーク（Ｃｌｏｎｅｄ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）を生成するようにし、前記複製データ生成器ネットワークをもって、前記学習用ｋ次元ランダムベクトルに対応し、前記オリジナルデータ生成器ネットワークを学習するのに用いられた前記学習用以前データに対応する、学習用第２合成以前データを出力するプロセスを繰り返すようにして、前記学習用第２合成以前データが前記予め設定された第２ボリュームを有するようにし、前記オリジナルデータ生成器ネットワークをもって、前記学習用ｋ次元ランダムベクトルに対応し前記オリジナルデータ生成器ネットワークを学習するのに用いられた前記学習用以前データに対応する、学習用第３合成以前データを出力するプロセスを繰り返すようにして、前記学習用第３合成以前データが、前記予め設定された第１ボリュームと前記予め設定された第２ボリュームとの和と同じ予め設定された第３ボリュームを有するようにし、前記予め設定された第１ボリュームの前記学習用新しいデータと、前記予め設定された第２ボリュームの前記学習用第２合成以前データと、前記予め設定された第３ボリュームの前記学習用第３合成以前データとを参照して、第２現在学習に利用される学習用第２バッチを生成するプロセス、及び（ＩＶ）判別器（Ｄｉｓｃｒｉｍｉｎａｔｏｒ）をもって、前記学習用第２バッチを前記判別器に入力して前記第２バッチに対応する学習用スコアベクトル（Ｓｃｏｒｅ  Ｖｅｃｔｏｒ）を生成するようにし、第２ロスレイヤをもって、前記学習用スコアベクトルとこれに対応するＧＴとを参照して少なくとも一つの第２ロスを算出するようにし、前記第２ロスをバックプロパゲーションすることで前記判別器及び前記オリジナルデータ生成器ネットワークの前記第２現在学習を遂行するプロセス；をさらに遂行することを特徴とする請求項１４に記載の方法。
【請求項１６】
入力データを分析するニューラルネットワーク（Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）のオンデバイス連続学習（Ｏｎ−Ｄｅｖｉｃｅ  Ｃｏｎｔｉｎｕａｌ  Ｌｅａｒｎｉｎｇ）のための学習装置において、
インストラクションを格納する少なくとも一つのメモリ；及び
（Ｉ）学習のために取得される新しいデータが予め設定された基準ボリューム（Ｐｒｅｓｅｔ  Ｂａｓｅ  Ｖｏｌｕｍｅ）になると、前記予め設定された基準ボリュームの前記新しいデータをユニフォームサンプリング（Ｕｎｉｆｏｒｍ−Ｓａｍｐｌｉｎｇ）して前記新しいデータが予め設定された第１ボリュームを有するようにし、少なくとも一つのｋ次元ランダムベクトル（ｋ−Ｄｉｍｅｎｓｉｏｎ  Ｒａｎｄｏｍ  Ｖｅｃｔｏｒ）をブースティングネットワーク（Ｂｏｏｓｔｉｎｇ  Ｎｅｔｗｏｒｋ）に入力して、前記ブースティングネットワークをもって、前記ｋ次元ランダムベクトルを、これより高いロスを有する少なくとも一つのｋ次元修正ベクトル（k−Ｄｉｍｅｎｓｉｏｎ  Ｍｏｄｉｆｉｅｄ  Ｖｅｃｔｏｒ）に変換するようにし、前記ｋ次元修正ベクトルを、学習が完了したオリジナルデータ生成器ネットワーク（Ｏｒｉｇｉｎａｌ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）に入力して、前記オリジナルデータ生成器ネットワークをもって、前記ｋ次元修正ベクトルに対応し、前記オリジナルデータ生成器ネットワークを学習するのに用いられていた以前データ（Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）に対応する、第１合成以前データ（Ｓｙｎｔｈｅｔｉｃ  Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）を出力するプロセスを繰り返すようにして、前記第１合成以前データが予め設定された第２ボリュームを有するようにし、前記予め設定された第１ボリュームの前記新しいデータ及び前記予め設定された第２ボリュームの前記第１合成以前データを参照して第１現在学習（Ｃｕｒｒｅｎｔ−Ｌｅａｒｎｉｎｇ）に利用される第１バッチ（ｂａｔｃｈ）を生成するプロセス；及び（ＩＩ）前記ニューラルネットワークをもって、前記第１バッチを前記ニューラルネットワークに入力して前記第１バッチに対応する出力情報（Ｏｕｔｐｕｔ  Ｉｎｆｏｒｍａｔｉｏｎ）を生成するようにし、第１ロスレイヤ（Ｌｏｓｓ  Ｌａｙｅｒ）をもって、前記出力情報とこれに対応するＧＴ（Ｇｒｏｕｎｄ  Ｔｒｕｔｈ）とを参照して少なくとも一つの第１ロスを算出するようにし、前記第１ロスをバックプロパゲーションすることで前記ニューラルネットワークと前記ブースティングネットワークとの前記第１現在学習を遂行するプロセスを遂行するための、前記インストラクションを実行するように構成された少なくとも一つのプロセッサ；
を含むことを特徴とする装置。
【請求項１７】
前記プロセッサが、
（ＩＩＩ）前記予め設定された基準ボリュームの前記新しいデータをユニフォームサンプリングして前記新しいデータが前記予め設定された第１ボリュームを有するようにし、前記オリジナルデータ生成器ネットワークを複製して複製データ生成器ネットワーク（Ｃｌｏｎｅｄ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）を生成するようにし、前記複製データ生成器ネットワークをもって、前記ｋ次元ランダムベクトルに対応し、前記オリジナルデータ生成器ネットワークを学習するのに用いられた前記以前データに対応する、第２合成以前データを出力するプロセスを繰り返すようにして、前記第２合成以前データが前記予め設定された第２ボリュームを有するようにし、前記オリジナルデータ生成器ネットワークをもって、前記ｋ次元ランダムベクトルに対応し前記オリジナルデータ生成器ネットワークを学習するのに用いられた前記以前データに対応する、第３合成以前データを出力するプロセスを繰り返すようにして、前記第３合成以前データが、前記予め設定された第１ボリュームと前記予め設定された第２ボリュームとの和と同じ予め設定された第３ボリュームを有するようにし、前記予め設定された第１ボリュームの前記新しいデータと、前記予め設定された第２ボリュームの前記第２合成以前データと、前記予め設定された第３ボリュームの前記第３合成以前データとを参照して、第２現在学習に利用される第２バッチを生成するプロセス；及び（ＩＶ）判別器（Ｄｉｓｃｒｉｍｉｎａｔｏｒ）をもって、前記第２バッチを前記判別器に入力して前記第２バッチに対応するスコアベクトル（Ｓｃｏｒｅ  Ｖｅｃｔｏｒ）を生成するようにし、第２ロスレイヤをもって、前記スコアベクトルとこれに対応するＧＴとを参照して少なくとも一つの第２ロスを算出するようにし、前記第２ロスをバックプロパゲーションすることで前記判別器及び前記オリジナルデータ生成器ネットワークの前記第２現在学習を遂行するプロセス；をさらに遂行することを特徴とする請求項１６に記載の装置。
【請求項１８】
前記プロセッサは、前記第２ロスをバックプロパゲーションすることで前記判別器のロス及び前記複製データ生成器ネットワークのロスがそれぞれ収束するまで、前記（ＩＩＩ）プロセスと前記（ＩＶ）プロセスとを繰り返すことを特徴とする請求項１７に記載の装置。
【請求項１９】
前記（ＩＶ）プロセスで、
前記プロセッサは、前記第２ロスをバックプロパゲーションすることで前記判別器の少なくとも一つの重み付け値及び前記複製データ生成器ネットワークの少なくとも一つの重み付け値の最急上昇法（Ｇｒａｄｉｅｎｔ  Ａｓｃｅｎｔ）を遂行することを特徴とする請求項１７に記載の装置。
【請求項２０】
前記（ＩＶ）プロセスで、
前記プロセッサは、前記第２ロスをバックプロパゲーションすることで、前記判別器の前記第２現在学習を遂行中に、前記複製データ生成器ネットワークからの前記第２合成以前データを本物のデータ（Ｒｅａｌ  Ｄａｔａ）とみなし、前記判別器の前記第２現在学習を遂行することを特徴とする請求項１７に記載の装置。
【請求項２１】
前記（ＩＶ）プロセスで、
前記プロセッサは、前記オリジナルデータ生成器ネットワークの前記第２現在学習を遂行して、前記スコアベクトルのうちの前記第３合成以前データに対応する前記第３合成以前データスコアベクトルが最大化するようにすることを特徴とする請求項１７に記載の装置。
【請求項２２】
前記第２現在学習が最初の学習である場合、
前記（Ｉ）プロセスで、
前記プロセッサは、前記予め設定された第１ボリュームの前記新しいデータのみを利用して前記第１バッチを生成し、
前記（ＩＩＩ）プロセスで、
前記プロセッサは、前記オリジナルデータ生成器ネットワークをもって、前記ｋ次元ランダムベクトルに対応する前記第３合成以前データを出力するプロセスを繰り返すようにして前記第３合成以前データが前記予め設定された第１ボリュームを有するようにし、前記予め設定された第１ボリュームの前記新しいデータ及び前記予め設定された第１ボリュームの前記第３合成以前データを参照して、前記第２バッチを生成することを特徴とする請求項１７に記載の装置。
【請求項２３】
前記プロセッサは、前記第１ロスをバックプロパゲーションすることで、前記第１ロスが収束するまで前記（Ｉ）プロセスと前記（ＩＩ）プロセスとを繰り返すことを特徴とする請求項１６に記載の装置。
【請求項２４】
前記（Ｉ）プロセスと前記（ＩＩ）プロセスとを前記第１現在学習で繰り返す場合、
前記プロセッサは、
（ｉ）最初のイテレーション（Ｉｔｅｒａｔｉｏｎ）で、前記（Ｉ）プロセスで前記予め設定された基準ボリュームの前記新しいデータそれぞれに対応するサンプリング確率（Ｓａｍｐｌｉｎｇ  Ｐｒｏｂａｂｉｌｉｔｙ）それぞれを初期化し、初期化された前記サンプリング確率を参照して前記予め設定された基準ボリュームの前記新しいデータを前記ユニフォームサンプリングして前記予め設定された第１ボリュームの前記新しいデータを生成し、前記（ＩＩ）プロセスにおいて、前記ニューラルネットワークの前記第１現在学習が完了すれば、前記予め設定された第１ボリュームの前記新しいデータに対応する前記第１ロスを参照して前記予め設定された第１ボリュームの前記新しいデータそれぞれに対応する前記サンプリング確率それぞれをアップデートすることで、前記予め設定された基準ボリュームの前記新しいデータそれぞれに対応する前記サンプリング確率それぞれをアップデートし、
（ｉｉ）次のイテレーションで、前記（Ｉ）プロセスで前記予め設定された基準ボリュームの前記新しいデータそれぞれに対応する以前のイテレーションでアップデートされた前記サンプリング確率それぞれを参照して、前記予め設定された基準ボリュームの前記新しいデータの前記ユニフォームサンプリングによって前記予め設定された第１ボリュームの前記新しいデータを生成し、前記（ＩＩ）プロセスにおいて、前記ニューラルネットワークの前記第１現在学習が完了すると、前記予め設定された第１ボリュームの前記新しいデータに対応する前記第１ロスを参照して前記予め設定された基準ボリュームの前記新しいデータそれぞれに対応する前記以前のイテレーションでアップデートされた前記サンプリング確率それぞれをアップデートすることを特徴とする請求項２３に記載の装置。
【請求項２５】
前記（Ｉ）プロセスと前記（ＩＩ）プロセスとを前記第１現在学習で繰り返す場合、
最初のイテレーションで、前記プロセッサは、前記（Ｉ）プロセスにおいて、前記ブースティングネットワークを初期化した後、初期化された前記ブースティングネットワークをもって、前記ｋ次元ランダムベクトルを前記ｋ次元修正ベクトルに変換するようにし、
次のイテレーションで、前記プロセッサは、前記（Ｉ）プロセスで、以前のイテレーションでの前記（ＩＩ）プロセスで前記第１現在学習を完了した前記ブースティングネットワークをもって、前記ｋ次元ランダムベクトルを前記ｋ次元修正ベクトルに変換するようにすることを特徴とする請求項２３に記載の装置。
【請求項２６】
前記（ＩＩ）プロセスで、
前記プロセッサは、前記第１ロスをバックプロパゲーションして、前記ニューラルネットワークのロスを最小化するように前記ニューラルネットワークの少なくとも一つの重み付け値の最急降下法（Ｇｒａｄｉｅｎｔ  Ｄｅｓｃｅｎｔ）を遂行して、前記第１ロスのうちの前記第１合成以前データに対応するロスを最大化するように前記ブースティングネットワークの少なくとも一つの重み付け値の最急上昇法を遂行することを特徴とする請求項１６に記載の装置。
【請求項２７】
前記プロセッサは、前記ブースティングネットワークの前記重み付け値の前記最急上昇法を遂行する場合、前記ブースティングネットワークの前記重み付け値をクリッピング（Ｃｌｉｐｐｉｎｇ）することを特徴とする請求項２６に記載の装置。
【請求項２８】
前記ブースティングネットワークは、低次元の少なくとも一つのＦＣレイヤ（Ｆｕｌｌｙ  Ｃｏｎｎｅｃｔｅｄ  Ｌａｙｅｒ）を含むことを特徴とする請求項１６に記載の装置。
【請求項２９】
入力データを分析するニューラルネットワーク（Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）をテストするテスト装置において、
インストラクションを格納する少なくとも一つのメモリ；及び
学習装置が、（１）学習のために取得される新しいデータが予め設定された基準ボリューム（Ｐｒｅｓｅｔ  Ｂａｓｅ  Ｖｏｌｕｍｅ）になると、前記予め設定された基準ボリュームの前記学習用新しいデータをユニフォームサンプリング（Ｕｎｉｆｏｒｍ−Ｓａｍｐｌｉｎｇ）して前記学習用新しいデータが予め設定された第１ボリュームを有するようにし、少なくとも一つの学習用ｋ次元ランダムベクトル（ｋ−Ｄｉｍｅｎｓｉｏｎ  Ｒａｎｄｏｍ  Ｖｅｃｔｏｒ）をブースティングネットワーク（Ｂｏｏｓｔｉｎｇ  Ｎｅｔｗｏｒｋ）に入力して、前記ブースティングネットワークをもって、前記学習用ｋ次元ランダムベクトルを、これより高いロスを有する少なくとも一つの学習用ｋ次元修正ベクトル（k−Ｄｉｍｅｎｓｉｏｎ  Ｍｏｄｉｆｉｅｄ  Ｖｅｃｔｏｒ）に変換するようにし、前記学習用ｋ次元修正ベクトルを、学習が完了したオリジナルデータ生成器ネットワーク（Ｏｒｉｇｉｎａｌ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）に入力して、前記オリジナルデータ生成器ネットワークをもって、前記学習用ｋ次元修正ベクトルに対応し、前記オリジナルデータ生成器ネットワークを学習するのに用いられていた学習用以前データ（Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）に対応する、学習用第１合成以前データ（Ｓｙｎｔｈｅｔｉｃ  Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）を出力するプロセスを繰り返すようにして、前記学習用第１合成以前データが予め設定された第２ボリュームを有するようにし、前記予め設定された第１ボリュームの前記学習用新しいデータ及び前記予め設定された第２ボリュームの前記学習用第１合成以前データを参照して第１現在学習（Ｃｕｒｒｅｎｔ−Ｌｅａｒｎｉｎｇ）に利用される学習用第１バッチ（ｂａｔｃｈ）を生成するプロセス、及び（２）前記ニューラルネットワークをもって、前記学習用第１バッチを前記ニューラルネットワークに入力して前記学習用第１バッチに対応する学習用出力情報（Ｏｕｔｐｕｔ  Ｉｎｆｏｒｍａｔｉｏｎ）を生成するようにし、第１ロスレイヤ（Ｌｏｓｓ  Ｌａｙｅｒ）をもって、前記学習用出力情報とこれに対応するＧＴ（Ｇｒｏｕｎｄ  Ｔｒｕｔｈ）とを参照して少なくとも一つの第１ロスを算出するようにし、前記第1ロスをバックプロパゲーションすることで前記ニューラルネットワークと前記ブースティングネットワークの前記第１現在学習を遂行するプロセスを完了した状態で、前記ニューラルネットワークをもって、テストデータをニューラルネットワークに入力して取得された前記テストデータに対応するテスト用出力情報を出力するようにするプロセスを遂行するための、前記インストラクションを実行するように構成された少なくとも一つのプロセッサ；
を含むことを特徴とする装置。
【請求項３０】
前記学習装置が、
（３）前記予め設定された基準ボリュームの前記学習用新しいデータをユニフォームサンプリングして前記学習用新しいデータが前記予め設定された第１ボリュームを有するようにし、前記オリジナルデータ生成器ネットワークを複製して複製データ生成器ネットワーク（Ｃｌｏｎｅｄ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）を生成するようにし、前記複製データ生成器ネットワークをもって、前記学習用ｋ次元ランダムベクトルに対応し、前記オリジナルデータ生成器ネットワークを学習するのに用いられた前記学習用以前データに対応する、学習用第２合成以前データを出力するプロセスを繰り返すようにして、前記学習用第２合成以前データが前記予め設定された第２ボリュームを有するようにし、前記オリジナルデータ生成器ネットワークをもって、前記学習用ｋ次元ランダムベクトルに対応し前記オリジナルデータ生成器ネットワークを学習するのに用いられた前記学習用以前データに対応する、学習用第３合成以前データを出力するプロセスを繰り返すようにして、前記学習用第３合成以前データが、前記予め設定された第１ボリュームと前記予め設定された第２ボリュームとの和と同じ予め設定された第３ボリュームを有するようにし、前記予め設定された第１ボリュームの前記学習用新しいデータと、前記予め設定された第２ボリュームの前記学習用第２合成以前データと、前記予め設定された第３ボリュームの前記学習用第３合成以前データとを参照して、第２現在学習に利用される学習用第２バッチを生成するプロセス、及び（４）判別器（Ｄｉｓｃｒｉｍｉｎａｔｏｒ）をもって、前記学習用第２バッチを前記判別器に入力して前記第２バッチに対応する学習用スコアベクトル（Ｓｃｏｒｅ  Ｖｅｃｔｏｒ）を生成するようにし、第２ロスレイヤをもって、前記学習用スコアベクトルとこれに対応するＧＴとを参照して少なくとも一つの第２ロスを算出するようにし、前記第２ロスをバックプロパゲーションすることで前記判別器及び前記オリジナルデータ生成器ネットワークの前記第２現在学習を遂行するプロセス；をさらに遂行することを特徴とする請求項２９に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は自律走行車両、仮想運転等に利用するための学習方法及び学習装置、そしてテスト方法及びテスト装置に関し、より詳しくは、入力データを分析するニューラルネットワーク（Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）をオンデバイス連続学習（ｏｎ−ｄｅｖｉｃｅ  ｃｏｎｔｉｎｕａｌ  ｌｅａｒｎｉｎｇ）する前記学習方法及び前記学習装置、そしてこれを利用した前記テスト方法及び前記テスト装置に関する。
【背景技術】
【０００２】
一般に、ディープラーニング（Ｄｅｅｐ  Ｌｅａｒｎｉｎｇ）は、様々な非線形変換手法の組み合わせにより、高い水準の抽象化を試みる機械学習アルゴリズムの集合として定義され、大きな枠組みで人の考え方をコンピュータに学習させる機械学習の一分野である。
【０００３】
何らかのデータを、コンピュータが読み取れる形態、一例として、イメージの場合、ピクセル情報を列ベクトルで表現し、これを機械学習に適用するために多くの研究が進められている。このような努力の結果、深層神経網（Ｄｅｅｐ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）、畳み込み神経網（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）、回帰型神経網（Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）といった様々なディープラーニング技法がコンピュータビジョン、音声認識、自然言語処理、音声・信号処理などの分野に適用され、高性能なディープラーニングネットワークが開発されている。
【０００４】
このようなディープラーニングネットワークは、認識性能を高めるためにモデルの階層が深まり（Ｄｅｅｐ）、特徴（Ｆｅａｔｕｒｅ）が多くなる大規模モデルに進化している。
【０００５】
特に、ディープラーニングネットワークの学習は、大規模なトレーニングデータと高いコンピューティングパワーの必要性から、オンラインサーバで主に実行されている。
【０００６】
しかし、プライバシーの問題から、個人データを学習目的でサーバに転送できない個人モバイルデバイス（Ｐｅｒｓｏｎａｌ  Ｍｏｂｉｌｅ  Ｄｅｖｉｃｅ）環境や、装置が通信網を外れていることが多い軍隊、ドローンあるいは船舶などの環境ではサーバで学習することが不可能だ。
【０００７】
したがって、サーバで学習することが不可能なローカル装置では、ディープラーニングネットワークのオンデバイス学習（Ｏｎ−Ｄｅｖｉｃｅ  Ｌｅａｒｎｉｎｇ）が遂行されなければならない。
【０００８】
しかし、オンデバイス学習を遂行するローカル装置は、トレーニングデータを格納しておくストレージスペースがないか、非常に不足しており、オンデバイス学習を行うことが困難である。
【０００９】
また、新しいトレーニングデータを利用してディープラーニングネットワークを学習する場合、新しいトレーニングデータが過去のトレーニングデータと相違すると、ディープラーニングネットワークは過去に学習した内容を徐々に忘れてしまい、結果として破壊的忘却（Ｃａｔａｓｔｒｏｐｈｉｃ  Ｆｏｒｇｅｔｔｉｎｇ）という問題が発生することになる。
【００１０】
これに加えて、ローカル装置（Ｌｏｃａｌ  Ｄｅｖｉｃｅ）でオンデバイス学習を行う場合、大きなコンピューティングパワーが必要であり、学習自体にたくさんの時間がかかるという短所がある。
【発明の概要】
【発明が解決しようとする課題】
【００１１】
本発明は、前述した問題点を全て解決することを目的とする。
【００１２】
本発明は、オンデバイス学習（Ｏｎ−Ｄｅｖｉｃｅ  Ｌｅａｒｎｉｎｇ）を遂行するローカル装置（Ｌｏｃａｌ  Ｄｅｖｉｃｅ）において、トレーニングデータを格納することなく継続して学習に利用できるようにすることを他の目的とする。
【００１３】
本発明は、過去のトレーニングデータを格納しなくても、新しいトレーニングデータを利用した学習において過去のトレーニングデータを利用できるようにすることをまた他の目的とする。
【００１４】
本発明は、オンデバイス学習を遂行するローカル装置において破壊的忘却（Ｃａｔａｓｔｒｏｐｈｉｃ  Ｆｏｒｇｅｔｔｉｎｇ）現象なしにニューラルネットワーク（Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）に対するオンデバイス学習をできるようにすることをまた他の目的とする。
【００１５】
本発明は、同一のトレーニングデータを用いて学習効果を高められるようにすることをまた他の目的とする。
【００１６】
本発明は、オンデバイス学習に必要なコンピューティングパワー及び時間を節減できるようにすることをまた他の目的とする。
【課題を解決するための手段】
【００１７】
前記のような本発明の目的を達成し、後述する本発明の特徴的な効果を実現するための、本発明の特徴的な構成は下記の通りである。
【００１８】
本発明の一態様によれば、入力データを分析するニューラルネットワーク（Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）のオンデバイス連続学習（Ｏｎ−Ｄｅｖｉｃｅ  Ｃｏｎｔｉｎｕａｌ  Ｌｅａｒｎｉｎｇ）のための方法において、（ａ）学習のために取得される新しいデータが予め設定された基準ボリューム（Ｐｒｅｓｅｔ  Ｂａｓｅ  Ｖｏｌｕｍｅ）になると、学習装置が、前記予め設定された基準ボリュームの前記新しいデータをユニフォームサンプリング（Ｕｎｉｆｏｒｍ−Ｓａｍｐｌｉｎｇ）して前記新しいデータが予め設定された第１ボリュームを有するようにし、少なくとも一つのｋ次元ランダムベクトル（ｋ−Ｄｉｍｅｎｓｉｏｎ  Ｒａｎｄｏｍ  Ｖｅｃｔｏｒ）をブースティングネットワーク（Ｂｏｏｓｔｉｎｇ  Ｎｅｔｗｏｒｋ）に入力して、前記ブースティングネットワークをもって、前記ｋ次元ランダムベクトルを、これより高いロスを有する少なくとも一つのｋ次元修正ベクトル（k−Ｄｉｍｅｎｓｉｏｎ  Ｍｏｄｉｆｉｅｄ  Ｖｅｃｔｏｒ）に変換するようにし、前記ｋ次元修正ベクトルを、学習が完了したオリジナルデータ生成器ネットワーク（Ｏｒｉｇｉｎａｌ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）に入力して、前記オリジナルデータ生成器ネットワークをもって、前記ｋ次元修正ベクトルに対応し、前記オリジナルデータ生成器ネットワークを学習するのに用いられていた以前データ（Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）に対応する、第１合成以前データ（Ｓｙｎｔｈｅｔｉｃ  Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）を出力するプロセスを繰り返すようにして、前記第１合成以前データが予め設定された第２ボリュームを有するようにし、前記予め設定された第１ボリュームの前記新しいデータ及び前記予め設定された第２ボリュームの前記第１合成以前データを参照して第１現在学習（Ｃｕｒｒｅｎｔ−Ｌｅａｒｎｉｎｇ）に利用される第１バッチ（ｂａｔｃｈ）を生成する段階；及び（ｂ）前記学習装置が、前記ニューラルネットワークをもって、前記第１バッチを前記ニューラルネットワークに入力して前記第１バッチに対応する出力情報（Ｏｕｔｐｕｔ  Ｉｎｆｏｒｍａｔｉｏｎ）を生成するようにし、第１ロスレイヤ（Ｌｏｓｓ  Ｌａｙｅｒ）をもって、前記出力情報とこれに対応するＧＴ（Ｇｒｏｕｎｄ  Ｔｒｕｔｈ）とを参照して少なくとも一つの第１ロスを算出するようにし、前記第１ロスをバックプロパゲーションすることで前記ニューラルネットワークと前記ブースティングネットワークとの前記第１現在学習を遂行する段階；を含むことを特徴とする。
【００１９】
一例として、（ｃ）前記学習装置が、前記予め設定された基準ボリュームの前記新しいデータをユニフォームサンプリングして前記新しいデータが前記予め設定された第１ボリュームを有するようにし、前記オリジナルデータ生成器ネットワークを複製して複製データ生成器ネットワーク（Ｃｌｏｎｅｄ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）を生成するようにし、前記複製データ生成器ネットワークをもって、前記ｋ次元ランダムベクトルに対応し、前記オリジナルデータ生成器ネットワークを学習するのに用いられた前記以前データに対応する、第２合成以前データを出力するプロセスを繰り返すようにして、前記第２合成以前データが前記予め設定された第２ボリュームを有するようにし、前記オリジナルデータ生成器ネットワークをもって、前記ｋ次元ランダムベクトルに対応し前記オリジナルデータ生成器ネットワークを学習するのに用いられた前記以前データに対応する、第３合成以前データを出力するプロセスを繰り返すようにして、前記第３合成以前データが、前記予め設定された第１ボリュームと前記予め設定された第２ボリュームとの和と同じ予め設定された第３ボリュームを有するようにし、前記予め設定された第１ボリュームの前記新しいデータと、前記予め設定された第２ボリュームの前記第２合成以前データと、前記予め設定された第３ボリュームの前記第３合成以前データとを参照して第２現在学習に利用される第２バッチを生成する段階；及び（ｄ）前記学習装置が、判別器（Ｄｉｓｃｒｉｍｉｎａｔｏｒ）をもって、前記第２バッチを前記判別器に入力して前記第２バッチに対応するスコアベクトル（Ｓｃｏｒｅ  Ｖｅｃｔｏｒ）を生成するようにし、第２ロスレイヤをもって、前記スコアベクトルとこれに対応するＧＴとを参照して少なくとも一つの第２ロスを算出するようにし、前記第２ロスをバックプロパゲーションすることで前記判別器及び前記オリジナルデータ生成器ネットワークの前記第２現在学習を遂行する段階；をさらに含むことを特徴とする。
【００２０】
一例として、前記学習装置は、前記第２ロスをバックプロパゲーションすることで、前記判別器のロス及び前記第２データ生成器ネットワークのロスがそれぞれ収束するまで前記（ｃ）段階と前記（ｄ）段階とを繰り返すことを特徴とする。
【００２１】
一例として、前記（ｄ）段階で、前記学習装置は、前記第２ロスをバックプロパゲーションすることで前記判別器の少なくとも一つの重み付け値及び前記複製データ生成器ネットワークの少なくとも一つの重み付け値の最急上昇法（Ｇｒａｄｉｅｎｔ  Ａｓｃｅｎｔ）を遂行することを特徴とする。
【００２２】
一例として、前記（ｄ）段階で、前記学習装置は、前記第２ロスをバックプロパゲーションすることで、前記判別器の前記第２現在学習を遂行中に、前記複製データ生成器ネットワークからの前記第２合成以前データを本物のデータ（Ｒｅａｌ  Ｄａｔａ）とみなし、前記判別器の前記第２現在学習を遂行することを特徴とする。
【００２３】
一例として、前記（ｄ）段階で、前記学習装置は、前記オリジナルデータ生成器ネットワークの前記第２現在学習を遂行して、前記スコアベクトルのうちの前記第３合成以前データに対応する前記第３合成以前データスコアベクトルが最大化するようにすることを特徴とする。
【００２４】
一例として、前記第２現在学習が最初の学習である場合、前記（ａ）段階で、前記学習装置は、前記予め設定された第１ボリュームの前記新しいデータのみを利用して前記第１バッチを生成し、前記（ｃ）段階で、前記学習装置は、前記オリジナルデータ生成器ネットワークをもって、前記ｋ次元ランダムベクトルに対応する前記第３合成以前データを出力するプロセスを繰り返すようにして前記第３合成以前データが前記予め設定された第１ボリュームを有するようにし、前記予め設定された第１ボリュームの前記新しいデータ及び前記予め設定された第１ボリュームの前記第３合成以前データを参照して、前記第２バッチを生成することを特徴とする。
【００２５】
一例として、前記学習装置は、前記第１ロスをバックプロパゲーションすることで、前記第１ロスが収束するまで前記（ａ）段階と前記（ｂ）段階とを繰り返すことを特徴とする。
【００２６】
一例として、前記（ａ）段階と前記（ｂ）段階とを前記第１現在学習で繰り返す場合、前記学習装置は、（ｉ）最初のイテレーション（Ｉｔｅｒａｔｉｏｎ）で、前記（ａ）段階で前記予め設定された基準ボリュームの前記新しいデータそれぞれに対応するサンプリング確率（Ｓａｍｐｌｉｎｇ  Ｐｒｏｂａｂｉｌｉｔｙ）それぞれを初期化し、初期化された前記サンプリング確率を参照して前記予め設定された基準ボリュームの前記新しいデータを前記ユニフォームサンプリングして前記予め設定された第１ボリュームの前記新しいデータを生成し、前記（ｂ）段階において、前記ニューラルネットワークの前記第１現在学習が完了すれば、前記予め設定された第１ボリュームの前記新しいデータに対応する前記第１ロスを参照して前記予め設定された第１ボリュームの前記新しいデータそれぞれに対応する前記サンプリング確率それぞれをアップデートすることで、前記予め設定された基準ボリュームの前記新しいデータそれぞれに対応する前記サンプリング確率それぞれをアップデートし、（ｉｉ）次のイテレーションで、前記（ａ）段階で前記予め設定された基準ボリュームの前記新しいデータそれぞれに対応する以前のイテレーションでアップデートされた前記サンプリング確率それぞれを参照して、前記予め設定された基準ボリュームの前記新しいデータの前記ユニフォームサンプリングによって前記予め設定された第１ボリュームの前記新しいデータを生成し、前記（ｂ）段階において、前記ニューラルネットワークの前記第１現在学習が完了すると、前記予め設定された第１ボリュームの前記新しいデータに対応する前記第１ロスを参照して前記予め設定された基準ボリュームの前記新しいデータそれぞれに対応する前記以前イテレーションでアップデートされた前記サンプリング確率それぞれをアップデートすることを特徴とする。
【００２７】
一例として、前記（ａ）段階と前記（ｂ）段階とを前記第１現在学習で繰り返す場合、最初のイテレーションで、前記学習装置は、前記（ａ）段階で、前記ブースティングネットワークを初期化した後、初期化された前記ブースティングネットワークをもって、前記ｋ次元ランダムベクトルを前記ｋ次元修正ベクトルに変換するようにし、次のイテレーションで、前記学習装置は、前記（ａ）段階で、以前イテレーションでの前記（ｂ）段階で前記第１現在学習を完了した前記ブースティングネットワークをもって、前記ｋ次元ランダムベクトルを前記ｋ次元修正ベクトルに変換するようにすることを特徴とする。
【００２８】
一例として、前記（ｂ）段階で、前記学習装置は、前記第１ロスをバックプロパゲーションして、前記ニューラルネットワークのロスを最小化するように前記ニューラルネットワークの少なくとも一つの重み付け値の最急降下法（Ｇｒａｄｉｅｎｔ  Ｄｅｓｃｅｎｔ）を遂行して、前記第１ロスのうちの前記第１合成以前データに対応するロスを最大化するように前記ブースティングネットワークの少なくとも一つの重み付け値の最急上昇法を遂行することを特徴とする。
【００２９】
一例として、前記学習装置は、前記ブースティングネットワークの前記重み付け値の前記最急上昇法を遂行する場合、前記ブースティングネットワークの前記重み付け値をクリッピング（Ｃｌｉｐｐｉｎｇ）することを特徴とする。
【００３０】
一例として、前記ブースティングネットワークは、低次元の少なくとも一つのＦＣレイヤ（Ｆｕｌｌｙ  Ｃｏｎｎｅｃｔｅｄ  Ｌａｙｅｒ）を含むことを特徴とする。
【００３１】
本発明の他の一態様によれば、入力データを分析するニューラルネットワーク（Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）をテストする方法において、（ａ）学習装置が、（Ｉ）学習のために取得される新しいデータが予め設定された基準ボリューム（Ｐｒｅｓｅｔ  Ｂａｓｅ  Ｖｏｌｕｍｅ）になると、前記予め設定された基準ボリュームの前記学習用新しいデータをユニフォームサンプリング（Ｕｎｉｆｏｒｍ−Ｓａｍｐｌｉｎｇ）して前記学習用新しいデータが予め設定された第１ボリュームを有するようにし、少なくとも一つの学習用ｋ次元ランダムベクトル（ｋ−Ｄｉｍｅｎｓｉｏｎ  Ｒａｎｄｏｍ  Ｖｅｃｔｏｒ）をブースティングネットワーク（Ｂｏｏｓｔｉｎｇ  Ｎｅｔｗｏｒｋ）に入力して、前記ブースティングネットワークをもって、前記学習用ｋ次元ランダムベクトルを、これより高いロスを有する少なくとも一つの学習用ｋ次元修正ベクトル（ｋ−Ｄｉｍｅｎｓｉｏｎ  Ｍｏｄｉｆｉｅｄ  Ｖｅｃｔｏｒ）に変換するようにし、前記学習用ｋ次元修正ベクトルを、学習が完了したオリジナルデータ生成器ネットワーク（Ｏｒｉｇｉｎａｌ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）に入力して、前記オリジナルデータ生成器ネットワークをもって、前記学習用ｋ次元修正ベクトルに対応し、前記オリジナルデータ生成器ネットワークを学習するのに用いられていた学習用以前データ（Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）に対応する、学習用第１合成以前データ（Ｓｙｎｔｈｅｔｉｃ  Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）を出力するプロセスを繰り返すようにして、前記学習用第１合成以前データが予め設定された第２ボリュームを有するようにし、前記予め設定された第１ボリュームの前記学習用新しいデータ及び前記予め設定された第２ボリュームの前記学習用第１合成以前データを参照して第１現在学習（Ｃｕｒｒｅｎｔ−Ｌｅａｒｎｉｎｇ）に利用される学習用第１バッチ（ｂａｔｃｈ）を生成するプロセス、及び（ＩＩ）前記ニューラルネットワークをもって、前記学習用第１バッチを前記ニューラルネットワークに入力して前記学習用第１バッチに対応する学習用出力情報（Ｏｕｔｐｕｔ  Ｉｎｆｏｒｍａｔｉｏｎ）を生成するようにし、第１ロスレイヤ（Ｌｏｓｓ  Ｌａｙｅｒ）をもって、前記学習用出力情報とこれに対応するＧＴ（Ｇｒｏｕｎｄ  Ｔｒｕｔｈ）とを参照して少なくとも一つの第１ロスを算出するようにし、前記第１ロスをバックプロパゲーションすることで前記ニューラルネットワークと前記ブースティングネットワークとの前記第１現在学習を遂行するプロセスを完了した状態で、テスト装置がテストデータを取得する段階；及び（ｂ）前記テスト装置が、前記ニューラルネットワークをもって、前記テストデータを前記ニューラルネットワークに入力して前記テストデータに対応するテスト用出力情報を生成するようにする段階；を含むことを特徴とする。
【００３２】
一例として、前記（ａ）段階で、前記学習装置が、（ＩＩＩ）前記予め設定された基準ボリュームの前記学習用新しいデータをユニフォームサンプリングして前記学習用新しいデータが前記予め設定された第１ボリュームを有するようにし、前記オリジナルデータ生成器ネットワークを複製して複製データ生成器ネットワーク（Ｃｌｏｎｅｄ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）を生成するようにし、前記複製データ生成器ネットワークをもって、前記学習用ｋ次元ランダムベクトルに対応し、前記オリジナルデータ生成器ネットワークを学習するのに用いられた前記学習用以前データに対応する、学習用第２合成以前データを出力するプロセスを繰り返すようにして、前記学習用第２合成以前データが前記予め設定された第２ボリュームを有するようにし、前記オリジナルデータ生成器ネットワークをもって、前記学習用ｋ次元ランダムベクトルに対応し前記オリジナルデータ生成器ネットワークを学習するのに用いられた前記学習用以前データに対応する、学習用第３合成以前データを出力するプロセスを繰り返すようにして、前記学習用第３合成以前データが、前記予め設定された第１ボリュームと前記予め設定された第２ボリュームとの和と同じ予め設定された第３ボリュームを有するようにし、前記予め設定された第１ボリュームの前記学習用新しいデータと、前記予め設定された第２ボリュームの前記学習用第２合成以前データと、前記予め設定された第３ボリュームの前記学習用第３合成以前データとを参照して、第２現在学習に利用される学習用第２バッチを生成するプロセス、及び（ＩＶ）判別器（Ｄｉｓｃｒｉｍｉｎａｔｏｒ）をもって、前記学習用第２バッチを前記判別器に入力して前記第２バッチに対応する学習用スコアベクトル（Ｓｃｏｒｅ  Ｖｅｃｔｏｒ）を生成するようにし、第２ロスレイヤをもって、前記学習用スコアベクトルとこれに対応するＧＴとを参照して少なくとも一つの第２ロスを算出するようにし、前記第２ロスをバックプロパゲーションすることで前記判別器及び前記オリジナルデータ生成器ネットワークの前記第２現在学習を遂行するプロセス；をさらに遂行することを特徴とする。
【００３３】
本発明のまた他の一態様によれば、入力データを分析するニューラルネットワーク（Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）のオンデバイス連続学習（Ｏｎ−Ｄｅｖｉｃｅ  Ｃｏｎｔｉｎｕａｌ  Ｌｅａｒｎｉｎｇ）のための学習装置において、インストラクションを格納する少なくとも一つのメモリ；及び（Ｉ）学習のために取得される新しいデータが予め設定された基準ボリューム（Ｐｒｅｓｅｔ  Ｂａｓｅ  Ｖｏｌｕｍｅ）になると、  前記予め設定された基準ボリュームの前記新しいデータをユニフォームサンプリング（Ｕｎｉｆｏｒｍ−Ｓａｍｐｌｉｎｇ）して前記新しいデータが予め設定された第１ボリュームを有するようにし、少なくとも一つのｋ次元ランダムベクトル（ｋ−Ｄｉｍｅｎｓｉｏｎ  Ｒａｎｄｏｍ  Ｖｅｃｔｏｒ）をブースティングネットワーク（Ｂｏｏｓｔｉｎｇ  Ｎｅｔｗｏｒｋ）に入力して、前記ブースティングネットワークをもって、前記ｋ次元ランダムベクトルを、これより高いロスを有する少なくとも一つのｋ次元修正ベクトル（k−Ｄｉｍｅｎｓｉｏｎ  Ｍｏｄｉｆｉｅｄ  Ｖｅｃｔｏｒ）に変換するようにし、前記ｋ次元修正ベクトルを、学習が完了したオリジナルデータ生成器ネットワーク（Ｏｒｉｇｉｎａｌ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）に入力して、前記オリジナルデータ生成器ネットワークをもって、前記ｋ次元修正ベクトルに対応し、前記オリジナルデータ生成器ネットワークを学習するのに用いられていた以前データ（Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）に対応する、第１合成以前データ（Ｓｙｎｔｈｅｔｉｃ  Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）を出力するプロセスを繰り返すようにして、  前記第１合成以前データが予め設定された第２ボリュームを有するようにし、前記予め設定された第１ボリュームの前記新しいデータ及び前記予め設定された第２ボリュームの前記第１合成以前データを参照して第１現在学習（Ｃｕｒｒｅｎｔ−Ｌｅａｒｎｉｎｇ）に利用される第１バッチ（ｂａｔｃｈ）を生成するプロセス；及び（ＩＩ）前記ニューラルネットワークをもって、前記第１バッチを前記ニューラルネットワークに入力して前記第１バッチに対応する出力情報（Ｏｕｔｐｕｔ  Ｉｎｆｏｒｍａｔｉｏｎ）を生成するようにし、第１ロスレイヤ（Ｌｏｓｓ  Ｌａｙｅｒ）をもって、前記出力情報とこれに対応するＧＴ（Ｇｒｏｕｎｄ  Ｔｒｕｔｈ）とを参照して少なくとも一つの第１ロスを算出するようにし、前記第１ロスをバックプロパゲーションすることで前記ニューラルネットワークと前記ブースティングネットワークとの前記第１現在学習を遂行するプロセスを遂行するための、前記インストラクションを実行するように構成された少なくとも一つのプロセッサ；を含むことを特徴とする。
【００３４】
一例として、前記プロセッサが、（ＩＩＩ）前記予め設定された基準ボリュームの前記新しいデータをユニフォームサンプリングして前記新しいデータが前記予め設定された第１ボリュームを有するようにし、前記オリジナルデータ生成器ネットワークを複製して複製データ生成器ネットワーク（Ｃｌｏｎｅｄ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）を生成するようにし、前記複製データ生成器ネットワークをもって、前記ｋ次元ランダムベクトルに対応し、前記オリジナルデータ生成器ネットワークを学習するのに用いられた前記以前データに対応する、第２合成以前データを出力するプロセスを繰り返すようにして、前記第２合成以前データが前記予め設定された第２ボリュームを有するようにし、  前記オリジナルデータ生成器ネットワークをもって、前記ｋ次元ランダムベクトルに対応し前記オリジナルデータ生成器ネットワークを学習するのに用いられた前記以前データに対応する、第３合成以前データを出力するプロセスを繰り返すようにして、前記第３合成以前データが、前記予め設定された第１ボリュームと前記予め設定された第２ボリュームとの和と同じ予め設定された第３ボリュームを有するようにし、  前記予め設定された第１ボリュームの前記新しいデータと、前記予め設定された第２ボリュームの前記第２合成以前データと、前記予め設定された第３ボリュームの前記第３合成以前データとを参照して、第２現在学習に利用される第２バッチを生成するプロセス；及び（ＩＶ）判別器（Ｄｉｓｃｒｉｍｉｎａｔｏｒ）をもって、前記第２バッチを前記判別器に入力して前記第２バッチに対応するスコアベクトル（Ｓｃｏｒｅ  Ｖｅｃｔｏｒ）を生成するようにし、第２ロスレイヤをもって、前記スコアベクトルとこれに対応するＧＴとを参照して少なくとも一つの第２ロスを算出するようにし、前記第２ロスをバックプロパゲーションすることで前記判別器及び前記オリジナルデータ生成器ネットワークの前記第２現在学習を遂行するプロセス；をさらに遂行することを特徴とする。
【００３５】
一例として、前記プロセッサは、前記第２ロスをバックプロパゲーションすることで前記判別器のロス及び前記複製データ生成器ネットワークのロスがそれぞれ収束するまで、前記（ＩＩＩ）プロセスと前記（ＩＶ）プロセスとを繰り返すことを特徴とする。
【００３６】
一例として、前記（ＩＶ）プロセスで、前記プロセッサは、前記第２ロスをバックプロパゲーションすることで前記判別器の少なくとも一つの重み付け値及び前記複製データ生成器ネットワークの少なくとも一つの重み付け値の最急上昇法（Ｇｒａｄｉｅｎｔ  Ａｓｃｅｎｔ）を遂行することを特徴とする。
【００３７】
一例として、前記（ＩＶ）プロセスで、前記プロセッサは、前記第２ロスをバックプロパゲーションすることで、前記判別器の前記第２現在学習を遂行中に、前記複製データ生成器ネットワークからの前記第２合成以前データを本物のデータ（Ｒｅａｌ  Ｄａｔａ）とみなし、前記判別器の前記第２現在学習を遂行することを特徴とする。
【００３８】
一例として、前記（ＩＶ）プロセスで、前記プロセッサは、前記オリジナルデータ生成器ネットワークの前記第２現在学習を遂行して、前記スコアベクトルのうちの前記第３合成以前データに対応する前記第３合成以前データスコアベクトルが最大化するようにすることを特徴とする。
【００３９】
一例として、前記第２現在学習が最初の学習である場合、前記（Ｉ）プロセスで、前記プロセッサは、前記予め設定された第１ボリュームの前記新しいデータのみを利用して前記第１バッチを生成し、前記（ＩＩＩ）プロセスで、前記プロセッサは、前記オリジナルデータ生成器ネットワークをもって、前記ｋ次元ランダムベクトルに対応する前記第３合成以前データを出力するプロセスを繰り返すようにして前記第３合成以前データが前記予め設定された第１ボリュームを有するようにし、前記予め設定された第１ボリュームの前記新しいデータ及び前記予め設定された第１ボリュームの前記第３合成以前データを参照して、前記第２バッチを生成することを特徴とする。
【００４０】
一例として、前記プロセッサは、前記第１ロスをバックプロパゲーションすることで、前記第１ロスが収束するまで前記（Ｉ）プロセスと前記（ＩＩ）プロセスとを繰り返すことを特徴とする。
【００４１】
一例として、前記（Ｉ）プロセスと前記（ＩＩ）プロセスとを前記第１現在学習で繰り返す場合、前記プロセッサは、（ｉ）最初のイテレーション（Ｉｔｅｒａｔｉｏｎ）で、前記（Ｉ）プロセスで前記予め設定された基準ボリュームの前記新しいデータそれぞれに対応するサンプリング確率（Ｓａｍｐｌｉｎｇ  Ｐｒｏｂａｂｉｌｉｔｙ）それぞれを初期化し、初期化された前記サンプリング確率を参照して前記予め設定された基準ボリュームの前記新しいデータを前記ユニフォームサンプリングして前記予め設定された第１ボリュームの前記新しいデータを生成し、前記（ＩＩ）プロセスにおいて、前記ニューラルネットワークの前記第１現在学習が完了すれば、前記予め設定された第１ボリュームの前記新しいデータに対応する前記第１ロスを参照して前記予め設定された第１ボリュームの前記新しいデータそれぞれに対応する前記サンプリング確率それぞれをアップデートすることで、前記予め設定された基準ボリュームの前記新しいデータそれぞれに対応する前記サンプリング確率それぞれをアップデートし、（ｉｉ）次のイテレーションで、前記（Ｉ）プロセスで前記予め設定された基準ボリュームの前記新しいデータそれぞれに対応する以前のイテレーションでアップデートされた前記サンプリング確率それぞれを参照して、前記予め設定された基準ボリュームの前記新しいデータの前記ユニフォームサンプリングによって前記予め設定された第１ボリュームの前記新しいデータを生成し、前記（ＩＩ）プロセスにおいて、前記ニューラルネットワークの前記第１現在学習が完了すると、前記予め設定された第１ボリュームの前記新しいデータに対応する前記第１ロスを参照して前記予め設定された基準ボリュームの前記新しいデータそれぞれに対応する前記以前のイテレーションでアップデートされた前記サンプリング確率それぞれをアップデートすることを特徴とする。
【００４２】
一例として、前記（Ｉ）プロセスと前記（ＩＩ）プロセスとを前記第１現在学習で繰り返す場合、最初のイテレーションで、前記プロセッサは、前記（Ｉ）プロセスにおいて、前記ブースティングネットワークを初期化した後、初期化された前記ブースティングネットワークをもって、前記ｋ次元ランダムベクトルを前記ｋ次元修正ベクトルに変換するようにし、次のイテレーションで、前記プロセッサは、前記（Ｉ）プロセスで、以前のイテレーションでの前記（ＩＩ）プロセスで前記第１現在学習を完了した前記ブースティングネットワークをもって、前記ｋ次元ランダムベクトルを前記ｋ次元修正ベクトルに変換するようにすることを特徴とする。
【００４３】
一例として、前記（ＩＩ）プロセスで、前記プロセッサは、前記第１ロスをバックプロパゲーションして、前記ニューラルネットワークのロスを最小化するように前記ニューラルネットワークの少なくとも一つの重み付け値の最急降下法（Ｇｒａｄｉｅｎｔ  Ｄｅｓｃｅｎｔ）を遂行して、前記第１ロスのうちの前記第１合成以前データに対応するロスを最大化するように前記ブースティングネットワークの少なくとも一つの重み付け値の最急上昇法を遂行することを特徴とする。
【００４４】
一例として、前記プロセッサは、前記ブースティングネットワークの前記重み付け値の前記最急上昇法を遂行する場合、前記ブースティングネットワークの前記重み付け値をクリッピング（Ｃｌｉｐｐｉｎｇ）することを特徴とする
一例として、前記ブースティングネットワークは、低次元の少なくとも一つのＦＣレイヤ（Ｆｕｌｌｙ  Ｃｏｎｎｅｃｔｅｄ  Ｌａｙｅｒ）を含むことを特徴とする。
【００４５】
本発明のまた他の一態様によれば、入力データを分析するニューラルネットワーク（Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）をテストするテスト装置において、インストラクションを格納する少なくとも一つのメモリ；及び学習装置が、（１）学習のために取得される新しいデータが予め設定された基準ボリューム（Ｐｒｅｓｅｔ  Ｂａｓｅ  Ｖｏｌｕｍｅ）になると、前記予め設定された基準ボリュームの前記学習用新しいデータをユニフォームサンプリング（Ｕｎｉｆｏｒｍ−Ｓａｍｐｌｉｎｇ）して前記学習用新しいデータが予め設定された第１ボリュームを有するようにし、少なくとも一つの学習用ｋ次元ランダムベクトル（ｋ−Ｄｉｍｅｎｓｉｏｎ  Ｒａｎｄｏｍ  Ｖｅｃｔｏｒ）をブースティングネットワーク（Ｂｏｏｓｔｉｎｇ  Ｎｅｔｗｏｒｋ）に入力して、前記ブースティングネットワークをもって、前記学習用ｋ次元ランダムベクトルを、これより高いロスを有する少なくとも一つの学習用ｋ次元修正ベクトル（ｋ−Ｄｉｍｅｎｓｉｏｎ  Ｍｏｄｉｆｉｅｄ  Ｖｅｃｔｏｒ）に変換するようにし、前記学習用ｋ次元修正ベクトルを、学習が完了したオリジナルデータ生成器ネットワーク（Ｏｒｉｇｉｎａｌ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）に入力して、前記オリジナルデータ生成器ネットワークをもって、前記学習用ｋ次元修正ベクトルに対応し、前記オリジナルデータ生成器ネットワークを学習するのに用いられていた学習用以前データ（Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）に対応する、学習用第１合成以前データ（Ｓｙｎｔｈｅｔｉｃ  Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）を出力するプロセスを繰り返すようにして、前記学習用第１合成以前データが予め設定された第２ボリュームを有するようにし、前記予め設定された第１ボリュームの前記学習用新しいデータ及び前記予め設定された第２ボリュームの前記学習用第１合成以前データを参照して第１現在学習（Ｃｕｒｒｅｎｔ−Ｌｅａｒｎｉｎｇ）に利用される学習用第１バッチ（ｂａｔｃｈ）を生成するプロセス、及び（２）前記ニューラルネットワークをもって、前記学習用第１バッチを前記ニューラルネットワークに入力して前記学習用第１バッチに対応する学習用出力情報（Ｏｕｔｐｕｔ  Ｉｎｆｏｒｍａｔｉｏｎ）を生成するようにし、第１ロスレイヤ（Ｌｏｓｓ  Ｌａｙｅｒ）をもって、前記学習用出力情報とこれに対応するＧＴ（Ｇｒｏｕｎｄ  Ｔｒｕｔｈ）とを参照して少なくとも一つの第１ロスを算出するようにし、前記第1ロスをバックプロパゲーションすることで前記ニューラルネットワークと前記ブースティングネットワークの前記第１現在学習を遂行するプロセスを完了した状態で、前記ニューラルネットワークをもって、テストデータをニューラルネットワークに入力して取得された前記テストデータに対応するテスト用出力情報を出力するようにするプロセスを遂行するための、前記インストラクションを実行するように構成された少なくとも一つのプロセッサ；を含むことを特徴とする。
【００４６】
一例として、前記学習装置が、（３）前記予め設定された基準ボリュームの前記学習用新しいデータをユニフォームサンプリングして前記学習用新しいデータが前記予め設定された第１ボリュームを有するようにし、前記オリジナルデータ生成器ネットワークを複製して複製データ生成器ネットワーク（Ｃｌｏｎｅｄ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）を生成するようにし、前記複製データ生成器ネットワークをもって、前記学習用ｋ次元ランダムベクトルに対応し、前記オリジナルデータ生成器ネットワークを学習するのに用いられた前記学習用以前データに対応する、学習用第２合成以前データを出力するプロセスを繰り返すようにして、前記学習用第２合成以前データが前記予め設定された第２ボリュームを有するようにし、前記オリジナルデータ生成器ネットワークをもって、前記学習用ｋ次元ランダムベクトルに対応し前記オリジナルデータ生成器ネットワークを学習するのに用いられた前記学習用以前データに対応する、学習用第３合成以前データを出力するプロセスを繰り返すようにして、前記学習用第３合成以前データが、前記予め設定された第１ボリュームと前記予め設定された第２ボリュームとの和と同じ予め設定された第３ボリュームを有するようにし、前記予め設定された第１ボリュームの前記学習用新しいデータと、前記予め設定された第２ボリュームの前記学習用第２合成以前データと、前記予め設定された第３ボリュームの前記学習用第３合成以前データとを参照して、第２現在学習に利用される学習用第２バッチを生成するプロセス、及び（４）判別器（Ｄｉｓｃｒｉｍｉｎａｔｏｒ）をもって、前記学習用第２バッチを前記判別器に入力して前記第２バッチに対応する学習用スコアベクトル（Ｓｃｏｒｅ  Ｖｅｃｔｏｒ）を生成するようにし、第２ロスレイヤをもって、前記学習用スコアベクトルとこれに対応するＧＴとを参照して少なくとも一つの第２ロスを算出するようにし、前記第２ロスをバックプロパゲーションすることで前記判別器及び前記オリジナルデータ生成器ネットワークの前記第２現在学習を遂行するプロセス；をさらに遂行することを特徴とする。
【００４７】
この他にも、本発明の方法を実行するためのコンピュータプログラムを記録するためのコンピュータ読読可能な記録媒体がさらに提供される。
【発明の効果】
【００４８】
本発明は、オンデバイス学習（Ｏｎ−Ｄｅｖｉｃｅ  Ｌｅａｒｎｉｎｇ）をもって、ローカル装置（Ｌｏｃａｌ  Ｄｅｖｉｃｅ）において、以前トレーニングデータを格納することなく以前学習に利用された以前トレーニングデータを効果的に生成することができる効果がある。
【００４９】
また、本発明はデータ生成器ネットワーク（Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）で生成された以前トレーニングデータと新しい学習データとを用いてニューラルネットワークのオンデバイス学習をもって、ニューラルネットワークの学習時の致命的忘却（Ｃａｔａｓｔｒｏｐｈｉｃ  Ｆｏｒｇｅｔｔｉｎｇ）を防止できる他の効果がある。
【００５０】
また、本発明は、ロスが高く学習効率のよくないトレーニングデータを用いて学習効果を高められるだけでなく、オンデバイス学習に必要なコンピューティングパワーと時間とを節減できるまたの効果がある。
【図面の簡単な説明】
【００５１】
本発明の実施例の説明に利用されるために添付された以下の各図面は、本発明の実施例のうちの一部に過ぎず、本発明が属する技術分野でおいて、通常の知識を有する者（以下「通常の技術者」）は、発明的作業が行われることなくこの図面に基づいて他の図面が得られ得る。
【図１】本発明の一例に係るディープラーニングを利用して入力データを分析するニューラルネットワークのオンデバイス連続学習（Ｏｎ−Ｄｅｖｉｃｅ  Ｃｏｎｔｉｎｕａｌ  Ｌｅａｒｎｉｎｇ）のための学習装置を概略的に示した図面である。
【図２】本発明の一例に係るディープラーニングを利用して入力データを分析するニューラルネットワークのオンデバイス連続学習のための方法を概略的に示した図面である。
【図３】本発明の一例に係るディープラーニングを利用して入力データを分析するニューラルネットワークのオンデバイス連続学習のための方法において、以前トレーニングデータを生成するデータ生成器ネットワーク（Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）の一例を概略的に示した図面である。
【図４】本発明の一例に係るディープラーニングを利用して入力データを分析するニューラルネットワークをオンデバイス連続学習する方法において、以前トレーニングデータを生成するデータ生成器ネットワークの他の例を示した図面である。
【図５】本発明の一例に係るディープラーニングを利用して入力データを分析するニューラルネットワークをオンデバイス連続学習のための方法において、データ生成器ネットワークを学習するプロセスを概略的に示した図面である。
【図６】本発明の一例に係るオンデバイス連続学習を完了したニューラルネットワークをテストするテスト装置を概略的に示した図面である。
【図７】本発明の一例に係るオンデバイス連続学習を完了したニューラルネットワークをテストするテスト方法を概略的に示した図面である。
【発明を実施するための形態】
【００５２】
後述する本発明に対する詳細な説明は、本発明の各目的、技術的解決方法及び長所を明確にするために、本発明が実施され得る特定実施例を例示として示す添付図面を参照する。これらの実施例は、通常の技術者が本発明を実施することができるように充分詳細に説明される。
【００５３】
また、本発明の詳細な説明及び各請求項にわたって、「含む」という単語及びそれらの変形は、他の技術的各特徴、各付加物、構成要素又は段階を除外することを意図したものではない。通常の技術者にとって本発明の他の各目的、長所及び各特性が、一部は本説明書から、また一部は本発明の実施から明らかになるであろう。以下の例示及び図面は実例として提供され、本発明を限定することを意図したものではない。
【００５４】
さらに、本発明は、本明細書に示された実施例のあらゆる可能な組み合わせを網羅する。本発明の多様な実施例は相互異なるが、相互排他的である必要はないことを理解されたい。例えば、ここに記載されている特定の形状、構造及び特性は一例と関連して、本発明の精神及び範囲を逸脱せず、かつ他の実施例で実装され得る。また、各々の開示された実施例内の個別構成要素の位置または配置は、本発明の精神及び範囲を逸脱せずに変更され得ることを理解されたい。従って、後述する詳細な説明は限定的な意味で捉えようとするものではなく、本発明の範囲は、適切に説明されれば、その請求項が主張することと均等なすべての範囲と、併せて添付された請求項によってのみ限定される。図面で類似する参照符号はいくつかの側面にかけて同一か類似する機能を指称する。
【００５５】
本発明で言及している各種イメージは、舗装または非舗装道路関連のイメージを含み得、この場合、道路環境で登場し得る物体（例えば、自動車、人、動物、植物、物、建物、飛行機やドローンのような飛行体、その他の障害物）を想定し得るが、必ずしもこれに限定されるものではなく、本発明で言及している各種イメージは、道路と関係のないイメージ（例えば、非舗装道路、路地、空き地、海、湖、川、山、森、砂漠、空、室内と関連したイメージ）でもあり得、この場合、非舗装道路、路地、空き地、海、湖、川、山、森、砂漠、空、室内環境で登場し得る物体（例えば、自動車、人、動物、植物、物、建物、飛行機やドローンのような飛行体、その他の障害物）を想定し得るが、必ずしもこれに限定されるものではない。
【００５６】
以下、本発明が属する技術分野で通常の知識を有する者が本発明を容易に実施することができるようにするために、本発明の好ましい実施例について添付の図面に基づいて詳細に説明する。
【００５７】
図１は、本発明の一例に係るディープラーニングを利用して、入力データを分析するニューラルネットワークのオンデバイス連続学習（Ｏｎ−Ｄｅｖｉｃｅ  Ｃｏｎｔｉｎｕａｌ  Ｌｅａｒｎｉｎｇ）のための学習装置を概略的に示した図面である。図１を参照すれば、学習装置１００は、ニューラルネットワークのオンデバイス連続学習を遂行するためのインストラクション（Ｉｎｓｔｒｕｃｔｉｏｎ）を格納するメモリ１１０と、メモリ１１０に格納されたインストラクションに対応するプロセスとを遂行してニューラルネットワークのオンデバイス連続学習を遂行するためのプロセッサ１２０を含み得る。
【００５８】
具体的に、学習装置１００は、典型的にコンピューティング装置（例えば、コンピュータのプロセッサ、メモリ、ストレージ、入力装置及び出力装置、その他の従来のコンピューティング構成要素を含み得る装置；ルータ、スイッチなどのような電子通信装置；ネットワーク接続ストレージ（ＮＡＳ）及びストレージエリアネットワーク（ＳＡＮ）のような電子情報ストレージシステム）と、コンピュータソフトウェア（つまり、コンピューティング装置をもって、特定の方式で機能させるインストラクション）との組み合わせを利用して希望するシステム性能を達成するものであり得る。
【００５９】
また、コンピューティング装置のプロセッサは、ＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）またはＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、キャッシュメモリ（Ｃａｃｈｅ  Ｍｅｍｏｒｙ）、データバス（Ｄａｔａ  Ｂｕｓ）などのハードウェア構成を含むことができる。また、コンピューティング装置は、オペレーティングシステム、特定の目的を遂行するアプリケーションのソフトウェア構成をさらに含むこともできる。
【００６０】
しかし、コンピューティング装置が本発明を実施するためのプロセッサ、ミディアム、または他のコンピューティング構成要素の何らかの組み合わせを含む統合装置（Ｉｎｔｅｇｒａｔｅｄ  Ｄｅｖｉｃｅ）を排除するものではない。
【００６１】
このように構成された本発明の一例に係る学習装置１００を利用したディープラーニングを利用して、入力データを分析するニューラルネットワークのオンデバイス連続学習を遂行する方法を、図２を参照に説明する。
【００６２】
まず、学習に向けて取得される新しいデータ（Ｎｅｗ  Ｄａｔａ）１０が予め設定された基準ボリュームＭになると、学習装置１００が、予め設定された基準ボリュームＭの新しいデータ１０をユニフォームサンプリング（Ｕｎｉｆｏｒｍ  Ｓａｍｐｌｉｎｇ）して新しいデータ１０の予め設定された第１ボリュームｍになるようにする。
【００６３】
この際、新しいデータ１０は、ニューラルネットワーク１４０を含む少なくとも一つのローカル装置（Ｌｏｃａｌ  Ｄｅｖｉｃｅ）自体から取得されるか、少なくとも一つの外部装置から取得され得る。
【００６４】
そして、学習装置１００は、ユニフォームサンプリングによって予め設定された基準ボリュームＭの新しいデータ１０のうちの一部を予め設定された第１ボリュームｍだけ選択する場合、予め設定された基準ボリュームＭの新しいデータ１０それぞれに対応するサンプリング確率piそれぞれを利用してｍ個の新しいデータを選択することができる。
【００６５】
ユニフォームサンプリングについての詳しい説明は、次の通りである。最初のイテレーション（Ｉｔｅｒａｔｉｏｎ）で１０個のイメージのうちの２つのイメージのバッチ（Ｂａｔｃｈ）が学習に利用されたなら、１/１０の重み付け値（サンプリング確率）それぞれは、１０個のイメージそれぞれに対して設定され得る。最初のイテレーションが行われている間、同一の重み付け値を有するため、任意で選択された２つのイメージのバッチが生成され得る。２つのイメージの重み付け値は、最初のイテレーションで生成された２つのイメージのロスを利用してアップデートされ得る。例えば、それぞれの重み付け値は、単一イメージの単一ロスの全体イメージのロスの和に対する割合であり得る。イメージを検出するのが難しければ重み付け値は大きくなり、イメージを検出しやすければ重み付け値は小さくなる。その後、より大きな重み付けを有する２つの選択されたイメージのバッチを利用して二番目のイテレーションが遂行され得、前記２つのイメージの重み付け値は、二番目のイテレーションによって生成された２つのイメージのロスを利用してアップデートされ得る。このプロセスが繰り返された結果、より大きなロスを有するイメージ（例えば、検出器の場合、検出が難しいイメージ）がさらに利用されて学習が向上する。この際、予め設定された基準ボリュームＭの新しいデータ１０それぞれに対応するサンプリング確率Piそれぞれは次のように表され得、以前のイテレーションで算出された大きなロスによって学習効率の悪い新しいデータには、より大きな重み付け値が付与され得る。
【００６６】
【数１】
2020123337.tif 000003
つまり、ニューラルネットワークの少なくとも一つの重み付け値の単一アップデートをイテレーションとする場合、最初のイテレーションで、学習装置１００は、予め設定された基準ボリュームＭの新しいデータそれぞれに対応するサンプリング確率Piそれぞれを初期化して、初期化されたサンプリング確率を参照して予め設定された基準ボリュームＭの新しいデータをユニフォームサンプリングして予め設定された第１ボリュームｍの新しいデータを選択することができる。この際、サンプリング確率Piの初期値は１／Ｍであり得る。そして、学習装置１００は、予め設定された第１ボリュームｍの新しいデータに対応するロスを参照して、予め設定された第１ボリュームｍの新しいデータに対応するそれぞれのサンプリング確率をアップデートすることにより、予め設定された基準ボリュームＭの新しいデータそれぞれに対応するサンプリング確率それぞれをアップデートすることができる。
【００６７】
その後、次のイテレーションで、学習装置１００は、予め設定された基準ボリュームＭの新しいデータそれぞれに対応し、以前のイテレーションでアップデートされたサンプリング確率Piを参照して予め設定された基準ボリュームＭの新しいデータをユニフォームサンプリングして予め設定された第１ボリュームｍの新しいデータを生成することができる。この際、それぞれのイテレーションで選択される予め設定された第１ボリュームｍの新しいデータは、部分的に異なる新しいデータであり得る。そして、学習装置１００は、予め設定された第１ボリュームｍの新しいデータに対応するロスを参照して予め設定された基準ボリュームＭの新しいデータそれぞれに対応し、以前イテレーションでアップデートされたサンプリング確率それぞれをアップデートすることができる。
【００６８】
一方、学習装置１００は、少なくとも一つのｋ次元ランダムベクトル（ｋ−Ｄｉｍｅｎｓｉｏｎ  Ｒａｎｄｏｍ  Ｖｅｃｔｏｒ）ｚをブースティングネットワーク（Ｂｏｏｓｔｉｎｇ  Ｎｅｔｗｏｒｋ）Ｂ１２５に入力して、ブースティングネットワークＢ１２５をもって、ｋ次元ランダムベクトルを、これより高いロスを有する少なくとも一つのｋ次元修正ベクトル（ｋ−Ｄｉｍｅｎｓｉｏｎ  Ｍｏｄｉｆｉｅｄ  Ｖｅｃｔｏｒ）に変換するようにする。この際、ｋ次元修正ベクトルｚ’はｚ’＝ｚ＋B（ｚ）のように表され得る。その後、学習装置１００は、ｋ次元修正ベクトルを事前に学習したオリジナルデータ生成器ネットワーク（Ｏｒｉｇｉｎａｌ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）Ｇ１３０に入力して、オリジナルデータ生成器ネットワークＧ１３０をもって、ｋ次元ランダムベクトルに対応する第１合成以前データ（Ｓｙｎｔｈｅｔｉｃ  Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）を出力するプロセスを繰り返すようにし、第１合成以前データが予め設定された第２ボリュームｎになるようにする。
【００６９】
この際、ブースティングネットワーク１２５は、少なくとも一つの低次元のＦＣレイヤ（Ｆｕｌｌｙ  Ｃｏｎｎｅｃｔｅｄ  Ｌａｙｅｒ）を含むことができる。一例として、ブースティングネットワーク１２５は３つのＦＣレイヤを含むことができる。詳しく見てみると、第１ＦＣレイヤは、ｋ次元ランダムベクトルに対してＦＣ演算を少なくとも一度適用して少なくとも一つのＬ次元ベクトルを生成することができ、第２ＦＣレイヤは、Ｌ次元ベクトルを少なくとも一つのＬ次元修正ベクトルに変換することができ、第３ＦＣレイヤは、Ｌ次元修正ベクトルをｋ次元修正ベクトルに変換することができる。この際、Ｌはｋ／２であり得る。これによって、ブースティングネットワーク１２５は、ロスの変化に素早く対応できるだけでなく、コンピューティングパワーオーバーヘッド（Ｃｏｍｐｕｔｉｎｇ  Ｐｏｗｅｒ  Ｏｖｅｒｈｅａｄ）も減らすことができるようになる。
【００７０】
そして、学習装置１００は、最初のイテレーションで、ブースティングネットワーク１２５を初期化した後、初期化されたブースティングネットワーク１２５をもって、ｋ次元ランダムベクトルをｋ次元修正ベクトルに変換するようにし、その次のイテレーションでは、以前のイテレーションで学習されたブースティングネットワーク１２５をもって、ｋ次元ランダムベクトルをｋ次元修正ベクトルに変換するようにすることができる。この際、ｋ次元ランダムベクトルは、それぞれのイテレーションで互いに異なる値を有することができる。
【００７１】
また、オリジナルデータ生成器ネットワークＧ１３０は、既に自身の学習に利用された以前データを出力するように学習されたもので、第１合成以前データは、以前データに対応し得る。そして、ｋ次元ランダムベクトルは、自分の構成要素それぞれに向けてサンプリングされた０ないし１の間の入力から生成され得る。オリジナルデータ生成器ネットワークＧ１３０の学習プロセスについては、後から説明する。
【００７２】
一方、オリジナルデータ生成器ネットワークＧ１３０は、ニューラルネットワーク１４０に対応して構成され得、ニューラルネットワーク１４０が入力される新しいデータ（ｘ，ｙ）１０に対応する（ｘ，ｙ）の次元、値の類型、及び範囲などによって適したネットワークアーキテクチャ（Ｎｅｔｗｏｒｋ  Ａｒｃｈｉｔｅｃｔｕｒｅ）を作成して利用することができる。
【００７３】
一例として、図３を参照すれば、ニューラルネットワーク１４０がベクトルに入力を受けるを入力される分類器である場合、オリジナルデータ生成器ネットワーク１３０は、ｋ次元ランダムベクトルに対応するｋ次元情報に対してＦＣ演算を適用して少なくとも一つのＤ次元ベクトル（Gｘ（ｚ））と、少なくとも一つのＣ次元ワンホット（Ｏｎｅ−Ｈｏｔ）ベクトル（Gy（ｚ））とを生成する少なくとも一つ以上のＦＣレイヤを含むことができる。
【００７４】
他の例として、図４を参照すれば、ニューラルネットワーク１４０が少なくとも一つのＲＧＢイメージを入力として取得する物体検出器である場合、オリジナルデータ生成器ネットワーク１３０は、ｋ次元ランダムベクトルに対応する１ｘ１ｘＫ情報を少なくとも一つのＨｘＷｘ３テンソル（Ｔｅｎｓｏｒ）（Gｘ（ｚ））に変換する少なくとも一つの転置コンボリューションレイヤ（Ｔｒａｎｓｐｏｓｅｄ  Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｌａｙｅｒ）１３１−１，１３１−２，…と、前記ＨｘＷｘ３テンソルを分析して、少なくとも一つのＲｘ（４＋Ｃ）ベクトルを生成するＦａｓｔｅｒ  Ｒ−ＣＮＮ  Ｆ１３２を含むように構成され得る。この際、多数の転置コンボリューションレイヤ１３１−１，１３１−２，…の出力端（Ｏｕｔｐｕｔ  Ｅｎｄ）には、少なくとも一つのＨ×Ｗ×３ベクトルを前記Ｈ×Ｗ×３テンソルに変換するアクティベーション関数（シグモイド；Ｓｉｇｍｏｉｄ）がともに提供され得る。そして、Ｒ×（４＋Ｃ）ベクトルにおいて、ＲはＲ次元のベクトル（Gy（ｚ））を含み、（４＋Ｃ）は、Ｘ1、Ｙ1、Ｘ2、Ｙ2、及び、Ｃ次元ワンホットベクトルを含み得る。
【００７５】
次に、再び図２を参照すれば、学習装置１００は、予め設定された第１ボリュームｍの新しいデータ及び予め設定された第２ボリュームｎの前記第１合成以前ベクトルを参照して、第１現在学習に利用される第１バッチ２０を生成する。この際、前記第１バッチ２０は、ｍ＋ｎボリュームであり得る。
【００７６】
その後、学習装置１００は、第１バッチ２０をニューラルネットワーク１４０に入力して、ニューラルネットワーク１４０をもって、前記第１バッチ２０に対応する出力情報を生成するようにし、第１ロスレイヤ１５０をもって、出力情報とこれに対応するＧＴ（Ｇｒｏｕｎｄ  Ｔｒｕｔｈ）とを参照して一つ以上の第１ロスを算出するようにする。この際、新しいデータに対するロスは、第１バッチ２０内の新しいデータに対するロスであり、Ｌ（Ｙi、Ｆ（xi））のように表され得、以前データに対するロスは、第１バッチ２０のうちの合成以前データに対するロスであり、Ｌ（Ｇy(zi)、Ｆ（Ｇx（zi）））のように表され得る。
【００７７】
そして、学習装置１００は、第１ロスをバックプロパゲーションして、ニューラルネットワーク１４０とブースティングネットワーク１２５の第１現在学習を遂行することができる。
【００７８】
この際、学習装置１００は、第１ロスをバックプロパゲーションすることで、ニューラルネットワーク１４０のロスを最小化するためにニューラルネットワーク１４０の少なくとも一つの重み付け値（ＷF）の最急降下法（Ｇｒａｄｉｅｎｔ  Ｄｅｓｃｅｎｔ）を遂行することができ、これによってニューラルネットワーク１４０の重み付け値（ＷF）は、次の公式にアップデートされ得る。
【００７９】
【数２】
2020123337.tif 000004
また、学習装置１００は、第１ロスをバックプロパゲーションすることにより、第１ロスのうちの第１合成以前データに対応するロスを最大化するように、つまり、
【００８０】
【数３】
2020123337.tif 000005
になるようにブースティングネットワーク１２５の重み付け値の最急上昇法（Ｇｒａｄｉｅｎｔ  Ａｓｃｅｎｔ）を遂行することができ、これによってブースティングネットワーク１２５の少なくとも一つの重み付け値（ＷB）は、次の公式にアップデートされ得る。
【００８１】
【数４】
2020123337.tif 000006
この際、学習装置１００は、ブースティングネットワーク１２５のすべての重み付け値の絶対値が閾値Ｃを超えないように
【００８２】
【数５】
2020123337.tif 000007
アップデートごとに全ての重み付け値をクリッピング（Ｃｌｉｐｐｉｎｇ）することができる。つまり、重み付け値ＷBが閾値Ｃを超過する場合は、ブースティングネットワーク１２５の重み付け値を閾値Ｃにアップデートし、重み付け値ＷBが負（−）の閾値Ｃ未満である場合は、負（−）のブースティングネットワーク１２５の重み付け値を閾値Ｃにアップデートすることができる。
【００８３】
そして、学習装置１００は、第１ロスをバックプロパゲーションすることで、ニューラルネットワーク１４０の重み付け値をアップデートするイテレーションプロセスをニューラルネットワーク１４０のロスとブースティングネットワーク１２５のロスが収束するまで繰り返す。
【００８４】
一方、反復によってニューラルネットワーク１４０のロスとブースティングネットワーク１２５のロスがイテレーションによって収束すると、学習装置１００は、ブースティングネットワーク１２５を初期化するか、次の学習の最初のイテレーションでブースティングネットワーク１２５を初期化することができる。
【００８５】
この際、ブースティングネットワーク１２５の初期値、つまり、初期重み付け値は十分に小さな値に設定することができる。一例として、平均は０、標準偏差は１ｅ−４などのように設定することができ、初期値の絶対値が閾値Ｃを超えないように設定することができる。
【００８６】
次に、図５を参照して、事前に学習されたオリジナルデータ生成器ネットワーク１３０を学習するプロセスを説明する。前記図２の説明から容易に理解可能な部分については、説明を省略することにする。
【００８７】
まず、学習装置１００は、新しいデータｈ１０をサンプリングして前記予め設定された第１ボリュームｍになるようにし、オリジナルデータ生成器ネットワークＧ１３０を複製することで複製データ生成器ネットワークＧ’１３０Ｃを生成する。
【００８８】
そして、前記学習装置１００は、前記複製データ生成器ネットワークＧ’１３０Ｃをもって、前記ｋ次元ランダムベクトルｚに対応する第２合成以前データＧ’（ｚ）を出力するプロセスを繰り返すようにして、第２合成以前データＧ’（ｚ）が予め設定された第２ボリュームｎになるようにする。この際、学習装置１００は、予め設定された第２ボリュームｎの第２合成以前データＧ’（ｚ）を実際データ（Ｒｅａｌ  Ｄａｔａ）とみなして、第２合成以前データＧ’（ｚ）を以前データＧ’（ｚ）に設定する。
【００８９】
そして、前記学習装置１００は、オリジナルデータ生成器ネットワークＧ１３０をもって、ｋ次元ランダムベクトルｚに対応する第３合成以前データＧ（ｚ）を出力するプロセスを繰り返すようにして、第３合成以前データＧ（ｚ）が予め設定された第３ボリュームｍ＋ｎになるようにする。この際、予め設定された第３ボリュームｍ＋ｎは、予め設定された第１ボリュームｍと、予め設定された第２ボリュームｎとの合計になるようにする。
【００９０】
その後、学習装置１００は、第１ボリュームｍの新しいデータｈと、第２ボリュームｎの第２合成以前データＧ’（ｚ）と、第３ボリュームｍ＋ｎの第３合成以前データＧ（ｚ）とを参照して第２現在学習に利用する第２バッチ２１を生成する。
【００９１】
次に、学習装置１００は、第２バッチ２１を判別器Ｄ１６０に入力して、判別器Ｄ１６０をもって、第２バッチ２１に対応するスコアベクトル（Ｓｃｏｒｅ  Ｖｅｃｔｏｒ）を出力するようにする。
【００９２】
この際、スコアベクトルは、予め設定された第２ボリュームｎの第２合成以前データＧ'（ｚ）のスコアベクトルと、予め設定された第１ボリュームｍの前記新しいデータｈのスコアベクトルと、予め設定された第３ボリュームｍ＋ｎの第３合成以前データＧ（ｚ）スコアベクトルとを含み得る。予め設定された第２ボリュームｎの第２合成以前データＧ'（ｚ）のスコアベクトルは、
【００９３】
【数６】
2020123337.tif 000008
のように表され得、予め設定された第１ボリュームｍの新しいデータｈのスコアベクトルは、
【００９４】
【数７】
2020123337.tif 000009
のように表され得、予め設定された第３ボリュームｍ＋ｎの第３合成以前データＧ（ｚ）のスコアベクトルは、
【００９５】
【数８】
2020123337.tif 000010
のように表され得る。
【００９６】
そして、学習装置１００は、第２ロスレイヤ１７０をもって、スコアベクトルとこれに対応するＧＴとを参照して少なくとも一つ以上の第２ロスを算出するようにすることで、第２ロスをバックプロパゲーションして判別器Ｄ１６０及びオリジナルデータ生成器ネットワークＧ１３０の第２現在学習を遂行することができる。
【００９７】
この際、学習装置１００は、第２ロスをバックプロパゲーションして判別器Ｄ１６０の少なくとも一つの重み付け値（ＷD）の最急上昇法を遂行することができ、これによって判別器Ｄ１６０の少なくとも一つの重み付け値（ＷD）は、次の公式にアップデートされ得る。
【００９８】
【数９】
2020123337.tif 000011
また、学習装置１００は、第２ロスをバックプロパゲーションしてオリジナルデータ生成器ネットワークＧ１３０の少なくとも一つの重み付け値（ＷG）の最急上昇法を遂行することができ、それによってオリジナルデータ生成器ネットワークＧ１３０の少なくとも一つの重み付け値（ＷG）は、次の公式にアップデートされ得る。
【００９９】
【数１０】
2020123337.tif 000012
一方、学習装置１００は、複製データ生成器ネットワークＧ’１３０Ｃからの第２合成以前データＧ’（ｚ）を実際データとみなし、判別器Ｄ１６０の第２現在学習を遂行し、スコアベクトルのうちの第３合成以前データＧ（ｚ）に対応する第３合成以前データスコアのベクトルが最大化されるようにオリジナルデータ生成器ネットワークＧ１３０の第２現在学習を遂行する。
【０１００】
従って、判別器１６０の学習に利用される実際データは、新しいデータｈと第２合成以前データである以前データＧ’（ｚ）とを含み得、それによってオリジナルデータ生成器ネットワークＧ１３０は、実際データである新しいデータｈと第２合成以前データである以前データＧ’（ｚ）とを出力するように学習され得る。
【０１０１】
そして、学習装置１００は、第２ロスをバックプロパゲーションして判別器Ｄ１６０のロス及びオリジナルデータ生成器ネットワークＧ１３０のロスが収束するまで、前記のプロセス、つまり、イテレーションを遂行する。つまり、学習装置１００は、第２合成以前データと、新しいデータと、第３合成以前データとを利用して、第２バッチの生成と、第２バッチを利用した判別器１６０と、オリジナルデータ生成器ネットワーク１３０との第２現在学習を繰り返すことにより、判別器１６０のロスとオリジナルデータ生成器ネットワーク１３０のロスとが収束されるように、第２バッチを利用して判別器１６０とオリジナルデータ生成器ネットワーク１３０との第２現在学習を繰り返すことができる。
【０１０２】
この際、判別器１６０の学習に利用される以前データの新しいデータに対する比率は、ｎ：m＝N：Ｍになり、新たなデータのすべてのボリュームＭが第２バッチを利用して学習される場合、学習されたオリジナルデータ生成器ネットワークＧ１３０から出力される以前データの新しいデータに対する比率はＮ：Ｍになり得る。
【０１０３】
その後、第２現在学習が完了すると、一例として、判別器１６０のロスとオリジナルデータ生成器ネットワーク１３０のロスとが収束すると、学習装置１００が、新しいデータを削除し、新しいデータ及び第２合成以前データは、次の学習で利用できるように以前データとして出力するためにオリジナルデータ生成器ネットワークをアップデートすることができる。
【０１０４】
つまり、オリジナルデータ生成器ネットワーク１３０が第２現在学習に利用される実際データに対応する新しいデータと、以前データとを出力できるように学習された状態であるため、新しいデータを削除し得、次の学習が遂行される場合、オリジナルデータ生成器ネットワーク１３０は、現在学習に利用された以前データと、新しいデータとを出力することによって次の学習のための以前データを取得することができる。
【０１０５】
一方、前記第１現在学習と第２現在学習とを含む現在学習が第１学習である場合は、以前データなしに第１現在学習と第２現在学習とを遂行することができる。
【０１０６】
つまり、学習装置１００は、予め設定された第１ボリュームｍの新しいデータだけで第１バッチを生成し、第１バッチを利用してニューラルネットワーク１４０のロスが収束するように第１現在学習を遂行する。
【０１０７】
そして、学習装置１００は、ブースティングネットワーク１２５をもって、ｋ次元ランダムベクトルに対応するｋ次元修正ベクトルを生成するようにし、オリジナルデータ生成器ネットワーク１３０をもって、ｋ次元修正ベクトルに対応する第３合成以前データを出力するプロセスを繰り返すようにして第３合成以前データが予め設定された第１ボリュームｍになるようにし、予め設定された第１ボリュームの新しいデータ及び予め設定された第１ボリュームの第３合成以前データを参照して第２バッチを生成し、第２バッチを利用して判別器１６０のロス及びオリジナルデータ生成器ネットワーク１３０のロスが収束するように第２現在学習を遂行し得る。
【０１０８】
この後、学習装置１００は、現在学習に利用された新しいデータを削除し、新しいデータを以前データに初期化することができる。
【０１０９】
図６は、本発明の一例に係るオンデバイス連続学習されたニューラルネットワークをテストするテスト装置を概略的に示した図面である。図６を参照すれば、テスト装置２００は、オンデバイス連続学習を完了したニューラルネットワークをテストするためのインストラクションを格納するメモリ２１０と、メモリ２１０に格納されたインストラクションとに対応してオンデバイス連続学習を完了したニューラルネットワークをテストするプロセスを遂行するためのプロセッサ２２０を含むことができる。
【０１１０】
具体的に、テスト装置２００は、典型的にコンピューティング装置（例えば、コンピュータのプロセッサ、メモリ、ストレージ、入力装置及び出力装置、その他の従来のコンピューティング装置の構成要素を含み得る装置；ルータ、スイッチなどのような電子通信装置；ネットワーク接続ストレージ（ＮＡＳ）及びストレージエリアネットワーク（ＳＡＮ）のような電子情報ストレージシステム）と、コンピュータソフトウェア（つまり、コンピューティング装置をもって、特定の方式で機能させるインストラクション）との組み合わせを利用して希望するシステム性能を達成するものであり得る。
【０１１１】
また、コンピューティング装置のプロセッサは、ＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）またはＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、キャッシュメモリ（Ｃａｃｈｅ  Ｍｅｍｏｒｙ）、データバス（Ｄａｔａ  Ｂｕｓ）などのハードウェア構成を含むことができる。また、コンピューティング装置は、オペレーティングシステム、特定の目的を遂行するアプリケーションのソフトウェア構成をさらに含むこともできる。
【０１１２】
しかし、コンピューティング装置が本発明を実施するためのプロセッサ、ミディアム、または他のコンピューティング構成要素の何らかの組み合わせを含む統合装置（Ｉｎｔｅｇｒａｔｅｄ  Ｄｅｖｉｃｅ）を排除するものではない。
【０１１３】
このように構成された本発明の一例に係るテスト装置２００を利用して、オンデバイス連続学習を完了したニューラルネットワークをテストする方法について、図７を参照して説明する。
【０１１４】
前記で説明したような方法によってニューラルネットワーク１４０が学習された状態で、テスト装置２００がテストデータ２１０を取得するか、他の装置をもって取得するように支援する。この際、テストデータ２１０は、イメージ情報、センサ（Ｓｅｎｓｏｒ）情報、音声情報などを含み得るが、これに限定されず、特徴分析が可能なすべての入力データを含むことができる。
【０１１５】
そして、テスト装置２００は、テストデータ２１０をニューラルネットワーク１４０に入力して、ニューラルネットワーク１４０をもって、テストデータ２１０に対応する出力情報を生成するようにすることができる。
【０１１６】
参考までに、以下の説明において混乱を避けるために、学習プロセスに関連する用語には「学習用」という単語が追加され、テスト用プロセスに関連する用語には「テスト用」という単語が追加された。
【０１１７】
一方、学習用新しいデータが予め設定された基準ボリューム（Ｐｒｅｓｅｔ  Ｂａｓｅ  Ｖｏｌｕｍｅ）になると、学習装置１００は、学習用予め設定された基準ボリュームの学習用新しいデータをユニフォームサンプリング（Ｕｎｉｆｏｒｍ−Ｓａｍｐｌｉｎｇ）して学習用新しいデータが予め設定された第１ボリュームを有するようにし、少なくとも一つの学習用ｋ次元ランダムベクトル（ｋ−Ｄｉｍｅｎｓｉｏｎ  Ｒａｎｄｏｍ  Ｖｅｃｔｏｒ）をブースティングネットワーク（Ｂｏｏｓｔｉｎｇ  Ｎｅｔｗｏｒｋ）に入力して、ブースティングネットワークをもって、学習用ｋ次元ランダムベクトルを、これより高いロスを有する少なくとも一つの学習用ｋ次元修正ベクトル（ｋ−Ｄｉｍｅｎｓｉｏｎ  Ｍｏｄｉｆｉｅｄ  Ｖｅｃｔｏｒ）に変換するようにし、学習用ｋ次元修正ベクトルを、学習が完了したオリジナルデータ生成器ネットワーク（Ｏｒｉｇｉｎａｌ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）に入力して、オリジナルデータ生成器ネットワークをもって、学習用ｋ次元修正ベクトルに対応し、オリジナルデータ生成器ネットワークを学習するのに用いられていた学習用以前データ（Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）に対応する、学習用第１合成以前データ（Ｓｙｎｔｈｅｔｉｃ  Ｐｒｅｖｉｏｕｓ  Ｄａｔａ）を出力するプロセスを繰り返すようにして、学習用第１合成以前データが予め設定された第２ボリュームを有するようにし、予め設定された第１ボリュームの学習用新しいデータ及び予め設定された第２ボリュームの学習用第１合成以前データを参照して、第１現在学習（Ｃｕｒｒｅｎｔ−Ｌｅａｒｎｉｎｇ）に利用される学習用第１バッチ（Ｂａｔｃｈ）を生成するプロセスと、ニューラルネットワークとをもって、学習用第１バッチをニューラルネットワークに入力して学習用第１バッチに対応する学習用出力情報（Ｏｕｔｐｕｔ  Ｉｎｆｏｒｍａｔｉｏｎ）を生成するようにし、第１レイヤ（Ｌｏｓｓ  Ｌａｙｅｒ）をもって、学習用出力情報とこれに対応するＧＴとを参照して少なくとも一つの第１ロスを算出するようにし、第１ロスをバックプロパゲーションすることで、ニューラルネットワークとブースティングネットワークとの第１現在学習を遂行するプロセスを完了した状態で、テスト装置２００が、テストデータを取得するか、他の装置をもって取得するよう支援することができ、テスト装置２００は、ニューラルネットワークをもって、テストデータをニューラルネットワークに入力してテストデータに対応する出力情報を生成するようにすることができる。
【０１１８】
そして、学習装置１００は、予め設定された基準ボリュームの学習用新しいデータをユニフォームサンプリングして学習用新しいデータが予め設定された第１ボリュームを有するようにし、オリジナルデータ生成器ネットワークを複製して複製データ生成器ネットワーク（Ｃｌｏｎｅｄ  Ｄａｔａ  Ｇｅｎｅｒａｔｏｒ  Ｎｅｔｗｏｒｋ）を生成するようにし、複製データ生成器ネットワークをもって、学習用ｋ次元ランダムベクトルに対応し、オリジナルデータ生成器ネットワークを学習するのに用いられた学習用以前データに対応する、学習用第２合成以前データを出力するプロセスを繰り返すようにして、学習用第２合成以前データが予め設定された第２ボリュームを有するようにし、オリジナルデータ生成器ネットワークをもって、学習用ｋ次元ランダムベクトルに対応しオリジナルデータ生成器ネットワークを学習するのに用いられた学習用以前データに対応する、学習用第３合成以前データを出力するプロセスを繰り返すようにして、学習用第３合成以前データが、予め設定された第１ボリュームと予め設定された第２ボリュームとの和と同じ予め設定された第３ボリュームを有するようにし、予め設定された第１ボリュームの学習用新しいデータと、予め設定された第２ボリュームの学習用第２合成以前データと、予め設定された第３ボリュームの学習用第３合成以前データとを参照して、第２現在学習に利用する学習用第２バッチを生成するプロセスと、判別器（Ｄｉｓｃｒｉｍｉｎａｔｏｒ）とをもって、学習用第２バッチを判別器に入力して学習用第２バッチに対応する学習用スコアベクトル（Ｓｃｏｒｅ  Ｖｅｃｔｏｒ）を生成するようにし、第２ロスレイヤをもって、学習用スコアベクトルとこれに対応するＧＴとを参照して第２ロスを算出するようにし、第２ロスをバックプロパゲーションすることによって、判別器とオリジナルデータ生成器ネットワークとの第２現在学習を遂行するプロセスを完了した状態であり得る。
【０１１９】
本発明は、スマートフォン、ドローン、船舶または軍事目的で利用するために、プライバシー侵害防止、ストレージのようなリソース最適化、及びトレーニングイメージサンプリングプロセス最適化のために遂行され得る。また、本発明は、ニューラルネットワーク、ＧＡＮ（Ｇｅｎｅｒａｔｉｖｅ  Ａｄｖｅｒｓａｒｉａｌ  Ｎｅｔｗｏｒｋ）などの学習プロセスによって遂行されることができる。
【０１２０】
また、以上で説明された本発明に係る実施例は、多様なコンピュータ構成要素を通じて遂行できるプログラム命令語の形態で実装されてコンピュータで判読可能な記録媒体に記録され得る。前記コンピュータで読取り可能な記録媒体はプログラム命令語、データファイル、データ構造などを単独でまたは組み合わせて含まれ得る。前記コンピュータ読取り可能な記録媒体に記録されるプログラム命令語は、本発明のために特別に設計されて構成されたものであるか、コンピュータソフトウェア分野の当業者に公知となって使用可能なものでもよい。コンピュータで判読可能な記録媒体の例には、ハードディスク、フロッピーディスク及び磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤのような光記録媒体、フロプティカルディスク（ｆｌｏｐｔｉｃａｌｄｉｓｋ）のような磁気−光媒体（ｍａｇｎｅｔｏ−ｏｐｔｉｃａｌｍｅｄｉａ）、及びＲＯＭ、ＲＡＭ、フラッシュメモリなどといったプログラム命令語を格納して遂行するように特別に構成されたハードウェア装置が含まれる。プログラム命令語の例には、コンパイラによって作られるもののような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行され得る高級言語コードも含まれる。前記ハードウェア装置は、本発明に係る処理を遂行するために一つ以上のソフトウェアモジュールとして作動するように構成され得、その逆も同様である。
【０１２１】
以上、本発明が具体的な構成要素などのような特定事項と限定された実施例及び図面によって説明されたが、これは本発明のより全般的な理解を助けるために提供されたものであるに過ぎず、本発明が前記実施例に限られるものではなく、本発明が属する技術分野において通常の知識を有する者であれば係る記載から多様な修正及び変形が行われ得る。
【０１２２】
従って、本発明の思想は前記説明された実施例に局限されて定められてはならず、後述する特許請求の範囲だけでなく、本特許請求の範囲と均等または等価的に変形されたものすべては、本発明の思想の範囲に属するといえる。
【符号の説明】
【０１２３】
１００：学習装置
１１０：メモリ
１２０：プロセッサ
１２５：ブースティングネットワーク
１３０：データ生成器ネットワーク
１４０：ニューラルネットワーク
１５０：第１ロスレイヤ
１６０：判別器
１７０：第２ロスレイヤ
２００：テスト装置
２１０：メモリ
２２０：プロセッサ
【図１】
2020123337.tif 000013
【図２】
2020123337.tif 000014
【図３】
2020123337.tif 000015
【図４】
2020123337.tif 000016
【図５】
2020123337.tif 000017
【図６】
2020123337.tif 000018
【図７】
2020123337.tif 000019