(57)【要約】【課題】ユーザ要求を満たす最終的な結果が得られる識別器を実現するための学習データを効率的に生成する。【解決手段】モデル情報を用いて入力データを処理することによって生成される第１出力データから第２出力データを生成するシステムに設定する、モデル情報を生成するための機械学習に用いる学習データを生成する計算機であって、解析用入力データを取得し、任意の生成条件に基づいて解析用入力データから解析用第１出力データを生成し、解析用第１出力データから解析用第２出力データを生成し、解析用第２出力データを解析し、解析用第２出力データがユーザ要求を満たすデータである場合、解析用入力データ及び解析用第１出力データから構成されるデータを学習データとして生成する。【選択図】図２
2020126328.tif 000002
【特許請求の範囲】
【請求項１】
モデル情報を用いて入力データを処理することによって生成される第１出力データから第２出力データを生成するシステムに設定する、前記モデル情報を生成するための機械学習に用いる学習データを生成する計算機であって、
プロセッサ、前記プロセッサに接続される記憶装置、及び前記プロセッサに接続されるインタフェースを備え、
前記プロセッサは、
解析用入力データを取得し、
任意の生成条件に基づいて、前記解析用入力データから解析用第１出力データを生成し、
前記解析用第１出力データから解析用第２出力データを生成し、
前記解析用第２出力データを解析し、
前記解析用第２出力データがユーザ要求を満たすデータである場合、前記解析用入力データ及び前記解析用第１出力データから構成されるデータを前記学習データとして生成することを特徴とする計算機。
【請求項２】
請求項１に記載の計算機であって、
前記プロセッサは、前記システムから出力され、かつ、ユーザ要求を満たさない前記第２出力データが生成された前記第１出力データの生成元となる前記入力データを前記解析用入力データとして取得することを特徴とする計算機。
【請求項３】
請求項１に記載の計算機であって、
前記プロセッサは、
前記解析用入力データに含まれる要素データから前記解析用第１出力データを生成し、
前記解析用第１出力データから生成された前記解析用第２出力データがユーザ要求を満たすデータである場合、前記要素データ及び前記解析用第１出力データを前記学習データとして生成することを特徴とする計算機。
【請求項４】
請求項１に記載の計算機であって、
前記プロセッサは、前記モデル情報によって定義されるアルゴリズムとは異なるアルゴリズムに基づいて、前記解析用第１出力データを生成することを特徴とする計算機。
【請求項５】
請求項１に記載の計算機であって、
前記記憶装置は、評価用入力データを格納し、
前記プロセッサは、
前記学習データを用いた学習処理を実行することによって新規モデル情報を生成し、
前記新規モデル情報を用いて前記評価用入力データを処理することによって生成される前記第１出力データから前記第２出力データを生成し、
前記第２出力データを解析することによって、前記新規モデル情報の品質を評価する指標を算出し、
前記指標に基づいて、前記新規モデル情報を保存するか否かを判定することを特徴とする計算機。
【請求項６】
計算機が実行する、モデル情報を用いて入力データを処理することによって生成される第１出力データから第２出力データを生成するシステムに設定する、前記モデル情報を生成するための機械学習に用いる学習データの生成方法であって、
前記計算機は、プロセッサ、前記プロセッサに接続される記憶装置、及び前記プロセッサに接続されるインタフェースを有し、
前記学習データの生成方法は、
前記プロセッサが、解析用入力データを取得する第１のステップと、
前記プロセッサが、任意の生成条件に基づいて、前記解析用入力データから解析用第１出力データを生成する第２のステップと、
前記プロセッサが、前記解析用第１出力データから解析用第２出力データを生成する第３のステップと、
前記プロセッサが、前記解析用第２出力データを解析する第４のステップと、
前記プロセッサが、前記解析用第２出力データがユーザ要求を満たすデータである場合、前記解析用入力データ及び前記解析用第１出力データから構成されるデータを前記学習データとして生成する第５のステップと、を含むことを特徴とする学習データの生成方法。
【請求項７】
請求項６に記載の学習データの生成方法であって、
前記第１のステップは、前記プロセッサが、前記システムから出力され、かつ、ユーザ要求を満たさない前記第２出力データが生成された前記第１出力データの生成元となる前記入力データを前記解析用入力データとして取得するステップを含むことを特徴とする学習データの生成方法。
【請求項８】
請求項６に記載の学習データの生成方法であって、
前記第２のステップは、前記プロセッサが、前記解析用入力データに含まれる要素データから前記解析用第１出力データを生成するステップを含み、
前記第５のステップは、前記プロセッサが、前記解析用第１出力データから生成された前記解析用第２出力データがユーザ要求を満たすデータである場合、前記要素データ及び前記解析用第１出力データを前記学習データとして生成するステップを含むことを特徴とする学習データの生成方法。
【請求項９】
請求項６に記載の学習データの生成方法であって、
前記プロセッサは、前記モデル情報によって定義されるアルゴリズムとは異なるアルゴリズムに基づいて、前記解析用第１出力データを生成することを特徴とする学習データの生成方法。
【請求項１０】
請求項６に記載の学習データの生成方法であって、
前記記憶装置は、評価用入力データを格納し、
前記学習データの生成方法は、
前記プロセッサが、
前記学習データを用いた学習処理を実行することによって新規モデル情報を生成し、
前記新規モデル情報を用いて前記評価用入力データを処理することによって生成される前記第１出力データから前記第２出力データを生成し、
前記第２出力データを解析することによって、前記新規モデル情報の品質を評価する指標を算出し、
前記指標に基づいて、前記新規モデル情報を保存するか否かを判定することを特徴とする学習データの生成方法。
【請求項１１】
複数の計算機を備える計算機システムであって、
前記複数の計算機は、プロセッサ、前記プロセッサに接続される記憶装置、及び前記プロセッサに接続されるインタフェースを有し、
前記計算機システムは、前記少なくとも一つの計算機は、モデル情報を用いて入力データを処理することによって生成される第１出力データから第２出力データを生成する処理を実行する第１計算機と、前記モデル情報を生成するための機械学習に用いる学習データを生成する第２計算機とを含み、
前記第２計算機は、
解析用入力データを取得し、
任意の生成条件に基づいて、前記解析用入力データから解析用第１出力データを生成し、
前記解析用第１出力データから解析用第２出力データを生成し、
前記解析用第２出力データを解析し、
前記解析用第２出力データがユーザ要求を満たすデータである場合、前記解析用入力データ及び前記解析用第１出力データから構成されるデータを前記学習データとして生成することを特徴とする計算機システム。
【請求項１２】
請求項１１に記載の計算機システムであって、
前記第２計算機は、前記第１計算機から出力され、かつ、ユーザ要求を満たさない前記第２出力データが生成された前記第１出力データの生成元となる前記入力データを前記解析用入力データとして取得することを特徴とする計算機システム。
【請求項１３】
請求項１１に記載の計算機システムであって、
前記第２計算機は、
前記解析用入力データに含まれる要素データから前記解析用第１出力データを生成し、
前記解析用第１出力データから生成された前記解析用第２出力データがユーザ要求を満たすデータである場合、前記要素データ及び前記解析用第１出力データを前記学習データとして生成することを特徴とする計算機システム。
【請求項１４】
請求項１１に記載の計算機システムであって、
前記第２計算機は、前記モデル情報によって定義されるアルゴリズムとは異なるアルゴリズムに基づいて、前記解析用第１出力データを生成することを特徴とする計算機システム。
【請求項１５】
請求項１１に記載の計算機システムであって、
前記第２計算機は、評価用入力データを管理し、
前記第２計算機は、
前記学習データを用いた学習処理を実行することによって新規モデル情報を生成し、
前記評価用入力データを前記第１計算機に出力し、
前記第１計算機は、前記新規モデル情報に基づいて前記評価用入力データを処理することによって生成される前記第１出力データから前記第２出力データを生成して、前記第２計算機に出力し、
前記第２計算機は、
前記評価用入力データから生成された前記第２出力データを解析することによって、前記新規モデル情報の品質を評価する指標を算出し、
前記指標に基づいて、前記新規モデル情報を適用するか否かを判定することを特徴とする計算機システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機械学習に使用する学習データの生成技術に関する。
【背景技術】
【０００２】
機械学習技術の普及により、人の認識及び確認等が伴う作業の自動化が進んでいる。例えば、帳票の読取りは機械学習技術を用いた画像処理とＯＣＲを活用することで、自動化されている。
【０００３】
機械学習技術を用いた識別処理は、（１）事前に収集した学習データを用いた識別器（モデル情報）の学習と、（２）学習済みの識別器を用いて実施する、入力への識別の二つのフェーズに分けられる。識別精度は（１）の学習によって決まる。特に、学習データの数及び質は、識別精度に大きく影響を与える要素の１つである。
【０００４】
ここで、機械学習技術を用いた画層処理を例にして、学習データについて説明する。学習データは、例題データと、画像処理の正しい結果を示す教師データとから構成されるデータである。例えば、文字の識別処理における機械学習の例題データは、文字列を含む画像等であり、教師データは画像に含まれる文字列を構成する文字の文字コード等である。また、画像処理の場合、例題データは撮影やスキャンによって取得したままの画像などであり、教師データは例題データを処理して得たい理想状態に加工された画像等である。
【０００５】
また、学習データの質は、例題データの多様さ、教師データの正確性等である。
【０００６】
一般的に、機械学習には多くの学習データが必要である。教師データの作成は人手で行われることが多く、人手による教師データの作成には多くのコスト及び時間を要するため、教師データの作成の効率化が課題である。前述の課題を解決する技術として、特許文献１に記載のような技術が知られている。
【０００７】
特許文献１には、「画像認識用の判定器を生成する画像処理装置であって、第１の撮像画像に基づいて、第１の学習画像及び前記第１の学習画像の画像認識結果を示す第１の学習データを生成する生成手段と、前記第１の学習データを用いた学習を行うことにより、前記第１の学習データと、第２の学習画像及び前記第２の学習画像の画像認識結果を示す予め用意された第２の学習データと、の双方に基づく判定器を生成する学習手段と、を備えることを特徴とする画像処理装置」が記載されている。
【０００８】
特許文献１に記載の技術を用いることによって、学習データの生成に要するコスト及び時間を削減することができる。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１８−１４８３６７号公報
【非特許文献】
【００１０】
【非特許文献１】Ｃｈｒｉｓ Ｔｅｎｓｍｅｙｅｒ ａｎｄ Ｔｏｎｙ Ｍａｒｔｉｎｅｚ， “Ｄｏｃｕｍｅｎｔ Ｉｍａｇｅ Ｂｉｎａｒｉｚａｔｉｏｎ ｗｉｔｈ Ｆｕｌｌｙ Ｃｏｎｖｏｌｕｔｉｏｎａｌ Ｎｅｕｒａｌ Ｎｅｔｗｏｒｋｓ”， Ｐｒｏｃｅｅｄｉｎｇｓ ｏｆ ＩＣＤＡＲ ２０１７，ｐｐ．９９―１０４， ２０１７．
【発明の概要】
【発明が解決しようとする課題】
【００１１】
特許文献１に記載の技術では、識別器の処理結果である画像認識結果をそのまま、教師データとして利用している。
【００１２】
識別器の処理結果を利用する処理を含む画像処理の場合、特許文献1に記載の技術では、必ずしも処理精度の向上に貢献する学習データを生成できない。なぜならば、最終的な結果がユーザ要求を満たすか否かが考慮されていないためである。
【００１３】
そのため、最終的な結果がユーザ要求を満たさないような識別器の処理結果が教師データとして設定された場合、処理全体の精度は低下する。
【００１４】
本発明は、ユーザ要求を満たす最終的な結果が得られる識別器を実現する（モデル情報を生成する）ための学習データを効率的に生成する計算機、方法、及びシステムを提供する。
【課題を解決するための手段】
【００１５】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、モデル情報を用いて入力データを処理することによって生成される第１出力データから第２出力データを生成するシステムに設定する、前記モデル情報を生成するための機械学習に用いる学習データを生成する計算機であって、プロセッサ、前記プロセッサに接続される記憶装置、及び前記プロセッサに接続されるインタフェースを備え、前記プロセッサは、解析用入力データを取得し、任意の生成条件に基づいて、前記解析用入力データから解析用第１出力データを生成し、前記解析用第１出力データから解析用第２出力データを生成し、前記解析用第２出力データを解析し、前記解析用第２出力データがユーザ要求を満たすデータである場合、前記解析用入力データ及び前記解析用第１出力データから構成されるデータを前記学習データとして生成する。
【発明の効果】
【００１６】
本発明の一形態によれば、ユーザ要求を満たす最終的な結果（第２出力データ）が得られるモデル情報を生成するための学習データを効率的に生成することができる。上記以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００１７】
【図１】実施例１の計算機の構成例を示す図である。
【図２】実施例１の計算機が実行する処理の流れを説明する図である。
【図３】実施例１の計算機が候補教師データを生成する処理の流れを説明する図である。
【図４】実施例１の計算機が実行する処理の一例を説明するフローチャートである。
【図５】実施例２の計算機の構成例を示す図である。
【図６】実施例２のモデル管理情報のデータ構造の一例を示す図である。
【図７】実施例２の学習データ管理情報のデータ構造の一例を示す図である。
【図８】実施例２の画像処理結果情報のデータ構造の一例を示す図である。
【図９】実施例２の評価データ管理情報のデータ構造の一例を示す図である。
【図１０】実施例２の候補教師データ管理情報のデータ構造の一例を示す図である。
【図１１Ａ】実施例２の計算機が実行する処理を説明するフローチャートである。
【図１１Ｂ】実施例２の計算機が実行する処理を説明するフローチャートである。
【図１２】実施例２の計算機が候補教師データを生成する処理の流れを説明する図である。
【図１３】実施例２の計算機が生成する候補教師データの一例を示す図である。
【図１４】実施例２の計算機が表示する確認画面の一例を示す図である。
【図１５】実施例２の計算機が実行する設定処理を説明するフローチャートである。
【図１６】実施例２の計算機が実行するデグレード評価処理を説明するフローチャートである。
【発明を実施するための形態】
【００１８】
以下、本発明の実施例について、図面を参照して説明する。
【００１９】
なお、実施例を説明する図において、同一の機能を有する箇所には同一の符号を付し、その繰り返しの説明は省略する。なお、以下に説明する実施例は特許請求の範囲にかかる発明を限定するものではない。また実施例において説明されている各要素及びその組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００２０】
また、以下の説明では、情報の一例として「ｘｘｘテーブル」といった表現を用いる場合があるが、情報のデータ構造はどのようなものでもよい。すなわち、情報がデータ構造に依存しないことを示すために、「ｘｘｘテーブル」を「ｘｘｘ情報」と言うことができる。また、以下の説明において、各テーブルの構成は一例であり、一つのテーブルは、二つ以上のテーブルに分割されてもよいし、二つ以上のテーブルの全部又は一部が一つのテーブルであってもよい。
【実施例１】
【００２１】
実施例１では、本発明の概要について説明する。
【００２２】
図１は、実施例１の計算機の構成例を示す図である。図２は、実施例１の計算機１００が実行する処理の流れを説明する図である。図３は、実施例１の計算機１００が候補教師データを生成する処理の流れを説明する図である。
【００２３】
計算機１００は、プロセッサ１０１、主記憶装置１０２、副記憶装置１０３、入力装置１０４、及び出力装置１０５を有する。各ハードウェアは内部バス等を介して互いに接続される。
【００２４】
なお、図１では、各ハードウェアの数は一つであるが、二つ以上でもよい。また、計算機１００はネットワークに接続するためのネットワークインタフェースを有してもよい。接続するネットワークの種類は限定されない。
【００２５】
プロセッサ１０１は、主記憶装置１０２に格納されるプログラムを実行する。プロセッサ１０１がプログラムにしたがって処理を実行することによって、特定の機能を実現するモジュール（機能部）として動作する。以降の説明においてモジュールを主語に処理を説明する場合、プロセッサ１０１が当該モジュールを実現するプログラムを実行していることを示す。
【００２６】
主記憶装置１０２は、プロセッサ１０１が実行するプログラム及びプログラムが使用する情報を格納する。また、主記憶装置１０２は、プログラムが一時的に使用するワークエリアを含む。主記憶装置１０２は、例えば、メモリ等が考えられる。
【００２７】
主記憶装置１０２は、必要な一部のモジュールを実現できればよく、すべてのモジュールを実現するプログラム及び情報を格納している必要はない。
【００２８】
副記憶装置１０３は、データを永続的に格納する。副記憶装置１０３は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）及びＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等が考えられる。なお、主記憶装置１０２に格納されるプログラム及び情報は、副記憶装置１０３に格納されてもよい。この場合、プロセッサ１０１が、副記憶装置１０３からプログラム及び情報を読み出し、主記憶装置１０２にロードする。
【００２９】
入力装置１０４は、計算機１００に対してデータを入力するための装置である。例えば、入力装置１０４は、キーボード、マウス、及びタッチパネル等の計算機に対する操作を行うための機器を含む。また、入力装置１０４は、スキャナ、デジタルカメラ、及びスマートフォン等の画像データを取得するための機器も含む。
【００３０】
出力装置１０５は、データの入力画面及び処理結果等を出力する装置である。出力装置１０５は、タッチパネル及びディスプレイ等を含む。
【００３１】
ここで、主記憶装置１０２に格納されるプログラム及び情報について説明する。実施例１の主記憶装置１０２は、画像処理モジュール１１１、学習データ生成モジュール１１２、及び学習モジュール１１３を実現するプログラムを格納する。また、主記憶装置１０２は、モデル情報１２１及び学習データ管理情報１２２を格納する。
【００３２】
モデル情報１２１は、画像処理モジュール１１１が実行する処理に用いる情報である。モデル情報１２１は、例えば、ニューラルネットワーク又は決定木の構造等に関する情報が含まれる。なお、計算機１００に初期設定するモデル情報１２１は、ユーザが手動で設定してもよいし、学習処理を実行することによって生成されたものでもよい。
【００３３】
学習データ管理情報１２２は、学習データ２０５（図２参照）を管理するための情報である。学習データ２０５は、画像処理の対象となる例題データと、例題データを処理することによって得られる理想的なデータ（教師データ）とから構成される。
【００３４】
画像処理モジュール１１１は、画像データ２０１に対して画像処理を実行する。実施例１の画像処理は、第１データ処理及び第２データ処理を含む。第１データ処理では、モデル情報１２１に基づいて画像データ２０１を処理することによって処理データ２０２が生成される。第１データ処理は、例えば、非特許文献１に記載された処理が考えられる。第２データ処理では、処理データ２０２を処理する第２画像処理を実行し、出力データ２０３を生成する。
【００３５】
なお、前述の画像処理は一例であって、本発明は、モデル情報１２１に基づくデータ処理の結果を利用するデータ処理を少なくとも一つ含む画像処理に適用できる。例えば、第１データ処理と第２データ処理との間に、他のデータ処理が含まれる画像処理でもよい。
【００３６】
学習データ生成モジュール１１２は、解析用画像データ２０４を用いて学習データ２０５を生成し、生成された学習データ２０５を学習データ管理情報１２２に格納する。学習データ生成モジュール１１２は候補教師データ生成モジュール１１５を含む。
【００３７】
候補教師データ生成モジュール１１５は、解析用画像データ２０４に対して第３データ処理を実行して、学習データ２０５を構成する教師データの候補となる候補教師データ３０１を生成する。また、候補教師データ生成モジュール１１５は、候補教師データ３０１を処理する第２画像処理を実行し、解析用出力データ３０２（図３参照）を生成する。
【００３８】
第３データ処理は、第１データ処理とは異なるアルゴリズムの処理である。第３データ処理ではモデル情報１２１は用いられない。処理データ２０２及び候補教師データ３０１は同じデータ形式のデータである。
【００３９】
学習モジュール１１３は、学習データ管理情報１２２に格納される学習データ２０５を用いて、モデル情報１２１を生成するための学習処理を実行する。本発明は、学習方法のアルゴリズムに限定されない。
【００４０】
なお、計算機１００が備える機能及び情報は、ネットワークを介して又は直接接続される複数の計算機に分散させてもよい。例えば、画像処理モジュール１１１を有する計算機と、学習データ生成モジュール１１２を有する計算機と、学習モジュール１１３を有する計算機とから構成される計算機システムでもよい。
【００４１】
なお、本発明は、扱うデータの種別に限定されない。例えば、テキストデータ、ＣＳＶ形式のデータ等でも同様の効果を奏する。
【００４２】
ここで、実施例１の目的について説明する。
【００４３】
図２に示すような画像処理に用いるモデル情報１２１を生成するための教師データは、ユーザ要求を満たす出力データ２０３が得られるデータである必要がある。本発明の目的は、出力データ２０３がユーザ要求を満たすことを保証する教師データを生成することである。
【００４４】
なお、ユーザ要求としては、出力される画像の鮮明さ、並びに、算出される予測結果又は認識結果の正確性及び精度等である。
【００４５】
上記目的を達成するために、計算機１００は、候補教師データ３０１を生成し、候補教師データ３０１から得られる解析用出力データ３０２の解析結果を利用する。解析用出力データ３０２がユーザ要求を満たす場合、計算機１００は、候補教師データ３０１が適切な教師データであると判定する。すなわち、最終的に出力されるデータがユーザ要求を満たす場合、計算機１００は、候補教師データ３０１が適切な教師データであると判定する。
【００４６】
図４は、実施例１の計算機１００が実行する処理の一例を説明するフローチャートである。
【００４７】
計算機１００は、解析用画像データ２０４の入力を受け付ける（ステップＳ４０１）。解析用画像データ２０４は、入力装置１０４から取得したデータでもよいし、副記憶装置１０３又は外部の記憶装置から取得したデータでもよい。なお、入力される解析用画像データ２０４は、一つでもよし、また、複数でもよい。複数の解析用画像データ２０４が入力された場合、一つの解析用画像データ２０４に対して、ステップＳ４０２からステップＳ４０７までの処理が実行される。
【００４８】
次に、計算機１００は、解析用画像データ２０４から候補教師データ３０１を生成し（ステップＳ４０２）、候補教師データ３０１から解析用出力データ３０２を生成する（ステップＳ４０３）。
【００４９】
具体的には、学習データ生成モジュール１１２は、画像データ２０１を用いて第３データ処理を実行して候補教師データ３０１を生成し、候補教師データ３０１に対して第２データ処理を実行して解析用出力データ３０２を生成する。
【００５０】
次に、計算機１００は、候補教師データ３０１を教師データとして採用できるか否かを判定する（ステップＳ４０４）。
【００５１】
具体的には、学習データ生成モジュール１１２が、解析用出力データ３０２に関する正確性、精度、及び品質等を解析し、解析結果に基づいて解析用出力データ３０２がユーザ要求を満たすか否かを判定する。解析用出力データ３０２がユーザ要求を満たす場合、学習データ生成モジュール１１２は、候補教師データ３０１を教師データとして採用できると判定する。
【００５２】
候補教師データ３０１を教師データとして採用できないと判定された場合、計算機１００は処理を終了する。
【００５３】
候補教師データ３０１を教師データとして採用できると判定された場合、計算機１００は学習データ２０５を生成する（ステップＳ４０５）。
【００５４】
具体的には、学習データ生成モジュール１１２が、画像データ２０１及び候補教師データ３０１から構成される学習データ２０５を生成する。学習データ生成モジュール１１２は、学習データ２０５を学習データ管理情報１２２に格納する。
【００５５】
次に、計算機１００は、学習処理を実行し（ステップＳ４０６）、その後、処理を終了する。
【００５６】
具体的には、学習モジュール１１３が、学習データ管理情報１２２に格納される学習データ２０５を用いた学習処理を実行し、モデル情報１２１を更新する。なお、学習データ管理情報１２２に格納される学習データ２０５の数が閾値より大きい場合、計算機１００は学習処理を実行するようにしてもよい。また、学習データ生成モジュール１１２が生成した学習データ２０５の数が閾値より大きい場合、計算機１００は学習処理を実行するようにしてもよい。
【００５７】
なお、ステップＳ４０３からステップＳ４０６までの処理が実行された後に、ステップＳ４０２の処理が実行されてもよい。
【００５８】
なお、画像データ２０１の一部から候補教師データ３０１が生成されてもよい。この場合、画像データ２０１の一部と候補教師データ３０１から構成されるデータが学習データ２０５として生成される。
【００５９】
実施例１によれば、計算機１００は、モデル情報１２１に基づくデータ処理の出力を用いた処理において、最終的な処理結果がユーザ要求を満たすモデル情報１２１を生成するための学習データ２０５を生成できる。
【実施例２】
【００６０】
実施例２では、具体的な画像処理を示して、計算機１００が実行する処理について説明する。以下、実施例１との差異を中心に実施例２について説明する。
【００６１】
図５は、実施例２の計算機１００の構成例を示す図である。
【００６２】
実施例２の計算機１００のハードウェア構成は実施例１と同一である。実施例２では、計算機１００のソフトウェア構成が一部異なる。
【００６３】
実施例２の計算機は、画像処理として文字認識処理を実行する。文字認識処理では、画像データ２０１が二値画像データに変換され、二値画像データに対して文字認識が行われる。実施例２の画像処理では、文字列の認識結果の正確性が、出力データ２０３に対するユーザ要求として設定される。すなわち、正しい文字列が抽出できた場合、出力データ２０３はユーザ要求を満たすものと判定され、誤った文字列又は認識できない文字列が抽出された場合、出力データ２０３はユーザ要求を満たさないものと判定される。
【００６４】
実施例２の計算機１００の主記憶装置１０２は、デグレード評価モジュール５１１及び学習データ設定モジュール５１２を実現するプログラムを格納する点が異なる。また、実施例２の計算機１００の主記憶装置１０２は、モデル管理情報５２１、画像処理結果情報５２２、評価データ管理情報５２３、及び候補教師データ管理情報５２４を格納する点が異なる。
【００６５】
実施例２では、文字列を含む画像データ２０１及び解析用画像データ２０４が入力されるものとする。
【００６６】
画像処理モジュール１１１は、画像データ２０１から二値画像データを処理データ２０２として生成する第１データ処理を実行し、二値画像データを用いた文字認識処理を行って、認識結果を出力データ２０３として生成する第２データ処理を実行する。
【００６７】
候補教師データ生成モジュール１１５は、解析用画像データ２０４から二値画像データを候補教師データ３０１として生成する第３データ処理を実行し、候補教師データ３０１を用いた文字認識処理を行って、認識結果を解析用出力データ３０２として生成する第２データ処理を実行する。
【００６８】
学習モジュール１１３は、画像データ２０１から二値画像データを生成するためのモデル情報１２１を生成するための学習処理を実行する。
【００６９】
デグレード評価モジュール５１１は、学習処理によって生成されたモデル情報１２１のデグレードを評価する。
【００７０】
学習データ設定モジュール５１２は、学習データ生成モジュール１１２が学習データ２０５を生成できない場合、ユーザ入力に基づいて学習データ２０５を生成する。
【００７１】
モデル管理情報５２１は、学習処理によって生成されたモデル情報１２１を管理するための情報である。モデル管理情報５２１は、下記に生成されたモデル情報１２１が履歴として格納される。モデル管理情報５２１のデータ構造の詳細は図６を用いて説明する。
【００７２】
学習データ管理情報１２２のデータ構造の詳細は図７を用いて説明する。
【００７３】
画像処理結果情報５２２は、画像処理モジュール１１１が実行した処理の結果を管理するための情報である。画像処理結果情報５２２のデータ構造の詳細は図８を用いて説明する。
【００７４】
評価データ管理情報５２３は、デグレード評価モジュール５１１が使用する評価データを管理するための情報である。評価データ管理情報５２３のデータ構造の詳細は図９を用いて説明する。評価データは、学習データ２０５と同一データ構造である。
【００７５】
候補教師データ管理情報５２４は、候補教師データ３０１を管理するための情報である。候補教師データ管理情報５２４のデータ構造の詳細は図１０を用いて説明する。
【００７６】
図６は、実施例２のモデル管理情報５２１のデータ構造の一例を示す図である。
【００７７】
モデル管理情報５２１は、モデル情報ＩＤ６０１、モデル情報６０２、及び日時６０３から構成されるエントリを含む。一つのエントリが一つのモデル情報１２１に対応する。なお、エントリに含まれるフィールドは一例であって、前述した以外のフィールドを含んでもよい。
【００７８】
モデル情報ＩＤ６０１は、モデル情報１２１を一意に識別するための識別情報を格納するフィールドである。
【００７９】
モデル情報６０２は、モデル情報１２１を格納するフィールドである。なお、モデル情報６０２には、副記憶装置１０３等に格納されるモデル情報１２１を読み出すためのリンク及びパス等が格納されてもよい。
【００８０】
日時６０３は、モデル情報１２１を生成するための岳種処理が実行された日時を格納するフィールドである。日時６０３は、モデル情報１２１の世代を特定するための情報として用いられる。なお、日時６０３の代わりに、使用した学習データ２０５のセット、及び作成者等を格納するフィールドを設けてもよい。また、日時６０３とともに、前述のようなフィールドを設けてもよい。
【００８１】
図７は、実施例２の学習データ管理情報１２２のデータ構造の一例を示す図である。
【００８２】
学習データ管理情報１２２は、学習データＩＤ７０１、画像データ７０２、及び二値画像データ７０３から構成されるエントリを含む。一つのエントリが一つの学習データ２０５に対応する。なお、エントリに含まれるフィールドは一例であって、前述した以外のフィールドを含んでもよい。
【００８３】
学習データＩＤ７０１は、学習データ２０５を一意に識別するための識別情報を格納するフィールドである。
【００８４】
画像データ７０２は、学習データ２０５を構成する例題データである画像データを格納するフィールドである。画像データ７０２には、副記憶装置１０３等に格納される画像データを読み出すためのリンク及びパス等が格納されてもよい。
【００８５】
二値画像データ７０３は、教師データである二値画像データを格納するフィールドである。二値画像データ７０３には、副記憶装置１０３等に格納される二値画像データを読み出すためのリンク及びパス等が格納されてもよい。
【００８６】
なお、画像データ７０２が「ｔｒａｉｎ．ｐｎｇ」である学習データ２０５は、予め設定されている学習データであり、画像データ７０２が「ｒｅｔｒａｉｎ．ｐｎｇ」である学習データ２０５は、学習データ生成モジュール１１２又は学習データ設定モジュール５１２によって生成された学習データ２０５を表す。
【００８７】
図８は、実施例２の画像処理結果情報５２２のデータ構造の一例を示す図である。
【００８８】
画像処理結果情報５２２は、画像データＩＤ８０１、画像データ８０２、二値画像データ８０３、及び文字認識データ８０４から構成されるエントリを含む。一つの画像データ２０１に対して一つのエントリが存在する。なお、エントリに含まれるフィールドは一例であって、前述した以外のフィールドを含んでもよい。
【００８９】
画像データＩＤ８０１は、解析用画像データ２０４を一意に識別するための識別情報を格納するフィールドである。
【００９０】
画像データ８０２は、解析用画像データ２０４を格納するフィールドである。画像データ８０２には、副記憶装置１０３等に格納される解析用画像データ２０４を読み出すためのリンク及びパス等が格納されてもよい。
【００９１】
二値画像データ８０３は、解析用画像データ２０４に対して第１データ処理を実行することによって生成された二値画像データ（処理データ２０２）を格納するフィールドである。二値画像データ８０３には、副記憶装置１０３等に格納される二値画像データを読み出すためのリンク及びパス等が格納されてもよい。
【００９２】
文字認識データ８０４は、二値画像データに対して第２データ処理を実行することによって生成された文字認識データ（出力データ２０３）を格納するフィールドである。文字認識データは文字認識の結果を含むデータである。文字認識データ８０４には、副記憶装置１０３等に格納される文字認識データを読み出すためのリンク及びパス等が格納されてもよい。
【００９３】
図９は、実施例２の評価データ管理情報５２３のデータ構造の一例を示す図である。
【００９４】
評価データ管理情報５２３は、評価データＩＤ９０１、画像データ９０２、及び二値画像データ９０３から構成されるエントリを含む。一つのエントリが一つの評価データに対応する。なお、エントリに含まれるフィールドは一例であって、前述した以外のフィールドを含んでもよい。
【００９５】
評価データＩＤ９０１は、評価データを一意に識別するための識別情報を格納するフィールドである。
【００９６】
画像データ９０２は、評価用の画像データ２０１を格納するフィールドである。画像データ９０２には、副記憶装置１０３等に格納される評価用の画像データを読み出すためのリンク及びパス等が格納されてもよい。
【００９７】
二値画像データ９０３は、評価用の教師データを格納するフィールドである。二値画像データ９０３には、副記憶装置１０３等に格納される評価用の二値画像データを読み出すためのリンク及びパス等が格納されてもよい。
【００９８】
図１０は、実施例２の候補教師データ管理情報５２４のデータ構造の一例を示す図である。
【００９９】
候補教師データ管理情報５２４は、画像データＩＤ１００１、文字列ＩＤ１００２、文字列１００３、座標１００４、正解文字列１００５、解析用二値画像データ１００６、及び解析用文字列１００７から構成されるエントリを含む。一つの画像データ２０１に対して一つのエントリが存在する。
【０１００】
画像データＩＤ１００１は、解析用画像データ２０４を一意に識別するための識別情報を格納するフィールドである。
【０１０１】
文字列ＩＤ１００２は、画像処理によって抽出された文字列の識別情報を格納するフィールドである。一つのエントリには、抽出された文字列の数だけ行が存在し、各行は文字列ＩＤ１００２によって識別される。
【０１０２】
文字列１００３は、画像処理によって抽出された文字列を格納するフィールドである。なお、認識ができない文字列が抽出された場合、文字列１００３は、空欄となる。
【０１０３】
座標１００４は、画像上の文字列の位置を示す座標を格納するフィールドである。例えば、矩形領域の左上の座標及び右下の座標の組が、座標１００４に格納される。
【０１０４】
正解文字列１００５は、抽出すべき文字列を格納するフィールドである。
【０１０５】
解析用二値画像データ１００６は、候補教師データ３０１として生成された二値画像データを格納するフィールドである。
【０１０６】
解析用文字列１００７は、候補教師データ３０１として生成された二値画像データに対する文字認識の結果を格納するフィールドである。
【０１０７】
座標１００４及び正解文字列１００５は、解析用画像データ２０４のメタデータに含めることもできるし、ユーザが画像処理結果を参照して、手動で設定することもできる。
【０１０８】
図１１Ａ及び図１１Ｂは、実施例２の計算機１００が実行する処理を説明するフローチャートである。図１２は、実施例２の計算機１００が候補教師データを生成する処理の流れを説明する図である。図１３は、実施例２の計算機１００が生成する候補教師データの一例を示す図である。図１４は、実施例２の計算機１００が表示する確認画面の一例を示す図である。
【０１０９】
計算機１００は、解析用画像データ２０４を受け付ける（ステップＳ４０１）。なお、解析用画像データ２０４のメタデータは解析領域の座標及び正解文字列の組を一つ以上含むものとする。なお、入力される解析用画像データ２０４は、一つでもよし、また、複数でもよい。複数の解析用画像データ２０４が入力された場合、一つの解析用画像データ２０４に対して、ステップＳ４０２からステップＳ４０６、ステップＳ１１０１からステップＳ１１１０までの処理が実行される。
【０１１０】
次に、計算機１００の画像処理モジュール１１１は、解析用画像データ２０４に対して第１データ処理を実行することによって二値画像データを処理データ２０２として生成し（ステップＳ１１０１）、二値画像データに対して第２データ処理を実行することによって文字認識データを出力データ２０３として生成する（ステップＳ１１０２）。
【０１１１】
次に、計算機１００の画像処理モジュール１１１は、画像処理結果情報５２２を更新する（ステップＳ１１０３）。
【０１１２】
具体的には、画像処理モジュール１１１は、画像処理結果情報５２２にエントリを追加し、追加されたエントリの画像データＩＤ８０１に解析用画像データ２０４の識別情報を格納する。また、画像処理モジュール１１１は、追加されたエントリの画像データ８０２に解析用画像データ２０４を格納し、二値画像データ８０３に処理データ２０２を格納し、文字認識データ８０４に出力データ２０３を格納する。
【０１１３】
次に、計算機１００の学習データ生成モジュール１１２は、解析領域を特定する（ステップＳ１１０４）。具体的には、以下のような処理が実行される。
【０１１４】
学習データ生成モジュール１１２は、候補教師データ管理情報５２４にエントリを追加し、追加されたエントリの画像データＩＤ１００１に解析用画像データ２０４の識別情報を格納する。
【０１１５】
学習データ生成モジュール１１２は、出力データ２０３である文字認識データに基づいて、追加されたエントリに文字認識が行われた領域の数だけ行を生成する。一つの行が一つの解析領域として特定される。
【０１１６】
学習データ生成モジュール１１２は、文字認識データに基づいて、生成された各行の文字列ＩＤ１１０２、文字列１００３、及び座標１００４に値を格納する。
【０１１７】
学習データ生成モジュール１１２は、解析用画像データ２０４のメタデータを参照し、各行の正解文字列１００５に値を格納する。なお、手動で設定する場合には、学習データ生成モジュール１１２は、認識結果を表示する画面を提示し、文字列の入力を受け付ける。以上がステップＳ１１０１の処理の説明である。
【０１１８】
次に、計算機１００の学習データ生成モジュール１１２は、特定された解析領域の中からターゲット解析領域を選択する（ステップＳ１１０５）。
【０１１９】
次に、計算機１００の学習データ生成モジュール１１２は、第３データ処理を調整するためのパラメータを初期化する（ステップＳ１１０６）。
【０１２０】
例えば、輝度に対する閾値処理によって画像を二値化する場合、閾値ｔを０に設定する。なお、閾値ｔは０から２５５の範囲で変更することができる。なお、本発明は、二値画像データの生成方法に限定されない。
【０１２１】
次に、計算機１００の学習データ生成モジュール１１２は、ターゲット解析領域に含まれる画像に対して第３データ処理を実行することによって、二値画像データを候補教師データ３０１として生成する（ステップＳ４０２）。
【０１２２】
例えば、図１２に示すような、文字列「金額」を含む解析領域の画像データ１２００が入力された場合、候補教師データ生成モジュール１１５は、図１２に示すような二値画像データを候補教師データ３０１として生成する。
【０１２３】
なお、閾値ｔを調整することによって、図１３に示すような様々な候補教師データ３０１が生成される。候補教師データ３０１−１は閾値ｔが０の場合に生成される二値画像データである。候補教師データ３０１−２は閾値ｔが３２の場合に生成される二値画像データである。候補教師データ３０１−３は閾値ｔが６４の場合に生成される二値画像データである。候補教師データ３０１−４は閾値ｔが９６の場合に生成される二値画像データである。候補教師データ３０１−５は閾値ｔが１２８の場合に生成される二値画像データである。候補教師データ３０１−６は閾値ｔが１９２の場合に生成される二値画像データである。候補教師データ３０１−７は閾値ｔが２５６の場合に生成される二値画像データである。
【０１２４】
このとき、学習データ生成モジュール１１２は、ステップＳ１１０１において候補教師データ管理情報５２４に追加されたエントリを参照し、ターゲット解析領域に対応する行の解析用二値画像データ１００６に、生成された候補教師データ３０１を格納する。
【０１２５】
次に、計算機１００の学習データ生成モジュール１１２は、候補教師データ３０１に対して第２データ処理を実行することによって、文字認識データを解析用出力データ３０２として生成する（ステップＳ４０３）。
【０１２６】
例えば、図１２に示すような、文字列「金額」を含む解析領域の画像データ１２００が入力された場合、候補教師データ生成モジュール１１５は、図１２に示すような二値画像データを候補教師データ３０１として生成する。
【０１２７】
このとき、学習データ生成モジュール１１２は、ステップＳ１１０１において候補教師データ管理情報５２４に追加されたエントリを参照し、ターゲット解析領域に対応する行の解析用文字列１００７に、生成された解析用出力データ３０２を格納する。
【０１２８】
次に、計算機１００の学習データ生成モジュール１１２は、候補教師データ３０１を教師データとして採用できるか否かを判定する（ステップＳ４０４）。
【０１２９】
具体的には、学習データ生成モジュール１１２は、ターゲット解析領域に対応する行の正解文字列１００５の文字列と解析用文字列１００７の文字列とが一致するか否かを判定する。正解文字列１００５の文字列と解析用文字列１００７の文字列とが一致する場合、学習データ生成モジュール１１２は、候補教師データ３０１を教師データとして採用できると判定する。
【０１３０】
例えば、候補教師データ３０１−４及び候補教師データ３０１−５等が教師データとして採用できると判定される。
【０１３１】
候補教師データ３０１を教師データとして採用できると判定された場合、計算機１００の学習データ生成モジュール１１２は学習データ２０５を生成する（ステップＳ４０５）。その後、計算機１００はステップＳ１１１０に進む。
【０１３２】
具体的には、学習データ生成モジュール１１２が、ターゲット解析領域の画像及び候補教師データ３０１から構成される学習データ２０５を生成する。学習データ生成モジュール１１２は、学習データ管理情報１２３にエントリを追加し、追加されたエントリの学習データＩＤ７０１に識別情報を格納する。また、学習データ生成モジュール１１２は、追加されたエントリの画像データ７０２にターゲット解析領域の画像を格納し、二値画像データ７０３に候補教師データ３０１を格納する。
【０１３３】
候補教師データ３０１を教師データとして採用できないと判定された場合、計算機１００の学習データ生成モジュール１１２は、パラメータを変更できるか否かを判定する（ステップＳ１１０７）。
【０１３４】
例えば、学習データ生成モジュール１１２は、閾値ｔが２５５より小さいか否かを判定する。閾値ｔが２５５より小さい場合、学習データ生成モジュール１１２は、パラメータを変更できると判定する。
【０１３５】
パラメータを変更できると判定された場合、計算機１００の学習データ生成モジュール１１２は、パラメータを更新し（ステップＳ１１０８）、その後、ステップＳ４０２に戻る。
【０１３６】
パラメータを変更できないと判定された場合、計算機１００は設定処理を実行し（ステップＳ１１０９）、その後、ステップＳ１１１０に進む。
【０１３７】
具体的には、学習データ生成モジュール１１２は、学習データ設定モジュール５１２に設定処理の実行を指示し、待ち状態に移行する。学習データ生成モジュール１１２は、学習データ設定モジュール５１２から完了通知を受け付けた場合、ステップＳ１１１０に進む。なお、設定処理の詳細は図１５を用いて説明する。
【０１３８】
ステップＳ１１１０では、計算機１００の学習データ生成モジュール１１２は、全ての解析領域について処理が完了したか否かを判定する（ステップＳ１１１０）。
【０１３９】
全ての解析領域について処理が完了していないと判定された場合、計算機１００の学習データ生成モジュール１１２は、ステップＳ１１０５に戻る。
【０１４０】
全ての解析領域について処理が完了したと判定された場合、計算機１００の学習モジュール１１３は、学習処理を実行する（ステップＳ４０６）。
【０１４１】
このとき、学習モジュール１１３は、モデル管理情報５２１にエントリを追加し、追加されたエントリのモデル情報ＩＤ６０１に識別情報を格納する。また、学習モジュール１１３は、追加されたエントリのモデル情報６０２に学習処理によって生成されたモデル情報１２１を格納し、日時６０３に学習処理の開始時刻等を格納する。
【０１４２】
次に、計算機１００のデグレード評価モジュール５１１は、評価データ管理情報５２３に格納される評価データを用いて、生成されたモデル情報１２１に対するデグレード評価処理を実行する（ステップＳ１１１１）。その後、計算機１００は処理を終了する。
【０１４３】
具体的には、学習データ生成モジュール１１２は、デグレード評価モジュール５１１にデグレード評価処理の実行を指示し、待ち状態に移行する。学習データ生成モジュール１１２は、デグレード評価モジュール５１１から完了通知を受け付けた場合、処理を終了する。なお、デグレード評価処理の詳細は図１６を用いて説明する。
【０１４４】
（バリエーション１）図１１Ａ及び図１１Ｂで説明した処理では、一つの解析領域に対して一つの学習データ２０５が生成されていたが、これに限定されない。
【０１４５】
例えば、学習データ生成モジュール１１２は、解析用画像データ２０４と、各解析領域の二値画像データを含むデータとから構成される学習データ２０５を生成してもよい。この場合、ステップＳ１１１０の処理の後にステップＳ４０５の処理が実行される。
【０１４６】
（バリエーション２）図１１Ａ及び図１１Ｂで説明した処理では、全ての解析処理に対して学習データ２０５が生成されていたが、これに限定されない。
【０１４７】
例えば、学習データ生成モジュール１１２は、文字列１１０３及び正解文字列１００５が一致しない解析領域のみを処理の対象としてもよい。すなわち、画像処理モジュール１１１が認識できなかった解析領域のみを処理の対象としてもよい。誤った文字認識を含む解析領域又は認識不明な解析領域から学習データ２０５を生成することによって、学習するデータ量を削減しつつ、精度の向上が可能な学習処理を実現できる。
【０１４８】
（バリエーション３）計算機１００は、ステップＳ１１１０の判定結果がＹＥＳの場合、生成された学習データ２０５を提示するための確認画面１４００を表示してもよい。ここで、確認画面１４００について説明する。
【０１４９】
確認画面１４００は、例題データ表示欄１４０１、教師データ表示欄１４０２、描画モード切り替えボタン１４０３、カーソルサイズ調整バー１４０４、データサイズ調整バー１４０５、前ボタン１４０６、次ボタン１４０７、及び削除ボタン１４０８を含む。
【０１５０】
例題データ表示欄１４０１は、学習データ２０５を構成する例題データ（解析用画像データ２０４）を表示する欄である。
【０１５１】
教師データ表示欄１４０２は、学習データ２０５を構成する教師データ（候補教師データ３０１）を表示する欄である。図１４に示す教師データ表示欄１５０２には、解析用画像データ２０４に含まれる各解析領域から生成された二値画像データ（候補教師データ３０１）が表示される。
【０１５２】
教師データ表示欄１４０２にはカーソル１４１０が表示される。ユーザは、カーソル１４１０を操作して二値画像データを修正する領域を選択し、当該領域の二値画像データを修正する。学習データ生成モジュール１１２は、ユーザの修正内容を受け付けた場合、ユーザが指定した領域に含まれる解析領域を特定し、当該解析領域に対応する行の解析用二値画像データ１００６を更新する。
【０１５３】
描画モード切り替えボタン１４０３は、教師データの描画モードを切り替えるためのボタンである。例えば、二値画像データの白及び黒を切り替える操作が考えられる。
【０１５４】
カーソルサイズ調整バー１４０４は、カーソル１４１０の大きさを調整するためのバーである。
【０１５５】
データサイズ調整バー１４０５は、例題データ及び教師データのサイズを拡大又は縮小するためのバーである。
【０１５６】
前ボタン１４０６は、一つ前の学習データ２０５を表示するためのボタンである。次ボタン１４０７は、一つ後の学習データ２０５を表示するためのボタンである。前ボタン１４０６及び次ボタン１４０７のいずれかが操作された場合、例題データ表示欄１４０１及び教師データ表示欄１４０２に表示される画像が切り替わる。
【０１５７】
削除ボタン１４０８は、学習データ２０５を削除するためのボタンである。学習データ生成モジュール１１２は、削除ボタン１４０８が操作された場合、学習データ管理情報１２３から確認画面１４００に表示される学習データ２０５を削除する。
【０１５８】
なお、確認画面１４００は表示画面の一例であり、これに限定されない。例えば、例題データ及び教師データの差異を見やすくするために、例題データ及び教師データをオーバレイ表示してもよい。
【０１５９】
図１５は、実施例２の計算機１００が実行する設定処理を説明するフローチャートである。
【０１６０】
学習データ設定モジュール５１２は、ユーザによる学習データ２０５の設定を受け付けるためのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を提供する（ステップＳ１５０１）。例えば、図１４に示すような画面を入力装置１０４に表示する。なお、教師データの生成に要する工数を削減するために、教師データ表示欄１４０２には、特定の領域の二値画像データが含む予め設定された二値画像データを表示してもよい。
【０１６１】
学習データ設定モジュール５１２は、ＡＰＩを介して、学習データの設定指示を受信したか否かを判定する（ステップＳ１５０２）。
【０１６２】
学習データの設定指示を受信していないと判定された場合、学習データ設定モジュール５１２は設定処理を終了する。このとき、学習データ設定モジュール５１２は、学習データ生成モジュール１１２に完了通知を送信する。
【０１６３】
学習データの設定指示を受信したと判定された場合、学習データ設定モジュール５１２は、学習データ管理情報を更新し（ステップＳ１５０３）、その後、設定処理を終了する。このとき、学習データ設定モジュール５１２は、学習データ生成モジュール１１２に完了通知を送信する。
【０１６４】
図１６は、実施例２の計算機１００が実行するデグレード評価処理を説明するフローチャートである。
【０１６５】
デグレード評価モジュール５１１は、学習処理によって生成されたモデル情報１２１を学習モジュール１１３に設定する（ステップＳ１６０１）。
【０１６６】
次に、評価データ管理情報５２３に格納される評価データ、及び、学習データ生成モジュール１１２によって生成された学習データ２０５を画像処理モジュール１１１に入力する（ステップＳ１６０２）。
【０１６７】
次に、デグレード評価モジュール５１１は、画像処理モジュール１１１から出力データ２０３を取得する（ステップＳ１６０３）。
【０１６８】
次に、デグレード評価モジュール５１１は、出力データ２０３等を用いて、モデル情報１２１の評価指標を算出する（ステップＳ１６０４）。例えば、二値画像データに対する文字認識の精度を示す値が評価指標として算出される。なお、本発明は、算出される評価指標の種別及び数に限定されない。
【０１６９】
次に、デグレード評価モジュール５１１は、評価指標に基づいて、基準性能を満たすか否かを判定する（ステップＳ１６０５）。例えば、各画像データの白及び黒の画素の再現率及び適合率の平均値（評価指標）が閾値より大きい場合、デグレード評価モジュール５１１は基準性能を満たすと判定する。なお、本発明は、基準性能の設定に限定されない。
【０１７０】
基準性能を満たさないと判定された場合、デグレード評価モジュール５１１は、現在のモデル情報１２１を画像処理モジュール１１１に設定し（ステップＳ１６０６）、その後、デグレード評価処理を終了する。この場合、画像処理モジュール１１１が使用するモデル情報１２１は更新されない。
【０１７１】
基準性能を満たすと判定された場合、デグレード評価モジュール５１１はデグレード評価処理を終了する。この場合、画像処理モジュール１１１が使用するモデル情報１２１は、新たに生成されたモデル情報１２１に置き換えられる。
【０１７２】
実施例２によれば、計算機１００は、最終的な処理結果がユーザ要求を満たすモデル情報１２１を生成するための学習データ２０５を生成できる。また、ユーザ要求を満たさない処理結果の生成元のデータから学習データ２０５を生成することによって、効率的な学習処理を実現できる。
【０１７３】
上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
【０１７４】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、光ディスク、光磁気ディスク、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどが用いられる。
【０１７５】
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、Ｃ／Ｃ＋＋、ｐｅｒｌ、Ｓｈｅｌｌ、ＰＨＰ、Ｐｙｔｈｏｎ、Ｊａｖａ（登録商標）等の広範囲のプログラム又はスクリプト言語で実装できる。
【０１７６】
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はＣＤ−ＲＷ、ＣＤ−Ｒ等の記憶媒体に格納し、コンピュータが備えるプロセッサが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。
【０１７７】
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。
【符号の説明】
【０１７８】
１００  計算機
１０１  プロセッサ
１０２  主記憶装置
１０３  副記憶装置
１０４  入力装置
１０５  出力装置
１１１  画像処理モジュール
１１２  学習データ生成モジュール
１１３  学習モジュール
１１５  候補教師データ生成モジュール
１２１  モデル情報
１２２  学習データ管理情報
１２３  学習データ管理情報
２０１  画像データ
２０２  処理データ
２０３  出力データ
２０４  解析用画像データ
２０５  学習データ
３０１  候補教師データ
３０２  解析用出力データ
５１１  デグレード評価モジュール
５１２  学習データ設定モジュール
５２１  モデル管理情報
５２２  画像処理結果情報
５２３  評価データ管理情報
５２４  候補教師データ管理情報
１４００  確認画面
【図１】
2020126328.tif 000003
【図２】
2020126328.tif 000004
【図３】
2020126328.tif 000005
【図４】
2020126328.tif 000006
【図５】
2020126328.tif 000007
【図６】
2020126328.tif 000008
【図７】
2020126328.tif 000009
【図８】
2020126328.tif 000010
【図９】
2020126328.tif 000011
【図１０】
2020126328.tif 000012
【図１１Ａ】
2020126328.tif 000013
【図１１Ｂ】
2020126328.tif 000014
【図１２】
2020126328.tif 000015
【図１３】
2020126328.tif 000016
【図１４】
2020126328.tif 000017
【図１５】
2020126328.tif 000018
【図１６】
2020126328.tif 000019