(57)【要約】【課題】分類の困難なデータをより高精度に出力する。【解決手段】分類装置は、生成部と、学習部と、分類部と、出力制御部と、を備える。生成部は、学習データと特徴量が類似する擬似データを生成する。学習部は、擬似データを分類するための擬似クラスおよび擬似クラス以外の複数の分類クラスのいずれかにデータを分類する、ニューラルネットワークにより構築される分類モデルを、学習データと擬似データを用いて学習する。分類部は、分類の対象となる入力データを、分類モデルを用いて擬似クラスおよび複数の分類クラスのいずれかに分類する。出力制御部は、擬似クラスに分類された入力データが、複数の分類クラスのいずれにも属さないデータであることを示す情報を出力する。【選択図】図１
2020046883.tif 000002
【特許請求の範囲】
【請求項１】
学習データと特徴量が類似する擬似データを生成する生成部と、
前記擬似データを分類するための擬似クラスおよび前記擬似クラス以外の複数の分類クラスのいずれかにデータを分類する、ニューラルネットワークにより構築される分類モデルを、前記学習データと前記擬似データを用いて学習する学習部と、
分類の対象となる入力データを、前記分類モデルを用いて前記擬似クラスおよび複数の前記分類クラスのいずれかに分類する分類部と、
前記擬似クラスに分類された前記入力データが、複数の前記分類クラスのいずれにも属さないデータであることを示す情報を出力する出力制御部と、
を備える分類装置。
【請求項２】
前記学習部は、前記学習データを前記分類クラスのいずれかに分類し、前記擬似データを前記擬似クラスに分類する誤差を表す第１損失基準と、前記学習データを教師ラベルと同じ前記分類クラスに分類する誤差を表す第２損失基準と、に基づいて前記分類モデルを学習する、
請求項１に記載の分類装置。
【請求項３】
前記生成部は、ニューラルネットワークにより構築される、前記擬似データを生成する生成モデルを、前記擬似データと前記学習データの違いを表す第３損失基準に基づいて学習し、学習した前記生成モデルを用いて前記擬似データを生成する、
請求項１に記載の分類装置。
【請求項４】
前記第３損失基準は、前記学習データの特徴量の平均値と、前記擬似データの特徴量の平均値と、の差が小さいほど値が小さくなる基準を示す、
請求項３に記載の分類装置。
【請求項５】
前記生成部は、さらに、前記学習データおよび生成した前記擬似データの少なくとも一方を変換した加工擬似データを生成し、
前記学習部は、前記擬似データと前記加工擬似データとを前記擬似クラスに分類するように前記分類モデルを学習する、
請求項１に記載の分類装置。
【請求項６】
前記生成部は、学習の回数に応じて前記加工擬似データの生成量を変化させる、
請求項５に記載の分類装置。
【請求項７】
学習データと特徴量が類似する擬似データを生成する生成ステップと、
前記擬似データを分類するための擬似クラスおよび前記擬似クラス以外の複数の分類クラスのいずれかにデータを分類する、ニューラルネットワークにより構築される分類モデルを、前記学習データと前記擬似データを用いて学習する学習ステップと、
分類の対象となる入力データを、前記分類モデルを用いて前記擬似クラスおよび複数の前記分類クラスのいずれかに分類する分類ステップと、
前記擬似クラスに分類された前記入力データが、複数の前記分類クラスのいずれにも属さないデータであることを示す情報を出力する出力制御ステップと、
を含む分類方法。
【請求項８】
コンピュータを、
学習データと特徴量が類似する擬似データを生成する生成部と、
前記擬似データを分類するための擬似クラスおよび前記擬似クラス以外の複数の分類クラスのいずれかにデータを分類する、ニューラルネットワークにより構築される分類モデルを、前記学習データと前記擬似データを用いて学習する学習部と、
分類の対象となる入力データを、前記分類モデルを用いて前記擬似クラスおよび複数の前記分類クラスのいずれかに分類する分類部と、
前記擬似クラスに分類された前記入力データが、複数の前記分類クラスのいずれにも属さないデータであることを示す情報を出力する出力制御部と、
として機能させるためのプログラム。 
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、分類装置、分類方法およびプログラムに関する。
【背景技術】
【０００２】
機械学習を用いた分類システムでは、分類の結果を目視で確認したいケースが存在する。例えば、病気の有無の判定するための医療画像の分類システムでは、機械学習により病気の有無の分類が困難な画像を、医療のエキスパートに提示して判断させるアプリケーションが考えられる。機械学習による分類が困難なデータをユーザに提示する方法としては、例えば、分類のクラスに属する確率値または信頼度などが低いデータをユーザに提示する方法が挙げられる。機械学習では、クラスの確率値および信頼度は、ユーザが作成した教師データから学習した分類モデルによる算出される。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】SALIMANS,  Tim,  et  al.  “Improved  techniques  for  training  gans.”  In:  Advances  in  Neural  Information  Processing  Systems.  2016.  p.  2234-2242.
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、例えばディープラーニングのような高性能の学習では、学習データから複雑な分類モデルが作成されるため、クラスの確率値または信頼度が必ずしも分類の難易度を表していない場合がある。この結果、分類の困難なデータが入力された場合でも高い確率値または信頼度でこのデータがいずれかのクラスに分類される可能性がある。このような場合、分類の困難なデータとしてユーザに提示されることが望ましいデータが提示できなくなるおそれがある。
【課題を解決するための手段】
【０００５】
実施形態の分類装置は、生成部と、学習部と、分類部と、出力制御部と、を備える。生成部は、学習データと特徴量が類似する擬似データを生成する。学習部は、擬似データを分類するための擬似クラスおよび擬似クラス以外の複数の分類クラスのいずれかにデータを分類する、ニューラルネットワークにより構築される分類モデルを、学習データと擬似データを用いて学習する。分類部は、分類の対象となる入力データを、分類モデルを用いて擬似クラスおよび複数の分類クラスのいずれかに分類する。出力制御部は、擬似クラスに分類された入力データが、複数の分類クラスのいずれにも属さないデータであることを示す情報を出力する。
【図面の簡単な説明】
【０００６】
【図１】第１の実施形態にかかる分類装置のブロック図。
【図２】第１の実施形態における分類処理のフローチャート。
【図３】潜在空間における学習データと擬似データの分布の様子を示す概念図。
【図４】第２の実施形態にかかる分類装置のブロック図。
【図５】第２の実施形態における分類処理のフローチャート。
【図６】加工擬似データの例を示す図。
【図７】第１または第２の実施形態にかかる分類装置のハードウェア構成図。
【発明を実施するための形態】
【０００７】
以下に添付図面を参照して、この発明にかかる分類装置の好適な実施形態を詳細に説明する。
【０００８】
上記のように、分類の困難なデータとしてユーザに提示されることが望ましい場合であっても、高い確率値または信頼度であるクラスに分類されることにより、該当データが提示されなくなることがある。すなわち、分類の困難なデータを提示する精度が低くなる場合がある。
【０００９】
以下の実施形態は、ディープラーニングの手法の１つである敵対的生成ネットワーク（ＧＡＮ：Generative  Adversarial  Network）を適用する。ここで、ＧＡＮを改良したＩＧＡＮ（Improved  GAN）と呼ばれる技術について説明する。ＩＧＡＮでは、データ分類の精度を向上するために、以下のような処理が繰り返し実行され、最終的な分類モデルが求められる。
（Ｓ１）学習データと類似したデータを生成する生成モデルにより擬似データを生成する。
（Ｓ２）学習データと擬似データを実在クラスと擬似クラスに正確に分類するように分類モデルを学習する。
（Ｓ３）学習データを各教師ラベルのクラスに正確に分類するように分類モデルを学習する。
（Ｓ４）擬似データが学習データと類似するように生成モデルを学習する。
【００１０】
ここでは、アプリケーションで分類するクラスがＫ個（Ｋは２以上の整数）あるとする。本実施形態ではこのＫ個のクラスを分類クラスと呼ぶ。実在クラスは、各分類クラスが属するクラスである。ＩＧＡＮでは擬似クラスを加えた（Ｋ＋１）個のクラスへの分類を学習し、新たな入力データを分類するときには擬似クラスを除いたＫ個の分類クラスへ新たな入力データが分類される。
【００１１】
以下の実施形態では、ＩＧＡＮと同様に、分類の困難なデータに類似したデータとなるような擬似データを生成し、擬似データを擬似クラスに分類するように学習する。一方、ＩＧＡＮと異なり、擬似クラスを含む（Ｋ＋１）個のクラスへの分類モデルを用いて新たな入力データを分類する。そして、入力データが擬似クラスに分類された場合、入力データがいずれの分類クラスにも属さないこと、すなわち、入力データが分類の困難なデータであることを示す情報を出力する。
【００１２】
以下の実施形態では、擬似クラスを含めた（Ｋ＋１）個のクラスへの分類モデルを用いることで、ＩＧＡＮなどのようにＫ個のクラスに分類して確率値または信頼度が低いデータを提示する技術に比べて、分類クラスへの分類を高精度に保ったまま、分類が困難なデータをより高い精度で提示することが可能になる。
【００１３】
（第１の実施形態）
図１は、第１の実施形態にかかる分類装置１００の構成の一例を示すブロック図である。図１に示すように、分類装置１００は、生成部１０１と、学習部１０２と、分類部１０３と、出力制御部１０４と、記憶部１２１と、を備えている。
【００１４】
記憶部１２１は、分類装置１００による各種処理で用いられる各種データを記憶する。例えば記憶部１２１は、学習データ、擬似データ、生成モデルのパラメータ、および、分類モデルのパラメータなどを記憶する。学習データは、例えば、データが分類されるべきクラスを表す教師ラベルｙｉ、および、データの特徴を表す特徴量ｘｉを含む。例えば記憶部１２１は、Ｎ個（Ｎは２以上の整数）の学習データ（ｙｉ，ｘｉ）（ｉは１≦ｉ≦Ｎを満たす整数）を記憶する。ｙｉはデータの分類クラスのいずれかを表す教師ラベルである。ｘｉは例えばｄ次元の特徴量である。
【００１５】
記憶部１２１は、フラッシュメモリ、メモリカード、ＲＡＭ（Random  Access  Memory）、ＨＤＤ（Hard  Disk  Drive）、および、光ディスクなどの一般的に利用されているあらゆる記憶媒体により構成することができる。
【００１６】
生成部１０１は、分類モデルの学習に用いる擬似データを生成する。生成部１０１は、例えばＩＧＡＮと同じ手法により、学習データと特徴量が類似する擬似データを生成する。より具体的には、生成部１０１は、ニューラルネットワークにより構築される擬似データを生成する生成モデルを、擬似データと学習データの違いを表す損失基準（第３損失基準）に基づいて学習し、学習した生成モデルを用いて擬似データを生成する。第３損失基準は、例えば、学習データの特徴量の平均値と、擬似データの特徴量の平均値と、の差が小さいほど値が小さくなる基準である。
【００１７】
学習部１０２は、分類モデルを、学習データ、および、生成部１０１により生成された疑似データを用いて学習する。分類モデルは、例えばニューラルネットワークにより構築されるモデルであり、擬似クラスおよび複数の分類クラスのいずれかに入力データを分類するモデルである。
【００１８】
学習部１０２は、例えば、学習データを分類クラスのいずれかに分類し、擬似データを擬似クラスに分類する誤差を表す損失基準（第１損失基準）と、学習データを教師ラベルと同じ分類クラスに分類する誤差を表す損失基準（第２損失基準）と、に基づいて分類モデルを学習する。
【００１９】
分類部１０３は、分類の対象として入力される入力データを、分類モデルを用いて擬似クラスおよび複数の分類クラスのいずれかに分類する。このように、分類部１０３は、例えばＩＧＡＮとは異なり、擬似クラスを含む（Ｋ＋１）個のクラスへの分類モデルを用いて入力データを分類する。
【００２０】
出力制御部１０４は、分類装置１００の各種処理による各種情報の出力を制御する。例えば出力制御部１０４は、擬似クラスに分類された入力データが、複数の分類クラスのいずれにも属さないデータであることを示す情報を出力する。出力制御部１０４による出力方法はどのような方法であってもよい。例えば出力制御部１０４は、情報をディスプレイなどの表示装置に表示してもよいし、インターネットなどのネットワークを介して指定した宛先（サーバ装置、パーソナルコンピュータなど）に情報を送信してもよい。
【００２１】
上記各部（生成部１０１、学習部１０２、分類部１０３、および、出力制御部１０４）は、例えば、１または複数のプロセッサにより実現される。例えば上記各部は、ＣＰＵ（Central  Processing  Unit）などのプロセッサにプログラムを実行させること、すなわちソフトウェアにより実現してもよい。上記各部は、専用のＩＣ（Integrated  Circuit）などのプロセッサ、すなわちハードウェアにより実現してもよい。上記各部は、ソフトウェアおよびハードウェアを併用して実現してもよい。複数のプロセッサを用いる場合、各プロセッサは、各部のうち１つを実現してもよいし、各部のうち２以上を実現してもよい。
【００２２】
上記各部は、複数の物理的に異なる装置に分散して備えられてもよい。例えば上記各部の少なくとも一部は、クラウド上で処理を実行するクラウドサーバに搭載されていてもよい。
【００２３】
次に、このように構成された第１の実施形態にかかる分類装置１００による分類処理について説明する。図２は、第１の実施形態における分類処理の一例を示すフローチャートである。
【００２４】
生成部１０１は、擬似データを生成する生成モデルを初期化する（ステップＳ１０１）。生成モデルは、例えば３層のニューラルネットワークモデルである。このような多層のニューラルネットワークモデルは、ニューラルネットワークを用いた機械学習（例えばディープラーニング）と同様の技術で構築することができる。生成部１０１は、例えば、入力層のノード数は１００、出力層のノードは学習データの次元数ｄと同じ数に設定した生成モデルを生成する。初期化では、生成モデルの各ノードの重みは例えばランダムに設定される。
【００２５】
生成部１０１は、生成モデルを用いて擬似データを生成する（ステップＳ１０２）。生成部１０１は、例えば１００次元のランダムな入力をｎ個生成し、その入力を生成モデルで変換してｄ次元の擬似データを生成する。
【００２６】
学習部１０２は、学習データと擬似データとを用いて、分類モデルのパラメータを更新する（ステップＳ１０３）。分類モデルは、例えば３層のニューラルネットである。生成モデルと同様に、分類モデルは、ニューラルネットワークを用いた機械学習と同様の技術で構築することができる。分類モデルは、Ｋ個の分類クラスと１つの擬似クラス、すなわち（Ｋ＋１）個のクラスのいずれかに入力データを分類する。従って、分類クラスの入力層のノード数は学習データの次元数ｄとなり、出力層のノード数はＫ＋１となる。
【００２７】
学習部１０２は、分類モデルのパラメータを更新するために２つの損失基準を用いる。第１損失基準は、学習データと擬似データとをそれぞれ実在クラスと擬似クラスの２値に分類するときの誤差を表す。以下の（１）式は、第１損失基準の例を表す。
【数１】
2020046883.tif 000003
【００２８】
ここで、Ｒは学習データ、Ｇは擬似データの集合を表す。Ｅは平均値を表す。本実施形態では（Ｋ＋１）番目のクラスが擬似クラスであり、Ｐ（ｙ＝Ｋ＋１｜ｘ）は分類モデルにより学習データ（特徴量ｘ）が擬似クラスに分類される確率を表す。（１）式の損失基準では、学習データが擬似クラス以外のいずれかの分類クラスに分類され、擬似データが擬似クラスに分類されるほど損失の値が低くなる。
【００２９】
第２損失基準は、学習データを分類クラスに分類するときの誤差を表す。以下の（２）式は、第２損失基準の例を表す。
【数２】
2020046883.tif 000004
【００３０】
ｙ＜Ｋ＋１は擬似クラス以外のクラスを表し、Ｐ（ｙ｜ｘ、ｙ＜Ｋ＋１）は学習データの特徴量ｘが教師ラベルｙと同じクラスに分類される確率を表す。（２）式の損失基準では、学習データの特徴量ｘが教師ラベルｙと同じクラスに分類されるほど損失の値が低くなる。
【００３１】
学習部１０２は、例えば確率勾配降下法等を利用して第１損失基準と第２損失基準の和が小さくなるように分類モデルのパラメータを更新する。第１損失基準および第２損失基準の算出時には、学習部１０２は、学習データをサンプルしてミニバッチと呼ばれる少量のサブセットを生成し、ミニバッチに対して（１）式および（２）式により損失値を算出する。ここでは、ミニバッチのデータ数は、生成部１０１が生成する擬似データ数と同じｎ個であるとする。
【００３２】
生成部１０１は、分類モデル、学習データ、および、擬似データを用いて生成モデルのパラメータを更新する（ステップＳ１０４）。生成部１０１は、例えば、分類モデルで射影される潜在空間Ｚにおける学習データと擬似データの平均値の差が小さいほど値が小さくなる第３損失基準により、擬似データ生成モデルのパラメータを更新する。以下の（３）式は、第３損失基準の例を表す。
【数３】
2020046883.tif 000005
【００３３】
ここで、Ｒは学習データ、Ｇは擬似データの集合を表し、ｆ（ｘ）は潜在空間Ｚにおける学習データの特徴量を表す。潜在空間Ｚは、例えば分類モデルのニューラルネットワークの出力層の１つ前の層により写像される空間であるとする。（３）式では、潜在空間Ｚにおける学習データの特徴量ｆ（ｘ）の平均値Ｅｆ（ｘ）と、擬似データｘ’の特徴量ｆ（ｘ’）の平均値Ｅｆ（ｘ’）と、の差が小さくなるほど、損失値が小さくなる。
【００３４】
生成部１０１は、例えば確率勾配降下法等を利用して第３損失基準が小さくなるように生成モデルのパラメータを更新する。生成部１０１は、第１損失基準および第２損失基準の算出時と同様に、ミニバッチのデータを用いて生成モデルのパラメータを更新することができる。
【００３５】
学習部１０２は、パラメータの更新が終了したかを判定する（ステップＳ１０５）。学習部１０２は、例えば、学習の回数が上限値に達したか否か、または、各損失基準の改善の大きさが閾値より小さくなったか、などにより、更新終了を判定する。更新が終了していない場合（ステップＳ１０５：Ｎｏ）、ステップＳ１０２に戻り学習が繰り返される。
【００３６】
更新が終了した場合（ステップＳ１０５：Ｙｅｓ）、分類部１０３は、分類モデルを用いて新たな入力データを分類する。ＩＧＡＮでは、学習された分類モデルから擬似クラスを除いたＫ個の分類クラスへの分類を行うことで、分類精度が向上する。本実施形態では、分類部１０３は擬似クラスを含む（Ｋ＋１）個のクラスへの分類を行う。
【００３７】
分類部１０３は、入力データの分類結果が擬似クラスであるか否かを判定する（ステップＳ１０７）。本実施形態では、ｙ＝Ｋ＋１の場合、入力データは擬似クラスであり、ｙ＜Ｋ＋１の場合、入力データは擬似クラス以外のいずれかの分類クラスである。
【００３８】
入力データが擬似クラスに分類された場合（ステップＳ１０７：Ｙｅｓ）、出力制御部１０４は、擬似クラスに分類された入力データを、分類の困難なデータとしてユーザに提示する（ステップＳ１０８）。分類の困難なデータであることを示す情報を出力するクラスである提示クラスを定め、入力データが擬似クラスに分類された場合に入力データに提示クラスを付与するように構成してもよい。擬似クラスに分類された入力データを分類の困難なデータと判定する理由は後述する。
【００３９】
入力データが擬似クラス以外の分類クラスに分類された場合（ステップＳ１０７：Ｎｏ）、出力制御部１０４は、分類結果を示す情報を出力する（ステップＳ１０９）。
【００４０】
なお、生成モデルおよび分類モデルの学習（ステップＳ１０１〜ステップＳ１０６）と、学習した分類モデルを用いた分類（ステップＳ１０７〜ステップＳ１０９）は、連続して実行する必要はなく、相互に独立に実行することができる。
【００４１】
次に、擬似クラスに分類されたデータが分類の困難なデータと判定できる理由を示す。本実施形態では、生成部１０１は、（３）式のような損失基準を小さくするように生成モデルを学習する。（３）式に従えば、潜在空間Ｚで擬似データの平均値が学習データの平均値と同じになるように擬似データが生成される。
【００４２】
図３は、潜在空間Ｚにおける学習データと擬似データの分布の様子を示す概念図である。図３では、クラスＡとクラスＢの２クラスの学習データが存在する。各クラスの学習データは、潜在空間Ｚでそれぞれ集団になって分布する。なお、実空間では複雑な分布をしたデータであっても、ディープラーニングの学習による潜在空間Ｚでは、図３のような分布が得られることが期待される。
【００４３】
このような状況で、生成部１０１が（３）式により擬似データＧを生成した場合、擬似データＧは、クラスＡとクラスＢの間に生成される。すなわち、擬似データは、クラスＡの学習データと、クラスＢの学習データの境界付近に分布する。学習データの境界付近は学習データが少なく、分類が困難なデータが存在する領域であると考えられる。なお（３）式の損失基準は一例であり、これに限られるものではない。例えば、複数の分類クラスの境界付近に分布する擬似データを生成できるような他の損失基準を用いてもよい。
【００４４】
学習部１０２は、第１損失基準により擬似データを擬似クラスに分類するように分類モデルを学習するため、新たな入力データが学習データの境界付近のデータと類似する場合、そのデータを擬似クラスに分類する。そのため、擬似クラスに分類されたデータは学習データの境界付近の分類が困難なデータである可能性が高い。また、ＩＧＡＮと同様の分類手法を適用しているため、Ｋ個の分類クラスに分類する処理に対しても高い精度が得られる。
【００４５】
ＩＧＡＮでは、分類の対象とする入力データをクラスＡまたはクラスＢに分類する精度を高めるために、擬似データが生成され、生成された擬似データは分類モデルの学習に用いられる。すなわち、入力データを擬似クラスに分類することは想定していない。これに対して本実施形態は、図３に示すように、複数のクラスの境界付近に擬似データが分布するという点に着目し、このように分布する擬似データに対応する擬似クラスに、入力データを分類する。そして、擬似クラスに分類された入力データは、分類が困難であるデータとして出力する。このような構成により、分類の精度を損なわずに、分類が困難なデータを高精度に提示することが可能になる。
【００４６】
（第２の実施形態）
第２の実施形態の分類装置は、既知の分類クラスから新たなクラスが派生する可能性がある場合に、新たなクラスを想定した擬似データを生成することで、新しく派生したクラスを高精度で提示する。
【００４７】
図４は、第２の実施形態にかかる分類装置１００−２の構成の一例を示すブロック図である。図４に示すように、分類装置１００−２は、生成部１０１−２と、学習部１０２と、分類部１０３と、出力制御部１０４と、記憶部１２１と、を備えている。
【００４８】
第２の実施形態では、生成部１０１−２の機能が第１の実施形態と異なっている。その他の構成および機能は、第１の実施形態にかかる分類装置１００のブロック図である図１と同様であるので、同一符号を付し、ここでの説明は省略する。
【００４９】
生成部１０１−２は、学習データおよび生成した擬似データの少なくとも一方を変換した加工擬似データを生成する機能をさらに備える点が、第１の実施形態の生成部１０１と異なっている。生成部１０１−２は、例えばアフィン変換による平行移動、拡大、縮小、および、回転などにより、学習データおよび擬似データを変換する。
【００５０】
加工擬似データは、擬似データと同様に擬似クラスに分類するデータとして扱われる。従って、学習部１０２は、擬似データと加工擬似データとを擬似クラスに分類するように分類モデルを学習する。
【００５１】
次に、このように構成された第２の実施形態にかかる分類装置１００−２による分類処理について図５を用いて説明する。図５は、第２の実施形態における分類処理の一例を示すフローチャートである。
【００５２】
ステップＳ２０１〜ステップＳ２０２は、第１の実施形態にかかる分類装置１００におけるステップＳ１０１〜ステップＳ１０２と同様の処理なので、その説明を省略する。
【００５３】
本実施形態では、生成部１０１−２は、学習データおよび擬似データの少なくとも一方を変換することにより、加工擬似データを生成する（ステップＳ２０３）。生成部１０１−２は、学習データおよび擬似データのうち全部に対して変換を行ってもよいし、一部に対して変換を行ってもよい。
【００５４】
学習部１０２は、加工擬似データも擬似データとして用いて、分類モデルのパラメータを更新する（ステップＳ２０４）。生成部１０１−２は、加工擬似データも擬似データとして用いて生成モデルのパラメータを更新する（ステップＳ２０５）。
【００５５】
ステップＳ２０６〜ステップＳ２１０は、第１の実施形態にかかる分類装置１００におけるステップＳ１０５〜ステップＳ１０９と同様の処理なので、その説明を省略する。
【００５６】
このような処理により、加工擬似データに類似した新しいクラスのデータが入力された場合、そのデータを擬似クラスに分類することができる。すなわち、新しく派生したクラスのデータを高精度で提示することが可能となる。
【００５７】
生成部１０１−２は、学習の回数に応じて加工擬似データの生成量を変化させてもよい。例えば生成部１０１−２は、加工擬似データの割合ｒを学習の回数ｔにより制御してもよい。以下の（４）式は、加工擬似データの割合を求める式の例を示す。
【数４】
2020046883.tif 000006
【００５８】
（４）式は、１００回目の学習までは加工擬似データの割合ｒを小さくし（ｒ＝０．０１）、１０１回目以降の学習では加工擬似データの割合ｒを大きくする（ｒ＝０．５）ことを示す。なお回数の閾値は１００に限られるものではなく、どのような値であってもよい。また、変化させる割合の個数は２つに限られるものではなく、３個以上の割合に変化させてもよい。
【００５９】
（４）式のように割合ｒを変化させることで、例えば、学習の初期では、第１の実施形態に近似した手法で分類モデルおよび生成モデルを高精度に学習し、各モデルが安定してきた学習後期で加工擬似データを擬似データに混入し、派生する可能性のあるクラスを擬似クラスに分類する学習を行うことができる。
【００６０】
次に、加工擬似データの例について説明する。図６は、加工擬似データの例を示す図である。例えば、手書き数字画像の「６」（クラス６）と「８」（クラス８）を分類する問題を考える。本実施形態によれば、例えば「６」（クラス６）を回転した「９」（クラス９）を擬似データとして生成できる（ステップＳ２０３）。従って、クラス９に属するような入力データが入力された場合であっても、高い精度で擬似クラスに分類され、ユーザに提示することができる。クラス９のデータを擬似データとして生成していない場合、クラス９に属するような入力データは、例えばクラス８に分類され、ユーザに提示されない可能性がある。
【００６１】
平行移動、拡大、縮小、および、回転により新たなクラスが派生するケースは、例えば半導体のウェハ上に発生する不良のパターンの分類などが考えられる。第２の実施形態によれば、半導体のウェハの不良のパターンを分類するときに、既存の不良のパターンが回転したような新たな不良パターンのクラスが派生した場合でも、新たな不良パターンを早期に発見することが可能となる。
【００６２】
以上説明したとおり、第１から第２の実施形態によれば、分類の困難なデータをより高精度に出力（提示）することが可能となる。
【００６３】
次に、第１または第２の実施形態にかかる分類装置のハードウェア構成について図７を用いて説明する。図７は、第１または第２の実施形態にかかる分類装置のハードウェア構成例を示す説明図である。
【００６４】
第１または第２の実施形態にかかる分類装置は、ＣＰＵ５１などの制御装置と、ＲＯＭ（Read  Only  Memory）５２やＲＡＭ５３などの記憶装置と、ネットワークに接続して通信を行う通信Ｉ／Ｆ５４と、各部を接続するバス６１を備えている。
【００６５】
第１または第２の実施形態にかかる分類装置で実行されるプログラムは、ＲＯＭ５２等に予め組み込まれて提供される。
【００６６】
第１または第２の実施形態にかかる分類装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ（Compact  Disk  Read  Only  Memory）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（Compact  Disk  Recordable）、ＤＶＤ（Digital  Versatile  Disk）等のコンピュータで読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供されるように構成してもよい。
【００６７】
さらに、第１または第２の実施形態にかかる分類装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、第１または第２の実施形態にかかる分類装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【００６８】
第１または第２の実施形態にかかる分類装置で実行されるプログラムは、コンピュータを上述した分類装置の各部として機能させうる。このコンピュータは、ＣＰＵ５１がコンピュータ読取可能な記憶媒体からプログラムを主記憶装置上に読み出して実行することができる。
【００６９】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７０】
１００、１００−２  分類装置
１０１、１０１−２  生成部
１０２  学習部
１０３  分類部
１０４  出力制御部
１２１  記憶部
【図１】
2020046883.tif 000007
【図２】
2020046883.tif 000008
【図３】
2020046883.tif 000009
【図４】
2020046883.tif 000010
【図５】
2020046883.tif 000011
【図６】
2020046883.tif 000012
【図７】
2020046883.tif 000013