IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ パイオニア株式会社の特許一覧 ▶ パイオニアスマートセンシングイノベーションズ株式会社の特許一覧

特開2022-93863モデル生成装置、データ処理装置、モデル生成方法、及びプログラム
<>
  • 特開-モデル生成装置、データ処理装置、モデル生成方法、及びプログラム 図1
  • 特開-モデル生成装置、データ処理装置、モデル生成方法、及びプログラム 図2
  • 特開-モデル生成装置、データ処理装置、モデル生成方法、及びプログラム 図3
  • 特開-モデル生成装置、データ処理装置、モデル生成方法、及びプログラム 図4
  • 特開-モデル生成装置、データ処理装置、モデル生成方法、及びプログラム 図5
  • 特開-モデル生成装置、データ処理装置、モデル生成方法、及びプログラム 図6
  • 特開-モデル生成装置、データ処理装置、モデル生成方法、及びプログラム 図7
  • 特開-モデル生成装置、データ処理装置、モデル生成方法、及びプログラム 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022093863
(43)【公開日】2022-06-24
(54)【発明の名称】モデル生成装置、データ処理装置、モデル生成方法、及びプログラム
(51)【国際特許分類】
   G06N 3/08 20060101AFI20220617BHJP
【FI】
G06N3/08 120
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2020206577
(22)【出願日】2020-12-14
(71)【出願人】
【識別番号】000005016
【氏名又は名称】パイオニア株式会社
(71)【出願人】
【識別番号】520001073
【氏名又は名称】パイオニアスマートセンシングイノベーションズ株式会社
(74)【代理人】
【識別番号】100110928
【弁理士】
【氏名又は名称】速水 進治
(74)【代理人】
【識別番号】100127236
【弁理士】
【氏名又は名称】天城 聡
(72)【発明者】
【氏名】稗田 渉
(57)【要約】
【課題】ニューラルネットワークを用いたモデルにおいて、精度の低下を抑制しつつ計算量を減らす。
【解決手段】モデル生成装置10は、訓練部132、統計データ生成部134、不活性ノード選択部136、及び不活性処理部138を備えている。訓練部132は、訓練データを用いてモデルを訓練する。統計データ生成部134は、モデルが有する複数のノード別に、第1統計データ及び第2統計データの少なくとも一方を生成する。第1統計データは、複数の訓練データを入力したときの当該ノードの出力の統計データである。第2統計データは、ノードで用いられる複数のパラメータの統計データである。不活性ノード選択部136は、第1統計データ及び第2統計データの少なくとも一方を用いて、複数のノードのうち不活性とすべきノードを選択する。不活性処理部138は、選択されたノードを不活性にする。
【選択図】図3
【特許請求の範囲】
【請求項1】
ニューラルネットワークを有するモデルを生成するモデル生成装置であって、
前記モデルが有する複数のノード別に、複数の訓練データを入力したときの当該ノードの出力の第1統計データ、及び当該ノードで用いられる複数のパラメータの第2統計データの少なくとも一方を生成する統計データ生成部と、
前記第1統計データ及び前記第2統計データの少なくとも一方を用いて、前記複数のノードのうち不活性とすべきノードを選択する不活性ノード選択部と、
選択された前記ノードを不活性にする不活性処理部と、
を備えるモデル生成装置。
【請求項2】
請求項1に記載のモデル生成装置において、
前記統計データ生成部は、少なくとも前記第1統計データを生成し、
前記第1統計データは、標準偏差及び変動係数の少なくとも一方を含み、
前記不活性ノード選択部は、標準偏差及び変動係数の前記少なくとも一方が基準値以下のノードを、前記不活性とすべきノードとして選択するモデル生成装置。
【請求項3】
請求項1に記載のモデル生成装置において、
前記統計データ生成部は、少なくとも前記第2統計データを生成し、
前記第2統計データは、標準偏差及び変動係数の少なくとも一方を含み、
前記不活性ノード選択部は、標準偏差及び変動係数の前記少なくとも一方が基準値以下のノードを、前記不活性とすべきノードとして選択するモデル生成装置。
【請求項4】
請求項1~3のいずれか一項に記載のモデル生成装置において、
前記モデルは、前記ニューラルネットワークの構成を示す複数のリンク別に、当該リンクで行われるべき演算を行う演算処理部を有しており、
前記不活性処理部は、前記不活性にすべきノードに対応する前記演算処理部を無効にする、モデル生成装置。
【請求項5】
請求項1~4のいずれか一項に記載のモデル生成装置において、
前記モデルは、画像またはLiDRが生成した点群データを処理するモデルであるモデル生成装置。
【請求項6】
請求項1~5のいずれか一項に記載のモデル生成装置によって生成されたモデルを記憶するモデル記憶部と、
前記モデル記憶部が記憶している前記モデルを用いてデータを処理するデータ処理部と、
を備えるデータ処理装置。
【請求項7】
請求項6に記載のデータ処理装置において、
前記データは、画像またはLiDRの測定結果であり、
前記モデルは、前記画像または前記LiDRの測定結果から対象物の有無を検知する処理である、データ処理装置。
【請求項8】
コンピュータが、ニューラルネットワークを有するモデルを生成するモデル生成方法であって、
前記コンピュータに、
前記モデルが有する複数のノード別に、複数の訓練データを入力したときの当該ノードの出力の第1統計データ、及び当該ノードで用いられる複数のパラメータの第2統計データの少なくとも一方を生成する統計データ生成処理と、
前記第1統計データ及び前記第2統計データの少なくとも一方を用いて、前記複数のノードのうち不活性とすべきノードを選択する不活性ノード選択処理と、
選択された前記ノードを不活性にする不活性処理と、
を行うモデル生成方法。
【請求項9】
コンピュータを、ニューラルネットワークを有するモデルを生成するモデル生成装置として動作させるためのプログラムであって、
前記コンピュータに、
前記モデルが有する複数のノード別に、複数の訓練データを入力したときの当該ノードの出力の第1統計データ、及び当該ノードで用いられる複数のパラメータの第2統計データの少なくとも一方を生成する統計データ生成機能と、
前記第1統計データ及び前記第2統計データの少なくとも一方を用いて、前記複数のノードのうち不活性とすべきノードを選択する不活性ノード選択機能と、
選択された前記ノードを不活性にする不活性処理機能と、
を持たせるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、モデル生成装置、データ処理装置、モデル生成方法、及びプログラムに関する。
【背景技術】
【0002】
近年は、様々な分野でニューラルネットワークを用いたモデルが使用されている。例えば特許文献1には、移動中の人が見た場合に顕著性が高いと感じる領域を高い精度で検出するために、ニューラルネットワークを用いることが記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2020-184146号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ニューラルネットワークを用いたモデルの課題の一つに、計算量を減らすことがある。本発明の課題の一例は、ニューラルネットワークを用いたモデルにおいて、精度の低下を抑制しつつ計算量を減らすことである。
【課題を解決するための手段】
【0005】
請求項1に記載の発明は、ニューラルネットワークを有するモデルを生成するモデル生成装置であって、
前記モデルが有する複数のノード別に、複数の訓練データを入力したときの当該ノードの出力の第1統計データ、及び当該ノードで用いられる複数のパラメータの第2統計データの少なくとも一方を生成する統計データ生成部と、
前記第1統計データ及び前記第2統計データの少なくとも一方を用いて、前記複数のノードのうち不活性とすべきノードを選択する不活性ノード選択部と、
選択された前記ノードを不活性にする不活性処理部と、
を備えるモデル生成装置である。
【0006】
請求項6に記載の発明は、請求項1~5のいずれか一項に記載のモデル生成装置によって生成されたモデルを記憶するモデル記憶部と、
前記モデル記憶部が記憶している前記モデルを用いてデータを処理するデータ処理部と、
を備えるデータ処理装置である。
【0007】
請求項8に記載の発明は、コンピュータが、ニューラルネットワークを有するモデルを生成するモデル生成方法であって、
前記コンピュータに、
前記モデルが有する複数のノード別に、複数の訓練データを入力したときの当該ノードの出力の第1統計データ、及び当該ノードで用いられる複数のパラメータの第2統計データの少なくとも一方を生成する統計データ生成処理と、
前記第1統計データ及び前記第2統計データの少なくとも一方を用いて、前記複数のノードのうち不活性とすべきノードを選択する不活性ノード選択処理と、
選択された前記ノードを不活性にする不活性処理と、
を行うモデル生成方法である。
【0008】
請求項9に記載の発明は、コンピュータを、ニューラルネットワークを有するモデルを生成するモデル生成装置として動作させるためのプログラムであって、
前記コンピュータに、
前記モデルが有する複数のノード別に、複数の訓練データを入力したときの当該ノードの出力の第1統計データ、及び当該ノードで用いられる複数のパラメータの第2統計データの少なくとも一方を生成する統計データ生成機能と、
前記第1統計データ及び前記第2統計データの少なくとも一方を用いて、前記複数のノードのうち不活性とすべきノードを選択する不活性ノード選択機能と、
選択された前記ノードを不活性にする不活性処理機能と、
を持たせるプログラムである。
【発明の効果】
【0009】
本発明によれば、ニューラルネットワークを用いたモデルにおいて、精度の低下を抑制しつつ計算量を減らすことができる。
【図面の簡単な説明】
【0010】
図1】実施形態に係るモデル生成装置の使用環境を説明するための図である。
図2】モデル生成装置が行う処理の一例を説明するための図である。
図3】モデル生成装置の機能構成の一例を示す図である。
図4】第1統計データ及び第2統計データを説明するための図である。
図5】不活性処理部が行う処理の一例を説明するための図である。
図6】データ処理装置の機能構成の一例を示す図である。
図7】モデル生成装置のハードウエア構成例を示す図である。
図8】モデル生成装置が行う処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【0012】
図1は、実施形態に係るモデル生成装置10の使用環境を説明するための図である。モデル生成装置10は、データを処理するモデルを生成する。このモデルは、データ処理装置20がデータを処理する際に使用される。より具体的には、このモデルは、ニューラルネットワークを用いており、訓練データを用いた訓練が行われることにより生成される。モデル生成装置10は、この訓練を行う。
【0013】
本図に示す例において、データ処理装置20は、測定装置30が生成したデータを処理する。測定装置30は、例えば撮像装置やLiDARである。データ処理装置20は、撮像装置が生成した画像やLiDARが生成した点群データを処理することにより、対象物の有無及びその種類を検知する。例えば測定装置30が車両などの移動体に搭載されている場合、対象物は、この移動体の周囲に存在する物や、路面に描かれたマーク(車線を含む)である。
【0014】
ただし、モデル生成装置10が生成するモデルの用途は、上記した例に限定されない。
【0015】
図2は、モデル生成装置10が行う処理の一例を説明するための図である。上記したように、モデル生成装置10が生成するモデルはニューラルネットワークを有している。図2(A)に示すように、ニューラルネットワークは、複数の層を有している。各層は、複数のノードを有していることが多い。そして本実施形態において、ノード間の接続をリンクと表現する。
【0016】
ノードには複数の値が入力される。これら複数の値は、一つ前の層を構成する複数のノードそれぞれの出力である。そしてノードの内部において、複数の入力値に所定の係数が乗じられる。この乗算の結果の和はそのノードの出力となる。
【0017】
そしてモデル生成装置10は、モデルが行う演算量を減らすことを目的として、図2(B)に示すように、結果に与える影響が少ないノードを選択し、このノード(以下、不活性ノードと記載)を不活性にする処理(以下、不活性処理と記載)を行う。不活性処理は、不活性ノードにつながるリンク(以下、不活性リンクと記載)を無効にする処理である。不活性リンクは、不活性ノードへの入力を示すリンクと、不活性リンクからの出力を示すリンクの双方を含む。この不活性ノードの選択処理及び不活性処理の詳細については後述する。
【0018】
図3は、モデル生成装置10の機能構成の一例を示す図である。本図に示す例において、モデル生成装置10は、訓練データ取得部120及びモデル生成部130を備えている。
【0019】
訓練データ取得部120は、訓練データを取得する。本図に示す例において、訓練データは訓練データ記憶部110に記憶されている。訓練データ取得部120は、訓練データ記憶部110から訓練データを読み出す。
【0020】
モデル生成部130は、訓練データ取得部120が読み出した訓練データを用いて、ニューラルネットワークを用いたモデルを生成及び更新する。
【0021】
より詳細には、モデル生成部130は、訓練部132、統計データ生成部134、不活性ノード選択部136、及び不活性処理部138を備えている。
【0022】
訓練部132は、訓練データを用いてモデルを訓練する。これにより、ニューラルネットワークを構成する複数のノード別に、複数のパラメータ(例えば重み係数)が決定される。複数のパラメータは、例えばノード別の行列で記述される。
【0023】
統計データ生成部134は、不活性ノードを選択する際に用いられる統計データを複数のノード別に生成する。この統計データには、第1統計データ及び第2統計データがある。図4に示すように、第1統計データは、複数の訓練データを入力したときの当該ノードの出力の統計データである。第2統計データは、当該ノードで用いられる複数のパラメータの統計データである。
【0024】
不活性ノード選択部136は、第1統計データ及び第2統計データの少なくとも一方を用いて、不活性ノードを選択する。第1統計データは、例えば標準偏差及び変動係数の少なくとも一方を含んでいる。第2統計データも、例えば標準偏差及び変動係数の少なくとも一方を含んでいる。標準偏差や変動係数が小さいことは、そのノードがモデルの出力に与える影響が小さいことを意味している。そこで不活性ノード選択部136は、第1統計データ及び/又は第2統計データの標準偏差及び/又は変動係数が基準値以下のノードを、不活性ノートとして選択する。ここで用いられる基準値は、例えばモデル生成装置10のユーザによって設定される。また、第1統計データ用の基準値と、第2統計データ用の基準値は互いに異なるのが好ましい。
【0025】
なお、不活性ノード選択部136は、第1統計データ及び第2統計データの双方を用いる場合、第1統計データ及び第2統計データの双方で基準を満たしたノードを不活性ノードとして選択してもよいし、第1統計データ及び第2統計データの一方で基準を満たしたノードを不活性ノードとして選択してもよい。
【0026】
不活性処理部138は、不活性ノード選択部136が選択した不活性ノードに対して不活性処理を行う。不活性処理は、上記したように、不活性ノードにつながる不活性リンクを無効にする処理である。不活性処理の一例については、図5を用いて後述する。
【0027】
図3に示す例において、モデル生成装置10は、さらにモデル記憶部140及びモデル送信部150を備えている。モデル記憶部140は、モデル生成部130が生成したモデル(不活性処理が行われた後のモデル)を記憶する。モデル送信部150は、モデル記憶部140に記憶されたモデルをデータ処理装置20に送信する。なお、モデル記憶部140は、さらに、不活性処理が行われる前のモデルを記憶してもよい。
【0028】
なお、図3に示した例において、訓練データ記憶部110はモデル生成装置10の一部となっている。ただし訓練データ記憶部110は、モデル生成装置10の外部に位置していてもよい。
【0029】
図5は、不活性処理部138が行う処理の一例を説明するための図である。訓練部132が生成するモデルは、ニューラルネットワークの構成を示す複数のリンク別に、当該リンクで行われるべき演算を行う演算処理部を有している。そして不活性処理部138は不活性ノードにつながる不活性リンクに対応する演算処理部を無効にする。
【0030】
例えば訓練部132は、ニューラルネットワークを構成する複数のノード毎に、図5に示すプログラムを生成する。このプログラムは、複数のリンク別に、当該リンクに相当する部分(演算処理部の一例)を有している。不活性処理部138は、不活性リンクに相当する部分を無効にすることにより、不活性ノードを不活性にする。
【0031】
図6は、データ処理装置20の機能構成の一例を示す図である。データ処理装置20は、入力データ取得部230及びデータ処理部240を備えている。
【0032】
入力データ取得部230は、測定装置30による測定結果を示すデータ(以下、入力データと記載)を取得する。例えば測定装置30が撮像装置である場合、入力データは画像であり、測定装置30がLiDARである場合、入力データはLiDARから各測定点までの距離を示す点群データである。
【0033】
データ処理部240は、モデル生成装置10が生成したモデルを用いて入力データを処理することにより、出力データを生成する。
【0034】
データ処理部240は、当該データ処理部240が用いるモデルをモデル記憶部220から読み出す。本図に示す例において、モデル記憶部220はデータ処理装置20の一部となっている。ただしモデル記憶部220はデータ処理装置20の外部に位置していてもよい。
【0035】
本図に示す例において、データ処理装置20は、さらに記憶処理部210、表示処理部250、及びディスプレイ260を備えている。
【0036】
記憶処理部210は、モデル生成装置10からモデルを取得し、モデル記憶部220に記憶させる。記憶処理部210は、モデル生成装置10からモデルを更新するためのデータ(例えばモデルのパラメータ)を取得した場合、このデータを用いて、モデル記憶部220に記憶されているモデルを更新する。この更新処理は、繰り返し行われるのが好ましい。
【0037】
表示処理部250は、データ処理部240が生成した出力データをディスプレイ260に表示させる。
【0038】
図7は、モデル生成装置10のハードウエア構成例を示す図である。モデル生成装置10は、バス1010、プロセッサ1020、メモリ1030、ストレージデバイス1040、入出力インタフェース1050、及びネットワークインタフェース1060を有する。
【0039】
バス1010は、プロセッサ1020、メモリ1030、ストレージデバイス1040、入出力インタフェース1050、及びネットワークインタフェース1060が、相互にデータを送受信するためのデータ伝送路である。ただし、プロセッサ1020などを互いに接続する方法は、バス接続に限定されない。
【0040】
プロセッサ1020は、CPU(Central Processing Unit) やGPU(Graphics Processing Unit)などで実現されるプロセッサである。
【0041】
メモリ1030は、RAM(Random Access Memory)などで実現される主記憶装置である。
【0042】
ストレージデバイス1040は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、メモリカード、又はROM(Read Only Memory)などで実現される補助記憶装置である。ストレージデバイス1040はモデル生成装置10の各機能(例えば訓練データ取得部120、訓練部132、統計データ生成部134、不活性ノード選択部136、不活性処理部138、及びモデル送信部150)を実現するプログラムモジュールを記憶している。プロセッサ1020がこれら各プログラムモジュールをメモリ1030上に読み込んで実行することで、そのプログラムモジュールに対応する各機能が実現される。また、ストレージデバイス1040は訓練データ記憶部110及びモデル記憶部140としても機能する。
【0043】
入出力インタフェース1050は、モデル生成装置10と各種入出力機器とを接続するためのインタフェースである。
【0044】
ネットワークインタフェース1060は、モデル生成装置10をネットワークに接続するためのインタフェースである。このネットワークは、例えばLAN(Local Area Network)やWAN(Wide Area Network)である。ネットワークインタフェース1060がネットワークに接続する方法は、無線接続であってもよいし、有線接続であってもよい。モデル生成装置10は、ネットワークインタフェース1060を介してデータ処理装置20と通信してもよい。
【0045】
なお、データ処理装置20のハードウエア構成も、図7に示した通りである。この場合、ストレージデバイス1040はデータ処理装置20の各機能(例えば記憶処理部210、入力データ取得部230、データ処理部240、及び表示処理部250)を実現するプログラムモジュールを記憶している。また、ストレージデバイス1040はモデル記憶部220としても機能する。
【0046】
図8は、モデル生成装置10が行う処理の一例を示すフローチャートである。まずモデル生成装置10の訓練データ取得部120は、訓練データ記憶部110から訓練データを読み出す(ステップS10)。次いで訓練部132は、訓練データ取得部120が読み出した訓練データを用いてモデルを訓練する。これにより、複数のノード毎に、複数のパラメータが決定する(ステップS20)。
【0047】
次いで統計データ生成部134は、第1統計データ及び/又は第2統計データを生成する。第1統計データを生成する際、統計データ生成部134は、訓練部132が使用した訓練データを用いてもよいし、この訓練データとは別のデータを用いてもよい(ステップS30)。
【0048】
次いで不活性ノード選択部136は、第1統計データ及び/又は第2統計データを用いて不活性ノードを選択する(ステップS40)。次いで不活性処理部138は、ステップS40で選択された不活性ノードを用いて複数の不活性リンクを特定し、これら複数の不活性リンクを無効にする(不活性処理:ステップS50)。次いで、不活性処理部138は、不活性処理を行った後のモデルをモデル記憶部140に記憶させる(ステップS60)。
【0049】
以上、本実施形態によれば、モデル生成装置10の不活性ノード選択部136は、第1統計データ及び/又は第2統計データを用いて不活性ノードを選択する。このため、ニューラルネットワークを用いたモデルにおいて、精度の低下を抑制しつつ計算量を減らすことができる。また、不活性ノードを選択するときにユーザにかかる負荷は小さい。
【0050】
また図5を用いて説明したように、モデル生成装置10の訓練部132が生成するモデルは、ニューラルネットワークの構成を示す複数のリンク別に、当該リンクで行われるべき演算を行う演算処理部を有している。そしてモデル生成装置10の不活性処理部138は不活性ノードにつながる不活性リンクに対応する演算処理部を無効にする。したがって不活性処理部138は、不活性処理を容易に行える。
【0051】
以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。
【0052】
また、上述の説明で用いた複数のフローチャートでは、複数の工程(処理)が順番に記載されているが、各実施形態で実行される工程の実行順序は、その記載の順番に制限されない。各実施形態では、図示される工程の順番を内容的に支障のない範囲で変更することができる。また、上述の各実施形態は、内容が相反しない範囲で組み合わせることができる。
【符号の説明】
【0053】
10 モデル生成装置
20 データ処理装置
30 測定装置
110 訓練データ記憶部
120 訓練データ取得部
130 モデル生成部
132 訓練部
134 統計データ生成部
136 不活性ノード選択部
138 不活性処理部
140 モデル記憶部
150 モデル送信部
210 記憶処理部
220 モデル記憶部
230 入力データ取得部
240 データ処理部
250 表示処理部
260 ディスプレイ
図1
図2
図3
図4
図5
図6
図7
図8