(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024133757
(43)【公開日】2024-10-03
(54)【発明の名称】学習データ生成装置、学習システム、学習データ生成方法およびプログラム
(51)【国際特許分類】
G06N 20/00 20190101AFI20240926BHJP
G06N 3/092 20230101ALI20240926BHJP
【FI】
G06N20/00
G06N3/092
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2023043709
(22)【出願日】2023-03-20
(71)【出願人】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103090
【弁理士】
【氏名又は名称】岩壁 冬樹
(74)【代理人】
【識別番号】100124501
【弁理士】
【氏名又は名称】塩川 誠人
(72)【発明者】
【氏名】町田 瑛巨
(57)【要約】
【課題】観測される情報における次元数の変化による学習データへの影響を抑制できる学習データ生成装置を提供する。
【解決手段】入力手段81は、対象物の状態を示す複数の要素を含むデータの入力を受け付ける。変換手段82は、入力されたデータに含まれるいずれかの要素を、画像の座標値、および、描画する記号に対応する値に変換する。画像生成手段83は、座標値で特定される位置に対応する記号を描画した画像データを生成する。
【選択図】
図4
【特許請求の範囲】
【請求項1】
対象物の状態を示す複数の要素を含むデータの入力を受け付ける入力手段と、
入力されたデータに含まれるいずれかの要素を、画像の座標値、および、描画する記号に対応する値に変換する変換手段と、
前記座標値で特定される位置に対応する記号を描画した画像データを生成する画像生成手段とを備えた
ことを特徴とする学習データ生成装置。
【請求項2】
変換手段は、入力されたデータに含まれるいずれかの要素を、画像の座標値、描画する記号に対応する値、および、画素の値に変換し、
画像生成手段は、座標値で特定される位置に、変換された画素値で、対応する記号を描画した画像データを生成する
請求項1記載の学習データ生成装置。
【請求項3】
入力手段は、観測ごとに次元数が変化し得る対象物の情報の入力を受け付ける
請求項1または請求項2記載の学習データ生成装置。
【請求項4】
変換手段は、離散値で表わされる要素の値を、描画する記号に対応する値に変換する
請求項1または請求項2記載の学習データ生成装置。
【請求項5】
変換手段は、連続値で表わされる要素の値を、0から1の値に変換する
請求項1または請求項2記載の学習データ生成装置。
【請求項6】
請求項1または請求項2記載の学習データ生成装置と、
生成された画像データを用いた強化学習を行う学習装置とを備えた
ことを特徴とする学習システム。
【請求項7】
対象物の状態を示す複数の要素を含むデータの入力を受け付け、
入力されたデータに含まれるいずれかの要素を、画像の座標値、および、描画する記号に対応する値に変換し、
前記座標値で特定される位置に対応する記号を描画した画像データを生成する
ことを特徴とする学習データ生成方法。
【請求項8】
入力されたデータに含まれるいずれかの要素を、画像の座標値、描画する記号に対応する値、および、画素の値に変換し、
座標値で特定される位置に、変換された画素値で、対応する記号を描画した画像データを生成する
請求項7記載の学習データ生成方法。
【請求項9】
コンピュータに、
対象物の状態を示す複数の要素を含むデータの入力を受け付ける入力処理、
入力されたデータに含まれるいずれかの要素を、画像の座標値、および、描画する記号に対応する値に変換する変換処理、および、
前記座標値で特定される位置に対応する記号を描画した画像データを生成する画像生成処理
を実行させるための学習データ生成プログラム。
【請求項10】
コンピュータに、
変換処理で、入力されたデータに含まれるいずれかの要素を、画像の座標値、描画する記号に対応する値、および、画素の値に変換させ、
画像生成処理で、座標値で特定される位置に、変換された画素値で、対応する記号を描画した画像データを生成させる
請求項9記載の学習データ生成プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、学習に用いるデータを生成する学習データ生成装置、学習システム、学習データ生成方法および学習データ生成プログラムに関する。
【背景技術】
【0002】
収集された観測データを用いて、コンピュータに機械学習させる方法が各種提案されている。例えば、特許文献1には、複数の時系列データを一括して分析するデータ分析システムが記載されている。特許文献1に記載されたシステムは、分析対象の各センサデータのデータ値からピクセルの濃淡(輝度値)で表現される変換画像を生成し、CNN(Convolutional Neural Network)を用いて、取得した教師信号と生成された画像群とを合わせて入力とする学習処理を行う。
【0003】
他にも、機械学習の一種として、AI(Artificial Intelligence )やコンピュータなどのエージェントにデータを与えて学習させる強化学習も知られている。強化学習では、設定した報酬関数を最大にする行動を探索するように学習が行われる。例えば、特許文献2には、非エキスパートから収集したデータを用いて学習する強化学習装置が記載されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2018-124639号公報
【特許文献2】特開2019-101979号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ある対象物の挙動を学習する際、その対象物そのものから得られる観測データだけではなく、対象物の周囲の環境から得られる観測データが用いられることも多い。例えば、航空機の自動操縦を学習する場合、自機の位置や速度、向き、機種などの観測データだけではなく、周囲に存在する機体の数や位置、速度、向き、機種等の観測データが必要になる。
【0006】
周囲の状況は変化することが一般的であるため、得られる情報の次元数も変化する。例えば、上記航空機の例では、「機体数×機体の情報」の次元数が状況に応じて変化することになる。
【0007】
例えば、強化学習では、学習対象の状態(state)のデータが必要であるため、現実に近い環境で強化学習を行うためには、観測される状態の次元数が変化する複雑な状況を扱う必要がある。しかし、強化学習では、状態の次元数が変わる場合、以前の学習結果を使用することはできない。そのため、特許文献2に記載された強化学習装置では、次元数が変化することは考慮されていないため、次元が変化する場合には新しい状態で生成された学習データを用いて再学習した結果が必要になってしまうという問題がある。
【0008】
また、特許文献1に記載されたシステムでは、複数の時系列データから変換画像を生成しているが、データを取得するセンサの数(すなわち、次元数)が変化することは想定されていない。そのため、次元数の変化に対応した学習データを生成することは困難である。
【0009】
そこで、本発明では、観測される情報における次元数の変化による学習データへの影響を抑制できる学習データ生成装置、学習システム、学習データ生成方法および学習データ生成プログラムを提供することを目的とする。
【課題を解決するための手段】
【0010】
本発明による学習データ生成装置は、対象物の状態を示す複数の要素を含むデータの入力を受け付ける入力手段と、入力されたデータに含まれるいずれかの要素を、画像の座標値、および、描画する記号に対応する値に変換する変換手段と、座標値で特定される位置に対応する記号を描画した画像データを生成する画像生成手段とを備えたことを特徴とする。
【0011】
本発明による学習システムは、上記学習データ生成装置と、生成された画像データを用いた強化学習を行う学習装置とを備えたことを特徴とする。
【0012】
本発明による学習データ生成方法は、対象物の状態を示す複数の要素を含むデータの入力を受け付け、入力されたデータに含まれるいずれかの要素を、画像の座標値、および、描画する記号に対応する値に変換し、座標値で特定される位置に対応する記号を描画した画像データを生成することを特徴とする。
【0013】
本発明による学習データ生成プログラムは、コンピュータに、対象物の状態を示す複数の要素を含むデータの入力を受け付ける入力処理、入力されたデータに含まれるいずれかの要素を、画像の座標値、および、描画する記号に対応する値に変換する変換処理、および、座標値で特定される位置に対応する記号を描画した画像データを生成する画像生成処理を実行させることを特徴とする。
【発明の効果】
【0014】
本発明によれば、観測される情報における次元数の変化による学習データへの影響を抑制できる。
【図面の簡単な説明】
【0015】
【
図1】本発明の学習システムの一実施形態の構成例を示すブロック図である。
【
図2】画像を生成する処理の例を示す説明図である。
【
図3】本実施形態の学習システムの動作例を示すフローチャートである。
【
図4】本発明による学習データ生成装置の概要を示すブロック図である。
【
図5】本発明による学習システムの概要を示すブロック図である。
【発明を実施するための形態】
【0016】
以下、本発明の実施形態を図面を参照して説明する。以下の説明では、学習方法として強化学習を例示し、学習内容として航空機の自動操縦を例示する。ただし、本発明が利用できる対象は航空機の自動操縦に限定されず、例えば、車の自動運転などであってもよい。また、画像を学習に用いることが可能な方法であれば、本実施形態で生成される学習データを用いた学習方法も任意である。
【0017】
図1は、本発明の学習システムの一実施形態の構成例を示すブロック図である。本実施形態の学習システム100は、記憶部10と、入力部20と、変換部30と、画像生成部40と、学習部50とを備えている。
【0018】
記憶部10は、本実施形態の学習システム100が各種処理に用いる情報を記憶する。記憶部10は、例えば、学習に用いる観測データを記憶していてもよい。また、記憶部10は、後述する学習部50が学習に用いるモデルを記憶していてもよい。例えば、学習部50が強化学習を行う場合、記憶部10は、学習に用いる報酬関数(コスト関数)を記憶していてもよい。記憶部10は、例えば、磁気ディスク等により実現される。
【0019】
入力部20は、対象物の状態を示す複数の要素を含むデータの入力を受け付ける。例えば、後述する学習部50が航空機の自動操縦について学習する場合、入力部20は、航空機の状態を示す複数の要素を含むデータの入力を受け付ける。入力部20は、外部のセンサ(図示せず)により取得された観測データの入力を受け付けてもよい。また、入力部20は、記憶部10から処理に必要な情報を取得してもよい。なお、以下の説明では、対象物について観測される個々の特徴量のことを情報または要素と記し、情報または要素の集合をデータと記すこともある。
【0020】
例えば、航空機の自動操縦について強化学習を行う場合、状態として、自機の緯度、経度、高度、速度、向き及び機種についての情報が必要とされる。さらに、状態として、周囲を飛行する航空機の緯度、経度、高度、速度、向き及び機種の情報も必要とされる。そこで、入力部20は、自機のデータおよび周囲を飛行する航空機のデータの入力を受け付けてもよい。
【0021】
また、本実施形態では、後述する変換部30によって、観測ごとに次元数が変化し得る対象物の情報が変換されて画像データが生成される。そこで、入力部20は、観測ごとに次元数が変化し得る対象物の情報の入力を受け付ける。
【0022】
変換部30は、入力されたデータに含まれるいずれかの要素を、画像の座標値、および、描画する記号に対応する値に変換する。また、変換部30は、入力されたデータに含まれるいずれかの要素を、画像の座標値、および、描画する記号に対応する値の他、画素の値に変換してもよい。なお、描画する記号(例えば、丸、バツ、矩形、ひし形など)と値との対応付けは、予めユーザ等により定められる。
【0023】
具体的には、変換部30は、データに含まれる個々の情報を、画像のx軸方向の値、画像のy軸方向の値、画素の色を構成する3原色(具体的には、R(赤)、G(緑)、B(青))のそれぞれの値、描画する記号に対応する値の少なくとも1つの値(以下、画像表示情報と記す。)に変換する。なお、以下の説明では、説明を簡略化するために、画素を構成するRの要素の画素値をRの値、画素を構成するGの要素の画素値を、Gの値、画素を構成するBの要素の画素値を、Bの値と記す。
【0024】
なお、変換部30は、観測ごとに次元数が変化し得る対象物の情報を変換することが好ましい。上記の例では、自機の周囲を飛行する航空機の数は変化し得ることから、変換部30は、周囲を飛行する航空機の状態を示す情報を変更することが好ましい。ただし、変換部30は、次元数の変化しない対象物の情報を変換することを妨げない。
【0025】
ここで、描画する記号に対応する値は離散値のため、変換部30は、データに含まれる個々の情報のうち、離散値で表わされる情報の値を、記号に対応する値に変換することが好ましい。離散値の情報を描画する記号に対応する値に変換することで、情報量を減らすことなく変換することができる。なお、入力された情報をどの画像表示情報に変換するかは任意であり、予め定めておけばよい。
【0026】
以下、データを変換する方法の具体例を説明する。本具体例では、観測データ(状態を示すデータ)が、6種類の情報(X1,X2,X3,X4,X5,X6)で表わされているものとする。画像表示情報のうち、描画する記号に対応する値は離散値のため、6種類の情報のうち、離散値の情報を記号に対応する値に変換することが好ましい。なお、入力データに含まれる情報がいずれも連続値である場合、変換部30は、連続値の範囲ごとに予め定めた離散値を割り当てる変換を行えばよい。本具体例では、情報X6が離散値であるものとする。
【0027】
変換部30は、残りの5種類の情報(X1,X2,X3,X4,X5)についてもそれぞれ画像表示情報に割り当てる。変換部30は、例えば、情報X1を画像データx軸の値、情報X2を画像データy軸の値、情報X3を画像データのRの値、情報X4を画像データのGの値、情報X5を画像データのBの値に変換する。このような変換を行うことで、6種類の情報が、RGBの画像を描画するための情報に変換される。
【0028】
なお、各情報をRGBの画像データに変換するためには、各情報を0から1の値に変換して正規化する必要がある。そこで、変換部30は、以下の式1に例示する変換式を用いて、連続値で表わされる要素の値Xiを、0から1の値に変換してもよい。なお、式1において、XiMaxは、各情報iが取りうる最大の値、XiMinは、各情報iが取りうる最小の値である。
【0029】
【0030】
また、変換部30は、以下の式2に例示する変換式を用いて、離散値Xnumの情報を変換してもよい。式2において、Xsumは、各情報が取りうるパターン数である。なお、離散値Xnumは、負の整数であってもよい。
【0031】
【0032】
次に、上述する変換方法を、航空機についての観測データに適用した具体例を説明する。本具体例では状態として、自機の緯度、経度、高度、速度、向き及び機種についての情報、並びに、周囲を飛行する航空機の緯度、経度、高度、速度、向き及び機種についての情報が得られているとする。以下、緯度をX1、経度をX2、高度をX3、速度をX4、向きをX5、機種をX6とする。
【0033】
これらの情報のうち、離散値で表わされる情報は、機種のX6であるため、機種と記号とを対応付けることとする。また、機種が取りうるすべてのパターンが大型機、中型機、小型機及びセスナ機の四種類であるとし、大型機を三角の記号、中型機を丸の記号、小型機をひし形の記号、セスナ機をバツの記号に対応付けることとする。
【0034】
また、緯度をX1、経度をX2、高度をX3、速度をX4は連続値のため、変換部30は、各情報が取りうる最小値および最大値を特定し、上記式1に示す変換式を用いて、各情報を0から1の値に変換する。
【0035】
なお、向きX5も離散値として表わすことが可能であるが、説明を簡易化するため、本具体例では、向きX5を東西南北と2種類の向き(上向き/下向き)を掛け合わせた8パターンの離散値とし、取りうるすべてのパターンに番号を割り当てる。
【0036】
具体的には、変換部30は、上東向きを1、上南向きを2、上西向きを3、上北向きを4、下東向きを5、下南向きを6、下西向きを7、下北向きを8に割り当て、この数字を上記に示す式2の変換式を用いて0から1の値に変換する。この変換により、変換後の向きX5の値は、上東向きが0.125、上南向きが0.25、上西向きが0.375、上北向きが0.5、下東向きが0.625、下南向きが0.75、下西向きが0.875、下北向きが1になる。
【0037】
画像生成部40は、入力されたデータから変換された値(すなわち、画像表示情報)を用いて画像を生成する。具体的には、画像生成部40は、変換された座標値で特定される位置に、変換された画素値で、変換された値に対応する記号を描画した画像データを生成する。例えば、0から1の値に変換された連続値の情報を画素値に対応付ける場合、画像生成部40は、変換された連続値を256階調に割り当てるように再度変換した値を画素値とする画像データを生成してもよい。
【0038】
図2は、画像を生成する処理の例を示す説明図である。
図2は、上述する航空機についての観測データから画像を生成する処理の例を示す。
図2に示す例では、自機、および、自機の周囲を飛行する航空機を含め、5台の航空機が存在する状態が観測されている。入力部20がこの状態を観測したデータの入力を受け付けると、変換部30は、このデータを画像表示情報に変換する。
【0039】
全ての情報が変換されると、画像生成部40は、自機の情報について、機種に対応付けられた記号を、変換された値に対応する緯度および経度の位置に、変換された高度、速度および向きを示す画素の値が示す色で描画する。画像生成部40は、周囲を飛行する航空機についても同様にデータを変換し同じ画像上に描画する。その結果、
図2に例示する画像I1が生成される。
【0040】
学習部50は、生成された画像を含む学習データを用いた学習を行う。学習部50は、例えば、生成された画像を含む学習データを用いた強化学習により、航空機の自動操縦を学習してもよい。
【0041】
上述するように、強化学習では、状態の次元数が変わると以前の学習結果を使用することができなくなる。一方、本実施形態では、画像生成部40が、観測ごとに次元数が変化し得る対象物の情報を1つの画像データにまとめた学習データを生成するため、状態の次元数が変化する状況であっても、再学習の必要がなくなるという効果が得られる。すなわち、本実施形態で生成される画像データを強化学習で用いる学習データとして使用することで、機械学習において、より顕著な効果を発揮すると言える。
【0042】
なお、入力部20、変換部30および画像生成部40により、学習部50が学習に用いる学習データを生成していることから、入力部20、変換部30および画像生成部40を備える装置を、
図1に示すように、学習データ生成装置と言うことができる。
【0043】
入力部20と、変換部30と、画像生成部40とは、プログラム(学習データ生成装置)に従って動作するコンピュータのプロセッサ(例えば、CPU(Central Processing Unit )、GPU(Graphics Processing Unit))によって実現される。また、学習部50についても、プログラムに従って動作するコンピュータのプロセッサによって実現されてもよい。
【0044】
例えば、プログラムは、学習システム100の記憶部10に記憶され、プロセッサは、そのプログラムを読み込み、プログラムに従って、入力部20と、変換部30と、画像生成部40、および、学習部50として動作してもよい。また、学習システム100の機能がSaaS(Software as a Service )形式で提供されてもよい。
【0045】
また、入力部20と、変換部30と、画像生成部40と、学習部50とは、それぞれが専用のハードウェアで実現されていてもよい。また、各装置の各構成要素の一部又は全部は、汎用又は専用の回路(circuitry )、プロセッサ等やこれらの組合せによって実現されてもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せによって実現されてもよい。
【0046】
また、学習システム100の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
【0047】
次に、本実施形態の学習システムの動作を説明する。
図3は、本実施形態の学習システムの動作例を示すフローチャートである。
図3に例示するフローチャートは、学習部50が強化学習を行う場合の処理を例示する。
【0048】
まず、学習の前段階として、ユーザ等により、強化学習に必要な状態(state)が決定され(ステップS11)、その状態のうち、離散値で表わされる状態が選択される(ステップS12)。また、取りうる状態の全てのパターンが列挙され(ステップS13)、全てのパターンに対して簡易的な図形が対応付けられる(ステップS14)。
【0049】
同様に、他の状態(state)が選択され(ステップS15)、離散値か否か判定される(ステップS16)。選択した状態が離散値である場合(ステップS16におけるYes)、その状態について取りうる全てのパターンが列挙され(ステップS17)、変換部30は、全てのパターンを0から1の値に変換する(ステップS18)。
【0050】
一方、選択した状態が離散値でない場合(ステップS16におけるNo)、その状態について最大値および最小値が特定され(ステップS19)、変換部30は、各状態の値を0から1の値になるように正規化する(ステップS20)。なお、各状態について、重複描画を避けるため、X軸、Y軸と、RGBの画素値の中で、使用していないものに対応付ける(ステップS21)。
【0051】
全ての状態が網羅されていない場合(ステップS22におけるNo)、ステップS15以降の処理が繰り返される。一方、全ての状態が網羅された場合(ステップS22におけるYes)、画像生成部40は、変換された値を用いて画像を生成する(ステップS23)。
【0052】
以上のように、本実施形態では、入力部20が、対象物の状態を示す複数の要素を含むデータの入力を受け付け、変換部30が、入力されたデータに含まれるいずれかの要素を、画像の座標値、および、描画する記号に対応する値に変換する。そして、画像生成部40が、座標値で特定される位置に対応する記号を描画した画像データを生成する。よって、観測される情報における次元数の変化による学習データへの影響を抑制できる。
【0053】
すなわち、本実施形態では、画像生成部40が、変換部30によって変換された状態のデータをRGBの画像データに描画する。そのため、例えば、周囲を飛行する航空機の数が増減する等によって環境が変化した場合でも、同じ次元数のデータで状態を表すことが可能になる。
【0054】
次に、本発明の概要を説明する。
図4は、本発明による学習データ生成装置の概要を示すブロック図である。本発明による学習データ生成装置80(例えば、上記に示す学習データ生成装置)は、対象物の状態を示す複数の要素を含むデータの入力を受け付ける入力手段81(例えば、入力部20)と、入力されたデータに含まれるいずれかの要素を、画像の座標値、および、描画する記号に対応する値に変換する変換手段82(例えば、変換部30)と、座標値で特定される位置に対応する記号を描画した画像データを生成する画像生成手段83(例えば、画像生成部40)とを備えている。
【0055】
そのような構成により、観測される情報における次元数の変化による学習データへの影響を抑制できる。
【0056】
また、変換手段82は、入力されたデータに含まれるいずれかの要素を、画像の座標値、描画する記号に対応する値、および、画素の値に変換し、画像生成手段83は、座標値で特定される位置に、変換された画素値で、対応する記号を描画した画像データを生成してもよい。
【0057】
また、入力手段81は、観測ごとに次元数が変化し得る対象物の情報の入力を受け付けてもよい。そのような入力に基づいて画像データを生成することで、次元数の変化を画像データで集約させることが可能になる。
【0058】
また、変換手段82は、離散値で表わされる要素の値を、描画する記号に対応する値に変換してもよい。そのような対象を選択することで、情報量を減らすことなく変換することが可能になる。
【0059】
また、変換手段82は、連続値で表わされる要素の値を、0から1の値に変換してもよい。そのような変換をすることで、変換後の値を正規化することが可能になる。
【0060】
図5は、本発明による学習システムの概要を示すブロック図である。本発明による学習システム(例えば、学習システム100)は、上記に示す学習データ生成装置80と、生成された画像データを用いた強化学習を行う学習装置90とを備えている。
【0061】
そのような構成によっても、観測される情報における次元数の変化による学習データへの影響を抑制できる。さらに、次元数の変化が集約された画像データを学習で用いるため、次元数が変化しても、もとの学習結果を活かすることが可能になる。
【産業上の利用可能性】
【0062】
本発明は、学習に用いるデータを生成する学習データ生成装置に好適に適用される。例えば、無人機やロボット、車両の操縦についての挙動を学習する際に用いる学習データを生成する際に、本発明が好適に適用される。
【符号の説明】
【0063】
10 記憶部
20 入力部
30 変換部
40 画像生成部
50 学習部
100 学習システム