(57)【要約】【課題】ディープラーニングアルゴリズムを用いた文字認識方法に関し、誤認識の可能性を確実に抑制して作業効率の大幅な向上を可能とする。【解決手段】ニューラルネットワークによるディープラーニングアルゴリズムを用いて、認識すべき文字として複数の認識対象カテゴリーを設定し、その認識対象カテゴリーに属する文字画像群を含む学習データを用いて第１の学習を行い、認識対象カテゴリーに対応する誤認識文字画像に基づき、認識結果からリジェクトすべき複数の拡張カテゴリーに属する文字画像群を含む拡張学習データを用いて第２の学習を行い、第１及び第２の学習により得られたパラメータを用いて入力文字画像を認識し、認識対象カテゴリーと拡張カテゴリーを含む複数のカテゴリーのいずれかを出力する。【選択図】図１
2019057087.tif 000002
【特許請求の範囲】
【請求項１】
ニューラルネットワークによるディープラーニングアルゴリズムを用いて、入力文字画像を認識する文字認識方法であって、
認識すべき文字として複数の認識対象カテゴリーを設定し、前記複数の認識対象カテゴリーに属する文字画像群を含む学習データを用いて前記ディープラーニングアルゴリズムに基づく第１の学習を行い、
前記複数の認識対象カテゴリーに対応する誤認識文字画像に基づき、前記複数の認識対象カテゴリーの各々の認識結果からリジェクトすべき複数の拡張カテゴリーを設定し、前記複数の拡張カテゴリーに属する文字画像群を含む拡張学習データを用いて前記ディープラーニングアルゴリズムに基づく第２の学習を行い、
前記第１及び第２の学習により得られたパラメータを用いて前記入力文字画像を認識し、前記認識対象カテゴリーと前記拡張カテゴリーのそれぞれを含む複数のカテゴリーのうち、いずれかのカテゴリーを出力することを特徴とする文字認識方法。
【請求項２】
前記入力文字画像の認識に際し、前記複数の拡張カテゴリーのいずれかが出力された場合、前記認識結果からリジェクトすべきリジェクト判定として取り扱うことを特徴とする請求項１に記載の文字認識方法。
【請求項３】
前記入力文字画像の認識に際し、前記複数のカテゴリーの各々に対して認識度合に応じた認識スコアを付与し、最も高い認識スコアと２番目に高い認識スコアとのスコア差を算出し、前記スコア差が所定の閾値に満たない場合、前記リジェクト判定として取り扱うことを特徴とする請求項２に記載に記載の文字認識方法。
【請求項４】
前記第１及び第２の学習を所定回数だけ繰り返し実行し、最終的に得られた前記パラメータを用いて前記入力文字画像を認識することを特徴とする請求項１に記載の文字認識方法。
【請求項５】
前記複数の認識対象カテゴリーは、０〜９までの１０個の数字であり、前記複数の拡張カテゴリーは、前記０〜９の数字の各々に対応する誤認識文字画像に基づく１０個のカテゴリーであることを特徴とする請求項１に記載の文字認識方法。
【請求項６】
ニューラルネットワークによるディープラーニングアルゴリズムを用いて、入力文字画像を認識する文字認識システムであって、
認識すべき文字として複数の認識対象カテゴリーを設定し、前記複数の認識対象カテゴリーに属する文字画像群を含む学習データを用いて前記ディープラーニングアルゴリズムに基づく第１の学習を行うとともに、前記複数の認識対象カテゴリーに対応する誤認識文字画像に基づき、前記複数の認識対象カテゴリーの各々の認識結果からリジェクトすべき複数の拡張カテゴリーを設定し、前記複数の拡張カテゴリーに属する文字画像群を含む拡張学習データを用いて前記ディープラーニングアルゴリズムに基づく第２の学習を行う学習手段と、
前記第１及び第２の学習により得られたパラメータを用いて前記入力文字画像を認識し、前記認識対象カテゴリーと前記拡張カテゴリーのそれぞれを含む複数のカテゴリーのうち、いずれかのカテゴリーを出力する認識手段と、
を備えることを特徴とする文字認識システム。
【請求項７】
前記認識手段は、前記複数の拡張カテゴリーのいずれかが出力された場合、前記認識結果からリジェクトすべきリジェクト判定として取り扱うことを特徴とする請求項６に記載の文字認識システム。
【請求項８】
前記認識手段は、前記複数のカテゴリーの各々に対して認識度合に応じた認識スコアを付与し、最も高い認識スコアと２番目に高い認識スコアとのスコア差を算出し、前記スコア差が所定の閾値に満たない場合、前記リジェクト判定として取り扱うことを特徴とする請求項７に記載の文字認識システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、手書き文字等の入力文字画像を認識する文字認識方法及び文字認識システムに関するものである。
【背景技術】
【０００２】
従来から、手書き文字等の入力文字画像に対する認識処理により文字（カテゴリー）を認識する文字認識方法が広く普及している。例えば、手書き文字等をスキャナー等で読み取って生成された文字画像データに対し、パターン照合による方法や特徴点抽出による方法を用いて、標準文字パターンとの間の類似度を判定する文字認識装置が知られている（例えば、特許文献１、２参照）。また、近年においては、ニューラルネットワークによるディープラーニングを適用した文字認識システムが提案されている。例えば、手書き数字のデータセットであるＭＮＩＳＴ（Mixed National Institute of Standards and Technology database）などの大量の文字画像群を学習データとして学習させれば、従来の文字認識装置に比べても高い認識性能（例えば、単純認識率９９．３％程度）を実現することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１０−２１３２５号公報
【特許文献２】特開２００７−１５６９３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一般に、文字認識の利用目的のうち、手書きで勤務時間を記載した勤務表などは給与計算等に関連するので、誤認識の可能性を極力低減することが望ましい。しかし、実際にはディープラーニングを適用した文字認識システムにより９９．３％の単純認識率を確保できたとしても、０．７％程度の誤認識が発生することになる。これは、例えば前述の勤務表に３００文字が記載されていた場合、平均で１〜３文字程度の誤認識が発生することを意味し、前述のような利用目的には十分とは言えない。例えば、記載項目の相関関係をチェックして誤認識を自動的に検出する処理も知られているが、全ての誤認識を自動的に検出することは困難である。そのため、文字認識システムで前述の勤務表を認識させた後、１〜３文字程度の誤認識を見つけるために人間が目視で確認する作業が不可欠となるので、文字認識システムを導入したとしても、必ずしも作業効率の向上にはつながらない問題がある。
【０００５】
本発明は上記の問題を解決するためになされたものであり、ニューラルネットワークによるディープラーニングアルゴリズムを適用した文字認識方法において、認識率を高めることに加えて、誤認識を生じやすい文字画像を認識結果から確実にリジェクト（除外）することで誤認識の可能性を抑制し、人間が目視で確認する作業を軽減して作業効率の大幅な向上を実現するものである。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明の文字認識方法は、ニューラルネットワークによるディープラーニングアルゴリズムを用いて、入力文字画像を認識する文字認識方法であって、次の第１の学習と第２の学習を行う。第１の学習は、認識すべき文字として複数の認識対象カテゴリーを設定し、前記複数の認識対象カテゴリーに属する文字画像群を含む学習データを用いて前記ディープラーニングアルゴリズムに基づいて行うものである。第２の学習は、前記複数の認識対象カテゴリーに対応する誤認識文字画像に基づき、前記複数の認識対象カテゴリーの各々の認識結果からリジェクトすべき複数の拡張カテゴリーを設定し、前記複数の拡張カテゴリーに属する文字画像群を含む拡張学習データを用いて前記ディープラーニングアルゴリズムに基づいて行うものである。そして、前記第１及び第２の学習により得られたパラメータを用いて前記入力文字画像を認識し、前記認識対象カテゴリーと前記拡張カテゴリーのそれぞれを含む複数のカテゴリーのうち、いずれかのカテゴリーを出力する。
【０００７】
本発明の文字認識方法によれば、認識すべき文字として設定される複数の認識対象カテゴリーに対応する学習データを学習する第１の学習と、認識カテゴリーの誤認識文字画像に基づく複数の拡張カテゴリーに対応する拡張学習データを学習する第２の学習とを行い、それらの学習で得られたパラメータを用いて入力文字画像を認識する。よって、認識対象カテゴリーについての認識率（リジェクト分を除いた認識率）を高めるとともに、一般的に誤認識を生じやすい入力文字画像の類型を拡張カテゴリーとして認識させて取り扱うことで、誤認識を生じる可能性を十分に抑制することができる。その結果、文字認識に際し、ある程度の誤認識の発生を想定して人間が目視で確認する作業を軽減でき、作業効率の大幅な向上が可能となる。
【０００８】
本発明において、入力文字画像の認識に際し、複数の拡張カテゴリーのいずれかが出力された場合、認識結果からリジェクトすべきリジェクト判定として取り扱うことができる。よって、リジェクト判定された入力文字画像を認識結果から容易にリジェクト（除外）でき、誤認識の可能性をゼロに近づけることが可能となる。
【０００９】
本発明において、入力文字画像の認識に際し、複数のカテゴリーの各々に対して認識度合に応じた認識スコアを計算して付与し、そのうち最も高い認識スコアと２番目に高い認識スコアとのスコア差を算出し、前記スコア差が所定の閾値に満たない場合、リジェクト判定として取り扱うようにできる。このように拡張カテゴリーの出力とスコア差の算出とを組み合わせてリジェクト判定を行うことで、高精度で利便性が高い文字認識を実現することができる。
【００１０】
本発明において、第１及び第２の学習を所定回数だけ繰り返し実行し、最終的に得られたパラメータを用いて入力文字画像を認識することができる。このような認識対象カテゴリーと拡張カテゴリーに対応する学習を繰り返すことで、ディープラーニングアルゴリズムにおけるパラメータの精度を確実に高めることができる。すなわち、認識対象カテゴリーと拡張カテゴリーに対する文字の特徴を学習していく。
【００１１】
本発明の文字認識方法は、多様な用途に適用することができる。一例として、複数の認識対象カテゴリーとして０〜９までの１０個の数字を認識する用途に適用可能である。この場合、複数の拡張カテゴリーとしては、０〜９の数字の各々に対応する誤認識文字画像に基づく１０個のカテゴリーを設定すればよい。
【００１２】
また、上記課題を解決するために、本発明の文字認識システムは、前述の第１の学習及び第２の学習を行う学習手段と、前述の入力文字画像の認識によりいずれかのカテゴリーを出力する認識手段とを備えて構成される。この場合、文字認識システムの認識手段による前述のリジェクト判定や、前述の認識スコア及びスコア差を用いた判定については、文字認識方法に関して説明した通りである。
【発明の効果】
【００１３】
本発明によれば、ニューラルネットワークによるディープラーニングアルゴリズムにより、認識すべき文字としての認識対象カテゴリーに関わる第１の学習と、認識結果からリジェクト（除外）すべき拡張カテゴリーに関わる第２の学習とを行った後に、入力文字画像の認識を行うようにしたので、従来の認識方法では誤認識となるような入力文字画像の多くを確実にリジェクトすることができる。よって、入力文字画像に対する高い認識率（リジェクト分を除いた認識率）が得られるだけでなく、誤認識率をほぼゼロにすることができるので、文字認識後に全部の文字を目視で確認する作業は必要なく、リジェクト分の文字のみを目視すればよくなるので、人手を要する工数を大幅に削減して作業効率を格段に高めることが可能となる。
【図面の簡単な説明】
【００１４】
【図１】本実施形態の文字認識システムの概略の構成を示す図である。
【図２】本実施形態の文字認識システムのうち、学習部２０とテスト認識部３０の詳細な構成を示す図である。
【図３】本実施形態の文字認識システムのうち、認識部４０の詳細な構成を示す図である。
【図４】ＭＮＩＳＴによる手書き数字の文字画像群の例を示す図である。
【図５】拡張カテゴリー１０〜１９が付与された文字画像の具体例を示す図である。
【図６】本実施形態におけるディープラーニングアルゴリズムをモデル化して表したディープラーニングモデルの例を示す図である。
【図７】認識出力処理部４６（図３）において行われる分析及び判定処理の具体例を示すフローチャートである。
【図８】実施例１において、誤認識文字画像に対応するスコア分布を示す図である。
【図９】図８との対比のため、第１の学習のみ行って第２の学習を行なわない場合における誤認識文字画像のスコア分布を示す図である。
【発明を実施するための形態】
【００１５】
以下、本発明の好適な実施形態について、図面を参照しながら説明する。ただし、以下に述べる実施形態は本発明の技術思想を適用した形態の一例であって、本発明が本実施形態の内容により限定されることはない。
【００１６】
以下、本発明を適用した一実施形態としての文字認識システムの構成について説明する。図１は、本実施形態の文字認識システムの概略の構成を示す図であり、図２及び図３は、図１の文字認識システムにおける構成要素の詳細な構成を示す図である。本実施形態の文字認識システムの全体は、後述の学習データを用いてディープラーニングアルゴリズムに基づく学習を行って生成されたパラメータを出力する学習部２０と、後述のテストデータに対するテスト認識処理及び学習部２０への拡張学習データのフィードバックを行うテスト認識部３０と、文字認識システムに入力された文字画像（以下、「入力文字画像」という）を認識対象データとし、その認識処理により後述の認識結果等の情報を出力する認識部４０とを備えている。
【００１７】
本実施形態の文字認識システムは、多様な文字認識に応用可能であるが、以下の説明では、１０個の数字０〜９を認識する応用例について説明する。この場合、認識すべき対象として１０個の認識対象カテゴリー０、１、２、３、４、５、６、７、８、９を定義する。そして、本実施形態では、認識対象カテゴリーを拡張し、各々の数字０〜９を誤認識した際の文字画像（以下、「誤認識文字画像」という）に基づき、認識結果からリジェクト（除外）すべき１０個の拡張カテゴリー１０、１１、１２、１３、１４、１５、１６、１７、１８、１９を定義する。例えば、拡張カテゴリー１０は、正解値１０を有するが認識値が異なる数字となった誤認識文字画像に基づき、学習部２０における学習によって生成される仮想的なカテゴリー（認識対象カテゴリー０に対応）を表す。他の拡張カテゴリー１１〜１９も同様に解釈されるが、拡張カテゴリー１０〜１９の詳細については後述する。このように、本実施形態では、１０個の認識対象カテゴリー０〜９と１０個の拡張カテゴリー１０〜１９とを併せ、全部で２０個のカテゴリーが存在することになる。
【００１８】
図２に示す学習部２０においては、認識対象カテゴリー０〜９の学習（本発明の第１の学習）に用いる文字画像群からなる学習データ２１と、拡張カテゴリー１０〜１９の学習（本発明の第２の学習）に用いる文字画像群からなる拡張学習データ２２と、学習データ２１及び拡張学習データ２２を用いてディープラーニングアルゴリズムに基づく学習処理を実行する学習ディープラーニング部２３と、学習ディープラーニング部２３の学習処理により生成される後述のパラメータ２４が示されている。
【００１９】
また、図２に示すテスト認識部３０においては、学習部２０で生成されたパラメータ２４と同一のパラメータ３１と、外部から入力されるテスト用の文字画像群であるテストデータ３２と、パラメータ３１及びテストデータ３２を用いてディープラーニングアルゴリズムに基づくテスト認識処理を実行するテスト認識ディープラーニング部３３と、テスト認識ディープラーニング部３３の認識処理により得られる認識スコア等を含むテスト認識結果データ３４と、テスト認識結果データ３４の内容に応じて入力文字画像を振り分ける振り分け処理部３５と、振り分け処理部３５により振り分けられた正常認識出力３６及び誤認識出力３７が示されている。
【００２０】
また、図３に示す認識部４０においては、学習部２０で生成されたパラメータ２４と同一のパラメータ４１と、外部から入力される認識対象の文字画像群である認識対象データ４２と、パラメータ４１及び認識対象データ４２を用いてディープラーニングアルゴリズムに基づく認識処理を実行する認識ディープラーニング部４３と、認識ディープラーニング部４３の認識処理により得られる認識スコアデータ４４と、予め設定された閾値４５と、認識スコアデータ４４の内容と閾値４５とに基づき入力文字画像に対する認識スコアの分析やリジェクト判定処理を行う認識出力処理部４６と、認識出力処理部４６の処理に応じて振り分けられた認識対象出力４７及びリジェクト判定出力４８が示されている。
【００２１】
次に、図２及び図３に示す文字認識システムにおいて実行される具体的な処理について説明する。最初に、ディープラーニングアルゴリズムで用いるパラメータ２４、３１、４１を決定するために、学習部２０において学習処理を実行する必要がある。その際、認識対象カテゴリー０〜９に対応する学習データ２１については、予め用意された手書き文字による文字画像群を用いることができる。例えば、手書きによる１０個の数字０〜９のデータセットであるＭＮＩＳＴ（Mixed National Institute of Standards and Technology database）を学習データ２１として用いることができる。
【００２２】
図４は、前述のＭＮＩＳＴによる手書き数字の文字画像群の例を示している。通常、ＭＮＩＳＴに含まれる個々の文字画像データは、２８×２８のグレー画像として扱われ、それぞれの文字画像に対して正解値（０〜９のいずれか）が設定されている。文字画像に設定された正解値は、学習データ２１に付与される認識対象カテゴリー０〜９に一致する。なお、ＭＮＩＳＴには全部で７万個の文字画像が含まれるが、学習部２０における学習処理の状況に応じて必要な個数だけを用いることができる。
【００２３】
一方、最初の時点で、拡張カテゴリー１０〜１９に対応する拡張学習データ２２が存在しないことを想定し、まず、認識対象カテゴリー０〜９に対応する学習データ２１のみを用いて学習ディープラーニング部２３による学習（第１の学習）を実行し、その結果としてパラメータ２４を生成する。
【００２４】
次に、図２のテスト認識部３０において、学習部２０で生成されたパラメータ２４と同一のパラメータ３１を設定し、予め準備されるテストデータ３２を用いてテスト認識ディープラーニング部３３によるテスト認識処理を行う。その結果、各文字画像の認識スコアを含むテスト認識結果データ３４が生成され、振り分け処理部３５を介して、認識値と正解値が一致する正常認識出力３６と、認識値と正解値が不一致の誤認識出力３７に振り分けられる。そして、誤認識出力３７に含まれる誤認識文字画像群は、誤認識の結果に応じた拡張カテゴリー１０〜１９が付与され、学習部２０の拡張学習データ２２としてフィードバックされる。
【００２５】
ここで、図５は、拡張カテゴリー１０〜１９が付与された文字画像の具体例を示している。例えば、拡張カテゴリー１０は、本来の正解値が０である文字画像に関し、前述のテスト認識部３０における認識値が正解値と一致しない３つの誤認識文字画像（図５では、正解値０に対しそれぞれ認識値８、７、６）が例示されている。他の拡張カテゴリー１１〜１９の文字画像についても、同様の解釈が可能である。一般に、文字を誤認識する際の類型には一定の傾向が見られ、例えば、拡張カテゴリー１３からは数字３が数字５と誤認識されやすく、拡張カテゴリー１４からは数字４が数字９と誤認識されやすい傾向がわかる。
【００２６】
そして、拡張カテゴリー１０〜１９が付与された拡張学習データ２２と元の学習データ２１とを用いて学習ディープラーニング部２３による学習（第２の学習）を実行し、その結果として前述のパラメータ２４を更新する。また、第１及び第２の学習は、所定回数だけ繰り返し実行することにより、パラメータ２４の更新を繰り返し行って精度を高めるようにしてもよい。
【００２７】
次に、図３の認識部４０において、学習部２０で最終的に更新されたパラメータ２４と同一のパラメータ４１を設定し、実際に認識すべき文字画像群からなる認識対象データ４２を用いて認識ディープラーニング部４３による認識処理を実行する。認識ディープラーニング部４３の認識処理は、前述の学習部２０の学習ディープラーニング部２３及びテスト認識部３０のテスト認識ディープラーニング部３３と共通のディープラーニングアルゴリズムに従って実行される。ここで、図６を参照して、本実施形態の学習部２０、テスト認識部３０、認識部４０おいて共通のディープラーニングアルゴリズムをモデル化して表したディープラーニングモデルについて説明する。
【００２８】
図６に示すディープラーニングモデルの例は、多層に接続された畳み込みニューラルネットワークにより構成される。図６においては、入力データと、８つのパラメータＰと、６つの畳み込み層Ｃと、７つの活性化関数層Ｆと、３つのプーリング層Ｐｏと、２つの全結合層Ａと、２つのドロップアウト層Ｄと、出力データとが示される。これらの構成要素の各々に対し括弧内に番号を付すことで区別して表すものとする。
【００２９】
まず、入力データが初段の畳み込み層Ｃ（１）に入力される。この入力データは、学習部２０では学習データ２１と拡張学習データ２２であり、テスト認識部３０ではテストデータ３２であり、認識部４０では認識対象データ４２である。畳み込み層Ｃ（１）では、入力データの各々の文字画像に対し、パラメータＰ（１）を用いた畳み込み演算を行う。パラメータ（１）には、例えば、入力文字画像から得られた複数のニューロンの数値にそれぞれ乗じる複数の重みが含まれる。他のパラメータＰ（２）〜Ｐ（７）と畳み込み層Ｃ（２）〜Ｃ（６）についても上記と同様の機能を有する。
【００３０】
活性化関数層Ｆ（１）は、畳み込み層Ｃ（１）の演算結果に対して所定の関数に基づく変換を施す。例えば、活性化関数層Ｆ（１）としては、ＲｅＬＵ(Reflected Linear Unit)関数が用いられる。ＲｅＬＵ関数は、入力が０を超えていれば、その入力をそのまま出力し、入力が０以下ならば０を出力する関数である。他の活性化関数Ｆ（２）〜（７）についても上記と同様の機能を有する。
【００３１】
また、プーリング層Ｐｏ（１）〜Ｐｏ（３）は、縦及び横方向の空間を小さくする演算を行う。全結合層Ａ（１）、Ａ（２）は、隣接する層の全てのニューロンを連結して出力を生成する。ドロップアウト層Ｄ（１）、Ｄ（２）は、学習に際してランダムに選択されたニューロンの一定割合を消去する。
【００３２】
図６に示すディープラーニングモデルに示される各層の構成は例示であって、実際にはニューラルネットワークで適用可能な多様な構成要素を用いて多様な連結で構成することができる。また、図６では、全部で８層のディープラーニングモデルを示しているが、より多層のディープラーニングモデルを構成することができる。
【００３３】
図３に戻って、認識ディープラーニング部４３による認識処理の結果、認識対象データ４２の各々の文字画像に対し、認識対象カテゴリー０〜９及び拡張カテゴリー１０〜１９の認識度合に応じた認識スコアが付与される。すなわち、認識対象データ４２に含まれる文字画像に付与される複数の認識スコアからなる認識スコアデータ４４が生成される。続いて、認識出力処理部４６では、予め設定された閾値４５に基づき、生成された認識スコアデータ４４を分析し、その結果を、認識対象の文字として判定された認識対象出力４７と、認識結果からリジェクトすべきと判定されたリジェクト判定出力４８とに振り分けて出力する。
【００３４】
ここで、図７のフローチャートを用いて、認識出力処理部４６において行われる分析及び判定処理の具体例を説明する。図７においては、特定の文字画像に対し、認識スコアデータ４４として生成される認識スコアとして、認識対象カテゴリー０〜９に対応する認識スコアの値（以下、「スコア値」という）と、拡張カテゴリー１０〜１９に対応するスコア値とを含む計２０種のスコア値を想定する。各々のスコア値は、対応するカテゴリーとの認識度合が高く判定されるほど大きな値をとる。
【００３５】
まず、図７において、前述の２０種のスコア値のうちの最も高いスコア値を抽出し、それに対応するカテゴリーＣを判定する（ステップＳ１）。次いで、ステップＳ１で判定したカテゴリーＣが認識対象カテゴリー０〜９に該当するか否かを判定する（ステップＳ２）。ステップＳ２において、カテゴリーＣが認識対象カテゴリー０〜９に該当すると判定された場合は（ステップＳ２：ＹＥＳ）、前述の最も高いスコア値と２番目に高いスコア値とのスコア差Ｄを算出する（ステップＳ３）。そして、ステップＳ３で算出したスコア差Ｄを閾値Ｔ（図２の閾値４５）と比較し、Ｄ＞Ｔを満たすか否かを判定する（ステップＳ４）。ステップＳ４において、Ｄ＞Ｔを満たすと判定された場合（ステップＳ４：ＹＥＳ）、認識対象として判定されたカテゴリーＣが認識対象出力４７に出力される（ステップＳ５）。
【００３６】
これに対し、ステップＳ２の判定の結果、カテゴリーＣが認識対象カテゴリー０〜９に該当せずに、拡張カテゴリー１０〜１９に該当すると判定された場合は（ステップＳ２：ＮＯ）、そのカテゴリーＣがリジェクト判定出力４８に出力される（ステップＳ６）。同様に、ステップＳ４の判定の結果、Ｄ＞Ｔを満たさないと判定された場合は（ステップＳ４：ＮＯ）、最も高いスコア値のカテゴリーＣを、対応する拡張カテゴリーに読み替えてリジェクト判定出力４８に出力される（ステップＳ６）。すなわち、判定されたカテゴリーＣが認識対象カテゴリー０〜９に該当し、かつスコア差Ｄが閾値Ｔより大きい場合のみ認識対象出力４７となり、それ以外のケースはリジェクト判定出力４８となる。
【００３７】
換言すれば、リジェクト判定出力４８として出力されるケースは、判定されたカテゴリーＣが拡張カテゴリー１０〜１９に該当するケースか、あるいは認識対象カテゴリー０〜９に該当したとしても１番目と２番目のスコア差Ｄが小さいケースのいずれかである。認識部４０に入力された文字画像が拡張カテゴリー１０〜１９のいずれかと判定され、結果的にリジェクト判定出力４８とされた場合、認識結果から除外されることになるので誤認識の可能性は確実に抑制されることになる。
【００３８】
本実施形態において、図１〜図７を用いて説明した文字認識システムは一例であって、本発明を適用可能な文字認識システムは多様な変形が可能である。例えば、本実施形態では、数字を認識する応用例として、１０個の認識対象カテゴリー０〜１０と１０個の拡張カテゴリー１１〜１９を設定する場合を説明したが、本発明は、より多様な文字群に対し、複数の認識対象カテゴリーと複数の拡張カテゴリーを設定して適用可能であり、例えば、アルファベットや特殊記号などの文字群を想定することができる。なお、本実施形態では、認識対象カテゴリーの個数Ｍと拡張カテゴリーの個数ＮとがＭ＝Ｎとなる場合を説明したが、認識対象文字の種別や誤認識の類型に応じて、Ｍ＝Ｎには限らず、Ｍ及びＮをそれぞれ所望の個数に設定することができる。
【００３９】
また、図７の処理では、認識対象文字や要求される認識性能に応じて、スコア差Ｄに関連するステップＳ３、Ｓ４を省略し、単純にステップＳ１、Ｓ２、Ｓ５、Ｓ６のみからなる処理を採用してもよい。例えば、拡張カテゴリー１０〜１９と判定された場合のみをリジェクトしても、十分に高い認識率を得られ、かつ誤認識をほほゼロにできるなら処理を簡潔化することができる。なお、ステップＳ４における閾値Ｔは、それぞれのスコア値の傾向に応じて適切な値を設定することができる。
【００４０】
また、本実施形態の文字認識システムは図２のテスト認識部３０を備えているが、学習データ２１に加えて、予め拡張学習データ２２を用意できれば、テスト認識部３０を設けなくてもよい。すなわち、誤認識文字画像の多様な類型を事前に収集しておけば、それに拡張カテゴリー１０〜１９を付与して拡張学習データ２２を準備することができる。この場合、学習部２０と認識部４０とにより、文字認識システムを構成可能となる。
【００４１】
以上説明したように、本実施形態の文字認識システム（文字認識方法）によれば、学習部２０において、認識対象カテゴリーに関わる第１の学習に加えて、誤認識文字画像の類型として位置付けられる拡張カテゴリーに関わる第２の学習を行い、第１及び第２の学習を反映したパラメータを用いて入力文字画像の認識を行うようにした。これにより、入力文字画像の認識率（リジェクト分を除いた認識率）を高めるだけではなく、従来の文字認識では誤認識となっていた文字画像を拡張カテゴリーに対応付けてリジェクトすることができるので、誤認識率を格段に低減することができる。従来の文字認識装置では、ある程度の誤認識率が想定される以上、全ての文字を人間が目視で確認する作業を重複して行う必要があったが、本実施形態の文字認識システムでは、リジェクトされた文字についてのみ目視で確認を行えばよいため、作業効率が大幅に向上する。また、認識結果として、認識対象カテゴリーと拡張カテゴリーの判定に加えて認識スコアに基づく判定を加味することで、きめ細かい認識を実現して認識性能のさらなる向上が可能となる。
【００４２】
以下、本実施形態の文字認識システムにおいて、図２に示す学習部２０、テスト認識部３０、認識部４０に関し、実際の文字画像群を用いた具体的な評価結果についての２つの実施例を説明する。
【００４３】
［実施例１］
まず、ＭＮＩＳＴの６万文字の手書き数字からなる学習データ２１を用意し、図２の学習部２０にて学習を行ってパラメータ２４（１）を生成した。続いて、ＭＮＩＳＴの６万文字からなるテストデータ３２（テストデータは学習データと同一）を用意し、テスト認識部３０にてパラメータ２４（１）と同一のパラメータ３１（１）を用いてテスト認識を行い、誤認識出力３７として１６３文字の誤認識文字画像を抽出した。続いて、拡張カテゴリー１０〜１９を付与した６２文字の誤認識文字画像を学習部２０にフィードバックし、それらの誤認識文字画像を拡張学習データ２２として学習データ２１とともに学習を行い、更新されたパラメータ２４（２）を生成した。なお、パラメータ２４、３１、４１の各々に付した括弧内の数字により時系列の生成順を表すものとする。
【００４４】
次に、パラメータ２４（２）と同一のパラメータ３１（２）を用いて、テスト認識部３０にてテストデータ３２のテスト認識（２回目）を行い、誤認識出力３７として２４９文字の誤認識文字画像を抽出した。続いて、拡張カテゴリー１０〜１９を付与した２４９文字の誤認識文字画像を学習部２０に再びフィードバックし、前回の１６３文字と今回の２４９文字を併せた４１２文字の誤認識文字画像からなる拡張学習データ２２を学習データ２１とともに学習し、更新されたパラメータ２４（３）を生成した。そして、パラメータ２４（３）と同一のパラメータ３１（３）を用いて、テスト認識部３０にてテストデータ３２のテスト認識（３回目）を行い、誤認識出力３７として１９３文字の誤認識文字画像を抽出した。続いて、拡張カテゴリー１０〜１９を付与した１９３文字の誤認識文字画像を学習部２０に再びフィードバックし、１〜３回目の１６３文字、２４９文字、１９３文字を併せた６０５文字の誤認識文字画像からなる拡張学習データ２２を学習データ２１とともに学習し、更新されたパラメータ２４（４）を生成した。
【００４５】
さらに、パラメータ２４（４）と同一のパラメータ３１（４）を用いて、テスト認識部３０にてテストデータ３２のテスト認識（４回目）を行い、誤認識出力３７として１５４文字の誤認識文字画像を抽出した。続いて、拡張カテゴリー１０〜１９を付与した１５４文字の誤認識文字画像を学習部２０に再びフィードバックし、１〜４回目の１６３文字、２４９文字、１９３文字、１５４文字を併せた７５９文字の誤認識文字画像からなる拡張学習データ２２を学習データ２１とともに学習し、更新されたパラメータ２４（５）を生成した。以上のプロセスでは、複数の誤認識文字画像をフィードバックする学習を４回繰り返して実行したことになる。
【００４６】
次に、認識部４０において、前述のパラメータ２４（５）と同一のパラメータ４１（５）を用いて、ＭＮＩＳＴの１万文字の手書き数字を認識対象データ４２として認識処理を実行した。このとき、認識出力処理部４６では、閾値Ｔ＝３．０と設定した。その結果、１万文字のうち、認識対象出力４７が９６４３文字となり、リジェクト判定出力４８が３５７文字となった。認識対象出力４７の９６４３文字を評価した結果、９６３５文字は正解値と認識値が一致し、８文字が正解値と認識値が一致しなかった。また、全体の１万文字に対する認識率は、９６．３５％となり、リジェクト判定出力４８を除く認識率は、９９．９２％となった。
【００４７】
ここで、図８には、実施例１における誤認識文字画像に対応するスコア分布を示した。また、図８との対比のため、図９には、第１の学習のみ行って第２の学習を行なわない場合における誤認識文字画像のスコア分布を示した。すなわち、図９のスコア分布は、最初の時点での認識対象カテゴリー０〜９に対応する学習データ２１のみを用いて学習ディープラーニング部２３による学習（第１の学習）を実行し、その結果として得たパラメータ２４を用いて文字認識を行ったものである。図８では、７４文字の誤認識文字画像に番号１〜７４（横軸）を付し、図９では、６２文字の誤認識文字画像に番号１〜６２（横軸）を付し、それぞれに対応する１番高いスコア値（縦軸）及び１番目と２番目のスコア値のスコア差Ｄ（縦軸）をプロットした
【００４８】
まず、図８においては、７４文字の誤認識文字画像のうち、閾値Ｔが３．０を超えるものが８文字だけ確認された。一方、図９においては、図８と比べて誤認識文字画像が１２文字少ない６２文字であったが、スコア差Ｄのバラツキがかなり大きく、閾値Ｔが３．０を超えるものが２２文字確認された。例えば、図９において、図８と同様に閾値３．０を超える文字数が８文字となるようにする場合、閾値Ｔを８．７５程度に引き上げる必要がある。図９の破線にて閾値Ｔ＝８．７５を示したが、この場合にはリジェクト判定となる文字画像が大きく増加することは避けられない。以上のことから、誤認識文字画像のスコア差Ｄを縮めることに第２の学習による効果が働いているのが理解できる。
【００４９】
なお、前述したように認識対象出力４７のうち正解値と認識値が一致しなかった８文字分の誤認識文字画像に関しては、実施例１の冒頭で述べたのと同様に、第２の学習を更に５回繰り返すことにより、誤認識文字画像をゼロにすることができた。すなわち、閾値Ｔ＝３．０として、１万文字のうち、認識対象出力４７が９５０４文字となり、リジェクト判定出力４８が４９６文字となり、認識対象出力４７の９５０４文字を評価した結果、すべて正解値と認識値が一致した。全体の１万文字に対する認識率は、９５．０４％、リジェクト判定出力４８を除く認識率は、１００．００％となった。
【００５０】
［実施例２］
以下の実施例２では、前述のＭＮＩＳＴに代え、発明者らが従来の文字認識装置を用いて蓄積した手書き数字の各種文字画像群を用いた。まず、６万文字の手書き数字からなる学習データ２１を用意し、図２の学習部２０にて学習を行ってパラメータ２４（１）を生成した。そして、比較的きれいな２万文字の第１の手書き数字群からなるテストデータ３２を用意し、テスト認識部３０にてパラメータ２４（１）と同一のパラメータ３１（１）を用いてテスト認識を行い、誤認識出力３７として４８文字の誤認識文字画像を抽出した。また、標準的な２０万文字の第２の手書き数字群からなるテストデータ３２を用意し、テスト認識部３０にて前述のパラメータ３１（１）を用いてテスト認識を行い、誤認識出力３７として８３６文字の誤認識文字画像を抽出した。
【００５１】
次に、抽出した４８文字と８３６文字とを併せた８８４文字の誤認識文字画像に拡張カテゴリー１０〜１９を付与して学習部２０にフィードバックし、それを拡張学習データ２２として学習データ２１とともに学習し、更新されたパラメータ２４（２）を生成した。そして、パラメータ２４（２）と同一のパラメータ３１（２）を用いて、テスト認識部３０にて前述の第１の手書き数字群をテストデータ３２としてテスト認識を行い、誤認識出力３７として４３文字の誤認識文字画像を抽出した。同様に、テスト認識部３０にて前述の第２の手書き数字群をテストデータ３２としてテスト認識を行い、誤認識出力３７として６３７文字の誤認識文字画像を抽出した。
【００５２】
次に、抽出した４３文字と６３７文字とを併せた６８０文字の誤認識文字画像に拡張カテゴリー１０〜１９を付与して学習部２０にフィードバックし、前述の８８４文字と今回の６８０文字を併せた１５６４文字の誤認識文字画像を拡張学習データ２２として学習データ２１とともに学習し、更新されたパラメータ２４（３）を生成した。そして、従来の文字認識装置で誤認識となった間違えやすい３万文字の第３の手書き数字群からなるテストデータ３２を用意し、テスト認識部３０にて前述のパラメータ２４（３）と同一のパラメータ３１（３）を用いてテスト認識を行い、誤認識出力３７として５６６文字の誤認識文字画像を抽出した。
【００５３】
次に、抽出した５６６文字の誤認識文字画像に拡張カテゴリー１０〜１９を付与して学習部２０にフィードバックし、前述の１５６４文字と今回の５６６文字を併せた２１３０文字の誤認識文字画像を拡張学習データ２２として学習データ２１とともに学習し、更新されたパラメータ２４（４）を生成した。
【００５４】
次に、認識部４０において、パラメータ２４（４）と同一のパラメータ４１（４）を用いて、実際の勤怠データの２１１２９個の手書き数字群を認識対象データ４２として認識処理を実行した。このとき、実施例１と同様、閾値Ｔ＝３．０に設定した。その結果、２１１２９個の手書き数字群については、認識対象出力４７が１９３９５文字、リジェクト判定出力４８が１７３４文字となった。認識対象出力４７の１９３９５文字を評価した結果、１９３９１文字は正解値と認識値が一致し、４文字が正解値と認識値が一致しなかった。全体の認識率が９１．７７％、リジェクト判定出力４８を除く認識率は、９９．９８％となった。なお、前述の４文字の誤認識文字画像については、第２の学習が不足しているものと考えられ、実施例１と同様に、更に第２の学習を数回繰り返すことにより正解値と認識値を一致させて誤認識をゼロにすることができる。
【００５５】
以上、本実施形態に基づき本発明の内容を具体的に説明したが、本発明は上述の実施形態に限定されるものではなく、その要旨を逸脱しない範囲で多様な変更を施すことができる。例えば、本実施形態の文字認識システムは、ネットワークを介して相互に接続された複数の機器等で構成することもできるが、例えば、文字認識方法に関わるソフトウェアを搭載した１台のコンピュータを用いて構成してもよい。また、その他の点についても上記実施形態により本発明の内容が限定されるものではなく、本発明の作用効果を得られる限り、上記実施形態に開示した内容には限定されることなく適宜に変更可能である。
【符号の説明】
【００５６】
２０…学習部
２１…学習データ
２２…拡張学習データ
２３…学習ディープラーニング部
２４、３１、４１…パラメータ
３０…テスト認識部
３２…テストデータ
３３…テスト認識ディープラーニング部
３４…テスト認識結果データ
３５…振り分け処理部
３６…正常認識出力
３７…誤認識出力
４０…認識部
４２…認識対象データ
４３…認識ディープラーニング部
４４…認識スコアデータ
４５…閾値
４６…認識出力処理部
４７…認識対象出力
４８…リジェクト判定出力
【図１】
2019057087.tif 000003
【図２】
2019057087.tif 000004
【図３】
2019057087.tif 000005
【図４】
2019057087.tif 000006
【図５】
2019057087.tif 000007
【図６】
2019057087.tif 000008
【図７】
2019057087.tif 000009
【図８】
2019057087.tif 000010
【図９】
2019057087.tif 000011