(57)【要約】【課題】ＮＮ識別器及びＡＥ識別器が有するそれぞれの問題点を克服して、ラベル推定精度を向上させる。【解決手段】本実施形態に係る識別器は、各分類ラベルに対応した複数のオートエンコーダを含む学習モデル部３０と、各オートエンコーダについて、入力データの各入力変数と、各入力変数に対応する出力変数との差である変数差を算出し、複数の変数差に基づいて、オートエンコーダの入力データと出力データの誤差の大きさを示す再構成誤差を算出する再構成誤差算出部３２と、各オートエンコーダに対応する複数の再構成誤差に基づいて、入力データが各分類ラベルに属する確率を算出する確率算出部３６とを含んで構成される。本実施形態に係る識別器は、分類ラベルが既知の学習用データを入力して、学習用データが属する分類ラベルに対応する確率が最大となるように、複数のオートエンコーダが学習される。【選択図】図２
2019067299.tif 000002
【特許請求の範囲】
【請求項１】
複数の分類ラベルに対応した複数の学習モデルであって、それぞれの前記学習モデルが、複数の入力変数を含む入力データに対して複数の出力変数を含む出力データを出力し、自学習モデルに対応する分類ラベルに属する入力データに対しては当該入力データの複数の入力変数と同等の値を複数の出力変数として有する出力データを出力し、自学習モデルに対応する分類ラベルに属さない入力データに対しては当該入力データの複数の入力変数とは異なる複数の出力変数を有する出力データを出力するように学習可能な複数の学習モデルと、
前記複数の学習モデルそれぞれについて、各入力変数と、各入力変数に対応する出力変数との差を算出し、得られた複数の前記差に基づいて、入力データと出力データとの誤差の大きさを示す再構成誤差を算出する再構成誤差算出部と、
前記複数の学習モデルそれぞれについて算出された複数の前記再構成誤差に基づいて、前記複数の分類ラベルそれぞれについて、前記入力データが当該分類ラベルに属する確率を算出する確率算出部と、
を備えることを特徴とするラベル推定装置。
【請求項２】
前記複数の学習モデルは、前記確率算出部が算出した複数の確率に基づいて、前記複数の確率のうち、入力データが属する分類ラベルに対応する確率が最大となるように学習される、
ことを特徴とする請求項１に記載のラベル推定装置。
【請求項３】
前記複数の学習モデルそれぞれは、前記複数の入力変数のうちの一部の入力変数であって予め定められた無考慮入力変数を考慮せずに前記複数の出力変数を出力し、
前記再構成誤差算出部は、前記無考慮入力変数と、当該無考慮入力変数に対応する出力変数との差を考慮せずに前記再構成誤差を算出する、
ことを特徴とする請求項１又は２に記載のラベル推定装置。
【請求項４】
一の前記学習モデルに関する前記無考慮入力変数と、他の前記学習モデルに関する前記無考慮入力変数は、互いに異なる入力変数である、
ことを特徴とする請求項３に記載のラベル推定装置。
【請求項５】
コンピュータを、
複数の分類ラベルに対応した複数の学習モデルであって、それぞれの前記学習モデルが、複数の入力変数を含む入力データに対して複数の出力変数を含む出力データを出力し、自学習モデルに対応する分類ラベルに属する入力データに対しては当該入力データの複数の入力変数と同等の値を複数の出力変数として有する出力データを出力し、自学習モデルに対応する分類ラベルに属さない入力データに対しては当該入力データの複数の入力変数とは異なる複数の出力変数を有する出力データを出力するように学習可能な複数の学習モデルと、
前記複数の学習モデルそれぞれについて、各入力変数と、各入力変数に対応する出力変数との差を算出し、得られた複数の前記差に基づいて、入力データと出力データとの誤差の大きさを示す再構成誤差を算出する再構成誤差算出部と、
前記複数の学習モデルそれぞれについて算出された複数の前記再構成誤差に基づいて、前記複数の分類ラベルそれぞれについて、前記入力データが当該分類ラベルに属する確率を算出する確率算出部と、
として機能させることを特徴とするラベル推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ラベル推定装置及びラベル推定プログラムに関する。
【背景技術】
【０００２】
センサあるいは通信技術の発達により、様々な対象のデータ収集が容易に可能となっている。一方において、機械学習技術の発達により、得られたデータの特徴を学習することが可能となり、これによりデータを複数の分類ラベル（カテゴリ）に分類することが可能になっている。
【０００３】
詳しくは、分類には学習モデルを用いた識別器を用いることができる。予め分類ラベルが既知のデータを使って、識別器で用いられている学習モデルを学習させることで、学習モデルにデータの特徴を学習させる。これにより、新たに得られたデータを当該識別器に入力することで、当該データの分類を行うことができるようになる。このように、データを複数の分類ラベルに分類することはラベル推定とも呼ばれる。
【０００４】
ラベル推定に用いられる識別器としては、学習モデルとしてニューラルネットワークを用いた識別器が知られている。あるいは、非特許文献１に記載されているようなオートエンコーダ（自己符号化器）を学習モデルとして用いた識別器を利用することも考えられる。
【０００５】
ニューラルネットワークを用いた識別器（以下「ＮＮ（Neural Network）識別器」と記載する）を用いたラベル推定の方法について説明する。図６は、ＮＮ識別器の構造を示す図である。ここでは、複数の入力変数ｘ１、ｘ２、ｘ３・・・を含む入力データのラベル推定を行う場合を考える。
【０００６】
ＮＮ識別器は、それぞれが複数のユニットを含む複数の層を含んで構成される。通常、最も入力側に位置する入力層、最も出力側に位置する出力層、及び、入力層と出力層の間に設けられる中間層（あるいは隠れ層とも呼ばれる）を含んで構成される。図６の例では、中間層は１層となっているが、中間層として複数の層を有していてもよい。
【０００７】
各入力変数は、入力層の各ユニットに入力される。各ユニットにおいては、各入力変数に対する重みｗ１、ｗ２、ｗ３・・・、及びバイアスｂが定義されている。各入力変数と対応する重みが掛け合わされた値の合計にバイアスを加算した値が当該ユニットの入力となる。つまり、入力層の１つのユニットに対する入力ｕは、
【数１】
2019067299.tif 000003
で表される。ここで、Ｉは入力変数の数である。なお、ユニット毎に、重みｗ１、ｗ２、ｗ３・・・と、バイアスｂはそれぞれ異なるものであってよい。
【０００８】
各ユニットは、入力ｕに対する、活性化関数と呼ばれる関数ｆの出力を出力する。すなわち、各ユニットの出力ｚは、
ｚ＝ｆ（ｕ）    ・・・（式２）
で表される。入力層の各ユニットからの出力は、中間層の各ユニットに入力される。すなわち、入力層の各ユニットと中間層の各ユニットは全結合される。
【０００９】
中間層の各ユニットは、入力層の各ユニットの出力を入力として、上記と同様の処理を行う。すなわち、中間層の各ユニットには、入力層の各ユニットに対する重みとバイアスが設定されている。中間層の各ユニットからの出力は、出力層の各ユニットに入力される。すなわち、中間層の各ユニットと出力層の各ユニットも全結合される。出力層の各ユニットも、中間層の各ユニットの出力を入力として、上記と同様の処理を行う。すなわち、出力層の各ユニットには、中間層の各ユニットに対する重みとバイアスが設定されている。
【００１０】
出力層の各ユニットの出力は、ソフトマックス関数に入力される。ソフトマックス関数とは、出力層の各ユニットの出力に基づいて、ＮＮ識別器に入力された入力データが各分類ラベルに属する確率を出力するものである。ＮＮ識別器においては、ソフトマックス関数の複数の出力が出力データの出力変数ｙ１、ｙ２、ｙ３・・・となっており、出力変数ｙ１、ｙ２、ｙ３・・・が、入力データの各分類ラベルに属する各確率を表すものとなる。具体的には、ソフトマックス関数は、以下の式で与えられる。
【数２】
2019067299.tif 000004
ここで、ｙｋはｋ番目の出力変数であり、Ｍは出力層のユニット数であり、ｚｊ（ｋ）はｊ（ｋ）番目の出力層のユニットの出力値である。上式が示す通り、ソフトマックス関数により、出力層のｋ番目のユニットの出力がｙｋに変換される。すなわち、ソフトマックス関数により、出力層の各ユニットの出力が各出力変数ｙに変換されている。
【００１１】
ソフトマックス関数の特徴としては、ソフトマックス関数の各出力の合計が１となることである。したがって、出力変数ｙｋが分類ラベルｋに対応するものとするならば、出力変数ｙｋの値が、当該入力データが分類ラベルｋに属する確率を表すものと解釈できる。分類ラベルが既知の入力データをＮＮ識別器に入力し、その出力データにおいて、当該入力データの分類ラベルに対応する出力変数が最も大きくなるように、各層の各ユニットの重み及びバイアスが調整される（すなわち学習される）。
【００１２】
十分に学習されたＮＮ識別器に入力データを入力することで、得られた各出力変数の値に基づいて、当該入力データのラベル推定を行うことができる。具体的には、入力データは、各出力変数のうち、最も値（確率）が大きかった出力変数（理想的には１）に対応する分類ラベルである、と推定することができる。例えば、複数の出力変数のうち、ｙ１が最も大きな値を示すならば、当該入力データは分類ラベル１に属するものであると推定できる。
【００１３】
次に、オートエンコーダを用いた識別器（以下「ＡＥ（Auto Encoder）識別器」と記載する）を用いたラベル推定の方法について説明する。図７は、ＡＥ識別器に用いられるオートエンコーダの構造を示す図である。ここでも、オートエンコーダの入力として複数の入力変数ｘ１、ｘ２、ｘ３・・・を含む入力データを入力する場合を考える。
【００１４】
ニューラルネットワークと同様に、オートエンコーダは、それぞれが複数のユニットを含む、入力層、１又は複数の層からなる中間層、及び出力層を含んで構成される。ニューラルネットワークと同様に、入力層の各ユニットと中間層の各ユニット、及び、中間層の各ユニットと出力層の各ユニットとは互いに全結合されている。なお、オートエンコーダにおいては、入力層のユニット数と出力層のユニット数は同じになっており、中間層のユニット数は、入力層又は出力層のユニット数に比して少なくなっている。
【００１５】
オートエンコーダの各ユニットは、ニューラルネットワークのユニットと同様に、各入力と対応する重み及びバイアスが設定されており、各入力と各重みとが掛け合わされた値の合計にバイアスを加算した値を入力とし、当該入力に対する活性化関数の出力を出力する。オートエンコーダは、特定の入力データを入力した場合に、出力層が出力する出力データが当該入力データと同じになるように（ｘ１＝ｘ’１、ｘ２＝ｘ’２、ｘ３＝ｘ’３・・・となるように）各ユニットが学習されるという特徴を有する。
【００１６】
各入力変数と、それに対応する出力変数との差に基づいて、両者の誤差の大きさを示す再構成誤差が算出される。再構成誤差は、例えば、下記式（４）が示すように、各入力変数と各出力変数の差の２乗の平均値で算出される。
【数３】
2019067299.tif 000005
ここで、Ｎは入力変数（又は出力変数）の数である。
【００１７】
オートエンコーダは、再構成誤差が小さくなるように学習される。これにより、十分に学習されたオートエンコーダは、特定の入力データが入力された場合、出力データとして当該入力データとほぼ同等のデータを出力することができるようになる。
【００１８】
なお、上述のように、オートエンコーダにおいては、入力層及び出力層のユニット数に対して中間層のユニット数が少なくなっている。つまり、中間層においては入力データがより低次元のデータで表現されていることになる。このように、オートエンコーダは、主に、入力データの特徴抽出（すなわち入力データの低次元化）という目的で利用される。
【００１９】
ＡＥ識別器においては、各分類ラベルに対応した複数のオートエンコーダが用意される。例えば、分類ラベル１に対応したオートエンコーダ１は、分類ラベル１の入力データが入力された場合に、当該入力データとほぼ同等の出力データを出力し（換言すればその他の分類ラベルの入力データに対しては入力データと同等の出力データを出力しない）、分類ラベル２に対応したオートエンコーダ２は、分類ラベル２の入力データが入力された場合に、当該入力データとほぼ同等の出力データを出力する。その上で、各分類ラベルに対応した複数のオートエンコーダに、ラベル推定の対象となる入力データを入力する。そして、各オートエンコーダの再構成誤差を比較し、再構成誤差が最も小さくなったオートエンコーダに対応する分類ラベルが、当該入力データの分類ラベルとして推定できる。
【先行技術文献】
【非特許文献】
【００２０】
【非特許文献１】"Reducing the Dimensionality of Data with Neural Networks", Science 313, 504(2006)
【発明の概要】
【発明が解決しようとする課題】
【００２１】
ＮＮ識別器とＡＥ識別器に対しては、それぞれ問題点を指摘することができる。
【００２２】
まず、ＮＮ識別器については、入力データが各分類ラベルに属する確率のみが出力データとして出力されるために、複数の入力変数のうち、どの入力変数がラベル推定に影響したのかを把握することが困難となっている。このことに起因して、複数の入力変数の中に、ラベル推定には不必要な入力変数が混在している場合に、ラベル推定の精度が低下するという問題が生じ得る。
【００２３】
例えば、ＮＮ識別器が図８に示すような学習データで学習された場合を考える。図８（ａ）には、分類ラベルの１つである「低出力時データ」に分類された学習データの各入力変数（風速、温度誤差、外気温、外気圧など）が示され、図８（ｂ）には、分類ラベルの１つである「中出力時データ」に分類された学習データの各入力変数が示されている。ここで、ラベル推定が必要な入力データとして、図９に示すように、風速が０．２２［ｍ／ｓ］、温度誤差が２．２［℃］、外気温が３３［℃］、外気圧が９９９［ｈＰａ］という入力データをラベル推定する場合を考える。この入力データの真の分類ラベルは「中出力時データ」であるとする。
【００２４】
しかしながら、図８（ａ）及び図８（ｂ）の学習データを用いて学習されたＮＮ識別器においては、本来ラベル推定に不要な入力変数である、外気温及び外気圧の値が影響して、誤って「低出力時データ」に分類されてしまう可能性が高くなってしまう。このようにして、ラベル推定の精度が低下し得る。
【００２５】
仮に、何らかの方法で、分類に不要な入力変数が特定できたとしても、各分類ラベル毎に、不要な入力変数が異なる場合がある。この場合、ＮＮ識別器においては、１つの識別器において各分類ラベルへの分類を行うために、各分類ラベル毎に不要な入力変数を選択することができない。
【００２６】
次に、ＡＥ識別器については、入力データを複数のオートエンコーダに入力し、各オートエンコーダの再構成誤差の値に基づいてラベル推定を行うが、各オートエンコーダの再構成誤差のスケールが一致していない場合、各オートエンコーダの再構成誤差の比較が成立せず、それに起因して、ラベル推定の精度が低下するという問題が生じる。
【００２７】
再構成誤差のスケールの不一致は、各オートエンコーダの習熟度の差によって生じるものである。例えば、分類ラベル１に対応したオートエンコーダ１は、習熟度が高く、分類ラベル１の入力データに近い出力データを出力しやすくなっており、分類ラベル２に対応したオートエンコーダ２は、習熟度が低く、分類ラベル２の入力データに近い出力データを出力しにくくなっている状態を考える。この場合、真の分類ラベルは分類ラベル２であるが分類ラベル１に近い内容の入力データが入力された場合、オートエンコーダ１の再構成誤差がオートエンコーダ２の再構成誤差よりも小さくなってしまう場合がある。この場合、当該入力データは、分類ラベル１に誤って分類されてしまう。このようにして、ラベル推定の精度が低下し得る。
【００２８】
本発明の目的は、ＮＮ識別器及びＡＥ識別器が有するそれぞれの問題点を克服して、ラベル推定精度を向上させることにある。
【課題を解決するための手段】
【００２９】
本発明は、複数の分類ラベルに対応した複数の学習モデルであって、それぞれの前記学習モデルが、複数の入力変数を含む入力データに対して複数の出力変数を含む出力データを出力し、自学習モデルに対応する分類ラベルに属する入力データに対しては当該入力データの複数の入力変数と同等の値を複数の出力変数として有する出力データを出力し、自学習モデルに対応する分類ラベルに属さない入力データに対しては当該入力データの複数の入力変数とは異なる複数の出力変数を有する出力データを出力するように学習可能な複数の学習モデルと、前記複数の学習モデルそれぞれについて、各入力変数と、各入力変数に対応する出力変数との差を算出し、得られた複数の前記差に基づいて、入力データと出力データとの誤差の大きさを示す再構成誤差を算出する再構成誤差算出部と、前記複数の学習モデルそれぞれについて算出された複数の前記再構成誤差に基づいて、前記複数の分類ラベルそれぞれについて、前記入力データが当該分類ラベルに属する確率を算出する確率算出部と、を備えることを特徴とするラベル推定装置である。
【００３０】
望ましくは、前記複数の学習モデルは、前記確率算出部が算出した複数の確率に基づいて、前記複数の確率のうち、入力データが属する分類ラベルに対応する確率が最大となるように学習される。
【００３１】
望ましくは、前記複数の学習モデルそれぞれは、前記複数の入力変数のうちの一部の入力変数であって予め定められた無考慮入力変数を考慮せずに前記複数の出力変数を出力し、前記再構成誤差算出部は、前記無考慮入力変数と、当該無考慮入力変数に対応する出力変数との差を考慮せずに前記再構成誤差を算出する、ことを特徴とする請求項１又は２に記載のラベル推定装置である。
【００３２】
望ましくは、一の前記学習モデルに関する前記無考慮入力変数と、他の前記学習モデルに関する前記無考慮入力変数は、互いに異なる入力変数である。
【００３３】
また、本発明は、コンピュータを、複数の分類ラベルに対応した複数の学習モデルであって、それぞれの前記学習モデルが、複数の入力変数を含む入力データに対して複数の出力変数を含む出力データを出力し、自学習モデルに対応する分類ラベルに属する入力データに対しては当該入力データの複数の入力変数と同等の値を複数の出力変数として有する出力データを出力し、自学習モデルに対応する分類ラベルに属さない入力データに対しては当該入力データの複数の入力変数とは異なる複数の出力変数を有する出力データを出力するように学習可能な複数の学習モデルと、前記複数の学習モデルそれぞれについて、各入力変数と、各入力変数に対応する出力変数との差を算出し、得られた複数の前記差に基づいて、入力データと出力データとの誤差の大きさを示す再構成誤差を算出する再構成誤差算出部と、前記複数の学習モデルそれぞれについて算出された複数の前記再構成誤差に基づいて、前記複数の分類ラベルそれぞれについて、前記入力データが当該分類ラベルに属する確率を算出する確率算出部と、として機能させることを特徴とするラベル推定プログラムである。
【発明の効果】
【００３４】
本発明によれば、ＮＮ識別器及びＡＥ識別器が有するそれぞれの問題点を克服して、ラベル推定精度を向上させることができる。
【図面の簡単な説明】
【００３５】
【図１】本実施形態に係るラベル推定装置の構成概略図である。
【図２】本実施形態に係る識別器の構成を示す構成概略図である。
【図３】特定の入力変数の重みが０に設定された場合におけるオートエンコーダの各ユニットの入力値と出力値を示す図である。
【図４】特定の入力変数の重みが０に設定された場合における各変数差を示す図である。
【図５】本実施形態に係るラベル推定装置の流れを示すフローチャートである。
【図６】ニューラルネットワークを用いた識別器の構成を示す構成概略図である。
【図７】オートエンコーダの構成を示す構成概略図である。
【図８】学習データの例を示す図である。
【図９】入力データの例を示す図である。
【発明を実施するための形態】
【００３６】
以下、本発明の実施形態について説明する。
【００３７】
図１には、本実施形態に係るラベル推定装置１０の構成概略図が示されている。ラベル推定装置１０としては一般的なコンピュータであってよく、あるいはサーバコンピュータであってもよい。
【００３８】
記憶部１２は、例えばハードディスク、ＲＯＭ（Read Only Memory）、あるいはＲＡＭ（Random Access Memory）などを含んで構成される。記憶部１２には、ラベル推定に用いる学習モデル（後述）が記憶される。あるいは、当該学習モデルに含まれる各ユニットに対する重み及びバイアスが記憶される。また、記憶部１２には、ラベル推定装置１０の各部を動作させるためのラベル推定プログラムが記憶される。
【００３９】
通信部１４は、例えばネットワークアダプタなどを含んで構成される。通信部１４は、ＬＡＮ（Local Area Network）やインターネットなどの通信回線を介して他の装置と通信する機能を発揮する。ラベル推定装置１０がサーバコンピュータである場合には、通信部１４は、ラベル推定装置１０における処理結果を示す結果情報を他の装置に送信する。また、通信部１４は、ラベル推定装置１０の利用者（ユーザ）からの指示を示す指示情報をユーザ端末から受信する。
【００４０】
入力部１６は、例えばキーボードあるいはマウスなどを含んで構成される。ラベル推定装置１０が一般的なコンピュータである場合には、入力部１６は、ユーザからの指示を受け付ける機能を発揮する。
【００４１】
表示部１８は、例えば液晶パネルなどを含んで構成される。ラベル推定装置１０が一般的なコンピュータである場合には、表示部１８は、ラベル推定装置１０における処理結果を示す結果情報を表示する機能を発揮する。
【００４２】
制御部２０は、例えばＣＰＵ（Central Processing Unit）等を含んで構成される。制御部２０は、記憶部１２に記憶されたラベル推定プログラムに従って、ラベル推定装置１０の各部を制御するものである。詳しくは、制御部２０は、ラベル推定装置１０上においてラベル推定を行うための識別器の構築処理、当該識別器に含まれる学習モデルの学習処理、学習された学習モデルを用いた識別器を利用したラベル推定処理などの各処理を実行する。
【００４３】
図２は、ラベル推定装置１０上で動作する識別器の構成概略図である。図２に示される通り、本実施形態に係る識別器は、学習モデル部３０、再構成誤差算出部３２、符号反転部３４、及び、確率算出部３６を含んで構成される。これらの各部において、それぞれデータに対して処理が実行されるが、処理を実行する主体は、実質的には制御部２０である。すなわち、学習モデル部３０、再構成誤差算出部３２、符号反転部３４、及び、確率算出部３６は、制御部２０が発揮する機能の一部であると言える。
【００４４】
本実施形態に係る識別器には、複数の入力変数（ｘ１、ｘ２、ｘ３・・・）を有する入力データが入力されるものとする。入力データは、学習モデル部３０に含まれる各オートエンコーダに入力される。
【００４５】
学習モデル部３０は、複数の学習モデルとしての複数のオートエンコーダを含んで構成される。各オートエンコーダは、各分類ラベルに対応したものとなっている。例えば、ラベル１用オートエンコーダは、分類ラベル１に対応している。すなわち、オートエンコーダは、ラベル推定装置１０が分類可能な分類ラベルの数だけ用意される。
【００４６】
学習モデル部３０に含まれる各オートエンコーダの構成は、従来のオートエンコーダの構成と同様であってよい。すなわち、各オートエンコーダは、複数の入力変数を含む入力データに対して複数の出力変数（ｘ’１、ｘ’２、ｘ’３・・・）を含む出力データを出力する。
【００４７】
各オートエンコーダは、自オートエンコーダに対応する分類ラベルに属する入力データに対しては、当該入力データの複数の入力変数と同等の値を複数の出力変数として有する出力データを出力するように学習される。また、自オートエンコーダに対応する分類ラベルに属さない入力データに対しては、当該入力データの複数の入力変数とは異なる複数の出力変数を有する出力データを出力するように学習される。例えば、分類ラベル１に対応したラベル１用オートエンコーダは、分類ラベル１に属する入力データが入力された場合は、当該入力データと同等の出力データを出力するよう学習され（すなわち再構成誤差が小さくなるように学習され）、分類ラベル１に属さない入力データが入力された場合は、当該入力データとは異なった出力データを出力するように学習される（すなわち再構成誤差が大きくなるように学習される）。
【００４８】
再構成誤差算出部３２は、複数のオートエンコーダそれぞれについて、入力データの入力変数と、当該入力変数に対応する出力変数との差である変数差を算出する。再構成誤差算出部３２は、複数の入力変数に関する複数の変数差を算出する。例えば、入力データが入力変数ｘ１、ｘ２、ｘ３・・・を有し、ラベル１用オートエンコーダの出力データが出力変数ｘ’１１、ｘ’１２、ｘ’１３・・・を有するとすると、再構成誤差算出部３２は、ラベル１用オートエンコーダについて、変数差として（ｘ１−ｘ’１１）、（ｘ２−ｘ’１２）、（ｘ３−ｘ’１３）・・・を算出する。同様に、ラベル２用オートエンコーダの出力データが出力変数ｘ’２１、ｘ’２２、ｘ’２３・・・を有するとすると、再構成誤差算出部３２は、ラベル１用オートエンコーダについて、変数差として（ｘ１−ｘ’２１）、（ｘ２−ｘ’２２）、（ｘ３−ｘ’２３）・・・を算出する。このようにして、再構成誤差算出部３２は、各オートエンコーダについて複数の変数差を算出する。
【００４９】
次いで、再構成誤差算出部３２は、複数のオートエンコーダそれぞれについて、複数の変数差に基づいて、入力データと出力データとの誤差の大きさを示す再構成誤差を算出する。本実施形態では、再構成誤差算出部３２は、複数の変数差の２乗の平均値を再構成誤差として算出する。すなわち、再構成誤差は上記式（４）で算出される。再構成誤差算出部３２により、各オートエンコーダに対応した複数の再構成誤差が算出される。
【００５０】
符号反転部３４は、再構成誤差算出部３２が算出した複数の再構成誤差の符号（＋−）を反転する。本実施形態においては、再構成誤差は必ず正の値となり、その値が小さい程、入力データが当該オートエンコーダに対応する分類ラベルに属している可能性が高いことを示す。符号反転部３４が符号を反転することにより、反転後の再構成誤差の値が大きい程、入力データが当該オートエンコーダに対応する分類ラベルに属している可能性が高いことを示すようになる。符号の反転は、後段のソフトマックス関数が、入力が大きい程、当該入力に対応する確率が高く算出されるために実行される。
【００５１】
確率算出部３６は、複数のオートエンコーダそれぞれについて算出された複数の再構成誤差であって、符号反転部３４により符号が反転された複数の再構成誤差に基づいて、複数の分類ラベルそれぞれについて、入力データが当該分類ラベルに属する確率を算出する。
【００５２】
本実施形態においては、確率算出部３６は、ソフトマックス関数により実現される。具体的には、各オートエンコーダの再構成誤差が符号反転されてソフトマックス関数に入力される。ソフトマックス関数は、これらの入力に対して、上記式（３）で示す出力データ（以後、各オートエンコーダの出力データと区別するために、ソフトマックス関数の出力データを最終出力データと記載する）を出力する。これにより、各出力変数ｙ（以後、各オートエンコーダの出力変数と区別するために、ソフトマックス関数の出力変数ｙを最終出力変数ｙと記載する）が、入力データが各分類ラベルに属する確率を示すこととなる。例えば、最終出力変数ｙ１は、入力データが分類ラベル１に属する確率を示すものであり、最終出力変数ｙ２は、入力データが分類ラベル２に属する確率を示すものとなる。
【００５３】
本実施形態に係る識別器の構成については以上の通りである。本実施形態に係る識別器においては、分類ラベルが既知の学習用データを入力して、ＮＮ識別器と同様に、各最終出力変数ｙの値が、当該学習用データの分類ラベルを示すように、すなわち、学習用データが属する分類ラベルに対応する確率が最大となるように、各オートエンコーダが学習される。例えば、学習データの分類ラベル１であれば、当該学習データに対する最終出力変数（ｙ１、ｙ２、ｙ３・・・）が（１、０、０・・・）に近付くように学習される。具体的には、各オートエンコーダが有する各ユニットの重み及びバイアスが変更される。ここで、ある学習用データを用いた際に、当該学習用データの分類ラベルに対応するオートエンコーダ（上記例ではラベル１用オートエンコーダ）以外のオートエンコーダについても学習される点に留意されたい。
【００５４】
本実施形態に係る識別器の構成により、また上記のように各オートエンコーダが学習されることにより、各オートエンコーダの再構成誤差のスケールを一致させることが可能となっている。すなわち、従来のＡＥ識別器が有していた各オートエンコーダの再構成誤差のスケールの不一致という問題を解消することができる。これにより、各オートエンコーダの再構成誤差の比較を好適に行うことが可能になり、ラベル推定の精度が向上する。
【００５５】
また、本実施形態に係る識別器においては、ＡＥ識別器と同様に、学習用データの分類ラベルに対応するオートエンコーダの再構成誤差のみを最小化するように学習される。
【００５６】
本実施形態に係る識別器によれば、再構成誤差算出部３２は、各オートエンコーダに関する再構成誤差の算出の過程で、複数の変数差を算出している。この複数の変数差を確認することによって、ラベル推定に寄与した変数と特定することができる。例えば、分類ラベル１である学習用データを入力した際に、本実施形態に係る識別器によって、分類ラベル２に誤推定された場合を考える。すなわち、最終出力変数において、ｙ２の値が最も大きく算出された場合を考える。この場合、ラベル１用オートエンコーダに関する複数の変数差のうち、その値（差）が大きかった入力変数がラベル誤推定に大きく影響していると言える。
【００５７】
ラベル誤推定に大きく影響している入力変数が特定でき、且つ、特定された入力変数が当該分類ラベルの推定に不必要な入力変数であることが判明した場合、本実施形態に係る識別器においては、当該入力変数を考慮せずにラベル推定を行うことができる。
【００５８】
入力データを分類ラベル１にラベル推定するにあたり、入力変数ｘ２が不必要な入力変数である場合を例に説明する。この場合は、ラベル１用オートエンコーダは、入力変数ｘ２を考慮しない変数（本明細書においては「無考慮入力変数」と記載する）として、入力変数ｘ２を考慮せずに複数の出力変数ｘ’１１、ｘ’１２、ｘ’１３・・・を出力する。
【００５９】
上記処理をより具体的に説明する。図３は、ラベル１用オートエンコーダの一部の構成を示す図である。ラベル１用オートエンコーダにおいて入力変数ｘ２を無考慮入力変数とするために、ラベル１用オートエンコーダの入力層に含まれる各ユニットの入力変数ｘ２に関する重みが０に固定的に設定される。図３には、入力層のユニットＡ１１の入力変数ｘ２に関する重みであるｗ１２が０に設定され、入力層のユニットＡ２１の入力変数ｘ２に関する重みであるｗ２２が０に設定される様子が示されている。これにより、入力層の各ユニットに入力変数ｘ２が入力されたとしても、ラベル１用オートエンコーダは、入力変数ｘ２を考慮せず（無視して）各出力変数を出力することができる。
【００６０】
さらに、より確実に無考慮入力変数の影響を排除するために、再構成誤差算出部３２は、ラベル１用オートエンコーダついて、無考慮入力変数である入力変数ｘ２と、当該無考慮入力変数に対応する出力変数ｘ’２との変数差を考慮せずに再構成誤差を算出する。
【００６１】
図４は、ラベル１用オートエンコーダの各変数差及び再構成誤差を示す概念図である。図４に示される通り、無考慮変数が入力変数ｘ２である場合、入力変数ｘ２と出力変数ｘ’２との変数差が０に固定的に設定される。これにより、無考慮入力変数である入力変数ｘ２に関する変数差を考慮せずに、ラベル１用オートエンコーダの再構成誤差を算出することができる。
【００６２】
以上のように、ラベル１用オートエンコーダについて、入力層に含まれる各ユニットの無考慮入力変数に関する重みが０に固定的に設定され、且つ、無考慮入力変数に関する変数差が０に固定的に設定されることで、無考慮入力変数を考慮せずにラベル１用オートエンコーダの再構成誤差を算出することができる。これにより、予め分かっている不必要な入力変数の影響が排除され、本質的な入力変数のみを考慮してラベル推定が行われるため、ラベル推定の精度を向上させることができる。
【００６３】
本実施形態における識別器においては、各ラベルに対応して複数のオートエンコーダが設けられていることから、無考慮入力変数はオートエンコーダ毎に（すなわち分類ラベル毎に）個別的に設定することが可能である。つまり、一のオートエンコーダに関する無考慮入力変数と、他のオートエンコーダに関する無考慮入力変数を互いに異なる入力変数とすることができる。例えば、ラベル１用オートエンコーダ（分類ラベル１）については入力変数ｘ２を無考慮入力変数とし、ラベル２用オートエンコーダ（分類ラベル２）については入力変数ｘ３を無考慮入力変数とすることができる。もちろん、１つのオートエンコーダについて、複数の入力変数が無考慮入力変数として設定されてもよいし、あるオートエンコーダについては全く無考慮入力変数が設定されなくてもよい。
【００６４】
無考慮入力変数を分類ラベル毎に個別的に設定することで、各分類ラベルに応じて、本質的な入力変数のみを選択してラベル推定を行うことが可能になる。
【００６５】
以下、図５に示すフローチャートに従って、本実施形態に係るラベル推定装置１０の動作の流れを説明する。
【００６６】
ステップＳ１０において、各分類ラベルについて無考慮入力変数が特定される。無考慮入力変数の特定方法は種々の方法がある。
【００６７】
例えば、ユーザが予め各分類ラベルについての無考慮入力変数を知っているのであれば、ユーザによって各分類ラベルについての無考慮入力変数を指定するようにしてもよい。
【００６８】
また、上述のように、本実施形態に係る識別器においては、各オートエンコーダに関する複数の変数差が算出されるため、当該複数の変数差に基づいて無考慮入力変数を特定するようにしてもよい。
【００６９】
具体例として、例えば、交差検証（ＣＶ（Cross Validation））における無考慮入力変数の特定方法を説明する。まず、ユーザが、学習用データを事前学習データとＣＶデータ（検証用データ）とに分類する。そして、事前学習データを用いて本実施形態に係る識別器を学習し、学習済みの識別器にＣＶデータを入力する。
【００７０】
ＣＶデータの入力に対して出力データがラベル誤推定をした場合、ユーザの要求に応じて、制御部２０は、当該ＣＶデータの真の分類ラベルに対応するオートエンコーダの複数の入力変数に関する変数差のうち、誤差が大きい入力変数を抽出する。例えば、複数の変数差のうち誤差が大きかった上位数個の入力変数を抽出する。抽出された入力変数は通信部１４から送信され、あるいは表示部１８に表示されることで、ユーザに提示される。
【００７１】
ユーザは、ラベル推定装置１０から提示された入力変数を確認し、それがラベル推定に不必要な入力変数であるか否かを確認する。不必要な入力変数であれば、ユーザは、当該入力変数を無考慮入力変数として設定する。あるいは、ユーザの確認を経ずに、変数差が大きく制御部２０により抽出された入力変数を自動的に無考慮入力変数として特定するようにしてもよい。
【００７２】
ステップＳ１２において、制御部２０は、各オートエンコーダについて、入力層に含まれる各ユニットの、ステップＳ１０で特定された無考慮入力変数に関する重みを０に固定的に設定する。また、制御部２０は、各オートエンコーダについて、無考慮入力変数に関する変数差を０に固定的に設定する。これにより、本実施形態に係る識別器は、各分類ラベル毎に個別的に設定された無考慮入力変数を考慮せずに、ラベル推定を行うことができるようになる。
【００７３】
ステップＳ１４において、ユーザは、複数の学習用データを本実施形態に係る識別器に入力し、制御部２０は、学習用データに対する最終出力データに基づいて、各オートエンコーダを学習する。具体的には、最終出力データにおいて、既知である学習用データの分類ラベルの確率が最大となるように各オートエンコーダを学習する。
【００７４】
ステップＳ１６において、各オートエンコーダの学習の最中にラベル誤推定があった場合、制御部２０は、当該学習用データの真の分類ラベルに対応するオートエンコーダの複数の入力変数に関する変数差のうち、誤差が大きい入力変数を抽出してユーザに提示する。そして、提示された入力変数が無考慮入力変数であるとユーザに判断された場合には、当該入力変数が新たに無考慮入力変数として特定され、再度のステップＳ１２で、新たに特定された無考慮入力変数に関する重みを０に、また変数差を０に固定的に設定する。なお、このような無考慮入力変数の特定は、学習時のみならず、実際のラベル推定処理（実運用時）において行われてもよい。
【００７５】
ステップＳ１６において、新たな無考慮入力変数が発見されなかった場合には、処理を終了する。
【００７６】
図５に示したフローチャートの処理において学習された識別器に対して、ラベル推定の対象となる入力データが入力される。そして、当該入力データに対する最終出力データに基づいて、ラベル推定を行うことができる。具体的には、入力データは、最終出力データが有する最終出力変数ｙ１、ｙ２、ｙ３・・・のうち、値（確率）が最も大きい最終出力変数に対応する分類ラベルとして推定される。
【００７７】
以上、本発明に係る実施形態を説明したが、本発明は上記実施形態に限られるものではなく、本発明の趣旨を逸脱しない限りにおいて種々の変更が可能である。
【符号の説明】
【００７８】
１０  ラベル推定装置、１２  記憶部、１４  通信部、１６  入力部、１８  表示部、２０  制御部、３０  学習モデル部、３２  再構成誤差算出部、３４  符号反転部、３６  確率算出部。
【図１】
2019067299.tif 000006
【図２】
2019067299.tif 000007
【図３】
2019067299.tif 000008
【図４】
2019067299.tif 000009
【図５】
2019067299.tif 000010
【図６】
2019067299.tif 000011
【図７】
2019067299.tif 000012
【図８】
2019067299.tif 000013
【図９】
2019067299.tif 000014