(57)【要約】【課題】ラベルなしデータに非認識対象データが含まれている場合であっても、ラベルなしデータから非認識対象データを精度よく分離して、半教師あり学習による識別器の学習を適切に行うことができるようにする。【解決手段】実施形態の情報処理装置は、判定部と、第１学習部と、を備える。判定部は、クラスラベルが未知のラベルなしデータが、パターン認識の認識対象ではない非認識対象データであるか否かを判定する。第１学習部は、前記非認識対象データではないと判定された前記ラベルなしデータを含み、前記非認識対象データであると判定された前記ラベルなしデータを含まない第１学習用データセットを用いた半教師あり学習により、前記パターン認識に用いる第１識別器の学習を行う。【選択図】図１
2020030752.tif 000002
【特許請求の範囲】
【請求項１】
クラスラベルが未知のラベルなしデータが、パターン認識の認識対象ではない非認識対象データであるか否かを判定する判定部と、
前記非認識対象データではないと判定された前記ラベルなしデータを含み、前記非認識対象データであると判定された前記ラベルなしデータを含まない第１学習用データセットを用いた半教師あり学習により、前記パターン認識に用いる第１識別器の学習を行う第１学習部と、
を備える情報処理装置。
【請求項２】
前記第１学習部は、前記非認識対象データではないと判定された前記ラベルなしデータと、クラスラベルが付与されたラベルありデータと、を含み、前記非認識対象データであると判定された前記ラベルなしデータを含まない前記第１学習用データセットを用いた半教師あり学習により、前記第１識別器の学習を行う
請求項１に記載の情報処理装置。
【請求項３】
前記第１学習部は、前記非認識対象データではないと判定された前記ラベルなしデータを含み、クラスラベルが付与されたラベルありデータと、前記非認識対象データであると判定された前記ラベルなしデータと、を含まない前記第１学習用データセットと、予め学習された識別器とを用いた半教師あり学習により、前記第１識別器の学習を行う
請求項１に記載の情報処理装置。
【請求項４】
非認識対象のラベルが付与された疑似的な非認識対象データである疑似非認識対象データを生成する生成部と、
少なくとも前記疑似非認識対象データを含む第２学習用データセットを用いて、前記ラベルなしデータが前記非認識対象データであるか否かの判定に用いる第２識別器の学習を行う第２学習部と、をさらに備える
請求項１乃至３のいずれか一項に記載の情報処理装置。
【請求項５】
前記第２学習部は、前記疑似非認識対象データと、クラスラベルが付与されたラベルありデータと、を含む前記第２学習用データセットを用いた教師あり学習により、前記第２識別器の学習を行う
請求項４に記載の情報処理装置。
【請求項６】
前記第２学習部は、前記疑似非認識対象データと、前記ラベルなしデータと、を含む前記第２学習用データセットを用いた半教師あり学習により、前記第２識別器の学習を行う
請求項４に記載の情報処理装置。
【請求項７】
前記第２学習部は、前記疑似非認識対象データと、クラスラベルが付与されたラベルありデータと、前記ラベルなしデータと、を含む前記第２学習用データセットを用いた半教師あり学習により、前記第２識別器の学習を行う
請求項４に記載の情報処理装置。
【請求項８】
入力データから前記パターン認識を行う部分データを切り出す切り出し部をさらに備え、
前記ラベルなしデータは、前記切り出し部により切り出された前記部分データである
請求項１乃至７のいずれか一項に記載の情報処理装置。
【請求項９】
入力データから前記パターン認識を行う部分データを切り出す切り出し部をさらに備え、
前記生成部は、前記部分データまたは前記入力データを加工して得られたデータに前記非認識対象のラベルを付与することにより、前記疑似非認識対象データを生成する
請求項４に記載の情報処理装置。
【請求項１０】
クラスラベルが未知のラベルなしデータが、パターン認識の認識対象ではない非認識対象データであるか否かを判定するステップと、
前記非認識対象データではないと判定された前記ラベルなしデータを含み、前記非認識対象データであると判定された前記ラベルなしデータを含まない学習用データセットを用いた半教師あり学習により、前記パターン認識に用いる識別器の学習を行うステップと、
を含む情報処理方法。
【請求項１１】
コンピュータに、
クラスラベルが未知のラベルなしデータが、パターン認識の認識対象ではない非認識対象データであるか否かを判定する機能と、
前記非認識対象データではないと判定された前記ラベルなしデータを含み、前記非認識対象データであると判定された前記ラベルなしデータを含まない学習用データセットを用いた半教師あり学習により、前記パターン認識に用いる識別器の学習を行う機能と、
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【０００２】
顔認識や文字認識といったパターン認識に用いる識別器を、半教師あり学習によって学習する手法が知られている。半教師あり学習は、クラスラベルが付与されたラベルありデータに加えて、クラスラベルが未知のラベルなしデータも学習用データとして活用することで、識別器などの学習を効率よく行えるようにする技術である。
【０００３】
半教師あり学習では、パターン認識の認識対象ではないデータ（以下、このようなデータを「非認識対象データ」と呼ぶ）が学習用データに混入していることは想定されていない。しかし、例えば、入力画像から個別文字に対応する部分画像（個別文字画像）を切り出し、切り出した部分画像に対して識別器を用いたパターン認識を行って個別文字の文字クラスを識別するような文字認識システムにおいて、切り出した部分画像をラベルなしデータとして蓄積する場合には、切り出し間違いによって、文字でない部分画像（非認識対象データの一例）がラベルなしデータとして蓄積される可能性がある。この場合、蓄積されたラベルなしデータをそのまま学習用データとして用いると、文字でない部分画像をいずれかの文字クラスに識別するように識別器を学習してしまい、認識精度を低下させる要因となる。
【０００４】
こうした不都合を抑制する手法として、既存の識別器でクラス識別したときの確信度が低いラベルなしデータは学習用データから除くといった手法がある。しかし、非認識対象データであっても、いずれかのクラスの特徴に近いために確信度が高くなるケースや、逆に、非認識対象データではないが、見え方の違いによって確信度が低くなるケースもある。このため、確信度が低いラベルなしデータを学習用データから除外する手法では、ラベルなしデータから非認識対象データを精度よく分離することができず、改善が求められている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】国際公開第２０１４／１３６３１６号
【特許文献２】特許第４４２９３７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明が解決しようとする課題は、ラベルなしデータに非認識対象データが含まれている場合であっても、ラベルなしデータから非認識対象データを精度よく分離して、半教師あり学習による識別器の学習を適切に行うことができる情報処理装置、情報処理方法およびプログラムを提供することである。
【課題を解決するための手段】
【０００７】
実施形態の情報処理装置は、判定部と、第１学習部と、を備える。判定部は、クラスラベルが未知のラベルなしデータが、パターン認識の認識対象ではない非認識対象データであるか否かを判定する。第１学習部は、前記非認識対象データではないと判定された前記ラベルなしデータを含み、前記非認識対象データであると判定された前記ラベルなしデータを含まない第１学習用データセットを用いた半教師あり学習により、前記パターン認識に用いる第１識別器の学習を行う。
【図面の簡単な説明】
【０００８】
【図１】図１は、第１実施形態に係る情報処理装置の機能的な構成例を示すブロック図である。
【図２】図２は、文字認識処理の手順を示すフローチャートである。
【図３】図３は、文字識別器の学習処理の手順を示すフローチャートである。
【図４】図４は、第２実施形態に係る情報処理装置の機能的な構成例を示すブロック図である。
【図５】図５は、非文字識別器の学習処理の手順を示すフローチャートである。
【図６】図６は、第３実施形態に係る情報処理装置の機能的な構成例を示すブロック図である。
【図７】図７は、非文字識別器の学習処理の手順を示すフローチャートである。
【図８】図８は、第４実施形態に係る情報処理装置の機能的な構成例を示すブロック図である。
【図９】図９は、非文字識別器の学習処理の手順を示すフローチャートである。
【図１０】図１０は、情報処理装置のハードウェア構成例を示すブロック図である。
【図１１】図１１は、端末とサーバを含む情報処理装置の構成例を示すブロック図である。
【発明を実施するための形態】
【０００９】
以下、実施形態の情報処理装置、情報処理方法およびプログラムについて、図面を参照して詳細に説明する。
【００１０】
＜実施形態の概要＞
本実施形態は、パターン認識に用いる識別器を半教師あり学習によって学習する際に、学習用データセットに非認識対象データが含まれることに起因する不適切な学習を抑制し、精度のよい識別器を効率よく学習できるようにするものである。
【００１１】
半教師あり学習は、少数のラベルありデータに多数のラベルなしデータを加えた学習用データセットを用いて識別器などの学習を行う手法である。ラベルありデータは、人手による教示操作などによってクラスラベルが付与されたデータであり、ラベルなしデータはクラスラベルが未知のデータである。クラスラベルは、識別器が識別するクラスを示すラベルである。
【００１２】
半教師あり学習には、例えば、ブーストラップ法、グラフベース半教師あり学習、下記参考文献に開示されるＶｉｒｔｕａｌ  Ａｄｖｅｒｓａｒｉａｌ  Ｔｒａｉｎｉｎｇなどの手法が存在する。
（参考文献）T．Miyato，et  al．“Distributional  Smoothing  With  Virtual  Adversarial  Training”arXiv  preprint  arXiv:1507.00677．2016．
【００１３】
ブーストラップ法は、ラベルありデータのみから学習された識別器を用いてラベルなしデータを識別し、識別結果をラベルなしデータのクラスラベルとして再学習する手法であり、１つの識別器を用いるＳｅｌｆ  Ｔｒａｉｎｉｎｇ、複数の識別器を用いるＣｏ−Ｔｒａｉｎｉｎｇなどがある。グラフベース半教師あり学習は、データ分布におけるデータの近さをもとにラベルありデータのクラスラベルをラベルなしデータに伝播させる手法であり、データの近さを求めるアルゴリズムとしてｋ近傍法を用いる半教師ありｋ近傍法グラフ、混合ガウスモデルを用いる半教師あり混合ガウスモデルなどがある。
【００１４】
本実施形態において、識別器の学習に適用する半教師あり学習の手法は特に限定されるものではなく、公知の手法をいずれも適用することができる。
【００１５】
本実施形態では、ユーザが入力した入力データから部分データを切り出して、この部分データに対して識別器を用いたパターン認識を行うものとし、入力データから切り出した部分データ、つまり、パターン認識を行う部分データをラベルなしデータとして蓄積することを想定する。この場合、部分データの切り出しが正しく行われないこともあり、その結果、ラベルなしデータに、識別器が識別するクラスに属さないデータ、つまり、パターン認識の認識対象ではない非認識対象データが含まれる場合がある。この場合、蓄積されたラベルなしデータをそのまま学習用データとして用いて識別器の半教師あり学習を行うと、非認識対象データをいずれかのクラスに識別するように識別器を学習してしまい、認識精度を低下させる要因となる。
【００１６】
そこで、本実施形態では、パターン認識に用いる識別器とは別の識別器を用いて、保存されたラベルなしデータが非認識対象データであるか否かを判定する。そして、保存されたラベルなしデータのうち、非認識対象データではないと判定されたラベルなしデータ（つまり、パターン認識に用いる識別器によっていずれかのクラスに識別されるべきラベルなしデータ）を含み、非認識対象データであると判定されたラベルなしデータは含まない学習用データセットを用いて、パターン認識に用いる識別器を半教師あり学習によって学習する。これにより、ラベルなしデータに非認識対象データが含まれている場合であっても、ラベルなしデータから非認識対象データを精度よく分離して、半教師あり学習による識別器の学習を適切に行うことができるようになる。
【００１７】
以下では、パターン認識の一例として文字認識を行う情報処理装置に本実施形態を適用した具体例について詳細に説明する。文字認識においては、ユーザが入力する入力データは、例えば、文字列を含む画像（入力画像）であり、入力データから切り出される部分データは、個別文字に対応する個別文字画像であることが期待される部分画像である。また、パターン認識に用いる識別器は、個別文字画像を所定の文字クラスに多クラス識別する文字識別器であり、非認識対象データは、文字クラスに識別されない非文字データである。
【００１８】
ただし、本実施形態は文字認識を行う情報処理装置に限らず、例えば、画像に映る人物の顔を認識する顔認識、画像に映る物体を認識するオブジェクト認識、人の動きを表すセンサデータをもとに人の行動を認識する行動認識など、他のパターン認識を行う情報処理装置に対しても有効に適用可能である。なお、以下の説明において、同様の機能を持つ構成要素については同一の符号を付して、重複した説明を適宜省略する。
【００１９】
＜第１実施形態＞
図１は、第１実施形態に係る情報処理装置の機能的な構成例を示すブロック図である。本実施形態の情報処理装置は、図１に示すように、取得部１と、切り出し部２と、認識部３と、出力部４と、データ保存部５と、判定部６と、文字学習部７（第１学習部）と、を備える。
【００２０】
取得部１は、ユーザが入力する入力画像を取得する。取得部１は、ユーザが入力した入力画像を直接取得する構成であってもよいし、ユーザが入力して装置内部あるいは装置外部の所定の格納場所に格納された入力画像を取得する構成であってもよい。入力画像は、個別文字が並んだ文字列を含むものとする。取得部１が取得した入力画像は、切り出し部２に渡される。
【００２１】
切り出し部２は、取得部１から受け取った入力画像から、個別文字と推定される領域（部分画像）を切り出す。例えば、切り出し部２は、入力画像に対して水平軸方向の輝度ヒストグラムを求め、この輝度ヒストグラムをもとに入力画像に含まれる文字列における個別文字の分割位置を推定することにより、部分画像を切り出すことができる。なお、入力画像から部分画像を切り出す方法はこの例に限らず、公知の様々な方法を利用できる。本実施形態では、この切り出し部２による部分画像の切り出しにおいて推定誤りが生じ、個別文字には対応しない部分画像が切り出される場合があるものとする。切り出し部２によって入力画像から切り出された部分画像は、認識部３に渡されるとともに、ラベルなしデータとしてデータ保存部５に蓄積される。
【００２２】
認識部３は、文字識別器１１を用いて、切り出し部２から受け取った部分画像に対して文字認識を行う。例えば、認識部３は、部分画像から抽出した特徴量を文字識別器１１に入力することにより、部分画像がどの文字クラスに属するかを認識する。認識部３による文字認識の結果は、出力部４に渡される。
【００２３】
出力部４は、認識部３による認識結果を出力する。認識部３による認識結果は、例えば、文字識別器１１が出力する文字クラスのクラスラベルである。認識結果の出力は、例えば、表示装置によるクラスラベルの表示である。
【００２４】
データ保存部５は、文字識別器１１の学習に用いるラベルありデータを保存するとともに、切り出し部２によって入力画像から切り出された部分画像をラベルなしデータとして保存する。
【００２５】
判定部６は、非文字識別器１２を用いて、データ保存部５に蓄積されたラベルなしデータが非文字データであるか否かを判定する。非文字識別器１２は、ラベルなしデータを非文字クラスまたは文字クラスに２クラス識別する識別器である。判定部６は、例えば、ラベルなしデータから抽出した特徴量を非文字識別器１２に入力することにより、ラベルなしデータが非文字データであるか否かを判定する。
【００２６】
文字学習部７は、データ保存部５に蓄積されたラベルなしデータのうち、判定部６によって非文字データではないと判定されたラベルなしデータと、データ保存部５内のラベルありデータとを含む文字学習用データセット（第１学習用データセット）を用いた半教師あり学習により、認識部３が文字認識に用いる文字識別器１１の学習を行う。学習のアルゴリズムは文字識別器１１の識別アルゴリズムに対応し、例えば、ロジスティック回帰、サポートベクトルマシン、ニューラルネットワーク、部分空間法などを用いることができる。
【００２７】
半教師あり学習の手法は、上述の様々な手法を適用できる。ブーストラップ法により半教師あり学習を行う場合、ラベルありデータのみから学習された識別器による予測結果の確信度をもとに、一部のラベルなしデータを文字学習用データセットから除外してもよい。
【００２８】
文字識別器１１の学習は、最初に文字識別器１１を生成する場合を除き、学習によって新たに生成された識別器により既存の文字識別器１１を更新することを意味する。このとき、ラベルありデータで構成される評価用データセットを用いて、学習によって新たに生成された識別器の識別精度を評価し、その評価値が既存の文字識別器１１の評価値を上回る場合に、学習によって新たに生成された識別器により既存の文字識別器１１を更新するようにしてもよい。学習によって文字識別器１１が更新されると、以降、更新後の文字識別器１１を用いて認識部３による文字認識が行われる。
【００２９】
次に、本実施形態に係る情報処理装置の動作について、図２および図３を参照して説明する。図２は、情報処理装置による文字認識処理の手順を示すフローチャートであり、図３は、情報処理装置による文字識別器１１の学習処理の手順を示すフローチャートである。
【００３０】
まず、情報処理装置による文字認識処理について、図２を参照して説明する。ユーザにより入力画像が入力されると、取得部１が、この入力画像を取得する（ステップＳ１０１）。次に、切り出し部２が、ステップＳ１０１で取得された入力画像から部分画像を切り出す（ステップＳ１０２）。そして、切り出し部２は、ステップＳ１０２で切り出した部分画像を、ラベルなしデータとしてデータ保存部５に格納する（ステップＳ１０３）。また、この部分画像は、認識部３に渡される。
【００３１】
次に、認識部３が、文字識別器１１を用いて、ステップＳ１０２で切り出された部分画像に対する文字認識を行う（ステップＳ１０４）。そして、出力部４が、ステップＳ１０４での文字認識の認識結果を、例えば表示装置に表示させる（ステップＳ１０５）。
【００３２】
本実施形態の情報処理装置では、以上の文字認識処理が繰り返されることにより、データ保存部５内にラベルなしデータが蓄積されていく。
【００３３】
次に、情報処理装置による文字識別器１１の学習処理について、図３を参照して説明する。文字識別器１１の学習は、例えば、予め定めた時間間隔で定期的に、あるいは、情報処理装置の処理負荷が所定レベル以下であるといった条件や、データ保存部５内に蓄積されたデータ量が所定量に達したといった条件など、所定の条件を満たしたタイミングで実施される。
【００３４】
文字識別器１１の学習を行うタイミングになると、まず、文字学習部７が、空の文字学習用データセットを用意する（ステップＳ２０１）。そして、文字学習部７は、データ保存部５内のラベルありデータを文字学習用データセットに追加する（ステップＳ２０２）。
【００３５】
次に、文字学習部７は、データ保存部５内のラベルなしデータを１つ選択し（ステップＳ２０３）、選択したラベルなしデータを判定部６に渡して判定を依頼する。そして、判定部６が、非文字識別器１２を用いて、文字学習部７から受け取ったラベルなしデータが非文字データであるか否かを判定する（ステップＳ２０４）。
【００３６】
ここで、ラベルなしデータが非文字データであると判定された場合（ステップＳ２０４：Ｙｅｓ）、文字学習部７は、そのラベルなしデータを破棄し（ステップＳ２０５）、ステップＳ２０３に戻って以降の処理を繰り返す。一方、ラベルなしデータが非文字データではないと判定された場合（ステップＳ２０４：Ｎｏ）、文字学習部７は、そのラベルなしデータを文字学習用データセットに追加する（ステップＳ２０６）。
【００３７】
その後、文字学習部７は、文字学習用データセットのデータ数が所定数に達したか否かを確認し（ステップＳ２０７）、文字学習用データセットのデータ数が所定数に達していなければ（ステップＳ２０７：Ｎｏ）、ステップＳ２０３に戻って以降の処理を繰り返す。一方、文字学習用データセットのデータ数が所定数に達すると（ステップＳ２０７：Ｙｅｓ）、文字学習部７は、以上のように構築された文字学習用データセットを用いた半教師あり学習により、認識部３が文字認識に用いる文字識別器１１の学習を行う。
【００３８】
以上、具体的な例を挙げながら詳細に説明したように、本実施形態の情報処理装置は、データ保存部５に蓄積されたラベルなしデータが、文字認識の認識対象ではない非文字データ（非認識対象データ）であるか否かを判定する。そして、非文字データではないと判定されたラベルなしデータと、ラベルありデータと、を含む文字学習用データセット（第１学習用データセット）を用いた半教師あり学習により、文字認識に用いる文字識別器１１（第１識別器）の学習を行うようにしている。したがって、本実施形態の情報処理装置によれば、データ保存部５に蓄積されたラベルなしデータに非文字データが含まれている場合であっても、これらのラベルなしデータから非文字データを精度よく分離して、半教師あり学習による文字識別器１１の学習を適切に行うことができる。
【００３９】
＜第２実施形態＞
次に、第２実施形態について説明する。本実施形態は、上述の第１実施形態の情報処理装置に対し、非文字識別器１２を学習する機能を追加したものである。以下では、第１実施形態との相違点についてのみ説明する。
【００４０】
図４は、第２実施形態に係る情報処理装置の機能的な構成例を示すブロック図である。本実施形態の情報処理装置は、図１に示した第１実施形態の構成と比較して、生成部８と、非文字学習部９（第２学習部）と、が追加されている点が異なる。
【００４１】
生成部８は、データ保存部５内のデータを用いて、疑似非文字データ（疑似非認識対象データ）を生成する。疑似非文字データは、意図的に生成される疑似的な非文字データであり、非文字識別器１２の学習用データとして利用するために、非文字のラベルが付与される（つまり、ラベルありデータとして扱われる）。
【００４２】
本実施形態では、入力画像に含まれる文字列における個別文字の領域を切り出した部分画像をラベルなしデータとして蓄積するため、蓄積されたラベルなしデータに含まれる非文字データは、個別文字を過剰に分割したり、隣り合う２つの個別文字を１つの個別文字として誤って切り出したりしたものが多い。そこで、生成部８は、例えば、データ保存部５内のラベルなしデータとラベルありデータの中からランダムに選んだ１つのデータを垂直軸に沿って分割、または、ランダムに選んだ２つのデータを水平軸方向に並べて適当な範囲を切り出すといった加工を行い、得られたデータに対して非文字のラベルを付与することにより疑似非文字データを生成する。これにより、ラベルなしデータに含まれる非文字データと類似した疑似非文字データを生成することができ、この疑似非文字データを非文字識別器１２の学習用データとして利用することにより、非文字データを精度よく分離できる非文字識別器１２の学習を行うことができる。
【００４３】
非文字学習部９は、生成部８が生成した疑似非文字データと、データ保存部５内のラベルありデータの少なくとも一部と、を含む非文字学習用データセット（第２学習用データセット）を用いた教師あり学習により、ラベルなしデータを非文字クラスまたは文字クラスに２クラス識別する非文字識別器１２の学習を行う。ラベルありデータの中には非文字ラベルの付与された非文字データが含まれていてもよい。学習のアルゴリズムは非文字識別器１２の識別アルゴリズムに対応し、例えば、ロジスティック回帰、サポートベクトルマシン、ニューラルネットワーク、部分空間法などを用いることができる。
【００４４】
本実施形態では、文字学習部７が文字識別器１１の学習を行うのに先立ち、まず、非文字学習部９が非文字識別器１２の学習を行う。そして、学習された非文字識別器１２を用いて、判定部６が、データ保存部５内のラベルなしデータが非文字データであるか否かを判定し、非文字データではないと判定されたラベルなしデータとラベルありデータとを含む文字学習用データセットを用いた半教師あり学習により、文字識別器１１の学習が行われる。
【００４５】
図５は、本実施形態の情報処理装置による非文字識別器１２の学習処理の手順を示すフローチャートである。非文字識別器１２の学習は文字識別器１１の学習に先立って行われる処理であるため、非文字識別器１２の学習を行うタイミングは上述の文字識別器１１の学習を行うタイミングと同様である。
【００４６】
非文字識別器１２の学習を行うタイミングになると、まず、非文字学習部９が、空の非文字学習用データセットを用意する（ステップＳ３０１）。そして、非文字学習部９は、データ保存部５内のラベルありデータを非文字学習用データセットに追加する（ステップＳ３０２）。
【００４７】
次に、非文字学習部９は、生成部８に疑似非文字データの生成を指示する。生成部８は、非文字学習部９の指示に応じて、データ保存部５内のデータを用いて疑似非文字データを生成し、非文字学習部９に渡す（ステップＳ３０３）。そして、非文字学習部９は、生成部８から受け取った疑似非文字データを非文字学習用データセットに追加する（ステップＳ３０４）。
【００４８】
その後、非文字学習部９は、非文字学習用データセットのデータ数が所定数に達したか否かを確認し（ステップＳ３０５）、非文字学習用データセットのデータ数が所定数に達していなければ（ステップＳ３０５：Ｎｏ）、ステップＳ３０３に戻って以降の処理を繰り返す。一方、非文字学習用データセットのデータ数が所定数に達すると（ステップＳ３０５：Ｙｅｓ）、非文字学習部９は、以上のように構築された非文字学習用データセットを用いた教師あり学習により、ラベルなしデータを非文字クラスまたは文字クラスに２クラス識別する非文字識別器１２の学習を行う。
【００４９】
非文字識別器１２の学習が終了すると、上述の第１実施形態と同様に文字学習部７による文字識別器１１の学習が行われるが、この文字識別器１１の学習処理は、図３に示した処理と同様であるため説明を省略する。
【００５０】
以上説明したように、本実施形態の情報処理装置は、データ保存部５内のデータを用いて疑似非文字データを生成し、この疑似非文字データとラベルありデータとを含む非文字学習用データセットを用いた教師あり学習により、ラベルなしデータを非文字クラスまたは文字クラスに２クラス識別する非文字識別器１２の学習を行うようにしている。したがって、本実施形態の情報処理装置によれば、非文字識別器１２の学習を適切に行って、データ保存部５に蓄積されたラベルなしデータから非文字データを分離する精度を向上させることができる。
【００５１】
なお、以上の説明では、ラベルなしデータを非文字クラスまたは文字クラスに２クラス識別する非文字識別器１２を学習（生成）するようにしているが、ラベルなしデータを非文字クラスと文字識別器１１が扱う本来識別すべき文字クラスのいずれかに多クラス識別する非文字識別器１２を学習（生成）するようにしてもよい。また、この場合、非文字クラスを、非文字の形態をさらに詳細化した複数のサブクラスに分割してもよい。非文字識別器１２がラベルなしデータを多クラス識別する構成とすることにより、２クラス識別の場合と比較して、非文字データの分離精度をさらに向上させることができる。
【００５２】
＜第３実施形態＞
次に、第３実施形態について説明する。本実施形態は、上述の第２実施形態と同様に非文字識別器１２を学習する機能を持つが、非文字識別器１２の学習を半教師あり学習により行う点が第２実施形態と異なる。以下では、第１実施形態や第２実施形態との相違点についてのみ説明する。
【００５３】
図６は、第３実施形態に係る情報処理装置の機能的な構成例を示すブロック図である。本実施形態の情報処理装置の構成は、図４に示した第２実施形態の構成と同様であるが、データ保存部５にラベルありデータが保存されておらず、データ保存部５内のラベルなしデータを用いた半教師あり学習により非文字識別器１２の学習を行う。このため、非文字学習部９が既存の文字識別器１１を利用する。既存の文字識別器１１は、例えば、ラベルありデータを用いた教師あり学習により学習（生成）されたものとする。
【００５４】
非文字識別器１２の半教師あり学習は、例えば、生成部８により生成された疑似非文字データ（非文字のラベルが付与されたラベルありデータ）と、データ保存部５内のラベルなしデータのうち、既存の文字識別器１１でクラス識別したときの確信度が所定の閾値以上のものとを含む非文字学習用データセットを用いて実施することができる。
【００５５】
図７は、本実施形態の情報処理装置による非文字識別器１２の学習処理の手順を示すフローチャートである。
【００５６】
非文字識別器１２の学習を行うタイミングになると、まず、非文字学習部９が、空の非文字学習用データセットを用意する（ステップＳ４０１）。次に、非文字学習部９は、データ保存部５内のラベルなしデータについて、文字識別器１１を用いてクラス識別したときの確信度を求め、確信度が閾値以上のラベルなしデータを第１所定数選択して、これらを非文字学習用データセットに追加する（ステップＳ４０２）。
【００５７】
次に、非文字学習部９は、生成部８に疑似非文字データの生成を指示する。生成部８は、非文字学習部９の指示に応じて、データ保存部５内のデータを用いて上述の第２実施形態と同様の方法により疑似非文字データを生成し、非文字学習部９に渡す（ステップＳ４０３）。そして、非文字学習部９は、生成部８から受け取った疑似非文字データを非文字学習用データセットに追加する（ステップＳ４０４）。
【００５８】
その後、非文字学習部９は、非文字学習用データセットのデータ数が第２所定数に達したか否かを確認し（ステップＳ４０５）、非文字学習用データセットのデータ数が第２所定数に達していなければ（ステップＳ４０５：Ｎｏ）、ステップＳ４０３に戻って以降の処理を繰り返す。一方、非文字学習用データセットのデータ数が第２所定数に達すると（ステップＳ４０５：Ｙｅｓ）、非文字学習部９は、以上のように構築された非文字学習用データセットを用いた半教師あり学習により、非文字識別器１２の学習を行う。
【００５９】
非文字識別器１２の学習が終了すると、上述の第１実施形態と同様に文字学習部７による文字識別器１１の学習が行われるが、本実施形態では、データ保存部５内にラベルありデータが保存されていないため、ラベルありデータを含まない第１学習用データセットと、既存の文字識別器１１とを用いた半教師あり学習により、文字識別器１１の学習を行う。既存の文字識別器１１は、上述のように、ラベルありデータを用いた教師あり学習によって事前に学習された識別器である。本実施形態では、例えば、第１学習用データセットに含まれるラベルなしデータを既存の文字識別器１１を用いてクラス識別し、識別結果をラベルなしデータのクラスラベルとして、既存の文字識別器１１の学習を行う。
【００６０】
以上説明したように、本実施形態の情報処理装置は、データ保存部５内のデータを用いて疑似非文字データを生成し、この疑似非文字データと、文字クラスの確信度が閾値以上のラベルなしデータとを含む非文字学習用データセットを用いた半教師あり学習により、非文字識別器１２の学習を行うようにしている。したがって、本実施形態の情報処理装置によれば、例えば、文字クラスのクラスラベルが付与されたラベルありデータを十分に確保できない場合であっても、非文字識別器１２の学習を適切かつ効率的に行って、データ保存部５に蓄積されたラベルなしデータから非文字データを分離する精度を向上させることができる。また、ラベルありデータを用いずに文字識別器１１や非文字識別器１２の学習を行うため、学習に必要なメモリ容量を削減することができる。
【００６１】
なお、以上の説明では、データ保存部５内にラベルありデータが保存されていないことを前提として、非文字識別器１２の半教師あり学習を行うために、生成部８により生成された疑似非文字データと、文字識別器１１でクラス識別したときの確信度が所定の閾値以上のラベルなしデータとを含む非文字学習用データセットを用いるようにしているが、データ保存部５内にラベルありデータが保存されている場合には、疑似非文字データとラベルなしデータに加えて、さらに、データ保存部５内のラベルありデータの少なくとも一部を含む非文字学習用データセットを用いた半教師あり学習により、非文字識別器１２の学習を行うようにしてもよい。
【００６２】
＜第４実施形態＞
次に、第４実施形態について説明する。本実施形態は、上述の第２実施形態や第３実施形態と同様に非文字識別器１２を学習する機能を持つが、学習用データとして用いる疑似非文字データを生成する方法が第２実施形態や第３実施形態と異なる。すなわち、第２実施形態や第３実施形態では、データ保存部５内のデータを加工して疑似非文字データを生成したが、本実施形態では、取得部１が取得した入力画像、つまり、切り出し部２によって部分画像が切り出される前の入力画像を加工して疑似非文字データを生成する。
【００６３】
図８は、第４実施形態に係る情報処理装置の機能的な構成例を示すブロック図である。本実施形態の情報処理装置の構成は、図４に示した第２実施形態の構成と同様であるが、データ保存部５内には、ラベルありデータとラベルなしデータだけでなく、取得部１により取得された入力画像（入力データ）が保存される。すなわち、本実施形態では、取得部１が入力画像を取得するたびに、その入力画像を切り出し部２に渡すとともに、データ保存部５に格納する。
【００６４】
また、本実施形態では、生成部８が、データ保存部５内の入力画像を用いて、疑似非文字データを生成する。例えば、生成部８は、データ保存部５内の入力画像に対してその一部をランダムに切り出すといった加工を行い、得られたデータに非文字のラベルを付与することにより疑似非文字データを生成する。この際、生成部８は、入力画像を加工して得られたデータを既存の非文字識別器１２で識別し、非文字の確信度が所定の閾値以上の場合に、疑似非文字データとして採用するようにしてもよい。また、非文字の確信度が閾値以上であっても、その確信度が高すぎる場合は学習用データとしての利用価値が低いため、疑似非文字データから除外してもよい。
【００６５】
図９は、本実施形態の情報処理装置による非文字識別器１２の学習処理の手順を示すフローチャートである。図９のステップＳ５０１、ステップＳ５０２、ステップＳ５０４〜ステップＳ５０６の処理は、図５のステップ３０１、ステップＳ３０２、ステップＳ３０４〜ステップＳ３０６の処理と同様である。本実施形態では、ステップＳ５０３において、生成部８が非文字学習部９の指示に応じて疑似非文字データを生成する際に、データ保存部５内の入力画像を用いて疑似非文字データを生成するようにしている点が、図５に示した例とは異なる。
【００６６】
なお、図９のフローチャートで示す例は、上述の第２実施形態と同様に、非文字識別器１２の学習を教師あり学習により行う例であるが、上述の第３実施形態と同様に、非文字識別器１２の学習を半教師あり学習に行うようにしてもよい。この場合、図９のステップＳ５０２、ステップＳ５０５、ステップＳ５０６の処理を、図７のステップＳ４０２、ステップＳ４０５、ステップＳ４０６の処理に置き換えればよい。
【００６７】
以上説明したように、本実施形態の情報処理装置は、取得部１が取得した入力画像、つまり、切り出し部２によって部分画像が切り出される前の入力画像を加工して疑似非文字データを生成するようにしているので、データ保存部５内のラベルなしデータやラベルありデータを用いて疑似非文字データを生成する第２実施形態や第３実施形態と比較して、疑似非文字データの生成をより簡便に行うことができる。
【００６８】
＜補足説明＞
上述した各実施形態の情報処理装置は、例えば、汎用のコンピュータを基本ハードウェアとして用いることで実現可能である。すなわち、上述の情報処理装置の各部の機能は、汎用のコンピュータに搭載された１以上のプロセッサにプログラムを実行させることにより実現することができる。このとき、情報処理装置は、上記のプログラムをコンピュータに予めインストールすることで実現してもよいし、コンピュータ読み取り可能な記憶媒体に上記のプログラムを記憶して、あるいはネットワークを介して上記のプログラムを配布して、このプログラムをコンピュータに適宜インストールすることで実現してもよい。
【００６９】
図１０は、上述した各実施形態の情報処理装置のハードウェア構成例を示すブロック図である。情報処理装置は、例えば図１０に示すように、ＣＰＵ（Central  Processing  Unit）などのプロセッサ１０１と、ＲＡＭ（Random  Access  Memory）やＲＯＭ（Read  Only  Memory）などのメモリ１０２と、ＨＤＤ（Hard  Disk  Drive）やＳＳＤ（Solid  State  Drive）などのストレージデバイス１０３と、液晶パネルなどの表示装置１０６やキーボードやポインティングデバイスなどの入力装置１０７といった機器を接続するための機器Ｉ／Ｆ１０４と、装置外部と通信を行う通信Ｉ／Ｆ１０５と、これら各部を接続するバス１０８とを備えた一般的なコンピュータとしてのハードウェア構成を有する。
【００７０】
上述した各実施形態の情報処理装置を図１０に示すハードウェア構成により実現する場合、例えば、プロセッサ１０１がメモリ１０２を利用して、ストレージデバイス１０３などに格納されたプログラムを読み出して実行することにより、上述の取得部１、切り出し部２、認識部３、出力部４、判定部６、文字学習部７、生成部８および非文字学習部９などの各部の機能を実現することができる。また、例えばストレージデバイス１０３を用いて、上述のデータ保存部５の機能を実現することができる。また、上述の文字識別器１１や非文字識別器１２は、例えばストレージデバイス１０３などに格納しておくことができる。
【００７１】
なお、上述の各実施形態の情報処理装置の各部の機能は、その一部または全部を、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field-Programmable  Gate  Array）などの専用のハードウェア（汎用のプロセッサではなく専用のプロセッサ）により実現することもできる。また、複数のプロセッサを用いて上述した各部の機能を実現する構成であってもよい。
【００７２】
また、上述の各実施形態の情報処理装置は、単一のコンピュータにより実現する場合に限らず、複数のコンピュータに機能を分散して実現することもできる。例えば図１１に示すように、ユーザが使用する端末１１０とサーバ１２０とがネットワーク１３０を介して接続される構成の情報処理装置としてもよい。この場合、例えば、端末１１０に取得部１、切り出し部２、認識部３および出力部４を設け、サーバ１２０にデータ保存部５、判定部６、文字学習部７、生成部８および非文字学習部９などを設ける構成などが考えられる。
【００７３】
以上、本発明の実施形態を説明したが、この実施形態は例として提示したものであり、発明の範囲を限定することは意図していない。この新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７４】
１  取得部
２  切り出し部
３  認識部
４  出力部
５  データ保存部
６  判定部
７  文字学習部
８  生成部
９  非文字学習部
１１  文字識別器
１２  非文字識別器
【図１】
2020030752.tif 000003
【図２】
2020030752.tif 000004
【図３】
2020030752.tif 000005
【図４】
2020030752.tif 000006
【図５】
2020030752.tif 000007
【図６】
2020030752.tif 000008
【図７】
2020030752.tif 000009
【図８】
2020030752.tif 000010
【図９】
2020030752.tif 000011
【図１０】
2020030752.tif 000012
【図１１】
2020030752.tif 000013