(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022152023
(43)【公開日】2022-10-12
(54)【発明の名称】特徴量データ生成装置及び方法並びに機械学習装置及び方法
(51)【国際特許分類】
G06T 7/00 20170101AFI20221004BHJP
【FI】
G06T7/00 350C
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2021054630
(22)【出願日】2021-03-29
(71)【出願人】
【識別番号】000237592
【氏名又は名称】株式会社デンソーテン
(74)【代理人】
【識別番号】110001933
【氏名又は名称】特許業務法人 佐野特許事務所
(72)【発明者】
【氏名】関 竜介
(72)【発明者】
【氏名】岡田 康貴
(72)【発明者】
【氏名】片山 雄喜
(72)【発明者】
【氏名】広見 怜
(72)【発明者】
【氏名】荻島 葵
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA02
5L096AA06
5L096CA04
5L096DA02
5L096EA24
5L096EA35
5L096FA16
5L096GA59
5L096HA09
5L096HA11
5L096JA11
5L096KA04
5L096KA15
(57)【要約】 (修正有)
【課題】機械学習における学習時間を低減する特徴量データ生成装置及び方法並びに機械学習装置及び方法を提供する。
【解決手段】第1学習データ取得部、第1結合部、第1学習部、第2学習データ取得部、第2結合部及び第2学習部を備えるデータ処理装置において、第2学習部60は、入力データ(IN_B)として、各々に認識対象物体を含む複数の画像の画像データから構成される第2結合データを取得する。学習済みエンコーダ32aで入力データIN_Bを圧縮することで、複数の画像における複数の認識対象物体の各特徴量を含む圧縮データ(E_B)を生成する。第2学習部60では、圧縮データE_Bをニューラルネットワーク(NN)61への入力データとして用いてNN61の機械学習を行う。
【選択図】
図9
【特許請求の範囲】
【請求項1】
各々に認識対象物体を含む複数の画像の画像データを取得する画像データ取得部と、
前記複数の画像の画像データを圧縮することで前記複数の画像における複数の認識対象物体の各特徴量を含む特徴量データを生成する特徴量データ生成部と、を備えた
、特徴量データ生成装置。
【請求項2】
前記複数の画像は、所定カメラにて時間的に連続して撮影された2以上の画像を含む
、請求項1に記載の特徴量データ生成装置。
【請求項3】
複数の第1入力画像の画像データをチャネル方向に結合することで第1結合データを生成する第1結合部と、
前記第1結合データの供給を受け、前記第1結合データを前記チャネル方向に圧縮するエンコーダ及び前記圧縮を復元するデコーダを有するオートエンコーダを学習させる第1学習部と、
複数の第2入力画像の画像データを前記チャネル方向に結合することで第2結合データを生成する第2結合部と、
前記第1学習部による学習後の前記エンコーダに前記第2結合データを入力することで当該エンコーダから出力される圧縮データを、ニューラルネットワークに入力し、これによって前記ニューラルネットワークを学習させる第2学習部と、を備える
、機械学習装置。
【請求項4】
前記第2学習部は、前記複数の第2入力画像に対応付けられた複数のラベルデータを含む教師データを用いて、前記ニューラルネットワークを学習させる
、請求項3に記載の機械学習装置。
【請求項5】
前記第2学習部は、前記ニューラルネットワークを学習させることで物体検出が可能な推論モデルを作成する
、請求項4に記載の機械学習装置。
【請求項6】
各第1入力画像及び各第2入力画像は前記物体検出における認識対象物体を含む
、請求項5に記載の機械学習装置。
【請求項7】
前記第1結合データでは、前記チャネル方向において前記複数の第1入力画像の画像データが配列され、
前記第2結合データでは、前記チャネル方向において前記複数の第2入力画像の画像データが配列され、
前記第1学習部での学習において、前記エンコーダにより、前記第1結合データのチャネル方向の次元数が削減されることで前記第1結合データが圧縮され、
前記第2学習部での学習において、前記第1学習部による学習後の前記エンコーダにより、前記第2結合データのチャネル方向の次元数が削減されることで前記第2結合データが圧縮され、これによって前記圧縮データが得られる
、請求項3~6の何れかに記載の機械学習装置。
【請求項8】
各第1入力画像の画像データ及び各第2入力画像の画像データは、複数色分の画像データを含み、
前記第1結合データでは、前記チャネル方向において各第1入力画像の前記複数色分の画像データが配列され、
前記第2結合データでは、前記チャネル方向において各第2入力画像の前記複数色分の画像データが配列される
、請求項7に記載の機械学習装置。
【請求項9】
各々に認識対象物体を含む複数の画像の画像データを取得する画像データ取得ステップと、
前記複数の画像の画像データを圧縮することで前記複数の画像における複数の認識対象物体の各特徴量を含む特徴量データを生成する特徴量データ生成ステップと、を備えた
、特徴量データ生成方法。
【請求項10】
複数の第1入力画像の画像データをチャネル方向に結合することで第1結合データを生成する第1結合ステップと、
前記第1結合データの供給を受け、前記第1結合データを前記チャネル方向に圧縮するエンコーダ及び前記圧縮を復元するデコーダを有するオートエンコーダを学習させる第1学習ステップと、
複数の第2入力画像の画像データを前記チャネル方向に結合することで第2結合データを生成する第2結合ステップと、
前記第1学習ステップによる学習後の前記エンコーダに前記第2結合データを入力することで当該エンコーダから出力される圧縮データを、ニューラルネットワークに入力し、これによって前記ニューラルネットワークを学習させる第2学習ステップと、を備える
、機械学習方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、特徴量データ生成装置及び方法並びに機械学習装置及び方法に関する。
【背景技術】
【0002】
画像認識用の推論モデルを学習させる際、ミニバッチ学習が多く利用される。ミニバッチ学習では、学習データを構成する複数の学習用画像の画像データを所定のミニバッチサイズを有するミニバッチを単位に分割し、ミニバッチごとに学習を行う。例えば、学習用画像の水平方向の画素数W及び垂直方向の画素数Hが共に100であって且つRGB形式のカラー画像を学習用画像として用いる場合、1枚の学習用画像のデータサイズは(W×H×3)であり、32枚の学習用画像の画像データをミニバッチのサイズ方向に結合することでミニバッチを形成する。この場合におけるミニバッチサイズは、(W×H×3×32)である。
【0003】
そして例えば、学習データに10240枚分の学習用画像が含まれているのであれば、“10240/32=320”より、ミニバッチ学習を320回実行することで、全学習用画像に対する1回分の学習が完了することになる。即ち、イテレーション数(繰り返し回数)は320であり、320回分のミニバッチ学習が1エポックに相当する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
上記の方法において、1つのミニバッチに含まれる学習用画像の枚数を増大させれば、それに比例してミニバッチサイズも増大するが、1エポック当たりのミニバッチ学習の実行回数が減少する。例えば、ミニバッチサイズを(W×H×3×320)とすれば、ミニバッチ学習を32回実行することで全学習用画像に対する1回分の学習が完了することになる。即ち32回分のミニバッチ学習で1エポックが完了する。1エポック当たりのミニバッチ学習の回数を低減させることで、推論モデルの学習時間(例えば損失関数の値が所定の閾値以下になるまでに必要な時間)が短縮される可能性がある。
【0006】
しかしながら、機械学習を行う装置に搭載されるメモリの容量には制限があるため、ミニバッチサイズを無条件に増大させることはできない。1枚当たりの学習用画像のサイズにも依存するが、1ミニバッチ当たりの学習用画像の枚数は現実的には32枚程度が上限になることが多い。このため、1ミニバッチ当たりの学習用画像の枚数が32枚を超えて増大するのであれば、必要メモリ容量の増大に伴って装置のコストが増大してしまう。必要メモリ容量を増大させることなく学習時間を低減させることができれば有益である。
【0007】
本発明は、学習時間の低減に寄与する特徴量データ生成装置及び方法並びに機械学習装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明に係る特徴量データ生成装置は、各々に認識対象物体を含む複数の画像の画像データを取得する画像データ取得部と、前記複数の画像の画像データを圧縮することで前記複数の画像における複数の認識対象物体の各特徴量を含む特徴量データを生成する特徴量データ生成部と、を備えた構成(第1の構成)である。
【0009】
上記第1の構成に係る特徴量データ生成装置において、前記複数の画像は、所定カメラにて時間的に連続して撮影された2以上の画像を含む構成(第2の構成)であっても良い。
【0010】
本発明に係る機械学習装置は、複数の第1入力画像の画像データをチャネル方向に結合することで第1結合データを生成する第1結合部と、前記第1結合データの供給を受け、前記第1結合データを前記チャネル方向に圧縮するエンコーダ及び前記圧縮を復元するデコーダを有するオートエンコーダを学習させる第1学習部と、複数の第2入力画像の画像データを前記チャネル方向に結合することで第2結合データを生成する第2結合部と、前記第1学習部による学習後の前記エンコーダに前記第2結合データを入力することで当該エンコーダから出力される圧縮データを、ニューラルネットワークに入力し、これによって前記ニューラルネットワークを学習させる第2学習部と、を備える構成(第3の構成)である。
【0011】
上記第3の構成に係る機械学習装置において、前記第2学習部は、前記複数の第2入力画像に対応付けられた複数のラベルデータを含む教師データを用いて、前記ニューラルネットワークを学習させる構成(第4の構成)であっても良い。
【0012】
上記第4の構成に係る機械学習装置において、前記第2学習部は、前記ニューラルネットワークを学習させることで物体検出が可能な推論モデルを作成する構成(第5の構成)であっても良い。
【0013】
上記第5の構成に係る機械学習装置において、各第1入力画像及び各第2入力画像は前記物体検出における認識対象物体を含む構成(第6の構成)であっても良い。
【0014】
上記第3~第6の構成の何れかに係る機械学習装置において、前記第1結合データでは、前記チャネル方向において前記複数の第1入力画像の画像データが配列され、前記第2結合データでは、前記チャネル方向において前記複数の第2入力画像の画像データが配列され、前記第1学習部での学習において、前記エンコーダにより、前記第1結合データのチャネル方向の次元数が削減されることで前記第1結合データが圧縮され、前記第2学習部での学習において、前記第1学習部による学習後の前記エンコーダにより、前記第2結合データのチャネル方向の次元数が削減されることで前記第2結合データが圧縮され、これによって前記圧縮データが得られる構成(第7の構成)であっても良い。
【0015】
上記第7の構成に係る機械学習装置において、各第1入力画像の画像データ及び各第2入力画像の画像データは、複数色分の画像データを含み、前記第1結合データでは、前記チャネル方向において各第1入力画像の前記複数色分の画像データが配列され、前記第2結合データでは、前記チャネル方向において各第2入力画像の前記複数色分の画像データが配列される構成(第8の構成)であっても良い。
【0016】
本発明に係る特徴量データ生成方法は、各々に認識対象物体を含む複数の画像の画像データを取得する画像データ取得ステップと、前記複数の画像の画像データを圧縮することで前記複数の画像における複数の認識対象物体の各特徴量を含む特徴量データを生成する特徴量データ生成ステップと、を備えた構成(第9の構成)である。
【0017】
本発明に係る機械学習方法は、複数の第1入力画像の画像データをチャネル方向に結合することで第1結合データを生成する第1結合ステップと、前記第1結合データの供給を受け、前記第1結合データを前記チャネル方向に圧縮するエンコーダ及び前記圧縮を復元するデコーダを有するオートエンコーダを学習させる第1学習ステップと、複数の第2入力画像の画像データを前記チャネル方向に結合することで第2結合データを生成する第2結合ステップと、前記第1学習ステップによる学習後の前記エンコーダに前記第2結合データを入力することで当該エンコーダから出力される圧縮データを、ニューラルネットワークに入力し、これによって前記ニューラルネットワークを学習させる第2学習ステップと、を備える構成(第10の構成)である。
【発明の効果】
【0018】
本発明によれば、データ記録に関わる利便性向上に寄与するデータ記録装置及び方法を提供することが可能となる。
【図面の簡単な説明】
【0019】
【
図1】本発明の実施形態に係るデータ処理装置の構成図である。
【
図2】本発明の実施形態に係る第1学習データの構成図である。
【
図3】本発明の実施形態に係る第2学習データの構成図である。
【
図4】本発明の実施形態に係り、1枚の入力画像と、それに対応するラベルデータを示す図である。
【
図5】本発明の実施形態に係り、RGB形式のカラー画像としての1枚の入力画像の構成図である。
【
図6】本発明の実施形態に係り、第1結合データの構成図である。
【
図7】本発明の実施形態に係り、オートエンコーダの構成及び動作の説明図である。
【
図8】本発明の実施形態に係り、第2結合データの構成図である。
【
図9】本発明の実施形態に係り、第2学習部の学習の動作説明図である。
【
図10】本発明の実施形態に係り、第2学習部のニューラルネットワークへの入力データの説明図である。
【
図11】本発明の実施形態に係り、教師データの内容を説明するための図である。
【
図12】本発明の実施形態に係るデータ処理装置の動作フローチャートである。
【
図13】本発明の実施形態に係り、データの圧縮による効果を説明するための図である。
【
図14】本発明の実施形態に係る特徴量データ生成装置の構成図である。
【発明を実施するための形態】
【0020】
以下、本発明の実施形態の例を、図面を参照して具体的に説明する。参照される各図において、同一の部分には同一の符号を付し、同一の部分に関する重複する説明を原則として省略する。尚、本明細書では、記述の簡略化上、情報、信号、物理量又は部材等を参照する記号又は符号を記すことによって、該記号又は符号に対応する情報、信号、物理量又は部材等の名称を省略又は略記することがある。例えば、後述の“40”によって参照される第2学習データ取得部は(
図1参照)、第2学習データ取得部40と表記されることもあるし、取得部40と略記されることもあり得るが、それらは全て同じものを指す。
【0021】
詳細は後述するが、本実施形態では、第1学習データを用いて画像に含まれる特徴量を抽出することができる学習済みエンコーダ32aを生成する(
図9参照)。次に、学習済みエンコーダ32aを用いて、第2学習データから認識対象物体の特徴量を抽出したデータ(圧縮データ)を生成する。学習済みエンコーダ32aが第2学習データから認識対象物体の特徴量を抽出する際には、いわゆる圧縮という手法を用いる。次に、認識対象物体の特徴量を抽出したデータ(圧縮データ)を用いてNN61を学習させる。NN61は、学習により物体検出用の推論モデルとなる。NN61の学習には、認識対象物体の特徴量を抽出したデータ(圧縮データ)を用いるので、NN61の学習時間の低減に寄与することができる。以下、詳細に説明する。
【0022】
図1に本実施形態に係るデータ処理装置1の構成図を示す。データ処理装置1は機械学習装置の例である。データ処理装置1は、第1学習データ取得部10、第1結合部20、第1学習部30、第2学習データ取得部40、第2結合部50及び第2学習部60を備える。尚、データ処理装置1は単一のコンピュータ装置にて構成されても良いし、物理的に分離した複数のコンピュータ装置にて構成されても良い。所謂クラウドコンピューティングを利用してデータ処理装置1が構成されても良い。
【0023】
第1学習データ取得部10は、複数の画像の画像データを含む第1学習データを取得する。第1学習データを構成する各画像の画像データは第1結合部20に入力されるため、第1学習データを構成する各画像を第1入力画像と称する。
図2に示す如く、第1学習データは計P枚の第1入力画像IA[1]~IA[P]の画像データを含む。Pは2以上の任意の整数であり、例えば、数十~数千の値を有する。尚、第1入力画像IA[i]は単に入力画像IA[i]と表記されることがある。iは任意の整数を表す。
【0024】
第2学習データ取得部40は、複数の画像の画像データを含む第2学習データを取得する。第2学習データを構成する各画像の画像データは第2結合部50に入力されるため、第2学習データを構成する各画像を第2入力画像と称する。
図3に示す如く、第2学習データは計Q枚の第2入力画像IB[1]~IB[Q]の画像データを含む。Qは2以上の任意の整数であり、例えば、数千~数万の値を有する。尚、第2入力画像IB[i]は単に入力画像IB[i]と表記されることがある。本実施形態では、第1学習データが有する画像の枚数よりも第2学習データが有する画像の枚数の方が大きい。即ち“P<Q”が成立する。
【0025】
尚、第1入力画像又は第2入力画像などの任意の画像は、当該画像の画像データと、その他のデータ(以下、付加データと称する)と、を含む。任意の画像はカメラにて撮影された画像であって良く、或る画像についての付加データは、当該画像のうちの、画像データではないデータを含み、更に当該画像の撮影時刻を表す撮影時刻情報を含む。
【0026】
後に述べられるが、データ処理装置1では、第2学習部60の学習を経て推論モデル(アルゴリズム)が作成され、当該推論モデルは画像認識として物体検出を行うことができる。物体検出では、認識の対象となる画像内の物体の位置を特定する位置特定と、認識の対象となる画像内の物体のクラス(種別)を特定するクラス識別と、が行われる。各第1入力画像及び各第2入力画像は認識の対象となる物体を1以上含む。本実施形態において物体とは、物体検出における画像認識の対象となる認識対象物体を指す。一部の第1入力画像に認識対象物体が含まれないことがあり得る。同様に、一部の第2入力画像に認識対象物体が含まれないことがあり得る。また、1以上の第1入力画像には認識対象物体以外の物が含まれることがある。同様に、1以上の第2入力画像には認識対象物体以外の物が含まれることがある。
【0027】
尚、本実施形態では、或る画像内に物体の画像データが含まれることを、当該画像に当該物体が含まれる又は存在すると表現することがある。同様に、或る画像中の注目した画像領域(例えば後述の物体領域)内に物体の画像データが含まれることを、注目した画像領域に物体が含まれる又は存在すると表現することがある。
【0028】
第2学習データは第2入力画像ごとにラベルデータを含む。第2学習データにおいて、第2入力画像IB[i]に対応付けられたラベルデータを記号“LB[i]”にて参照する。ラベルデータLB[i]は、第2入力画像IB[i]に含まれる物体ごとに、物体の位置を特定する位置情報及び物体のクラスを特定するクラス情報を含む。
【0029】
図4に入力画像610を示す。入力画像610は第2入力画像IB[i]の例である。
図4の入力画像610には3つの物体611~613が含まれる。物体611、612、613は、夫々、車両、人間、信号機であって、何れも認識対象物体であるとする。ここでは、車両、人間、信号機は、第1、第2、第3クラスに分類されるものとし、推論モデルは、第1~第3クラスを含む複数のクラスの物体に対して物体検出を行うことができるものとする。尚、ここでは、車両として道路上を走行可能な自動車を想定する。
【0030】
図4の入力画像610に対し、物体611の像を取り囲む物体領域611B、物体612の像を取り囲む物体領域612B、及び、物体613の像を取り囲む物体領域613Bが設定される。或る物体の物体領域は、当該物体の像を取り囲む矩形領域(望ましくは最小の矩形領域)であって、バウンディングボックスとも称される。
【0031】
図4の入力画像610に対応するラベル情報620は、物体611についての位置情報POS
611及びクラス情報CLS
611と、物体612についての位置情報POS
612及びクラス情報CLS
612と、物体613についての位置情報POS
613及びクラス情報CLS
613と、を含む。入力画像610が第2入力画像IB[i]であればラベル情報620はラベル情報LB[i]である。位置情報POS
611、POS
612、POS
613は、夫々、入力画像610における物体領域611Bの位置、物体領域612Bの位置、物体領域613Bの位置を表す。詳細には、物体領域611Bとしての矩形領域における一つの対角線の2端点の座標値(
図4の座標値(x
1,y
1)及び(x
2,y
2)に相当)が、位置情報POS
611にて規定される。他の位置情報も同様である。クラス情報CLS
611、CLS
612、CLS
613は、夫々、物体611が属するクラス、物体612が属するクラス、物体613が属するクラスを表す。
図4の例では、クラス情報CLS
611、CLS
612、CLS
613は、夫々、車両が属する第1クラス、人間が属する第2クラス、信号機が属する第3クラスを表す。
【0032】
例えば、自動車等の車両に搭載されたカメラの撮影画像の中から第1入力画像IA[1]~IA[P]及び第2入力画像IB[1]~IB[Q]が選ばれて良い。第1入力画像IA[1]~IA[P]と第2入力画像IB[1]~IB[Q]とが部分的に重複することもあり得る。
【0033】
第1学習データ取得部10は自らが第1学習データを作成する機能ブロックであっても良いし、データ処理装置1と異なる外部装置(不図示)から有線又は無線通信を通じ、予め作成された第1学習データの入力を受けるものであっても良い。同様に、第2学習データ取得部40は自らが第2学習データを作成する機能ブロックであっても良いし、データ処理装置1と異なる外部装置(不図示)から有線又は無線通信を通じ、予め作成された第2学習データの入力を受けるものであっても良い。
【0034】
各第1入力画像及び各第2入力画像は水平方向及び垂直方向に大きさを持つ二次元の静止画像である。1以上の第1入力画像は動画像のフレームであっても良い。同様に、1以上の第2入力画像は動画像のフレームであっても良い。各第1入力画像及び各第2入力画像における水平方向の画素数をWで表し、各第1入力画像及び各第2入力画像における垂直方向の画素数をHで表す。そうすると、各第1入力画像及び各第2入力画像は(W×H)個の画素から成る。また、第1入力画像及び第2入力画像はRGB形式で表現されるカラー画像であるとする。つまり、第1入力画像の各画素及び第2入力画像の各画素は、赤の信号成分を表すR信号、緑の信号成分を表すG信号及び青の信号成分を表すB信号を有するものとする。
【0035】
そうすると、任意の1枚の第1入力画像である又は任意の1枚の第2入力画像である入力画像650は、
図5に示す如く、(W×H)個の画素から成り且つR信号のみを色信号として有する赤濃淡画像650Rと、(W×H)個の画素から成り且つG信号のみを色信号として有する緑濃淡画像650Gと、(W×H)個の画素から成り且つB信号のみを色信号として有する青濃淡画像650Bと、で構成されると考えることができる、画像650R、650G及び650Bは、上記水平方向及び垂直方向の何れとも異なるチャネル方向に配列される。入力画像650の画像データを構成する色信号の種類数を“C”で表す。ここでは、“C=3”である。
【0036】
図1を再度参照し、第1結合部20は、第1入力画像IA[1]~IA[P]を、所定のミニバッチサイズを有するミニバッチを単位に分割する。そして、第1結合部20は、ミニバッチごとに、当該ミニバッチに属する複数の第1入力画像をチャネル方向に結合することで第1結合データを生成する。ここではミニバッチサイズは、第1入力画像のN枚分のデータサイズであるとする。Nは2以上の任意の整数であり、例えば“N=32”である。第1入力画像IA[1]~IA[P]から(P/N)個分の第1結合データが形成される。(P/N)は2以上の任意の整数である。
【0037】
図6に、第1結合部20にて生成される1つの第1結合データ(即ち1つのミニバッチの構造)を示す。
図6に示される第1結合データは、入力画像IA[i]~IA[i+N]の画像データから構成され、チャネル方向において入力画像IA[i]~IA[i+N]の画像データが配列される。入力画像IA[i]~IA[i+N]の各々はチャネル方向に配列された赤濃淡画像、緑濃淡画像及び青濃淡画像にて構成される。故に、第1結合データにおいては、チャネル方向に、入力画像IA[i]の複数色分の画像データ(赤濃淡画像、緑濃淡画像及び青濃淡画像の画像データ)、入力画像IA[i+1]の複数色分の画像データ(赤濃淡画像、緑濃淡画像及び青濃淡画像の画像データ)、・・・、及び、入力画像IA[i+N]の複数色分の画像データ(赤濃淡画像、緑濃淡画像及び青濃淡画像の画像データ)が配列される。
【0038】
このため、第1結合データは、各々が(H×W)個の単色画素から成る単色の二次元画像を(C×N)枚分、チャネル方向に沿って配列したものに相当する。第1結合データは(W×H×C×N)個の単色画素分のデータ量を持つことになる。第1結合データにおいて、チャネル数は(C×N)であり、故にチャネル方向の次元数は(C×N)である。
【0039】
図1を再度参照し、第1学習部30はニューラルネットワーク31(以下、NN31と称する)を有し、第1学習データを用いてNN31の機械学習を行う。この際、ミニバッチを単位にNN31の機械学習を行う。即ち、第1学習データに基づく(P/N)個の第1結合データを順次NN31への入力データとして用いて、ミニバッチを単位にNN31の機械学習を行う(ミニバッチ学習を行う)。第1学習部30における機械学習は深層学習に分類されるものであって良く、従ってNN31はディープニューラルネットワークであって良い。第1学習部30における機械学習は教師なし学習であり、NN31によりオートエンコーダが形成される。即ち、第1学習部30ではオートエンコーダを学習させる(換言すればNN31を学習させることでオートエンコーダを作成する)。
【0040】
図7にオートエンコーダの構成を示す。オートエンコーダを形成するNN31はエンコーダ32及びデコーダ33を備える。ここにおけるオートエンコーダの種類は任意であり、例えば、変分オートエンコーダ(VAE)又は畳み込みオートエンコーダ(CAE)であって良い。第1結合データが入力データIN_Aとしてエンコーダ32に入力され、エンコーダ32は入力データIN_Aを圧縮することで圧縮データE_Aを生成する。デコーダ33は圧縮データE_Aを復元することで(つまり、エンコーダ32による圧縮を復元することで)出力データOUT_Aを得る。第1学習部30における機械学習では、出力データOUT_Aが入力データIN_Aと一致するように、NN31の各パラメータ(バイアス及び重み)を調整する。
【0041】
この際、入力データIN_A(従って第1結合データ)がチャネル方向に圧縮されるようにエンコーダ32を設計し、圧縮データE_Aがチャネル方向に復元されるようにデコーダ33を設計しておく。つまり、エンコーダ32による圧縮はチャネル方向の次元削減に相当し、エンコーダ32にて入力データIN_A(従って第1結合データ)のチャネル方向の次元数を“(C×N)”から“J”に削減する。換言すれば、入力データIN_A(従って第1結合データ)のチャネル方向の次元数は“(C×N)”であって、エンコーダ32にて入力データIN_Aの次元削減をチャネル方向に行うことで、チャネル方向の次元数が“J”の圧縮データE_Aを得る。エンコーダ32にて、チャネル数が“(C×N)”から“J”に削減されると考えることもできる。
【0042】
“C×N>J”である。例えば“(C,N,J)=(3,32,3)”であれば、エンコーダ32にて、入力データIN_A(従って第1結合データ)のチャネル方向の次元数が96次元から3次元に削減されることになり、この場合、“3/(3×32)=1/32”より、圧縮データE_Aのデータサイズは入力データIN_Aのデータサイズの1/32となる。
【0043】
オートエンコーダとして機能するNN31の訓練誤差(損失関数の値)が所定値以下になるまで第1学習部30はNN31の機械学習を行う。この機械学習の完了後のエンコーダ32を、以下、特に学習済みエンコーダ32aと称する(
図9参照)。
【0044】
図1を再度参照し、第2結合部50は、第2入力画像IB[1]~IB[Q]を、所定のミニバッチサイズを有するミニバッチを単位に分割する。第2結合部50におけるミニバッチサイズは第1結合部20におけるミニバッチサイズと同じである。故に、第2結合部50におけるミニバッチサイズは、第2入力画像のN枚分のデータサイズである(例えば“N=32”)。そして、第2結合部50は、ミニバッチごとに、当該ミニバッチに属する複数の第2入力画像をチャネル方向に結合することで第2結合データを生成する。第2入力画像IB[1]~IB[Q]から(Q/N)個分の第2結合データが形成される。(Q/N)は2以上の任意の整数であり、例えば、数百~数千の値を持つ。
【0045】
図8に、第2結合部50にて生成される1つの第2結合データ(即ち1つのミニバッチの構造)を示す。第2結合データの構造は第1結合データの構造と同様である。即ち、
図8に示される第2結合データは、入力画像IB[i]~IB[i+N]の画像データから構成され、チャネル方向において入力画像IB[i]~IB[i+N]の画像データが配列される。入力画像IB[i]~IB[i+N]の各々はチャネル方向に配列された赤濃淡画像、緑濃淡画像及び青濃淡画像にて構成される。故に、第2結合データにおいては、チャネル方向に、入力画像IB[i]の複数色分の画像データ(赤濃淡画像、緑濃淡画像及び青濃淡画像の画像データ)、入力画像IB[i+1]の複数色分の画像データ(赤濃淡画像、緑濃淡画像及び青濃淡画像の画像データ)、・・・、及び、入力画像IB[i+N]の複数色分の画像データ(赤濃淡画像、緑濃淡画像及び青濃淡画像の画像データ)が配列される。
【0046】
このため、第2結合データは、各々が(H×W)個の単色画素から成る単色の二次元画像を(C×N)枚分、チャネル方向に沿って配列したものに相当する。第2結合データは(W×H×C×N)個の単色画素分のデータ量を持つことになる。第2結合データにおいて、チャネル数は(C×N)であり、故にチャネル方向の次元数は(C×N)である。
【0047】
図1を再度参照し、第2学習部60はニューラルネットワーク61(以下、NN61と称する)を有し、第2学習データを用いてNN61の機械学習を行う。第2学習部60における機械学習は深層学習に分類されるものであって良く、従ってNN61はディープニューラルネットワークであって良い。第2学習部60における機械学習は教師あり学習であり、NN61により物体検出用の推論モデルが形成される。即ち、第2学習部60では物体検出用の推論モデルを学習させる(換言すればNN61を学習させることで物体検出が可能な推論モデルを作成する)。
【0048】
図9を参照して第2学習部60による機械学習を説明する。第2学習部60による機械学習には上述の学習済みエンコーダ32aが利用される。第2結合データが入力データIN_Bとして学習済みエンコーダ32aに入力され、学習済みエンコーダ32aは入力データIN_Bを圧縮することで圧縮データE_Bを生成する。学習済みエンコーダ32aによる圧縮では、入力データIN_B(従って第2結合データ)のチャネル方向の次元数を“(C×N)”から“J”に削減する。換言すれば、入力データIN_B(従って第2結合データ)のチャネル方向の次元数は“(C×N)”であって、学習済みエンコーダ32aにて入力データIN_Bの次元削減をチャネル方向に行うことで、チャネル方向の次元数が“J”の圧縮データE_Bを得る。学習済みエンコーダ32aにて、チャネル数が“(C×N)”から“J”に削減されると考えることもできる。
【0049】
第2入力画像IB[1]~IB[Q]に基づく複数の第2結合データを順次、入力データIN_Bとして学習済みエンコーダ32aに入力することで、当該複数の第2結合データに基づく複数の圧縮データE_Bが得られる。
【0050】
第2学習部60では、圧縮データE_BをNN61への入力データとして用いてNN61の機械学習を行う。この際、ミニバッチを単位にNN61の機械学習を行う(即ちミニバッチ学習を行う)。NN61の機械学習におけるミニバッチサイズと、NN31の機械学習におけるミニバッチサイズとが異なっていても良いが、ここでは、それらが同じであるとする。そうすると、NN61の機械学習におけるミニバッチサイズは第2入力画像のN枚分のデータサイズであり、第2入力画像のN枚分のデータサイズは(W×H×C×N)である。
【0051】
図10に、NN61への入力データが生成されるまでの流れの概要を示す。
図10において、データDTaは、N枚の第2入力画像の画像データの組を“(C×N)/J”組分含む。データDTbは、“(C×N)/J”個の入力データIN_B、即ち“(C×N)/J”個の第2結合データから成る。データDTcは、データDTbに基づく“(C×N)/J”個の圧縮データE_Bから成る。
【0052】
データDTaが第2結合部50に入力されることでデータDTbが得られる。即ち、N枚の第2入力画像の画像データの組が、“(C×N)/J”組分、順次、第2結合部50に入力されることで、第2結合部50から“(C×N)/J”個の第2結合データが出力される。各々の第2結合データのデータサイズは(W×H×C×N)である。故に、データDTbのデータサイズは“(W×H×C×N)×(C×N)/J”である。データDTaのデータサイズも同様である。
【0053】
各々の第2結合データが入力データIN_Bとして学習済みエンコーダ32aに入力されることで第2結合データごとに圧縮データE_Bが生成され、結果、“(C×N)/J”個の圧縮データE_Bから成るデータDTcが得られる。学習済みエンコーダ32aにおいてチャネル方向の次元数が“(C×N)”から“J”に削減されるので、1つの圧縮データE_Bのデータサイズは(W×H×J)である。故に、データDTcのデータサイズ)は、(W×H×C×N)である。
【0054】
(W×H×C×N)のデータサイズ分の圧縮データE_Bを、1回あたりのミニバッチ学習のデータとしてNN61に入力する。これは、NN61の1回あたりのミニバッチ学習において、“N×(C×N)/J”枚分の入力画像の情報をNN61に入力することに相当する。例えば、“(C,N,J)=(3,32,3)”且つ“Q=10240”が成立する数値例では、1回のミニバッチ学習において、322枚分の入力画像の情報がNN61に入力されることになる。そうすると、“10240/322=10”より、NN61のミニバッチ学習を10回行うことで、第2学習データを構成する全ての第2入力画像を利用した1回分の学習が完了することになる(即ちイテレーション数は10となる)。
【0055】
N枚の第2入力画像の画像データそのものをNN61に入力する仮想ケースでは、第2学習データを構成する全ての第2入力画像を利用した1回分の学習を完了させるために、上記数値例においてNN61のミニバッチ学習を320回行う必要があり、データ処理装置1との比較において学習時間が長くなる。
【0056】
第2学習部60におけるNN61の機械学習において、NN61はミニバッチサイズを有する圧縮データE_Bに基づき出力データOUT_Bを生成する(
図9参照)。第2学習部60は、ミニバッチごとに(ミニバッチ学習ごとに)出力データOUT_Bと教師データとの誤差に相当する損失関数の値を導出し、損失関数の値が低減されるよう、誤差逆伝搬法を用いてNN61のパラメータ(重み及びバイアス)を調整する。損失関数の値が所定の閾値以下になるまでNN61の機械学習(即ち物体検出用の推論モデルの機械学習)が行われる。
【0057】
NN61のミニバッチ学習において、教師データは、当該ミニバッチ学習に用いる全ての第2入力画像に対するラベルデータにより構成される。例えば、或るミニバッチ学習において、上記データDTa(
図10参照)が第2入力画像IB[1]~IB[1024]の画像データにて構成されるのでれば、当該ミニバッチ学習における教師データはラベルデータLB[1]~LB[1024]により構成される。即ち例えば、データDTaに第2入力画像IB[1]及びIB[2]の画像データが含まれているのであれば、
図11に示す如く、それらに対応するラベルデータLB[1]及びLB[2]の和が、データDTaに対応する教師データに含められる(
図11ではラベルデータLB[1]及びLB[2]の情報のみ図示)。
【0058】
推論モデルとして機能すべきNN61は、データDTaを用いた機械学習の中で、データDTaを構成する各入力画像中の物体の位置特定及びクラス識別を行い、位置特定及びクラス識別の結果を出力データOUT_Bとして出力する。この出力データOUT_BがデータDTaに対応する教師データと比較されることで損失関数の値が導出される。
【0059】
図12にデータ処理装置1の動作フローチャートを示す。まずステップS1において、第1学習データ取得部10により第1学習データが取得される。次にステップS2において、第1結合部20により第1学習データに基づき第1結合データが生成される。次にステップS3において、第1学習部30により第1結合データに基づいてオートエンコーダを学習させ(即ちNN31を学習させ)、これによって学習済みエンコーダ32aを作成する。次にステップS4において第2学習データ取得部40により第2学習データが取得される。尚、第2学習データの取得のタイミングはステップS5よりも前であれば任意である。
【0060】
第2学習データの取得後、ステップS5において、第2結合部50により第2学習データに基づき第2結合データが生成される。この際、上述の教師データも作成される。教師データの作成主体は第2結合部50であっても良いし、第2学習部60であっても良い。その後、ステップS6において、第2結合データを学習済みエンコーダ32aに入力することで圧縮データ(E_B)を生成し、生成した圧縮データ(E_B)に基づき第2学習部60にて物体検出用の推論モデルを学習させる(換言すればNN61を学習させることで物体検出用の推論モデルを作成する)。
【0061】
本実施形態では、上述の如く学習データ(第2学習データ)を圧縮することで第2学習部60における1ミニバッチ当たりのデータの情報量を増やすことができる。即ち、N枚の第2入力画像の画像データそのものをNN61に入力する仮想ケースと比べて、第2学習部60における1ミニバッチ当たりのデータの情報量が“(C×N)/J”倍に増大する(例えば32倍に増大する)。このため、仮想ケースとの比較において、第2学習部60における学習時間(例えばNN61による推論モデルの損失関数の値が所定の閾値以下になるまでに必要な時間)を短縮することが可能となる。見方を変えて、学習時間を一定とみなした場合には、必要メモリ容量を小さくすることもできる。
【0062】
図13に“(C×N)/J=3×32/3=32”である場合におけるデータサイズの圧縮効果等を示す。
図13の数値例では、学習済みエンコーダ32aを用いることで入力データIN_Bのデータサイズ(データ量)が1/32に圧縮されて圧縮データE_Bが得られる。このため、NN61へ入力されるデータの単位データ量あたりの学習時間が一定であるとみなしたならば、NN61の学習時間は仮想ケースと比べて1/32に短縮される。また、NN61の学習におけるイテレーション数も、仮想ケースで必要なイテレーション数の1/32に低減する。他方、本実施形態に係るNN61の学習時間を仮想ケースに係る学習時間と同じにする場合にあっては必要メモリ容量を仮想ケースの1/32にまで縮小することが可能である。
【0063】
各第1入力画像には推論モデルの認識対象物体が含まれるため、オートエンコーダでは、第1結合データ(IN_A)から各第1入力画像の認識対象物体の特徴量が抽出されて圧縮データE_Aに含められる。つまり、認識対象物体を含む入力画像から認識対象物体の特徴量が抽出されるようオートエンコーダの学習が進んで学習済みエンコーダ32aが構成される。故に、認識対象物体を含む第2入力画像に基づく第2結合データ(IN_B)を学習済みエンコーダ32aに入力すれば、学習済みエンコーダ32aにて各第2入力画像中の認識対象物体の特徴量が抽出されて圧縮データE_Bに含められる。この圧縮データE_Bを推論モデル(NN61)に入力することで、学習時間の短縮化に寄与する効率的な学習が可能となる。
【0064】
認識対象物体の特徴量の観点からデータ処理装置1の機能を検討したとき、データ処理装置1は、
図14の特徴量データ生成装置2として機能する又は特徴量データ生成装置2を含む、と考えることができる。特徴量データ生成装置2は、各々に認識対象物体を含む複数の画像IIを取得する画像データ取得部2Aと、複数の画像IIの画像データを圧縮することで複数の画像IIにおける複数の認識対象物体の各特徴量を含む特徴量データを生成する特徴量データ生成部2Bと、を備えている。取得部2A及び2Bに関わる複数の画像IIは複数の第2入力画像に相当する。取得部2Aは
図1の取得部40に相当し、生成部2Bは
図1の結合部50と
図9の学習済みエンコーダ32aを含む機能ブロックに相当する。生成部2Bにて生成される特徴量データは圧縮データE_Bに相当する。
【0065】
つまり、特徴量データ生成装置2は、各々に認識対象物体を含む複数の第2入力画像を取得し、複数の第2入力画像における複数の認識対象物体の各特徴量を含む特徴量データ(EN_B)を生成する。この特徴量データを用いて物体検出用の推論モデル(NN61)を学習させれば、学習時間の短縮化に寄与する効率的な学習が可能となる。
【0066】
ここで、上記の複数の画像IIは、所定カメラ(不図示)にて時間的に連続して撮影された2以上の画像を含んでいると良い。即ち、第2入力画像IB[1]~IB[Q]の内、少なくとも一部は、所定カメラにて時間的に連続して撮影された2以上の画像であって良い。所定カメラは、自身の撮影領域内の様子(被写体)を撮影し、撮影された画像であるカメラ画像の画像データを生成する。この際、所定カメラは所定のフレームレートで周期的に撮影を行う。そうすると、所定カメラにより、フレームレートの逆数の間隔で時系列上に並ぶ複数のカメラ画像が取得される。この時系列上に並ぶ複数のカメラ画像(以下、カメラ画像列と称する)が、所定カメラにて時間的に連続して撮影された2以上の画像に相当する。
【0067】
所定カメラは一定の場所に固定された定点カメラであって良い。この場合、カメラ画像列においてカメラ画像中の風景(認識対象物体以外の部分)は殆ど変化せず、認識対象物体としての車両や人間のみがカメラ画像列の中で動くと期待される。そうすると、エンコーダ32(学習済みエンコーダ32a)による圧縮作用が高まって、認識対象物体の特徴量を効率的に抽出することが可能となり、ひいては推論モデル(NN61)の効率的な学習が促進される。所定カメラは車両等の移動体に搭載されたカメラであっても良い。
【0068】
画像データ取得部2Aは、所定カメラにて撮影された画像の集まりの中から、所定カメラにて撮影された各画像の付加データに含まれる撮影時刻情報に基づいて、上記時間的に連続して撮影された2以上の画像を抽出して良い。例えば、所定カメラにて撮影された画像に第1撮影画像及び第2撮影画像が含まれている場合において、第1撮影画像の撮影時刻及び第2撮影画像の撮影時刻間の時間差が所定時間以下であるとき、第1及び第2撮影画像は時間的に連続して撮影された2枚の画像として抽出されて良い。
【0069】
上述の構成に対する補足事項、応用技術又は変形技術等を以下に示す。
【0070】
各第1入力画像及び各第2入力画像はモノクロ画像(色情報を持たない濃淡画像)であっても構わない。この場合には“C=1”となる。
【0071】
エンコーダ32(学習済みエンコーダ32aを含む)は、入力データ(IN_A又はIN_B)をチャネル方向に圧縮するが、この際、入力画像の水平方向又は垂直方向に入力データが圧縮されることがあっても良い。
【0072】
データ処理装置1は、ハードウェアとして、演算処理装置であるCPU(Central Processing Unit)、GPU(Graphics Processing Unit)、ROM(Read only memory)及びRAM(Random access memory)等を備える。データ処理装置1は、ROMに格納されたプログラム又は他の装置から通信を通じて取得されたプログラムをCPUにて実行することにより、
図1に示す各部位の機能を実現して良く、故に
図12のステップS1~S6の各処理を実現して良い。
【0073】
データ処理装置1にて作成された推論モデルを車載装置(不図示)に適用しても良い。車載装置は自動車等の車両に搭載される電子機器の一種である。この場合、第2学習部60によるNN61の機械学習を経てNN61により形成される推論モデルを車載装置に適用すると良い。そして、車載装置にて推論モデルによる物体検出を行わせ、推論結果を車両で実施され得る自動運転又は運転支援等に利用して良い。
【0074】
尚、データ処理装置1自体が車載装置であっても構わない。車両(例えば放送中継車)によっては、豊富な計算資源を有する車載装置が設置されることもあり、この場合においては特にデータ処理装置1自体を車載装置とすることも可能である。
【0075】
また、データ処理装置1により実行される処理の一部又は全部は、ソフトウェアおよびハードウェアの混在処理により実現しても良い。前述した方法をコンピュータに実行させるコンピュータプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本実施形態の範囲に含まれる。ここで、コンピュータ読み取り可能な記録媒体は、例えば、フレキシブルディスク、ハードディスク、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、大容量DVD、次世代DVD、半導体メモリである。
【0076】
本発明の実施形態は、特許請求の範囲に示された技術的思想の範囲内において、適宜、種々の変更が可能である。以上の実施形態は、あくまでも、本発明の実施形態の例であって、本発明ないし各構成要件の用語の意義は、以上の実施形態に記載されたものに制限されるものではない。上述の説明文中に示した具体的な数値は、単なる例示であって、当然の如く、それらを様々な数値に変更することができる。
【符号の説明】
【0077】
1 データ処理装置
2 特徴量データ生成装置
2A 画像データ取得部
2B 特徴量データ生成部
10 第1学習データ取得部
20 第1結合部
30 第1学習部
31 ニューラルネットワーク(オートエンコーダ)
32 エンコーダ
33 デコーダ
40 第2学習データ取得部
50 第2結合部
60 第2学習部
61 ニューラルネットワーク(推論モデル)