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