JP2023076878A - 機械学習モデルを用いて回帰処理を実行する回帰処理装置、方法、及び、コンピュータープログラム - Google Patents
機械学習モデルを用いて回帰処理を実行する回帰処理装置、方法、及び、コンピュータープログラム Download PDFInfo
- Publication number
- JP2023076878A JP2023076878A JP2021189877A JP2021189877A JP2023076878A JP 2023076878 A JP2023076878 A JP 2023076878A JP 2021189877 A JP2021189877 A JP 2021189877A JP 2021189877 A JP2021189877 A JP 2021189877A JP 2023076878 A JP2023076878 A JP 2023076878A
- Authority
- JP
- Japan
- Prior art keywords
- learning model
- machine learning
- vector
- similarity
- output value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000010801 machine learning Methods 0.000 title claims abstract description 76
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000004590 computer program Methods 0.000 title claims description 12
- 239000013598 vector Substances 0.000 claims abstract description 142
- 238000001228 spectrum Methods 0.000 claims abstract description 94
- 238000013528 artificial neural network Methods 0.000 claims abstract description 28
- 210000002569 neuron Anatomy 0.000 claims description 47
- 230000008569 process Effects 0.000 claims description 32
- 230000004913 activation Effects 0.000 claims description 21
- 238000011524 similarity measure Methods 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 description 38
- 230000006870 function Effects 0.000 description 26
- 239000002775 capsule Substances 0.000 description 15
- 238000010586 diagram Methods 0.000 description 15
- 238000010606 normalization Methods 0.000 description 12
- 230000008901 benefit Effects 0.000 description 9
- 238000013527 convolutional neural network Methods 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 5
- 238000012886 linear function Methods 0.000 description 4
- 230000010365 information processing Effects 0.000 description 3
- 238000011176 pooling Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 230000003595 spectral effect Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000000739 chaotic effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
Description
本開示は、機械学習モデルを用いて回帰処理を実行する回帰処理装置、方法、及び、コンピュータープログラムに関する。
特許文献1,2には、ベクトルニューロンを用いるベクトルニューラルネットワーク型の機械学習モデルとして、カプセルネットワークと呼ばれるものが開示されている。ベクトルニューロンとは、入出力がベクトルであるニューロンを意味する。カプセルネットワークは、カプセルと呼ばれるベクトルニューロンをネットワークのノードとする機械学習モデルである。カプセルネットワークなどのベクトルニューラルネットワーク型の機械学習モデルは、入力データの分類処理に利用することができる。
しかしながら、従来は、ベクトルニューラルネットワークを回帰処理に適用することについては十分な検討がなされておらず、ベクトルニューラルネットワークを用いて精度良く回帰処理を行うことのできる技術が望まれていた。
本開示の第1の形態によれば、複数のベクトルニューロン層を有するベクトルニューラルネットワークを含む機械学習モデルを用いて入力データに対する予測出力値を求める回帰処理を実行する回帰処理装置が提供される。この回帰処理装置は、前記回帰処理を実行する回帰処理部と、前記機械学習モデルに複数の教師データが入力されたときに前記機械学習モデルの特定層の出力から得られた既知特徴スペクトル群を記憶するメモリーと、を備える。前記回帰処理部は、(a)前記機械学習モデルを用いて前記入力データに対する前記予測出力値を求める処理と、(b)前記既知特徴スペクトル群を前記メモリーから読み出す処理と、(c)前記機械学習モデルに前記入力データが入力されたときに前記特定層の出力から得られる特徴スペクトルと、前記既知特徴スペクトル群との間の前記予測出力値に関する類似度を演算する処理と、(d)前記類似度を使用して前記予測出力値の出力を実行する処理と、を実行するように構成されている。
本開示の第2の形態によれば、複数のベクトルニューロン層を有するベクトルニューラルネットワークを含む機械学習モデルを用いて入力データに対する予測出力値を求める回帰処理を実行する方法が提供される。この方法は、(a)前記機械学習モデルを用いて前記入力データに対する前記予測出力値を求める工程と、(b)前記機械学習モデルに複数の教師データが入力されたときに前記機械学習モデルの特定層の出力から得られた既知特徴スペクトル群をメモリーから読み出す工程と、(c)前記機械学習モデルに前記入力データが入力されたときに前記特定層の出力から得られる特徴スペクトルと、前記既知特徴スペクトル群との間の前記予測出力値に関する類似度を演算する工程と、(d)前記類似度を使用して前記予測出力値の出力を実行する工程と、を含む。
本開示の第3の形態によれば、複数のベクトルニューロン層を有するベクトルニューラルネットワークを含む機械学習モデルを用いて入力データに対する予測出力値を求める回帰処理をプロセッサーに実行させるコンピュータープログラムが提供される。このコンピュータープログラムは、(a)前記機械学習モデルを用いて前記入力データに対する前記予測出力値を求める処理と、(b)前記機械学習モデルに複数の教師データが入力されたときに前記機械学習モデルの特定層の出力から得られた既知特徴スペクトル群をメモリーから読み出す処理と、(c)前記機械学習モデルに前記入力データが入力されたときに前記特定層の出力から得られる特徴スペクトルと、前記既知特徴スペクトル群との間の前記予測出力値に関する類似度を演算する処理と、(d)前記類似度を使用して前記予測出力値の出力を実行する処理と、を前記プロセッサーに実行させる。
A.実施形態:
図1は、実施形態における回帰処理システムを示すブロック図である。この回帰処理システムは、情報処理装置100と、カメラ400とを備える。カメラ400は、回帰処理の入力データとしての画像を撮影するためのものである。カメラ400としては、カラー画像を撮影するカメラを用いても良く、或いは、モノクロ画像や分光画像を撮影するカメラを用いても良い。本実施形態では、カメラ400で撮影された画像を教師データや入力データとして使用するが、画像以外のデータを教師データや入力データとして使用してもよい。この場合には、カメラ400の代わりに、データの種類に応じた入力データ取得装置が使用される。
図1は、実施形態における回帰処理システムを示すブロック図である。この回帰処理システムは、情報処理装置100と、カメラ400とを備える。カメラ400は、回帰処理の入力データとしての画像を撮影するためのものである。カメラ400としては、カラー画像を撮影するカメラを用いても良く、或いは、モノクロ画像や分光画像を撮影するカメラを用いても良い。本実施形態では、カメラ400で撮影された画像を教師データや入力データとして使用するが、画像以外のデータを教師データや入力データとして使用してもよい。この場合には、カメラ400の代わりに、データの種類に応じた入力データ取得装置が使用される。
情報処理装置100は、プロセッサー110と、メモリー120と、インターフェイス回路130と、インターフェイス回路130に接続された入力デバイス140及び表示デバイス150と、を有している。インターフェイス回路130には、カメラ400も接続されている。限定されないが例えば、プロセッサー110は、以下で詳述される処理を実行する機能を有するだけでなく、表示デバイス150に、当該処理によって得られるデータ、および当該処理の過程で生成されるデータを表示する機能も有する。
プロセッサー110は、機械学習モデルの学習を実行する学習実行部112、及び、入力データの回帰処理を実行する回帰処理部114として機能する。回帰処理部114は、類似度演算部310と出力実行部320とを含む。学習実行部112と回帰処理部114は、メモリー120に格納されたコンピュータープログラムをプロセッサー110が実行することによってそれぞれ実現される。但し、学習実行部112や回帰処理部114をハードウェア回路で実現してもよい。本開示のプロセッサーは、このようなハードウェア回路をも含む用語である。また、学習処理や回帰処理を実行する1つまたは複数のプロセッサーは、ネットワークを介して接続された1つまたは複数のリモートコンピューターに含まれるプロセッサーであってもよい。
メモリー120には、機械学習モデル200と、教師データ群TDと、既知特徴スペクトル群GKSpと、が格納される。機械学習モデル200は、回帰処理部114による処理に使用される。機械学習モデル200の構成例や動作については後述する。教師データ群TDは、機械学習モデル200の学習に使用されるラベル付きのデータの集合である。本実施形態では、教師データ群TDは画像データの集合である。既知特徴スペクトル群GKSpは、学習済みの機械学習モデル200に教師データを再度入力した際に得られる特徴スペクトルの集合である。特徴スペクトルについては後述する。
図2は、機械学習モデル200の構成を示す説明図である。この機械学習モデル200は、入力層210と、中間層280と、出力層260とを有している。中間層280は、畳み込み層220と、プライマリーベクトルニューロン層230と、第1畳み込みベクトルニューロン層240と、第2畳み込みベクトルニューロン層250と、を含む。出力層260を、「回帰ベクトルニューロン層260」とも呼ぶ。これらの層のうち、入力層210が最も下位の層であり、出力層260が最も上位の層である。以下の説明では、中間層280の各層をそれぞれ「Conv層220」、「PrimeVN層230」、「ConvVN1層240」、「ConvVN2層250」と呼び、出力層260を「RegressVN層260」と呼ぶ。
図2の例では2つの畳み込みベクトルニューロン層240,250を用いているが、畳み込みベクトルニューロン層の数は任意であり、畳み込みベクトルニューロン層を省略してもよい。但し、1つ以上の畳み込みベクトルニューロン層を用いることが好ましい。
入力層210には、28×28画素のサイズの画像が入力される。入力層210以外の各層の構成は、以下のように記述できる。
・Conv層220:Conv[32,5,2]
・PrimeVN層230:PrimeVN[16,1,1]
・ConvVN1層240:ConvVN1[12,3,2]
・ConvVN2層250:ConvVN2[6,3,1]
・RegressVN層260:RegressVN[M,3,1]
・ベクトル次元VD:VD=16
これらの各層の記述において、括弧前の文字列はレイヤー名であり、括弧内の数字は、順に、チャンネル数、カーネルの表面サイズ、及び、ストライドである。例えば、Conv層220のレイヤー名は「Conv」であり、チャンネル数は32、カーネルの表面サイズは5×5、ストライドは2である。図2では、各層の下にこれらの記述が示されている。各層の中に描かれているハッチングを付した矩形は、隣接する上位層の出力ベクトルを算出する際に使用されるカーネルの表面サイズを表している。本実施形態では、入力データが画像データなので、カーネルの表面サイズも2次元である。なお、各層の記述で用いたパラメーターの値は例示であり、任意に変更可能である。
・Conv層220:Conv[32,5,2]
・PrimeVN層230:PrimeVN[16,1,1]
・ConvVN1層240:ConvVN1[12,3,2]
・ConvVN2層250:ConvVN2[6,3,1]
・RegressVN層260:RegressVN[M,3,1]
・ベクトル次元VD:VD=16
これらの各層の記述において、括弧前の文字列はレイヤー名であり、括弧内の数字は、順に、チャンネル数、カーネルの表面サイズ、及び、ストライドである。例えば、Conv層220のレイヤー名は「Conv」であり、チャンネル数は32、カーネルの表面サイズは5×5、ストライドは2である。図2では、各層の下にこれらの記述が示されている。各層の中に描かれているハッチングを付した矩形は、隣接する上位層の出力ベクトルを算出する際に使用されるカーネルの表面サイズを表している。本実施形態では、入力データが画像データなので、カーネルの表面サイズも2次元である。なお、各層の記述で用いたパラメーターの値は例示であり、任意に変更可能である。
入力層210とConv層220は、スカラーニューロンで構成された層である。他の層230~260は、ベクトルニューロンで構成された層である。ベクトルニューロンは、ベクトルを入出力とするニューロンである。上記の記述では、個々のベクトルニューロンの出力ベクトルの次元は16で一定である。以下では、スカラーニューロン及びベクトルニューロンの上位概念として「ノード」という語句を使用する。
図2では、Conv層220について、ノード配列の平面座標を規定する第1軸x及び第2軸yと、奥行きを表す第3軸zとが示されている。また、Conv層220のx,y,z方向のサイズが12,12,32であることが示されている。x方向のサイズとy方向のサイズを「解像度」と呼ぶ。z方向のサイズは、チャンネル数である。これらの3つの軸x,y,zは、他の層においても各ノードの位置を示す座標軸として使用する。但し、図2では、Conv層220以外の層では、これらの軸x,y,zの図示が省略されている。
よく知られているように、畳み込み後の解像度W1は、次式で与えられる。
W1=Ceil{(W0-Wk+1)/S} (A1)
ここで、W0は畳み込み前の解像度、Wkはカーネルの表面サイズ、Sはストライド、Ceil{X}はXの小数点以下を切り上げる演算を行う関数である。
図2に示した各層の解像度は、入力データの解像度を28とした場合の例であり、実際の各層の解像度は入力データのサイズに応じて適宜変更される。
W1=Ceil{(W0-Wk+1)/S} (A1)
ここで、W0は畳み込み前の解像度、Wkはカーネルの表面サイズ、Sはストライド、Ceil{X}はXの小数点以下を切り上げる演算を行う関数である。
図2に示した各層の解像度は、入力データの解像度を28とした場合の例であり、実際の各層の解像度は入力データのサイズに応じて適宜変更される。
RegressVN層260は、M個のチャンネルを有している。Mは、機械学習モデル200から出力される予測出力値の数である。本実施形態において、Mは1であり、1つの予測出力値θprが出力される。予測出力値θprは離散値でなく、連続値である。予測出力値の数Mは、2以上としてもよい。例えば、3次元物体の画像を入力データとする場合には、その3軸回りの3つの回転角度を予測出力値として求めるように機械学習モデル200を構成することも可能である。
RegressVN層260の活性化関数としては、下記(A2)式に示す線形関数を使用することができる。
ここで、ajは層内のj番目のニューロンにおける活性化後の出力ベクトルのノルム、ujは層内のj番目のニューロンにおける活性化前の出力ベクトル、||uj||はベクトルujのノルムである。換言すれば、RegressVN層260の出力は、活性化前のベクトルujの長さに相当する値である。
RegressVN層260の活性化関数としては、上記(A2)式の線形関数以外の種々の関数を使用することが可能だが、ソフトマックス関数は不適切である。RegressVN層260以外の層では、任意の活性化関数を使用可能である。
図2では、更に、各層220,230,240,250,260における部分領域Rnが描かれている。部分領域Rnの添え字「n」は、各層の符号である。例えば、部分領域R220は、Conv層220における部分領域を示す。「部分領域Rn」とは、各層において、第1軸xの位置と第2軸yとの位置で規定される平面位置(x,y)で特定され、第3軸zに沿った複数のチャンネルを含む領域である。部分領域Rnは、第1軸x、第2軸y、および第3軸zに対応する「Width」×「Height」×「Depth」の次元を有する。本実施形態では、1つの「部分領域Rn」に含まれるノードの数は「1×1×デプス数」、すなわち「1×1×チャンネル数」である。
図2に示すように、ConvVN2層250の出力から、後述する特徴スペクトルSpが算出されて、類似度演算部310に入力される。類似度演算部310は、この特徴スペクトルSpと、予め作成されていた既知特徴スペクトル群GKSpとを用いて、後述する類似度を算出する。本実施形態では、この類似度を用いて予測出力値θprの出力を実行する。予測出力値θprの出力の方法については更に後述する。
本開示において、類似度の算出に使用されるベクトルニューロン層を、「特定層」とも呼ぶ。特定層としては、ConvVN2層250以外のベクトルニューロン層を用いてもよく、1つ以上の任意の数のベクトルニューロン層を使用可能である。なお、特徴スペクトルの構成と、特徴スペクトルを用いた類似度の演算方法については後述する。
図3は、機械学習モデルの準備工程の処理手順を示すフローチャートである。ステップS110では、学習実行部112が、ラベル付きの教師データを作成する。
図4は、ラベル付きの教師データを作成する様子を示す説明図である。ここでは、0~9の数字に関する複数の手書き文字画像が、サンプル画像SDとしてカメラ400によって撮像されている。このサンプル画像SDには、49個の手書き文字画像が含まれている。個々の文字画像のサイズは、28×28画素である。教師データTDは、サンプル画像SDに含まれる個々の文字画像を-45°<θ<45°の範囲でランダムに回転させることによって作成されている。本実施形態では、このような教師データTDを5000枚用意した。個々の文字画像には、ラベルとして回転角度θの値を付与した。より具体的には、回転角度θを180で割って正規化し、5.0を加算した値を学習用のラベルとした。このとき、-45°~+45°の回転角度θは、4.75~5.25の範囲のラベルに変換される。このようなラベルを付与した教師データを用いて機械学習モデル200の学習を行えば、任意の入力データに対して、-45°~+45°の範囲外の角度も予測出力値θprとして求められる可能性がある。
ステップS120では、学習実行部112が、教師データ群TDを用いて機械学習モデル200の学習を実行する。学習時には任意の損失関数を使用可能であるが、本実施形態ではMSE(Mean Square Error)を使用した。学習が終了すると、学習済みの機械学習モデル200がメモリー120に保存される。
ステップS130では、学習実行部112が、学習済みの機械学習モデル200に複数の教師データを再度入力して、既知特徴スペクトル群GKSpを生成する。既知特徴スペクトル群GKSpは、以下で説明する特徴スペクトルの集合である。
図5は、学習済みの機械学習モデル200に任意の入力データを入力することによって得られる特徴スペクトルSpを示す説明図である。図2に示したように、本実施形態では、特徴スペクトルSpがConvVN2層250の出力から作成される。図5の横軸は、ConvVN2層250の1つの部分領域R250に含まれる複数のノードの出力ベクトルに関するベクトル要素の位置である。このベクトル要素の位置は、各ノードにおける出力ベクトルの要素番号NDと、チャンネル番号NCとの組み合わせで表される。本実施形態では、ベクトル次元が16(各ノードが出力する出力ベクトルの要素の数)なので、出力ベクトルの要素番号NDは0から15までの16個である。また、ConvVN2層250のチャンネル数は6なので、チャンネル番号NCは0から5までの6個である。換言すれば、この特徴スペクトルSpは、1つの部分領域R250に含まれる各ベクトルニューロンの出力ベクトルの複数の要素値を、第3軸zに沿った複数のチャンネルにわたって配列したものである。
図5の縦軸は、各スペクトル位置での特徴値CVを示す。この例では、特徴値CVは、出力ベクトルの各要素の値VNDである。特徴値CVについては、平均値0へセンタリングするなどの統計処理を行ってもよい。なお、特徴値CVとしては、出力ベクトルの各要素の値VNDと、後述する正規化係数とを乗算した値を使用してもよく、或いは、正規化係数をそのまま使用してもよい。後者の場合には、特徴スペクトルSpに含まれる特徴値CVの数はチャンネル数に等しく、6個である。なお、正規化係数は、そのノードの出力ベクトルのベクトル長さに相当する値である。
1つの入力データに対してConvVN2層250の出力から得られる特徴スペクトルSpの数は、ConvVN2層250の平面位置(x,y)の数、すなわち、部分領域R250の数に等しいので、9個である。
学習実行部112は、学習済みの機械学習モデル200に教師データを再度入力し、図5に示す特徴スペクトルSpを算出して、既知特徴スペクトル群GKSpとしてメモリー120に登録する。
図6は、既知特徴スペクトル群GKSpの構成を示す説明図である。この例では、ConvVN2層250の出力から得られた既知特徴スペクトル群GKSpが示されている。なお、既知特徴スペクトル群GKSpとしては、少なくとも1つのベクトルニューロン層の出力から得られたものが登録されていればよく、ConvVN1層240やRegressVN層260の出力から得られた既知特徴スペクトル群が登録されるようにしてもよい。
既知特徴スペクトル群GKSpの個々のレコードは、層内の部分領域Rnの順序を示すパラメーターkと、データ番号を示すパラメーターqと、既知特徴スペクトルKSpとを含んでいる。既知特徴スペクトルKSpは、図5の特徴スペクトルSpと同じものである。
部分領域Rnのパラメーターkは、特定層に含まれる複数の部分領域Rnのいずれであるか、すなわち、平面位置(x,y)のいずれであるかを示す値を取る。ConvVN2層250については部分領域R250の数が9個なので、k=1~9である。データ番号のパラメーターqは、教師データの連続番号を示しており、1~maxの値を取る。例えば、max=5000である。
ステップS130で使用される複数の教師データは、ステップS120で使用された複数の教師データと同じものである必要は無い。但し、ステップS130においても、ステップS120で使用された複数の教師データの一部又は全部を利用すれば、新たな教師データを準備する必要が無いという利点がある。
図7は、学習済みの機械学習モデル200を用いた回帰処理工程の処理手順を示すフローチャートである。ステップS210では、回帰処理部114が、入力データを生成する。本実施形態では、カメラ400を用いて手書き文字を撮影することによって、28×28画素の文字画像が入力データとして作成される。ステップS220では、回帰処理部114が、必要に応じて入力データに対して前処理を実行する。前処理としては、解像度調整や、データの正規化(min-max normalization)等の処理を利用可能である。前処理は省略可能である。ステップS230では、回帰処理部114が、学習済みの機械学習モデル200と、既知特徴スペクトル群GKSpとをメモリー120から読み出す。
ステップS240では、回帰処理部114が、機械学習モデル200に入力データを入力して、予測出力値θprを求める。本実施形態では、予測出力値θprは、入力データに含まれる手書き文字の回転角度である。ステップS250では、回帰処理部114が、特定層であるConvVN2層250の出力を用いて、図5に示した特徴スペクトルSpを求める。ステップS260では、類似度演算部310が、ステップS250で得られた特徴スペクトルSpと、図6に示した既知特徴スペクトル群GKSpとを用いて類似度を算出する。類似度は、入力データが教師データの特徴に類似している程度を表す指標である。類似度の演算方法については後述する。
ステップS270では、出力実行部320が、類似度を使用して予測出力値θprの出力を実行する。
図8は、回帰処理結果の出力例を示す説明図である。回帰処理の結果表示ウィンドウWD1には、入力データGFの画像と、予測出力値θprと、類似度Smとが表示されている。この例では、入力データGFは、手書き数字の「3」が回転した画像である。予測出力値θprは「23°」であり、類似度Smは「0.96」である。この予測出力値θprは、Regress VN層260の出力から5.0を減算し、180を掛けることによって得ることができる。ユーザーは、類似度Smの値から、予測出力値θprが信頼できるものであるか否かを判断することが可能である。類似度Smが取り得る範囲は-1~+1であり、図8の例では類似度Smが1に近いので、予測出力値θprが信頼できるものであると判断できる。
図9は、回帰処理結果の他の出力例を示す説明図である。回帰処理の結果表示ウィンドウWD2にも、入力データGFの画像と、予測出力値θprと、類似度Smとが表示されている。図8との違いは、類似度Smの名称が「信頼度」となっている点だけである。この例でも、ユーザーは、信頼度の値から、予測出力値θprが信頼できるものであるか否かを判断することが可能である。
図10は、回帰処理結果の更に他の出力例を示す説明図である。この例では、図9と同じ結果表示ウィンドウWD2において、信頼度の数値が低い場合の表示例を示している。ここでは、信頼度としての類似度Smの値が0.55とかなり低いので、予測出力値θprの表示形態が、図9と異なり、信頼度が低いものであることを示す形態となっている。具体的には、予測出力値θprの数値が網掛けされていて、視認し難い表示形態となっている。例えば、出力実行部320は、類似度Smが予め定められた閾値以上の場合に予測出力値θprを有効と判断して図9のような出力を実行し、類似度Smが閾値未満の場合には予測出力値θprを無効と判断して図10のような出力を実行するようにしてもよい。また、類似度Smが閾値未満の場合と閾値以上の場合とで互いに異なる表示形態で予測出力値θprを表示する代わりに、類似度Smが閾値未満の場合には予測出力値θprの出力を停止するようにしてもよい。いずれの場合にも、類似度Smが閾値未満の場合には予測出力値θprの信頼度が低いので、機械学習モデル200で得られた予測出力値θprを無効と判断することができる。
図11は、学習済みの機械学習モデル200を用いた回帰処理の実験結果を示す説明図である。ここでは、多数の手書き文字画像を入力データとして用いて、機械学習モデル200によってその回転角度を予測出力値θprとして求めた結果を示している。横軸は真の回転角度θであり、縦軸は予測出力値θprである。白丸は類似度Smが閾値Th以上の結果を示しており、黒丸は類似度Smが閾値Th未満の結果を示している。この例では、閾値Thは0.95とした。図3に示したように、教師データでは回転角度θを-45°~+45°の範囲としたが、図11に示す結果では、-50°~+50°の範囲で良好な予測出力値θprが得られている。また、-50°~+50°の範囲外では、予測出力値θprの類似度Smが大幅に低下する傾向にある。図8~図10の例で説明したように、類似度Smを使用して予測出力値θprの出力を実行するようにすれば、類似度Smが高く、信頼できる予測出力値θprを得ることができるという利点がある。
以上のように、上記実施形態では、ベクトルニューラルネットワークを含む機械学習モデル200を用いて回帰処理を精度よく実行できる。また、類似度Smを使用して予測出力値θprの出力を実行するので、信頼できる予測出力値θprを得ることが可能である。
B.類似度の算出方法:
上述した類似度の演算方法としては、例えば、以下の方法のいずれかを採用可能である。
(1)特徴スペクトルSpと既知特徴スペクトル群GKSpにおける部分領域Rnの対応を考慮せずに類似度を求める第1の演算方法M1
(2)特徴スペクトルSpと既知特徴スペクトル群GKSpの対応する部分領域Rn同士で類似度を求める第2の演算方法M2
(3)部分領域Rnを全く考慮せずに類似度を求める第3の演算方法M3
以下では、これらの演算方法M1,M2,M3に従って、ConvVN2層250の出力から類似度を算出する方法について順次説明する。
上述した類似度の演算方法としては、例えば、以下の方法のいずれかを採用可能である。
(1)特徴スペクトルSpと既知特徴スペクトル群GKSpにおける部分領域Rnの対応を考慮せずに類似度を求める第1の演算方法M1
(2)特徴スペクトルSpと既知特徴スペクトル群GKSpの対応する部分領域Rn同士で類似度を求める第2の演算方法M2
(3)部分領域Rnを全く考慮せずに類似度を求める第3の演算方法M3
以下では、これらの演算方法M1,M2,M3に従って、ConvVN2層250の出力から類似度を算出する方法について順次説明する。
図12は、類似度の第1の演算方法M1を示す説明図である。第1の演算方法M1では、まず、特定層であるConvVN2層250の出力から、部分領域k毎に類似度を示す局所類似度S(k)が、後述する式に従って算出される。図2の機械学習モデル200では、ConvVN2層250の部分領域R250の個数は9なので、部分領域のパラメーターkは1~9の値を取る。これらの局所類似度S(k)から、図12の右側に示す3種類の類似度Smのいずれかが算出される。
第1の演算方法M1において、局所類似度S(k)は次式を用いて算出される。
S(k)=max[G{Sp(k), KSp(k=all,q=all)}] (B1)
ここで、
kは、部分領域Rnを示すパラメーター、
qは、データ番号を示すパラメーター、
G{a,b}は、aとbの類似度を求める関数、
Sp(k)は、入力データに応じて、特定層の特定の部分領域kの出力から得られる特徴スペクトル、
KSp(k=all,q=all)は、図6に示した既知特徴スペクトル群GKSpのうち、特定層のすべての部分領域kにおけるすべてのデータ番号qの既知特徴スペクトル、
max[X]は、Xの値のうちの最大値を取る論理演算である。
なお、類似度を求める関数G{a,b}としては、例えば、コサイン類似度を求める式や、距離に応じた類似度を求める式を使用できる。
S(k)=max[G{Sp(k), KSp(k=all,q=all)}] (B1)
ここで、
kは、部分領域Rnを示すパラメーター、
qは、データ番号を示すパラメーター、
G{a,b}は、aとbの類似度を求める関数、
Sp(k)は、入力データに応じて、特定層の特定の部分領域kの出力から得られる特徴スペクトル、
KSp(k=all,q=all)は、図6に示した既知特徴スペクトル群GKSpのうち、特定層のすべての部分領域kにおけるすべてのデータ番号qの既知特徴スペクトル、
max[X]は、Xの値のうちの最大値を取る論理演算である。
なお、類似度を求める関数G{a,b}としては、例えば、コサイン類似度を求める式や、距離に応じた類似度を求める式を使用できる。
図12の右側に示す3種類の類似度Smは、複数の部分領域kについての局所類似度S(k)の最大値、平均値、又は、最小値を取ることによって得られたものである。最大値、平均値、又は、最小値のいずれの演算を使用するかは、類似度Smの使用目的に応じて異なる。これらの3種類の演算のいずれを使用するかは、実験的または経験的にユーザーによって予め設定される。上述した実施形態では、局所類似度S(k)の最小値を取ることによって類似度Smを決定した。
以上のように、類似度の第1の演算方法M1では、
(1)入力データに応じて、特定層の特定の部分領域kの出力から得られる特徴スペクトルSpと、その特定層に関連付けられたすべての既知特徴スペクトルKSpとの類似度である局所類似度S(k)を求め、
(2)複数の部分領域kについての局所類似度S(k)の最大値、平均値、又は、最小値を取ることによって類似度Smを求める。
この第1の演算方法M1によれば、比較的簡単な演算及び手順により、類似度Smを求めることができる。
(1)入力データに応じて、特定層の特定の部分領域kの出力から得られる特徴スペクトルSpと、その特定層に関連付けられたすべての既知特徴スペクトルKSpとの類似度である局所類似度S(k)を求め、
(2)複数の部分領域kについての局所類似度S(k)の最大値、平均値、又は、最小値を取ることによって類似度Smを求める。
この第1の演算方法M1によれば、比較的簡単な演算及び手順により、類似度Smを求めることができる。
図13は、類似度の第2の演算方法M2を示す説明図である。第2の演算方法M2では、上述した(B1)式の代わりに次式を用いて局所類似度S(k)を算出する。
S(k)=max[G{Sp(k), KSp(k,q=all)}] (B2)
ここで、
KSp(k,q=all)は、図6に示した既知特徴スペクトル群GKSpのうち、特定層の特定の部分領域kにおけるすべてのデータ番号qの既知特徴スペクトルである。
S(k)=max[G{Sp(k), KSp(k,q=all)}] (B2)
ここで、
KSp(k,q=all)は、図6に示した既知特徴スペクトル群GKSpのうち、特定層の特定の部分領域kにおけるすべてのデータ番号qの既知特徴スペクトルである。
上述した第1の演算方法M1では、特定層のすべての部分領域kにおける既知特徴スペクトルKSp(k=all,q=all)を用いていたのに対して、第2の演算方法M2では、特徴スペクトルSp(k)の部分領域kと同じ部分領域kに対する既知特徴スペクトルKSp(k,q=all)のみを用いている。第2の演算方法M2における他の方法は、第1の演算方法M1と同じである。
類似度の第2の演算方法M2では、
(1)入力データに応じて、特定層の特定の部分領域kの出力から得られる特徴スペクトルSpと、その特定層の特定の部分領域kに関連付けられたすべての既知特徴スペクトルKSpとの類似度である局所類似度S(k)を求め、
(2)複数の部分領域kについての局所類似度S(k)の最大値、平均値、又は、最小値を取ることによって、類似度Smを求める。
この第2の演算方法M2によっても、比較的簡単な演算及び手順により、類似度Smを求めることができる。
(1)入力データに応じて、特定層の特定の部分領域kの出力から得られる特徴スペクトルSpと、その特定層の特定の部分領域kに関連付けられたすべての既知特徴スペクトルKSpとの類似度である局所類似度S(k)を求め、
(2)複数の部分領域kについての局所類似度S(k)の最大値、平均値、又は、最小値を取ることによって、類似度Smを求める。
この第2の演算方法M2によっても、比較的簡単な演算及び手順により、類似度Smを求めることができる。
図14は、類似度の第3の演算方法M3を示す説明図である。第3の演算方法M3では、局所類似度S(k)を求めることなく、特定層であるConvVN2層250の出力から類似度Smが算出される。
第3の演算方法M3で得られる類似度Smは、次式を用いて算出される。
Sm=max[G{Sp(k=all), KSp(k=all,q=all)}] (B3)
ここで、
Sp(k=all)は、入力データに応じて、特定層のすべての部分領域kの出力から得られる特徴スペクトルである。
Sm=max[G{Sp(k=all), KSp(k=all,q=all)}] (B3)
ここで、
Sp(k=all)は、入力データに応じて、特定層のすべての部分領域kの出力から得られる特徴スペクトルである。
以上のように、類似度の第3の演算方法M3では、
(1)入力データに応じて特定層の出力から得られるすべての特徴スペクトルSpと、その特定層に関連付けられたすべての既知特徴スペクトルKSpとの類似度である類似度Smを求める。
この第3の演算方法M3によれば、更に簡単な演算及び手順により、類似度Smを求めることができる。
(1)入力データに応じて特定層の出力から得られるすべての特徴スペクトルSpと、その特定層に関連付けられたすべての既知特徴スペクトルKSpとの類似度である類似度Smを求める。
この第3の演算方法M3によれば、更に簡単な演算及び手順により、類似度Smを求めることができる。
上述した3つの演算方法M1~M3は、いずれも1つの特定層の出力を利用して類似度を演算する方法である。但し、図2に示した複数のベクトルニューロン層240,250,260のうちの1つ以上を特定層として類似度を演算することができる。複数の特定層を用いる場合には、例えば、複数の特定層から得られた複数の類似度のうちの最小値又は平均値を、最終的な類似度として使用することが好ましい。
C.機械学習モデルの各層の出力ベクトルの演算方法:
図2に示した各層の出力の演算方法は、以下の通りである。
図2に示した各層の出力の演算方法は、以下の通りである。
PrimeVN層230の各ノードは、Conv層220の1×1×32個のノードのスカラー出力を32次元のベクトルとみなして、このベクトルに変換行列を乗ずることによってそのノードのベクトル出力を得る。この変換行列は、表面サイズが1×1のカーネルの要素であり、機械学習モデル200の学習によって更新される。なお、Conv層220とPrimeVN層230の処理を統合して、1つのプライマリーベクトルニューロン層として構成することも可能である。
PrimeVN層230を「下位層L」と呼び、その上位側に隣接するConvVN1層240を「上位層L+1」と呼ぶとき、上位層L+1の各ノードの出力は、以下の式を用いて決定される。
ここで、
ML iは、下位層Lにおけるi番目のノードの出力ベクトル、
ML+1 jは、上位層L+1におけるj番目のノードの出力ベクトル、
vijは、出力ベクトルML+1 jの予測ベクトル、
WL ijは、下位層Lの出力ベクトルML iから予測ベクトルvijを算出するための予測行列、
ujは、予測ベクトルvijの和、すなわち線形結合、である和ベクトル、
ajは、和ベクトルujのノルム|uj|を正規化することによって得られる正規化係数であるアクティベーション値、
F(X)は、Xを正規化する正規化関数である。
ML iは、下位層Lにおけるi番目のノードの出力ベクトル、
ML+1 jは、上位層L+1におけるj番目のノードの出力ベクトル、
vijは、出力ベクトルML+1 jの予測ベクトル、
WL ijは、下位層Lの出力ベクトルML iから予測ベクトルvijを算出するための予測行列、
ujは、予測ベクトルvijの和、すなわち線形結合、である和ベクトル、
ajは、和ベクトルujのノルム|uj|を正規化することによって得られる正規化係数であるアクティベーション値、
F(X)は、Xを正規化する正規化関数である。
正規化関数F(X)としては、例えば以下の(E3a)式または(E3b)式を使用できる。
ここで、
kは、上位層L+1のすべてのノードに対する序数、
βは、任意の正の係数である調整パラメーターであり、例えばβ=1である。
正規化関数F(X)としては、このほかに、シグモイド関数を用いることもできる。シグモイド関数はグラフがS字曲線をとる関数の総称であり、例えばロジスティック関数F(x) = 1/(1+exp(-βx))や双曲線正接関数 tanh(x)などがある。
kは、上位層L+1のすべてのノードに対する序数、
βは、任意の正の係数である調整パラメーターであり、例えばβ=1である。
正規化関数F(X)としては、このほかに、シグモイド関数を用いることもできる。シグモイド関数はグラフがS字曲線をとる関数の総称であり、例えばロジスティック関数F(x) = 1/(1+exp(-βx))や双曲線正接関数 tanh(x)などがある。
上記(E3a)式では、上位層L+1のすべてのノードに関して和ベクトルujのノルム|uj|をソフトマックス関数で正規化することによってアクティベーション値ajが得られる。一方、(E3b)式では、和ベクトルujのノルム|uj|を、上位層L+1のすべてのノードに関するノルム|uj|の和で除算することによってアクティベーション値ajが得られる。なお、正規化関数F(X)としては、(E3a)式や(E3b)式以外の他の関数を用いてもよい。
上記(E2)式の序数iは、上位層L+1におけるj番目のノードの出力ベクトルML+1
jを決めるために使用される下位層Lのノードに便宜上割り振られるものであり、1~nの値をとる。また、整数nは、上位層L+1におけるj番目のノードの出力ベクトルML+1
jを決めるために使用される下位層Lのノードの数である。従って、整数nは次式で与えられる。
n=Nk×Nc (E5)
ここで、Nkはカーネルの表面サイズであり、Ncは下位層であるPrimeVN層230のチャンネル数である。図2の例ではNk=9、Nc=16なので、n=144である。
n=Nk×Nc (E5)
ここで、Nkはカーネルの表面サイズであり、Ncは下位層であるPrimeVN層230のチャンネル数である。図2の例ではNk=9、Nc=16なので、n=144である。
ConvVN1層240の出力ベクトルを求めるために使用される1つのカーネルは、カーネルサイズ3×3を表面サイズとし、下位層のチャンネル数16を深さとする3×3×16=144個の要素を有しており、これらの要素のそれぞれは予測行列WL
ijである。また、ConvVN1層240の12個のチャンネルの出力ベクトルを生成するためには、このカーネルが12組必要である。従って、ConvVN1層240の出力ベクトルを求めるために使用されるカーネルの予測行列WL
ijの数は、144×12=1728個である。これらの予測行列WL
ijは、機械学習モデル200の学習により更新される。
上述した(E1)~(E4)式から分かるように、上位層L+1の個々のノードの出力ベクトルML+1
jは、以下の演算によって求められる。
(a)下位層Lの各ノードの出力ベクトルML iに予測行列WL ijを乗じて予測ベクトルvijを求め、
(b)下位層Lの各ノードから得られた予測ベクトルvijの和、すなわち線形結合、である和ベクトルujを求め、
(c)和ベクトルujのノルム|uj|を正規化することによって正規化係数であるアクティベーション値ajを求め、
(d)和ベクトルujをノルム|uj|で除算し、更に、アクティベーション値ajを乗じる。
(a)下位層Lの各ノードの出力ベクトルML iに予測行列WL ijを乗じて予測ベクトルvijを求め、
(b)下位層Lの各ノードから得られた予測ベクトルvijの和、すなわち線形結合、である和ベクトルujを求め、
(c)和ベクトルujのノルム|uj|を正規化することによって正規化係数であるアクティベーション値ajを求め、
(d)和ベクトルujをノルム|uj|で除算し、更に、アクティベーション値ajを乗じる。
なお、アクティベーション値ajは、上位層L+1のすべてのノードに関してノルム|uj|を正規化することによって得られる正規化係数である。従って、アクティベーション値ajは、上位層L+1内の全ノードの中における各ノードの相対的な出力強度を示す指標と考えることができる。(E3)式及び(4)式で使用されるノルムは、典型的な例ではベクトル長さを表すL2ノルムである。このとき、アクティベーション値ajは、出力ベクトルML+1
jのベクトル長さに相当する。アクティベーション値ajは、上述した(E3)式と(E4)式で使用されるだけなので、ノードから出力される必要は無い。但し、アクティベーション値ajを外部に出力するように上位層L+1を構成することも可能である。
ベクトルニューラルネットワークの構成は、カプセルネットワークの構成とほぼ同じであり、ベクトルニューラルネットワークのベクトルニューロンがカプセルネットワークのカプセルに相当する。但し、ベクトルニューラルネットワークで使用される上述の(E1)~(E4)式による演算は、カプセルネットワークで使用される演算と異なる。両者の最も大きな違いは、カプセルネットワークでは、上記(E2)式の右辺の予測ベクトルvijにそれぞれ重みが乗じられており、その重みが、動的ルーティングを複数回繰り返すことによって探索される点である。一方、本実施形態のベクトルニューラルネットワークでは、上述した(E1)~(E4)式を順番に1回計算することによって出力ベクトルML+1
jが得られるので、動的ルーティングを繰り返す必要が無く、演算がより高速であるという利点がある。また、本実施形態のベクトルニューラルネットワークは、カプセルネットワークよりも演算に必要とするメモリー量がカプセルネットワークより少なく、本開示の発明者の実験によれば、約1/2~1/3のメモリー量で済むという利点もある。
ベクトルを入出力とするノードを使用するという点では、ベクトルニューラルネットワークはカプセルネットワークと同じである。従って、ベクトルニューロンを使用する利点もカプセルネットワークと共通している。また、複数の層220~260は、上位に行くほどより大きな領域の特徴を表現し、下位に行くほどより小さな領域の特徴を表現する、という点は、通常の畳み込みニューラルネットワークと同じである。ここで、「特徴」とは、ニューラルネットワークへの入力データに含まれている特徴的な部分を意味する。ベクトルニューラルネットワークやカプセルネットワークでは、或るノードの出力ベクトルが、そのノードが表現する特徴の空間的な情報を表す空間情報を含む点で、通常の畳み込みニューラルネットワークよりも優れている。すなわち、或るノードの出力ベクトルのベクトル長さは、そのノードが表現する特徴の存在確率を表し、ベクトル方向がその特徴の方向やスケール等の空間情報を表している。従って、同じ層に属する2つのノードの出力ベクトルのベクトル方向は、それぞれの特徴の位置関係を表す。あるいは、当該2つのノードの出力ベクトルのベクトル方向は、特徴のバリエーションを表わすとも言える。例えば、「目」の特徴に対応するノードなら、出力ベクトルの方向は、目の細さ、吊り上がり方、などのバリエーションを表し得る。通常の畳み込みニューラルネットワークでは、プーリング処理によって特徴の空間情報が消失してしまうと言われている。この結果、ベクトルニューラルネットワークやカプセルネットワークは、通常の畳み込みニューラルネットワークに比べて入力データを識別する性能に優れているという利点がある。
ベクトルニューラルネットワークの利点は、以下のように考えることも可能である。すなわち、ベクトルニューラルネットワークでは、ノードの出力ベクトルが、入力データの特徴を連続空間内の座標として表現すること、に利点がある。従って、ベクトル方向が近ければ特徴が似ている、というように出力ベクトルを評価できる。また、入力データに含まれている特徴が教師データではカバーできていなくても、補間してその特徴を判別できる、などの利点もある。一方、通常の畳み込みニューラルネットワークは、プーリング処理によって無秩序な圧縮がかかるため、入力データの特徴を連続空間内の座標として表現できない、という欠点がある。
ConvVN2層250とRegressVN層260の各ノードの出力も、上述した(E1)~(E4)式を用いて同様に決定されるので、詳細な説明は省略する。最上位層であるRegressVN層260の解像度は1×1であり、チャンネル数はMである。
RegressVN層260では、上記(E3)式の代わりに、上記(A2)式の線形関数などが活性化関数として使用することも可能である。すなわち、RegressVN層260の出力ベクトルは、上記(A2)式の線形関数によって予測出力値θpreに変換される。あるいは、活性化関数として上述したシグモイド関数を利用することも可能である。
上述の実施形態では、機械学習モデル200として、上記(E1)式~(E4)式の演算によって出力ベクトルを求めるベクトルニューラルネットワークを用いていたが、この代わりに、米国特許第5210798号公報や国際公開2009/083553号公報に開示されているカプセルネットワークを用いてもよい。
・他の形態:
本開示は、上述した実施形態に限られるものではなく、その趣旨を逸脱しない範囲において種々の形態で実現することができる。例えば、本開示は、以下の形態(aspect)によっても実現可能である。以下に記載した各形態中の技術的特徴に対応する上記実施形態中の技術的特徴は、本開示の課題の一部又は全部を解決するために、あるいは、本開示の効果の一部又は全部を達成するために、適宜、差し替えや、組み合わせを行うことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
本開示は、上述した実施形態に限られるものではなく、その趣旨を逸脱しない範囲において種々の形態で実現することができる。例えば、本開示は、以下の形態(aspect)によっても実現可能である。以下に記載した各形態中の技術的特徴に対応する上記実施形態中の技術的特徴は、本開示の課題の一部又は全部を解決するために、あるいは、本開示の効果の一部又は全部を達成するために、適宜、差し替えや、組み合わせを行うことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
(1)本開示の第1の形態によれば、複数のベクトルニューロン層を有するベクトルニューラルネットワークを含む機械学習モデルを用いて入力データに対する予測出力値を求める回帰処理を実行する回帰処理装置が提供される。この回帰処理装置は、前記回帰処理を実行する回帰処理部と、前記機械学習モデルに複数の教師データが入力されたときに前記機械学習モデルの特定層の出力から得られた既知特徴スペクトル群を記憶するメモリーと、を備える。前記回帰処理部は、(a)前記機械学習モデルを用いて前記入力データに対する前記予測出力値を求める処理と、(b)前記既知特徴スペクトル群を前記メモリーから読み出す処理と、(c)前記機械学習モデルに前記入力データが入力されたときに前記特定層の出力から得られる特徴スペクトルと、前記既知特徴スペクトル群との間の前記予測出力値に関する類似度を演算する処理と、(d)前記類似度を使用して前記予測出力値の出力を実行する処理と、を実行するように構成されている。
この装置によれば、ベクトルニューラルネットワークを含む機械学習モデルを用いて回帰処理を精度よく実行できる。また、類似度を使用して予測出力値の出力を実行するので、類似度が高く信頼できる予測出力値を得ることができる。
この装置によれば、ベクトルニューラルネットワークを含む機械学習モデルを用いて回帰処理を精度よく実行できる。また、類似度を使用して予測出力値の出力を実行するので、類似度が高く信頼できる予測出力値を得ることができる。
(2)上記回帰処理装置において、前記処理(d)は、前記予測出力値と共に、前記類似度を出力する処理を含むものとしてもよい。
この装置によれば、ユーザーが、類似度から、予測出力値が信頼できるものであるか否かを判断できる。
この装置によれば、ユーザーが、類似度から、予測出力値が信頼できるものであるか否かを判断できる。
(3)上記回帰処理装置において、前記処理(d)は、前記予測出力値と共に、前記類似度に応じた前記予測出力値の信頼度を出力する処理を含むものとしてもよい。
この装置によれば、ユーザーが、予測出力値の信頼度を容易に理解できる。
この装置によれば、ユーザーが、予測出力値の信頼度を容易に理解できる。
(4)上記回帰処理装置において、前記処理(d)は、前記類似度が予め定められた閾値以上の場合に前記予測出力値を有効と判断し、前記類似度が前記閾値未満の場合に前記予測出力値を無効と判断する処理を含むものとしてもよい。
この装置によれば、類似度が閾値未満の場合には予測出力値の信頼度が低いので、機械学習モデルで得られた予測出力値を無効と判断することができる。
この装置によれば、類似度が閾値未満の場合には予測出力値の信頼度が低いので、機械学習モデルで得られた予測出力値を無効と判断することができる。
(5)上記回帰処理装置において、前記特定層は、第1軸と第2軸の2つの軸で規定された平面に配置されたベクトルニューロンが、前記2つの軸とは異なる方向の第3軸に沿って複数のチャンネルとして配置されている構成を有する。前記特徴スペクトルは、(i)前記特定層のうちの1つの平面位置におけるベクトルニューロンの出力ベクトルの複数の要素値を、前記第3軸に沿った前記複数のチャンネルにわたって配列した第1種の特徴スペクトルと、(ii)前記第1種の特徴スペクトルの各要素値に、前記出力ベクトルのベクトル長に相当するアクティベーション値を乗じることによって得られる第2種の特徴スペクトルと、(iii)前記特定層のうちの1つの平面位置における前記アクティベーション値を、前記第3軸に沿った前記複数のチャンネルにわたって配列した第3種の特徴スペクトルと、のうちのいずれかであるものとしてもよい。
この装置によれば、特徴スペクトルを容易に求めることができる。
この装置によれば、特徴スペクトルを容易に求めることができる。
(6)本開示の第2の形態によれば、複数のベクトルニューロン層を有するベクトルニューラルネットワークを含む機械学習モデルを用いて入力データに対する予測出力値を求める回帰処理を実行する方法が提供される。この方法は、(a)前記機械学習モデルを用いて前記入力データに対する前記予測出力値を求める工程と、(b)前記機械学習モデルに複数の教師データが入力されたときに前記機械学習モデルの特定層の出力から得られた既知特徴スペクトル群をメモリーから読み出す工程と、(c)前記機械学習モデルに前記入力データが入力されたときに前記特定層の出力から得られる特徴スペクトルと、前記既知特徴スペクトル群との間の前記予測出力値に関する類似度を演算する工程と、(d)前記類似度を使用して前記予測出力値の出力を実行する工程と、を含む。
(7)本開示の第3の形態によれば、複数のベクトルニューロン層を有するベクトルニューラルネットワークを含む機械学習モデルを用いて入力データに対する予測出力値を求める回帰処理をプロセッサーに実行させるコンピュータープログラムが提供される。このコンピュータープログラムは、(a)前記機械学習モデルを用いて前記入力データに対する前記予測出力値を求める処理と、(b)前記機械学習モデルに複数の教師データが入力されたときに前記機械学習モデルの特定層の出力から得られた既知特徴スペクトル群をメモリーから読み出す処理と、(c)前記機械学習モデルに前記入力データが入力されたときに前記特定層の出力から得られる特徴スペクトルと、前記既知特徴スペクトル群との間の前記予測出力値に関する類似度を演算する処理と、(d)前記類似度を使用して前記予測出力値の出力を実行する処理と、を前記プロセッサーに実行させる。
本開示は、上記以外の種々の形態で実現することも可能である。例えば、回帰処理装置の機能を実現するためのコンピュータープログラム、そのコンピュータープログラムを記録した一時的でない記録媒体(non-transitory storage medium)等の形態で実現することができる。
100…情報処理装置、110…プロセッサー、112…学習実行部、114…回帰処理部、120…メモリー、130…インターフェイス回路、140…入力デバイス、150…表示デバイス、200…機械学習モデル、210…入力層、220…畳み込み層、230…プライマリーベクトルニューロン層、240…第1畳み込みベクトルニューロン層、250…第2畳み込みベクトルニューロン層、260…回帰ベクトルニューロン層、280…中間層、310…類似度演算部、320…出力実行部、400…カメラ
Claims (7)
- 複数のベクトルニューロン層を有するベクトルニューラルネットワークを含む機械学習モデルを用いて入力データに対する予測出力値を求める回帰処理を実行する回帰処理装置であって、
前記回帰処理を実行する回帰処理部と、
前記機械学習モデルに複数の教師データが入力されたときに前記機械学習モデルの特定層の出力から得られた既知特徴スペクトル群を記憶するメモリーと、
を備え、
前記回帰処理部は、
(a)前記機械学習モデルを用いて前記入力データに対する前記予測出力値を求める処理と、
(b)前記既知特徴スペクトル群を前記メモリーから読み出す処理と、
(c)前記機械学習モデルに前記入力データが入力されたときに前記特定層の出力から得られる特徴スペクトルと、前記既知特徴スペクトル群との間の前記予測出力値に関する類似度を演算する処理と、
(d)前記類似度を使用して前記予測出力値の出力を実行する処理と、
を実行するように構成されている、回帰処理装置。 - 請求項1に記載の回帰処理装置であって、
前記処理(d)は、前記予測出力値と共に、前記類似度を出力する処理を含む、回帰処理装置。 - 請求項1に記載の回帰処理装置であって、
前記処理(d)は、前記予測出力値と共に、前記類似度に応じた前記予測出力値の信頼度を出力する処理を含む、回帰処理装置。 - 請求項1に記載の回帰処理装置であって、
前記処理(d)は、前記類似度が予め定められた閾値以上の場合に前記予測出力値を有効と判断し、前記類似度が前記閾値未満の場合に前記予測出力値を無効と判断する処理を含む、回帰処理装置。 - 請求項1~4のいずれか一項に記載の回帰処理装置であって、
前記特定層は、第1軸と第2軸の2つの軸で規定された平面に配置されたベクトルニューロンが、前記2つの軸とは異なる方向の第3軸に沿って複数のチャンネルとして配置されている構成を有し、
前記特徴スペクトルは、
(i)前記特定層のうちの1つの平面位置におけるベクトルニューロンの出力ベクトルの複数の要素値を、前記第3軸に沿った前記複数のチャンネルにわたって配列した第1種の特徴スペクトルと、
(ii)前記第1種の特徴スペクトルの各要素値に、前記出力ベクトルのベクトル長に相当するアクティベーション値を乗じることによって得られる第2種の特徴スペクトルと、
(iii)前記特定層のうちの1つの平面位置における前記アクティベーション値を、前記第3軸に沿った前記複数のチャンネルにわたって配列した第3種の特徴スペクトルと、
のうちのいずれかである、回帰処理装置。 - 複数のベクトルニューロン層を有するベクトルニューラルネットワークを含む機械学習モデルを用いて入力データに対する予測出力値を求める回帰処理を実行する方法であって、
(a)前記機械学習モデルを用いて前記入力データに対する前記予測出力値を求める工程と、
(b)前記機械学習モデルに複数の教師データが入力されたときに前記機械学習モデルの特定層の出力から得られた既知特徴スペクトル群をメモリーから読み出す工程と、
(c)前記機械学習モデルに前記入力データが入力されたときに前記特定層の出力から得られる特徴スペクトルと、前記既知特徴スペクトル群との間の前記予測出力値に関する類似度を演算する工程と、
(d)前記類似度を使用して前記予測出力値の出力を実行する工程と、
を含む、方法。 - 複数のベクトルニューロン層を有するベクトルニューラルネットワークを含む機械学習モデルを用いて入力データに対する予測出力値を求める回帰処理をプロセッサーに実行させるコンピュータープログラムであって、
前記コンピュータープログラムは、
(a)前記機械学習モデルを用いて前記入力データに対する前記予測出力値を求める処理と、
(b)前記機械学習モデルに複数の教師データが入力されたときに前記機械学習モデルの特定層の出力から得られた既知特徴スペクトル群をメモリーから読み出す処理と、
(c)前記機械学習モデルに前記入力データが入力されたときに前記特定層の出力から得られる特徴スペクトルと、前記既知特徴スペクトル群との間の前記予測出力値に関する類似度を演算する処理と、
(d)前記類似度を使用して前記予測出力値の出力を実行する処理と、
を前記プロセッサーに実行させる、コンピュータープログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021189877A JP2023076878A (ja) | 2021-11-24 | 2021-11-24 | 機械学習モデルを用いて回帰処理を実行する回帰処理装置、方法、及び、コンピュータープログラム |
US18/058,278 US20230161999A1 (en) | 2021-11-24 | 2022-11-23 | Regression processing device configured to execute regression processing using machine learning model, method, and non-transitory computer-readable storage medium storing computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021189877A JP2023076878A (ja) | 2021-11-24 | 2021-11-24 | 機械学習モデルを用いて回帰処理を実行する回帰処理装置、方法、及び、コンピュータープログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023076878A true JP2023076878A (ja) | 2023-06-05 |
Family
ID=86383949
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021189877A Pending JP2023076878A (ja) | 2021-11-24 | 2021-11-24 | 機械学習モデルを用いて回帰処理を実行する回帰処理装置、方法、及び、コンピュータープログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20230161999A1 (ja) |
JP (1) | JP2023076878A (ja) |
-
2021
- 2021-11-24 JP JP2021189877A patent/JP2023076878A/ja active Pending
-
2022
- 2022-11-23 US US18/058,278 patent/US20230161999A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230161999A1 (en) | 2023-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111819568B (zh) | 人脸旋转图像的生成方法及装置 | |
US20210209797A1 (en) | Point-based object localization from images | |
Yuan et al. | Factorization-based texture segmentation | |
US20190286953A1 (en) | System and Methods for Efficiently Implementing a Convolutional Neural Network Incorporating Binarized Filter and Convolution Operation for Performing Image Classification | |
WO2018021942A2 (ru) | Распознавание лиц с помощью искусственной нейронной сети | |
Furukawa | SOM of SOMs | |
CN113362382A (zh) | 三维重建方法和三维重建装置 | |
EP3905194A1 (en) | Pose estimation method and apparatus | |
US11875424B2 (en) | Point cloud data processing method and device, computer device, and storage medium | |
CN112634149B (zh) | 一种基于图卷积网络的点云去噪方法 | |
Vasilescu et al. | CausalX: Causal eXplanations and block multilinear factor analysis | |
CN117581232A (zh) | 基于NeRF的机器学习模型的加速训练 | |
CN115210763A (zh) | 用于包括姿态和大小估计的对象检测的系统和方法 | |
CN110163095B (zh) | 回环检测方法、回环检测装置及终端设备 | |
CN115222896A (zh) | 三维重建方法、装置、电子设备及计算机可读存储介质 | |
US20220164577A1 (en) | Object detection method, object detection apparatus, and non-transitory computer-readable storage medium storing computer program | |
JP7225731B2 (ja) | 多変数データシーケンスの画像化 | |
CN117372604B (zh) | 一种3d人脸模型生成方法、装置、设备及可读存储介质 | |
JP2023076878A (ja) | 機械学習モデルを用いて回帰処理を実行する回帰処理装置、方法、及び、コンピュータープログラム | |
CN109902720A (zh) | 基于子空间分解进行深度特征估计的图像分类识别方法 | |
CN115719414A (zh) | 基于任意四边形回归的目标检测与精确定位方法 | |
Nelyubina et al. | Transforms of Hough Type in Abstract Feature Space: Generalized Precedents. | |
JP2022072648A (ja) | 機械学習モデルを用いてクラス分類処理を実行する方法、情報処理装置、及び、コンピュータープログラム | |
US20230169307A1 (en) | Method of executing class classification processing using machine learning model, information processing device, and non-transitory computer-readable storage medium storing computer program | |
Cevik et al. | FTSH: a framework for transition from square image processing to hexagonal image processing |