特許第6801529号(P6801529)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

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

▶ 沖電気工業株式会社の特許一覧
特許6801529情報処理装置、情報処理方法、およびプログラム
<>
  • 特許6801529-情報処理装置、情報処理方法、およびプログラム 図000012
  • 特許6801529-情報処理装置、情報処理方法、およびプログラム 図000013
  • 特許6801529-情報処理装置、情報処理方法、およびプログラム 図000014
  • 特許6801529-情報処理装置、情報処理方法、およびプログラム 図000015
  • 特許6801529-情報処理装置、情報処理方法、およびプログラム 図000016
  • 特許6801529-情報処理装置、情報処理方法、およびプログラム 図000017
  • 特許6801529-情報処理装置、情報処理方法、およびプログラム 図000018
  • 特許6801529-情報処理装置、情報処理方法、およびプログラム 図000019
  • 特許6801529-情報処理装置、情報処理方法、およびプログラム 図000020
  • 特許6801529-情報処理装置、情報処理方法、およびプログラム 図000021
  • 特許6801529-情報処理装置、情報処理方法、およびプログラム 図000022
  • 特許6801529-情報処理装置、情報処理方法、およびプログラム 図000023
  • 特許6801529-情報処理装置、情報処理方法、およびプログラム 図000024
  • 特許6801529-情報処理装置、情報処理方法、およびプログラム 図000025
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6801529
(24)【登録日】2020年11月30日
(45)【発行日】2020年12月16日
(54)【発明の名称】情報処理装置、情報処理方法、およびプログラム
(51)【国際特許分類】
   G06N 3/04 20060101AFI20201207BHJP
【FI】
   G06N3/04
【請求項の数】9
【全頁数】19
(21)【出願番号】特願2017-44846(P2017-44846)
(22)【出願日】2017年3月9日
(65)【公開番号】特開2018-147428(P2018-147428A)
(43)【公開日】2018年9月20日
【審査請求日】2019年11月15日
(73)【特許権者】
【識別番号】000000295
【氏名又は名称】沖電気工業株式会社
(74)【代理人】
【識別番号】100140958
【弁理士】
【氏名又は名称】伊藤 学
(74)【代理人】
【識別番号】100137888
【弁理士】
【氏名又は名称】大山 夏子
(74)【代理人】
【識別番号】100190942
【弁理士】
【氏名又は名称】風間 竜司
(72)【発明者】
【氏名】山本 康平
(72)【発明者】
【氏名】前野 蔵人
【審査官】 多賀 実
(56)【参考文献】
【文献】 国際公開第2008/032407(WO,A1)
【文献】 彦坂 真央樹 ほか,「マルチパス環境で偏波状態を推定し予測する四元数ニューラルネットワーク」,電子情報通信学会技術研究報告,一般社団法人 電子情報通信学会,2016年 3月15日,第115巻, 第514号,pp.25-30
【文献】 青木 宏之,「自然画像を扱う複素ニューラルネットワーク」,電子情報通信学会誌,社団法人電子情報通信学会,2004年 6月 1日,第87巻, 第6号,pp.465-470
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/02− 3/10
G01S 7/00− 7/42
G01S 13/00−13/95
(57)【特許請求の範囲】
【請求項1】
ニューラルネットワークを用いて状態推定を行う推定部、
を備え、
前記ニューラルネットワークは、
複素数データを入力とする第1の複素数型ニューラルネットワーク層と、
前記複素数データに係る複数の集合間における要素ごとの位相差を出力する位相差演算層と、
前記位相差に基づいて複素数データを出力する第2の複素数型ニューラルネットワーク層と、
を備える、
情報処理装置。
【請求項2】
前記位相差演算層は、前記集合間において対応する要素の共役積に基づいて前記位相差を出力する、
請求項1に記載の情報処理装置。
【請求項3】
前記位相差演算層は、同一層に属する複素数型ニューロンを少なくとも2以上の集合に分割し、当該集合間における要素ごとの位相差を出力する、
請求項1または2に記載の情報処理装置。
【請求項4】
前記第1の複素数型ニューラルネットワーク層は、複素数型畳み込みニューラルネットワーク層である、
請求項1または2に記載の情報処理装置。
【請求項5】
前記複素数型畳み込みニューラルネットワーク層は、互いに構造の異なる一対の畳み込みフィルタを用いて畳み込み処理を実行する、
請求項4に記載の情報処理装置。
【請求項6】
前記畳み込みフィルタは、実数型の重みを有する、
請求項5に記載の情報処理装置。
【請求項7】
前記ニューラルネットワークは、前記第2の複素数型ニューラルネットワーク層により出力される複素数型データを実数型データに変換する変換層、
をさらに備える、
請求項1〜6のいずれかに記載の情報処理装置。
【請求項8】
ニューラルネットワークを用いて状態推定を行う情報処理方法であって、
複素数データを入力することと、
複素数データに係る複数の集合間における要素ごとの位相差を出力することと、
前記位相差に基づいて複素数データを出力することと、
を含む、
情報処理方法。
【請求項9】
コンピュータを、
ニューラルネットワークを用いて状態推定を行う推定部、
を備え、
前記ニューラルネットワークは、
複素数データを入力とする第1の複素数型ニューラルネットワークと、
前記複素数データに係る複数の集合間における要素ごとの位相差を出力する位相差演算層と、
前記位相差に基づいて複素数データを出力する第2の複素数型ニューラルネットワーク層と、
を備える、
情報処理装置、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【0002】
近年、脳神経系の仕組みを模した数学モデルであるニューラルネットワークが注目されている。また、ニューラルネットワークを用いて種々の状態推定を行う技術が提案されている。例えば、特許文献1には、アレーアンテナから得られる受信信号ベクトルの位相差から、先行車両の台数を、ニューラルネットワークを用いて推定するレーダ信号処理装置が開示されている。また、特許文献2には、従来、実数型ニューロンで構成されていた畳み込みニューラルネットワークを、複素数型ニューロンを用いて構成する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2016−75558号公報
【非特許文献】
【0004】
【非特許文献1】Nitzan Guberman、“On Complex Valued Convolutional Neural Networks”、[online]、平成28年2月29日、ヘブライ大学、[平成29年2月1日検索]、インターネット〈https://arxiv.org/pdf/1602.09046.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、特許文献1に記載の技術では、実数型または複素数型ニューラルネットワークにおいて、受信信号ベクトルの自己相関行列の対角成分を除いた上三角行列を入力としている。このため、特許文献1に記載の技術では、受信信号ベクトルの要素数に対応する全通りの組み合わせペアを入力することが求められ、ニューラルネットワークの規模が大型化する傾向がある。
【0006】
また、特許文献1や非特許文献1に記載の技術では、同一の層に属するニューロン間の位相差を扱うことが困難である。このため、特許文献1や非特許文献1に記載の技術では、ニューロン間における位相の相関関係が重要となる問題に対して推定精度が劣化する可能性がある。
【0007】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、位相の相関関係に意味を有するデータに対する推定精度をより向上させることが可能な、新規かつ改良された情報処理装置、情報処理方法、およびプログラムを提供することにある。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本発明のある観点によれば、ニューラルネットワークを用いて状態推定を行う推定部、を備え、前記ニューラルネットワークは、複素数データを入力とする第1の複素数型ニューラルネットワーク層と、前記複素数データに係る複数の集合間における要素ごとの位相差を出力する位相差演算層と、前記位相差に基づいて複素数データを出力する第2の複素数型ニューラルネットワーク層と、を備える、情報処理装置が提供される。
【0009】
前記位相差演算層は、前記集合間において対応する要素の共役積に基づいて前記位相差を出力してもよい。
【0010】
前記位相差演算層は、同一層に属する複素数型ニューロンを少なくとも2以上の集合に分割し、当該集合間における要素ごとの位相差を出力してもよい。
【0011】
前記第1の複素数型ニューラルネットワーク層は、複素数型畳み込みニューラルネットワーク層であってもよい。
【0012】
前記複素数型畳み込みニューラルネットワーク層は、互いに構造の異なる一対の畳み込みフィルタを用いて畳み込み処理を実行してもよい。
【0013】
前記畳み込みフィルタは、実数型の重みを有してもよい。
【0014】
前記ニューラルネットワークは、前記第2の複素数型ニューラルネットワーク層により出力される複素数型データを実数型データに変換する変換層、をさらに備えてもよい。
【0015】
また、上記課題を解決するために、本発明の別の観点によれば、ニューラルネットワークを用いて状態推定を行う情報処理方法であって、複素数データを入力することと、複素数データに係る複数の集合間における要素ごとの位相差を出力することと、前記位相差に基づいて複素数データを出力することと、を含む、情報処理方法が提供される。
【0016】
また、上記課題を解決するために、本発明の別の観点によれば、コンピュータを、ニューラルネットワークを用いて状態推定を行う推定部、を備え、前記ニューラルネットワークは、複素数データを入力とする第1の複素数型ニューラルネットワークと、前記複素数データに係る複数の集合間における要素ごとの位相差を出力する位相差演算層と、前記位相差に基づいて複素数データを出力する第2の複素数型ニューラルネットワーク層と、を備える、情報処理装置、として機能させるためのプログラムが提供される。
【発明の効果】
【0017】
以上説明したように本発明によれば、相対的な位相に意味を有するデータに対する推定精度をより向上させることが可能となる。
【図面の簡単な説明】
【0018】
図1】本発明の第1の実施形態に係る情報処理装置の機能ブロック図の一例である。
図2】同実施形態に係るニューラルネットワークのネットワーク構成例を示す図である。
図3】同実施形態に係る位相差演算層の構成について説明するための図である。
図4】同実施形態に係る順方向伝播の一例を示す図である。
図5】同実施形態に係る変換層を備えるニューラルネットワークのネットワーク構成例を示す図である。
図6】本発明の第2の実施形態に係るニューラルネットワークに入力される複素数データについて説明するための図である。
図7】一般的な複素数型畳み込みニューラルネットワークに係る畳み込み処理について説明するための図である。
図8】一般的な複素数型畳み込みニューラルネットワークにおける出力特徴マップと畳み込みフィルタとの関係について説明するための図である。
図9】本発明の第2の実施形態に係るニューラルネットワークのネットワーク構成例を示す図である。
図10】同実施形態に係るニューラルネットワークによる畳み込み処理における入力特徴マップと畳み込みフィルタの関係について説明するための図である。
図11】同実施形態に係る互いに構造の異なる一対の畳み込みフィルタについて説明するための図である。
図12】本発明の一実施形態に係る情報処理装置のハードウェア構成例である。
図13】一般的な実数型ニューラルネットワークの結合関係を示す図である。
図14】一般的な複素数型ニューラルネットワークの結合関係を示す図である。
【発明を実施するための形態】
【0019】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0020】
<1.背景>
近年、情報処理技術の発展に伴い、種々のニューラルネットワークモデルが提案されている。また、上記のようなニューラルネットワークモデルには、入力される複素数や四元数などの多次元データに基づいて識別を行うモデルも存在する。
【0021】
ここで、まず、一般的な実数型ニューラルネットワークおよび複素数型ニューラルネットワークの概要について説明する。図13は、一般的な実数型ニューラルネットワークの結合関係を示す図である。図13に示すように、実数型ニューラルネットワークでは、入力x、重みw、および出力yは、すべて実数で定義される。すなわち、実数型ニューラルネットワークの結合関係は、下記の数式(1)により表現され得る。ここで、図13および下記の数式(1)におけるRは実数を示す。
【0022】
【数1】
【0023】
このため、実数型ニューラルネットワークでは、複素数データをそのまま入力することができず、予め複素数データから実数を抽出する処理が求められる。
【0024】
一方、図14は、一般的な複素数型ニューラルネットワークの結合関係を示す図である。図14に示すように、複素数型ニューラルネットワークでは、入力x、重みw、および出力yは、すべて複素数で定義される。すなわち、複素数型ニューラルネットワークの結合関係は、下記の数式(2)により表現され得る。ここで、図14および下記の数式(2)におけるCは複素数を示す。
【0025】
【数2】
【0026】
このため、複素数型ニューラルネットワークは、複素数データを入力とする処理に優れている。ここで、上記の複素数データとは、例えば、電波や音波など、波動の大きさや位相の進み・遅れに意味を持つデータや、風向きなど特定の方向に意味を持つデータを含む。
【0027】
しかし、一般的な複素数型ニューラルネットワークでは、通常、同一層に属するニューロン間の位相差を扱うことが困難である。このため、一般的な複素数型ニューラルネットワークでは、例えば、アレーアンテナから得られる受信信号ベクトルを用いて到来方向を推定するなど、要素間の位相の相関関係が重要となる問題に対し、推定精度が劣化することが予想される。
【0028】
上記についてより具体的に説明する。複素数型ニューラルネットワークにおける複素数の内積操作は、上記の数式(2)に示すように、入力xと重みwの要素の積、および当該積の和となる。ここで、複素数の積には積算する要素同士の位相を加減算する作用があるが、複素数の和にはこのような作用は認められない。すなわち、位相は振幅によって重み付けられた平均となる。このため、一般的な複素数型ニューラルネットワークでは、同一層に属するニューロン間の相関関係が考慮され難い。
【0029】
本技術思想は、上記の点に着目して発想されたものであり、複素数型ニューラルネットワークにおいて、同一の層に属するニューロン間、すなわち複素数データ間の位相差を算出することを可能とする。このために、本発明の一実施形態に係るニューラルネットワークは、複素数データに係る複数の集合間における要素ごとの位相差情報を出力する位相差演算層を備えること、を特徴の一つとする。本発明の一実施形態に係るニューラルネットワークが有する上記の特徴によれば、相対的な位相に意味を有するデータに対する推定精度をより向上させることが可能となる。
【0030】
<2.第1の実施形態>
<<2.1.情報処理装置10の機能構成例>>
続いて、本発明の第1の実施形態について説明する。まず、本実施形態に係る情報処理装置10の機能構成例について述べる。図1は、本実施形態に係る情報処理装置10の機能ブロック図の一例である。図1を参照すると、本実施形態に係る情報処理装置10は、入力部110、推定部120、記憶部130、および出力部140を備える。以下、上記構成について、当該構成が有する機能を中心に説明する。
【0031】
(入力部110)
入力部110は、操作者による種々の入力操作を検出する機能を有する。本実施形態に係る入力部110は、例えば、後述する推定部120による推定に用いるデータを指定する操作者の入力操作を検出してよい。このために、本実施形態に係る入力部110は、操作者による入力操作を検出するための各種の装置を含んでよい。入力部110は、例えば、各種のボタン、キーボード、タッチパネル、マウス、スイッチなどにより実現され得る。
【0032】
(推定部120)
推定部120は、入力される複素数データを用いて、機械学習モデルに基づく状態推定を行う機能を有する。この際、本実施形態に係る推定部120は、ニューラルネットワークを用いて上記の状態推定を行ってよい。例えば、本実施形態に係る推定部120は、ニューラルネットワークを用いて、回帰問題や分類問題などに対する解答を出力することができる。本実施形態に係るニューラルネットワークの構成については、別途詳細に説明する。
【0033】
(記憶部130)
記憶部130は、情報処理装置10が備える各構成で用いられるプログラムやデータなどを記憶する機能を有する。本実施形態に係る記憶部130は、例えば、推定部120が備えるニューラルネットワークに用いられる種々のパラメータや、推定部120が出力する出力結果などを記憶してよい。
【0034】
(出力部140)
出力部140は、操作者に対し種々の情報出力を行う機能を有する。本実施形態に係る出力部140は、例えば、推定部120による推定結果を出力してよい。このために、本実施形態に係る出力部140は、視覚情報を出力するディスプレイ装置を含んで構成され得る。ここで、上記のディスプレイ装置は、例えば、CRT(Cathode Ray Tube)ディスプレイ装置、液晶ディスプレイ(LCD:Liquid Crystal Display)装置、OLED(Organic Light Emitting Diode)装置、タッチパネル、プロジェクタなどにより実現され得る。
【0035】
以上、本実施形態に係る情報処理装置10の機能構成例について説明した。なお、上記で説明した機能構成例はあくまで一例であり、本実施形態に係る情報処理装置10の機能構成例は係る例に限定されない。本実施形態に係る情報処理装置10は、図1に示す以外の構成をさらに備えてもよい。情報処理装置10は、例えば、他の情報処理端末との情報通信を行う通信部などをさらに備えてもよい。本実施形態に係る情報処理装置10の機能構成は、柔軟に設計変更され得る。
【0036】
<<2.2.ネットワーク構成例>>
次に、本実施形態に係るニューラルネットワークのネットワーク構成例について詳細に説明する。図2は、本実施形態に係るニューラルネットワークのネットワーク構成例を示す図である。
【0037】
図2を参照すると、本実施形態に係るニューラルネットワークは、第1の複素数型ニューラルネットワーク層CVNN1と、位相差演算層CD1、およびCVNN2を備える。
【0038】
ここで、本実施形態に係る第1の複素数型ニューラルネットワーク層CVNN1には、図示するように複素数データが入力されてよい。第1の複素数型ニューラルネットワーク層CVNN1は、入力される複素数データに基づく演算処理を実行し、当該演算処理の結果に該当する複素数データを出力する。
【0039】
また、本実施形態に係る位相差演算層CD1は、複素数データ間の位相差を算出する機能を有する。より具体的には、本実施形態に係る位相差演算層CD1は、複素数データに係る複数の集合間における要素ごとの位相差情報を出力することができる。
【0040】
また、本実施形態に係る第2の複素数型ニューラルネットワーク層CVNN2は、位相差演算層CD1により出力される位相差情報に基づく演算処理を行い、当該演算処理の結果に該当する複素数データを出力してよい。
【0041】
ここで、本実施形態に係る位相差演算層CD1の構成について詳細に説明する。図3は、本実施形態に係る位相差演算層CD1の構成について説明するための図である。図3を参照すると、本実施形態に係る位相差演算層CD1は、入力層IL、中間層HL、分割層DL、統合層UL、および出力層OLを備える。なお、図3の上部には、位相差演算層の構成の概略が示されており、図3の下部には、中間層HL、分割層DL、統合層ULを構成するニューロンの一例が示されている。すなわち、図3では、丸が単一のニューロンを、角丸の四角形が複数のニューロンの集合をそれぞれ示している。
【0042】
まず、入力層ILに、第1の複素数型ニューラルネットワーク層CVNN1から出力される複素数データが入力され、中間層HLに伝播される。
【0043】
次に、本実施形態に係る分割層DLにより、中間層HLを構成するニューロンの集合が2つ以上の集合に分割される。図3の一例では、中間層HLを構成する6つのニューロンが分割層DLにおいて、それぞれ3つずつのニューロンを含む2つの集合AおよびBに分割される場合が示されている。上記のような分割を行うため、本実施形態に係る中間層HLを構成するニューロンの数は偶数であってよい。上記の処理により、集合間における要素ごとの位相差を出力することが可能となる。
【0044】
続く統合層ULでは、分割層DLにおける集合間の各要素を一対一で対応付け、当該要素間の位相差を算出する。この際、順方向伝播において、要素zが集合Aに、zが集合Bにそれぞれ属するとすると、統合層ULは、下記の数式(3)または数式(4)などの関数を用いて要素間の位相差を算出することが可能である。なお、下記の数式(3)における*は、複素共役記号を示す。すなわち、本実施形態に係る位相差演算層CD1は、集合間において対応する要素の共役積に基づいて位相差を出力してよい。
【0045】
【数3】
【0046】
次に、逆方向伝播(誤差逆伝播)について説明する。図4は、本実施形態に係る順方向伝播の一例を示す図である。このように、順方向伝播において、要素zおよびzが、f(z,z)=αz+β=z(ただし、αおよびβはスカラーの実定数)、によってzに変換され、逆方向伝播において、上層から誤差勾配δzが伝播してきた際、要素zおよびzに対応するそれぞれのニューロンが伝播する誤差勾配δzおよびδzは、下記の数式(5)および(6)により表現することができる。
【0047】
【数4】
【0048】
このように、本実施形態に係る位相差演算層CD1では、誤差勾配δzおよびδzを下層側に伝播させることで、位相差演算処理を複素数型ニューラルネットワークの枠組みで実現することができる。
【0049】
以上、本実施形態に係るニューラルネットワークの構成例について説明した。なお、図2図3を用いて説明した上記の構成はあくまで一例であり、本実施形態に係るニューラルネットワークの構成は係る例に限定されない。例えば、本実施形態に係るニューラルネットワークは、複素数型ニューラルネットワーク層を3つ以上備えてもよい。また、例えば、本実施形態に係る位相差演算層CD1は、複数の中間層HL1を備えてもよい。また、位相差演算層CD1は、中間層HL、分割層DL、統合層ULのセットを複数備えることも可能である。
【0050】
また、本実施形態に係るニューラルネットワークは、複素数型データを実数型データに変換する変換層、および当該変換層により出力される実数型データに基づく演算処理を実行する実数型ニューラルネットワーク層をさらに備えてもよい。
【0051】
図5は、本実施形態に係る変換層を備えるニューラルネットワークのネットワーク構成例を示す図である。図5を参照すると、本実施形態に係るニューラルネットワークは、図2に示した構成に加え、変換層TL1と第1の実数型ニューラルネットワーク層NVNN1をさらに備えることができる。
【0052】
ここで、位相差演算の結果を複素数uとすると、変換層TL1は、下記の数式(7)により複素数zを得ることができる。この際、数式(7)におけるArg(u)は、uの位相であってよい。次に、変換層TL1は、実部を抽出するための下記の数式(8)と、虚部を抽出するための下記の数式(9)をそれぞれ独立に適用することにより、uの振幅に係る実数ニューロン(x=|u|)とuの位相に係る実数ニューロン(y=Arg(u))とを求めることが可能である。この際、Arg(u)には、位相差演算処理による複素数型ニューロン間の位相差成分が含まれているため、実数として位相差が得られることとなる。
【0053】
【数5】
【0054】
以上、本実施形態に係るニューラルネットワークの構成について詳細に説明した。本実施形態に係るニューラルネットワークによれば、予め入力データ間の全組み合わせに係る位相差を算出することなく、当該組み合わせの対応関係を自動的に決定することができ、演算コストを大幅に低減することが可能となる。また、本実施形態に係るニューラルネットワークによれば、ニューロン間における位相の相関関係を考慮することができ、回帰問題や分類問題の推定精度が大きく向上することが期待される。
【0055】
なお、上記の説明では、入力されるデータが複素数データである場合を中心に述べたが、本技術思想は、多元数型ニューラルネットワークにも適用可能である。例えば、多元数体系の一つでる四元数ニューラルネットワークでは、単一の四元数ニューロンを、q=a+bi+cj+dk、と表現することができる。ここで、上記の式におけるi、j、およびkは、虚数単位であってよい。この際、上述した複素数型ニューラルネットワークにおいて位相差を算出する関数f(z,z)=zと同様に、四元数ニューラルネットワークでは、2つの四元数ニューロンの積が算出可能である。このため、共役な四元数q=a−bi−cj−dkを用いて関数f(q,q)=qと求めることにより、四元数ニューラルネットワークにおいてニューロン間の位相差を考慮することが可能となる。
【0056】
<3.第2の実施形態>
<<3.1.第2の実施形態の概要>>
続いて、本発明の第2の実施形態について説明する。本発明の第2の実施形態に係るニューラルネットワークは、入力される複素数データを畳み込むことで複数の特徴マップを出力し、当該特徴マップ間における要素ごとの位相差を算出することができる。すなわち、本実施形態に係るニューラルネットワークは、複素数型畳み込みニューラルネットワーク(複素数型CNN:Convolutional Neural Network)であることを特徴の一つとする。
【0057】
上述したように、非特許文献1には、実数ニューロンで構成される畳み込みニューラルネットワークを拡張した複素数型畳み込みニューラルネットワークが開示されている。しかし、非特許文献1に記載の構成では、ニューロン間における位相差を考慮できないため、位相の相関関係に意味を有するデータに対し、推定精度が劣化することが予想される。
【0058】
ここで、上記の位相の相関関係に意味を有するデータとしては、例えば、信号にフーリエ変換を適用することで得られる周波数スペクトルが挙げられる。周波数スペクトルは複素数で構成されるため、振幅と位相を抽出すること可能であるが、当該位相はフーリエ変換を適用する際の信号の切り出しタイミングや信号振幅の変化などの要因により0〜2πの範囲で変化するため、絶対的な値としてパターン認識などの特徴量に用いることが困難である。
【0059】
このため、周波数スペクトルを特徴量として用いるためには、例えば、隣接する近傍周波数ビン間の位相差に変換するなどの処理が必要となる。このように得られた位相差は相対的な値であるため、上述のような位相変化に対して頑健な特徴量となり得る。
【0060】
図6は、本実施形態に係るニューラルネットワークに入力される複素数データについて説明するための図である。図6の左側には、レーダがオブジェクトO1により反射された際に得られる位相値P1〜P6のイメージが示されている。この際、位相値P1〜P6は、半波長の単位で折り返されるため、図中に示す位相のイメージとは異なり、絶対的な値に意味を有しない。このため、上記のような位相値を非特許文献1に記載されるような構成でそのまま処理しても推定精度が劣化することが予想される。
【0061】
一方、位相同士の相対的な関係、すなわち位相差には、オブジェクトO1の物体形状による差異が現れることが予想される。例えば、図6には、レーダの受信信号から得られる複素数データCVD1が示されている。ここで、複素数データCVD1は、例えば、受信信号の強度を、距離および角度による二次元空間で表したデータであってもよい。この際、複素数データCVD1の各セルには、それぞれ位相θ〜θが格納され得る。一方、この際、位相差を抽出するための位相の組み合わせは膨大となるため、手動ですべての組み合わせを作成するのには限界がある。
【0062】
このため、本実施形態に係るニューラルネットワークでは、互いに構造の異なる一対の畳み込みフィルタを用いることで、位相の組み合わせパターンを自動的に獲得することを可能とする。
【0063】
以下、上記の特徴を有する本実施形態に係るニューラルネットワークの構成について詳細に説明する。なお、以下の説明においては、第1の実施形態との差異について中心に述べ、第1の実施形態と共通する構成については詳細な説明を省略する。
【0064】
<<3.2.ネットワーク構成例>>
(一般的な複素数型畳み込みニューラルネットワーク)
まず、本実施形態に係るニューラルネットワークの優位性を明確とするため、一般的な複素数型畳み込みニューラルネットワークについて説明する。一般的な複素数型畳み込みニューラルネットワークでは、実数型畳み込みニューラルネットワークと同様に、畳み込み処理とプーリング処理とが繰り返し適用され、最終的に複素数型ニューラルネットワークに接続される。
【0065】
ここで、上記の畳み込み処理について説明する。例えば、第l−1層でI×J(i=0,1,…,I;j=0,1,…,J)の大きさを有する複素数の入力特徴マップhと、P×Q(p=0,1,…,P;q=0,1,…,Q)の大きさを有する複素数の重みwと、複素数のバイアスbを用いると、出力される特徴マップuは、下記の数式(10)により表現できる。なお、以降の説明においては、重みwとバイアスbを含めて、畳み込みフィルタ、と称する。
【0066】
【数6】
【0067】
より具体的には、(I,J,P,Q)=(5,5,3,3)のとき、図7における入力特徴マップの破線枠内のニューロンと重みの積和結果にバイアスbを足し込んだものが出力特徴マップuの要素となり得る。図7は、一般的な複素数型畳み込みニューラルネットワークに係る畳み込み処理について説明するための図である。この際、一般的な複素数型畳み込みニューラルネットワークでは、図7に示す破線枠をスライドさせてニューロンの組み合わせを変更することで出力特徴マップuの各要素を計算することが可能である。また、得られた出力マップuに対し、任意の活性化関数が適用されてもよい。
【0068】
ここで、一般に、畳み込み処理では、複数の入力特徴マップに対し複数の畳み込みフィルタが適用される。このため、例えば、入力特徴マップhおよび畳み込みフィルタの数をそれぞれK個およびM個とすると、上述した数式(10)は、下記の数式(11)に置換することが可能である。
【0069】
【数7】
【0070】
この際、出力特徴マップuの数と畳み込みフィルタの数は等しくなる。図8は、一般的な複素数型畳み込みニューラルネットワークにおける出力特徴マップと畳み込みフィルタとの関係について説明するための図である。図8には、3個の入力特徴マップm1〜m3と、2個の畳み込みフィルタf1およびf2と、2個の出力特徴マップu1およびu2が示されている。この際、出力特徴マップu1は、u1=f1*m1+f1*m2+f1*m3と表すことができる。また、出力特徴マップu2は、u2=f2*m1+f2*m2+f2*m3と表すことができる。ただし、ここで上記の*は、畳み込み処理を意味する。
【0071】
このように、一般的な複素数型畳み込みニューラルネットワークでは、畳み込み処理の際、畳み込みフィルタ内での複素数の積和演算が行われる。当該演算の結果、得られる出力特徴マップuは、実数型畳み込みニューラルネットワークの場合と同様、入力特徴マップと畳み込みフィルタとの類似度となる。この際、上記の類似度は、比較可能な尺度である必要があるため、出力特徴マップの振幅が実質的な類似度の指標となり得る。
【0072】
また、複素数型畳み込みニューラルネットワークを用いた学習において、所定要素の類似度を大きくするように複素数の重みを修正する場合、重みの振幅は入力特徴マップの振幅と共起するように修正され、重みの位相は入力特徴マップの逆相に定数を足し込んだものとなるように修正される。ただし、上記の定数は1回の畳み込み演算に関して共通であってよい。また、重みの位相が上記のように修正される理由は、畳み込みに係る積和演算の和の操作において、すべての位相が同一(同位相)であるときに最も振幅、すなわち類似度が大きくなるためである。
【0073】
次に、一般的な複素数型畳み込みニューラルネットワークにおけるプーリング処理について説明する。一般的な複素数型畳み込みニューラルネットワークにおいて用いられるプーリング処理としては、例えば、下記の数式(12)により定義される最大振幅プーリングが挙げられる。プーリング処理では、畳み込み処理の出力である出力特徴マップuを入力として、次層の畳み込み処理に対する入力となる入力特徴マップhを生成する。ただし、Pi,jは、プーリング処理を適用する(i,j)を中心としたU×H領域に係るニューロンの集合である。
【0074】
【数8】
【0075】
最大振幅プーリング処理では、複素数の振幅の最大値に対応する特徴マップの要素のみを抽出することで、対象とする特徴量の位置がマップ内において変化する場合であっても当該位置の変化を無視することができ、ネットワークが特徴量の位置に対する不変性を獲得することが可能となる。
【0076】
(本実施形態に係るニューラルネットワーク)
次に、本実施形態に係るニューラルネットワークの構成について詳細に説明する。上述したとおり、本実施形態に係るニューラルネットワークは、相対的な位相に意味を有するデータへの対応を可能とするものである。このため、本実施形態に係るニューラルネットワークは、上述した一般的な複素数型畳み込みニューラルネットワークが備える構成に加え、入力特徴マップ間の要素ごとの位相差を算出する機能を有してよい。
【0077】
図9は、本実施形態に係るニューラルネットワークのネットワーク構成例を示す図である。図9を参照すると、本実施形態に係るニューラルネットワークは、第1の複素数型畳み込みニューラルネットワーク層CVCNN1、位相差演算層CD2、第2の複素数型畳み込みニューラルネットワーク層CVCNN2、プーリング層PL、変換層TL1、および第1の実数型ニューラルネットワーク層NVNN1を備える。
【0078】
まず、本実施形態に係る第1の複素数型畳み込みニューラルネットワーク層CVCNN1による畳み込み処理について説明する。本実施形態に係る第1の複素数型畳み込みニューラルネットワーク層CVCNN1は、入力される複数の入力特徴マップに対し、互いに構造の異なる一対の畳み込みフィルタを用いた畳み込み処理を行うことができる。
【0079】
図10は、本実施形態に係るニューラルネットワークによる畳み込み処理における入力特徴マップと畳み込みフィルタの関係について説明するための図である。本実施形態に係る第1の複素数型畳み込みニューラルネットワーク層CVCNN1は、例えば、図10に示すように、入力される3つの入力特徴マップm1〜m3に対し、互いに構造の異なる一対の畳み込みフィルタg1およびg2を用いて畳み込み処理を実行し、出力特徴マップu1およびu2を得ることができる。
【0080】
この際、出力特徴マップu1は、u1=g1*m1+g1*m2*g1*m3、により表される。また、出力特徴マップu2は、u2=g2*m1+g2*m2*g2*m3、により表される。
【0081】
より具体的には、本実施形態に係る畳み込み処理では、下記の数式(13)を適用することで、2つの出力特徴マップu1およびu2を求めることができる。ここで、下記の数式(13)におけるP[・]は、一対の畳み込みフィルタ(m=0,1)を示す。
【0082】
【数9】
【0083】
ただし、この際、畳み込みフィルタに係る重みには、一般的な複素数型畳み込みニューラルネットワークとは異なり、実数型の重みパラメータが用いられてよい。重みパラメータに実数を用いることで、入力特徴マップの振幅のみに反応する畳み込みフィルタを学習することができ、さらに畳み込んだ領域についての平均的な位相を有する出力特徴マップを生成することが可能となる。また、本実施形態に係る畳み込み処理には、バイアス項が含まれなくてよい。
【0084】
次に、本実施形態に係る位相差演算層CD2は、得られた出力特徴マップu1およびu2の要素ごとに位相差を算出する関数を適用し、図10に示すように、1つの位相差マップv1に統合する。すなわち、本実施形態に係る位相差演算層CD2も、第1の実施形態に係る位相差演算層CD1と同様に、複素数データに係る複数の集合間における要素ごとの位相差を出力することができる。この際、本実施形態に係る位相差演算層CD2は、例えば、上述した数式(3)や数式(4)を適用することで、位相差マップv1への統合を実現することが可能である。
【0085】
例えば、位相差演算層CD2は、数式(3)を下記の数式(14)のように適用することで統合した位相差マップv1を得ることができる。ここで、統合に用いられる出力特徴マップuは、偶数であってよい。例えば、M個の出力特徴マップuを使用する際、下記の数式(13)を適用することにより、M/2個の位相差マップvを得ることができる。ただし、上線は複素共役を示す。
【0086】
【数10】
【0087】
なお、この際、得られる位相差マップvは、上述したように、互いに構造の異なる一対の畳み込みフィルタを用いて抽出された2つの出力特徴マップu1およびu2の要素ごとの位相差を含む。
【0088】
図11は、本実施形態に係る互いに構造の異なる一対の畳み込みフィルタについて説明するための図である。図11には、構造の異なる一対の畳み込みフィルタg1およびg2の例がパターン1〜3により示されている。上述したように、本実施形態に係る一対の畳み込みフィルタg1およびg2は、実数の重みパラメータを有してよい。重みパラメータに複素数を用いる場合、得られる出力特徴マップu1およびu2の位相には、重みの初期値などにより変動する定数項が現れるが、上記のような不定の定数項は、位相差を算出する関数を適用する場合の誤差要因となり得る。このため、本実施形態では、実数の重みパラメータを用いることで、上記の誤差要因を排除することが可能である。
【0089】
なお、図11においては、説明を容易とするため、一対の畳み込みフィルタg1およびg2が3×3のサイズであり、また、0または1の重みパラメータを有する場合の例を示しているが、本実施形態に係る重みパラメータは、係る例に限定されない。
【0090】
本実施形態に係る構造の異なる一対の畳み込みフィルタg1およびg2は、例えば、図11のパターン1に示すように、中心の平均位相と周囲の平均位相とをそれぞれ抽出するものであってもよい。また、対の畳み込みフィルタg1およびg2は、例えば、パターン2に示すように、左列の平均位相と中央列の平均位相とをそれぞれ抽出するものであってもよい。また、対の畳み込みフィルタg1およびg2は、例えば、パターン3に示すように、左上方と右下方とで対象となるように平均位相をそれぞれ抽出するものであってもよい。
【0091】
このように、本実施形態に係る一対の畳み込みフィルタg1およびg2によれば、例えば、入力特徴マップ上で所定の位相が周囲の位相に対して異なる、などの特徴を有するデータ、すなわち、位相の相関関係に意味を有するデータに対して有効な特徴を抽出することが可能となる。また、本実施形態に係るニューラルネットワークによれば、モデルの訓練によってより有効な一対の畳み込みフィルタのパターンを自動的に決定することが可能となる。
【0092】
本実施形態では、上記のように取得した位相差マップvを、第2の複素数型畳み込みニューラルネットワーク層CVCNN2の入力特徴マップとして用いることで、位相の相関関係に意味を有するデータに有効なネットワークを構成することが可能である。
【0093】
また、本実施形態に係るニューラルネットワークは、第1の実施形態と同様に、変換層TL1および第1の実数型ニューラルネットワーク層NVNN1をさらに備えてもよい。上述したように、本実施形態に係る変換層TL1によれば、1つの複素数データを2つの実数データに変換することができ、実数としての位相差を得ることが可能となる。なお、本実施形態に係る第1の実数型ニューラルネットワーク層NVNN1は、例えば、全結合層やソフトマックス関数などから構成されてもよい。
【0094】
<4.ハードウェア構成例>
次に、本発明の一実施形態に係る情報処理装置10のハードウェア構成例について説明する。図12は、本発明の一実施形態に係る情報処理装置10のハードウェア構成例を示すブロック図である。図12を参照すると、情報処理装置10は、例えば、CPU871と、ROM872と、RAM873と、ホストバス874と、ブリッジ875と、外部バス876と、インターフェース877と、入力部878と、出力部879と、記憶部880と、ドライブ881と、接続ポート882と、通信部883と、を有する。なお、ここで示すハードウェア構成は一例であり、構成要素の一部が省略されてもよい。また、ここで示される構成要素以外の構成要素をさらに含んでもよい。
【0095】
(CPU871)
CPU871は、例えば、演算処理装置又は制御装置として機能し、ROM872、RAM873、記憶部880、又はリムーバブル記録媒体901に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。
【0096】
(ROM872、RAM873)
ROM872は、CPU871に読み込まれるプログラムや演算に用いるデータ等を格納する手段である。RAM873には、例えば、CPU871に読み込まれるプログラムや、そのプログラムを実行する際に適宜変化する各種パラメータ等が一時的又は永続的に格納される。
【0097】
(ホストバス874、ブリッジ875、外部バス876、インターフェース877)
CPU871、ROM872、RAM873は、例えば、高速なデータ伝送が可能なホストバス874を介して相互に接続される。一方、ホストバス874は、例えば、ブリッジ875を介して比較的データ伝送速度が低速な外部バス876に接続される。また、外部バス876は、インターフェース877を介して種々の構成要素と接続される。
【0098】
(入力部878)
入力部878には、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチ、マイク、及びレバー等が用いられる。さらに、入力部878としては、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントローラ(以下、リモコン)が用いられることもある。
【0099】
(出力部879)
出力部879には、例えば、CRT(Cathode Ray Tube)、LCD、又は有機EL等のディスプレイ装置(表示装置)、スピーカ、ヘッドホン等のオーディオ出力装置、プリンタ、携帯電話、又はファクシミリ等、取得した情報を利用者に対して視覚的又は聴覚的に通知することが可能な装置である。
【0100】
(記憶部880)
記憶部880は、各種のデータを格納するための装置である。記憶部880としては、例えば、ハードディスクドライブ(HDD)等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイス等が用いられる。
【0101】
(ドライブ881)
ドライブ881は、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体901に記録された情報を読み出し、又はリムーバブル記録媒体901に情報を書き込む装置である。
【0102】
(リムーバブル記録媒体901)
リムーバブル記録媒体901は、例えば、DVDメディア、Blu−ray(登録商標)メディア、HD DVDメディア、各種の半導体記憶メディア等である。もちろん、リムーバブル記録媒体901は、例えば、非接触型ICチップを搭載したICカード、又は電子機器等であってもよい。
【0103】
(接続ポート882)
接続ポート882は、例えば、USB(Universal Serial Bus)ポート、IEEE1394ポート、SCSI(Small Computer System Interface)、RS−232Cポート、又は光オーディオ端子等のような外部接続機器902を接続するためのポートである。
【0104】
(外部接続機器902)
外部接続機器902は、例えば、プリンタ、携帯音楽プレーヤ、デジタルカメラ、デジタルビデオカメラ、又はICレコーダ等である。
【0105】
(通信部883)
通信部883は、ネットワーク903に接続するための通信デバイスであり、例えば、有線又は無線LAN、Bluetooth(登録商標)、又はWUSB(Wireless USB)用の通信カード、光通信用のルータ、ADSL(Asymmetric Digital Subscriber Line)用のルータ、又は各種通信用のモデム等である。また、内線電話網や携帯電話事業者網等の電話網に接続してもよい。
【0106】
<5.まとめ>
以上説明したように、本発明の一実施形態に係る情報処理装置10は、複素数型ニューラルネットワークを用いた状態推定を行う機能を有する。上記の複素数型ニューラルネットワークは、複素数データに係る複数の集合間における要素ごとの位相差を出力する位相差演算層を備えること、を特徴の一つとする。係る構成によれば、相対的な位相に意味を有するデータに対する推定精度をより向上させることが可能となる。
【0107】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【0108】
10 情報処理装置
110 入力部
120 推定部
130 記憶部
140 出力部
CVNN1 第1の複素数型ニューラルネットワーク層
CD1、CD2 位相差演算層
CVNN2 第2の複素数型ニューラルネットワーク層
TL1 変換層
NVNN1 第1の実数型ニューラルネットワーク層
CVCNN1 第1の複素数型畳み込みニューラルネットワーク層
CVCNN2 第2の複素数型畳み込みニューラルネットワーク層
PL1 プーリング層
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14