(57)【特許請求の範囲】
【請求項１】
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成する分類器生成装置であって、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む学習データを複数の前記学習用画像それぞれについて取得する学習データ取得手段と、
前記学習データ取得手段が前記複数の学習用画像それぞれについて取得した複数の前記学習データに基づいて、前記画像分類器を生成する分類器生成手段と、を備え、
前記分類器生成手段は、前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、比較結果が所定基準を満たすときに、当該第２分類器を前記画像分類器とし、
前記分類器生成手段は、すでに生成した分類器の生成に使用された複数の前記特徴量のうち、当該分類器による分類の寄与度が所定基準を満たさない低寄与度特徴量を特定し、特定した当該低寄与度特徴量を減らした前記学習データに基づいて、新たな分類器を生成することを少なくとも１回行うことで、前記特徴量の数が異なる前記複数の分類器を生成する、
ことを特徴とする分類器生成装置。
【請求項２】
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成する分類器生成装置であって、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む学習データを複数の前記学習用画像それぞれについて取得する学習データ取得手段と、
前記学習データ取得手段が前記複数の学習用画像それぞれについて取得した複数の前記学習データに基づいて、前記画像分類器を生成する分類器生成手段と、を備え、
前記分類器生成手段は、
前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、
前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、前記第１分類器の分類の正答率と前記第２分類器の分類の正答率との差が所定範囲内であるときに、当該第２分類器を前記画像分類器とする、
ことを特徴とする分類器生成装置。
【請求項３】
前記分類器生成手段は、複数の学習データのうちの一部の複数の学習データに基づいて分類器を生成し、他の複数の学習データに基づいて当該分類器の正答率を特定する、
ことを特徴とする請求項２に記載の分類器生成装置。
【請求項４】
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成する分類器生成装置であって、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む学習データを複数の前記学習用画像それぞれについて取得する学習データ取得手段と、
前記学習データ取得手段が前記複数の学習用画像それぞれについて取得した複数の前記学習データに基づいて、前記画像分類器を生成する分類器生成手段と、を備え、
前記分類器生成手段は、前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、比較結果が所定基準を満たすときに、当該第２分類器を前記画像分類器とし、
前記分類器生成手段は、
新たに生成した分類器を前記第２分類器とし、その前に生成した分類器を前記第１分類器として、前記比較結果が前記所定基準を満たさなくなるまで、前記特徴量の数を減らしながら前記複数の分類器を生成し、
前記比較結果が前記所定基準を満たさなくなったときに、（１）前記第２分類器の生成に使用されていない前記特徴量のうちの少なくとも１つを再度加えて新たな前記第２分類器を生成し、生成した新たな前記第２分類器について前記比較結果が前記所定基準を満たすときに、当該新たな第２分類器を前記画像分類器とする、又は、（２）前記比較結果が前記所定基準を満たさなくなる前に生成した前記分類器のうち最も新しい分類器を前記画像分類器とする、
ことを特徴とする分類器生成装置。
【請求項５】
請求項１〜４のいずれかに記載の分類器生成装置を備え、欠陥候補が写った画像を前記画像分類器によって分類する外観検査装置であって、
前記画像分類器で使用される複数種類の前記特徴量を算出する特徴量算出手段をさらに有する、
ことを特徴とする外観検査装置。
【請求項６】
請求項１〜４のいずれかに記載の分類器生成装置を備え、欠陥候補が写った画像を前記画像分類器によって分類する外観検査装置であって、
前記外観検査装置は、前記画像分類器が有する複数の決定木によって分類された結果の多数決によって、前記画像分類器による分類の結果を決定する決定手段をさらに備え、
前記決定手段は、前記複数の決定木の数に対する前記多数決における最多得票数の割合が所定割合以下であるとき、又は、前記最多得票数と２番目の得票数との差が所定値以下であるときに、分類対象の前記画像をユーザに提示する、
ことを特徴とする外観検査装置。
【請求項７】
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成する分類器生成方法であって、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む学習データを複数の前記学習用画像それぞれについて取得する学習データ取得ステップと、
前記学習データ取得ステップで前記複数の学習用画像それぞれについて取得した複数の前記学習データに基づいて、前記画像分類器を生成する分類器生成ステップと、を備え、
前記分類器生成ステップでは、前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、比較結果が所定基準を満たすときに、当該第２分類器を前記画像分類器とし、
前記分類器生成ステップでは、すでに生成した分類器の生成に使用された複数の前記特徴量のうち、当該分類器による分類の寄与度が所定基準を満たさない低寄与度特徴量を特定し、特定した当該低寄与度特徴量を減らした前記学習データに基づいて、新たな分類器を生成することを少なくとも１回行うことで、前記特徴量の数が異なる前記複数の分類器を生成する、
ことを特徴とする分類器生成方法。
【請求項８】
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成する分類器生成方法であって、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む学習データを複数の前記学習用画像それぞれについて取得する学習データ取得ステップと、
前記学習データ取得ステップで前記複数の学習用画像それぞれについて取得した複数の前記学習データに基づいて、前記画像分類器を生成する分類器生成ステップと、を備え、
前記分類器生成ステップでは、
前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、
前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、前記第１分類器の分類の正答率と前記第２分類器の分類の正答率との差が所定範囲内であるときに、当該第２分類器を前記画像分類器とする、
ことを特徴とする分類器生成方法。
【請求項９】
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成する分類器生成方法であって、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む学習データを複数の前記学習用画像それぞれについて取得する学習データ取得ステップと、
前記学習データ取得ステップで前記複数の学習用画像それぞれについて取得した複数の前記学習データに基づいて、前記画像分類器を生成する分類器生成ステップと、を備え、
前記分類器生成ステップでは、前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、比較結果が所定基準を満たすときに、当該第２分類器を前記画像分類器とし、
前記分類器生成ステップでは、
新たに生成した分類器を前記第２分類器とし、その前に生成した分類器を前記第１分類器として、前記比較結果が前記所定基準を満たさなくなるまで、前記特徴量の数を減らしながら前記複数の分類器を生成し、
前記比較結果が前記所定基準を満たさなくなったときに、（１）前記第２分類器の生成に使用されていない前記特徴量のうちの少なくとも１つを再度加えて新たな前記第２分類器を生成し、生成した新たな前記第２分類器について前記比較結果が前記所定基準を満たすときに、当該新たな第２分類器を前記画像分類器とする、又は、（２）前記比較結果が前記所定基準を満たさなくなる前に生成した前記分類器のうち最も新しい分類器を前記画像分類器とする、
ことを特徴とする分類器生成方法。
【請求項１０】
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成するコンピュータに、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む複数の学習データに基づいて、前記画像分類器を生成する分類器生成処理を実行させ、
前記分類器生成処理では、前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、比較結果が所定基準を満たすときに、当該第２分類器を前記画像分類器とし、
前記分類器生成処理では、すでに生成した分類器の生成に使用された複数の前記特徴量のうち、当該分類器による分類の寄与度が所定基準を満たさない低寄与度特徴量を特定し、特定した当該低寄与度特徴量を減らした前記学習データに基づいて、新たな分類器を生成することを少なくとも１回行うことで、前記特徴量の数が異なる前記複数の分類器を生成する、
プログラム。
【請求項１１】
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成するコンピュータに、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む複数の学習データに基づいて、前記画像分類器を生成する分類器生成処理を実行させ、
前記分類器生成処理では、
前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、
前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、前記第１分類器の分類の正答率と前記第２分類器の分類の正答率との差が所定範囲内であるときに、当該第２分類器を前記画像分類器とする、
プログラム。
【請求項１２】
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成するコンピュータに、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む複数の学習データに基づいて、前記画像分類器を生成する分類器生成処理を実行させ、
前記分類器生成処理では、前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、比較結果が所定基準を満たすときに、当該第２分類器を前記画像分類器とし、
前記分類器生成処理では、
新たに生成した分類器を前記第２分類器とし、その前に生成した分類器を前記第１分類器として、前記比較結果が前記所定基準を満たさなくなるまで、前記特徴量の数を減らしながら前記複数の分類器を生成し、
前記比較結果が前記所定基準を満たさなくなったときに、（１）前記第２分類器の生成に使用されていない前記特徴量のうちの少なくとも１つを再度加えて新たな前記第２分類器を生成し、生成した新たな前記第２分類器について前記比較結果が前記所定基準を満たすときに、当該新たな第２分類器を前記画像分類器とする、又は、（２）前記比較結果が前記所定基準を満たさなくなる前に生成した前記分類器のうち最も新しい分類器を前記画像分類器とする、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分類器生成装置、外観検査装置、分類器生成方法、及びプログラムに関する。
【背景技術】
【０００２】
従来から、検査対象を撮像した撮像画像に基づいて、当該検査対象の欠陥（キズ、異物など）を検出する外観検査装置が知られている。このような外観検査装置に関する技術として、例えば、特許文献１には、予め欠陥検出手段より得られる多数の欠陥それぞれが写った多数の画像の特徴量を収集し、該収集された欠陥特徴量分布に基づいて欠陥のサンプリングを行い、サンプリング欠陥のレビュー結果に基づいて欠陥分類条件を設定することが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−２６６８７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１の外観検査装置では、例えば、分類性能を高くするために、使用する特徴量の数を多くすると、画像の分類の処理時間が長くなってしまうという不都合が生じる。
【０００５】
本発明は、上記点に鑑みてなされたものであり、画像の分類に必要な処理時間を短くすることを目的とする。
【課題を解決するための手段】
【０００６】
（Ａ１）上記目的を達成するため、本発明の第１−１の観点に係る分類器生成装置は、
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成する分類器生成装置であって、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む学習データを複数の前記学習用画像それぞれについて取得する学習データ取得手段と、
前記学習データ取得手段が前記複数の学習用画像それぞれについて取得した複数の前記学習データに基づいて、前記画像分類器を生成する分類器生成手段と、を備え、
前記分類器生成手段は、前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、比較結果が所定基準を満たすときに、当該第２分類器を前記画像分類器とし、
前記分類器生成手段は、すでに生成した分類器の生成に使用された複数の前記特徴量のうち、当該分類器による分類の寄与度が所定基準を満たさない低寄与度特徴量を特定し、特定した当該低寄与度特徴量を減らした前記学習データに基づいて、新たな分類器を生成することを少なくとも１回行うことで、前記特徴量の数が異なる前記複数の分類器を生成する、
ことを特徴とする。
（Ａ２）上記目的を達成するため、本発明の第１−２の観点に係る分類器生成装置は、
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成する分類器生成装置であって、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む学習データを複数の前記学習用画像それぞれについて取得する学習データ取得手段と、
前記学習データ取得手段が前記複数の学習用画像それぞれについて取得した複数の前記学習データに基づいて、前記画像分類器を生成する分類器生成手段と、を備え、
前記分類器生成手段は、
前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、
前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、前記第１分類器の分類の正答率と前記第２分類器の分類の正答率との差が所定範囲内であるときに、当該第２分類器を前記画像分類器とする、
ことを特徴とする。
（Ａ３）上記目的を達成するため、本発明の第１−３の観点に係る分類器生成装置は、
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成する分類器生成装置であって、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む学習データを複数の前記学習用画像それぞれについて取得する学習データ取得手段と、
前記学習データ取得手段が前記複数の学習用画像それぞれについて取得した複数の前記学習データに基づいて、前記画像分類器を生成する分類器生成手段と、を備え、
前記分類器生成手段は、前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、比較結果が所定基準を満たすときに、当該第２分類器を前記画像分類器とし、
前記分類器生成手段は、
新たに生成した分類器を前記第２分類器とし、その前に生成した分類器を前記第１分類器として、前記比較結果が前記所定基準を満たさなくなるまで、前記特徴量の数を減らしながら前記複数の分類器を生成し、
前記比較結果が前記所定基準を満たさなくなったときに、（１）前記第２分類器の生成に使用されていない前記特徴量のうちの少なくとも１つを再度加えて新たな前記第２分類器を生成し、生成した新たな前記第２分類器について前記比較結果が前記所定基準を満たすときに、当該新たな第２分類器を前記画像分類器とする、又は、（２）前記比較結果が前記所定基準を満たさなくなる前に生成した前記分類器のうち最も新しい分類器を前記画像分類器とする、
ことを特徴とする。
【０００７】
上記目的を達成するため、本発明の第２の観点に係る外観検査装置は、
上記分類器生成装置を備え、欠陥候補が写った画像を前記画像分類器によって分類する外観検査装置であって、
前記画像分類器で使用される複数種類の前記特徴量を算出する特徴量算出手段をさらに有する、
ことを特徴とする。
【０００８】
上記目的を達成するため、本発明の第３の観点に係る外観検査装置は、
上記分類器生成装置を備え、欠陥候補が写った画像を前記画像分類器によって分類する外観検査装置であって、
前記外観検査装置は、前記画像分類器が有する複数の決定木によって分類された結果の多数決によって、前記画像分類器による分類の結果を決定する決定手段をさらに備え、
前記決定手段は、前記複数の決定木の数に対する前記多数決における最多得票数の割合が所定割合以下であるとき、又は、前記最多得票数と２番目の得票数との差が所定値以下であるときに、分類対象の前記画像をユーザに提示する、
ことを特徴とする。
【０００９】
（Ｂ１）上記目的を達成するため、本発明の第４−１の観点に係る分類器生成方法は、
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成する分類器生成方法であって、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む学習データを複数の前記学習用画像それぞれについて取得する学習データ取得ステップと、
前記学習データ取得ステップで前記複数の学習用画像それぞれについて取得した複数の前記学習データに基づいて、前記画像分類器を生成する分類器生成ステップと、を備え、
前記分類器生成ステップでは、前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、比較結果が所定基準を満たすときに、当該第２分類器を前記画像分類器とし、
前記分類器生成ステップでは、すでに生成した分類器の生成に使用された複数の前記特徴量のうち、当該分類器による分類の寄与度が所定基準を満たさない低寄与度特徴量を特定し、特定した当該低寄与度特徴量を減らした前記学習データに基づいて、新たな分類器を生成することを少なくとも１回行うことで、前記特徴量の数が異なる前記複数の分類器を生成する、
ことを特徴とする。
（Ｂ２）上記目的を達成するため、本発明の第４−２の観点に係る分類器生成方法は、
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成する分類器生成方法であって、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む学習データを複数の前記学習用画像それぞれについて取得する学習データ取得ステップと、
前記学習データ取得ステップで前記複数の学習用画像それぞれについて取得した複数の前記学習データに基づいて、前記画像分類器を生成する分類器生成ステップと、を備え、
前記分類器生成ステップでは、
前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、
前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、前記第１分類器の分類の正答率と前記第２分類器の分類の正答率との差が所定範囲内であるときに、当該第２分類器を前記画像分類器とする、
ことを特徴とする。
（Ｂ３）上記目的を達成するため、本発明の第４−３の観点に係る分類器生成方法は、
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成する分類器生成方法であって、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む学習データを複数の前記学習用画像それぞれについて取得する学習データ取得ステップと、
前記学習データ取得ステップで前記複数の学習用画像それぞれについて取得した複数の前記学習データに基づいて、前記画像分類器を生成する分類器生成ステップと、を備え、
前記分類器生成ステップでは、前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、比較結果が所定基準を満たすときに、当該第２分類器を前記画像分類器とし、
前記分類器生成ステップでは、
新たに生成した分類器を前記第２分類器とし、その前に生成した分類器を前記第１分類器として、前記比較結果が前記所定基準を満たさなくなるまで、前記特徴量の数を減らしながら前記複数の分類器を生成し、
前記比較結果が前記所定基準を満たさなくなったときに、（１）前記第２分類器の生成に使用されていない前記特徴量のうちの少なくとも１つを再度加えて新たな前記第２分類器を生成し、生成した新たな前記第２分類器について前記比較結果が前記所定基準を満たすときに、当該新たな第２分類器を前記画像分類器とする、又は、（２）前記比較結果が前記所定基準を満たさなくなる前に生成した前記分類器のうち最も新しい分類器を前記画像分類器とする、
ことを特徴とする。
【００１０】
（Ｃ１）上記目的を達成するため、本発明の第５−１の観点に係るプログラムは、
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成するコンピュータに、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む複数の学習データに基づいて、前記画像分類器を生成する分類器生成処理を実行させ、
前記分類器生成処理では、前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、比較結果が所定基準を満たすときに、当該第２分類器を前記画像分類器とし、
前記分類器生成処理では、すでに生成した分類器の生成に使用された複数の前記特徴量のうち、当該分類器による分類の寄与度が所定基準を満たさない低寄与度特徴量を特定し、特定した当該低寄与度特徴量を減らした前記学習データに基づいて、新たな分類器を生成することを少なくとも１回行うことで、前記特徴量の数が異なる前記複数の分類器を生成する。
（Ｃ２）上記目的を達成するため、本発明の第５−２の観点に係るプログラムは、
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成するコンピュータに、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む複数の学習データに基づいて、前記画像分類器を生成する分類器生成処理を実行させ、
前記分類器生成処理では、
前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、
前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、前記第１分類器の分類の正答率と前記第２分類器の分類の正答率との差が所定範囲内であるときに、当該第２分類器を前記画像分類器とする。
（Ｃ３）上記目的を達成するため、本発明の第５−３の観点に係るプログラムは、
複数種類の特徴量に基づいて画像を分類する画像分類器を機械学習によって生成するコンピュータに、
学習用画像の複数種類の特徴量と当該学習用画像の分類結果とを含む複数の学習データに基づいて、前記画像分類器を生成する分類器生成処理を実行させ、
前記分類器生成処理では、前記複数の学習データに基づいて、前記特徴量を説明変数として使用したランダムフォレスト法にて、前記特徴量の数を異ならせた複数の分類器を生成可能であり、前記複数の分類器のうちの、第１分類器と当該第１分類器よりも前記特徴量の数が少ない第２分類器とを比較し、比較結果が所定基準を満たすときに、当該第２分類器を前記画像分類器とし、
前記分類器生成処理では、
新たに生成した分類器を前記第２分類器とし、その前に生成した分類器を前記第１分類器として、前記比較結果が前記所定基準を満たさなくなるまで、前記特徴量の数を減らしながら前記複数の分類器を生成し、
前記比較結果が前記所定基準を満たさなくなったときに、（１）前記第２分類器の生成に使用されていない前記特徴量のうちの少なくとも１つを再度加えて新たな前記第２分類器を生成し、生成した新たな前記第２分類器について前記比較結果が前記所定基準を満たすときに、当該新たな第２分類器を前記画像分類器とする、又は、（２）前記比較結果が前記所定基準を満たさなくなる前に生成した前記分類器のうち最も新しい分類器を前記画像分類器とする。
【発明の効果】
【００１１】
本発明によれば、画像の分類に必要な処理時間を短くすることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施形態に係る外観検査装置の構成を示すブロック図である。
【図２】図１の外観検査装置の制御部の構成などを示すブロック図である。
【図３】欠陥候補画像の例を示す図である。
【図４】画像処理部が実行する処理の一例を示すフローチャートである。
【図５】学習データ生成部が実行する処理の一例を示すフローチャートである。
【図６】学習データ群の例を示す図である。
【図７】分類器生成部が実行する処理の一例を示すフローチャートである。
【図８】寄与度の算出方法を説明する図である。
【図９】分類器の構成を説明する図である。
【図１０】分類結果の構成例を説明する図である。
【図１１】投票結果解析部が実行する処理の一例を示すフローチャートである。
【図１２】良否判別部が実行する処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１３】
本発明の一実施形態に係る外観検査装置１００（図１など）を、図面を参照して説明する。なお、外観検査装置１００は、以下の３つの段階に分けて動作する。
【００１４】
（第１段階：学習データ生成時）
外観検査装置１００は、欠陥（キズ、異物など）の写ったサンプル（被写体）を撮像し、撮像した撮像画像から欠陥候補（欠陥と思われる候補）を検出し、検出した欠陥候補の特徴を示す複数種類の特徴量を計算する。また、外観検査装置１００は、欠陥候補が写った所定の大きさの欠陥候補画像を撮像画像から切り出し、ユーザに提示して欠陥候補を目視によって分類させる。外観検査装置１００は、サンプルの欠陥候補について、複数種類の特徴量の各データと、目視によって分類した種別（白点、黒点、白キズ、黒キズなど（図３））のデータと、を互いに対応づけて学習データ（図６）として記憶する。このようにして、外観検査装置１００は、学習データを生成する。
【００１５】
なお、欠陥候補の特徴を示す各特徴量には、例えば、欠陥候補自身の画像の形状（後述のラベリングされた画素領域の形状）から算出できる特徴量（真円度、面積等）と、欠陥候補画像から算出できる特徴量（平均輝度など）とがある（以下、特徴量について同じ。）。
【００１６】
（第２段階：機械学習時）
外観検査装置１００は、第１段階で生成した複数の学習データを用いて、機械学習（ランダムフォレスト法）によって、分類器１４４（図２、９など）を生成する。分類器１４４は、欠陥候補の種別を、その欠陥候補の特徴を示す複数種類の特徴量によって分類するものである。なお、分類器１４４の生成では、第１段階で生成した複数の学習データのうちの一部の複数の学習データを使用して分類器を生成し、残りの学習データを使用して、生成した分類器をテストすることで、最適な分類器を生成するようにする。
【００１７】
（第３段階：外観検査時）
外観検査装置１００は、検査対象（被写体）を撮像し、撮像した撮像画像から欠陥候補を検出し、検出した欠陥候補の特徴を示す複数種類の特徴量を算出し、算出した複数種類の特徴量を分類器に入力し、欠陥候補の種別（白点、黒点、白キズ、黒キズなど（図３））を分類するとともに、検査対象の良否を判別する（外観検査）。
【００１８】
以下、外観検査装置１００について説明するが、以下では、まず、外観検査装置１００のハードウェア構成を、図１などを参照して説明し、そのあと、外観検査装置１００の制御部１４０の動作を、図２などを参照して説明し、その後、制御部１４０の詳細な動作フローを、図３〜図１２を参照して説明する。
【００１９】
外観検査装置１００は、図１に示すように、撮像部１１０と、画像処理部１２０と、記憶部１３０と、制御部１４０と、操作部１５０と、表示部１６０とを備える。画像処理部１２０と、記憶部１３０と、制御部１４０と、操作部１５０と、表示部１６０とは、バスＢに接続されている。また、外観検査装置１００は、外観検査時において検査対象を搬送する搬送部１９０も備える。なお、搬送部１９０は、外観検査装置１００が備えるものではなく、外付けされたものであってもよい。
【００２０】
撮像部１１０は、ＣＣＤ（Charge Coupled Device）カメラ、ＣＭＯＳ（Complementary Metal Oxide Semiconductor）カメラなどからなり、学習データ生成時や外観検査時において、被写体Ｔを撮像する。撮像部１１０は、撮像した被写体Ｔの撮像画像の画像データを、画像処理装置１２０に供給する。撮像部１１０は、被写体Ｔを照明するランプなどを備えてもよい。
【００２１】
なお、被写体Ｔは、ここでは透明フィルムとする。学習データ生成時の被写体Ｔは、ユーザが用意した欠陥付きのサンプルのフィルムとなる。外観検査時の被写体Ｔは、検査対象（例えば、製品となるフィルム）となる。被写体は、ガラス基板などであってもよい。
【００２２】
画像処理部１２０は、ＤＳＰ（Digital Signal Processor）などの画像処理用のプロセッサなどからなる。撮像部１１０から供給される撮像画像の画像データに基づいて、各種の処理を行う。特に、画像処理部１２０は、画像データにより表される撮像画像内の欠陥候補を検出し、検出した欠陥候補の特徴を示す複数種類の特徴量それぞれを算出する。また、画像処理部１２０は、欠陥候補が写った所定の大きさの画像（欠陥候補画像）を前記撮像画像から切り出す。画像処理部１２０は、ＣＰＵ（Central Processing Unit）、ＧＰＵ（Graphics Processing Unit）などを有するものであってもよい。
【００２３】
記憶部１３０は、ハードディスク、フラッシュメモリなどからなる。記憶部１３０は、例えば、補助記憶装置である。記憶部１３０は、制御部１４０が処理を実行するときに使用される各種プログラム、各種データを記憶する。
【００２４】
制御部１４０は、ＣＰＵ、ＲＡＭ（Random Access Memory）などを含んで構成される。記憶部１３０に記憶されているプログラムやデータは、ＲＡＭに読み出される。ＣＰＵは、ＲＡＭに読み出されたプログラムに従って、かつ、ＲＡＭに読み出されたデータに従って、所定の処理を行う。このような構成によって、制御部１４０は、記憶部１３０に記憶されているプログラムやデータに基づいて、外観検査装置１００全体を制御する（撮像部１１０や搬送部１９０の制御を含む。）他、後述の各種処理（分類器１４４を生成するための学習データを生成する処理、機械学習行って分類器１４４を生成する処理、外観検査を分類器１４４を用いて行う処理など）を行う。なお、記憶部１３０の少なくとも一部をＲＡＭとして用いてもよい。また、ＲＡＭの少なくとも一部を上記補助記憶装置として用いてもよい。制御部１４０は、ＤＳＰなどの各種プロセッサであってもよい。
【００２５】
操作部１５０は、キーボードなどからなり、ユーザからの操作を受け付ける。
【００２６】
表示部１６０は、液晶ディスプレイ、ＥＬ（Electroluminescence）ディスプレイなどからなり、操作画面や欠陥候補画像などを表示する。
【００２７】
次に、画像処理部１２０及び制御部１４０の動作について図２などを参照してさらに説明する。
【００２８】
学習データ生成時は、画像処理部１２０と制御部１４０とによって、学習データを生成する。特に、制御部１４０は、学習データ生成部１４１として動作し、画像処理部１２０と協働して学習データを生成する。機械学習時は、制御部１４０によって、機械学習（分類器１４４の生成）を行う。特に、制御部１４０は、学習データ群読出部１４２、分類器生成部１４３として動作し、機械学習を行う。外観検査時（検査対象としての被写体Ｔの検査時）は、画像処理部１２０と制御部１４０とによって、外観検査を行う。特に、制御部１４０は、分類器１４４、検査用データ読出部１４５、投票結果解析部１４６、良否判別部１４７として動作し、画像処理部１２０と協働して外観検査を行う。制御部１４０をどのように動作させるかは、ユーザが例えば操作部１５０を介して指定すればよい。
【００２９】
ここで、学習データ生成時における画像処理部１２０及び制御部１４０（学習データ生成部１４１）の動作を説明する。
【００３０】
画像処理部１２０は、例えば、ユーザによる操作部１５０への操作（目視前データの収集を指示する操作）を契機として以下の処理を行う。画像処理部１２０は、ユーザが用意した被写体Ｔ（サンプル）を撮像した撮像画像（撮像部１１０によって撮像された画像であり、例えば、ユーザが操作部１５０を操作して撮像するようにすればよい。）に基づいて、各種画像処理を行って欠陥候補を検出する。そして、画像処理部１２０は、検出した欠陥候補を含む所定の大きさの欠陥候補画像を撮像画像から切り出す。また、画像処理部１２０は、欠陥候補の特徴を示す複数種類の特徴量（特徴量の種類は初期設定されている。）を算出し、算出した複数種類の特徴量の各データと、切り出した欠陥候補画像の画像データと、を対応づけて目視前データとして記憶部１３０に記録する。なお、欠陥候補は１つの撮像画像（１つのサンプル）に複数あってもよく、この場合には、画像処理部１２０は、各欠陥候補について個別に目視前データを記録する。目視前データの数は、分類性能の高い分類器１４４を生成するために、多い方がよい。また、特徴量の種類も、分類性能の高い分類器１４４を生成するために、多い方がよい。以下では、記憶部１３０に記録された複数の目視前データを目視前データ群と表現することもある。
【００３１】
学習データ生成部１４１は、例えば、目視前データ群記録後のユーザによる操作部１５０への操作（学習データ生成の指示操作）を契機として以下の処理を行う。学習データ生成部１４１は、目視前データを記憶部１３０から１つ読み出し、読み出した目視前データに含まれる欠陥候補画像のデータに基づいて、当該データによって表される欠陥候補画像を表示部１６０に表示（提示）する。ユーザは、欠陥候補画像を確認し、当該画像に写った欠陥候補の種別を、操作部１５０を介して入力する。ここで入力される種別は、ユーザが目視によって分類した目視種別であり、欠陥候補の正解種別である。学習データ生成部１４１は、入力された当該目視種別を表すデータと、今回読み出された目視前データに含まれる複数種類の特徴量を表す各データと、を対応づけて１つの学習データとして記憶部１３０に記録する。学習データ生成部１４１は、このような処理を繰り返し、目視前データそれぞれに対応する学習データ（図６参照）を複数記憶部１３０に記録する。以下では、記憶部１３０に記録された複数の学習データを学習データ群と表現することもある。
【００３２】
このように、学習データ生成時には、まず、機械学習の前段階として、サンプルである被写体Ｈを撮像した撮像画像から、画像処理とユーザによる目視とによって、学習データ群を生成する。
【００３３】
次に、機械学習時における制御部１４０（学習データ群読出部１４２及び分類器生成部１４３）の動作を説明する。
【００３４】
学習データ群読出部１４２は、学習データ群の記録後における、ユーザによる操作部１５０への操作（分類器生成の指示操作）を契機として、学習データ生成部１４１により記憶部１３０に記録された学習データ群を読み出す（例えば、ＲＡＭに一時記憶される。）。
【００３５】
分類器生成部１４３は、学習データ群読出部１４２により学習データ群が読み出されると、当該学習データ群に基づいて、分類器１４４を生成する。分類器生成部１４３は、学習データ群のうち、一部の学習データを使用して分類器１４４をランダムフォレスト法によって生成する。ランダムフォレスト法とは、ランダムサンプリングされた学習データ（トレーニングデータ）に基づいて、学習を行って多数の決定木を生成する方法である（説明変数である特徴量もランダムにサンプリングされる。）。分類器生成部１４３は、各学習データのうち、各特徴量を各説明変数とし、目視種別を目的変数として分類器１４４を生成する。なお、分類器生成部１４３は、後述のように、分類器（後述の仮分類器）を複数回生成する。具体的には、分類器生成部１４３は、学習データ群のうちの一部の学習データを使用して分類器（後述の仮分類器）を生成する。そして、分類器生成部１４３は、生成した分類器について、学習データ群のうちの残りの学習データ（分類器生成に用いられなかった学習データ）を用いて、テストを行い、当該分類器の分類の正答率を算出するとともに、不要な特徴量（分類の寄与度が低い種類の特徴量）を特定する。そして、分類器生成部１４３は、特定した不要な特徴量を除いた複数種類の特徴量に基づいて新たな分類器を生成する。分類器生成部１４３は、分類の正答率が最初の分類器の正答率（当該分類器による分類の正答率）などから大幅に低下しない範囲で、このようなことを繰り返し、最終的に、高寄与度の特徴量のみを説明変数とした最適な分類器１４４を生成する。また、分類器生成部１４３は、画像処理部１２０に対して、画像処理部１２０が外観検査時において算出して出力する特徴量の種類（分類器１４４に入力される特徴量の種類つまり分類器１４４の生成に使用された特徴量の種類であって、複数種類の特徴量）を指定する。これによって、画像処理部１２０は、外観検査時において、分類器１４４での分類に必要な種類の特徴量のみを計算する。
【００３６】
このように、機会学習時には、予め用意された学習データ群に基づいて、ランダムフォレストによって分類器１４４を生成する。なお、分類器１４４は、複数の決定木からなる（図９参照）。
【００３７】
次に、外観検査時における画像処理部１２０及び制御部１４０（分類器１４４、検査用データ読出部１４５、投票結果解析部１４６、良否判別部１４７）の動作を説明する。なお、以下の動作は、例えば、ユーザによる操作部１５０への操作を契機として開始する。
【００３８】
画像処理部１２０は、被写体Ｔ（検査対象）を撮像した撮像画像に基づいて、欠陥候補の検出、複数種類の特徴量の算出、欠陥候補画像の切り出しなどを行う。被写体Ｔ（検査対象）を撮像した撮像画像は、撮像部１１０によって撮像された画像であり、例えば、図示しないセンサなどによって搬送部１９０によって搬送される被写体Ｔの存在を検出したときに撮像部１１０が撮像動作を行い撮像された画像などであればよい。特徴量の算出や欠陥候補画像の切り出しの方法は、学習データ生成時におけるものと同様である。画像処理部１２０は、算出した複数種類の特徴量及び切り出した欠陥候補画像の各データを検査用データとして記憶部１３０に記録する。撮像画像に複数の欠陥候補が写っている場合（複数の欠陥候補を検出した場合）、各欠陥候補について検査用データを記憶部１３０の所定領域に記録する。
【００３９】
検査用データ読出部１４５は、例えば、所定期間ごとに動作する。検査用データ読出部１４５は、動作を開始すると、記憶部１３０をチェックし、検査用データが格納されていれば、当該検査用データを１つ読み出す（読み出された検査用データは、記憶部１３０から削除される）。検査用データ読出部１４５は、例えば、１つの検査用データを読み出すと、当該検査用データに対応する欠陥候補についての投票結果解析部１４６による処理が終了するまで、動作しないようになっている（他の検査用データの読み出しが禁止される）。
【００４０】
検査用データ読出部１４５によって読み出された検査用データに含まれる複数種類の特徴量は、分類器１４４に入力される。ここでは、分類器１４４の各決定木それぞれに、１セットの複数種類の特徴量（１つの欠陥候補についての複数の特徴量）が入力される（図９なども参照）。そして、各決定木は、入力された複数種類の特徴量に基づいて、当該特徴量が特徴を示す欠陥候補（現在使用されている検査用データに含まれる欠陥候補画像に写った欠陥候補であって、分類対象の欠陥候補）の種別を結果として出力する。各決定木が出力する種別のうち、最も多い種別が今回の欠陥候補の種別と判別されるので、各決定木が出力する分類結果は、欠陥候補の種別が何であるかの投票として捉えることもでき（投票数＝投票がなされた欠陥候補の種別を分類した結果として出力した決定木の数）、分類器１４４が出力する各種別は、例えば、欠陥候補の種別の投票結果（図１０参照）の形式で出力される。
【００４１】
投票結果解析部１４６は、分類器１４４が出力する投票結果を解析し、投票数（決定木の数）が最も多い種別を、今回の分類対象の欠陥候補の分類結果（当該欠陥候補の最終的な分類結果）とする。つまり、多数決で分類結果が決定される。なお、投票結果が僅差の場合（例えば、決定木の数に対する最多得票数の割合が低い場合や、最多得票数と次点の得票数との差が小さい場合など）、検査用データのうちの欠陥候補画像の画像データに基づいて、当該欠陥候補画像を表示部１６０に表示（提示）する。ユーザは、表示部１６０に表示された欠陥候補画像を目視し、欠陥候補の種別（目視種別）を操作部１５０を介して入力する。この場合、投票結果解析部１４６は、入力された目視種別を、最終的な分類結果とする。
【００４２】
良否判別部１４７は、全ての分類結果を蓄積し、分類結果の分布などに基づいて、不良条件（検査対象としての被写体Ｔが不良品であると判別できる条件）を満たすかを判別し、満たす場合には、不良品である旨の情報を表示部１６０に表示する。不良条件を満たさない場合には、良品である旨の情報を表示部１６０に表示する。
【００４３】
このように、外観検査時には、検査対象である被写体Ｈを撮像した撮像画像から、欠陥候補が写った部分の特徴量や欠陥候補画像を用いて、当該欠陥候補の種別を分類するとともに、分類結果に基づいて被写体Ｈの良品、不良品を検査できる。また、分類器１４４による投票結果が割れたときには、ユーザによる目視によって欠陥候補の種別の分類を行うようにしている。
【００４４】
次に、画像処理部１２０の詳細な動作フロー、及び、制御部１４０の各部の詳細な動作フローを個別にフローチャートを参照しながら説明する。
【００４５】
なお、ここでは、欠陥として、図３に示すような白点、黒点、白キズ、黒キズなどの欠陥があるものとする。これらは、白点及び黒点は、それぞれ、異物付着の欠陥であり、白キズ及び黒キズは、それぞれ、キズの欠陥の一種である。
【００４６】
（画像処理部１２０の処理例（図４））
画像処理部１２０は、撮像部１１０から供給された撮像画像に対して、まず、平滑化処理を行い（ステップＳ１０１）、撮像部１１０の撮像時のノイズなどを除去する。次に、画像処理部１２０は、平滑化した撮像画像に対して、強調処理を行い（ステップＳ１０２）、エッジなどを強調し、欠陥候補を分かりやすくする。
【００４７】
その後、画像処理部１２０は、二値化処理（ステップＳ１０３）、ラベリング処理（ステップＳ１０４）を実行する。
【００４８】
二値化処理では、強調後の画像をモノクロ画像に変換する。具体的には、強調後の画像において、輝度が第１閾値以上の画素（明るい画素）を白（「１」）とし、第１閾値未満の画素を黒（「０」）に変換する（当該変換後の画像を第１モノクロ画像とする。）。また、当該二値化処理では、強調後の画像において、輝度が第２閾値（第２閾値＜第１閾値）以下の画素（暗い画素）を黒（「０」）とし、第２閾値以上の画素を白（「１」）に変換する（当該変換後の画像を第２モノクロ画像とする。）。このように当該処理で、２つのモノクロ画像を生成するのは、欠陥として白点や黒点などがあるため（図３参照）、撮像画像において、正常な部分よりも明るい部分と暗い部分とをそれぞれ別個に検出するためである。
【００４９】
ラベリング処理では、第１モノクロ画像については、白の画素にラベル付けを行う。ラベル付けされた画素からなる領域は、明るい色の欠陥の可能性のある欠陥候補が写った部分である。また、第２モノクロ画像については、黒の画素にラベル付けを行う。なお、同じラベルが付された画素の領域（連続する領域）は、欠陥候補として検出した領域であり、複数存在することもある。
【００５０】
ラベリング処理のあと、画像処理部１２０は、ステップＳ１０５以降の処理を実行するが、これら処理は、同じラベルが付された画素の領域（欠陥候補）が複数ある場合には、複数の当該領域（複数の欠陥候補）それぞれについて行う。
【００５１】
画像処理部１２０は、ステップＳ１０５では、同じラベルが付された画素の領域（欠陥候補）の中心に位置する画素の座標を特定し、特定した座標を中心とした所定の大きさ（例えば、２５６×２５６ピクセル）の画像を、二値化される前の画像から切り取る。切り取られた画像は、欠陥候補が写った画像であるので、欠陥候補画像となる。
【００５２】
ステップＳ１０５のあと、画像処理部１２０は、欠陥候補の特徴を示す特徴量を算出する（ステップＳ１０６）。特徴量は、ラベル付けされた画素の領域（欠陥候補自身）の形状等から算出してもよいし、欠陥候補画像の画像データから算出してもよい。特徴量としては、欠陥候補の面積（画素数）、真円度、高さ、幅、縦横比、明輝度数、暗輝度数、ピーク輝度、ベース輝度、平均輝度、Ｈａａｒ特徴量、ＳＩＦＴ（Scale-Invariant Feature Transform）特徴量、ＬＢＰ（Local Binary Pattern）特徴量などがあり、複数種類（例えば、２４種類）の特徴量を算出する。特徴量は、公知のものを適宜採用できる。
【００５３】
その後、画像処理部１２０は、現在が機械学習の段階かを判別し（ステップＳ１０７、例えば、機械学習を指定する操作があったか否かなどによって判別できる。）、機械学習の段階であれば（ステップＳ１０７；Ｙｅｓ）、算出した複数種類の特徴量と欠陥候補画像の各データを目視前データとして記憶部１３０の第１記憶領域に記録し（ステップＳ１０８）、外観検査の段階であれば（ステップＳ１０７；Ｎｏ）、算出した複数種類の特徴量と欠陥候補画像の各データを検査用データとして記憶部１３０の第２記憶領域（検査用データ読出部１４５によってデータが読み出される領域）に記録する（ステップＳ１０９）。
【００５４】
（学習データ生成部１４１の処理例（図５））
学習データ生成部１４１は、記憶部１３０の第１記憶領域をチェックし、当該第１記憶領域に目視前データ（ここでは、最初８５０個の目視前データが記録されているものとする。）が記録されていないかを判別し（ステップＳ２０１）、目視前データが残っている場合（ステップＳ２０１；Ｎｏ）、学習データを生成するため、目視前データを１つ読み出す（ステップＳ２０２）。なお、読み出されたデータは記憶部１３０から削除される。
【００５５】
その後、学習データ生成部１４１は、読み出した目視前データに含まれる欠陥候補画像の画像データに基づいて、表示部１６０に当該欠陥候補画像を表示（提示）し（ステップＳ２０３）、目視によって判別した種別の入力を促す。そして、学習データ生成部１４１は、操作部１５０への種別の入力操作があるかを判別する（ステップＳ２０４）。ユーザは、欠陥候補画像を目視で確認し、当該画像に写った欠陥候補の種別を、操作部１５０を介して入力する。ユーザは、例えば、欠陥候補画像とともに表示された欠陥候補の種別を操作部１５０への操作によって選択することで種別を入力する。学習データ生成部１４１は、このような入力操作がない場合（ステップＳ２０４；Ｎｏ）、待機する。学習データ生成部１４１は、入力操作がある場合（ステップＳ２０４；Ｙｅｓ）、入力された当該目視種別を表すデータと、今回読み出された目視前データに含まれる複数種類の特徴量を表す各データと、を１つの学習データとして記憶部１３０に記録する（ステップＳ２０５）。その後、学習データ生成部１４１は、ステップＳ２０１の処理を実行する。
【００５６】
第１記憶領域に目視前データが残っていない場合（ステップＳ２０１；Ｙｅｓ）、８５０個分の目視前データそれぞれについて（サンプルの欠陥候補それぞれについて）、学習データを生成したことになるので、学習データ生成部１４１は、処理を終了する。
【００５７】
図６に、記憶部１３０に記憶された８５０個の学習データ（学習データ１〜８５０）の集まりである学習データ群の構成例を示す。図６のように、学習データ１〜８５０それぞれは、説明変数としての特徴量を複数種類含み、さらに、目的変数としての目視種別（なお、目視種別は、種別ごとに個別の番号が振られて変数として管理される。）を含む。
【００５８】
（分類器生成部１４３の処理例（図７））
分類器生成部１４３は、学習データ群読出部１４２によって読み出された学習データ群のうち、学習データ１〜６００から学習データセット（複数の学習データからなるグループ）を、ランダムにＴ組だけ抽出する（ステップＳ３０１）。今回、Ｔ本の決定木を有する分類器１４４を生成するので、分類器生成部１４３は、Ｔ組の学習データセットを抽出する。
【００５９】
その後、分類器生成部１４３は、Ｔ本の決定木を全て生成したかを判別する（ステップＳ３０２）。後述の「Ｎ」の値がＴに達しているかを判別することで、当該判別を行えばよい。「Ｎ」がＴに達していない場合、つまり、Ｔ本の決定木を全て生成していない場合（ステップＳ３０２；Ｎｏ）、Ｎ組目（Ｎの初期値は「１」）の学習データセットに基づいて機械学習を行い、Ｎ本目の決定木を生成する（ステップＳ３０３）。このとき、決定木の分岐ノードに用いられる特徴量の種類はランダムに選ばれる。例えば、説明変数としての特徴量の種類をランダムに選び、学習データに含まれる目視種別（目的変数）の情報利得が最大になるように、分岐ノードの条件（分岐の閾値など）の決定を行う。決定木の生成は、例えば公知のランダムフォレスト法によって行われればよいので、詳細な説明は省略する。その後、分類器生成部１４３は、Ｎの値を１増加させる（ステップＳ３０４）。
【００６０】
分類器生成部１４３は、Ｔ本の決定木を全て生成した場合（Ｎ＝Ｔのとき）（ステップＳ３０２；Ｙｅｓ）、Ｔ本の決定木からなる分類器である仮分類器に学習データ６０１〜８５０のうちの１つを入力し、当該仮分類器において分類された分類種別（最も多くの決定木によって分類された種別であり、上記のように多数決の最多得票の種別）を取得する。この分類種別と、仮分類器に入力した学習データに含まれる目視種別と、を比較し、仮分類器の分類の正誤を特定する（両種別が一致すれば「正」）。このような処理を学習データ６０１〜８５０それぞれについて行い、仮分類器の正答率（「正」の数／２５０（学習データ数））を算出する（ステップＳ３０５）。正答率は、仮分類器のデータに対応付けて仮分類器の生成順に当該処理終了までＲＡＭに保持される。なお、正答率は、仮分類器の分類の正解の割合を示すものであればよく、計算式は、上記式でなくてもよい。
【００６１】
ステップＳ３０５のあと、他の仮分類器を生成しているかを判別し（ステップＳ３０６）、他の仮分類器を生成していない場合（ＲＡＭに正答率等が保持されていない場合など）（ステップＳ３０６；Ｎｏ）には、今回生成した仮分類器における各特徴量の寄与度を学習データ６０１〜８５０に基づいて計算する（ステップＳ３０９）。例えば、１つの特徴量を、図８に示すように、学習データ６０１〜８５０間でランダムに入れ替えるシャッフルを行う。寄与度は、シャッフル後の学習データ６０１〜８５０それぞれを仮分類器に入力して得られる誤り率とシャッフル前の学習データ６０１〜８５０それぞれを仮分類器に入力して得られる誤り率とに基づいて求められる。寄与度の計算は、公知の方法で行える。なお、寄与度は、その特徴量についての分類への寄与の大きさを示すものであればよい。分類器生成部１４３は、このような寄与度の計算を、全ての種類の特徴量について行い、寄与度の最も低い特徴量（低寄与度特徴量）を特定し、学習データ１〜８５０それぞれから当該低寄与度特徴量を除外した学習データを新たな学習データ１〜８５０として生成（更新）する（ステップＳ３１０）。ステップＳ３１０のあとは、ステップＳ３０１以降の処理が行われるので、低寄与度特徴量を除外した学習データを新たな学習データ１〜６００に基づいて仮分類器が再度生成されることになる。なお、除外した低寄与度特徴量はＲＡＭなどに記憶されるものとする。
【００６２】
ステップＳ３０６において、分類器生成部１４３は、他の分類器があると判別した場合（ステップＳ３０６；Ｙｅｓ）、最初に生成した仮分類器の正答率と今回生成した仮分類器の正答率とを比較し、２つの正答率の差（最初に生成した仮分類器の正答率−今回生成した仮分類器の正答率）が所定の閾値以下（例えば、＋０．０２（正答率をパーセントで表した場合には＋２％）以下）であるかを判別する（ステップＳ３０８）。２つの正答率の差が所定の閾値以下である場合（ステップＳ３０８；Ｙｅｓ）、分類に必要な特徴量の数をさらに削減できる可能性があるので、ステップＳ３０９以降を実行し、さらに特徴量を削減した学習データに基づいて仮分類器を生成する。
【００６３】
２つの正答率の差が所定の閾値よりも大きい場合（ステップＳ３０８；Ｎｏ）、特徴量の除外によって正答率が最初の仮分類器の正答率から大幅に低下したことになるので、特徴量を削減しすぎたことがわかる。このような場合には、分類器生成部１４３は、前回生成した仮分類器を正式な分類器１４４として採用するとともに（ステップＳ３１１）、分類器１４４で使用（入力）される特徴量の種類（複数の種類であり、分類器１４４（採用対象の仮分類器）の生成時に使用された特徴量の種類でもある。）を画像処理部１２０に対して指定し（ステップＳ３１２）、本処理を終了する。分類器１４４で使用される特徴量の種類は、例えば、初期設定で用意されている特徴量の種類（最初の仮分類器の生成で使用される特徴量の種類）から、上記で採用対象の仮分類器が生成されたときまでに除外した低寄与度特徴量（ＲＡＭなどに記憶されている。）の種類を除いて特定すればよい。分類器１４４で使用される特徴量の種類を画像処理部１２０に対して指定することで、外観検査時において画像処理部１２０は、当該指定された種類の特徴量のみを計算すればよくなる。
【００６４】
上記一連の処理によって、分類器の生成に用いられる特徴量の種類を徐々に減らしながら、分類器１４４を生成でき、寄与度の低い特徴量の種類を使用しない分類器１４４を生成できる。そして、外観検査では、分類に寄与する度合いが低い特徴量を画像処理部１２０において計算せずにすむ（特に、画像処理部１２０が初期設定などにおいて計算可能な特徴量のうちの不要な特徴量を、外観検査において画像処理部１２０が実際に計算しないですむ）。
【００６５】
なお、ステップＳ３０８では、特徴量の削減数がある数を超えると急激に正答率が下がることもあるので、前回生成した仮分類器の正答率と今回生成した仮分類器の正答率とを比較してもよい。この場合、正答率の差（前回生成した仮分類器の正答率−今回生成した仮分類器の正答率）が、所定の閾値（上記閾値とは異なる値であってもよい。）以下であれば（ステップＳ３０８；Ｙｅｓ）、特徴量を減らしていく過程で、正答率の急激な低下はないので、ステップＳ３０９以降の処理を実行するようにすればよい。また、正答率の差が所定の閾値よりも大きくなったときには（ステップＳ３０８；Ｎｏ）、正答率の急激な低下が発生し、除外した特徴量は分類の寄与度が大きなものとわかるので、ステップＳ３１１以降の処理を行えばよい。
【００６６】
なお、上記正答率の差は、負の値になることもあり、このような場合には、特徴量の除外によって正答率が増加したことになる。正答率の差が閾値以下とは、正答率の差が負の値になることも含む。
【００６７】
図９に分類器１４４の構成を示す。図９に示すように、Ｔ本の決定木Ｋ１〜ＫＴは、分岐ノード（白丸）と、末端の葉ノード（ドットを付した丸）とから構成される。分岐ノードは、例えば特定の特徴量（図９では真円度）の値が閾値（図９では０．８）以上であるなどによって分岐する。各決定木には、外観検査時、１つの欠陥候補についての複数種類の特徴量が入力され、各決定木は、入力した特徴量によって分類した種別を出力する（最も多くの数が出力された種別を最終的な分類種別となる）。
【００６８】
分類器１４４は、外観検査時において、画像処理部１２０からの複数種類の特徴量に基づいて分類を行う。分類器１４４は、例えば、図１０に示すような、分類器１４４による分類の結果を、各決定木が出力する種別を１票とした投票結果の形で出力する。なお、投票結果は、種別ごとに、得票割合で示してもよいし（図１０）、得票数で示してもよい。
【００６９】
（投票結果解析部１４６の処理例（図１１））
投票結果解析部１４６は、まず、分類器１４４から投票結果が出力されると、その内容をチェックし、投票結果が僅差であるかを判別する（ステップＳ４０１）。僅差でない場合（ステップＳ４０１；Ｎｏ）、投票数（決定木の数）が最も多い種別を、今回の分類対象の欠陥候補の分類結果（当該欠陥候補の最終的な分類結果）として出力する。つまり、多数決で分類結果が決定される。投票結果が僅差の場合とは、例えば、決定木の数に対する最多得票数の割合が低い場合や、最多得票数と次点の得票数との差が小さい場合などであればよい。投票結果が僅差の場合（ステップＳ４０１；Ｙｅｓ）、検査用データ読出部１４５によって読み出された検査用データのうち、欠陥候補画像の画像データに基づいて、当該欠陥候補画像を表示部１６０に表示（提示）し（ステップＳ４０２）、操作の入力待ちを行う（ステップＳ４０３）。ユーザは、表示部１６０に表示された欠陥候補画像を目視し、欠陥候補の種別（目視種別）を操作部１５０を介して入力する。操作入力があった場合（ステップＳ４０３；Ｙｅｓ）、投票結果解析部１４６は、入力された目視種別を、最終的な分類結果として出力する。
【００７０】
（良否判別部１４７の処理例（図１２））
良否判別部１４７は、まず、分類結果を取得して蓄積し、未取得の分類結果（未分類の欠陥候補）があるかを判別する（ステップＳ５０１）。例えば、良否判別部１４７は、記憶部１３０に検査用データが記憶されているか、分類器１４４が動作しているかなどを判別することで、未取得の分類結果があるかを判別する。良否判別部１４７は、全ての分類結果を取得するまでステップＳ５０１の処理を行う（ステップＳ５０１；Ｎｏ）。検査用データが記憶されていないなどして未取得の分類結果がない場合（ステップＳ５０１；Ｙｅｓ）、分類結果の分布などに基づいて、不良条件（検査対象としての被写体Ｔが不良品であると判別できる条件）を満たすかを判別し（ステップＳ５０２）、満たす場合には（ステップＳ５０２；Ｙｅｓ）、不良品である旨の情報を表示部１６０に表示する（ステップＳ５０３）。不良条件を満たさない場合には（ステップＳ５０２；Ｎｏ）、良品である旨の情報を表示部１６０に表示する（ステップＳ５０４）。不良条件は、ユーザが任意に設定できる。例えば、特定の種別の分類結果が所定数以上になったときに不良条件成立とする。
【００７１】
上述したように、この実施の形態では、ランダムフォレストを使用した分類器１４４を生成する。このような分類器１４４では、１つ１つの分類性能（分類精度）は高くない決定木を複数用いた分類が行われるので、分類器１４４の分類の精度は高い。
【００７２】
また、この実施の形態では、分類器（仮分類器）を複数回生成しながら、分類の寄与度が低い特徴量を、生成した分類器の正答率が大幅に低下しない範囲で除外していきながら、最終的な分類器１４４を生成する。このため、分類性能が良く（正答率が高く）、かつ、使用する特徴量の種類の数を削減した分類器１４４を、精度良く生成できる。特に、分類器（仮分類器）を一度使用して、寄与度や正答率を特定するので（上記では計算によって特定しているが、テーブルなどを用いて寄与度や正答率を特定してもよい。）、不要な特徴量の削減を精度良く行える。また、特徴量の種類の数を削減したことによって、外観検査時における複数種類の特徴量の計算時間（つまり、分類に要する処理時間）を削減することができる。特に、計算時間が長いにも関わらず、分類の寄与度が低い特徴量の計算を行わなくてすむ場合もあり、この場合には、処理時間を効果的に削減できる。このように、この実施の形態では、欠陥候補の種別の分類性能（分類器の正答率）の低下を軽減しつつ、画像の分類に必要な処理時間を短くすることができる。
【００７３】
なお、ランダムフォレストで生成された分類器の各決定木は、お互いに依存性がない。これはランダムフォレストでランダムに抽出する学習データの各セットに基づいて各決定木を生成するとともに、各セットに含まれる学習データは重複を許容するからである。このため、ランダムフォレストでは、各決定木の生成を容易に並列化でき、各決定木の生成を比較的短時間で行える。特に、マルチコアＣＰＵや並列演算に特化したＧＰＵなどを用いることで各決定木の生成の処理を比較的短時間で行うことができる。この実施の形態では、正式な分類器１４４として採用する仮分類器を生成するまで、ランダムフォレストを用いて仮分類器を複数回生成するが、上述のように、ランダムフォレストは、仮分類器の生成に要する処理時間（各決定木の生成の処理の時間）は比較的短いので、仮分類器を複数回（特に多数回）生成する場合であっても、比較的短時間で分類器１４４を生成できる（他の機械学習の場合、仮類器の生成に時間がかかるので、複数回分類器を生成すると処理時間が長くなる恐れがある）。また、分類器１４４による分類においても、並列処理が可能となり、短時間の処理時間での分類が可能となる。
【００７４】
また、この実施の形態では、学習データ群の一部を分類器の生成に用い、残りを分類器のテスト（寄与度の計算や、低寄与度特徴量の特定、分類器の正答率の計算など）に使用するので、自動で特徴量の削減を行うことができる。特徴量については、人が分類について最適と思われる特徴量を選択する方法もあるが、この場合は分類性能が人の裁量に依存してしまい、設定する人によって結果が変わってしまうという問題がある。また特徴量がより増えてくると人による選択自体が困難となる。上記実施の形態では、自動で分類に適切な特徴量を選択するため、人の裁量に依存することがなく、安定した分類性能の分類器１４４の生成が期待できる。
【００７５】
また、分類器１４４の分類であっても、投票結果が僅差のときには、ユーザに分類を行ってもらうことで、より正確な分類を行える。
【００７６】
本発明は、上記実施の形態に限定されるものではなく、上記実施の形態に対して種々の変形（構成要素の削除を含む。）が可能である。以下、変形例について説明するが、各変形例の少なくとも一部同士を組み合わせてもよい。
【００７７】
（変形例１）
外観検査装置１００は、複数の装置を組み合わせたものであってもよい。例えば、画像処理部１２０をパーソナルコンピュータとし、機械学習を行う部分を機械学習用の別個の装置とし、外観検査を行う部分をさらに別個の装置としてもよい。また、画像処理部１２０が行う処理の少なくとも一部を制御部１４０が実行するようにしてもよい。また、制御部１４０が実行する処理の一部を他のハードウェア（専用のプロセッサなど）によって実行するようにしてもよい。
【００７８】
（変形例２）
上記実施の形態では、機械学習用の学習データ群を外観検査装置１００によって生成しているが、学習データ群は、他の装置で生成されたものを用意してもよい。但し、同じ被写体であっても撮像条件が異なれば、異なる画像になる可能性もあるので、学習データ用の被写体の撮影は、外観検査を行う装置と同じもので行うようにするとよい。つまり、上記実施の形態のように、サンプルとしての被写体も、外観検査を行う外観検査装置１００で撮像するとよい。
【００７９】
（変形例３）
上記実施の形態は、分類器（仮分類器も含む）を生成する第１の場合には、学習用の学習データ１〜６００を使用している。一方で、分類器（仮分類器も含む）の正答率などを調べるために分類器に実際に分類を行わせる第２の場合には、テスト用の学習データ６０１〜８５０を使用している。つまり、上記実施の形態では、前記２つの場合において同じ学習データを使用しないようにしている。しかし、前記２つの場合において、学習データを一部共通して用いてもよい。例えば、第１の場合には、学習データ１〜６００を使用し、第２の場合には、学習データ５９０〜８４０を使用するようにしてもよい。
【００８０】
（変形例４）
上記実施の形態では、仮分類器の複数回の生成において、常に同じ番号の学習データが使用されているが、回数ごとに異なる番号の学習データを使用するようにしてもよい。例えば、１回目の仮分類器の生成では、学習データ１〜６００を使用するが、２回目の仮分類器の生成では、学習データ２０１〜８００を使用するようにしてもよい。
【００８１】
（変形例５）
投票結果解析部１４６は、ステップＳ４０３で目視種別が入力された欠陥候補についての複数種類の特徴量と、当該入力された目視種別とを新たな学習データとして保存してもよい（例えば、従前の機械学習で用いた学習データ群に当該新たな学習データを加えるようにする）。そして、分類器生成部１４３は、任意のタイミングで新たな学習データを含む学習データ群に基づいて、新たな分類器を生成するようにしてもよい。ステップＳ４０３で目視種別が入力された欠陥候補は、分類の精度が悪い欠陥候補なので、この欠陥候補について機械学習することで、分類器１４４の分類性能の向上が期待できる。なお、ステップＳ４０３での目視による種別確認は、所定タイミングでまとめて行ってもよい。投票結果解析部１４６は、機械学習前の初期設定の種類の特徴量を画像処理部１２０などに算出させて、初期設定の複数種類の特徴量を含む学習データを前記新たな学習データとして記録してもよい。これによって、分類器生成部１４３では、新たな学習データを含む学習データ群に基づいて、図７の処理を再度行い、分類器１４４を生成できる。テップＳ４０３で目視種別が入力された欠陥候補の分類には、他の特徴量（特に従前の分類器では使用されていない特徴量）が有用かもしれないので、図７の処理を再度行うことで、分類性能のより高い分類器１４４を生成できる。
【００８２】
（変形例６）
上記実施の形態では、寄与度の最も低い特徴量（所定基準（寄与度が最も低くないという基準）を満たさない特徴量）（低寄与度特徴量）を、学習データから取り除く特徴量としているが、一度に取り除く特徴量は、複数であってもよい。例えば、所定の閾値よりも低い寄与度の複数種類の特徴量を、所定基準を満たさない特徴量（低寄与度特徴量）として、一度に学習データから除外するようにしてもよい。なお、前者のように特徴量を１つずつ減らす方が、余計な特徴量を減らさずにすむ。
【００８３】
なお、寄与度の計算は、上記実施の形態では、寄与度を算出したい分類器の生成に用いた学習データ（学習データ１〜６００）とは異なる学習データ（学習データ６０１〜８５０）を用いているが、分類器の生成と当該分類器における寄与度の計算とについて使用する学習データは少なくとも一部が重複してもよい。例えば、分類器の生成と寄与度の計算とで学習データ１〜６００を用いてもよい。
【００８４】
分類器１４４を生成するときは、例えば、前に生成した分類器（複数回生成する分類器のうち最初又は直前に生成した仮分類器など）による分類の正答率と、後に生成した分類器（前記前に生成した分類器のあとに生成した仮分類器など）による分類の正答率との差が所定範囲内のときに、後に生成した分類器を分類器１４４とすればよく、例えば、上記のように、複数種類の特徴量を除いて仮分類器を生成する場合には、当該複数種類の特徴量を除いて生成した仮分類器（２回目の仮分類器）による分類の正答率と、前に生成した分類器（１回目の仮分類器など）による分類の正答率との差が所定範囲内であれば、２回目の仮分類器を分類器１４４として採用するようにしてもよい（つまり、３回以上、仮分類器の生成と特徴量の除外とを正答率の差が大きくなるまで繰り返さなくてもよい）。なお、所定範囲内とは、予め定められた範囲などであり、上記実施形態のように前に生成した分類器による分類の正答率から後に生成した分類器による分類の正答率を減じた差が所定の閾値（ステップＳ３０８）以下の範囲などであってもよい。正答率差が例えば、±０．０２（正答率をパーセントで表した場合には±２％）以内などの所定範囲内となるときにおいて、仮分類器を分類器１４４に採用するようにしてもよい。
【００８５】
なお、上記したように、正答率差は、負の値になることもあり、このような場合には、特徴量の除外によって正答率が増加したことになる。分類器生成部１４３は、ステップＳ３０８で今回生成した仮分類器の正答率と比較する比較対象の正答率を、当該増加した正答率として新たなに設定してもよい。つまり、前に生成した分類器の正答率の代わりに、当該増加した正答率を用いてもよい。このように、上記「前に生成した分類器による分類の正答率」は、順次算出（特定）した正答率のうち、最も高いものとしてもよい。
【００８６】
（変形例７）
欠陥候補の種別（分類結果など）は、上記白点、黒点などに限定されず、種々のものを定義できる（ユーザが定義してもよい）。また、具体的な種別に該当しない欠陥候補の種別として「その他」などを用意してもよい。また、「その他」の場合には、欠陥候補画像を必ず出力して、ユーザに目視させてもよい。欠陥候補の種別は、「欠陥である」、「欠陥でない」の２種類などであってもよい。
【００８７】
（変形例８）
被写体Ｔは、搬送部１９０によって搬送されながら、撮像部１１０によって全体が複数回に分けて撮像されるようなものであってもよい。また、撮像部１１０は、複数のカメラによって構成されてもよい。
【００８８】
（変形例９）
順次搬送されてくる被写体Ｔを順次連続して外観検査するようにしてもよいが、この場合、分類処理が被写体Ｔの移動に追いつくように、分類に要する時間を短くする必要がある。上記構成（特に特徴量を削減する構成）によれば、分類に要する時間を短くできるので、分類の処理が被写体Ｔの移動に対して遅れることを防止できる。
【００８９】
（変形例１０）
学習データを取得する取得手段として、上記実施の形態では、学習データ群読出部１４２が学習データを記憶部１３０から取得しているが、当該取得手段は、ネットワークなどを介して、学習データを取得するものであってもよい。学習データを取得する取得手段は、分類器を生成するタイミングにおいて、所定のデータ（目視前データ）から学習データを生成することで、当該学習データを取得してもよい。学習データの取得は、学習データを生成したり、外部から記憶部１３０に格納したりすることであってもよい。
【００９０】
（変形例１１）
特徴量は、欠陥候補が写った画像（学習用の欠陥候補が写った画像又は検査対象の欠陥候補が写った画像）の特徴量であればよい。欠陥候補が写った画像とは、一枚の撮像画像であってもよいし、一枚の撮像画像における当該欠陥候補が写った一部分（上述のような欠陥候補そのものの部分や、欠陥候補画像など）であってもよい。
【００９１】
（変形例１２）
上記実施の形態では、寄与度の最も低い特徴量の特定と特定した特徴量を除いた学習データを使用して新たな仮分類器を生成することとを、前に生成した仮分類器による分類の正答率と、新たに生成した仮分類器による分類の正答率との差（正答率差）が所定範囲外になるまで繰り返し行い、前記正答率差が当該所定範囲外になったときに、当該正答率が当該所定範囲外になる直前に生成した仮分類器を分類器１４４としている。なお、前記除く特徴量は、寄与度が所定の閾値よりも低い複数の低寄与度特徴量の特定であってもよい。また、前記前に生成した仮分類器は、最初又は直前に生成した仮分類器などであればよい。しかし、上記方法の他、当該正答率が当該所定範囲外になったとき、分類器生成部１４３は、以前に学習データから除いた特徴量のうちの少なくとも１つ（除いた特徴量のうち、算出した寄与度が最も高い特徴量又は算出した寄与度が所定の閾値よりも高い特徴量など）を再度学習データに含ませて新たな仮分類器を生成する処理と、新たな仮分類器についての正答率の差（最初に生成した仮分類器や正答率の差が前記所定範囲内となっている仮分類器のうち最後に生成した仮分類器などの所定の仮分類器の正答率と、新たな仮分類器の正答率との差）が前記所定範囲内になるかを判定する処理と、を１回又は複数回繰り返し、前記所定範囲内になったときの、新たな分類器を分類器１４４として採用してもよい。このような場合であっても、特徴量の数を減らしたにもかかわらず、精度の良い分類器を生成できる。
【００９２】
（変形例１３）
良否判別部の判別結果は、表示部１６０に表示する代わりに又は加えて、後工程の装置などに出力するようにしてもよい。また、良否判別部１４７は、良・不良の判別のみではなく、良品又は不良品において、Ａ、Ｂ、Ｃなどの複数のランク分けを行うようにしてもよい。分類結果をどのように用いて、どのような判別を行うかは、ユーザに応じて任意に設定されればよい。
【００９３】
（変形例１４）
上記実施の形態では、仮分類器の生成に、学習データ群の学習データのうちの一部を使用しているが、学習データ群の全ての学習データを使用して仮分類器や分類器１４４を生成してもよい。このような場合には、寄与度や正答率の計算は、任意の方法で行えばよい。また、上記実施の形態では、記憶部１３０から読み出された学習データ群の学習データ１〜８５０全てを使用して、分類器１４４を生成しているが（テスト用の学習データ６０１〜８５０も分類器１４４の生成に使用していると捉えている）、学習データ群のうちの一部の複数の学習データ（例えば、読み出し段階で、ランダムで選ばれた学習データ）を使用して分類器１４４を生成してもよい。また、分類器１４４は、１回の分類器の生成によって生成してもよい。
【００９４】
（変形例１５）
上記実施の形態では、欠陥候補の種別の分類（検査対象の撮像画像のうちの少なくとも一部の、欠陥候補が写った画像の種別の分類）を行う分類器１４４を例示したが、本発明は、欠陥候補が写った画像の分類一般に適用でき、さらには、画像の分類一般に適用できる。分類器を生成するための学習用画像や分類器によって分類する画像は、一枚の撮像画像のうちの一部であってもよい。
【００９５】
（変形例１６）
上記実施の形態では、機械学習時の外観検査装置１００が分類器を生成する分類器生成装置として動作するが、分類器生成装置は、撮像１１０や搬送部１９０などを除いたものであってもよく、制御部１４０のみから構成されてもよい。
【００９６】
（変形例１７）
複数の決定木を有する分類器について、上記実施の形態では、投票結果が僅差のときには、分類の対象となる画像を出力してユーザに画像の分類を行ってもらうが、これによって、精度の低い分類が発生したとしても高い分類性能を保てる。上記実施の形態における、このような構成を特徴と捉えてもよく、このような場合には、上記分類器の生成のための構成などは不要となる。例えば、前記外観検査装置１００は、複数の決定木を有する分類器と、当該複数の決定木によって分類された結果の多数決によって、分類器の分類の結果を決定する決定手段と、を備え、前記決定手段は、前記複数の決定木の数に対する、前記多数決における最多得票数の割合が所定割合以下であるとき、又は、前記最多得票数と２番目の得票数との差が所定値以下であるときに、分類対象の前記画像をユーザに提示するものであってもよい。なお、前記外観検査装置１００は、画像の分類一般を対象とした画像分類装置であってもよい。
【００９７】
（変形例１８）
分類器生成部１４３は、例えば、複数の学習データに基づいて、特徴量を説明変数として使用したランダムフォレスト法にて、特徴量の数を異ならせた複数の仮分類器を生成可能であり、当該複数の仮分類器のうちの、第１仮分類器と当該第１仮分類器よりも特徴量の数が少ない第２仮分類器とを比較し、比較結果が所定基準を満たすときに、当該第２仮分類器を分類器１４４とするものであればよい（上記実施の形態もこの例である）。例えば、上記実施の形態などでは、２つの仮分類器の正答率の差を前記比較結果としているが、当該比較結果は、例えば、実際に仮分類器を動作させたときに特定される仮分類器の性能の差などであればよく、数値化されたものでなくてもよい（例えば、Ａ、Ｂ、Ｃなどのランクなどであってもよいし、ランク付けされた性能同士の差などであってもよい。）。前記所定基準は、例えば、適切な分類器１４４が得られる比較結果を特定可能な基準であればよく、ユーザが適宜設定できてもよい。また、比較される仮分類器の生成順序は任意である。例えば、特徴量を増やしながら仮分類器を順次生成していき、新たな仮分類器の正答率と最も使用する特徴量の多い仮分類器の正答率との差が所定範囲内のときの仮分類器を分類器１４４として採用するようにしてもよい。分類器生成部１４３が生成する複数の仮分類器は、上記実施の形態などでは、順次生成されていくが、例えば、特徴量を徐々に減らした複数の仮分類器を生成してから上記比較を行ってもよい。この場合、減らす特徴量は、直前に生成した仮分類器から算出した寄与度のうちの低寄与度特徴量であってもよいし、ランダムなどで選出された特徴量であってもよい。また、分類器生成部１４３は、複数の仮分類器を生成し（特徴の減らし方は、例えば、上記実施形態のように低寄与度特徴量を減らしていくなど）、それぞれの仮分類器の性能（正答率など）を特定し（例えば、上記実施の形態の実際に動作）、当該性能が予め定められた基準（例えば、正答率に関する閾値）を満たした仮分類器のうち使用する特徴量の種類の数が最も少ないもの（または、当該種類の数が所定の基準よりも少ないもの）などを分類器１４４に採用してもよい。所定の基準は、分類器１４４としての採用を許容できる基準であればよい。なお、どのような分類を行うかによって、分類器１４４としての採用を許容できる基準は異なるので（例えば、どのような分類を行うかによって正答率がどの程度になるかは異なる。）、上記のように、生成した仮分類器同士を比較して、分類器１４４として採用する仮分類器を特定した方がよい（これによって、分類器の生成として、ユーザによって選択される様々な分類に対応できる。）。
【００９８】
なお、学習データ群読出部１４２で読み出される（取得される）学習データは、ランダムに選出された複数組の学習データセット（各セットは、複数の学習データのグループからなる）の形式で読み出されてもよい。例えば、学習データ群読出部１４２が記憶部１３０から学習データを読み出す段階で、ステップＳ３０１相当の処理を実行してもよい。このような場合、分類器生成部１４３は、ランダムに選出された複数組の学習データセットを前記の複数の学習データとして前記複数の仮分類器を生成する。このような場合であっても、分類器生成部１４３は、当該複数組の学習データセット（前記の複数の学習データ）に基づいて、特徴量を説明変数として使用したランダムフォレスト法にて前記複数の仮分類器を生成するという。このように、学習データセットをランダムで抽出する段階（ステップＳ３０１など）が分類器生成部１４３以外の部分で行われても、分類器生成部１４３によってランダムフォレスト法にて分類器が生成するものとする）。
【００９９】
また、分類器生成部１４３は、例えば、新たに生成した仮分類器を第２仮分類器とし、その前に生成した仮分類器を第１仮分類器として、前記の比較結果が前記の所定基準を満たさなくなるまで、特徴量の数を減らしながら複数の仮分類器を生成し、前記の比較結果が前記の所定基準を満たさなくなったときに、（１）第２仮分類器の生成に使用されていない特徴量のうちの少なくとも１つを再度加えて新たな第２仮分類器を生成し、生成した新たな第２仮分類器について前記の比較結果が前記の所定基準を満たすときに、当該新たな第２仮分類器を分類器１４４とする、又は、（２）前記の比較結果が前記の所定基準を満たさなくなる前に生成した仮分類器のうち最も新しい仮分類器を前記画像分類器とする、ものであればよい（上記実施の形態もこの例である）。特徴量の数は、仮分類器を生成する度に１つずつ減らす他、一度に複数減らしてもよい。
【０１００】
（変形例１９）
なお、制御部１４０を動作させるプログラムは、記憶媒体又はネットワークを介して外観検査装置１００の外部から外観検査装置１００（記憶部１３０）に供給されてもよい。
【符号の説明】
【０１０１】
１００      外観検査装置
１１０      撮像部
１２０      画像処理部
１３０      記憶部
１４０      制御部
１４１      学習データ生成部
１４２      学習データ群読出部
１４３      分類器生成部
１４４      分類器
１４５      検査用データ読出部
１４６      投票結果解析部
１４７      良否判定部
１５０      操作部
１６０      表示部
【図１】
0006403261.tif 000002
【図２】
0006403261.tif 000003
【図３】
0006403261.tif 000004
【図４】
0006403261.tif 000005
【図５】
0006403261.tif 000006
【図６】
0006403261.tif 000007
【図７】
0006403261.tif 000008
【図８】
0006403261.tif 000009
【図９】
0006403261.tif 000010
【図１０】
0006403261.tif 000011
【図１１】
0006403261.tif 000012
【図１２】
0006403261.tif 000013