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

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

Info

Publication number
JP2020126468A
JP2020126468A JP2019018829A JP2019018829A JP2020126468A JP 2020126468 A JP2020126468 A JP 2020126468A JP 2019018829 A JP2019018829 A JP 2019018829A JP 2019018829 A JP2019018829 A JP 2019018829A JP 2020126468 A JP2020126468 A JP 2020126468A
Authority
JP
Japan
Prior art keywords
data set
feature amount
distribution
learning
data
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.)
Granted
Application number
JP2019018829A
Other languages
English (en)
Other versions
JP7172677B2 (ja
Inventor
孝 河東
Takashi Kato
孝 河東
健人 上村
Taketo Uemura
健人 上村
優 安富
Masaru Yasutomi
優 安富
拓也 ▲高▼木
拓也 ▲高▼木
Takuya Takagi
小林 健
Takeshi Kobayashi
健 小林
晃 浦
Akira Ura
晃 浦
小林 健一
Kenichi Kobayashi
健一 小林
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2019018829A priority Critical patent/JP7172677B2/ja
Priority to US16/780,975 priority patent/US20200250544A1/en
Publication of JP2020126468A publication Critical patent/JP2020126468A/ja
Application granted granted Critical
Publication of JP7172677B2 publication Critical patent/JP7172677B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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/211Selection of the most significant subset of features
    • G06F18/2115Selection of the most significant subset of features by evaluating different subsets according to an optimisation criterion, e.g. class separability, forward selection or backward elimination
    • 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/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • 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
    • 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/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/771Feature selection, e.g. selecting representative features from a multi-dimensional feature space
    • 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/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/7715Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace 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
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • G06V10/7747Organisation of the process, e.g. bagging or boosting
    • 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/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/254Fusion techniques of classification results, e.g. of results related to same input data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • 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
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/08Detecting or categorising vehicles

Landscapes

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

Abstract

【課題】性質の異なる複数のデータセットを用いた転移学習の精度を向上させること。【解決手段】学習装置は、転移元のデータセットおよび転移先のデータセットうち、いずれかのデータセットをエンコーダに入力して、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とを算出する。学習装置は、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とで部分的に一致する特徴量を選択する。部分的に一致する特徴量を分類器に入力して、予測ラベルを算出する。学習装置は、予測ラベルが、転移元のデータセットの正解ラベルに近づくように、エンコーダおよび分類器のパラメータを学習する。【選択図】図1

Description

本発明は、学習方法等に関する。
第1学習モデルと、この第1学習モデルとは異なる第2学習モデルが存在し、第1学習モデルは、第1データセットによって学習可能であり、第2学習モデルは、第1データセットとはデータの分布(性質)の異なる第2データセットによって学習されるものとする。ここで、ラベル付きの第1データセットを、第2学習モデルの学習に適用する場合が存在し、かかる学習は、トランスダクティブ転移学習と呼ばれる。トランスダクティブ転移学習では、適用先のデータセットが複数存在する場合もある。以下の説明では、トランスダクティブ転移学習を、転移学習と表記する。
転移学習では、第1データセットと第2データセットとの性質が異なる場合に、第1データセットの固有の特徴量を使う第2モデルを作成してしまうと、第2学習モデルの精度が悪化する。これに対して、第1データセットと第2データセットとのドメイン間で共通する特徴量の分布を手がかりにして学習を行うことで、第1データセットの固有の特徴量による精度悪化を抑止する従来技術がある。
図14は、従来技術の一例を説明するための図である。図14に示す学習モデルには、Encoder10aと、Classifier10bとが含まれる。Encoder10aは、入力されたデータと、Encoder10aに設定されたパラメータとを基にして、特徴量を算出する。Classifier10bは、入力された特徴量と、Classifier10bに設定されたパラメータとを基にして、特徴量に応じた予測ラベルを算出する。
従来技術は、転移元データxs、転移先データxt1を用いて、Encoder10aおよびClassifier10bのパラメータの学習(転移学習)を行う。たとえば、図14に示す学習モデルとは別の学習モデルを学習する場合に、転移元データxsを用いて学習可能であり、ラベルysが設定されている。これに対して、転移先データxtは、図14に示す学習モデルを学習する場合に使用可能なデータであるが、ラベルが設定されていないものとする。
図15は、転移元データおよび転移先データの一例を示す図である。図15において、転移元データ(データセット)には、複数の転移元データxs1,xs2が含まれ、各転移元データxs1,xs2にはそれぞれ、転移元ラベルが設定されている。転移元データには、転移元データxs1,xs2以外の転移元データが含まれていてもよい。
転移元データxs1に対応する転移元ラベルは、転移元ラベルys1である。転移元データxs2に対応する転移元ラベルは、転移元ラベルys2である。以下の説明では、適宜、各転移元データxs1,xs2をまとめて、転移元データxsと表記する。転移元ラベルys1,ys2をまとめて、転移元ラベルysと表記する。
転移先データ(データセット)には、同一の性質をもつ複数の転移先データxt1.1,xt1.2が含まれ、各転移先データには、ラベルが設定されていない。転移先データには、転移先データxt1.1,xt1.2以外の転移先データが含まれていてもよい。転移先データxt1.1,xt1.2をまとめて、転移先データxt1と表記する。
図14において、転移元データxsをEncoder10aに入力すると、特徴量zsが算出される。転移先データxtをEncoder10aに入力すると、特徴量zt1が算出される。特徴量zsは、Classifier10bに入力され、判定ラベルys’が算出される。特徴量zt1は、Classifier10bに入力され、判定ラベルyt1’が算出される。
従来技術では、学習時において、特徴量zsの分布と、特徴量zt1の分布との誤差(similarity loss)が小さくなるように、Encoder10aのパラメータを学習する。また、従来技術では、判定ラベルys’と、転移元ラベルysとの誤差(supervised loss)が小さくなるように、Encoder10aのパラメータおよびClassifier10bのパラメータを学習する。
Tianchun Wang,Xiaoming Jin,Xiaojun Ye "Multi-Relevance Transfer Learning" Sean Rowan "Transductive Adversarial Networks(TAN)"
しかしながら、上述した従来技術では、性質の異なる複数のデータセットを用いた転移学習の精度が低下するという問題がある。
図16は、従来技術の問題を説明するための図である。たとえば、転移元データxs1と、転移先データxt1.1,xt2.1,xt3.1とを用いて、学習モデルを転移学習する場合について説明する。転移先データxt1.1,xt2.1,xt3.1は、それぞれ性質のことなるデータセットである。
たとえば、転移元データxs1には、トラック15aの画像と、ランプ15bが赤く光る画像とが含まれる。転移先データxt1.1には、トラック15aの画像と、壁15cの画像とが含まれる。転移先データxt2.1には、トラック15aの画像と、ランプ15bが赤く光る画像とが含まれる。転移先データxt3.1には、トラック15aの画像と、屋根15dの画像とが含まれる。
ここで、転移元データxs1と、転移先データxt2.1とを比較すると、ランプ15bが赤いという特徴は、ラベル(トラック)を推定するために有用な特徴である。しかし、従来技術では、転移先データx1.1〜x3.1の特徴量の誤差が小さくなるようにEncoder10aのパラメータが学習されることになり、転移先データxt1.1,xt3.1には、ランプ15bの画像は含まれないため、ランプ15bに関する特徴量がなくなる。
また、転移先データxt2.1と、転移先データxt3.1とを比較すると、トラック15aの画像に含まれる文字「T」の特徴が、ラベル(トラック)を推定するために有用な特徴である。しかし、従来技術のように、転移先データxt1.1〜xt3.1の特徴量の誤差が小さくなるにEncoder10aのパラメータが学習されることになり、転移元データxs1,転移先データxt1.1には、トラック15aの画像に文字「T」は含まれないため、文字「T」の特徴量がなくなる。
すなわち、従来技術では、一部のデータセットのラベル推定に有用な特徴量が作成されず、転移学習の精度が低下する。
なお、性質の異なるデータセット毎に学習モデルを生成すると、学習に使用可能なデータ量が減少するため、十分なデータセットで学習することができず、転移学習の精度が低下する。
1つの側面では、本発明は、性質の異なる複数のデータセットを用いた転移学習の精度を向上させることができる学習方法、学習プログラムおよび学習装置を提供することを目的とする。
第1の案では、コンピュータが次の処理を実行する。コンピュータは、転移元のデータセットおよび転移先のデータセットうち、いずれかのデータセットをエンコーダに入力して、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とを算出する。コンピュータは、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とで部分的に一致する特徴量を選択する。部分的に一致する特徴量を分類器に入力して、予測ラベルを算出する。コンピュータは、予測ラベルが、転移元のデータセットの正解ラベルに近づくように、エンコーダおよび分類器のパラメータを学習する。
性質の異なる複数のデータセットを用いた転移学習の精度を向上させることができる。
図1は、本実施例に係る学習装置の処理を説明するための図である。 図2は、本実施例に係る選択部の処理を説明するための図である。 図3は、本実施例に係る学習装置の処理の過程を説明するための図(1)である。 図4は、本実施例に係る学習装置の処理の過程を説明するための図(2)である。 図5は、本実施例に係る学習装置の処理の過程を説明するための図(3)である。 図6は、本実施例に係る学習装置の処理の過程を説明するための図(4)である。 図7は、本実施例に係る学習装置の構成を示す機能ブロック図である。 図8は、学習データテーブルのデータ構造の一例を示す図である。 図9は、パラメータテーブルのデータ構造の一例を示す図である。 図10は、予測ラベルテーブルのデータ構造の一例を示す図である。 図11は、本実施例に係る学習装置の学習処理の処理手順を示すフローチャートである。 図12は、本実施例に係る学習装置の予測処理の処理手順を示すフローチャートである。 図13は、本実施例に係る学習装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。 図14は、従来技術の一例を説明するための図である。 図15は、転移元データおよび転移先データの一例を示す図である。 図16は、従来技術の問題を説明するための図である。
以下に、本願の開示する学習方法、学習プログラムおよび学習装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
図1は、本実施例に係る学習装置の処理を説明するための図である。学習装置は、エンコーダ(Encoder)50a、デコーダ(Decoder)50b、分類器(Classifier)60を実行する。たとえば、学習装置は、性質の異なる複数のデータセットから、データセットXs,Xtを選択する。学習装置は、選択したデータセットXs,Xtに含まれる各データをエンコーダ50aにそれぞれ入力し、データセットXsに含まれる各データに応じた特徴量Zsの分布と、データセットXtに含まれる各データに応じた特徴量Ztの分布とを算出する。
学習装置の選択部150cは、特徴量Zsの分布と、データセットに含まれる各データに応じた特徴量Ztの分布とを比較し、お互いに分布の近い特徴量と、お互いに分布の異なる特徴量とを判定する。
図2は、本実施例に係る選択部の処理を説明するための図である。選択部150cは、特徴量Zsの分布と、特徴量Ztの分布とを比較し、分布が部分的に一致している特徴量を選択する。たとえば、特徴量Zsに含まれる特徴量zs1,zs2,zs3,zs4の分布と、特徴量Ztに含まれる特徴量zt1,zt2,zt3,zt4の分布とを比較した結果、特徴量zs2の分布と、特徴量zt2の分布とが一致する(分布が類似する)ものとする。また、特徴量zs3の分布と、特徴量zt3の分布とが一致する(分布が類似する)ものとする。この場合には、選択部150cは、特徴量zs2,zs3を選択し、選択した特徴量zs2,zs3を、特徴量Usに設定する。選択部150cは、特徴量zt2,zt3を選択し、選択した特徴量zt2,zt3を、特徴量Utに設定する。
ここで、選択部150cは、同一のデータセットから算出された各特徴量について、分布が一致するとして選択した特徴量と、相関のある特徴量を、更に選択してもよい。たとえば、選択部150cは、特徴量zt3の分布と、特徴量zt4の分布とが相関する場合、特徴量zt4を、特徴量Utに設定する。
選択部150cは、上記処理によって選択しなかった残りの特徴量を、特徴量Vs,Vtに設定する。たとえば、選択部150cは、特徴量zs1,zs4を、特徴量Vsに設定する。選択部150cは、特徴量zt1を、特徴量Vtに設定する。
図2に示した特徴量Us,Utは、分類器60に入力される。特徴量Vs,Vtは、分類器60から出力されるクラスラベルと共に、デコーダ50bに入力される。なお、選択部150cは、Dropoutと同様にして、特徴量Us,Ut、特徴量Vs,Vtに対して信号強度の補正を行うものとする。
図1の説明に戻る。学習装置は、特徴量Usを分類器60に入力し、クラスラベルYs’を算出する。学習装置は、特徴量Utを分類器60に入力し、クラスラベルYt’を算出する。
学習装置は、特徴量VsとクラスラベルYs’とを合わせたデータを、デコーダ50bに入力し、復元データXs’を算出する。学習装置は、特徴量VtとクラスラベルYt’とを合わせたデータを、デコーダ50bに入力し、復元データXt’を算出する。
学習装置は、条件1,2,3を満たすように、エンコーダ50a,デコーダ50b,分類器60の各パラメータを学習する。
「条件1」は、データセットにラベルが付与されている場合、予測誤差(supervised loss)が小さくなるという条件である。図1に示す例では、データセットXsの各データに付与されているラベルYsと、クラスラベルYs’との誤差が予測誤差となる。
「条件2」は、復元誤差(reconstruction loss)が小さくなるという条件である。図1に示す例では、データセットXsと、復元データXs’との誤差、データセットXtと、復元データXt’との誤差が、それぞれ復元誤差となる。
「条件3」は、データセットXsに含まれる各データに応じた特徴量の分布と、データセットXtに含まれる各データに応じた特徴量の分布との部分的な違い(partial similarity loss)が小さくなるという条件である。
図1、2で説明したように、本実施例に係る学習装置によれば、転移元および転移先のうちいずれかのデータセットをエンコーダに入力して得られる複数の特徴量の分布の組を比較し、部分的に一致する特徴量のみを分類器に入力して学習を行う。これによって、データセット間でラベル付けに有用な特徴量の情報が共用されるようになるため、転移学習の精度を向上させることができる。
図3〜図6は、本実施例に係る学習装置の処理の過程を説明するための図である。図3について説明する。学習装置は、性質の異なる複数のデータセットD1〜D4から、2つのデータセットを選択する。たとえば、データセットD1に含まれる各データには、ラベルがそれぞれ設定されているものとする。データセットD2〜D4に含まれる各データには、ラベルが設定されていないものとする。
図3に示す例では、学習装置は、複数のデータセットD1〜D4から、データセットD1,D2を選択する。学習装置は、選択したデータセットD1,D2に含まれる各データをエンコーダ50aにそれぞれ入力し、データセットD1に含まれる各データに応じた特徴量の分布と、データセットD2に含まれる各データに応じた特徴量の分布とを算出する。
学習装置は、データセットD1に含まれる各データに応じた特徴量の分布と、データセットD2に含まれる各データに応じた特徴量の分布とを比較し、お互いに分布の近い特徴量と、お互いに分布の異なる特徴量とを判定する。図3に示す例では、分布の近い特徴量を、特徴量U1とし、分布の異なる特徴量を特徴量V1,V2,V3とする。
学習装置は、特徴量U1を分類器60に入力して、分類結果(クラスラベル)Y’を算出する。学習装置は、分類結果Y’と、特徴量V1,V2,V3とをデコーダ50bに入力し、復元データX1’、X2’を算出する。学習装置は、データセットD1をラベル付きのデータセットであるとし、分類結果(たとえば、Y’)と、データセットD1のラベルとの予測誤差を算出するする。学習装置は、復元データX1’(X2’)と、データセットD1(D2)に含まれるデータとの復元誤差を算出する。
学習装置は、条件1〜3を満たすように、誤差逆伝播法等を用いて、エンコーダ50a,デコーダ50b,分類器60の各パラメータを学習する。
図4の説明に移行する。図4の例では、学習装置は、データセットD2,D3を選択する。学習装置は、選択したデータセットD2,D3に含まれる各データをエンコーダ50aにそれぞれ入力し、データセットD2に含まれる各データに応じた特徴量の分布と、データセットD3に含まれる各データに応じた特徴量の分布とを算出する。
学習装置は、データセットD2に含まれる各データに応じた特徴量の分布と、データセットD3に含まれる各データに応じた特徴量の分布とを比較し、お互いに分布の近い特徴量と、お互いに分布の異なる特徴量とを判定する。図4に示す例では、分布の近い特徴量を、特徴量U1とし、分布の異なる特徴量を特徴量V1,V2,V3とする。
学習装置は、特徴量U1を分類器60に入力して、分類結果(クラスラベル)Y’を算出する。学習装置は、分類結果Y’と、特徴量V1,V2,V3とをデコーダ50bに入力し、復元データX2’、X3’を算出する。
学習装置は、条件2,3を満たすように、誤差逆伝播法等を用いて、エンコーダ50a,デコーダ50b,分類器60の各パラメータを学習する。ここで、条件2の復元誤差は、データを復元するために必要な情報が不足するほど、復元誤差が大きくなる。
デコーダ50bは、分類器60の出力する結果が正しい場合に、分類器60の出力結果に重きをおいて、復元データを算出するという特性がある。そうすると、復元誤差が大きい場合、復元誤差を小さくする、学習装置の学習の過程において、分類器60は、特徴量U1を使用しないようになる。
図5の説明に移行する。図5の例では、学習装置は、データセットD1,D4を選択する。学習装置は、選択したデータセットD1,D4に含まれる各データをエンコーダ50aにそれぞれ入力し、データセットD1に含まれる各データに応じた特徴量の分布と、データセットD4に含まれる各データに応じた特徴量の分布とを算出する。
学習装置は、データセットD1に含まれる各データに応じた特徴量の分布と、データセットD4に含まれる各データに応じた特徴量の分布とを比較し、お互いに分布の近い特徴量と、お互いに分布の異なる特徴量とを判定する。図5に示す例では、分布の近い特徴量を、特徴量U1,U2とし、分布の異なる特徴量を特徴量V1,V2とする。たとえば、特徴量U2は、特徴量U1に相関のある特徴量とする。
学習装置は、特徴量U1,U2を分類器60に入力して、分類結果(クラスラベル)Y’を算出する。学習装置は、分類結果Y’と、特徴量V1,V2とをデコーダ50bに入力し、復元データX1’、X4’を算出する。
学習装置は、条件1,2,3を満たすように、誤差逆伝播法等を用いて、エンコーダ50a,デコーダ50b,分類器60の各パラメータを学習する。
図6の説明に移行する。図6の例では、学習装置は、データセットD3,D4を選択する。学習装置は、選択したデータセットD3,D4に含まれる各データをエンコーダ50aにそれぞれ入力し、データセットD3に含まれる各データに応じた特徴量の分布と、データセットD4に含まれる各データに応じた特徴量の分布とを算出する。
学習装置は、データセットD3に含まれる各データに応じた特徴量の分布と、データセットD4に含まれる各データに応じた特徴量の分布とを比較し、お互いに分布の近い特徴量と、お互いに分布の異なる特徴量とを判定する。図6に示す例では、分布の近い特徴量を、特徴量U1とし、分布の異なる特徴量を特徴量V1,V2,V3とする。
学習装置は、特徴量U1を分類器60に入力して、分類結果(クラスラベル)Y’を算出する。学習装置は、分類結果Y’と、特徴量V1,V2,V3とをデコーダ50bに入力し、復元データX3’、X4’を算出する。
学習装置は、条件2,3を満たすように、誤差逆伝播法等を用いて、エンコーダ50a,デコーダ50b,分類器60の各パラメータを学習する。
学習装置が、上記処理を繰り返し実行することで、ラベル無しデータセット間でラベル付けに有用な特徴量の情報が共有される。たとえば、ラベル付けに有用な特徴量は、図5に示した特徴量U1,U2、図6に示した特徴量U1等に対応する。これに対して、ラベル付けに有用でない特徴量は、学習の過程において使用されなくなる。たとえば、ラベル付けに有用でない特徴量は、図4に示した特徴量U1である。
次に、本実施例に係る学習装置の構成の一例について説明する。図7は、本実施例に係る学習装置の構成を示す機能ブロック図である。図7に示すように、この学習装置100は、通信部110と、入力部120と、表示部130と、記憶部140と、制御部150とを有する。
通信部110は、ネットワーク等を介して外部装置(図示略)とデータ通信を実行する処理部である。通信部110は、通信装置に対応する。たとえば、通信部110は、後述する学習データテーブル140aの情報を、外部装置等から受信する。
入力部120は、各種の情報を学習装置100に入力するための入力装置である。たとえば、入力部120は、キーボードやマウス、タッチパネル等に対応する。
表示部130は、制御部150から出力される各種の情報を表示する表示装置である。たとえば、表示部130は、液晶ディスプレイ、タッチパネル等に対応する。
記憶部140は、学習データテーブル140aと、パラメータテーブル140bと、予測ラベルテーブル140cとを有する。記憶部140は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子や、HDD(Hard Disk Drive)などの記憶装置に対応する。
学習データテーブル140aは、転送元データセットおよび転送先データセットを保存するテーブルである。図8は、学習データテーブルのデータ構造の一例を示す図である。図8に示すように、この学習データテーブル140aは、データセット識別情報と、訓練データと、正解ラベルとを対応付ける。データセット識別情報は、データセットを識別する情報である。訓練データは、学習時にエンコーダ50aに入力されるデータである。正解ラベルは、訓練データに対応する正解のラベルである。
図8において、正解ラベルに情報が設定されているデータセットは、ラベル付き(教師あり)のデータセットである。正解ラベルに情報が設定されていないデータセットは、ラベルなし(教師なし)のデータセットである。たとえば、データセット識別情報D1のデータセットは、ラベル付きのデータセットである。データセット識別情報D2〜D4のデータセットは、ラベルなしのデータセットである。各データセットは、それぞれ性質の異なるデータセットであるものとする。以下の説明では適宜、データセット識別情報Dに識別されるデータセットを、データセットDと表記する。
パラメータテーブル140bは、エンコーダ50a、デコーダ50b、分類器60のパラメータを保持するテーブルである。図9は、パラメータテーブルのデータ構造の一例を示す図である。図9に示すように、このパラメータテーブル140bは、ネットワーク識別情報と、パラメータとを対応付ける。ネットワーク識別情報は、エンコーダ50a、デコーダ50b、分類器60をそれぞれ識別する情報である。たとえば、ネットワーク識別情報「En」は、エンコーダ50aを示す。ネットワーク識別情報「De」は、デコーダ50bを示す。ネットワーク識別情報「Cl」は、分類器60を示す。
エンコーダ50a、デコーダ50b、分類器60は、ニューラルネットワーク(NN:Neural Network)に対応する。NNは、複数の層を有し、各層には複数のノードが含まれ、各ノードがエッジで結ばれる構造となっている。各層は、活性化関数と呼ばれる関数とバイアス値とを持ち、エッジは、重みを持つ。本実施例では、NNに設定されるバイアス値、重み等をまとめて「パラメータ」と表記する。エンコーダ50aのパラメータを、パラメータθeとする。デコーダ50bのパラメータを、パラメータθdとする。分類器60のパラメータを、パラメータθcとする。
予測ラベルテーブル140cは、ラベルなしのデータセットを、エンコーダ50aに入力した場合に、分類器60から出力されるラベル(予測ラベル)を保存するテーブルである。図10は、予測ラベルテーブルのデータ構造の一例を示す図である。図10に示すように、予測ラベルテーブル140cは、データセット識別情報と、訓練データと、予測ラベルとを対応付ける。
図7の説明に戻る。制御部150は、取得部150a、特徴量生成部150b、選択部150c、学習部150d、予測部150eを有する。制御部150は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などによって実現できる。また、制御部150は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などのハードワイヤードロジックによっても実現できる。
取得部150aは、外部装置等から、学習データテーブル140aの情報を取得する処理部である。取得部150aは、取得した学習データテーブル140aの情報を、学習データテーブル140aに格納する。
特徴量生成部150bは、性質の異なる2つのデータセットを、エンコーダ50aに入力し、一方のデータセット(以下、第1データセット)の特徴量の分布と、他方のデータセット(以下、第2データセット)の特徴量の分布を生成する処理部である。特徴量生成部150bは、第1データセットの特徴量の分布と、第2データセットの特徴量の分布との情報を、選択部150cに出力する。以下において、特徴量生成部150bの処理の一例について説明する。
特徴量生成部150bは、エンコーダ50aを実行し、パラメータテーブル140bに保存されたパラメータθeをエンコーダ50aに設定する。特徴量生成部150bは、学習データテーブル140aから、性質の異なる第1データセットと、第2データセットとを取得する。
特徴量生成部150bは、第1データセットに含まれる各訓練データを、エンコーダ50aに入力し、パラメータθeを基にして、各訓練データに対応する特徴量をそれぞれ算出することで、第1データセットの特徴量の分布を生成する。ここで、特徴量生成部150bは、特徴量の次元を圧縮する処理(特徴量の軸を変更する処理)等を行うことで、複数の特徴量の分布を生成してもよい。たとえば、特徴量生成部150bは、第1次元数の特徴量の分布zs1、第2次元数の特徴量の分布zs2、第3次元数の特徴量の分布zs3、第4次元数の特徴量の分布zs4を生成する。
特徴量生成部150bは、第2データセットに含まれる各訓練データを、エンコーダ50aに入力し、パラメータθeを基にして、各訓練データに対応する特徴量をそれぞれ算出することで、第2データセットの特徴量の分布を生成する。ここで、特徴量生成部150bは、特徴量の次元を圧縮する処理(特徴量の軸を変更する処理)等を行うことで、複数の特徴量の分布を生成してもよい。たとえば、特徴量生成部150bは、第1次元数の特徴量の分布zt1、第2次元数の特徴量の分布zt2、第3次元数の特徴量の分布zt3、第4次元数の特徴量の分布zt4を生成する。
ところで、特徴量生成部150bが、複数の特徴量の分布を生成する際に、次元の圧縮や変換等を行ってもよいが、もっと単純に軸ごとの特徴量に分解する処理を行って、複数の特徴量の分布を生成してもよい。たとえば、特徴量生成部150bは、[(1,2,3)]という1つの3次元の特徴量を[(1),(2),(3)]という3つの1次元の特徴量に分解する。また、特徴量生成部150bは、他の分解する処理として、主成分分析や独立成分分析を使用して特徴量を分解してもよい。
選択部150cは、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とを比較し、部分的に一致する特徴量を選択する処理部である。選択部150cは、部分的に一致する特徴量と、部分的に一致しない特徴量とを学習部150dに出力する。以下の説明では、適宜、部分的に一致する特徴量を「特徴量U」と表記する。部分的に一致しない特徴量を「特徴量V」と表記する。
また、選択部150cは、同一のデータセットに含まれる各特徴量のうち、第1特徴量と相関する特徴量を、学習部150dに出力する。以下の説明では、適宜、同一のデータセットに含まれる各特徴量のうち、特徴量Uと相関する特徴量を「特徴量U’」と表記する。特徴量Uと、特徴量U’とを特に区別しない場合には、単に、特徴量Uと表記する。
選択部150cの処理を、図2を用いて説明する。ここでは一例として、第1データセットの特徴量Zsの分布と、第2データセットの特徴量Ztの分布とを用いて説明する。特徴量Zsの分布には、特徴量zs1〜zs4の分布が含まれる。特徴量zs1〜zs4はそれぞれ、特徴量Zsの軸を変更した際の各特徴量に対応する。特徴量Ztの分布には、特徴量zt1〜zt4の分布が含まれる。特徴量zt1〜zt4はそれぞれ、特徴量Ztの軸を変更した際の各特徴量に対応する。
選択部150cは、特徴量zs1〜zs4の分布と、特徴量zt1〜zt4の分布とを比較して、分布の近い特徴量を判定する。たとえば、選択部150cは、各特徴量の分布の重心距離が閾値未満である場合に、各特徴量の分布が近いと判定する。
たとえば、選択部150cは、特徴量zs2の分布と、特徴量zt2の分布とが近い場合、特徴量zs2と、特徴量zt2を、特徴量Uとして選択する。特徴量zs3の分布と、特徴量zt3の分布とが近い場合、特徴量zs3と、特徴量zt3を、特徴量Uとして選択する。選択部150cは、特徴量zt3と、特徴量zt4とが相関している場合、特徴量zt4を、特徴量U’として選択する。
選択部150cは、特徴量zs2,zs3を選択し、選択した特徴量zs2,zs3を、特徴量Usに設定する。選択部150cは、特徴量zt2,zt3、zt4を選択し、選択した特徴量zt2,zt3、zt4を、特徴量Utに設定する。
選択部150cは、特徴量zs1,zs4を、特徴量Vsに設定する。選択部150cは、特徴量zt1を、特徴量Vtに設定する。
選択部150cは、特徴量Us、Ut、Vs、Vtの情報を、学習部150dに出力する。
更に、選択部150cは、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とを比較し、部分的に一致する特徴量の違いを評価し、評価結果を、学習部150dに出力する。図2で説明した例では、選択部150cは、特徴量zs2の分布と特徴量zt2の分布の誤差、特徴量zs3の分布と特徴量zt3の分布との違いを評価する。
学習部150dは、予測誤差、復元誤差が小さくなり、部分的に一致する特徴量の違いが小さくなるように、エンコーダ50a、デコーダ50b、分類器60のパラメータを学習する処理部である。以下において、学習部150dの処理の一例について説明する。
学習部150dは、エンコーダ50a、デコーダ50b、分類器60を実行し、パラメータテーブル140bに保存されたパラメータθe,θd,θcを、エンコーダ50a、デコーダ50b、分類器60にそれぞれ設定する。
学習部150dは、選択部150cから取得した特徴量Uを分類器60に入力し、パラメータθcを基にして、クラスラベルを算出する。たとえば、図1に示す例では、学習部150dは、特徴量Usを分類器60に入力し、パラメータθcを基にして、クラスラベルYs’を算出する。
学習部150dは、特徴量Uに対応するデータセットが、ラベル付きのデータセットである場合、特徴量Uのクラスラベルと、正解ラベルとの予測誤差を評価する。たとえば、学習部150dは、クラスラベル(クラスラベルの確率)と、正解ラベルとの2乗誤差を、予測誤差として評価する。
学習部150dは、選択部150cから取得した特徴量Vと、特徴量Uのクラスラベルとを合わせた情報をデコーダ50bに入力し、パラメータθdを基にして、復元データを算出する。たとえば、図1に示す例では、学習部150dは、特徴量Vsと、特徴量UsのクラスラベルYs’とを合わせた情報をデコーダ50bに入力し、パラメータθdを基にして、復元データXs’を算出する。
学習部150dは、特徴量Vに対応する訓練データと、復元データとの復元誤差を評価する。たとえば、学習部150dは、特徴量Vに対応する訓練データと、復元データとの2乗誤差を、復元誤差として評価する。
学習部150dは、上記処理によって求めた「予測誤差」、「復元誤差」、「部分的に一致する特徴量の違い」がそれぞれ小さくなるように、誤差逆伝播法によって、パラメータθe,θd,θcを学習する。
特徴量生成部150b、選択部150c、学習部150dは、所定の終了条件を満たすまで、上記処理を繰り返し実行する。所定の終了条件は、パラメータθe,θd,θcの収束状況を規定する条件、学習回数などを含む。たとえば、学習回数がN回以上となった場合、パラメータθe,θd,θcの変化が閾値未満となった場合に、特徴量生成部150b、選択部150c、学習部150dは、学習を終了する。
学習部150dは、学習済みのパラメータθe,θd,θcの情報を、パラメータテーブル140bに保存する。学習部150dは、学習済みのパラメータθe,θd,θcの情報を表示部130に表示してもよいし、パラメータθe,θcを用いて、各種の判定を行う判定装置に、パラメータθe,θcの情報を通知してもよい。
予測部150eは、ラベルなしのデータセットに含まれる各訓練データのラベルを予測する処理部である。以下に説明するように、予測部150eは、特徴量生成部150bおよび選択部150cと連携して処理を実行する。たとえば、予測部150eは、処理を開始する場合に、特徴量生成部150bおよび選択部150cに対して、制御信号を出力する。
特徴量生成部150bは、予測部150eから制御信号を受け付けると、次の処理を実行する。特徴量生成部150bは、学習データテーブル140aに含まれる複数のラベルなしのデータセットから、性質の異なる第1データセットと、第2データセットとを取得する。特徴量生成部150bは、第1データセットの特徴量の分布と、第2データセットの特徴量の分布との情報を、選択部150cに出力する。特徴量生成部150bに関するその他の処理の説明は、上記の特徴量生成部150bの処理の説明と同様である。
選択部150cは、予測部150eから制御信号を受け付けると、次の処理を実行する。選択部150cは、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とを比較し、部分的に一致する特徴量Uを選択する。選択部150cは、選択した特徴量Uを、予測部150eに出力する。選択部150cが、特徴量Uを選択する処理の説明は、上記の選択部150cの処理の説明と同様である。
予測部150eは、分類器60を実行し、パラメータテーブル140bに保存されたパラメータθcを分類器60に設定する。予測部150eは、選択部150cから取得した特徴量Uを、分類器60に入力し、パラメータθcを基にして、クラスラベルを算出する。
特徴量生成部150b、選択部150c、予測部150eは、第1データセットの各訓練データおよび第2データセットの各訓練データについて、上記処理を繰り返し実行し、各訓練データに対応する予測ラベルを算出し、予測ラベルテーブル140cに登録する。また、特徴量生成部150b、選択部150c、予測部150eは、他の第1データセットおよび他の第2データセットを選択し、上記処理を繰り返し実行する。特徴量生成部150b、選択部150c、予測部150eが係る処理を実行することで、予測ラベルテーブル140cには、ラベル無しの各データセットの各訓練データに対する予測ラベルが保存される。予測部150eは、実行回数などの終了条件を設けて、終了条件を満たすまで、上記処理を繰り返し実行してもよい。
予測部150eは、予測ラベルテーブル140cの各訓練データに対応する予測ラベルについて、多数決を行うことで、予測ラベルを決定する。たとえば、予測部150eは、訓練データのX2.n,X3.n,X4.n,X5.n,・・・,Xm.n(n=1,2,3,4,・・・)に対応する予測ラベルの多数決を行い、ラベルを決定する。訓練データ「X2.1,X3.1,X4.1,X5.1」の予測ラベルに関して、「Y1’」が3つ、「Y1−1’」が1つである。このため、予測部150eは、訓練データ「X2.1,X3.1,X4.1,X5.1」に対応する正解ラベルを「Y1’」であると判定し、判定結果を、学習データテーブル140aの正解ラベルに登録する。
訓練データ「X2.2,X3.2,X4.2,X5.2」の予測ラベルに関して、「Y2’」が4つである。このため、予測部150eは、訓練データ「X2.2,X3.2,X4.2,X5.2」に対応する正解ラベルを「Y2’」であると判定し、判定結果を、学習データテーブル140aの正解ラベルに登録する。
次に、本実施例に係る学習装置100の処理手順の一例について説明する。図11は、本実施例に係る学習装置の学習処理の処理手順を示すフローチャートである。図11に示すように、学習装置100は、パラメータテーブル140bのパラメータを初期化する(ステップS101)。学習装置100の特徴量生成部150bは、学習データテーブル140aから2つのデータセットを選択する(ステップS102)。
特徴量生成部150bは、2つのデータセットから複数の訓練データX1,X2を選択する(ステップS103)。特徴量生成部150bは、訓練データX1,X2をエンコーダ50aに入力して、特徴量Z1,Z2を生成する(ステップS104)。
学習装置100の選択部150cは、特徴量Z1,Z2の分布の違いを評価する(ステップS105)。選択部150cは、特徴量Z1,Z2を、お互いの分布が近い特徴量U1,U2と、分布が異なる特徴量V1,V2に分割する(ステップS106)。
学習装置100の学習部150dは、特徴量U1,U2を分類部60に入力し、クラスラベルY1’,Y2’を予測する(ステップS107)。学習部150dは、データセットがラベル付きのデータセットの場合、クラスラベルの予測誤差を算出する(ステップS108)。
学習部150dは、特徴量V1,V2、クラスラベルY1’,Y2’をデコーダ50bに入力し、復元データX1’,X2’を算出する(ステップS109)。学習部150dは、復元データX1’,X2’と、訓練データX1,X2とを基にして復元誤差を算出する(ステップS110)。
学習部150dは、予測誤差、復元誤差が小さくなるように、また、分布の違いが部分的に小さくなるように、エンコーダ50a、デコーダ50b、分類器60のパラメータを学習する(ステップS111)。学習部150dは、終了条件を満たすか否かを判定する(ステップS112)。学習部150dは、終了条件を満たさない場合には(ステップS113,No)、ステップS102に移行する。
一方、学習部150dは、終了条件を満たす場合には(ステップS113,Yes)、ステップS114に移行する。学習部150dは、エンコーダ50a、デコーダ50b、分類器60の学習済みのパラメータをパラメータテーブル140bに保存する(ステップS114)。
図12は、本実施例に係る学習装置の予測処理の処理手順を示すフローチャートである。図12に示すように、学習装置100の特徴量生成部150bは、学習データテーブル140aからラベルなしの2つのデータセットを選択する(ステップS201)。
特徴量生成部150bは、2つのデータセットから複数の訓練データX1,X2を選択する(ステップS202)。特徴量生成部150bは、訓練データX1,X2をエンコーダ50aに入力して、特徴量Z1,Z2を生成する(ステップS203)。
学習装置100の選択部150cは、特徴量Z1,Z2の分布の違いを評価する(ステップS204)。選択部150cは、特徴量Z1,Z2を、お互いの分布が近い特徴量U1,U2と、分布が異なる特徴量V1,V2に分割する(ステップS205)。
学習装置100の予測部150eは、特徴量U1,U2を分類部60に入力し、クラスラベルY1’,Y2’を予測する(ステップS206)。予測部150eは、予測されたクラスラベルY1’,Y2’を予測ラベルテーブル140cに保存する(ステップS207)。予測部150eは、終了条件を満たすか否かを判定する(ステップS208)。
予測部150eは、終了条件を満たさない場合には(ステップS209,No)、ステップS201に移行する。予測部150eは、終了条件を満たす場合には(ステップS209,Yes)、各訓練データに対応する正解ラベルを、多数決に基づいて決定する(ステップS210)。
次に、本実施例に係る学習装置100の効果について説明する。学習装置100は、転移元および転移先のうちいずれかのデータセットをエンコーダ50aに入力して得られる複数の特徴量の分布の組を比較し、部分的に一致する特徴量のみを分類器60に入力して学習を行う。これによって、データセット間でラベル付けに有用な特徴量の情報が共用されるようになるため、転移学習の精度を向上させることができる。
学習装置100は、第1データセットの特徴量および第2データセットの特徴量から部分的に一致する特徴量を除いた特徴量と、予測ラベルとをデコーダに入力して、復元データを算出する。また、学習装置100は、訓練データと復元データとの復元誤差が小さくなるように、パラメータθe,θd,θcを学習する。これによって、データセット間でラベル付けに有用でない特徴量の情報を使用しないように、分類器60を調整することができる。
学習装置100は、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とが部分的に一致するように、エンコーダのパラメータθeを学習する。これによって、特定のデータセット間で、ラベル付けに有用な特徴量の情報であって、他のデータセット間に存在しない特徴量の情報を、共用することができる。
学習装置100は、ラベルなしの2つのデータセットを選択して、データセットに対応する特徴量Uを分類器60に入力して得られるクラスラベルを予測する処理を繰り返し実行し、クラスラベルの多数決等によって、データセットの正解ラベルを決定する。これによって、転移先のデータセットの正解ラベルを生成することができる。
次に、本実施例に示した学習装置100と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。図13は、本実施例に係る学習装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
図13に示すように、コンピュータ300は、各種演算処理を実行するCPU301と、ユーザからのデータの入力を受け付ける入力装置302と、ディスプレイ303とを有する。また、コンピュータ300は、記憶媒体からプログラム等を読み取る読み取り装置304と、有線または無線ネットワークを介して、外部装置等との間でデータの授受を行うインタフェース装置305とを有する。コンピュータ300は、各種情報を一時記憶するRAM306と、ハードディスク装置307とを有する。そして、各装置301〜307は、バス308に接続される。
ハードディスク装置307は、取得プログラム307a、特徴量生成プログラム307b、選択プログラム307c、学習プログラム307d、予測プログラム307eを有する。CPU301は、取得プログラム307a、特徴量生成プログラム307b、選択プログラム307c、学習プログラム307d、予測プログラム307eを読み出してRAM306に展開する。
取得プログラム307aは、取得プロセス306aとして機能する。特徴量生成プログラム307bは、特徴量生成プロセス306bとして機能する。選択プログラム307cは、選択プロセス306cとして機能する。学習プログラム307dは、学習プロセス306dとして機能する。予測プログラム307eは、予測プロセス306eとして機能する。
取得プロセス306aの処理は、取得部150aの処理に対応する。特徴量生成プロセス306bの処理は、特徴量生成部150bの処理に対応する。選択プロセス306cの処理は、選択部150c,250cの処理に対応する。学習プロセス306dの処理は、学習部150dの処理に対応する。予測プロセス306eの処理は、予測部150eの処理に対応する。
なお、各プログラム307a〜307eについては、必ずしも最初からハードディスク装置307に記憶させておかなくてもよい。例えば、コンピュータ300に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ300が各プログラム307a〜307eを読み出して実行するようにしてもよい。
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)コンピュータが実行する学習方法であって、
転移元のデータセットおよび転移先のデータセットうち、いずれかのデータセットをエンコーダに入力して、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とを生成し、
前記第1データセットの特徴量の分布と、前記第2データセットの特徴量の分布とで部分的に一致する特徴量を選択し、
前記部分的に一致する特徴量を分類器に入力して、予測ラベルを算出し、
前記予測ラベルが、前記転移元のデータセットの正解ラベルに近づくように、前記エンコーダおよび前記分類器のパラメータを学習する
処理を実行することを特徴とする学習方法。
(付記2)前記予測ラベルを算出する処理によって算出される複数の予測ラベルを基にして、前記転移先のデータセットに対応するラベルを予測する処理を更に実行することを特徴とする付記1に記載の学習方法。
(付記3)前記第1データセットの特徴量および前記第2データセットの特徴量から前記部分的に一致する特徴量を除いた特徴量と、前記予測ラベルとをデコーダに入力して、復元データを算出する処理を更に実行することを特徴とする付記1または2に記載の学習方法。
(付記4)前記エンコーダに入力したデータと、前記復元データとの誤差が小さくなるように、前記エンコーダのパラメータと、前記デコーダのパラメータと、前記分類器のパラメータを学習する処理を更に実行することを特徴とする付記3に記載の学習方法。
(付記5)前記第1データセットの特徴量の分布と、前記第2データセットの特徴量の分布とが部分的に一致するように、前記エンコーダのパラメータを学習する処理を更に実行することを特徴とする付記1〜4のいずれか一つに記載の学習方法。
(付記6)前記分布を算出する処理は、転移元のデータセットと、転移先のデータセットとの組、または、2つの異なる転移先のデータセットの組を、前記エンコーダに入力して、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とを算出することを特徴とする付記1〜5のいずれか一つに記載の学習方法。
(付記7)コンピュータに、
転移元のデータセットおよび転移先のデータセットうち、いずれかのデータセットをエンコーダに入力して、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とを算出し、
前記第1データセットの特徴量の分布と、前記第2データセットの特徴量の分布とで部分的に一致する特徴量を選択し、
前記部分的に一致する特徴量を分類器に入力して、予測ラベルを算出し、
前記予測ラベルが、前記転移元のデータセットの正解ラベルに近づくように、前記エンコーダおよび前記分類器のパラメータを学習する
処理を実行させることを特徴とする学習プログラム。
(付記8)前記予測ラベルを算出する処理によって算出される複数の予測ラベルを基にして、前記転移先のデータセットに対応するラベルを予測する処理を更に実行することを特徴とする付記7に記載の学習プログラム。
(付記9)前記第1データセットの特徴量および前記第2データセットの特徴量から前記部分的に一致する特徴量を除いた特徴量と、前記予測ラベルとをデコーダに入力して、復元データを算出する処理を更に実行することを特徴とする付記7または8に記載の学習プログラム。
(付記10)前記エンコーダに入力したデータと、前記復元データとの誤差が小さくなるように、前記エンコーダのパラメータと、前記デコーダのパラメータと、前記分類器のパラメータを学習する処理を更に実行することを特徴とする付記9に記載の学習プログラム。
(付記11)前記第1データセットの特徴量の分布と、前記第2データセットの特徴量の分布とが部分的に一致するように、前記エンコーダのパラメータを学習する処理を更に実行することを特徴とする付記7〜10のいずれか一つに記載の学習プログラム。
(付記12)前記分布を算出する処理は、転移元のデータセットと、転移先のデータセットとの組、または、2つの異なる転移先のデータセットの組を、前記エンコーダに入力して、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とを算出することを特徴とする付記7〜11のいずれか一つに記載の学習プログラム。
(付記13)転移元のデータセットおよび転移先のデータセットうち、いずれかのデータセットをエンコーダに入力して、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とを生成する特徴量生成部と、
前記第1データセットの特徴量の分布と、前記第2データセットの特徴量の分布とで部分的に一致する特徴量を選択する選択部と、
前記部分的に一致する特徴量を分類器に入力して、予測ラベルを算出し、前記予測ラベルが、前記転移元のデータセットの正解ラベルに近づくように、前記エンコーダおよび前記分類器のパラメータを学習する学習部と
を有することを特徴とする学習装置。
(付記14)前記予測ラベルを算出する処理によって算出される複数の予測ラベルを基にして、前記転移先のデータセットに対応するラベルを予測する予測部を更に有することを特徴とする付記13に記載の学習装置。
(付記15)前記学習部は、前記第1データセットの特徴量および前記第2データセットの特徴量から前記部分的に一致する特徴量を除いた特徴量と、前記予測ラベルとをデコーダに入力して、復元データを算出する処理を更に実行することを特徴とする付記13または14に記載の学習装置。
(付記16)前記学習部は、前記エンコーダに入力したデータと、前記復元データとの誤差が小さくなるように、前記エンコーダのパラメータと、前記デコーダのパラメータと、前記分類器のパラメータを学習する処理を更に実行することを特徴とする付記15に記載の学習装置。
(付記17)前記学習部は、前記第1データセットの特徴量の分布と、前記第2データセットの特徴量の分布とが部分的に一致するように、前記エンコーダのパラメータを学習する処理を更に実行することを特徴とする付記13〜16のいずれか一つに記載の学習装置。
(付記18)前記特徴量生成部は、転移元のデータセットと、転移先のデータセットとの組、または、2つの異なる転移先のデータセットの組を、前記エンコーダに入力して、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とを算出することを特徴とする付記13〜17のいずれか一つに記載の学習装置。
100 学習装置
110 通信部
120 入力部
130 表示部
140 記憶部
140a 学習データテーブル
140b パラメータテーブル
140c 予測ラベルテーブル
150 制御部
150a 取得部
150b 特徴量生成部
150c 選択部
150d 学習部
150e 予測部

Claims (8)

  1. コンピュータが実行する学習方法であって、
    転移元のデータセットおよび転移先のデータセットうち、いずれかのデータセットをエンコーダに入力して、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とを生成し、
    前記第1データセットの特徴量の分布と、前記第2データセットの特徴量の分布とで部分的に一致する特徴量を選択し、
    前記部分的に一致する特徴量を分類器に入力して、予測ラベルを算出し、
    前記予測ラベルが、前記転移元のデータセットの正解ラベルに近づくように、前記エンコーダおよび前記分類器のパラメータを学習する
    処理を実行することを特徴とする学習方法。
  2. 前記予測ラベルを算出する処理によって算出される複数の予測ラベルを基にして、前記転移先のデータセットに対応するラベルを予測する処理を更に実行することを特徴とする請求項1に記載の学習方法。
  3. 前記第1データセットの特徴量および前記第2データセットの特徴量から前記部分的に一致する特徴量を除いた特徴量と、前記予測ラベルとをデコーダに入力して、復元データを算出する処理を更に実行することを特徴とする請求項1または2に記載の学習方法。
  4. 前記エンコーダに入力したデータと、前記復元データとの誤差が小さくなるように、前記エンコーダのパラメータと、前記デコーダのパラメータと、前記分類器のパラメータを学習する処理を更に実行することを特徴とする請求項3に記載の学習方法。
  5. 前記第1データセットの特徴量の分布と、前記第2データセットの特徴量の分布とが部分的に一致するように、前記エンコーダのパラメータを学習する処理を更に実行することを特徴とする請求項1〜4のいずれか一つに記載の学習方法。
  6. 前記分布を算出する処理は、転移元のデータセットと、転移先のデータセットとの組、または、2つの異なる転移先のデータセットの組を、前記エンコーダに入力して、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とを算出することを特徴とする請求項1〜5のいずれか一つに記載の学習方法。
  7. コンピュータに、
    転移元のデータセットおよび転移先のデータセットうち、いずれかのデータセットをエンコーダに入力して、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とを算出し、
    前記第1データセットの特徴量の分布と、前記第2データセットの特徴量の分布とで部分的に一致する特徴量を選択し、
    前記部分的に一致する特徴量を分類器に入力して、予測ラベルを算出し、
    前記予測ラベルが、前記転移元のデータセットの正解ラベルに近づくように、前記エンコーダおよび前記分類器のパラメータを学習する
    処理を実行させることを特徴とする学習プログラム。
  8. 転移元のデータセットおよび転移先のデータセットうち、いずれかのデータセットをエンコーダに入力して、第1データセットの特徴量の分布と、第2データセットの特徴量の分布とを生成する特徴量生成部と、
    前記第1データセットの特徴量の分布と、前記第2データセットの特徴量の分布とで部分的に一致する特徴量を選択する選択部と、
    前記部分的に一致する特徴量を分類器に入力して、予測ラベルを算出し、
    前記予測ラベルが、前記転移元のデータセットの正解ラベルに近づくように、前記エンコーダおよび前記分類器のパラメータを学習する学習部と
    を有することを特徴とする学習装置。
JP2019018829A 2019-02-05 2019-02-05 学習方法、学習プログラムおよび学習装置 Active JP7172677B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019018829A JP7172677B2 (ja) 2019-02-05 2019-02-05 学習方法、学習プログラムおよび学習装置
US16/780,975 US20200250544A1 (en) 2019-02-05 2020-02-04 Learning method, storage medium, and learning apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019018829A JP7172677B2 (ja) 2019-02-05 2019-02-05 学習方法、学習プログラムおよび学習装置

Publications (2)

Publication Number Publication Date
JP2020126468A true JP2020126468A (ja) 2020-08-20
JP7172677B2 JP7172677B2 (ja) 2022-11-16

Family

ID=71837533

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019018829A Active JP7172677B2 (ja) 2019-02-05 2019-02-05 学習方法、学習プログラムおよび学習装置

Country Status (2)

Country Link
US (1) US20200250544A1 (ja)
JP (1) JP7172677B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022208632A1 (ja) * 2021-03-29 2022-10-06 三菱電機株式会社 推論装置、推論方法、学習装置、学習方法、及びプログラム
WO2023238258A1 (ja) * 2022-06-07 2023-12-14 日本電信電話株式会社 情報提供装置、情報提供方法及び情報提供プログラム
WO2024084685A1 (ja) * 2022-10-21 2024-04-25 三菱電機株式会社 学習装置、プログラム及び学習方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11562297B2 (en) * 2020-01-17 2023-01-24 Apple Inc. Automated input-data monitoring to dynamically adapt machine-learning techniques

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017224156A (ja) * 2016-06-15 2017-12-21 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
WO2018020277A1 (en) * 2016-07-28 2018-02-01 Google Llc Domain separation neural networks

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3874417A1 (en) * 2018-10-29 2021-09-08 HRL Laboratories, LLC Systems and methods for few-shot transfer learning

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017224156A (ja) * 2016-06-15 2017-12-21 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
WO2018020277A1 (en) * 2016-07-28 2018-02-01 Google Llc Domain separation neural networks

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022208632A1 (ja) * 2021-03-29 2022-10-06 三菱電機株式会社 推論装置、推論方法、学習装置、学習方法、及びプログラム
JPWO2022208632A1 (ja) * 2021-03-29 2022-10-06
JP7274071B2 (ja) 2021-03-29 2023-05-15 三菱電機株式会社 学習装置
WO2023238258A1 (ja) * 2022-06-07 2023-12-14 日本電信電話株式会社 情報提供装置、情報提供方法及び情報提供プログラム
WO2024084685A1 (ja) * 2022-10-21 2024-04-25 三菱電機株式会社 学習装置、プログラム及び学習方法

Also Published As

Publication number Publication date
JP7172677B2 (ja) 2022-11-16
US20200250544A1 (en) 2020-08-06

Similar Documents

Publication Publication Date Title
JP2020126468A (ja) 学習方法、学習プログラムおよび学習装置
US20230111841A1 (en) Temporal processing scheme and sensorimotor information processing
US9159021B2 (en) Performing multistep prediction using spatial and temporal memory system
US11966831B2 (en) Feedback mechanisms in sequence learning systems with temporal processing capability
US20210201181A1 (en) Inferencing and learning based on sensorimotor input data
US11657278B2 (en) Location processor for inferencing and learning based on sensorimotor input data
Imani et al. Semihd: Semi-supervised learning using hyperdimensional computing
KR102283283B1 (ko) 데이터 레이블링 우선순위 결정방법
CN113011529B (zh) 文本分类模型的训练方法、装置、设备及可读存储介质
US20220245405A1 (en) Deterioration suppression program, deterioration suppression method, and non-transitory computer-readable storage medium
US20200334856A1 (en) Machine learning model development with unsupervised image selection
JP7481902B2 (ja) 管理計算機、管理プログラム、及び管理方法
KR20210066545A (ko) 반도체 소자의 시뮬레이션을 위한 전자 장치, 방법, 및 컴퓨터 판독가능 매체
US11651277B2 (en) Sparse distributed representation for networked processing in predictive system
Takhirov et al. Energy-efficient adaptive classifier design for mobile systems
US10776687B2 (en) Union processing of sequences of patterns
Stawicki et al. Decision bireducts and approximate decision reducts: Comparison of two approaches to attribute subset ensemble construction
JP6725194B2 (ja) 学習済みモデルを生成する方法、データを分類する方法、コンピュータおよびプログラム
CN116502705A (zh) 兼用域内外数据集的知识蒸馏方法和计算机设备
US20220269718A1 (en) Method And Apparatus For Tracking Object
WO2022215559A1 (ja) ハイブリッドモデル作成方法、ハイブリッドモデル作成装置、及び、プログラム
CN113516182B (zh) 视觉问答模型训练、视觉问答方法和装置
US20210374578A1 (en) Inferencing and learning based on sensorimotor input data
Blum et al. SCIM: Simultaneous Clustering, Inference, and Mapping for Open-World Semantic Scene Understanding
Nakata et al. Complete action map or best action map in accuracy-based reinforcement learning classifier systems

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211109

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220926

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221004

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221017

R150 Certificate of patent or registration of utility model

Ref document number: 7172677

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150