(57)【要約】【課題】  訓練データに誤りが存在するか否かを事前に適切に判定し、不要な誤り検出処理を行わずに済む情報処理装置を得る。【解決手段】  分類器３１は、入力データに対応して、複数の分類のそれぞれについての確信度を出力データとして導出する。機械学習処理部３２は、訓練データ２１に基づいて分類器３１の機械学習を行う。誤りデータセット検出部３３は、訓練データ２１に含まれていないデータセットを訓練データ候補２２とし、訓練データ候補２２の入力データを分類器３１に入力し、訓練データ候補２２の入力データに対応する分類器３１の出力データを取得し、取得した分類器３１の出力データにおける確信度の最大値が所定閾値以上であり、かつ、訓練データ候補２２の出力データの示す分類に基づき、その最大値を有する分類が正しくないと判定される場合、訓練データ２１に誤りデータセットが存在すると判定する。【選択図】  図１
2022003446.tif 000002
【特許請求の範囲】
【請求項１】
入力データに対応して、複数の分類のそれぞれについての確信度を出力データとして導出する分類器と、
訓練データに基づいて前記分類器の機械学習を行う機械学習処理部と、
前記訓練データが誤りデータセットを含むことを検出する誤りデータセット検出部とを備え、
前記誤りデータセット検出部は、（ａ）前記訓練データに含まれていないデータセットを訓練データ候補とし、前記訓練データ候補の入力データを前記分類器に入力し、前記訓練データ候補の入力データに対応する前記分類器の出力データを取得し、（ｂ）取得した前記分類器の出力データにおける確信度の最大値が所定閾値以上であり、かつ、前記訓練データ候補の出力データの示す分類に基づき、前記最大値を有する分類が正しくないと判定される場合、前記訓練データに誤りデータセットが存在すると判定すること、
を特徴とする情報処理装置。
【請求項２】
前記誤りデータセット検出部は、取得した前記分類器の出力データにおける確信度の最大値が前記所定閾値未満であるか、前記最大値を有する分類が正しいと判定される場合には、前記訓練データに誤りデータセットが存在しないと判定することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記機械学習処理部は、取得した前記分類器の出力データにおける確信度の最大値が前記所定閾値未満である場合、前記訓練データ候補を追加された前記訓練データに基づいて前記分類器の機械学習を行うことを特徴とする請求項１または請求項２記載の情報処理装置。
【請求項４】
前記誤りデータセット検出部は、前記訓練データに誤りデータセットが存在すると判定した場合、前記訓練データ内の前記誤りデータセットを特定することを特徴とする請求項１から請求項３のうちのいずれか１項記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置に関するものである。
【背景技術】
【０００２】
ある分類器は、訓練データに基づく機械学習によって導出されたパラメーター値を使用して、適切な分類を行うようになっている。そのため、訓練データが適切ではない場合、分類器が適切な分類を行わない可能性がある。ある検出装置は、訓練データの一部を選択して得られる縮小訓練データで分類器の機械学習を行い、その機械学習後の分類器をテストすることで、訓練データにおける誤りを検出している（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−２３２８４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、一般的に、訓練データ内のデータセット（入力データと出力データとの対）は非常に多いため、常に、上述のようにして分類器の訓練データ内の誤りを検出しようとすると、上述の処理（縮小訓練データでの機械学習およびテスト）の所要時間が長くなってしまい実用的ではない。
【０００５】
本発明は、上記の問題に鑑みてなされたものであり、訓練データに誤りが存在するか否かを事前に適切に判定し、不要な誤り検出処理を行わずに済む情報処理装置を得ることを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る情報処理装置は、入力データに対応して、複数の分類のそれぞれについての確信度を出力データとして導出する分類器と、訓練データに基づいて前記分類器の機械学習を行う機械学習処理部と、前記訓練データが誤りデータセットを含むことを検出する誤りデータセット検出部とを備える。そして、前記誤りデータセット検出部は、（ａ）前記訓練データに含まれていないデータセットを訓練データ候補とし、前記訓練データ候補の入力データを前記分類器に入力し、前記訓練データ候補の入力データに対応する前記分類器の出力データを取得し、（ｂ）取得した前記分類器の出力データにおける確信度の最大値が所定閾値以上であり、かつ、前記訓練データ候補の出力データの示す分類に基づき、前記最大値を有する分類が正しくないと判定される場合、前記訓練データに誤りデータセットが存在すると判定する。
【発明の効果】
【０００７】
本発明によれば、訓練データに誤りが存在するか否かを事前に適切に判定し、不要な誤り検出処理を行わずに済む情報処理装置が得られる。
【０００８】
本発明の上記又は他の目的、特徴および優位性は、添付の図面とともに以下の詳細な説明から更に明らかになる。
【図面の簡単な説明】
【０００９】
【図１】図１は、本発明の実施の形態に係る情報処理装置の構成を示すブロック図である。
【図２】図２は、図１における分類器３１の入出力データについて説明する図である。
【図３】図３は、図１に示す情報処理装置１の動作について説明するフローチャートである。
【発明を実施するための形態】
【００１０】
以下、図に基づいて本発明の実施の形態を説明する。
【００１１】
図１は、本発明の実施の形態に係る情報処理装置の構成を示すブロック図である。図１に示す情報処理装置１は、例えば、パーソナルコンピューター、画像処理装置（スキャナー、複合機など）などであり、入力装置１１、表示装置１２、記憶装置１３、通信装置１４、および演算処理装置１５を備える。
【００１２】
入力装置１１は、ユーザー操作を検出し、ユーザー操作を示す情報を出力する、ハードキー、タッチパネルなどといった装置である。表示装置１２は、ユーザーに対して各種情報を表示する、液晶ディスプレイなどといった装置である。例えば、入力装置１１および表示装置１２は、筐体の表面に設置されている操作パネルに配置される。
【００１３】
記憶装置１３は、ハードディスク、フラッシュメモリーなどといった書換可能な不揮発性の記憶装置であって、プログラムやデータを記憶している。ここでは、記憶装置１３は、後述の訓練データ２１、訓練データ候補２２などを記憶する。
【００１４】
通信装置１４は、内部バス、周辺機器インターフェイス、ネットワークなどを介して他の装置（画像読取装置２など）との間でデータ通信を行う装置である。なお、画像読取装置２は、原稿の画像を光学的に読み取り、その画像の画像データを生成し出力する。
【００１５】
演算処理装置１５は、各種プログラムを実行するコンピューター、ＡＳＩＣ（Application Specific Integrated Circuit）などを備え、コンピューター、ＡＳＩＣなどで、各種処理部として動作する。
【００１６】
ここでは、演算処理装置１５は、分類器３１、機械学習処理部３２、および誤りデータセット検出部３３として動作する。
【００１７】
分類器３１は、入力データに対応して、所定の複数の分類のそれぞれについての確信度を出力データとして導出するデータ処理部である。
【００１８】
図２は、図１における分類器３１の入出力データについて説明する図である。例えば図２に示すように、分類器３１について、入力データとして原稿画像（例えば画像読取装置２で読み取られた原稿画像）の画像データが使用され、請求書、見積書、納品書、領収書などといった複数の分類の確信度（つまり、分類結果）が出力データとして導出される。
【００１９】
分類器３１は、機械学習されたニューラルネットワーク（例えばディープニューラルネットワーク）、多クラス用のサポートベクターマシンなどを備え、機械学習処理部３２により設定されるパラメーターに基づいて、上述の分類のデータ処理を行う。例えば、そのニューラルネットワークには、ＶＧＧ１６などといった既存の畳み込みニューラルネットワークを使用することができる。
【００２０】
機械学習処理部３２は、分類器３１の種別（ディープニューラルネットワーク、サポートベクターマシンなど）に応じた既知の機械学習方法で、訓練データ２１に基づいて前記分類器の機械学習を行うデータ処理部である。
【００２１】
例えば、原稿画像を請求書、見積書、納品書、領収書などの複数の帳票種別のいずれかに分類する分類器３１の場合、訓練データ２１として、例えば入力データとしての請求書の画像データと、出力データ（ラベル）としての、請求書を示す分類結果（請求書の確信度が１でありその他の確信度が０であるデータ）を有するデータセットが使用される。
【００２２】
具体的には、分類器３１がニューラルネットワークである場合、機械学習処理部３２は、ニューロン間の結合係数、ニューロンのバイアスなどといったパラメーターの値を、訓練データ２１に基づいて、既存のディープラーニングの方式で最適化することで、分類器３１の機械学習を実行し、機械学習で得られたパラメーター値を分類器３１に設定する。
【００２３】
誤りデータセット検出部３３は、訓練データ２１が誤りデータセットを含むことを検出する。具体的には、誤りデータセット検出部３３は、（ａ）訓練データ２１に含まれていないデータセット（正しい入力データと出力データとの対）を訓練データ候補２２とし、訓練データ候補２２の入力データを分類器３１に入力し、訓練データ候補２２の入力データに対応する分類器３１の出力データを取得し、（ｂ）取得した分類器３１の出力データにおける確信度の最大値が所定閾値以上であり、かつ、訓練データ候補２２の出力データの示す分類に基づき、その最大値を有する分類が正しくないと判定される場合、訓練データ２１に誤りデータセットが存在すると判定する。
【００２４】
原稿画像を請求書、見積書、納品書、領収書などに分類する分類器３１の場合、誤りデータセットは、例えば、請求書の画像データに対して、納品書のラベルが付されているデータセットである。
【００２５】
また、誤りデータセット検出部３３は、取得した分類器３１の出力データにおける確信度の最大値が上述の所定閾値未満であるか、上述の最大値を有する分類が正しいと判定される場合には、訓練データ２１に誤りデータセットが存在しないと判定する。
【００２６】
さらに、この実施の形態では、誤りデータセット検出部３３は、訓練データ２１に誤りデータセットが存在すると判定した場合、既知の方法で、訓練データ２１内の誤りデータセットを特定する。
【００２７】
また、機械学習処理部３２は、取得した分類器３１の出力データにおける確信度の最大値が上述の所定閾値未満である場合、訓練データ候補２２を追加された訓練データに基づいて分類器３１の機械学習を行い、その機械学習で得られたパラメーター値で、分類器３１のパラメーター値を更新する。
【００２８】
次に、上記情報処理装置１の動作について説明する。図３は、図１に示す情報処理装置１の動作について説明するフローチャートである。
【００２９】
分類器３１は、訓練データ２１に基づく機械学習で得られたパラメーター値を予め適用される。
【００３０】
その後、誤りデータセット検出部３３は、訓練データ２１に含まれていないデータセットを訓練データ候補２２とし、訓練データ候補２２の入力データを分類器３１に入力し、訓練データ候補２２の入力データに対応する分類器３１の出力データ（各分類の確信度）を取得する（ステップＳ１）。
【００３１】
次に、誤りデータセット検出部３３は、複数の分類の確信度の最大値が所定閾値以上であるか否かを判定する（ステップＳ２）。
【００３２】
複数の分類の確信度の最大値が所定閾値以上であると判定した場合、誤りデータセット検出部３３は、訓練データ候補２２の出力データ（分類）と分類器３１の分類結果（確信度が最大値である分類）とを比較し（ステップＳ３）、分類結果が正しいか否か（つまり、両者が一致するか否か）を判定する（ステップＳ４）。
【００３３】
分類結果が正しいと判定されなかった場合（つまり、両者が一致しなかった場合）、誤りデータセット検出部３３は、現時点の訓練データ２１に誤りデータセット（つまり、入力データに対して正しくない出力データが関連付けられているデータセット）が存在すると判定し（ステップＳ５）、既知の方法で、現時点の訓練データ２１に含まれている誤りデータセットを特定する（ステップＳ６）。
【００３４】
なお、誤りデータセット検出部３３が、誤りデータセットを自動的に特定せずに、（例えば表示装置１２に警告メッセージを表示することで）現時点の訓練データ２１に誤りデータセットが存在することをユーザーに報知し、ユーザーが現時点の訓練データ２１に含まれている誤りデータセットを特定するようにしてもよい。
【００３５】
なお、このようにして、現時点の訓練データ２１に含まれている誤りデータセットが特定された後、誤りデータセット検出部３３は、その誤りデータセットを訓練データ２１から除去し、機械学習処理部３２は、除去後の訓練データ２１で分類器３１の機械学習を行い、その機械学習で得られたパラメーター値で、分類器３１のパラメーター値を更新するようにしてもよい。
【００３６】
一方、ステップＳ２において、確信度の最大値が所定閾値未満である場合には、誤りデータセット検出部３３は、訓練データ２１に誤りデータセットが存在しないと判定し、また、訓練データ候補２２を訓練データ２１に追加し（ステップＳ７）、機械学習処理部３２は、訓練データ候補２２が追加された訓練データ２１に基づいて分類器３１の機械学習を行い、その機械学習で得られたパラメーター値で、分類器３１のパラメーター値を更新する（ステップＳ８）。
【００３７】
また、ステップＳ４において、分類結果が正しいと判定した場合、誤りデータセット検出部３３は、訓練データ２１に誤りデータセットが存在しないと判定する。
【００３８】
なお、ステップＳ４において、分類結果が正しいと判定した場合、ステップＳ７，Ｓ８において、誤りデータセット検出部３３が、訓練データ候補２２を訓練データ２１に追加し、機械学習処理部３２が、訓練データ候補２２が追加された訓練データ２１に基づいて分類器３１の機械学習を行い、その機械学習で得られたパラメーター値で、分類器３１のパラメーター値を更新するようにしてもよい。
【００３９】
また、訓練データ候補２２として複数のデータセットがある場合は、各データセットについて、上述の処理が順番に繰り返し実行される。その場合、各データセットについての上述の処理において機械学習処理（ステップＳ８）を実行せずに、複数のデータセットについての上述の処理が完了してから、その機械学習処理を実行するようにしてもよい。
【００４０】
以上のように、上記実施の形態によれば、分類器３１は、入力データに対応して、複数の分類のそれぞれについての確信度を出力データとして導出する。機械学習処理部３２は、訓練データ２１に基づいて分類器３１の機械学習を行う。誤りデータセット検出部３３は、訓練データ２１が誤りデータセットを含むことを検出する。誤りデータセット検出部３３は、（ａ）訓練データ２１に含まれていないデータセットを訓練データ候補２２とし、訓練データ候補２２の入力データを分類器３１に入力し、訓練データ候補２２の入力データに対応する分類器３１の出力データを取得し、（ｂ）取得した分類器３１の出力データにおける確信度の最大値が所定閾値以上であり、かつ、訓練データ候補２２の出力データの示す分類に基づき、その最大値を有する分類が正しくないと判定される場合、訓練データ２１に誤りデータセットが存在すると判定する。
【００４１】
これにより、訓練データ２１に誤りが存在するか否かが事前に適切に判定され、不要な誤り検出処理を行わずに済む。
【００４２】
なお、上述の実施の形態に対する様々な変更および修正については、当業者には明らかである。そのような変更および修正は、その主題の趣旨および範囲から離れることなく、かつ、意図された利点を弱めることなく行われてもよい。つまり、そのような変更および修正が請求の範囲に含まれることを意図している。
【産業上の利用可能性】
【００４３】
本発明は、例えば、情報処理装置に適用可能である。
【符号の説明】
【００４４】
１  情報処理装置
３１  分類器
３２  機械学習処理部
３３  誤りデータセット検出部
【図１】
2022003446.tif 000003
【図２】
2022003446.tif 000004
【図３】
2022003446.tif 000005