(57)【要約】【課題】適切な訓練用データを得ること。【解決手段】訓練装置は、第１のニューラルネットワークで実現される第１の予測モデルによって、入力データから予測結果を示すデータを出力する第１の予測手段と、第２のニューラルネットワークで実現される第２の予測モデルによって、前記入力データに対応する教師データに基づいて、該教師データが表す正解のズレを示す情報を出力する第２の予測手段と、前記ズレを示す情報に基づいて前記教師データを修正した修正教師データを作成する修正手段と、前記予測結果を示すデータと前記修正教師データとの誤差に基づいて、前記第１のニューラルネットワークと前記第２のニューラルネットワークの少なくともいずれか１つを訓練する訓練手段と、を有する。【選択図】図１
2020135141.tif 000002
【特許請求の範囲】
【請求項１】
第１のニューラルネットワークで実現される第１の予測モデルによって、入力データから予測結果を示すデータを出力する第１の予測手段と、
第２のニューラルネットワークで実現される第２の予測モデルによって、前記入力データに対応する教師データに基づいて、該教師データが表す正解のズレを示す情報を出力する第２の予測手段と、
前記ズレを示す情報に基づいて前記教師データを修正した修正教師データを作成する修正手段と、
前記予測結果を示すデータと前記修正教師データとの誤差に基づいて、前記第１のニューラルネットワークと前記第２のニューラルネットワークの少なくともいずれか１つを訓練する訓練手段と、
を有する訓練装置。
【請求項２】
前記訓練手段は、
前記第１のニューラルネットワークと前記第２のニューラルネットワークとを同時に訓練する、請求項１に記載の訓練装置。
【請求項３】
前記訓練手段は、
前記第１のニューラルネットワークのパラメータ更新式の学習係数を、前記第２のニューラルネットワークのパラメータ更新式の学習係数よりも高くして、前記第１のニューラルネットワークと前記第２のニューラルネットワークとを訓練する第１の訓練を行った後、
前記第１のニューラルネットワークのパラメータ更新式の学習係数と、前記第２のニューラルネットワークのパラメータ更新式の学習係数との差を前記第１の訓練の場合よりも小さくして、さらに前記第１のニューラルネットワークと前記第２のニューラルネットワークとを訓練する第２の訓練を行う、請求項２に記載の訓練装置。
【請求項４】
前記第１の訓練を行った後、
前記第２のニューラルネットワークのパラメータ更新式の学習係数を、前記第１のニューラルネットワークのパラメータ更新式の学習係数よりも高くして、前記第１のニューラルネットワークと前記第２のニューラルネットワークとを訓練する第３の訓練を行い、
前記第１のニューラルネットワークのパラメータ更新式の学習係数と、前記第２のニューラルネットワークのパラメータ更新式の学習係数との差を前記第１の訓練の場合よりも小さくして、前記第１のニューラルネットワークと前記第２のニューラルネットワークとを同時に訓練する、請求項３に記載の訓練装置。
【請求項５】
第１のニューラルネットワークで実現される第１の予測モデルによって、入力データから予測結果を示すデータを出力する第１の予測手段と、
第２のニューラルネットワークで実現される第２の予測モデルによって、前記入力データに対応する教師データに基づいて、該教師データが表す正解のズレを示す情報を算出し、算出した前記ズレを示す情報に基づいて前記教師データを修正した修正教師データを出力する第２の予測手段と、
前記予測結果を示すデータと前記修正教師データとの誤差に基づいて、前記第１のニューラルネットワークと前記第２のニューラルネットワークの少なくともいずれか１つを訓練する訓練手段と、
を有する訓練装置。
【請求項６】
第１のニューラルネットワークで実現される第１の予測モデルによって、入力データから予測結果を示すデータを出力する第１の予測手段と、
第２のニューラルネットワークで実現される第２の予測モデルによって、前記入力データに対応する教師データに基づいて、該教師データが表す正解のズレを示す情報を出力する第２の予測手段と、
前記ズレを示す情報に基づいて前記予測結果を示すデータを修正した修正予測結果データを作成する修正手段と、
前記修正予測結果データと前記教師データとの誤差に基づいて、前記第１のニューラルネットワークと前記第２のニューラルネットワークの少なくともいずれか１つを訓練する訓練手段と、
を有する訓練装置。
【請求項７】
第１のニューラルネットワークで実現される第１の予測モデルによって、入力データから予測結果を示すデータを出力する第１の予測手順と、
第２のニューラルネットワークで実現される第２の予測モデルによって、前記入力データに対応する教師データに基づいて、該教師データが表す正解のズレを示す情報を出力する第２の予測手順と、
前記ズレを示す情報に基づいて前記教師データを修正した修正教師データを作成する修正手順と、
前記予測結果を示すデータと前記修正教師データとの誤差に基づいて、前記第１のニューラルネットワークと前記第２のニューラルネットワークの少なくともいずれか１つを訓練する訓練手順と、
をコンピュータが実行する訓練方法。
【請求項８】
第１のニューラルネットワークで実現される第１の予測モデルによって、入力データから予測結果を示すデータを出力する予測手段を有し、
前記予測結果は、
訓練用入力データに対応する教師データに基づいて、該教師データが表す正解のズレを示す情報を出力し、
前記ズレを示す情報に基づいて前記教師データを修正した修正教師データを作成し、
前記予測結果を示すデータと前記修正教師データとに基づいて、訓練された第２のニューラルネットワークで実現される第２の予測モデルによって、修正される、
予測装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、訓練装置、訓練方法及び予測装置に関する。
【背景技術】
【０００２】
機械学習におけるモデルの訓練方法（学習方法）として、教師あり学習が知られている。教師あり学習では訓練データセット（モデルへの入力データと、この入力データをモデルに入力した場合における予測結果の正解を示す教師データとの組の集合）を用いてモデルが訓練される。なお、訓練データセットは学習データセットと称されることもある。
【０００３】
しかしながら、真の正解に対して教師データが不正確である場合があり、このような場合、訓練によって得られたモデルの予測精度が低下することがある。例えば、セマンティックセグメンテーションを実現するモデルを訓練する場合、教師データである画像中の物体に対してラベル付け（アノテーション）された輪郭が、当該物体の実際の輪郭（つまり、真の正解）とズレており、その結果、訓練によって得られたモデルの予測精度が低下することがある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−１２７６３５号公報
【特許文献２】特開平５−５４０１４号公報
【特許文献３】特開２０１２−１５９８８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本開示は、上記の点に鑑みてなされたもので、適切な訓練用データを得ることを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、一実施形態に係る訓練装置は、第１のニューラルネットワークで実現される第１の予測モデルによって、入力データから予測結果を示すデータを出力する第１の予測手段と、第２のニューラルネットワークで実現される第２の予測モデルによって、前記入力データに対応する教師データに基づいて、該教師データが表す正解のズレを示す情報を出力する第２の予測手段と、前記ズレを示す情報に基づいて前記教師データを修正した修正教師データを作成する修正手段と、前記予測結果を示すデータと前記修正教師データとの誤差に基づいて、前記第１のニューラルネットワークと前記第２のニューラルネットワークの少なくともいずれか１つを訓練する訓練手段と、を有する。
【図面の簡単な説明】
【０００７】
【図１】第一の実施形態に係る訓練装置の機能構成の一例を示す図である。
【図２】訓練処理の流れの一例を示す図である。
【図３】第二の実施形態に係る訓練装置の機能構成の一例を示す図である。
【図４】第三の実施形態に係る訓練装置の機能構成の一例を示す図である。
【図５】本発明の効果の一例を示す図である。
【図６】各実施形態に係る訓練装置のハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【０００８】
以下、本発明の各実施形態について、図面を参照しながら詳細に説明する。以降の各実施形態では、真の正解に対して教師データが不正確な場合であっても、予測精度の高い訓練済モデルを得ることが可能な訓練装置１０について説明する。
【０００９】
以降の各実施形態では、タスクの一例としてセマンティックセグメンテーションを想定して、主に、セマンティックセグメンテーションを実現する訓練済モデルを得る場合について説明する。したがって、以降では、入力画像をモデルへの入力データ、教師画像を教師データとして、入力画像と教師画像との組を訓練データとする。つまり、本明細書においては、入力データを入力画像、教師データを教師画像、教師データが表す正解のズレを教師画像のズレと呼ぶことがある。なお、後述する教師データを修正した修正教師データを修正教師画像と呼ぶことがある。
【００１０】
教師画像は、例えば、入力画像中の各物体に対して、ラベル付けされた輪郭を人手又は所定の手法により自動的に付与した画像である。なお、物体に対してラベル付けされた輪郭を自動的に付与する手法としては、例えば、物体が配置された実空間を撮影した実写画像に対して、実空間と同一の物体が配置された三次元ＣＧ（コンピュータグラフィック）空間を撮影したＣＧ画像を重ね合わせることで、実写画像中の各物体に対してラベル付けされた輪郭を付与する手法が挙げられる。
【００１１】
また、以降の各実施形態では、教師データのズレとして、教師画像中でのラベル付けされた物体の輪郭と当該物体の実際の輪郭との間でズレが生じているものとする。また、教師データのズレを教師画像のズレと呼ぶことがある。本明細書において、教師データが表す正解のズレ、又は教師データのズレとは、教師データが表す正解と真の正解とのズレをいう。なお、この教師データのズレは真の正解が入手できない状況下において計算することは困難であるが、本開示においては、真の正解が入手できない場合であっても、真の正解とのズレを予測するために、最終的に予測を出力する第１の予測モデルの予測精度が高まるように、第２の予測モデルにより教師データのズレを修正する。これと教師データが表す正解と真の正解とのズレを修正（教師データのズレを修正）することとが近似であるものとする。また、教師データの修正とは、完全に修正されることに限られず、教師データのズレが、入力された教師データよりも有利になるように修正されていればよい。
【００１２】
なお、セマンティックセグメンテーションを想定した場合、教師画像のズレとは、例えば、教師画像中の物体の輪郭と当該物体の実際の輪郭とがズレていることを意味する。本明細書において、教師画像中の物体の輪郭と当該物体の実際の輪郭とがズレているとは、同一物体間で、実際の輪郭に対して教師画像中の輪郭が適切に設定されていないこと、例えば、実際の輪郭に対して教師画像中の輪郭が何れかの方向に平行移動していること、又は教師画像中の輪郭と実際の輪郭との大きさが異なること等を意味する。ただし、教師画像中の物体の輪郭を実際の輪郭の位置に修正、例えば平行移動させた結果、修正後の輪郭（例えば平行移動後の輪郭）と実際の輪郭とが完全に一致している必要はなく、教師画像中の物体の輪郭と実際の輪郭との間で輪郭の形状自体に所定の範囲内の誤差があってもよい。つまり、修正後の教師画像の輪郭のズレが、入力された教師画像よりも有利になるように修正されていればよい。
【００１３】
また、教師画像のズレとして、例えば、以下の条件１〜条件４が仮定されているものとする。
【００１４】
条件１  教師画像のズレが所定の範囲内であること。
【００１５】
ここで、ズレが所定の範囲内であるとは、入力画像と教師画像との組を訓練データとして、これらの訓練データを用いてモデルの訓練を行った場合、特に後述するＳｔｅｐ１５のデータ予測部１０１の訓練の際に、訓練を適切に行うことができることを指す。また、例えば訓練済モデルの予測精度が所定の値以上となることである。なお、この所定の値は訓練済モデルで実現されるタスクや予測精度の指標値等によって異なり、例えば、ユーザ等によって設定される。
【００１６】
条件２  教師画像のズレがローカルな変換（つまり、局所的な変換）で修正できること。なお、ローカルな変換としては、例えば、ズレを含む局所的な範囲でのアフィン変換や、オプティカルフロー（optical flow）で表現可能なモーフィング等が挙げられる。
【００１７】
条件３  訓練に用いられる教師画像でズレに偏りが少ないこと。又は、偏りが少なくなるような前処理が可能であること。
【００１８】
ここで、ズレに偏りが少ないとは、訓練に用いられる教師画像間で、教師画像のズレの修正が必要ではあるが、モデルを用いない場合には修正が困難な程度に多様なズレが存在することをいう。例えば、ズレがランダムに生じている（又は、ランダムに生じていると見做せる）ことを意味する。
【００１９】
条件４  教師画像のズレは微分可能な関数により修正可能であること。
【００２０】
なお、以下の実施形態に関する教師画像についての条件は、例えば上記の通りであるが、本開示がセマンティックセグメンテーション以外に利用される場合、条件は異なる場合がある。
【００２１】
［第一の実施形態］
以降では、訓練装置１０の第一の実施形態について説明する。
【００２２】
＜機能構成＞
まず、本実施形態に係る訓練装置１０の機能構成について、図１を参照しながら説明する。図１は、第一の実施形態に係る訓練装置１０の機能構成の一例を示す図である。
【００２３】
図１に示すように、第一の実施形態に係る訓練装置１０は、機能部として、データ予測部１０１と、ズレ予測部１０２と、修正部１０３と、訓練部１０４とを有する。
【００２４】
データ予測部１０１は、所定のタスク（例えば、セマンティックセグメンテーション）を実現するためのニューラルネットワークモデルである。データ予測部１０１は、入力データ（本実施形態においては入力画像）を入力として、予測結果（本実施形態においては入力画像中の各物体の輪郭のデータとそのラベル）を出力する。
【００２５】
ズレ予測部１０２は、教師データ（本実施形態においては教師画像）のズレを予測するためのニューラルネットワークモデルである。ここで、教師データは、最終的に推論により出力したい種類の教師用の正解の情報を含む。ズレ予測部１０２は、入力データと教師データとに基づいて、ズレの度合いを示す情報（以降、「ズレ情報」とも表す。）を出力する。
【００２６】
本明細書において、特に断りがないときには、「データに基づいて」とは各種データそのものを入力として用いる場合も含み、各種データに何等かの処理を行ったもの、例えば各種データの中間表現等を入力として用いる場合等も含む。
【００２７】
本実施形態において、教師画像のデータのズレが予測可能なデータ、例えば本実施形態においては、入力画像又は入力画像を入力して得られたデータ予測部１０１の中間表現と、教師画像とを入力として（つまり、入力データと教師データとに基づいて）、当該教師画像のズレの度合いを示す情報を出力する。ズレ情報とは、本実施形態においては、例えば、物体毎に、同一物体間で、教師画像中の輪郭が実際の輪郭に対してどの方向に何ピクセル平行移動したものであるかを示す情報である。なお、この他に、ズレ情報は、例えば、教師画像中の輪郭が実際の輪郭をどの程度の半径にてどの程度回転させたものであるかを示す情報であってもよい。
【００２８】
修正部１０３は、ズレ予測部１０２が出力したズレ情報と教師画像とを入力として（ズレ予測部１０２が出力したズレ情報と教師データとに基づいて）、教師画像のズレをズレ情報によって修正した修正教師画像（修正教師データ）を出力する。なお、上記の条件４によって、修正部１０３は、ズレ情報に基づいて、例えば、微分可能な所定の関数により教師画像を修正する。
【００２９】
訓練部１０４は、データ予測部１０１が出力した予測結果と、修正部１０３が出力した修正教師画像とを入力として（予測結果と修正教師データとに基づいて）、所定の誤差関数により予測結果と修正教師画像（修正教師データ）との誤差を算出する。なお、誤差関数は、例えば、損失関数や目的関数等と称されてもよい。
【００３０】
そして、訓練部１０４は、算出した誤差を用いて、誤差逆伝播法によりデータ予測部１０１とズレ予測部１０２との少なくともいずれか一方を訓練する。ここで、データ予測部１０１を訓練するとは、例えば、データ予測部１０１を実現するニューラルネットワークモデルのパラメータを更新することである。同様に、ズレ予測部１０２を訓練するとは、ズレ予測部１０２を実現するニューラルネットワークモデルのパラメータを更新することである。
【００３１】
＜訓練処理の流れ＞
次に、第一の実施形態に係る訓練装置１０がデータ予測部１０１及びズレ予測部１０２を訓練する処理（訓練処理）の流れについて、図２を参照しながら説明する。図２は、訓練処理の流れの一例を示す図である。
【００３２】
ステップＳ１０１：まず、本実施形態の訓練装置１０は、予測結果を出力可能なデータ予測器を得るため、データ予測部１０１を重点的に訓練する。ここで、データ予測部１０１を重点的に訓練するとは、例えば、データ予測部１０１を実現するニューラルネットワークモデルのパラメータ更新式の学習係数（learning rate）λ１を、ズレ予測部１０２を実現する（ズレ予測部１０２に含まれる）ニューラルネットワークモデルのパラメータ更新式の学習係数λ２よりも十分に高くして訓練を行うことである。なお、本ステップにおいてはデータ予測部１０１のみを訓練し、ズレ予測部１０２を訓練しない（すなわち、λ２＝０とする）こととしてもよい。
【００３３】
上記のステップＳ１０１では、より詳細には以下のＳｔｅｐ１１〜Ｓｔｅｐ１５が実行される。なお、Ｓｔｅｐ１１と、Ｓｔｅｐ１２及びＳｔｅｐ１３とは順不同である。
【００３４】
Ｓｔｅｐ１１）データ予測部１０１は、訓練装置１０に与えられた訓練データセット中の各訓練データに含まれる入力画像を入力として（入力データに基づいて）、予測結果をそれぞれ出力する。
【００３５】
Ｓｔｅｐ１２）本実施形態のズレ予測部１０２は、訓練装置１０に与えられた訓練データセット中の各訓練データに含まれる教師画像と、この教師画像に対応する入力画像とを入力として（教師データと入力データとに基づいて）、ズレ情報をそれぞれ出力する。
【００３６】
Ｓｔｅｐ１３）修正部１０３は、各ズレ情報と、これらズレ情報にそれぞれ対応する教師画像（つまり、当該ズレ情報を予測する際にズレ予測部１０２に入力された教師画像）とを入力として（ズレ情報と教師データとに基づいて）、修正教師画像をそれぞれ出力する。
【００３７】
Ｓｔｅｐ１４）訓練部１０４は、各予測結果と、これら予測結果にそれぞれ対応する修正教師画像（つまり、当該予測結果を予測する際にデータ予測部１０１に入力された入力画像に対応する教師画像を修正した修正教師画像）とを入力として（予測結果と修正教師データとに基づいて）、所定の誤差関数により誤差を算出する。
【００３８】
Ｓｔｅｐ１５）訓練部１０４は、上記のＳｔｅｐ１４で算出した誤差に基づいて、例えば誤差逆伝播法によりデータ予測部１０１とズレ予測部１０２とを訓練する。このとき、上述したように、訓練部１０４は、データ予測部１０１を実現するニューラルネットワークモデルのパラメータ更新式の学習係数λ１を、ズレ予測部１０２を実現するニューラルネットワークモデルのパラメータ更新式の学習係数λ２よりも十分に高くして、データ予測部１０１とズレ予測部１０２とを訓練する。これにより、或る程度の予測精度で予測結果（つまり、例えば、入力画像中の各物体の輪郭とそのラベル）を予測可能なデータ予測部１０１が得られる。
【００３９】
ステップＳ１０２：次に、本実施形態の訓練装置１０は、ズレ予測部１０２を重点的に訓練する。ここで、ズレ予測部１０２を重点的に訓練するとは、例えば、ズレ予測部１０２を実現するニューラルネットワークモデルのパラメータ更新式の学習係数λ２を、データ予測部１０１を実現するニューラルネットワークモデルのパラメータ更新式の学習係数λ１よりも十分に高くして訓練を行うことである。なお、本ステップにおいてはズレ予測部１０２のみを訓練し、データ予測部１０１を訓練しない（すなわち、λ１＝０とする）こととしてもよい。
【００４０】
上記のステップＳ１０２では、より詳細には以下のＳｔｅｐ２１〜Ｓｔｅｐ２５が実行される。なお、Ｓｔｅｐ２１と、Ｓｔｅｐ２２及びＳｔｅｐ２３とは順不同である。
【００４１】
Ｓｔｅｐ２１）データ予測部１０１は、訓練装置１０に与えられた訓練データセット中の各訓練データに含まれる入力画像を入力として（入力データに基づいて）、予測結果をそれぞれ出力する。
【００４２】
Ｓｔｅｐ２２）ズレ予測部１０２は、訓練装置１０に与えられた訓練データセット中の各訓練データに含まれる教師画像と、この教師画像に対応する入力画像とを入力として（教師データと入力データとに基づいて）、ズレ情報をそれぞれ出力する。
【００４３】
Ｓｔｅｐ２３）修正部１０３は、各ズレ情報と、これらズレ情報にそれぞれ対応する教師画像とを入力として（ズレ情報と教師データとに基づいて）、修正教師画像をそれぞれ出力する。
【００４４】
Ｓｔｅｐ２４）訓練部１０４は、各予測結果と、これら予測結果にそれぞれ対応する修正教師画像とを入力として、所定の誤差関数により誤差を算出する（予測結果と修正教師データとに基づいて、誤差を算出する）。
【００４５】
Ｓｔｅｐ２５）訓練部１０４は、上記のＳｔｅｐ２４で算出した誤差を用いて、誤差逆伝播法によりデータ予測部１０１とズレ予測部１０２とを訓練する。このとき、上述したように、訓練部１０４は、ズレ予測部１０２を実現するニューラルネットワークモデルのパラメータ更新式の学習係数λ２を、データ予測部１０１を実現するニューラルネットワークモデルのパラメータ更新式の学習係数λ１よりも十分に高くして、データ予測部１０１とズレ予測部１０２とを訓練する。これにより、或る程度の予測精度でズレ情報を予測可能なズレ予測部１０２が得られる。なお、上記のステップＳ１０１で訓練されたデータ予測部１０１の予測精度が必ずしも高くない状態であっても、予測結果と教師画像（教師データ）とのズレが無い状態が誤差も最小化された状態となることが期待できるため、データ予測部１０１の訓練と同じ誤差関数を用いてズレ予測部１０２も訓練することができる。
【００４６】
ステップＳ１０３：最後に、本実施形態の訓練装置１０は、データ予測部１０１及びズレ予測部１０２の両方の学習係数を低めにして、データ予測部１０１とズレ予測部１０２とを訓練する。すなわち、訓練装置１０は、データ予測部１０１及びズレ予測部１０２の全体をファインチューニング（fine tuning）する。ここで、学習係数を低めにするとは、例えば、学習係数λ１を上記のステップＳ１０１で用いた値よりも低く、かつ、上記のステップＳ１０２で用いた値よりも高くし、学習係数λ２を上記のステップＳ１０２で用いた値よりも低く、かつ、上記のステップＳ１０１で用いた値よりも高くすることである。なお、これらの学習係数を同一（つまり、λ１＝λ２）としてもよい。
【００４７】
上記のステップＳ１０３では、より詳細には以下のＳｔｅｐ３１〜Ｓｔｅｐ３５が実行される。なお、Ｓｔｅｐ３１と、Ｓｔｅｐ３２及びＳｔｅｐ３３とは順不同である。
【００４８】
Ｓｔｅｐ３１）データ予測部１０１は、訓練装置１０に与えられた訓練データセット中の各訓練データに含まれる入力画像を入力として（入力データに基づいて）、予測結果をそれぞれ出力する。
【００４９】
Ｓｔｅｐ３２）ズレ予測部１０２は、訓練装置１０に与えられた訓練データセット中の各訓練データに含まれる教師画像と、この教師画像に対応する入力画像とを入力として（教師データと入力データとに基づいて）、ズレ情報をそれぞれ出力する。
【００５０】
Ｓｔｅｐ３３）修正部１０３は、各ズレ情報と、これらズレ情報にそれぞれ対応する教師画像とを入力として（ズレ情報と教師データとに基づいて）、修正教師画像をそれぞれ出力する。
【００５１】
Ｓｔｅｐ３４）訓練部１０４は、各予測結果と、これら予測結果にそれぞれ対応する修正教師画像とを入力として、所定の誤差関数により誤差を算出する（予測結果と修正教師データとに基づいて、誤差を算出する）。
【００５２】
Ｓｔｅｐ３５）訓練部１０４は、上記のＳｔｅｐ３４で算出した誤差を用いて、誤差逆伝播法によりデータ予測部１０１とズレ予測部１０２とを訓練する。このとき、上述したように、訓練部１０４は、データ予測部１０１を実現するニューラルネットワークモデルのパラメータ更新式の学習係数λ１と、ズレ予測部１０２を実現するニューラルネットワークモデルのパラメータ更新式の学習係数λ２とを共に低めにして、データ予測部１０１とズレ予測部１０２とを訓練する。これにより、所望のタスク（例えば、セマンティックセグメンテーション）を高い精度で実現する訓練済モデルとして、データ予測部１０１が得られることが期待できる。
【００５３】
なお、例えば、各教師画像のズレが極端に小さいような場合や、データ予測部１０１を実現するニューラルネットワークのモデルの構造が単純な場合等には、上記のステップＳ１０１及びステップＳ１０３のみ行ってもよいし、ステップＳ１０３のみ行うことで、適切な予測装置とすることができる。
【００５４】
［第二の実施形態］
以降では、訓練装置１０の第二の実施形態について説明する。なお、第二の実施形態では、主に、第一の実施形態との相違点について説明し、第一の実施形態と同様の構成要素についてはその説明を省略する。
【００５５】
＜機能構成＞
本実施形態に係る訓練装置１０の機能構成について、図３を参照しながら説明する。図３は、第二の実施形態に係る訓練装置１０の機能構成の一例を示す図である。
【００５６】
図３に示すように、第二の実施形態に係る訓練装置１０は、機能部として、データ予測部１０１と、ズレ予測部１０２と、訓練部１０４とを有する。すなわち、第二の実施形態に係る訓練装置１０は、修正部１０３を有しない。なお、データ予測部１０１及び訓練部１０４は第一の実施形態と同様であるため、その説明を省略する。
【００５７】
本実施形態のズレ予測部１０２は、教師画像と入力画像（又は、データ予測部１０１の中間表現）とを入力として、修正教師画像を出力する。すなわち、第二の実施形態に係るズレ予測部１０２は、第一の実施形態に係るズレ予測部１０２と修正部１０３とが一体で構成された機能部である。
【００５８】
＜訓練処理の流れ＞
次に、第二の実施形態に係る訓練装置１０の訓練処理について説明する。第二の実施形態に係る訓練装置１０は、第一の実施形態と同様に図２のステップＳ１０１〜ステップＳ１０３を実行するが、Ｓｔｅｐ１２及びＳｔｅｐ１３と、Ｓｔｅｐ２２及びＳｔｅｐ２３と、Ｓｔｅｐ３２及びＳｔｅｐ３３との代わりに、以下のＳｔｅｐ４１をそれぞれ実行する。
【００５９】
Ｓｔｅｐ４１）ズレ予測部１０２は、訓練装置１０に与えられた訓練データセット中の各訓練データに含まれる教師画像と、この教師画像に対応する入力画像とを入力として、修正教師画像をそれぞれ出力する。
【００６０】
［第三の実施形態］
以降では、訓練装置１０の第三の実施形態について説明する。なお、第三の実施形態では、主に、第一の実施形態との相違点について説明し、第一の実施形態と同様の構成要素についてはその説明を省略する。
【００６１】
＜機能構成＞
本実施形態に係る訓練装置１０の機能構成について、図４を参照しながら説明する。図４は、第三の実施形態に係る訓練装置１０の機能構成の一例を示す図である。
【００６２】
図４に示すように、第三の実施形態に係る訓練装置１０は、機能部として、データ予測部１０１と、ズレ予測部１０２と、修正部１０３と、訓練部１０４とを有する。なお、データ予測部１０１及びズレ予測部１０２は第一の実施形態と同様であるため、その説明を省略する。
【００６３】
本実施形態の修正部１０３は、データ予測部１０１が出力した予測結果と、ズレ予測部１０２が出力したズレ情報とを入力として、予測結果をズレ情報によって修正した修正予測結果を出力する。なお、上記の条件４によって、修正部１０３は、ズレ情報を用いて、微分可能な所定の関数により予測結果を修正する。
【００６４】
訓練部１０４は、修正部１０３が出力した修正予測結果と、教師画像とを入力として、所定の誤差関数により修正予測結果と教師画像との誤差を算出する。そして、訓練部１０４は、算出した誤差を用いて、誤差逆伝播法によりデータ予測部１０１とズレ予測部１０２とを訓練する。
【００６５】
＜訓練処理の流れ＞
次に、第三の実施形態に係る訓練装置１０の訓練処理について説明する。第三の実施形態に係る訓練装置１０は、第一の実施形態と同様に図２のステップＳ１０１〜ステップＳ１０３を実行するが、Ｓｔｅｐ１３及びＳｔｅｐ１４と、Ｓｔｅｐ２３及びＳｔｅｐ２４と、Ｓｔｅｐ３３及びＳｔｅｐ３４との代わりに、以下のＳｔｅｐ５１及びＳｔｅｐ５２をそれぞれ実行する。
【００６６】
Ｓｔｅｐ５１）修正部１０３は、各ズレ情報と、これらズレ情報にそれぞれ対応する予測結果（つまり、当該ズレ情報を予測する際にズレ予測部１０２に入力された教師画像に対応する入力画像がデータ予測部１０１に入力されることで得られた予測結果）とを入力として、修正予測結果をそれぞれ出力する。
【００６７】
Ｓｔｅｐ５２）訓練部１０４は、各修正予測結果と、これらの修正予測結果にそれぞれ対応する教師画像（つまり、修正前の予測結果を予測する際にデータ予測部１０１に入力された入力画像に対応する教師画像）とを入力として、所定の誤差関数により誤差を算出する。
【００６８】
ここで、上記の第一の実施形態〜第三の実施形態に係る訓練装置１０によって訓練されたズレ予測部１０２を用いて、教師画像のズレを修正した場合の一例を図５に示す。図５では、複数の物体が配置されている或る部屋を撮影した画像を入力画像とした場合に、この入力画像に対応する教師画像中の各物体の修正前の輪郭（つまり、修正前の教師データ）と、修正後の輪郭（つまり、修正後の教師データ）とを示している。
【００６９】
図５に示すように、教師画像中の各物体について、修正後の輪郭の方が、実際の物体の輪郭により近いことがわかる。これにより、訓練済みのズレ予測部１０２（又は、訓練済みのズレ予測部１０２及び修正部１０３）によって教師画像中の各物体の輪郭（教師データ）が適切に修正されていることがわかる。
【００７０】
このように、データ予測部１０１から出力される予測結果の予測精度低下を低減することができる。また、本実施形態により得られたデータ予測部１０１により高精度な予測結果を生成することで、当該予測結果を用いた機械学習の効率を高めることができる。
【００７１】
＜ハードウェア構成＞
次に、上記の各実施形態に係る訓練装置１０のハードウェア構成について、図６を参照しながら説明する。図６は、各実施形態に係る訓練装置１０のハードウェア構成の一例を示す図である。
【００７２】
図６に示すように、各実施形態に係る訓練装置１０は、ハードウェアとして、入力装置２０１と、表示装置２０２と、外部Ｉ／Ｆ２０３と、ＲＡＭ（Random Access Memory）２０４と、ＲＯＭ（Read Only Memory）２０５と、プロセッサ２０６と、通信Ｉ／Ｆ２０７と、補助記憶装置２０８とを有する。これら各ハードウェアは、それぞれがバス２０９を介して通信可能に接続されている。
【００７３】
入力装置２０１は、例えばキーボードやマウス、タッチパネル等であり、ユーザが各種操作を入力するのに用いられる。表示装置２０２は、例えばディスプレイ等であり、訓練装置１０の処理結果等を表示する。
【００７４】
外部Ｉ／Ｆ２０３は、外部装置とのインタフェースである。外部装置には、記録媒体２０３ａ等がある。訓練装置１０は、外部Ｉ／Ｆ２０３を介して、記録媒体２０３ａの読み取りや書き込み等を行うことができる。記録媒体２０３ａとしては、例えば、フレキシブルディスク、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disk）、ＳＤメモリカード（Secure Digital memory card）、ＵＳＢ（Universal Serial Bus）メモリカード等が挙げられる。
【００７５】
ＲＡＭ２０４は、プログラムやデータを一時保持する揮発性の半導体メモリである。ＲＯＭ２０５は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ＲＯＭ２０５には、例えば、ＯＳ（Operating System）に関する設定情報や通信ネットワークに関する設定情報等が格納されている。
【００７６】
プロセッサ２０６は、例えばＣＰＵ（Central Processing Unit）やＧＰＵ（Graphics Processing Unit）等であり、ＲＯＭ２０５や補助記憶装置２０８等からプログラムやデータをＲＡＭ２０４上に読み出して処理を実行する演算装置である。なお、各実施形態に係る訓練装置１０が有する各機能部は、例えば、補助記憶装置２０８に格納された１以上のプログラムがプロセッサ２０６に実行させる処理により実現される。
【００７７】
通信Ｉ／Ｆ２０７は、訓練装置１０を通信ネットワークに接続するためのインタフェースである。訓練装置１０は、通信Ｉ／Ｆ２０７を介して、無線又は有線により他の装置との間で通信を行うことができる。本実施形態に係る訓練装置１０の構成要素は、通信ネットワークを介して接続された物理的に離れた位置にある、例えば複数のサーバ上に設けられていてもよい。
【００７８】
補助記憶装置２０８は、例えばＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）等であり、プログラムやデータを格納している不揮発性の記憶装置である。補助記憶装置２０８に格納されているプログラムやデータには、例えば、ＯＳ、当該ＯＳ上で各種機能を実現するアプリケーションプログラム等がある。
【００７９】
各実施形態に係る訓練装置１０は、図６に示すハードウェア構成を有することにより、上述した各種処理を実現することができる。なお、図６に示す例では、各実施形態に係る訓練装置１０が１台の装置（コンピュータ）で実現されている場合を示したが、これに限られず、例えば、訓練装置１０が複数台の装置（コンピュータ）で実現されていてもよい。また、１台の装置（コンピュータ）には、複数のプロセッサ２０６や複数のメモリ（ＲＡＭ２０４やＲＯＭ２０５、補助記憶装置２０８等）が含まれていてもよい。
【００８０】
＜まとめ＞
以上のように、上記の各実施形態に係る訓練装置１０は、訓練データセット中の各教師データに何等かのズレ（不正確さ）が存在する場合であっても、上記の（条件１）〜（条件４）を満たしていれば、この訓練データセットを用いて、予測精度の高い訓練済モデルであるデータ予測部１０１を得ることができる。
【００８１】
ここで、上記の各実施形態では、タスクの一例としてセマンティックセグメンテーションを想定したが、これ以外にも様々なタスクに適用可能である。例えば、入力画像中の物体を検出する物体検知や入力画像中の物体の姿勢を推定する姿勢推定、入力画像であるＲＧＢ画像中の各ピクセルの深度を予測する深度推定等の様々なタスクに適用可能である。また、入力データは画像に限られず、例えば、入力データとして音声データを用いるタスクにも適用可能である。
【００８２】
また、ズレ予測部１０２（又は、ズレ予測部１０２及び修正部１０３）によって教師データのズレを修正し、真の正解に近付ける（つまり、教師データと真の正解とのアラインメントを合わせる）という観点から、例えば、異なる画像同士や異なる音声同士を重ね合わせるといった応用も可能である。具体的には、例えば、ＡＲ（Augmented Reality）アプリケーションやＭＲ（Mixed Reality）アプリケーション等において、ズレ予測部１０２（又は、ズレ予測部１０２及び修正部１０３）によって実写の画像とＣＧ画像とを重ね合わせる、といった応用も可能である。
【００８３】
また、上記の各実施形態に係る訓練装置１０が有するデータ予測部１０１は、上記の訓練前にあらかじめ訓練されて準備されたものであってもよい。つまり、例えば、上述したステップＳ１０１は省略することができる。
【００８４】
また、上記の各実施形態に係る訓練された予測装置又はズレ予測部１０２が、それ単独で、又は他のシステム若しくは装置に組み込まれて用いられてもよい。
【００８５】
なお、上記の各実施形態に係る訓練装置１０が有する各機能部は、上述したように、補助記憶装置２０８に格納されている１以上のプログラムがプロセッサ２０６に実行させる処理により実現されるが、これに限られない。例えば、これら各機能部の少なくとも一部の機能部が、プロセッサ２０６に代えて又はプロセッサ２０６と合せて、ＦＰＧＡ（Field-Programmable Gate Array）等の回路によって実現されてもよい。また、例えば、これら１以上のプログラムのうちの少なくとも一部のプログラムが、例えば、記録媒体２０３ａに格納されていてもよい。また、例えば、上記の各機能部のうちの一部の機能部が、ＷｅｂＡＰＩ等を介して外部サービスから提供される機能部であってもよい。
【００８６】
本発明は、具体的に開示された上記の各実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【００８７】
１０        訓練装置
１０１      データ予測部
１０２      ズレ予測部
１０３      修正部
１０４      訓練部
【図１】
2020135141.tif 000003
【図２】
2020135141.tif 000004
【図３】
2020135141.tif 000005
【図４】
2020135141.tif 000006
【図５】
2020135141.tif 000007
【図６】
2020135141.tif 000008