(57)【要約】【課題】ユーザに入力を促すための提示するデータをできる限り少なくし、ユーザの入力に基づいて認識モデルの更新を行うことにより、能動的に学習を行う技術を提供することを目的とする。【解決手段】識別モデルを更新する更新手段と、更新された識別モデルにより、判定対象のデータの認識スコアを決定する決定手段と、認識スコアに基づいて、カテゴリごとに閾値を設定し、判定対象のデータを、付与されたラベルのカテゴリである可能性が高いラベル確定データと、付与されたラベルのカテゴリである可能性が低い識別境界データとに分類する分類手段と、識別境界データを画面に表示する表示制御手段と、識別境界データに関するラベルの入力を受け付ける受付手段と、ラベルの入力の結果による識別モデルの認識性能を評価した評価値に基づき、更新手段により識別モデルを更新するか判定する判定手段と、を有する。【選択図】図６
2019215728.tif 000002
【特許請求の範囲】
【請求項１】
識別モデルを更新する更新手段と、
前記更新された識別モデルにより、判定対象のデータの認識スコアを決定する決定手段と、
前記認識スコアに基づいて、カテゴリごとに閾値を設定し、前記判定対象のデータを、付与されたラベルのカテゴリである可能性が高いラベル確定データと、付与されたラベルのカテゴリである可能性が低い識別境界データとに分類する分類手段と、
前記識別境界データを画面に表示する表示制御手段と、
前記識別境界データに関するラベルの入力を受け付ける受付手段と、
前記ラベルの入力の結果による前記識別モデルの認識性能を評価した評価値に基づき、前記更新手段により前記識別モデルを更新するか判定する判定手段と、
を有する情報処理装置。
【請求項２】
前記ラベルの入力の結果による前記識別モデルの認識性能を評価した評価値が閾値以上の場合は、前記判定手段は、前記更新手段により前記識別モデルを更新すると判定する請求項１記載の情報処理装置。
【請求項３】
前記評価値は、二値分類器の性能評価値である請求項１又は２記載の情報処理装置。
【請求項４】
識別モデルを更新する更新手段と、
前記更新された識別モデルにより、スコアを決定する決定手段と、
前記スコアに基づいて、カテゴリごとに閾値を設定し、対象のデータを、付与されたラベルのカテゴリである可能性が高いラベル確定データと、付与されたラベルのカテゴリである可能性が低い識別境界データとに分類する分類手段と、
前記識別境界データを画面に表示する表示制御手段と、
前記識別境界データに関するラベルの入力を受け付ける受付手段と、
前記ラベルの入力の結果による、誤ったラベルが付与されたラベルノイズデータの割合に基づき、前記更新手段により前記識別モデルを更新するか判定する判定手段と、
を有する情報処理装置。
【請求項５】
前記ラベルの入力の結果によるラベルノイズデータの割合が閾値以上の場合は、前記判定手段は、前記更新手段により前記識別モデルを更新すると判定する請求項４記載の情報処理装置。
【請求項６】
前記ラベルの入力の結果によるラベルノイズデータの割合が閾値以上の場合は、前記更新手段は、ラベルノイズデータを対象学習データから除去して前記識別モデルを更新する請求項４又は５記載の情報処理装置。
【請求項７】
前記表示制御手段は、識別境界データの認識スコアの差分値が所定の値よりも大きい値を有する前後の識別境界データを順に表示する請求項１乃至６何れか１項記載の情報処理装置。
【請求項８】
前記表示制御手段は、識別境界データの認識スコアの差分値が所定の値よりも小さい値を有する前後の識別境界データを表示しないよう制御する請求項１乃至７何れか１項記載の情報処理装置。
【請求項９】
前記判定対象のデータは、外見検査のデータである請求項１乃至８何れか１項記載の情報処理装置。
【請求項１０】
前記判定対象のデータは、異常行動検知のデータである請求項１乃至８何れか１項記載の情報処理装置。
【請求項１１】
識別モデルを更新する更新手段を有する情報処理装置が実行する情報処理方法であって、
前記更新された識別モデルにより、判定対象のデータの認識スコアを決定する決定工程と、
前記認識スコアに基づいて、カテゴリごとに閾値を設定し、前記判定対象のデータを、付与されたラベルのカテゴリである可能性が高いラベル確定データと、付与されたラベルのカテゴリである可能性が低い識別境界データとに分類する分類工程と、
前記識別境界データを画面に表示する表示制御工程と、
前記識別境界データに関するラベルの入力を受け付ける受付工程と、
前記ラベルの入力の結果による前記識別モデルの認識性能を評価した評価値に基づき、前記更新手段により前記識別モデルを更新するか判定する判定工程と、
を含む情報処理方法。
【請求項１２】
識別モデルを更新する更新手段を有する情報処理装置が実行する情報処理方法であって、
前記更新された識別モデルにより、スコアを決定する決定工程と、
前記スコアに基づいて、カテゴリごとに閾値を設定し、対象のデータを、付与されたラベルのカテゴリである可能性が高いラベル確定データと、付与されたラベルのカテゴリである可能性が低い識別境界データとに分類する分類工程と、
前記識別境界データを画面に表示する表示制御工程と、
前記識別境界データに関するラベルの入力を受け付ける受付工程と、
前記ラベルの入力の結果による、誤ったラベルが付与されたラベルノイズデータの割合に基づき、前記更新手段により前記識別モデルを更新するか判定する判定工程と、
を含む情報処理方法。
【請求項１３】
コンピュータを、請求項１乃至１０何れか１項記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
パターン認識技術において、予め学習した認識モデルを用いて入力されたパターンを処理することにより、パターンに対する認識スコアを算出したうえで、パターンがどのカテゴリに属するかを決定するのは一般的である。この場合、パターン認識性能は認識モデルの性能に依存するため、認識モデルの性能を向上させることが重要である。例えば、特許文献１に記載の手法では、データのカテゴリに対応するコンテンツごとに、確信度と呼ばれる評価値を算出し、確信度に基づいて、コンテンツにおけるデータのラベル付加の方法を決定し、付加されたデータを用いて、認識モデルの更新を行い、認識モデルの分類性能を向上させる手法が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５５４５８７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１に記載の手法では、ユーザに提示するデータをできる限り少なくし、ユーザに半自動でデータを提示しユーザに入力を促したうえで、認識モデルの更新を行うことにより、能動的に学習を行っているわけではない。
【課題を解決するための手段】
【０００５】
本発明の情報処理装置は、識別モデルを更新する更新手段と、前記更新された識別モデルにより、判定対象のデータの認識スコアを決定する決定手段と、前記認識スコアに基づいて、カテゴリごとに閾値を設定し、前記判定対象のデータを、付与されたラベルのカテゴリである可能性が高いラベル確定データと、付与されたラベルのカテゴリである可能性が低い識別境界データとに分類する分類手段と、前記識別境界データを画面に表示する表示制御手段と、前記識別境界データに関するラベルの入力を受け付ける受付手段と、前記ラベルの入力の結果による前記識別モデルの認識性能を評価した評価値に基づき、前記更新手段により前記識別モデルを更新するか判定する判定手段と、を有する。
【発明の効果】
【０００６】
本発明によれば、ユーザに入力を促すための提示するデータをできる限り少なくし、ユーザの入力に基づいて認識モデルの更新を行うことにより、能動的に学習を行う技術を提供することができる。
【図面の簡単な説明】
【０００７】
【図１】実施形態１の情報処理システムのシステム構成の一例を示す図である。
【図２】情報処理装置のハードウェア構成等の一例を示す図である。
【図３】情報処理装置の機能構成の一例を示す図である。
【図４】実施形態１の画面の一例を示す図である。
【図５】情報処理の一例を示すフローチャートである。
【図６】実施形態１のＳ５０３の情報処理の一例を示すフローチャートである。
【図７】実施形態２のＳ５０３の情報処理の一例を示すフローチャートである。
【図８】実施形態３のＳ５０３の情報処理の一例を示すフローチャートである。
【図９】実施形態４の情報処理システムのシステム構成の一例を示す図である。
【図１０】実施形態４のＳ５０３の情報処理の一例を示すフローチャートである。
【図１１】実施形態４の画面の一例を示す図である。
【発明を実施するための形態】
【０００８】
以下、本発明の実施形態について図面に基づいて説明する。
【０００９】
＜実施形態１＞
本実施形態では、検査ライン上で、検査対象物が運ばれており、検査対象物を撮影した画像に基づいて検査をし、検査結果を表示するタスクを例として説明を行う。
図１は、情報処理システムのシステム構成の一例を示す図である。
情報処理装置１０１は、検査の処理を行う。情報処理装置１０１には、画像撮影装置１０２により撮影された画像が入力される。
画像撮影装置１０２は、検査対象物１０４の画像の撮影を行う。
ユーザインターフェース１０３は、情報処理装置１０１の検査結果や、ユーザに入力を促すための情報を表示したり、ユーザ操作に応じて、データを入力したりする装置である。ユーザインターフェース１０３は、モニタ、キーボード等から構成され、情報処理装置１０１から送信される検査結果を示す画像等を表示し、また、検査結果に対してユーザが判断した結果等を入力する。
検査対象物１０４は、本実施形態における検査対象である。
光源１０５は、検査対象物１０４に光を照射する。検査対象物１０４に照射された光を画像撮影装置１０２により、受光して、検査対象の画像を撮影する。
【００１０】
図２は、情報処理装置１０１のハードウェア構成等の一例を示す図である。
情報処理装置１０１は、ハードウェア構成として、ＣＰＵ２０１、主記憶装置２０２、補助記憶装置２０３、入力Ｉ／Ｆ２０４、出力Ｉ／Ｆ２０５を含む。ＣＰＵ２０１、主記憶装置２０２、補助記憶装置２０３、入力Ｉ／Ｆ２０４、出力Ｉ／Ｆ２０５は、システムバス２０６を介して、相互に接続されている。
ＣＰＵ２０１は、情報処理装置１０１の処理を制御する中央演算装置である。主記憶装置２０２は、ＣＰＵ２０１のワークエリアとして機能したり、プログラム等を記憶したりする記憶装置である。補助記憶装置２０３は、後述する学習用データ、各種設定値、各種閾値等のデータ、各種プログラム等を記憶する記憶装置である。
入力Ｉ／Ｆ２０４は、情報処理装置１０１の入力インターフェースである。入力ＩＩ／Ｆ２０４は、ネットワーク等を介して画像撮影装置１０２より撮影画像を受け付け、撮影画像をＣＰＵ２０１に入力したり、ユーザインターフェース１０３を介してユーザ操作を受け付け、ユーザ操作をＣＰＵ２０１に入力したりする。
出力Ｉ／Ｆ２０５は、情報処理装置１０１の出力インターフェースである。出力Ｉ／Ｆ２０５は、ユーザインターフェース１０３へ検出結果の情報を出力する。ＣＰＵ２０１が主記憶装置２０２又は補助記憶装置２０３に記憶されたプログラムに基づき処理を実行することによって、後述する図２の情報処理装置１０１の機能構成及び、後述する図５、図６、図７、図８、及び図１０のフローチャートの処理が実現される。
【００１１】
図３は、情報処理装置１０１の機能構成の一例を示す図である。
情報処理装置１０１は、特徴量抽出部３０１、識別器判定部３０２、閾値調節部３０３、可視化画像表示部３０４、スコアバー表示部３０５を含む。
特徴量抽出部３０１は、画像撮影装置１０２により撮影された判定対象の画像データを取得する。画像撮影装置１０２から動画データが入力される場合には、特徴量抽出部３０１は、検査対象物１０４が所定の位置に到達した時点での静止画（フレーム）を取得する。また、特徴量抽出部３０１は、画像撮影装置１０２により撮影された検査対象領域の画像データから特徴量を算出する。本実施形態で利用される画像データの特徴量については、図３のＳ３０２等の説明にて後述する。検査対象領域とは、画像撮影装置１０２により撮影される領域であり、検査対象物１０４を含む。
識別器判定部３０２は、特徴量抽出部３０１で抽出された特徴量を基に正常モデル識別器を生成し、生成された正常モデル識別器と判定対象のデータから求めた特徴量とを用いて、判定対象のデータの認識スコアを算出する。ここにおける正常モデル識別器とは、正常データのみを用いて正常の範囲を定義し、正常の範囲に含まれるか否か判定することにより、正常データとそれ以外の異常データを識別する。また、認識スコアとは、値が高ければ高いほど異常らしい（異常の可能性が高い）、といえ、値が低ければ低いほど正常らしい（正常の可能性が高い）、といえる。実施形態１の判定対象のデータは、外見検査のデータである。
【００１２】
閾値調節部３０３は、識別器判定部３０２で算出された認識スコアに対し、閾値を設定することにより、ラベル確定データと、識別境界データと、に分類する。ここにおけるラベル確定データは、認識スコアが低い、つまり正常らしい、正常ラベルが付与されたデータ、又は、認識スコアが高い、つまり異常らしい、異常ラベルが付与されたデータを指す。また、識別境界データは、認識スコアが高い、つまり異常らしい、正常ラベルが付与されたデータ、又は、認識スコアが低い、つまり正常らしい、異常ラベルが付与されたデータを指す。
正常と異常との異なる２クラスのデータがあるので、それぞれクラスに対し、閾値を設定する必要があるので、閾値調節部３０３が示すように二つの閾値を設定しなければならない。
可視化画像表示部３０４は、欠陥画像の候補となるデータをユーザインターフェース１０３に表示する。例えば、可視化画像表示部３０４は、閾値調節部３０３で設定した正常異常クラスの２つの閾値におけるデータを表示する。可視化画像表示部３０４は、表示した画像に対し、欠陥部分を強調するようにして画像全体を表示する。
スコアバー表示部３０５は、識別器判定部３０２で算出した認識スコアを小さい順にデータを並べ、閾値調節部３０３で決定した閾値を基に結果をユーザインターフェース１０３に表示する。
【００１３】
図４は、ユーザインターフェース１０３に表示された画面の一例を示す図である。
認識評価値４０１は、現在の正常モデル識別器の認識性能を評価した評価値を示し、二値分類器の性能評価値、例えばＡＵＣ（ＲＯＣ曲線で描かれた曲線下部面積）等の評価値を算出した結果を示す。
可視化画像４０２、４０３は、可視化画像を示し、閾値を決定する際に、４０２と４０３との間に閾値があるかどうかを判定するために、見やすく可視化し表示した結果を示す。
カーソル４０４は、四角形のカーソルを示し、可視化画像４０２を選択中であることを示している。
ボタン４０５、４０６、４０７は、それぞれ正常のクラス、異常のクラス、ラベルノイズに対応するボタンを示しており、可視化画像４０２にユーザがラベルを付けるために、対応するラベルをボタン４０５、４０６、４０７から選択できる機能を持っている。
【００１４】
カーソル４０８は、閾値調整機能における閾値決定のカーソルを示す。正常データのラベル確定データと、正常データの識別境界データとを、ユーザが操作して分類することができるようになっている。
カーソル４０９は、閾値調整機能における閾値決定のカーソルを示す。カーソル４０８と同様に、異常データのラベル確定データと、異常データの識別境界データとを、ユーザが操作して分けることができるようにしている。
スコアバー４１０、４１１、４１２は、スコアバーを示す。スコアバーは、カーソル４０８、４０９で設定された閾値により、スコアバーが３つの領域に区切られている。データごとに認識スコアが格納されており、スコアバーの領域の長さは、データの数に対応している。ここで、スコアバー４１０の領域が、確実に正常ラベルをもつラベル確定データに対応するデータ領域を示す。スコアバー４１１の領域が、スコアバー領域が正常であるか、異常であるか分からない境界にある識別境界データを示すデータ領域を示す。スコアバー４１２の領域が、確実に異常ラベルをもつラベル確定データに対応するデータ領域を示す。
【００１５】
図５は、情報処理装置１０１による情報処理の一例を示すフローチャートである。検査対象物１０４の欠陥検出処理を例に、Ｓ５０１〜Ｓ５０４の処理を説明する。
（Ｓ５０１：データ入力）
Ｓ５０１において、ＣＰＵ２０１は、画像撮影装置１０２により撮影された判定対象の画像データを取得する。また、ＣＰＵ２０１は、補助記憶装置２０３等から複数の学習用の画像データを取得する。ここで、検査対象領域が画像上の一部である場合、ＣＰＵ２０１は、画像内の検査対象領域のみを評価対象として取得する。学習用の画像データは、正常であるか、異常であるかのラベルが予め付与されている教師付きの学習データであることを想定している。
【００１６】
（Ｓ５０２：特徴量算出）
Ｓ５０２において、ＣＰＵ２０１は、Ｓ５０１で取得した判定対象の画像データの検査対象領域（以下、入力画像という）から、特徴量を抽出する。
複数の特徴量を用いる場合、例えば、ＣＰＵ２０１は、対象画像の検査対象領域に対して、ハール・ウェーブレット（Ｈａａｒ  Ｗａｖｅｌｅｔ）変換をかけて、階層的な変換画像を生成する。ハール・ウェーブレット変換処理とは、画像データについて位置情報を保持したまま周波数変換する処理である。本実施形態では、ＣＰＵ２０１は、Ｓ５０１で取得した画像データの特徴量を算出する処理として、ハール・ウェーブレット変換処理を用いる。
ＣＰＵ２０１は、１つの入力画像からハール・ウェーブレット変換処理を用いて生成した合計Ｎ種類の画像に対して、それぞれ画素値の最大値、平均値、標準偏差を特徴量として算出する。つまり、ＣＰＵ２０１は、１つの入力画像から、計Ｎ種類の画像を生成し、生成した画像それぞれについて統計特徴量を３種類ずつ抽出する。結果的に、ＣＰＵ２０１は、１つの入力画像から合計で３Ｎ個の特徴量を抽出する。
このように、Ｓ５０２の処理により、ＣＰＵ２０１は、入力画像及び学習用データから複数の特徴量を抽出することができる。学習用データの特徴量については、予め算出して補助記憶装置２０３に記憶しておいてもよい。
【００１７】
（Ｓ５０３：識別モデルの生成又は更新）
Ｓ５０３において、ＣＰＵ２０１は、Ｓ５０２で算出した特徴量を用いて、後述の識別モデルの生成又は更新を行う。
ここでは、部分空間法の１つである投影距離法を識別モデルの生成に用いる。投影距離とは、簡単に述べると、それぞれの特徴量を軸とする特徴空間における特徴ベクトルと、パターンの分布の分散が最大となる向きを持つ超平面（主平面）との最短距離である。ここで生成又は更新した識別モデルを利用して、ＣＰＵ２０１は、正常データと異常データとの判別を行う。
【００１８】
（Ｓ５０４：テストデータに対する正常異常判定）
Ｓ５０４において、ＣＰＵ２０１は、Ｓ５０３で生成又は更新した識別モデルを利用して、テストデータに対する正常異常判定を行う。より具体的には、ＣＰＵ２０１は、テストデータから特徴量抽出を行い、Ｓ５０３で生成又は更新された識別モデルを用いて、正常異常判定を行う。ここでは、ＣＰＵ２０１は、テストデータに対し投影距離を算出し、閾値処理をしたうえで、正常異常判定を行う。
【００１９】
Ｓ５０３における識別モデルの生成又は更新を行う方法に関するフローチャートを図６に示す。図６は、実施形態１のＳ５０３の情報処理の一例を示すフローチャートである。Ｓ６０１からＳ６０６までの処理を説明する。
（Ｓ６０１：識別モデルの生成又は更新）
Ｓ６０１において、ＣＰＵ２０１は、識別モデルの生成又は更新を行う。モデルの生成を行う場合は、ＣＰＵ２０１は、Ｓ５０２で算出された特徴量に対し、学習を行う。既に識別モデルが生成されており識別モデルの更新を行うときは、ＣＰＵ２０１は、ラベル確定データと、Ｓ６０５でラベルを付与した識別境界データと、の両方を用いて、識別モデルの更新を行う。
（Ｓ６０２：スコアバーの表示）
Ｓ６０２において、ＣＰＵ２０１は、Ｓ６０１で生成された識別モデルを用いて、学習データ又はテストデータに対し、認識スコアを算出し、算出した認識スコアが小さい順にデータを並べ替え、並べ替えた結果をユーザインターフェース１０３上に表示する。
【００２０】
（Ｓ６０３：カテゴリごとに閾値を設定し、ラベル確定データと識別境界データとを分類）
Ｓ６０３において、ＣＰＵ２０１は、正常クラス及び異常クラスのデータセットそれぞれに対し閾値を設定し、ラベル確定データと、識別境界データと、を分類する。
ラベル確定データと識別境界データとを分類するため、ユーザがスコアバーに示されたテストデータの認識スコアをみて、正常データのラベル確定データを決定するために、ＣＰＵ２０１は、異常データのうち、認識スコアの値が最も低いデータを基準として、正常データのラベル確定データを（式１）のように決定する。
ＯＫＤａｔａＳｃｏｒｅ＜ｍｉｎ（Ｓｃｏｒｅ（ＮＧ））（式１）
ここで、ＯＫＤａｔａＳｃｏｒｅは正常データの認識スコアを示し、異常データの認識スコアのうちで値が最も低いデータを基準に正常データのラベル確定データを決定していることを示す。
ユーザが、スコアバーに示されたテストデータの認識スコアをみて、異常データのラベルの確定データを決定するために、ＣＰＵ２０１は、正常データのうち、認識スコアの値が最も高いデータを基準として、異常データのラベル確定データを（式２）のように決定する。
ＮＧＤａｔａＳｃｏｒｅ＞ｍａｘ（Ｓｃｏｒｅ（ＯＫ））（式２）
ここで、ＮＧＤａｔａＳｃｏｒｅは異常データの認識スコアを示し、正常データの認識スコアのうちで値が最も低いデータを基準に異常データのラベル確定データを決定していることを示す。
【００２１】
（Ｓ６０４：設定された識別境界データをユーザに順に提示）
Ｓ６０４において、ＣＰＵ２０１は、Ｓ６０３で設定された識別境界データをユーザに順に提示し、提示されたデータが正常異常のどちらに属するかをユーザに判断させる。Ｓ６０４の処理は、識別境界データを画面に表示する表示制御の処理の一例である。
（Ｓ６０５：ユーザによる識別境界データのラベルの入力を受付）
Ｓ６０５において、ＣＰＵ２０１は、Ｓ６０４で提示された識別境界データに対し、ユーザによる識別境界データのラベルのユーザインターフェース１０３を介した入力を受け付ける。ユーザは、ユーザインターフェース１０３で画像を確認するか、実際の検査対象物を確認して識別境界データのラベルを決定する。
【００２２】
（Ｓ６０６：識別境界データのラベルを判断させた結果を用いて、評価値を算出）
Ｓ６０６において、ＣＰＵ２０１は、Ｓ６０５で付与された識別境界データのラベルの結果を用いて、評価値が閾値（本実施形態ではｘ）以上であるか否かを判定する。ＣＰＵ２０１は、評価値がｘ以上であるのであれば、Ｓ６０１に戻り、識別モデルの更新を行い、評価値がｘ未満であれば、識別モデルの更新を行わず、図６に示すフローチャートの処理を終了する。Ｓ６０６の処理は、評価値が閾値以上かを判定する処理の一例である。
ＣＰＵ２０１は、評価値として、二値分類器の性能評価値を用い、例えば、Ｓ５０１で予め付与されたデータのラベルと、Ｓ６０５で入力されたラベルの判定結果との並びから、ＲＯＣ曲線を描き、描いたＲＯＣ曲線に基づいて、評価値エリアアンダーカーブ（ＡＵＣ：ＲＯＣ曲線の下部面積）を算出する。ＣＰＵ２０１は、ここで算出したＡＵＣがｘ以上であれば、Ｓ６０１に戻り、識別モデルの更新を行う。ＣＰＵ２０１は、評価値がｘ未満であれば、識別モデルの更新を行わず、図６に示すフローチャートの処理を終了する。
ここでは、ＡＵＣを評価値として用いると述べたが、ＣＰＵ２０１は、適合率と再現率との調和平均であるＦ値を評価値として用いるようにしてもよい。
【００２３】
以上、本実施形態によれば、ユーザがデータのカテゴリごとに閾値パラメータを設定し、カテゴリの境界にあるデータに対し正常異常の判断が正しいかどうかを判断する。このことにより、再目視の対象を少なくことができ、精度の高い識別モデルを生成することができる。結果的に、情報処理装置１０１は、より精度の高い認識処理を行うことができる。
【００２４】
＜実施形態２＞
実施形態１では、情報処理システムは、データをカテゴリごとに閾値パラメータを設定し、カテゴリの境界にあるデータに対し、ユーザによる正常異常の判断が正しいかどうかを判定し、識別モデルを生成した。
これに対し、本実施形態の情報処理システムは、学習データに、誤ったラベルが付与されたラベルノイズを含むデータがある場合、識別モデルの更新を行うか否かを判定し、どのデータを識別モデルの更新に利用するかを判定する仕組みについて述べる。
本実施形態における情報処理システムのシステム構成、情報処理装置１０１のハードウェア構成及び機能構成は、実施形態１と同様である。
【００２５】
図７は、実施形態２のＳ５０３の情報処理の一例を示すフローチャートである。なお、図７のＳ７０１、Ｓ７０２、Ｓ７０４、Ｓ７０５の処理は、図６のＳ６０１、Ｓ６０２、Ｓ６０４、Ｓ６０５の処理と同じである。
【００２６】
（Ｓ７０３：カテゴリごとに閾値を設定し、ラベル確定データと、識別境界データとを分類）
Ｓ７０３において、ＣＰＵ２０１は、正常クラス及び異常クラスのデータセットそれぞれに対し閾値を設定し、ラベル確定データと、識別境界データとを分類する。
ラベル確定データと識別境界データとを分類するため、ユーザがスコアバーに示されたテストデータの認識スコアをみて、正常データのラベル確定データを決定するために、ＣＰＵ２０１は、異常データのうち、認識スコアの値が低いデータを基準として、正常データのラベル確定データを（式３）のように決定する。
ＯＫＤａｔａＳｃｏｒｅ＜ｍｉｎ（Ｓｃｏｒｅ（ＮＧ））−α（α＞０）（式３）
ここで、ＯＫＤａｔａＳｃｏｒｅは正常データの認識スコアを、αは正の定数を示し、異常データのうちで認識スコアの値が最も低いデータを基準に閾値を設定していることを示す。αは正の定数であるので、（式１）に比べ、正常データのラベル確定データを少なく設定しているといえる。
ユーザが、スコアバーに示されたテストデータの認識スコアをみて、異常データのラベルの確定データを決定するために、ＣＰＵ２０１は、異常データの側の閾値を正常データのうちで認識スコアの値が高いデータを基準として、異常データのラベル確定データを（式４）のように決定する。
ＮＧＤａｔａＳｃｏｒｅ＞ｍａｘ（Ｓｃｏｒｅ（ＯＫ））＋β（β＞０）（式４）
ここで、ＮＧＤａｔａＳｃｏｒｅは異常データのラベル認識スコアを、βは正の定数を示し、正常データの認識スコアのうちで値が最も高いデータを基準に閾値を設定していることを示す。βは正の定数を示し、（式２）に比べ、異常データのラベル確定データを少なく設定しているといえる。
【００２７】
（Ｓ７０６：識別境界データに含まれるラベルノイズデータの割合をｙ％以上であるか否か）
Ｓ７０６において、ＣＰＵ２０１は、Ｓ６０５で付与された識別境界データのラベルの結果を用いて、ラベルノイズの割合が閾値（本実施形態ではｙ％）以上であるか否かを判定する。ＣＰＵ２０１は、ラベルノイズの割合がｙ％以上であるのであれば、Ｓ７０７に進み、ラベルノイズの割合がｙ％未満であれば、図７に示すフローチャートの処理を終了する。Ｓ７０６の処理は、ラベルノイズデータの割合が閾値以上かを判定する処理の一例である。
（Ｓ７０７：ラベル確定データと、ユーザがラベルを確認した識別境界データを抽出）
Ｓ７０７において、ＣＰＵ２０１は、ラベル確定データとユーザがラベルを確認した識別境界データとを抽出する。そして、ＣＰＵ２０１は、Ｓ７０１に戻り、識別モデルの更新を行う。
ラベルノイズを持つデータは識別モデルの更新に利用しないほうがよいため、ラベルノイズをもつデータを識別モデルの更新に用いず、ラベルノイズデータ以外の識別境界データのみを識別モデルの更新に用いる。この処理は、ＣＰＵ２０１は、ラベルノイズデータを対象学習データから除去して識別モデルを更新する処理の一例である。
【００２８】
以上、本実施形態によれば、情報処理システムは学習データにラベルノイズを含むデータがある場合においても、識別モデルの更新を行うかどうかを判定し、識別モデルの更新に含めるデータのみに関し、識別モデルを生成する。このことにより、より精度の高い識別モデルを生成することができる。
【００２９】
＜実施形態３＞
実施形態１では、情報処理システムは、データのカテゴリごとに閾値パラメータを設定し、カテゴリの境界にあるデータに対し、ユーザによる正常異常の判断が正しいかどうかを判断し、精度の高い識別モデルを生成した。
これに対し、本実施形態の情報処理システムは、識別境界データのラベルを半自動で設定することにより、再目視の対象をより少なく抑える手法について述べる。
本実施形態における情報処理システムのシステム構成、情報処理装置１０１のハードウェア構成及び機能構成は、実施形態１と同様である。
【００３０】
図８は、実施形態３のＳ５０３の情報処理の一例を示すフローチャートである。なお、図８のＳ８０１、Ｓ８０２、Ｓ８０３、Ｓ８０６、Ｓ８０７の処理は、図５のＳ６０１、Ｓ６０２、Ｓ６０３、Ｓ６０５、Ｓ６０６の処理それぞれと同じである。
（Ｓ８０４：識別境界データの認識スコアの差分値を算出）
Ｓ８０４において、ＣＰＵ２０１は、識別境界データの認識スコアの差分値を算出する。
（Ｓ８０５：ユーザに差分値が大きい前後のデータを順に表示）
Ｓ８０５において、ＣＰＵ２０１は、認識スコア順に並んだ識別境界データに対し、隣り合う前後のデータの認識スコアの差分値が所定の値より大きい値をもつ隣り合う前後のデータを順にユーザインターフェース１０３に表示していく。一般に認識スコア順に並んだ識別境界データに対し、正常と異常とを分ける閾値は差分値が大きくなることが考えられる。よって、ユーザは、データ間の認識スコアの差分値をみることで、識別境界データの正常と異常とを分ける閾値がどこであるのかを把握することができる。
【００３１】
隣り合う前後のデータの認識スコアの差分値が大きい値をもつ隣り合う前後のデータを順に表示していくと述べたが、ＣＰＵ２０１は、認識スコアの差分値が所定の値より小さい隣り合う前後のデータを順に結合していき、表示しないようにしてもよい。これにより、ＣＰＵ２０１は、結合されなかった認識スコアをもつ２つの閾値におけるデータを順に表示する。
【００３２】
以上、本実施形態によれば、再目視の対象をより少なく抑えることにより、識別モデルを生成する。結果的に、情報処理システムは、より精度の高い認識処理を行うことができる。
【００３３】
＜実施形態４＞
実施形態１では、検査ライン上で、検査対象物が運ばれており、情報処理システムが画像を撮影して検査し、検査結果を表示するタスクを例とした。
これに対し、本実施形態では、情報処理システムを異常行動検知に活用する場合、異常行動を検知する識別モデルの精度を向上させていく手法について述べる。実施形態４の判定対象のデータは、異常行動検知のデータである。
図９は、実施形態４の情報処理システムのシステム構成の一例を示す図である。
情報処理装置９０１は、動画像を対象に異常行動を行っている人物を検出する。情報処理装置９０１には、画像撮影装置９０２で撮影された画像が入力される。
画像撮影装置９０２は、検査対象物の画像の撮影を行う。
ユーザインターフェース９０３は、異常行動検出結果や、ユーザに入力を促すための情報を表示したり、ユーザ操作に応じて、データを入力したりする装置である。モニタ、キーボード等から構成され、情報処理装置１０１から送信される認識結果を表示し、また、認識結果に対してユーザが判断した結果等を入力する。
異常行動監視対象９０４は、画像撮影装置９０２の異常行動監視対象である人を示す。
情報処理装置９０１のハードウェア構成は、実施形態１と同様である。
【００３４】
図１０は、実施形態４のＳ５０３の情報処理の一例を示すフローチャートである。Ｓ１００１からＳ１００９までの処理を説明する。
図１０のＳ１００３、Ｓ１００４、Ｓ１００５、Ｓ１００６、Ｓ１００７、Ｓ１００８は、実施形態１で示した図６のＳ６０１、Ｓ６０２、Ｓ６０３、Ｓ６０４、Ｓ６０５、Ｓ６０６と同じであるので説明は省略する。
（Ｓ１００１：歩行軌跡の取得）
Ｓ１００１において、ＣＰＵ２０１は、複数の画像データから人ｉ（ｉ＝１，２，．．．，Ｎ）ごとにオプティカルフロー等を用いて歩行軌跡を取得する。
【００３５】
（Ｓ１００２：歩行軌跡座標値ベクトルを生成）
Ｓ１００２において、ＣＰＵ２０１は、入力された時間ｔにおける２次元座標はＰt=(ｐxt，ｐyt)で表されるため、人ごとに移動軌跡ＰtがＭ個並んだ大きさ２Ｍ個の歩行軌跡座標値ベクトルｙiを考える。但し、撮影する時間の長さによって、歩行軌跡座標値ベクトルの長さが異なるので、ＣＰＵ２０１は、等間隔に画像を間引くことにより、歩行軌跡座標値ベクトルｙiの長さを２Ｍに正規化する。
次に、ＣＰＵ２０１は、設定した歩行軌跡座標値ベクトルを基に歩行軌跡座標値行列を算出する。人に対し、ｙiの平均値Ｃiを算出する。平均値の算出方法は、（式５）に示す。
【数１】
2019215728.tif 000003
ＣＰＵ２０１は、歩行軌跡座標値ベクトルｙiの各要素から平均Ｃiを差し引く。ＣＰＵ２０１は、これをすべての人に対して行い、ｙ1，ｙ2，．．．,ｙnを算出し、入力ベクトルとする。
【００３６】
（Ｓ１００９：テストデータの歩行軌跡座標値ベクトルに対する評価）
Ｓ１００９において、ＣＰＵ２０１は、Ｓ１００２で生成した識別モデルを用いて、テストデータの異常行動検知が行われているかの判定を行う。ここでは、Ｓ５０４と同様に部分空間法の１つである投影距離法を識別モデルの生成に用いる。
【００３７】
図１１は、第４の実施形態におけるユーザインターフェース１０３の外観を示す図である。
認識評価値１１０１は、認識評価値を示し、二値分類器の性能評価値、例えばＡＵＣ等の評価値を算出した結果を示す。
動画画像１１０２、１１０３は、閾値を決定する際に、動画画像１１０２と動画画像１１０３との間に閾値があるかどうかを見やすく可視化した動画画像を示す。
カーソル１１０４は、四角形のカーソルを示し、動画画像１１０３を選択中であることを示している。
ボタン１１０５、１１０６、１１０７は、それぞれ正常のクラス、異常のクラス、ラベルノイズに対応するボタンを示しており、動画画像１１０３にユーザがラベルを付けるために、対応するラベルをボタン１１０５、１１０６、１１０７から選択できる機能を持っている。
【００３８】
カーソル１１０８は、閾値調整機能における閾値決定のカーソルを示す。正常行動データのラベル確定データと、正常行動データの識別境界データとを、ユーザが操作して分類することができるようになっている。
カーソル１１０９は、閾値調整機能における閾値決定のカーソルを示す。カーソル１１０８と同様に、異常行動データのラベル確定データと、異常行動データの識別境界データを、ユーザが操作してわけることができるようにしている。
スコアバー１１１０、１１１１、１１１２は、スコアバーを示す。スコアバーは、カーソル１１０８、１１０９で設定された閾値により、スコアバーが３つの領域に区切られている。データごとに認識スコアが格納されており、スコアバーの領域の長さは、データの数に対応している。ここで、スコアバー１１１０の領域が、確実に正常行動であるラベル確定データに対応するデータ領域を示す。スコアバー１１１１の領域が、正常行動であるか、異常行動であるか分からない境界にある識別境界データを示すデータ領域を示す。スコアバー１１１２の領域が、確実に異常行動であるラベル確定データに対応するデータ領域を示す。
【００３９】
以上、本実施形態によれば、情報処理システムは、外観検査のタスクのみならず、異常行動検知のタスクにおいても、活用することができる。異常行動検知のタスクにおいて、再ラベリングを行い、データのカテゴリごとに閾値パラメータを設定し、カテゴリの境界にあるデータに対し正常異常の判断が正しいかどうかをユーザが判断する。これにより、異常行動検知のタスクにおいても、再ラベリングの手間を抑えることができ、精度の高い識別モデルを生成することができる。
【００４０】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００４１】
以上、本発明の実施形態の一例について詳述したが、本発明は係る特定の実施形態に限定されるものではない。
任意の実施形態を組み合わせて実施してもよい。
【００４２】
以上、上述した各実施形態によれば、ユーザに入力を促すための提示するデータをできる限り少なくし、ユーザの入力に基づいて認識モデルの更新を行うことにより、能動的に学習を行う技術を提供することができる。
【符号の説明】
【００４３】
１０１  情報処理装置
１０３  ユーザインターフェース
２０１  ＣＰＵ
【図１】
2019215728.tif 000004
【図２】
2019215728.tif 000005
【図３】
2019215728.tif 000006
【図４】
2019215728.tif 000007
【図５】
2019215728.tif 000008
【図６】
2019215728.tif 000009
【図７】
2019215728.tif 000010
【図８】
2019215728.tif 000011
【図９】
2019215728.tif 000012
【図１０】
2019215728.tif 000013
【図１１】
2019215728.tif 000014