JP7221892B2 - 学習装置、学習方法、および学習プログラム - Google Patents

学習装置、学習方法、および学習プログラム Download PDF

Info

Publication number
JP7221892B2
JP7221892B2 JP2020021893A JP2020021893A JP7221892B2 JP 7221892 B2 JP7221892 B2 JP 7221892B2 JP 2020021893 A JP2020021893 A JP 2020021893A JP 2020021893 A JP2020021893 A JP 2020021893A JP 7221892 B2 JP7221892 B2 JP 7221892B2
Authority
JP
Japan
Prior art keywords
target data
loss
latent vector
learning
probability
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.)
Active
Application number
JP2020021893A
Other languages
English (en)
Other versions
JP2021128474A (ja
Inventor
亜玲 陶
健太郎 高木
康太 中田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2020021893A priority Critical patent/JP7221892B2/ja
Priority to US17/000,535 priority patent/US20210248426A1/en
Publication of JP2021128474A publication Critical patent/JP2021128474A/ja
Application granted granted Critical
Publication of JP7221892B2 publication Critical patent/JP7221892B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/762Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
    • G06V10/763Non-hierarchical techniques, e.g. based on statistics of modelling distributions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2132Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on discrimination criteria, e.g. discriminant analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • G06F18/2193Validation; Performance evaluation; Active pattern learning techniques based on specific statistical tests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2415Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2415Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
    • G06F18/24155Bayesian classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2431Multiple classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Analysis (AREA)

Description

本発明の実施の形態は、学習装置、学習方法、および学習プログラムに関する。
画像、音声、時系列信号などの複雑なデータを低次元の特徴量ベクトルで表現する表現学習の方法として、教師データを用いない学習方法が開示されている。例えば、検索対象の複数のデータの各々が別々のクラスに属すると仮定し、これらの複数のデータの分類精度が高くなるように、ネットワークパラメータの学習を行う方法が提案されている。そして、学習されたネットワークの隠れ層の出力である特徴量を、近傍法による自然画像の検索に適用する技術が開示されている。
しかし、従来技術は、データをグループ化するクラスタリングを目的とした場合には必ずしも好適な学習ができず、クラスタリング精度が低下する場合があった。
WU, Zhirong,et al.Unsupervised feature learning via non-parametric instance discrimination. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.2018.p.3733-3742.
本発明は、上記に鑑みてなされたものであって、クラスタリング精度向上を図ることができる、学習装置、学習方法、および学習プログラムを提供することを目的とする。
実施の形態の学習装置は、潜在ベクトル算出部と、第1確率算出部と、第1損失算出部と、第2損失算出部と、更新部と、を備える。潜在ベクトル算出部は、対象データから前記対象データの潜在空間上の特徴を示す潜在ベクトルを出力する学習モデルのパラメータを用いて、分類対象の前記対象データである複数の第1対象データの各々の前記潜在ベクトルを算出する。第1確率算出部は、複数の前記第1対象データが互いに異なる仮想クラスに属すると仮定し、複数の前記第1対象データの各々ごとに、複数の前記仮想クラスの各々に属する第1確率を算出する。第1損失算出部は、複数の前記第1対象データの各々ごとに、前記第1確率の第1損失を算出する。第2損失算出部は、複数の前記第1対象データの各々に含まれる複数の要素の各々が属する要素クラスの各々ごとに、他の前記要素クラスとの関係性が低いほど低い第2損失を算出する。更新部は、前記第1損失および前記第2損失が低くなるように前記パラメータを更新する。
学習装置のブロック図。 潜在ベクトル算出の模式図。 潜在ベクトル算出の説明図。 潜在ベクトル算出の説明図。 第1確率算出の説明図。 第2損失算出の説明図。 クラスタリングの説明図。 第2対象データの分類の説明図。 学習処理の流れを示すフローチャート。 分類処理の流れを示すフローチャート。 分類統計値を用いた第2対象データXBの分類処理の流れを示すフローチャート。 第2対象データの分類処理の流れを示すフローチャート。 第2対象データの検索処理の流れを示すフローチャート。 分類精度のシミュレーション結果を示す図。 従来の対象データの分布を示す模式図。 対象データの分布を示す模式図。 ハードウェア構成図。
以下に添付図面を参照して、学習装置、学習方法、および学習プログラムの実施形態を詳細に説明する。
図1は、本実施の形態の学習装置10の一例を示すブロック図である。
学習装置10は、記憶部20Aと、取得部20Bと、潜在ベクトル算出部20Cと、第1確率算出部20Dと、第1損失算出部20Eと、第2損失算出部20Fと、更新部20Gと、分類部20Hと、出力制御部20Iと、を備える。
取得部20B、潜在ベクトル算出部20C、第1確率算出部20D、第1損失算出部20E、第2損失算出部20F、更新部20G、分類部20H、および出力制御部20Iは、例えば、1または複数のプロセッサにより実現される。例えば上記各部は、CPU(Central Processing Unit)などのプロセッサにプログラムを実行させること、すなわちソフトウェアにより実現してもよい。上記各部は、専用のICなどのプロセッサ、すなわちハードウェアにより実現してもよい。上記各部は、ソフトウェアおよびハードウェアを併用して実現してもよい。複数のプロセッサを用いる場合、各プロセッサは、各部のうち1つを実現してもよいし、各部のうち2以上を実現してもよい。
記憶部20Aは、各種のデータを記憶する。記憶部20Aは、例えば、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子、ハードディスク、光ディスク等である。なお、記憶部20Aは、学習装置10の外部に設けられた記憶装置であってもよい。また、記憶部20Aは、記憶媒体であってもよい。具体的には、記憶媒体は、プログラムや各種情報を、LAN(Local Area Network)またはインターネットなどを介してダウンロードして記憶または一時記憶したものであってもよい。また、記憶部20Aを、複数の記憶媒体から構成してもよい。
本実施形態では、記憶部20Aは、学習モデルのパラメータを記憶する。
学習モデルは、対象データから対象データの潜在ベクトルを出力するための機械学習モデルである。学習モデルは、例えば、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)などであるが、これに限定されない。
対象データが画像データである場合、学習モデルには、例えば、画像データに対する機械学習モデルを用いる。この場合、学習装置10では、例えば、「HE,Kaiming,et al.Deep residual learning for image recognition.In:Proceedings of the IEEE conference on computer vision and pattern recognition.2016.p.770-778.」に記載の、Deep Residual Learning(ResNet)などのディープラーニングの技術により、学習モデルを構築する。
本実施形態では、学習モデルには、ResNetを用いる場合を一例として説明する。
学習モデルのパラメータは、例えば、学習モデルがCNNである場合、重みwやバイアスbを含む。パラメータは、後述する処理によって更新される。
対象データとは、分類対象のデータである。分類対象のデータとは、学習装置10で分類する対象のデータである。対象データは、例えば、画像データである。具体的には、例えば、対象データは、被写体の画像データなどである。また、対象データは、被写体の背景が多様かつ高次元であり、対象データ間の距離や類似度の算出が困難な画像データであってもよい。なお、対象データは、実験結果を示す実験データ、解析結果を示す解析データ、検査結果を示す検査結果データなどであってもよく、画像データに限定されない。
対象データは、複数の事例を含む。本実施形態では、対象データが、N個の事例を含む形態を一例として説明する。対象データが画像データである場合、1事例は1枚の画像となる。Nは、2以上の整数である。
対象データに含まれる事例の各々は、各々の事例の特徴を表す特徴量x_iの特徴量情報を含む。iは、事例の識別情報である。各事例の特徴量は、d次元の特徴量である。dは、2以上の整数である。
潜在ベクトルとは、対象データの潜在空間上の特徴を示す。潜在ベクトルは、対象データに含まれるd’次元の複数の事例の各々の特徴量によって表される。d’次元は、d次元より少ない次元数である。すなわち、潜在ベクトルは、d次元の特徴量を示す対象データを、より低次元であるd’次元の特徴量ベクトルで表したものである。潜在空間とは、対象データの潜在ベクトルをマッピングするための仮想空間である。
学習装置10では、1つの対象データを学習モデル入力することで、該対象データに対応する1つの潜在ベクトルを出力する。
本実施形態の学習装置10では、取得部20B、潜在ベクトル算出部20C、第1確率算出部20D、第1損失算出部20E、第2損失算出部20F、および更新部20Gによる後述する処理によって、学習モデルのパラメータを学習する。
取得部20Bは、第1対象データまたは第2対象データを取得する。第1対象データは、対象データの一例である。第1対象データは、分類対象の対象データであり、パラメータの学習に用いる対象データである。第2対象データは、対象データの一例である。第2対象データは、分類対象のデータであり、パラメータの学習時に用いる第1対象データ以外の対象データである。以下、第1対象データおよび第2対象データを総称して説明する場合には、単に、対象データと称して説明する。
本実施形態では、取得部20Bは、複数の第1対象データを取得する。取得部20Bは、記憶部20Aから複数の第1対象データを取得してもよいし、ネットワークなどを介して外部装置から複数の第1対象データを取得してもよい。本実施形態では、記憶部20Aは、予め複数の第1対象データを記憶しているものとする。そして、取得部20Bは、記憶部20Aから複数の第1対象データを取得する形態を、一例として説明する。
潜在ベクトル算出部20Cは、記憶部20Aに記憶されているパラメータを用いて、複数の第1対象データの各々の潜在ベクトルを算出する。
図2は、潜在ベクトルVの算出の一例を示す模式図である。潜在ベクトル算出部20Cは、学習モデル30のパラメータを記憶部20Aから取得する。そして、潜在ベクトル算出部20Cは、取得したパラメータを用いた学習モデル30に、d次元の対象データXを入力する(ステップS1)。そして、潜在ベクトル算出部20Cは、該学習モデル30から出力された、d’次元の潜在ベクトルVを取得することで、潜在ベクトルVを算出する(ステップS2)。
潜在ベクトル算出部20Cは、複数の第1対象データXAの各々について、該学習モデル30を用いて潜在ベクトルVを算出する。このため、潜在ベクトル算出部20Cは、複数の第1対象データXAの各々に対応する、複数の潜在ベクトルVを算出する。
図3Aおよび図3Bは、潜在ベクトルVの算出の説明図である。
例えば、図3Aに示すように、取得部20Bが、第1対象データXA1~第1対象データXA4の複数の第1対象データXAを取得した場合を想定して説明する。第1対象データXA1~第1対象データXA4は、第1対象データXAの一例である。なお、取得部20Bが取得する第1対象データXAの数は、2以上であればよく、4つに限定されない。
図3Bに示すように、潜在ベクトル算出部20Cは、複数の要素Eを含む第1対象データXA(対象データXA1~対象データXA4)の各々について、取得したパラメータを用いた学習モデル30により、潜在ベクトルV(潜在ベクトルV1~潜在ベクトルV4)を算出する。
図1に戻り説明を続ける。潜在ベクトル算出部20Cは、複数の第1対象データXAの各々の潜在ベクトルVを、第1確率算出部20Dおよび第2損失算出部20Fへ出力する。
第1確率算出部20Dは、複数の第1対象データXAが互いに異なる仮想クラスに属すると仮定する。そして、第1確率算出部20Dは、複数の第1対象データXAの各々ごとに、複数の仮想クラスの各々に属する第1確率を算出する。
図4は、第1確率の算出の説明図である。例えば、第1確率算出部20Dは、第1対象データXA1~第対象データXA4の各々が、それぞれ異なる仮想クラスCである仮想クラスC1~仮想クラスC4に属すると仮定する。そして、第1確率算出部20Dは、第1対象データXA1~第1対象データXA4の各々について、各々の潜在ベクトルVを用いて、仮想クラスC1~仮想クラスC4の各々に属する確率である第1確率を算出する。
第1確率算出部20Dは、複数の第1対象データXAの各々の潜在ベクトルV間の距離および類似度の少なくとも一方を用いて、これらの距離および類似度の少なくとも一方が近い(高い)ほど、高い第1確率を算出する。
具体的には、第1確率算出部20Dは、下記式(2)を用いて、第1確率を算出する。
Figure 0007221892000001
式(2)中、Pijは、i番目の第1対象データXAがj番目の仮想クラスCに属する第1確率を意味する。すなわち、iは、第1対象データXAの識別情報である。jは、仮想クラスCの識別情報である。viは、i番目の第1対象データXAの潜在ベクトルVを表す。Tは、行列の転置を表す。v_は、j番目の第1対象データXAの潜在ベクトルVを表す。
τは、第1確率の差の大小を制御する変数である。本実施形態では、τは、1つの第1対象データXAが自身の仮想クラスCに属する第1確率と、該第1対象データXAが該仮想クラスC以外の他の仮想クラスCに属する第1確率と、の差を所定範囲とするための変数である。自身の仮想クラスCとは、仮想クラスCの仮想時に、複数の第1対象データXAの各々がそれぞれ属すると仮定された仮想クラスCである。例えば、第1対象データXA1の場合、自身の仮想クラスCは、仮想クラスC1である。
τの値が小さいほど上記差が大きくなり、1つの第1対象データXAが自身の仮想クラスCに属する第1確率の値が大きくなる。一方、τの値が大きいほど上記差が小さくなり、1つの第1対象データXAが自身の仮想クラスCに属する第1確率の値が小さくなり、1つの第1対象データXAが複数の仮想クラスCに属する状態となる。
学習装置10は、1つの第1対象データXAが自身の仮想クラスCに属する第1確率の値のみが選択的に高くなることを抑制し、且つ、他の仮想クラスCにも属する可能性を示す第1確率の値が算出されるように、τの値を予め調整すればよい。
τの値は、予め定めればよい。例えば、τの値は、0.1、0.3、または、0.4、などの値であることが好ましい。
そして、上記所定範囲は、1つの第1対象データXAが自身の仮想クラスCに属する第1確率の値のみが選択的に高くなることを抑制し、且つ、他の仮想クラスCにも属する第1確率の値が算出されるように、予め調整すればよい。
上記差を上記所定範囲とすることで、第1対象データXAの自身の仮想クラスCに選択的に高い第1確率が算出されることが抑制される。すなわち、第1対象データXAの自身の仮想クラスC以外の他の仮想クラスCに対しても、属する可能性が有ると識別可能な第1確率が算出されることとなる。
第1損失算出部20Eは、複数の第1対象データXAの各々について、仮想クラスCごとに算出した第1確率を、第1損失算出部20Eへ出力する。
図1に戻り説明を続ける。第1損失算出部20Eは、複数の第1対象データXAの各々ごとに、第1確率の第1損失を算出する。詳細には、第1損失算出部20Eは、第1確率を用いて、複数の第1対象データXAが各々の属する仮想クラスCに分類されるほど低くなる、第1損失を算出する。具体的には、第1損失算出部20Eは、複数の第1対象データXAの各々について、自身の仮想クラスCの第1確率が高いほど低く、且つ、該自身の仮想クラスC以外の仮想クラスCの第1確率が低いほど高い、第1損失を算出する。
図4を用いて説明する。例えば、第1損失算出部20Eが、第1対象データXA1について、第1損失を算出する場合を想定する。この場合、第1損失算出部20Eは、第1対象データXA1が、仮想クラスC1~仮想クラスC4の各々に属する第1確率を用いる。そして、第1損失算出部20Eは、第1対象データXA1が属すると仮定した仮想クラスC1の第1確率が高いほど低く、且つ、仮想クラスC2~仮想クラスC4の第1確率が低いほど低い、第1損失を算出する。この処理により、第1損失算出部20Eは、1つの第1対象データXAに対して、1つの第1損失を算出する。
具体的には、第1損失算出部20Eは、下記式(3)を用いて第1損失を算出する。
Figure 0007221892000002
式(3)中、L_1は、第1損失を表す。Piiは、i番目の第1対象データXAが自身の仮想クラスCに属する確率を表す。式(3)中、nは、上述したNと同じ意味であり、第1対象データXAに含まれる事例の数である。
例えば、第1対象データXA1を想定して説明する。この場合、第1対象データXA1が自身の仮想クラスC1に属する第1確率が高いほど、低い第1損失が算出される。
図1に戻り説明を続ける。第1損失算出部20Eは、第1対象データXAごとに算出した第1損失を、更新部20Gへ出力する。
次に、第2損失算出部20Fについて説明する。
第2損失算出部20Fは、複数の第1対象データXAの各々に含まれる複数の要素Eの各々が属する要素クラスの各々ごとに、他の要素クラスとの関係性が低いほど低い第2損失を算出する。
図5は、第2損失算出の説明図である。複数の第1対象データXA1~第1対象データXA4の各々に含まれる複数の要素Eは、要素Eの属する特徴量に応じて、複数の要素クラスGに分類される。潜在ベクトル算出部20Cにより、各要素クラスGは、例えば”空の色”や“目の色”など画像の分類に有用な情報を含んでいる。図5には、一例として、4つの要素クラスG(要素クラスG1~要素クラスGd’(d’=4の場合)を示した。本実施では、要素クラスGの数はd’次元の数と同じになる。ここで、要素クラスGiのベクトルをfiで表す。fiは、データ数のN次元を持つベクトルである。
第2損失算出部20Fは、複数の要素クラスGの各々ごとに、他の要素クラスGとの関係性が低いほど低い、第2損失を算出する。関係性とは、特徴量の類似度および距離および相関の少なくとも一つを表す。関係性が低いとは、特徴量の類似度が小さい、距離が大きい、相関が小さいことの少なくとも一つを意味する。
具体的には、第2損失算出部20Fは、以下の式(4)を用いて、第2損失を算出する。
Figure 0007221892000003
式(4)中、L_2は、第2損失を表す。式(4)中、fは、対象データXに含まれる事例の潜在ベクトルを表し、Iは潜在ベクトルと同じ行数と列数を持つ単位行列を表す。詳細には、Iは、要素クラスGの数と同じ行数d’と列数d’の単位行列を意味する。
すなわち、第2損失算出部20Fは、複数の第1対象データXAの潜在ベクトルVの行列と、複数の第1対象データXAの潜在ベクトルVの転置行列と、の積(VV)、と、要素クラスGと同じ行数および列数を持つ単位行列と、の差の絶対値の二乗を、第2損失として算出する。
ここで、複数の第1対象データXAのVVは、単位行列に近づく。このため、ある要素クラスGの要素Eの群と他の要素クラスGの要素Eの群とが相関がなく独立しているほど、第2損失の値は小さくなる。相関が無く独立している、とは、関係性が無く独立していることを意味する。要素クラスGがそれぞれ独立に値をとるとき、潜在ベクトル算出部20Cから出力される要素クラスGは、それぞれ「空の色」「目の色」といった分類に有用な情報を学習できていると考えられる。
また、第2損失算出部20Fは、以下の式(1)を用いて、第2損失を算出することもできる。
Figure 0007221892000004
式(1)中、L_2は第2損失を表し、fiは第1対象データXAに含まれるi番目の事例の潜在ベクトルから抽出した、要素Eごとのベクトルを表す。τは、前記第1確率の差の大小を制御する変数である。式(1)中、nは、潜在ベクトルの次元数であり、上述した次元数であるd’に相当する。τ’は、式(1)で算出される第2損失の差の大小を制御する変数である。式(1)は、i番目とk番目の第1対象データXAにおいて要素クラスG間の相関が小さいほど、低い値になる。この第2損失は、要素クラスGが独立に値をとるようにする効果があり、潜在ベクトル算出部20Cから出力される要素クラスGは分類に有用な情報を学習できるようになる。
図1へ戻り説明を続ける。第2損失算出部20Fは、複数の要素クラスGごとに算出した第2損失を、更新部20Gへ出力する。
更新部20Gは、第1損失算出部20Eから第1対象データXAの各々の第1損失を受付ける。また、更新部20Gは、第2損失算出部20Fから、要素クラスGごとの第2損失を受付ける。そして、更新部20Gは、受付けた第1損失および第2損失の双方が、低くなるようにパラメータを更新する。詳細には、更新部20Gは、受付けた第1損失および第2損失の各々が、記憶部20Aに現在記憶されているパラメータの学習モデル30を用いて上記処理により算出される第1損失および第2損失の各々より低くなるように、該パラメータを更新する。
具体的には、更新部20Gは、下記式(5)に示される損失関数がより低くなるように、パラメータを算出する。
Figure 0007221892000005
式(5)中、Lは、損失関数を示す。L_1は、第1損失を示す。L_2は、第2損失を示す。aは、第2損失の重みであり、正の実数である。aは、対象データXの種類などに応じて予め定めればよい。本実施形態では、a=1である場合を一例として説明する。
更新部20Gは、上記式(5)を用いて、例えば、ニューラルネットワークの学習に用いられる確率的勾配降下法などを用いることで、パラメータを算出する。
そして、更新部20Gは、算出したパラメータを記憶部20Aへ記憶することで、記憶部20Aに記憶されているパラメータを、算出したパラメータに更新する。この更新処理により、学習モデル30のパラメータが更新される。
すなわち、学習装置10は、上記処理によって、第1損失および第2損失の双方が小さくなるように、学習モデル30のパラメータを学習する。
さらに、更新部20Gは、学 習終了基準を満たすか否かを判断していてもよい。学習終了基準を満たすと判断した場合、学習装置10では、パラメータの学習を終了すればよい。また、学習終了基準を満たさないと判断した場合、取得部20B、潜在ベクトル算出部20C、第1確率算出部20D、第1損失算出部20E、第2損失算出部20F、および更新部20GHが、上記一連の処理を再度実行すればよい。
学習終了基準は、予め定めればよい。学習終了基準は、例えば、予め設定された学習回数、第1損失および第2損失の少なくとも一方の減少率が閾値未満であった回数、などである。
次に、分類部20Hについて説明する。分類部20Hは、教師無しクラスタリングにより、対象データXを分類する。本実施形態では、分類部20Hは、複数の第1対象データXAの各々の潜在ベクトルVに基づいて、複数の第1対象データXAの各々を複数のクラスタに分類する。
詳細には、潜在ベクトル算出部20Cが、更新部20Gによって更新されたパラメータの学習モデル30を用いて、複数の第1対象データXAの各々の潜在ベクトルVを算出する。以下、更新部20Gによって更新されたパラメータの学習モデル30を、パラメータを更新された学習モデル30と称して説明する場合がある。
分類部20Hは、算出された複数の潜在ベクトルV間の距離および類似度の少なくとも一方を用いて、複数の第1対象データXAの各々を複数のクラスタに分類する。
図6は、分類部20Hによるクラスタリングの一例の説明図である。図6には、潜在空間Sに、潜在ベクトルVに応じて第1対象データXAを配置した例を一例として示した。例えば、分類部20Hは、パラメータを更新された学習モデル30を用いて算出された潜在ベクトルVを用いて、教師無しクラスタリング方法により、複数の第1対象データXAをクラスタリングする。
例えば、教師無クラスタリング方法には、公知のKmeans法を用いることができる。Kmeans法では、複数の対象データXを分類するクラスタCLの数K(Kは2以上の整数)を指定することで、初期値としてK個のクラスタ中心Pを生成する。図6には、クラスタ数“2”を指定した例を一例として示した。すなわち、図6には、クラスタCLとして、クラスタCLAおよびクラスタCLBを一例として示した。そして、分類部20Hは、クラスタCLAおよびクラスタCLBの各々のクラスタ中心Pを生成する。
本実施形態では、クラスタ中心Pと、複数の第1対象データXAの潜在ベクトルVの各々と、の距離を用いて、第1対象データXAの各クラスタCLへの割り振りと、クラスタ中心Pの位置計算と、を繰り返し行う。
これらの処理により、分類部20Hは、複数の第1対象データXAを複数のクラスタCLへ分類する。
図1に戻り説明を続ける。また、分類部20Hは、パラメータを更新された学習モデル30を用いて算出された潜在ベクトルVに基づいて、検索処理を更に実行してもよい。例えば、分類部20Hは、複数の第1対象データXAの内の特定の第1対象データXAに類似する他の第1対象データXAを、潜在ベクトルV間の距離および類似度の少なくとも一方を用いて検索してもよい。すなわち、分類部20Hは、パラメータを更新された学習モデル30を用いて算出された潜在ベクトルVを用いて、公知の最近傍法により、特定の第1対象データXAに類似する他の第1対象データXAを検索してもよい。
出力制御部20Iは、分類部20Hによる分類結果および検索結果の少なくとも一方を出力する。例えば、出力制御部20Iは、学習装置10に電気的に接続された出力装置に、分類結果および検索結果の少なくとも一方を出力する。出力装置は、例えば、ディスプレイ、スピーカ、ネットワークなどを介して接続された外部装置、などである。なお、出力制御部20Iは、分類結果および検索結果の少なくとも一方を、記憶部20Aへ記憶してもよい。
なお、分類部20Hは、第2対象データXBを分類してもよい。上述したように、第2対象データXBは、パラメータの学習時に用いた対象データXである第1対象データXA以外の他の対象データXである。
この場合、取得部20Bは、複数の第1対象データXA、および、1または複数の第2対象データXBを取得する。潜在ベクトル算出部20Cは、パラメータを更新された学習モデル30を用いて、複数の第1対象データXA、および1または複数の第2対象データXBの各々の潜在ベクトルVを算出する。
分類部20Hは、パラメータを更新された学習モデル30を用いて算出された、複数の第1対象データXAの各々の潜在ベクトルVの分類統計値をクラスタCLごとに算出する。そして、分類部20Hは、第2対象データXBの潜在ベクトルVと、分類統計値と、に基づいて、第2対象データXBを何れかのクラスタに分類する。
図7は、第2対象データXBの分類の一例の説明図である。図7には、潜在空間Sに、潜在ベクトルVに応じて第1対象データXAおよび第2対象データXBを配置した例を一例として示した。
例えば、分類部20Hは、パラメータを更新された学習モデル30を用いて算出された、複数の第1対象データXAの各々の潜在ベクトルVを用いて、複数の第1対象データXAをクラスタCLに分類する。図7には、複数の第1対象データXAを、クラスタCLAとクラスタCLBに分類した例を一例として示した。
そして、分類部20Hは、クラスタCLAおよびクラスタCLBの各々ごとに、各クラスタCLに属する第1対象データXAの潜在ベクトルVの分類統計値を算出する。分類統計値は、各クラスタCLに属する第1対象データXAの潜在ベクトルVの、平均値を含む。潜在ベクトルVの平均値は、例えば、各クラスタCLのクラスタ中心Pに相当する。
また、分類部20Hは、パラメータを更新された学習モデル30を用いて算出された、第2対象データXBの潜在ベクトルVを、潜在ベクトル算出部20Cから取得する。潜在ベクトル算出部20Cは、パラメータを更新された学習モデル30に第2対象データXBを入力することで、該学習モデル30からの出力情報として、該第2対象データXBの潜在ベクトルVを取得すればよい。
そして、分類部20Hは、第2対象データXBの潜在ベクトルVに対して、距離および類似度の最も近い分類統計値のクラスタCLを特定する。そして、分類部20Hは、特定したクラスタCLに、第2対象データXBを分類する。すなわち、分類部20Hは、第2対象データXBの潜在ベクトルVと、クラスタCLのクラスタ中心Pとの距離を用いて、第2対象データXBを何れかのクラスタCLに分類する。
図7に示す例の場合、第2対象データXBは、潜在空間Sにおいて、クラスタCLAのクラスタ中心PよりクラスタCLBのクラスタ中心Pに近い位置に存在する。この場合、分類部20Hは、第2対象データXBをクラスタCLBに分類する。
なお、第2対象データXBの分類方法は、上記分類方向に限定されない。
例えば、分類部20Hは、パラメータを更新された学習モデル30を用いて算出された、複数の第1対象データXAの各々の潜在ベクトルVと、第2対象データXBの潜在ベクトルVと、を用いて、該第2対象データXBを分類してもよい。
この場合、取得部20Bは、複数の第1対象データXA、および、1または複数の第2対象データXBを取得する。潜在ベクトル算出部20Cは、パラメータを更新された学習モデル30を用いて、複数の第1対象データXA、および1または複数の第2対象データXBの各々の潜在ベクトルVを算出する。
分類部20Hは、パラメータを更新された学習モデル30を用いて算出された、第2対象データXBの潜在ベクトルVに対して、距離および類似度の最も近い潜在ベクトルVの第1対象データXAが属するクラスタCLを特定する。なお、分類部20Hは、第2対象データXBの潜在ベクトルVに対して、距離および類似度が予め定めた範囲内である潜在ベクトルVが最も多く属するクラスタCLを特定してもよい。
そして、分類部20Hは、特定したクラスタCLに、第2対象データXBを分類する。
なお、分類部20Hは、複数の第2対象データXBの内の特定の第2対象データXBに類似する、他の第2対象データXBを検索する検索処理、を更に実行してもよい。
この場合、分類部20Hは、パラメータを更新された学習モデル30を用いて算出された、複数の第2対象データXBの各々の潜在ベクトルVを潜在ベクトル算出部20Cから取得する。そして、分類部20Hは、取得した潜在ベクトルVを用いて、複数の第2対象データXBの内の特定の第2対象データXBに類似する、他の第2対象データXBを検索すればよい。
例えば、分類部20Hは、複数の第2対象データXBの内の特定の第2対象データXBに類似する他の第2対象データXBを、潜在ベクトルV間の距離および類似度の少なくとも一方を用いて検索する。すなわち、分類部20Hは、パラメータを更新された学習モデル30を用いて算出された、第2対象データXBの潜在ベクトルVを用いて、公知の最近傍法により、特定の第2対象データXBに類似する他の第2対象データXBを検索してもよい。
次に、学習装置10が実行する学習処理の流れの一例を説明する。
図8は、学習装置10が実行する学習処理の流れの一例を示す、フローチャートである。
まず、取得部20Bが、複数の第1対象データXAを取得する(ステップS100)。潜在ベクトル算出部20Cは、学習モデル30のパラメータを記憶部20Aから取得する(ステップS102)。
潜在ベクトル算出部20Cは、ステップS100で取得した複数の第1対象データXAの各々について、ステップS102で取得したパラメータを設定した学習モデル30を用いて、潜在ベクトルVを算出する(ステップS104)。
次に、第1確率算出部20Dは、ステップS104で算出された潜在ベクトルVを用いて、ステップS100で取得した複数の第1対象データXAの各々ごとに、複数の仮想クラスCの各々に属する第1確率を算出する(ステップS106)。
第1損失算出部20Eは、ステップS106で算出された第1確率を用いて、複数の第1対象データXAの各々ごとに、第1確率の第1損失を算出する(ステップS108)。
第2損失算出部20Fは、ステップS104で算出された潜在ベクトルVを用いて、複数の第1対象データXAの各々に含まれる複数の要素Eの各々が属する要素クラスGの各々ごとに、他の要素クラスGとの関係性が低いほど低い第2損失を算出する(ステップS110)。
更新部20Gは、ステップS108で算出された第1損失と、ステップS110で算出された第2損失と、を含む損失関数を算出する(ステップS112)。そして、更新部20Gは、ステップS112で算出された損失関数がより低くなるように、パラメータを算出し、記憶部20Aへ記憶する(ステップS114)。ステップS114の処理によって、学習モデル30のパラメータが更新される。
次に、更新部20Gは、学習終了基準を満たすか否かを判断する(ステップS116)。学習終了基準を満たさないと判断した場合には(ステップS116:No)、上記ステップS100へ戻る。一方、学習終了基準を満たすと判断すると(ステップS116:Yes)、ステップS118へ進む。
ステップS118では、分類部20Hが、ステップS114の処理によってパラメータを更新された学習モデル30を用いて対象データXを分類する分類処理を実行する(ステップS118)。そして、本ルーチンを終了する。
図9は、分類処理(ステップS118、図8参照)の流れの一例を示すフローチャートである。
潜在ベクトル算出部20Cは、ステップS114(図8参照)の処理によってパラメータを更新された学習モデル30を用いて、複数の第1対象データXAの各々の潜在ベクトルVを算出する(ステップS200)。
分類部20Hは、ステップS200で算出された複数の潜在ベクトルV間の距離および類似度の少なくとも一方を用いて、複数の第1対象データXAの各々を複数のクラスタCLに分類する(ステップS202)。
出力制御部20Iは、ステップS202の分類結果を出力する(ステップS204)。そして、本ルーチンを終了する。
次に、分類部20Hが実行する分類処理として、第2対象データXBの分類処理の流れを説明する。
図10は、分類統計値を用いた、第2対象データXBの分類処理(ステップS118、図8参照)の流れの一例を示す、フローチャートである。
まず、潜在ベクトル算出部20Cは、ステップS114(図8参照)の処理によってパラメータを更新された学習モデル30を用いて、複数の第1対象データXAの各々の潜在ベクトルVを算出する。分類部20Hは、算出された複数の潜在ベクトルV間の距離および類似度の少なくとも一方を用いて、複数の第1対象データXAの各々を複数のクラスタCLに分類する(ステップS300)。ステップS300の処理は、ステップS200~ステップS202と同様である(図9参照)。
そして、分類部20Hは、ステップS300で分類されたクラスタCLごとに、属する第1対象データXAの各々の潜在ベクトルVの分類統計値を算出する(ステップS302)。
次に、取得部20Bが、第2対象データXBを取得する(ステップS304)。潜在ベクトル算出部20Cは、学習モデル30のパラメータを記憶部20Aから取得する(ステップS306)。潜在ベクトル算出部20Cは、ステップS304で取得した1または複数の第2対象データXBの各々について、ステップS306で取得したパラメータを設定した学習モデル30を用いて、潜在ベクトルVを算出する(ステップS308)。
分類部20Hは、ステップS308で算出された、第2対象データXBの潜在ベクトルVと、ステップS302で算出されたクラスタCLごとの分類統計値と、を用いて、第2対象データXBを分類する(ステップS310)。
出力制御部20Iは、ステップS310の分類結果を出力する(ステップS312)。そして、本ルーチンを終了する。
次に、第1対象データXAおよび第2対象データXBの各々の潜在ベクトルVを用いた、第2対象データXBの分類処理(ステップS118、図8参照)の流れを説明する。
図11は、第1対象データXAおよび第2対象データXBの潜在ベクトルVを用いた、第2対象データXBの分類処理(ステップS118、図8参照)の流れの一例を示す、フローチャートである。
まず、潜在ベクトル算出部20Cは、ステップS114(図8参照)の処理によってパラメータを更新された学習モデル30を用いて、複数の第1対象データXAの各々の潜在ベクトルVを算出する。分類部20Hは、算出された複数の潜在ベクトルV間の距離および類似度の少なくとも一方を用いて、複数の第1対象データXAの各々を複数のクラスタCLに分類する(ステップS400)。ステップS400の処理は、ステップS300と同様である(図10参照)。
次に、取得部20Bが、第2対象データXBを取得する(ステップS402)。潜在ベクトル算出部20Cは、学習モデル30のパラメータを記憶部20Aから取得する(ステップS404)。潜在ベクトル算出部20Cは、ステップS402で取得した1または複数の第2対象データXBの各々について、ステップS404で取得したパラメータを設定した学習モデル30を用いて、潜在ベクトルVを算出する(ステップS406)。
分類部20Hは、ステップS400およびステップS406の各々で算出された、第1対象データXAおよび第2対象データXBの各々の潜在ベクトルVを用いて、第2対象データXBを分類する(ステップS408)。
出力制御部20Iは、ステップS408の分類結果を出力する(ステップS410)。そして、本ルーチンを終了する。
次に、複数の第2対象データXB同士の検索処理の流れを説明する。
図12は、複数の第2対象データXB同士の検索処理の流れの一例を示す、フローチャートである。
取得部20Bは、複数の第2対象データXBを取得する(ステップS500)。潜在ベクトル算出部20Cは、学習モデル30のパラメータを記憶部20Aから取得する(ステップS502)。潜在ベクトル算出部20Cは、ステップS500で取得した複数の第2対象データXBの各々について、ステップS502で取得したパラメータを設定した学習モデル30を用いて、潜在ベクトルVを算出する(ステップS504)。
分類部20Hは、ステップS504で算出された潜在ベクトルVを用いて、複数の第2対象データXBの内の特定の第2対象データXBに類似する、他の第2対象データXBを検索する(ステップS506)。そして、出力制御部20Iは、ステップS506の検索結果を出力する(ステップS508)。そして、本ルーチンを終了する。
以上説明したように、本実施形態の学習装置10は、潜在ベクトル算出部20Cと、第1確率算出部20Dと、第1損失算出部20Eと、第2損失算出部20Fと、更新部20Gと、を備える。潜在ベクトル算出部20Cは、対象データXから対象データXの潜在空間S上の特徴を示す潜在ベクトルVを出力する学習モデル30のパラメータを用いて、分類対象の対象データXである複数の第1対象データXAの各々の潜在ベクトルVを算出する。第1確率算出部20Dは、複数の第1対象データXAが互いに異なる仮想クラスCに属すると仮定し、複数の第1対象データXAの各々ごとに、複数の仮想クラスCの各々に属する第1確率を算出する。第1損失算出部20Eは、複数の第1対象データXAの各々ごとに、第1確率の第1損失を算出する。第2損失算出部20Fは、複数の第1対象データXAの各々に含まれる複数の要素Eの各々が属する要素クラスGの各々ごとに、他の要素クラスGとの関係性が低いほど低い第2損失を算出する。更新部20Gは、第1損失および第2損失が低くなるようにパラメータを更新する。
ここで、従来技術では、類似する対象データXを分類するクラスタリングには適さない場合があった。特に、背景が多様な一般物体の画像データなど、対象データが複雑なデータであるほど、従来技術では、クラスタリング精度が低下する場合があった。
例えば、本実施形態における第1損失および第2損失を用いずに、教師無しクラスタリングにより対象データXを分類する従来技術を想定する。この場合、対象データXとクラスタ中心Pとの間の距離を用いて、対象データXを分類していた。このため、従来技術では、対象データXが複雑なデータとなるほど、対象データXとクラスタ中心Pとの距離が適切に算出できなくなり、クラスタリング精度が低下する場合があった。
また、例えば、従来技術として、第1損失のみを用いて、該第1損失が低くなるように学習モデルのパラメータを更新する教師無クラスタリング技術を想定する。第1損失のみを用いた場合、類似する対象データXをクラスタに分類するクラスタリングには適さない場合があった。また、従来技術は、データをグループ化するクラスタリングを目的とした場合には必ずしも好適な学習ができず、クラスタリング精度が低下する場合があった。
一方、本実施形態の学習装置10では、第1損失および第2損失を用い、第1損失および第2損失の双方が低くなるように、学習モデル30のパラメータを更新する。このため、本実施形態の学習装置10では、対象データXのクラスタリングに適した学習モデル30のパラメータを学習することができる。
すなわち、学習装置10では、更新部20Gによって更新されたパラメータの学習モデル30を用いて算出された潜在ベクトルVを用いて、対象データXを分類することで、教師無クラスタリングの、クラスタリング精度の向上を図ることできる。
図13は、対象データXの分類精度のシミュレーション結果の一例を示す図である。なお、図13には、対象データXとして、飛行機、船、犬、猫などの被写体を含む画像データを用いた。また、分類精度は、分類結果とクラスの一致度を%で示したものである。
図13中、「Kmeans」および「Kmeans」に対応する分類精度は、以下を示す。この分類精度は、第1損失および第2損失を用いずに学習された学習モデルを用いて算出された、潜在ベクトルを用いたものである。そして、この潜在ベクトルを用いて、公知のKmeans法により、対象データXを分類した時の分類精度を意味する。
図13中、「第1損失」および「第1損失」に対応する分類精度は、以下を示す。この分類精度は、第1損失を用い、且つ、第2損失を用いずに学習された学習モデルを用いて算出された、潜在ベクトルを用いたものである。そして、この潜在ベクトルを用いて、公知のKmeans法により、対象データXを分類した時の分類精度を意味する。
また、図13中、「第1損失+第2損失」および「第1損失+第2損失」に対応する分類精度は、本実施形態の学習装置10が対象データXを分類した分類精度を意味する。
図13に示すように従来の「Kmeans」法を用いた分類精度が22.9%であるのに対して、本実施形態の学習装置10の分類精度は81.2%と大きく向上した。第2損失を用いなかった場合の分類精度は75.9%であった。このため、本実施形態の学習装置10では、分類精度が大きく向上したといえる。
図14Aおよび図14Bは、潜在空間Sにおける対象データXの分布の一例を示す模式図である。図14Aは、従来の例である。詳細には、図14Aは、第2損失を用いずに学習された学習モデルを用いて算出された、潜在ベクトルの対象データXを、潜在空間Sに配置した例である。図14Bは、本実施形態の学習装置10で算出された潜在ベクトルVの対象データXを、潜在空間Sに配置した例である。
図14Aに示すように、従来方法による対象データXの分類では、複数のクラスタCLに分類された対象データXの群間に、対象データXが密となっている空間Q1が存在する。一方、本実施形態の学習装置10による対象データXの分類では、複数のクラスタCLに分類された対象データXの群間に、対象データXが疎となっている空間Q2が存在する。このため、本実施形態の学習装置10では、複数の対象データX間の距離に差が出やすく、分類精度の向上を図ることできる、といえる。
上記に説明したように、本実施形態の学習装置10では、第1損失および第2損失を用い、第1損失および第2損失の双方が低くなるように、学習モデル30のパラメータを更新する。このため、本実施形態の学習装置10では、対象データXのクラスタリングに適した学習モデル30のパラメータを学習することができる。
従って、本実施形態の学習装置10は、クラスタリング精度向上を図ることができる。
また、分類部20Hが、更新部20Gによってパラメータを更新された学習モデル30を用いて対象データXを分類する。このため、本実施形態の学習装置10は、上記効果に加えて、第1対象データXA及び第2対象データXBの双方について、クラスタリング精度向上を図ることができる。
また、分類部20Hが、更新部20Gによってパラメータを更新された学習モデル30を用いて特定の対象データXに類似する他の対象データXを検索する。このため、本実施形態の学習装置10は、上記効果に加えて、第1対象データXA及び第2対象データXBの双方について、検索精度の向上を図ることができる。
また、本実施形態の学習装置10は、パラメータの学習時に用いた第1対象データXA以外の対象データXである第2対象データXBについて、新たにパラメータを学習することなく、高精度なクラスタリングおよび検索を行うことができる。
また、上述したように、本実施形態の学習装置10では、上記式(2)に示した、第1確率の差の大小を制御する変数であるτとして、上記差を所定範囲とするための変数を用いる事が好ましい。上記差とは、上述したように、1つの第1対象データXAが該第1対象データXAの正解の仮想クラスCに属する第1確率と、該第1対象データXAが該仮想クラスC以外の他の仮想クラスCに属する第1確率と、の差である。
上述したように、学習装置10は、1つの第1対象データXAが自身の仮想クラスCに属する第1確率の値のみが選択的に高くなることを抑制し、且つ、他の仮想クラスCにも属する可能性を示す第1確率の値が算出されるように、τの値を閾値以上の値に予め調整することが好ましい。
例えば、τとして閾値“0.4”を設定した場合を想定する。この場合、該閾値未満の値である“0.075”をτとして設定した場合に比べて、対象データXの分類精度向上を図ることが出来る事が、シミュレーションにより確認できた。
次に、上記実施の形態の学習装置10のハードウェア構成の一例を説明する。
図15は、上記実施の形態の学習装置10のハードウェア構成図の一例である。
上記実施の形態の学習装置10は、CPU71、ROM(Read Only Memory)72、RAM(Random Access Memory)73、およびI/F74等がバス75により相互に接続されており、通常のコンピュータを利用したハードウェア構成となっている。
CPU71は、上記実施の形態の学習装置10を制御する演算装置である。ROM72は、CPU71による各種処理を実現するプログラム等を記憶する。RAM73は、CPU71による各種処理に必要なデータを記憶する。I/F74は、出力部16および駆動制御部62などに接続し、データを送受信するためのインターフェースである。
上記実施の形態の学習装置10では、CPU71が、ROM72からプログラムをRAM73上に読み出して実行することにより、上記各機能がコンピュータ上で実現される。
なお、上記実施の形態の学習装置10で実行される上記各処理を実行するためのプログラムは、HDD(ハードディスクドライブ)に記憶されていてもよい。また、上記実施の形態の学習装置10で実行される上記各処理を実行するためのプログラムは、ROM72に予め組み込まれて提供されていてもよい。
また、上記実施の形態の学習装置10で実行される上記処理を実行するためのプログラムは、インストール可能な形式または実行可能な形式のファイルでCD-ROM、CD-R、メモリカード、DVD(Digital Versatile Disk)、フレキシブルディスク(FD)等のコンピュータで読み取り可能な記憶媒体に記憶されてコンピュータプログラムプロダクトとして提供されるようにしてもよい。また、上記実施の形態の学習装置10で実行される上記処理を実行するためのプログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、上記実施の形態の学習装置10で実行される上記処理を実行するためのプログラムを、インターネットなどのネットワーク経由で提供または配布するようにしてもよい。
なお、上記には、本発明の実施の形態を説明したが、上記実施の形態は、例として提示したものであり、発明の範囲を限定することは意図していない。この新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。この実施の形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
10 学習装置
20B 取得部
20C 潜在ベクトル算出部
20D 第1確率算出部
20E 第1損失算出部
20F 第2損失算出部
20G 更新部
20H 分類部

Claims (12)

  1. 対象データから前記対象データの潜在空間上の特徴を示す潜在ベクトルを出力する学習モデルのパラメータを用いて、分類対象の前記対象データである複数の第1対象データの各々の前記潜在ベクトルを算出する潜在ベクトル算出部と、
    複数の前記第1対象データが互いに異なる仮想クラスに属すると仮定し、複数の前記第1対象データの各々ごとに、複数の前記仮想クラスの各々に属する第1確率を算出する第1確率算出部と、
    複数の前記第1対象データの各々ごとに、前記第1確率の第1損失を算出する第1損失算出部と、
    複数の前記第1対象データの各々に含まれる複数の要素の各々が属する要素クラスの各々ごとに、他の前記要素クラスとの関係性が低いほど低い第2損失を算出する第2損失算出部と、
    前記第1損失および前記第2損失が低くなるように前記パラメータを更新する更新部と、
    を備える学習装置。
  2. 前記第2損失算出部は、式(1)を用いて前記第2損失を算出する、
    請求項1に記載の学習装置。
    Figure 0007221892000006
    式(1)中、L_2は第2損失を表し、fiは前記第1対象データに含まれるi番目の事例の潜在ベクトルから抽出した、前記要素ごとのベクトルを表す。式(1)中、τは、前記第1確率の差の大小を制御する変数である。式(1)中、nは、前記潜在ベクトルの次元数である。τ’は、式(1)で算出される前記第2損失の差の大小を制御する変数である。
  3. 前記第1損失算出部は、前記第1確率を用いて、複数の前記第1対象データが各々の属する前記仮想クラスに分類されるほど低くなる、前記第1損失を算出する、
    請求項1または請求項2に記載の学習装置。
  4. 前記パラメータを更新された前記学習モデルを用いて算出された、複数の前記第1対象データの各々の前記潜在ベクトルに基づいて、複数の前記第1対象データの各々を複数のクラスタに分類する分類部、
    を備える請求項1~請求項3の何れか1項に記載の学習装置。
  5. 前記分類部は、
    複数の前記第1対象データの各々の前記潜在ベクトル間の距離および類似度の少なくとも一方を用いて、複数の前記第1対象データの各々を複数の前記クラスタに分類する、
    請求項4に記載の学習装置。
  6. 前記分類部は、
    前記パラメータを更新された前記学習モデルを用いて算出された、複数の前記第1対象データの各々の前記潜在ベクトルに基づいて、
    複数の前記第1対象データの内の特定の前記第1対象データに類似する他の前記第1対象データを検索する、
    請求項4または請求項5の何れか1項に記載の学習装置。
  7. 前記分類部は、
    前記パラメータを更新された前記学習モデルを用いて算出された、複数の前記第1対象データの各々の前記潜在ベクトルの、複数の前記クラスタの各々ごとの分類統計値と、
    該学習モデルを用いて算出された、前記第1対象データ以外の他の前記対象データである第2対象データの前記潜在ベクトルと、
    に基づいて、前記第2対象データを複数の前記クラスタの何れかに分類する、
    請求項4~請求項6の何れか1項に記載の学習装置。
  8. 前記分類部は、
    前記パラメータを更新された前記学習モデルを用いて算出された、前記第1対象データの前記潜在ベクトルと、
    該学習モデルを用いて算出された、前記第1対象データ以外の他の前記対象データである第2対象データの前記潜在ベクトルと、
    に基づいて、前記第2対象データを複数の前記クラスタの何れかに分類する、
    請求項4~請求項6の何れか1項に記載の学習装置。
  9. 前記分類部は、
    前記パラメータを更新された前記学習モデルを用いて算出された、前記第1対象データ以外の他の前記対象データである、複数の第2対象データの各々の前記潜在ベクトルに基づいて、
    複数の前記第2対象データの内の特定の前記第2対象データに類似する、他の前記第2対象データを検索する、
    請求項4~請求項8の何れか1項に記載の学習装置。
  10. 前記第1確率算出部は、
    1つの前記第1対象データが自身の前記仮想クラスに属する前記第1確率と、該第1対象データが該仮想クラス以外の他の前記仮想クラスに属する前記第1確率と、の差を所定範囲とするための変数を含む関数を用いて、前記第1対象データの第1確率を算出する、
    請求項1~請求項9の何れか1項に記載の学習装置。
  11. コンピュータが実行する学習方法であって、
    対象データから前記対象データの潜在空間上の特徴を示す潜在ベクトルを出力する学習モデルのパラメータを用いて、分類対象の前記対象データである複数の第1対象データの各々の前記潜在ベクトルを算出するステップと、
    複数の前記第1対象データが互いに異なる仮想クラスに属すると仮定し、複数の前記第1対象データの各々ごとに、複数の前記仮想クラスの各々に属する第1確率を算出するステップと、
    複数の前記第1対象データの各々ごとに、前記第1確率の第1損失を算出するステップと、
    複数の前記第1対象データの各々に含まれる複数の要素の各々が属する要素クラスの各々ごとに、他の前記要素クラスとの関係性が低いほど低い第2損失を算出するステップと、
    前記第1損失および前記第2損失が低くなるように前記パラメータを更新するステップと、
    を含む学習方法。
  12. 対象データから前記対象データの潜在空間上の特徴を示す潜在ベクトルを出力する学習モデルのパラメータを用いて、分類対象の前記対象データである複数の第1対象データの各々の前記潜在ベクトルを算出するステップと、
    複数の前記第1対象データが互いに異なる仮想クラスに属すると仮定し、複数の前記第1対象データの各々ごとに、複数の前記仮想クラスの各々に属する第1確率を算出するステップと、
    複数の前記第1対象データの各々ごとに、前記第1確率の第1損失を算出するステップと、
    複数の前記第1対象データの各々に含まれる複数の要素の各々が属する要素クラスの各々ごとに、他の前記要素クラスとの関係性が低いほど低い第2損失を算出するステップと、
    前記第1損失および前記第2損失が低くなるように前記パラメータを更新するステップと、
    をコンピュータに実行させるための学習プログラム。
JP2020021893A 2020-02-12 2020-02-12 学習装置、学習方法、および学習プログラム Active JP7221892B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020021893A JP7221892B2 (ja) 2020-02-12 2020-02-12 学習装置、学習方法、および学習プログラム
US17/000,535 US20210248426A1 (en) 2020-02-12 2020-08-24 Learning device, learning method, and computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020021893A JP7221892B2 (ja) 2020-02-12 2020-02-12 学習装置、学習方法、および学習プログラム

Publications (2)

Publication Number Publication Date
JP2021128474A JP2021128474A (ja) 2021-09-02
JP7221892B2 true JP7221892B2 (ja) 2023-02-14

Family

ID=77177096

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020021893A Active JP7221892B2 (ja) 2020-02-12 2020-02-12 学習装置、学習方法、および学習プログラム

Country Status (2)

Country Link
US (1) US20210248426A1 (ja)
JP (1) JP7221892B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011086643A1 (ja) 2010-01-14 2011-07-21 日本電気株式会社 パターン認識装置、パターン認識方法及びパターン認識用プログラム
US20200027002A1 (en) 2018-07-20 2020-01-23 Google Llc Category learning neural networks

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10922793B2 (en) * 2018-05-16 2021-02-16 Nvidia Corporation Guided hallucination for missing image content using a neural network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011086643A1 (ja) 2010-01-14 2011-07-21 日本電気株式会社 パターン認識装置、パターン認識方法及びパターン認識用プログラム
US20200027002A1 (en) 2018-07-20 2020-01-23 Google Llc Category learning neural networks

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WU, Zhirong, et al.,Unsupervised Feature Learning via Non-Parametric Instance Discrimination,arXiv,2018年,https://arxiv.org/abs/1805.01978

Also Published As

Publication number Publication date
JP2021128474A (ja) 2021-09-02
US20210248426A1 (en) 2021-08-12

Similar Documents

Publication Publication Date Title
CN110163258B (zh) 一种基于语义属性注意力重分配机制的零样本学习方法及系统
WO2019100723A1 (zh) 训练多标签分类模型的方法和装置
WO2019100724A1 (zh) 训练多标签分类模型的方法和装置
CN112633350B (zh) 一种基于图卷积的多尺度点云分类实现方法
WO2020114378A1 (zh) 视频水印的识别方法、装置、设备及存储介质
US20110060708A1 (en) Information processing device, information processing method, and program
CN109033978B (zh) 一种基于纠错策略的cnn-svm混合模型手势识别方法
US10970313B2 (en) Clustering device, clustering method, and computer program product
JP2017224156A (ja) 情報処理装置、情報処理方法及びプログラム
CN112308862A (zh) 图像语义分割模型训练、分割方法、装置以及存储介质
CN114549894A (zh) 基于嵌入增强和自适应的小样本图像增量分类方法及装置
CN110751027B (zh) 一种基于深度多示例学习的行人重识别方法
CN109840518B (zh) 一种结合分类与域适应的视觉追踪方法
JP2006039658A (ja) 画像分類学習処理システム及び画像識別処理システム
CN112328715A (zh) 视觉定位方法及相关模型的训练方法及相关装置、设备
CN111223128A (zh) 目标跟踪方法、装置、设备及存储介质
CN112287935B (zh) 一种基于显著性先验的图像语义分割方法及系统
WO2021169160A1 (zh) 图像归一化处理方法及装置、存储介质
CN113298009A (zh) 一种基于熵正则化的自适应近邻人脸图像聚类方法
Venegas et al. Automatic ladybird beetle detection using deep-learning models
CN108846845B (zh) 基于缩略图与分层模糊聚类的sar图像分割方法
CN111488923B (zh) 增强的锚点图半监督分类方法
JP7221892B2 (ja) 学習装置、学習方法、および学習プログラム
CN114037931A (zh) 一种自适应权重的多视图判别方法
CN115049889A (zh) 存储介质和推理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220228

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221228

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230104

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230202

R151 Written notification of patent or utility model registration

Ref document number: 7221892

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151