IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 株式会社東芝の特許一覧 ▶ 東芝ソリューション株式会社の特許一覧

特開2024-131342情報処理装置、情報処理方法およびプログラム
<>
  • 特開-情報処理装置、情報処理方法およびプログラム 図1
  • 特開-情報処理装置、情報処理方法およびプログラム 図2
  • 特開-情報処理装置、情報処理方法およびプログラム 図3
  • 特開-情報処理装置、情報処理方法およびプログラム 図4
  • 特開-情報処理装置、情報処理方法およびプログラム 図5
  • 特開-情報処理装置、情報処理方法およびプログラム 図6
  • 特開-情報処理装置、情報処理方法およびプログラム 図7
  • 特開-情報処理装置、情報処理方法およびプログラム 図8
  • 特開-情報処理装置、情報処理方法およびプログラム 図9
  • 特開-情報処理装置、情報処理方法およびプログラム 図10
  • 特開-情報処理装置、情報処理方法およびプログラム 図11
  • 特開-情報処理装置、情報処理方法およびプログラム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024131342
(43)【公開日】2024-09-30
(54)【発明の名称】情報処理装置、情報処理方法およびプログラム
(51)【国際特許分類】
   G06F 18/214 20230101AFI20240920BHJP
   G06N 20/00 20190101ALI20240920BHJP
   G06F 16/906 20190101ALI20240920BHJP
   G06F 18/23 20230101ALI20240920BHJP
   G06F 18/15 20230101ALI20240920BHJP
【FI】
G06F18/214
G06N20/00
G06F16/906
G06F18/23
G06F18/15
【審査請求】未請求
【請求項の数】17
【出願形態】OL
(21)【出願番号】P 2023041547
(22)【出願日】2023-03-16
(71)【出願人】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(71)【出願人】
【識別番号】301063496
【氏名又は名称】東芝デジタルソリューションズ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】高橋 信太郎
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175FA03
5B175FB01
5B175FB04
(57)【要約】
【課題】より高精度に学習を行う学習データを生成する。
【解決手段】情報処理装置は、処理部を備える。処理部は、モデルの学習に用いられた複数の第1学習データに基づいて、複数の第1学習データのサンプル数より少ないサンプル数のデータであって、複数の第1学習データの要約を表す複数の第1要約データを生成する要約処理を実行する。処理部は、複数の第1要約データに基づいて、複数の第1要約データのサンプル数より多いサンプル数のデータであって、モデルの学習に用いる複数の第2学習データを生成する。
【選択図】図1
【特許請求の範囲】
【請求項1】
モデルの学習に用いられた複数の第1学習データに基づいて、複数の前記第1学習データのサンプル数より少ないサンプル数のデータであって、複数の前記第1学習データの要約を表す複数の第1要約データを生成する要約処理を実行し、
複数の前記第1要約データに基づいて、複数の前記第1要約データのサンプル数より多いサンプル数のデータであって、前記モデルの学習に用いる複数の第2学習データを生成する、
処理部、
を備える情報処理装置。
【請求項2】
前記処理部は、
複数の前記第1学習データそれぞれを複数のクラスタのいずれかに分類し、
複数の前記クラスタの少なくとも一部について、前記クラスタに含まれる前記第1学習データを代表する1つ以上のデータを、前記第1要約データとして生成する、
請求項1に記載の情報処理装置。
【請求項3】
前記処理部は、前記クラスタの重心を示すデータ、または、前記クラスタの重心に対する距離または類似度に関する尺度に基づいて選択される前記第1学習データを、前記第1要約データとして生成する、
請求項2に記載の情報処理装置。
【請求項4】
前記処理部は、
複数の前記クラスタのうち2つ以上について、
同じサンプル数の前記第1要約データを生成する、または、複数の前記クラスタそれぞれに分類された複数の前記第1学習データの属性に応じたサンプル数の前記第1要約データを生成する、
請求項2に記載の情報処理装置。
【請求項5】
前記属性は、複数の前記第1学習データのサンプル数、または、複数の前記第1学習データの多様性を示す指標である、
請求項4に記載の情報処理装置。
【請求項6】
前記処理部は、複数の前記第1要約データに対して、複数の前記クラスタそれぞれに分類された複数の前記第1学習データの統計情報に応じたノイズを付与することにより、複数の前記第2学習データを生成する、
請求項2に記載の情報処理装置。
【請求項7】
前記統計情報は、複数の前記第1学習データに含まれる1つ以上の変数それぞれの標準偏差である、
請求項6に記載の情報処理装置。
【請求項8】
前記処理部は、
複数の前記第1学習データを、複数の前記第1要約データと、複数の前記第1要約データを入力して複数の前記第1学習データに近似する複数の近似データを出力する近似関数と、に分解し、
複数の前記第1要約データを前記近似関数に入力して得られる複数の前記近似データを、前記第2学習データとして生成する、
請求項1に記載の情報処理装置。
【請求項9】
前記処理部は、行列分解またはオートエンコーダを用いて、複数の前記第1学習データを、複数の前記第1要約データと前記近似関数とに分解する、
請求項8に記載の情報処理装置。
【請求項10】
前記処理部は、
複数の前記第1学習データの次元を圧縮し、
次元が圧縮された複数の前記第1学習データを用いて、複数の前記第1要約データを生成し、
複数の前記第2学習データの次元を、複数の前記第1学習データの次元に復元する、
請求項1に記載の情報処理装置。
【請求項11】
前記処理部は、
複数の前記第1学習データに基づいて、複数の前記第1学習データのサンプル数より少ないサンプル数のデータであって、複数の前記第1学習データの要約を表す複数の第2要約データを生成し、
複数の前記第2要約データを、複数の前記第2要約データのサンプル数より少ないサンプル数のデータであって、複数の前記第2要約データの要約を表す複数の前記第1要約データと、複数の前記第1要約データを入力して複数の前記第2要約データの近似データを出力する近似関数と、に分解し、
複数の前記第1要約データを前記近似関数に入力して得られる複数の近似データを生成し、
複数の前記近似データを、複数の前記第1要約データとして用いて、複数の第2学習データを生成する、
請求項1に記載の情報処理装置。
【請求項12】
前記処理部は、行列分解またはオートエンコーダを用いて、複数の前記第1要約データを、複数の前記第1要約データと前記近似関数とに分解する、
請求項11に記載の情報処理装置。
【請求項13】
前記処理部は、
複数の前記第1学習データのデータサイズに対する、生成された複数の前記第1要約データのデータサイズの割合を表す圧縮率、および、複数の前記第2学習データを用いて学習された前記モデルの性能を表すスコアのうち少なくとも一方に基づく評価値を算出し、
前記評価値が予め定められた条件を満たすまで、前記要約処理を繰り返し実行する、
請求項1に記載の情報処理装置。
【請求項14】
前記処理部は、複数の前記第2学習データを用いて前記モデルを学習する、
請求項1に記載の情報処理装置。
【請求項15】
前記処理部は、
前記要約処理を実行する要約部と、
複数の前記第2学習データを生成するデータ生成部と、
を備える、
請求項1に記載の情報処理装置。
【請求項16】
情報処理装置で実行される情報処理方法であって、
モデルの学習に用いられた複数の第1学習データに基づいて、複数の前記第1学習データのサンプル数より少ないサンプル数のデータであって、複数の前記第1学習データの要約を表す複数の第1要約データを生成する要約処理を実行し、
複数の前記第1要約データに基づいて、複数の前記第1要約データのサンプル数より多いサンプル数のデータであって、前記モデルの学習に用いる複数の第2学習データを生成する、
ことを含む情報処理方法。
【請求項17】
コンピュータに、
モデルの学習に用いられた複数の第1学習データに基づいて、複数の前記第1学習データのサンプル数より少ないサンプル数のデータであって、複数の前記第1学習データの要約を表す複数の第1要約データを生成する要約処理を実行するステップと、
複数の前記第1要約データに基づいて、複数の前記第1要約データのサンプル数より多いサンプル数のデータであって、前記モデルの学習に用いる複数の第2学習データを生成するステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【0002】
機械学習モデルを新たな学習データで再学習するとき、過去に学習された知識を忘却する破滅的忘却が生じる場合がある。破滅的忘却への対策としては、過去の学習データを記憶しておき、再学習時に新たな学習データとともに過去の学習データを学習に用いる方法がある。
【0003】
このような方法では、学習データの大規模化、および、再学習の繰り返し適用によるストレージの圧迫などの問題が生じうる。そこで、学習データにクラスタリングを適用し代表的なデータを選択することで学習データを要約し、要約した学習データを再学習に用いる技術が提案されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2022-159720号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来技術では、学習を高精度に実行できない場合があった。例えば、要約した学習データを用いる技術では、再学習時に学習データのサンプル数が少ないことに起因して過学習に陥るという課題、および、新しい学習データとのインバランスによって破滅的忘却を抑制する効果が薄れるという課題があった。
【0006】
本発明は、より高精度に学習を行う学習データを生成することができる情報処理装置、情報処理方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
実施形態の情報処理装置は、処理部を備える。処理部は、モデルの学習に用いられた複数の第1学習データに基づいて、複数の第1学習データのサンプル数より少ないサンプル数のデータであって、複数の第1学習データの要約を表す複数の第1要約データを生成する要約処理を実行する。処理部は、複数の第1要約データに基づいて、複数の第1要約データのサンプル数より多いサンプル数のデータであって、モデルの学習に用いる複数の第2学習データを生成する。
【図面の簡単な説明】
【0008】
図1】第1の実施形態の情報処理装置のブロック図。
図2】データセットの一例を示す図。
図3】代表データの一例を示す図。
図4】コアデータの一例を示す図。
図5】第1の実施形態の情報処理のフローチャート。
図6】第1の実施形態の要約処理のフローチャート。
図7】第1の実施形態の生成処理のフローチャート。
図8】変形例1における設定処理のフローチャート。
図9】第2の実施形態の情報処理装置のブロック図。
図10】第2の実施形態の要約処理のフローチャート。
図11】第2の実施形態の生成処理のフローチャート。
図12】実施形態の情報処理装置のハードウェア構成図。
【発明を実施するための形態】
【0009】
以下に添付図面を参照して、この発明にかかる情報処理装置の好適な実施形態を詳細に説明する。
【0010】
(第1の実施形態)
第1の実施形態の情報処理装置は、学習データに対するクラスタリングにより生成される複数の要約データに対して、複製およびノイズ付与などによるデータ生成処理を実行し、要約データよりサンプル数が多い学習データを生成する。これにより、上記のような過学習および破滅的忘却の抑制効果が薄れるという問題を解消可能となる。サンプル数とは、データの個数を表す。従って、要約データよりサンプル数が多い学習データとは、要約データの個数より、学習データの個数が多いことを意味する。個々の学習データが、複数の要素(変数など)を含む場合がある。この場合、要素の個数は次元数という。サンプル数(データの個数)を変えずに、次元数を減らすことを次元の圧縮といい、次元数を増やすことを次元の復元という。
【0011】
また、本実施形態では、クラスタリングの前に学習データの次元圧縮を行う。これにより、記憶する学習データ(要約データ)のデータサイズをより削減することができる。
【0012】
図1は、第1の実施形態の情報処理装置100の構成の一例を示すブロック図である。図1に示すように、情報処理装置100は、記憶部150と、要約部110と、データ生成部120と、学習部131と、評価部132と、出力制御部133と、を備える。
【0013】
なお、要約部110は、学習に用いた既存のデータセットを少ないサイズのデータ(要約データ)に要約する機能に相当する。また、データ生成部120は、要約データから再学習のための学習データを生成する機能に相当する。また、学習部131は、機械学習モデルを学習する機能に相当する。
【0014】
記憶部150は、情報処理装置100で用いられる各種データを記憶する。例えば記憶部150は、以下のデータを記憶する。
(1)モデルM:学習の対象となる機械学習モデルを示すデータ。このデータは、例えば、モデルMの構造を表すデータ、および、モデルMのパラメータである。
(2)圧縮・復元モデルDRM:次元の圧縮および圧縮した次元を復元するモデルを示すデータ。このデータは、例えば、圧縮・復元モデルDRMの構造を表すデータ、および、圧縮・復元モデルDRMのパラメータである。
(3)データセットD1:過去に学習に用いられた複数の学習データ(第1学習データ)を含むデータセット。データセットD1が要約の対象となる。
(4)圧縮データセットD2:データセットD1に含まれる複数の学習データの次元を圧縮した複数の学習データを含むデータセット。
(5)クラスタリング結果C:圧縮データセットD2をクラスタリングした結果を示すデータ。
(6)代表データRD:圧縮データセットD2に含まれる複数の学習データを代表する1つ以上のデータ。代表データRDは、データセットD1に含まれる複数の学習データのサンプル数より少ないサンプル数のデータであって、複数の学習データの要約を表す複数の要約データSD_A(第2要約データ)に相当する。
(7)コアデータCD:代表データRDよりさらに少ないサンプル数となるように代表データRDを分解して得られるデータ。コアデータCDは、複数の要約データSD_Aのサンプル数より少ないサンプル数のデータであって、複数の学習データの要約を表す複数の要約データSD_B(第1要約データ)に相当する。コアデータCDは、データセットD1に含まれる複数の学習データを要約した複数の要約データSD_Aをさらに要約したデータであるため、データセットD1に含まれる複数の学習データを要約した複数の要約データであると解釈することもできる。
(8)近似関数F:コアデータCDから代表データRDの近似データAPを求めるための関数。
(9)近似データAP:コアデータCDと近似関数Fとにより求められる代表データRDを近似するデータ。
(10)生成データGD:近似データAPに基づいて生成されるデータ。例えば、生成データGDは、近似データAPの複製およびノイズの付与などにより生成される。
(11)復元データREC:生成データGDをデータセットD1と同じ次元数に復元したデータ。
(12)データセットDN:モデルMの再学習のために新たに用意される複数の学習データ。モデルMの再学習時には、例えばデータセットDNと、復元データRECと、が学習データとして用いられる。
【0015】
図2は、データセットD1の一例を示す図である。図2に示すように、データセットD1は、N0個(N0は1以上の整数)の学習データである学習データD_1~D_N0を含む。各学習データは、d0個(d0は1以上の整数)の変数である変数P_1~P_d0を含む。図2の例では、データセットD1に含まれる複数の学習データのサンプル数はN0であり、各学習データの次元数はd0である。
【0016】
図2では、変数名を表すヘッダ行と学習データの識別情報を表すインデックス列とが表されているが、これらは無くても構わない。変数の値は数値に限られない。なお、データセットDNも、図2のデータセットD1と同様のデータ構造とすることができる。
【0017】
なお、図2では各学習データが各行に対応する表形式のデータとしてデータセットD1が表現されているが、データセットD1の形式はこれに限られない。各学習データは、どのような形式のデータであってもよい。例えば学習データは、画像、音声、および、テキストデータであってもよいし、これらの形式のデータから抽出された特徴量を示すデータであってもよい。
【0018】
圧縮データセットD2は、データセットD1に含まれる各学習データの次元数d0をd(dは1≦d<d0を満たす整数)に圧縮したデータセットである。圧縮データセットD2に含まれる学習データのサンプル数はN0である。
【0019】
次元圧縮後の次元数dは、予め定められてもよいし、ユーザ等による指定に応じて設定されてもよいし、変形例1(後述)のように繰り返し処理などで決定されてもよい。
【0020】
代表データRDは、圧縮データセットD2から生成される、サンプル数N1(N1は1≦N1<N0を満たす整数)のデータである。図3は、代表データRDの一例を示す図である。図3は、N1個の代表データRDである代表データ301-1~301-N1を行列形式で表現した例である。図3では、各列が、1つの代表データRDに相当する。各代表データRDの次元数はdである。なお、代表データRDからコアデータCDを生成する分解部114(後述)には、列単位ではなく、行単位のデータが入力される。すなわち、分解部114(後述)には、図3のような行列形式のデータの各行に相当するd個のデータ302-1~302-dが入力される。
【0021】
図4は、図3のような代表データRDを分解して得られるコアデータCDの一例を示す図である。コアデータCDのサンプル数N2は、代表データRDのサンプル数N1より小さい(1≦N2<N1)。図4は、N2個のコアデータCDであるコアデータ401-1~401-N2を行列形式で表現した例である。図4では、各列が、1つのコアデータCDに相当する。各コアデータCDの次元数はdである。分解部114(後述)は、図3のd個のデータ302-1~302-dを入力し、d個のデータ402-1~402-dを出力するように構成される。
【0022】
なお、記憶部150は、フラッシュメモリ、メモリカード、RAM(Random Access Memory)、HDD(Hard Disk Drive)、および、光ディスクなどの一般的に利用されているあらゆる記憶媒体により構成することができる。
【0023】
記憶部150は、物理的に異なる複数の記憶媒体で実現されてもよいし、物理的に同一の記憶媒体の複数の記憶領域で実現されてもよい。例えば記憶部150に記憶された各データの一部または全部は、複数の記憶媒体または複数の記憶領域に分散して記憶されてもよい。
【0024】
要約部110は、データセットD1に基づいて、データセットD1に含まれる複数の学習データのサンプル数より少ないサンプル数のデータであって、複数の学習データの要約を表す複数の要約データを生成する要約処理を実行する。例えばコアデータCDが要約データに相当するが、変形例3で後述するように、代表データRDが要約データとなるように構成することもできる。
【0025】
要約部110は、圧縮部111、クラスタリング部112、代表生成部113、および、分解部114を備える。
【0026】
圧縮部111は、データセットD1に含まれる複数の学習データの次元を圧縮した複数の学習データを含む圧縮データセットD2を生成する。例えば圧縮部111は、記憶部150からデータセットD1を読み出し、圧縮・復元モデルDRMを用いてデータセットD1の次元を圧縮した圧縮データセットD2を生成する。圧縮・復元モデルDRMは、学習済の既存の圧縮・復元モデルであってもよいし、新たに学習して生成されてもよい。新たに圧縮・復元モデルDRMを学習した場合は、圧縮部111は、学習した圧縮・復元モデルDRMを記憶部150に記憶する。圧縮部111は、圧縮・復元モデルDRMのうち、復元部122による次元の復元処理に用いる部分(次元復元機能)を復元モデルDECとして記憶部150に記憶してもよい。
【0027】
圧縮・復元モデルDRMは、例えば行列分解を用いたモデルでもよいし、オートエンコーダであってもよい。圧縮・復元モデルDRMは、要約対象のデータセットD1を学習させたモデルであることが望ましい。例えば、再学習する対象のモデルMが、異常検知を目的としたオートエンコーダであったとする。このような場合、モデルMのオートエンコーダを、圧縮・復元モデルDRMとしても利用することができる。すなわち、既にデータセットD1により学習されているモデルMは、圧縮・復元モデルDRMとしても利用することができる。
【0028】
既存の圧縮・復元モデルDRMが存在しなければ、例えば圧縮部111は、データセットD1を用いて新たに圧縮・復元モデルDRMを学習すればよい。圧縮部111は、行列分解またはオートエンコーダなどによる圧縮・復元モデルDRMを、何らかのアルゴリズムによりデータセットD1を用いて学習する。
【0029】
新たに圧縮・復元モデルDRMが学習された場合、後に使用するために、圧縮部111は、圧縮・復元モデルDRMのうち次元復元のための機能に関する部分のデータに相当する復元モデルDECを記憶部150に記憶する。例えば、圧縮・復元モデルDRMがオートエンコーダであれば、圧縮部111は、デコーダの部分を記憶する。
【0030】
クラスタリング部112は、圧縮データセットD2をクラスタリングする。例えばクラスタリング部112は、圧縮データセットD2に含まれる複数の学習データそれぞれを複数のクラスタのいずれかに分類する。クラスタリング部112は、クラスタリングの結果を、クラスタリング結果Cとして記憶部150に記憶する。クラスタリング結果Cは、例えば、複数のクラスタを識別する識別情報(クラスタ番号など)と、各クラスタにいずれの学習データが分類されたかを示す情報と、を含む。例えばクラスタリング結果Cには、圧縮データセットD2に含まれる学習データの順に、分類されたクラスタのクラスタ番号が設定される。
【0031】
代表生成部113は、クラスタリング結果Cに基づいて代表データRDを生成する。例えば代表生成部113は、複数のクラスタの少なくとも一部について、当該クラスタに含まれる学習データを代表する1つ以上の代表データRDを生成する。
【0032】
代表データRDは、例えば、以下のようなデータとして生成することができる。
・クラスタの重心を示すデータ
・クラスタの重心を示すデータに対する距離または類似度に関する尺度に基づいて選択される学習データ
【0033】
分解部114は、代表生成部113が出力した複数の代表データRDを、より少ないサンプル数の複数のコアデータCDと、近似関数Fと、に分解する。近似関数Fは、コアデータCDから、代表データRDを近似した近似データAPを求めるために用いられる。近似関数Fの入力は、例えば、のちの例に示すように、複数のコアデータCDから特定の変数を抽出して並べた1つのベクトルである。このとき、近似関数Fの出力は、例えば、近似関数Fの入力を構成する際にコアデータCDから抽出した変数に対応する変数を、代表データRDから抽出して並べた1つのベクトルを近似したデータである。分解部114は、複数のコアデータCDと近似関数Fとを、記憶部150に記憶する。コアデータCDは、要約部110が出力する要約データに相当する。
【0034】
データ生成部120は、要約部110(分解部114)により記憶部150に記憶された複数の要約データ(コアデータCD)に基づいて、モデルMの学習に用いる複数の生成データGDを生成する。データ生成部120は、近似部121および復元部122を備える。
【0035】
近似部121は、要約データ(コアデータCD)と近似関数Fとを用いて代表データRDの近似データAPを生成する。例えば近似部121は、記憶部150から複数のコアデータCDと近似関数Fとを読み出し、複数のコアデータCDを近似関数Fに入力して得られる複数の近似データAPを生成する。
【0036】
データ生成部120は、近似部121により生成された複数の近似データAPに対して、複製、ノイズの付与、または、類似するデータの生成、のうちいずれか1つ以上の処理を適用して複数の生成データGDを生成する。
【0037】
復元部122は、生成データGDに含まれる複数の生成データそれぞれの次元を、データセットD1に含まれる複数の学習データと同じ次元数に復元した複数の復元データRECを生成する。例えば復元部122は、既存の圧縮・復元モデルDRM、または、記憶部150に記憶された復元モデルを用いて、生成データGDを、データセットD1と同じ次元数の復元データRECに復元する。復元データRECは、代表データRDのサンプル数より多いサンプル数のデータであって、モデルMの学習に用いる複数の学習データ(第2学習データ)に相当する。
【0038】
学習部131は、モデルMを学習する。例えば学習部131は、復元データRECと、データセットDNと、を用いてモデルMに対する再学習を実行する。
【0039】
評価部132は、各部の処理を評価する構成部であり、評価結果が予め定められた条件を満たすまで要約処理等を繰り返す場合(後述する変形例1)に用いられる。例えば評価部132は、データセットD1に含まれる複数の学習データのデータサイズに対する、要約部110により生成された複数の要約データのデータサイズの割合を表す圧縮率を算出する。この場合、例えば要約部110は、圧縮率が予め定められた条件を満たすまで、要約処理の設定を変更しながら要約処理を繰り返し実行する。
【0040】
出力制御部133は、情報処理装置100による各種データの出力を制御する。例えば出力制御部133は、学習(再学習)により得られたモデルMを、モデルMを利用する外部の情報処理装置等に出力する。
【0041】
上記各部(要約部110、データ生成部120、学習部131、評価部132、および、出力制御部133)の少なくとも一部は、1つの処理部により実現されてもよい。上記各部は、例えば、1または複数のプロセッサにより実現される。例えば上記各部は、CPU(Central Processing Unit)などのプロセッサにプログラムを実行させること、すなわちソフトウェアにより実現してもよい。上記各部は、専用のIC(Integrated Circuit)などのプロセッサ、すなわちハードウェアにより実現してもよい。上記各部は、ソフトウェアおよびハードウェアを併用して実現してもよい。複数のプロセッサを用いる場合、各プロセッサは、各部のうち1つを実現してもよいし、各部のうち2つ以上を実現してもよい。
【0042】
次に、第1の実施形態の情報処理装置100による情報処理について説明する。図5は、第1の実施形態における情報処理の全体の流れの例を示すフローチャートである。
【0043】
図5の情報処理は、モデルMをデータセットD1で学習した後に、新しいデータセットDNで再学習する際の破滅的忘却を抑制するために、学習に用いたデータセットD1を要約して記憶しておく状況に適用できる。
【0044】
要約部110は、学習データの要約処理を実行する(ステップS101)。例えば、要約部110は、学習部131によるモデルMの学習に用いられた複数の学習データを含むデータセットD1を対象として、要約処理を実行し、複数のコアデータCDを複数の要約データとして生成する。
【0045】
データ生成部120は、次にモデルMを再学習するときに用いる学習データの生成処理を実行する(ステップS102)。例えば、データ生成部120は、複数のコアデータCDと近似関数Fとから得られる複数の近似データAPを用いて複数の生成データGDを生成する。その後、データ生成部120は、生成データGDの次元を復元し、データセットD1と同じ次元数の復元データRECを生成する。
【0046】
学習部131は、複数の復元データRECと、新たな学習データを含むデータセットDNと、を用いて、モデルMを再学習する(ステップS103)。
【0047】
なお、ステップS101の要約処理は、モデルMをデータセットD1で学習した後であればどのようなタイミングで実行されてもよいが、例えば、モデルMをデータセットD1で学習した直後に行われる。また、ステップS102、S103は、ステップS101の要約処理に続けて実行される必要はなく、例えば、新しいデータセットDNによりモデルMを再学習するタイミングで実行されればよい。
【0048】
次に、図5のステップS101の要約処理の詳細についてさらに説明する。図6は、要約処理の一例を示すフローチャートである。
【0049】
圧縮部111は、データセットD1に含まれる複数の学習データそれぞれの次元を圧縮し、圧縮後の複数のデータを圧縮データセットD2として記憶部150に記憶する(ステップS201)。例えば、圧縮部111は、要約対象のデータセットD1を記憶部150から読み出す。既存の圧縮・復元モデルDRMが存在する場合、圧縮部111は、その圧縮・復元モデルDRMを記憶部150から読み出す。
【0050】
圧縮部111は、読み出した圧縮・復元モデルDRMの次元圧縮機能を用いて、データセットD1に含まれる複数の学習データそれぞれを次元圧縮して圧縮データセットD2を生成し、記憶部150に記憶する。例えば圧縮・復元モデルDRMがオートエンコーダであれば、圧縮部111は、エンコーダ部分を用いてデータセットD1の複数の学習データそれぞれをエンコードする。この処理は、オートエンコーダに各学習データを入力したときの、オートエンコーダの中間層の出力を抽出することで実現できる。オートエンコーダの中間層のユニット数を、データセットD1の各学習データの次元数よりも小さくすることにより、次元圧縮が実現できる。
【0051】
図6のフローチャートに戻る。クラスタリング部112は、圧縮データセットD2をクラスタリングする(ステップS202)。例えばクラスタリング部112は、圧縮データセットD2を記憶部150から読み出し、圧縮データセットD2に含まれる複数の学習データをk個(kは2以上の整数)のクラスタに分割する。
【0052】
クラスタリングはどのような手法で実行されてもよいが、例えば、k‐means法、および、行列分解を用いる方法などを適用できる。また、階層構造を有するクラスタリング結果を出力する手法が適用されてもよい。複数のクラスタリング手法を適用し、複数のクラスタリング手法それぞれの結果を組み合わせてもよい。
【0053】
クラスタ数kは、予め定められてもよいし、ユーザ等による指定に応じて設定されてもよいし、変形例1(後述)のように繰り返し処理などで決定されてもよい。
【0054】
図6のフローチャートに戻る。代表生成部113は、クラスタリング結果Cに基づき代表データRDを生成し、記憶部150に記憶する(ステップS203)。
【0055】
例えば、代表生成部113は、まず圧縮データセットD2およびクラスタリング結果Cを記憶部150から読み出す。代表生成部113は、クラスタリング結果Cに含まれる1つ以上のクラスタを選択する。代表生成部113は、すべてのクラスタを選択してもよい。代表生成部113は、選択したクラスタそれぞれから1つ以上の代表データRDを生成する。
【0056】
例えば、代表生成部113は、クラスタそれぞれのクラスタ重心を算出し、クラスタ重心を代表データRDとして生成する。クラスタ重心は、そのクラスタに属する学習データそれぞれを多次元ベクトルととらえたとき、それらの多次元ベクトルの重心の点に対応するデータである。
【0057】
代表生成部113は、選択したクラスタそれぞれについて、クラスタの重心を示すデータに対する距離または類似度に関する尺度に基づいて、該当するクラスタに属する学習データから1つ以上の学習データを選択し、選択した学習データを代表データRDとして生成してもよい。
【0058】
クラスタ重心からの距離は、例えば、ユークリッド距離であってもよいし、マンハッタン距離であってもよいし、これら以外のどのような距離尺度であってもよい。クラスタ重心に対する類似度は、例えば、コサイン類似度などのどのような類似度の尺度であってもよい。
【0059】
クラスタ重心からの距離に基づいて代表データRDを選択するとき、代表生成部113は、例えば以下のような選択方法を用いることができる。
(M1)クラスタ重心に近い順に1つ以上の学習データを選択する。
(M2)クラスタ重心に遠い順に1つ以上の学習データを選択する。
(M3)クラスタ重心からの距離に基づいて学習データを順位づけして、1つ以上の特定の順位に該当する学習データを選択する(例えば、上位10%から1つ、上位20%から1つ・・・というように選択する)。
(M4)クラスタ重心からの距離または類似度に関する尺度が閾値以下または閾値以上となる1つ以上の学習データを選択する。
【0060】
クラスタから生成(学習データを選択することを含む)する代表データRDの数は、予め定められてもよいし、ユーザ等による指定に応じて設定されてもよいし、変形例1(後述)のように繰り返し処理などで決定されてもよい。
【0061】
複数のクラスタからそれぞれ代表データRDを生成する場合、クラスタのそれぞれで生成する代表データRDの数は、均等(同じサンプル数)とされてもよい。この場合、データ生成部120により生成される生成データGDの分布と、圧縮データセットD2に含まれる学習データの分布との差は大きく成りうるが、データ生成部120により、様々な性質のデータをより均等に生成することが可能となる。
【0062】
クラスタのそれぞれで生成する代表データRDの数は、複数のクラスタそれぞれに分類された複数の学習データの属性に応じて決定されてもよい。属性は、例えば、各クラスタに属する複数の学習データのサンプル数、または、複数の学習データの多様性を示す指標である。多様性を示す指標は、例えば、学習データに含まれる複数の変数ごとの標準偏差などである。この場合、圧縮データセットD2のデータ分布により近い分布の生成データGDをデータ生成部120により生成すること、および、より多様なデータが含まれるクラスタにより多くの代表データRDを割り当てること、が可能となる。
【0063】
代表生成部113は、生成した代表データRDを記憶部150に記憶するときに、例えばクラスタごとに、クラスタに含まれる学習データの各変数の標準偏差のデータSTDを記憶してもよい。データSTDは、例えば、データ生成部120によるノイズ付与の処理で使用することができる。データSTDは、クラスタリング部112により記憶部150に記憶されてもよい。
【0064】
図6のフローチャートに戻る。分解部114は、代表データRDをコアデータCDと近似関数Fとに分解する(ステップS204)。
【0065】
例えば分解部114は、代表データRDを記憶部150から読み出す。分解部114は、N1件の代表データRD(例えば図3)を、N1より少ないN2件のコアデータCD(例えば図4)と、コアデータCDを入力とする近似関数Fで表現する。分解部114は、例えば、オートエンコーダまたは行列分解を用いて、代表データRDの分解を実現することができる。
【0066】
まず、オートエンコーダでの実現方法を説明する。次元数dのN1件の代表データRDが得られた場合、分解部114は、この代表データRDを、図3に示すようなd×N1の行列で表現する。分解部114は、例えば図3の行列の各行に相当する、d件のN1次元のベクトルをそれぞれ入力し、N2次元のベクトルを出力するようにオートエンコーダを学習する。
【0067】
分解部114は、複数の代表データRDを示す行列(例えば図3)のすべての行に対して、各行に相当するベクトルを学習済のオートエンコーダに入力し、各行に該当する中間層の出力を抽出し、得られた結果の集合をN2件のコアデータCDとして記憶する。N2件のコアデータCDは、例えば図4のように、行方向が変数に対応し、列方向が個々のコアデータに対応する行列形式とする。オートエンコーダの中間層のユニット数N2(図4の列数に対応)をN1よりも小さくすれば、複数の代表データRDを、より少ないサンプル数のコアデータCDで表現できたことになる。分解部114は、学習したオートエンコーダのデコーダ部分を近似関数Fとして記憶部150に記憶する。
【0068】
オートエンコーダでの実現方法では、コアデータCDのサンプル数N2は、コアデータCDの集合を示す行列(例えば図4)の列数であり、オートエンコーダの中間層のユニット数に対応する。N2は、予め定められてもよいし、ユーザ等による指定に応じて設定されてもよいし、変形例1(後述)のように繰り返し処理などで決定されてもよい。
【0069】
このとき、データをより圧縮するという目的から、コアデータCDおよび近似関数Fの記憶データサイズが、代表データRDの記憶データサイズよりも小さくなるようにN2を決定することが望ましい。N2は、例えば以下の方法により決定することができる。
・コアデータCDの要素数およびオートエンコーダのデコーダ部分のパラメータ数などの合計と、代表データRDの要素数とを比較して、前者が小さくなるようにN2を決定する。
・N2を変更しながら複数回処理を行い、コアデータCDと近似関数Fの記憶データサイズが代表データRDの記憶データサイズよりも小さくなるようなN2を選択する。
【0070】
次に、行列分解を用いる実現方法の例を説明する。以下では、行列分解として特異値分解(singular value decomposition:SVD)を用いる例を説明する。次元数dのN1件の代表データRDが得られた場合、分解部114は、この代表データRDを、(図3とは異なり)N1×dの行列で表現する。以下、この行列をXとする。分解部114は、行列Xに特異値分解を適用し、以下の(1)式に示すように、行列Xを行列U、VおよびΣに分解する。
=UΣV・・・(1)
【0071】
UおよびVはそれぞれN1×N1およびd×dの行列である。Σは、以下の(2)式で表される、i番目の対角成分(第i行i列目)に第i番目の特異値σを持ち、他の要素が0であるN1×dの行列である。
【数1】
【0072】
ここで、σ≧σ≧・・・≧σであるとする。UおよびVの各要素も、この不等式に応じた並びになっているものとする。分解部114は、行列Xを、以下の(3)式に示すように行列U′、Σ′およびV′で近似する。
≒U′Σ′V′・・・(3)
【0073】
Σ′は、、特異値を大きい順にN2番目まで選び、対角成分に順に並べ、他の要素を0としたN2×N2行列である。U′は、Uの左からN2番目までの列を取り出したN1×N2行列である。V′は、Vの上からN2番目までの行を取り出したN2×d行列である。
【0074】
例えばV′がコアデータCDに相当し、U′およびΣ′が近似関数Fに相当すると解釈することができる。コアデータCD(V′)および近似関数F(U′およびΣ′)の記憶データサイズが、代表データRDの記憶データサイズよりも小さくなるようにN2を定めれば、特異値分解に基づくデータの圧縮が可能となる。
【0075】
U′、Σ′およびV′のうち、コアデータCDおよび近似関数Fと解釈する行列のパターンは、上記に限られず、いずれの行列をコアデータCDおよび近似関数Fと解釈してもよい。例えば、Σ′V′をコアデータCD、U′を近似関数Fと解釈してもよい。
【0076】
行列の積に相当するコアデータCD(例えば、Σ′V′)または近似関数F(例えば、U′Σ′)を記憶するとき、行列の積を算出した結果が記憶されてもよいし、積を算出せずに、各行列(例えば、U′、Σ′、V′)が個別に記憶されてもよい。行列を個別に記憶する場合は、Σ′は対角成分以外は0となるため、対角成分の値のみを記憶しておくと効率がよい。なお、3つの行列の積であるU′Σ′V′の形式で記憶すると行列の行数および列数が代表データRDと変わらないため、圧縮の意味がなくなることに注意が必要である。
【0077】
N2はデータの圧縮が可能となるように選択する必要がある。例えば、コアデータCDおよび近似関数Fの要素数の合計と、代表データRDの要素数とを比較して、前者が小さくなるようにN2が決定される。
【0078】
N2の設定と、要素数の比較の例について説明する。例えば、N1=100、d=50とすると、代表データRDは、N1×d=100×50=5,000の要素を持つ行列である。N2を例えば10に設定すると、コアデータCDであるV′の要素数はN2×d=10×50=500、近似関数FであるU′Σ′の要素数はN1×N2=100×10=1,000となる。従って、コアデータCDと近似関数Fの要素数の合計は1,500となり、代表データRDよりも少ないデータで近似されたことになる。
【0079】
一方、例えばN2=50などに設定すると、コアデータCDであるV′の要素数はN2×d=50×50=2,500、近似関数FであるU′Σ′の要素数はN1×N2=100×50=5,000となる。従って、コアデータCDと近似関数Fの要素数の合計は7,500となり、代表データRDの要素数よりも多くなる。
【0080】
ここで、クラスタリング部112または代表生成部113が、例えばクラスタごとに、クラスタに含まれる学習データの各変数の標準偏差のデータSTDを記憶した場合は、分解部114は、代表データRDと同様にオートエンコーダまたは行列分解によって、データSTDをコアデータCD2と近似関数F2に分解してもよい。
【0081】
図6のフローチャートに戻る。要約部110は、必要に応じて、データセットD1、圧縮データセットD2、クラスタリング結果C、および、代表データRDを記憶部150から削除する(ステップS205)。このような削除処理により、記憶するデータのサイズを削減できる。なお、データ生成部120による生成処理などで使用される以下のようなデータは、削除せずに記憶部150に残される。
・コアデータCD
・近似関数F
・復元モデルDEC
【0082】
クラスタリング部112または代表生成部113により標準偏差のデータSTDが記憶され、さらにコアデータCD2と近似関数F2に分解された場合は、要約部110は、データSTDを削除してコアデータCD2と近似関数F2を記憶部150に残せばよい。クラスタリング部112または代表生成部113により標準偏差のデータSTDが記憶され、データSTDが分解されない場合は、要約部110は、データSTDをそのまま記憶部150に残せばよい。
【0083】
次に、図5のステップS102の生成処理の詳細についてさらに説明する。図7は、生成処理の一例を示すフローチャートである。
【0084】
近似部121は、コアデータCDと近似関数Fとを用いて、代表データRDの近似データAPを生成する(ステップS301)。近似部121は、生成した近似データAPを記憶部150に記憶する。
【0085】
例えば近似部121は、コアデータCDと近似関数Fとを記憶部150から読み出し、読み出したコアデータCDと近似関数Fとを用いて、代表データRDの近似データAPを生成する。例えば近似関数Fがオートエンコーダのデコーダ部分の場合、近似部121は、このデコーダ部分に、複数のコアデータCDの集合を示す行列の各行を入力し、デコーダの出力を近似データAPとして生成する。
【0086】
例えば、コアデータCDの集合を示す行列は、図4に示すように、行方向が変数に対応し、列方向が個々のコアデータCDに対応する形式である。近似部121は、この行列のすべての行について、各行を入力して得られたデコーダの出力を各行に持つ行列を生成する。生成された行列を転置することにより、各行が、個々の近似データAPに対応する行列に変換することができる。
【0087】
図7のフローチャートに戻る。データ生成部120は、近似データAPに対して、複製、ノイズの付与、または、類似するデータの生成、のうちいずれか1つ以上の処理を適用して生成データGDを生成する(ステップS302)。データ生成部120は、生成データGDを記憶部150に記憶する。
【0088】
例えばデータ生成部120は、まず、近似データAPを記憶部150から読み出す。データ生成部120は、読み出した複数の近似データAPそれぞれに対して、複製、ノイズの付与、または、類似するデータの生成、のうちいずれか1つ以上の処理を適用して1つ以上の生成データGDを生成する。
【0089】
データ生成部120は、再学習の際に使用する新しいデータセットDNに含まれる学習データのサンプル数に基づいて、近似データAPそれぞれに対して生成する生成データGDのサンプル数を決定してもよい。例えば生成データGDの総数が、新しいデータセットDNに含まれる学習データのサンプル数とほぼ同等になるようにサンプル数を決定すれば、新しいデータセットDNの学習データと、データセットD1を元に得られた学習データ(生成データGD)とを、再学習のための学習データとしてバランスよく用意することができる。
【0090】
また、例えば、データ生成部120は、データセットD1に含まれる学習データのサンプル数に基づいて、近似データAPそれぞれに対して生成する生成データGDのサンプル数を決定してもよい。そのほか、データ生成部120は、例えば、近似データAPそれぞれに対して、対応する代表データRDが生成されるもととなったクラスタに含まれていたデータのサンプル数や標準偏差などに応じて、近似データAPそれぞれに対して生成する生成データGDのサンプル数を決定してもよい。
【0091】
データ生成部120は、近似データAP、または、近似データAPを複製した複製データに対して、ノイズを付与して生成データGDを生成してもよい。ノイズは、例えばガウシアンノイズであるが、その他のどのような種類のノイズであってもよい。ノイズの強さに関わる振幅は、予め定められた値であってもよいし、ユーザの設定に応じて定められた値であってもよい。また、変形例1(後述)のように、データ生成部120は、圧縮処理の段階でノイズの振幅を変えながら繰り返し生成処理を行うことで適切なノイズの振幅を求めておき、その値を使用してもよい。
【0092】
データ生成部120は、各クラスタに分類された複数の学習データの統計情報に応じたノイズを付与してもよい。統計情報は、例えば、複数の学習データに含まれる1つ以上の変数それぞれの標準偏差である。
【0093】
例えば、クラスタに含まれる学習データの各変数の標準偏差のデータSTDがクラスタごとに記憶部150に記憶されている場合、データ生成部120は、データSTDを用いてのノイズの振幅を決定してもよい。
【0094】
具体的には、データ生成部120は、近似データAP(または、近似データAPの複製データ)それぞれに対して、対応するクラスタを求める。例えば、各近似データAPが、いずれの代表データRDの近似であるか、および、各代表データRDがいずれのクラスタから生成されたかを示すデータを記憶しておけば、データ生成部120は、このデータを用いて近似データAPに対応するクラスタを求めることができる。
【0095】
そしてデータ生成部120は、近似データAP(または、近似データAPの複製データ)の変数ごとに、対応するクラスタに含まれていた学習データの該当変数の標準偏差が大きいほど、付与するノイズの振幅を大きくする。これにより、各クラスタおよび各変数の値の広がり具合に応じたノイズの振幅の設定が可能となる。ここで、データSTDが、分解部114によりコアデータCD2と近似関数F2に分解されていた場合は、近似データAPの生成と同様の方法でコアデータCD2と近似関数F2からデータSTDの近似データAP2を生成し、近似データAP2をデータSTDとみなして、上述の方法でノイズの振幅を設定することが可能となる。
【0096】
類似するデータの生成は、例えば以下のような処理である。
・1つのクラスタから複数の近似データAPが得られる場合、複数の近似データAPを重み付け加算したデータを類似するデータとして生成する。
・学習データが画像の場合、画像の上下反転、画像の左右反転、画像の拡大、または、画像の縮小により、類似するデータを生成する。
【0097】
図7のフローチャートに戻る。復元部122は、生成された生成データGDの次元を復元する(ステップS303)。
【0098】
例えば復元部122は、生成データGDを記憶部150から読み出す。復元部122は、圧縮部111が既存の圧縮・復元モデルDRMを利用した場合は圧縮・復元モデルDRMを、圧縮部111が新たに圧縮・復元モデルを学習して復元モデルDECを記憶していた場合は復元モデルDECを記憶部150から読み出す。復元部122は、圧縮・復元モデルDRMの次元復元機能、または、復元モデルDECを用いて、複数の生成データGDのそれぞれを、データセットD1に含まれる学習データと同じ次元数に復元し、復元データRECを得る。
【0099】
復元部122は、復元データRECを記憶部150に記憶する。記憶部150に記憶された復元データRECは、新しいデータセットDNとともに、再学習のための学習データとして利用される。
【0100】
次に、図5のステップS103の学習部131による学習処理の詳細についてさらに説明する。
【0101】
例えば学習部131は、再学習の対象となるモデルMのデータを記憶部150から読み出す。また学習部131は、新しいデータセットDNと、複数の復元データRECとを、記憶部150から読み出す。そして学習部131は、新しいデータセットDNおよび複数の復元データRECの両方を用いて、モデルMを再学習する。学習部131は、再学習により得られたモデルMのデータを記憶部150に記憶する。
【0102】
以上のように、本実施形態によれば、データセットD1を元に高い圧縮率、かつ、破滅的忘却に対する高い抑制効果を持つ学習データを生成し、再学習に用いることができる。すなわち、より高精度に学習を行う学習データを生成することができる。
【0103】
また、本実施形態では、複数の学習データから代表データを生成するのみでなく、学習データの次元圧縮も行うことができる。このため、クラスタリングによる代表データの生成のみでデータの圧縮率を高めると破滅的忘却を十分に抑制できない場合があるという問題を回避可能となる。
【0104】
なお、破滅的忘却を抑制するための技術として、Generative Replay、および、EWC(Elastic Weight Consolidation)が提案されている。Generative Replayは、変分オートエンコーダ(Variational Auto Encoder:VAE)、および、敵対的生成ネットワーク(Generative Adversarial Network:GAN)などの生成モデルを用いて破滅的忘却を抑制する技術である。EWCは、再学習の際に正則化を適用することで破滅的忘却を抑制する技術である。
【0105】
Generative Replayは、生成モデルの学習の制御が難しく適切にデータを生成できないリスクが高い。GANは、Mode Collapseと呼ばれる、数種類のパターンしかデータを生成できなくなる現象に陥り、破滅的忘却の抑制のために多様なデータを用いることができない可能性がある。変分オートエンコーダは、離散データなどを適切に学習できず、元のデータセットから性質が逸脱したデータが生成される可能性がある。
【0106】
本実施形態を用いれば、これらの欠点を解消可能である。例えば本実施形態は、クラスタリングを用いることで、多様なデータを要約データとして生成して破滅的忘却に用いることができる。また本実施形態は、要約データを元にノイズの付与などにより生成データを生成するため、制御が容易であり元のデータセットから逸脱したデータを生成することを防ぐことができる。
【0107】
EWCなどの正則化による手法は、正則化の強さを調整することが難しいという問題がある。また、元のデータセットに由来するデータを再学習時に用いないため、破滅的忘却が抑制できているか否かを再学習時に推定することができない。
【0108】
これに対して本実施形態は、元のデータセットに由来するデータを再学習時に用いるため、破滅的忘却が抑制されているか否かを再学習時に推定することが可能である。
【0109】
(変形例1)
次に、評価部132を用いる変形例1について説明する。本変形例では、各部の設定について適切な設定値を得るために、評価部132により算出される評価値が条件を満たすまで、要約処理および生成処理が繰り返し実行される。
【0110】
まず、以下の2種類の処理済みデータを定義する。
・処理済みデータMD_A:要約部110に含まれるすべての機能またはその一部で処理されたデータ
・処理済みデータMD_B:処理済みデータMD_Aを、データ生成部120に含まれるすべての機能またはその一部で処理したデータ
【0111】
評価部132は、以下の圧縮率またはスコアのうち少なくとも一方に基づく評価値を算出する。
・圧縮率:処理済みデータMD_Aが、処理前のデータに対してどれほどのデータサイズであるかを表す指標
・スコア:処理済みデータMD_Bを使用して学習または再学習されたモデルMの性能を表す指標
【0112】
以下では、処理済みデータMD_Aは、コアデータCD、近似関数F、および、復元モデルDECであるものとする。例えば評価部132は、これらの処理済みデータMD_Aのデータサイズの合計と、データセットD1のデータサイズの比率として、圧縮率を以下の(4)式のように算出する。
圧縮率=(処理済みデータMD_Aのデータサイズの合計)/
(データセットD1のデータサイズ) ・・・(4)
【0113】
また、以下では、処理済みデータMD_Bは、復元データRECであるものとする。また、復元データRECを使用して、モデルMを再学習して得られたモデルをモデルM_Bとする。評価部132は、モデルM_Bの性能を、例えばデータセットD1を使用して評価し、性能を示すスコアを求める。
【0114】
スコアは、例えばデータセットD1に対するモデルM_Bの推定精度または推定誤差に関する指標である。このスコアは、データセットD1に含まれる一部の学習データのみに基づいて算出されてもよい。
【0115】
なお、処理済みデータMD_Aの生成のために、要約部110に含まれる一部の機能のみが適用される形態も考えられる。例えば、圧縮部111のみ、または、圧縮部111、クラスタリング部112および代表生成部113のみが適用される場合がある。このような場合は、処理済みデータMD_Bの生成には、データ生成部120に含まれる機能のうち、処理済みデータMD_Aの生成に用いられた機能に対応する機能のみを適用すればよい。
【0116】
以下、本変形例による情報処理について説明する。図8は、本変形例における設定処理の全体の流れの例を示すフローチャートである。
【0117】
まず、要約部110およびデータ生成部120は、処理済みデータMD_Aおよび処理済みデータMD_Bを生成する際の、各部の機能の設定を仮決めする(ステップS401)。設定は、例えば以下のような項目である。これらの設定の一部または全部は、変更可能とされる。
・圧縮部111の次元圧縮後の次元数d
・クラスタリング部112のクラスタ数kおよびクラスタリング方法
・代表生成部113が各クラスタから生成する代表データRDの数および生成方法
・分解部114のコアデータCDの数N2
・データ生成部120が生成する生成データGDのサンプル数、生成方法、ノイズの振幅およびノイズの設定方法
【0118】
要約部110は、仮決めした設定に従い、学習データの要約処理を実行し(ステップS402)、処理済みデータMD_Aを生成する。本ステップは図5のステップS101と同様であるため、詳細な説明は省略する。
【0119】
データ生成部120は、仮決めした設定に基づいて、学習データの生成処理を実行し(ステップS403)、処理済みデータMD_Aから処理済みデータMD_Bを生成する。本ステップは図5のステップS102と同様であるため、詳細な説明は省略する。
【0120】
評価部132は、圧縮率を評価値として算出する(ステップS404)。評価値としてスコアも用いる場合は、学習部131は、処理済みデータMD_B(復元データREC)を用いた再学習を実行し、評価部132は再学習されたモデルMの性能を表すスコアを算出する。なお、圧縮率だけを評価値として算出する場合は、処理済みデータMD_Aのみが必要で処理済みMD_Bは不要であるため、ステップS403は省略できる。
【0121】
評価部132は、算出した評価値が予め定められた条件を満たすか否か判定する(ステップS405)。例えば評価部132は、評価値が閾値より大きい場合、条件を満たすと判定する。この条件は、複数の閾値を用いたり、複数の条件を複合したものであってもよい。例えば、評価部132は、圧縮率に対する閾値TH1とスコアに対する閾値TH2を設け、圧縮率が閾値TH1よりも小さく、かつスコアが閾値TH2よりも大きい場合に条件を満たすと判定してもよい。条件が満たされない場合(ステップS405:No)、評価部132は、ステップS402およびS403の繰り返し回数が規定値に達したか否かを判定する(ステップS406)。
繰り返し回数が規定値に達していない場合(ステップS406:No)、評価部132は、各部の設定を変更し(ステップS407)、ステップS402に戻る。
【0122】
評価値の条件が満たされる場合(ステップS405:Yes)、または、繰り返し回数が規定値に達した場合(ステップS406:Yes)、評価部132は、現在の設定で生成された処理済みデータMD_Aを、最終的なコアデータCD、近似関数F、および、復元モデルDECとして出力するとともに、現在の設定の設定値を例えば記憶部150に記憶する。
【0123】
以降は、設定された設定値を用いて処理が実行される。例えば、データ生成部120は、ステップS408で記憶されたコアデータCD、近似関数F、復元モデルDEC、および、設定値を用いて、学習データの生成処理を実行し、復元データRECを生成する。学習部131は、復元データRECと新しいデータセットDNとを用いて、モデルMを再学習する。
【0124】
本変形例によれば、与えられた条件を満たすような各部の設定を決定することができ、破滅的忘却の抑制効果がより高く、高い圧縮率のデータの要約および復元が可能になる。なお、本変形例を用いない場合、情報処理装置100は、評価部132を備えなくてもよい。
【0125】
(変形例2)
上記実施形態および変形例1では、データセットD1を圧縮部111によって次元圧縮してからクラスタリングを行っていたが、圧縮部111を備えずデータセットD1を直接クラスタリング部112がクラスタリングする構成であってもよい。この場合、圧縮部111に対応する復元部122も不要となる。クラスタリング部112以降の処理は、圧縮データセットD2をデータセットD1に置き換えて実行されればよい。
【0126】
本変形例では、データ生成部120(近似部121)により生成される生成データGDがデータセットD1と同じ次元数となる。学習部131は、復元データRECの代わりに生成データGDを用いて、モデルMの再学習時を実行する。
【0127】
(変形例3)
上記実施形態および各変形例において、分解部114を備えず、コアデータCDと近似関数Fの代わりに代表データRDを要約データとして記憶するとともに、対応する近似部121を備えず、データ生成部120が代表データRDから生成データGDを生成するように構成されてもよい。
【0128】
このように、複数の学習データの要約を表す複数の要約データは、コアデータCDであってもよいし、代表データRDであってもよい。
【0129】
(第2の実施形態)
第2の実施形態の情報処理装置は、第1の実施形態と異なる手法で要約データを生成する。具体的には、本実施形態の情報処理装置は、クラスタリングを実行せず、学習データの分解により要約データを生成する。
【0130】
図9は、第2の実施形態の情報処理装置100-2の構成の一例を示すブロック図である。図9に示すように、情報処理装置100-2は、記憶部150-2と、要約部110-2と、データ生成部120-2と、学習部131と、評価部132と、出力制御部133と、を備える。
【0131】
第2の実施形態では、要約部110-2とデータ生成部120-2の機能、および、記憶部150-2に記憶されるデータが、第1の実施形態と異なっている。その他の構成および機能は、第1の実施形態の情報処理装置100のブロック図である図1と同様であるので、同一符号を付し、ここでの説明は省略する。
【0132】
記憶部150-2は、クラスタリング結果Cおよび代表データRDを記憶しない点が、第1の実施形態の記憶部150と異なっている。
【0133】
要約部110-2は、圧縮部111と、分解部114-2と、を備える。すなわち、要約部110-2は、クラスタリング部112と代表生成部113とを備えないこと、および、分解部114-2の機能が、第1の実施形態の要約部110と異なっている。
【0134】
分解部114-2は、代表データRDの代わりに、圧縮データセットD2に含まれる複数の学習データに対して、複数のコアデータCDと近似関数Fとに分解する処理を実行する。
【0135】
データ生成部120-2は、近似部121-2および復元部122を備える。データ生成部120-2は、近似部121-2の機能が、第1の実施形態のデータ生成部120と異なっている。
【0136】
近似部121-2は、要約データ(コアデータCD)と近似関数Fとを用いて学習データの近似データAPを生成する。すなわち、第1の実施形態の近似部121は代表データRDの近似データAPを生成するのに対し、本実施形態の近似部121-2は、圧縮データセットD2に含まれる複数の学習データを近似する複数の近似データAPを生成する。
【0137】
次に、第2の実施形態の情報処理装置100-2による情報処理について説明する。情報処理の全体の流れは第1の実施形態の図5と同様であるため、説明を省略する。第2の実施形態では、ステップS101の要約処理、および、ステップS102の生成処理が第1の実施形態と異なっている。以下、これらの処理について説明する。
【0138】
図10は、第2の実施形態の要約処理の一例を示すフローチャートである。ステップS501は図6のステップS201と同様であるため、説明を省略する。
【0139】
分解部114-2は、圧縮データセットD2に含まれる複数の学習データを、複数のコアデータCDと近似関数Fとに分解する(ステップS502)。例えば分解部114-2は、圧縮部111により得られた圧縮データセットD2を記憶部150から読み出す。分解部114-2は、圧縮データセットD2を、より少ないサンプル数N2のコアデータCDと、コアデータCDを入力とする近似関数Fで表現する。分解部114-2は、得られたN2件のコアデータCDと近似関数Fとを、複数の要約データとして記憶部150に記憶する。
【0140】
要約部110-2は、必要に応じて、データセットD1および圧縮データセットD2を記憶部150から削除する(ステップS503)。
【0141】
図11は、第2の実施形態の生成処理の一例を示すフローチャートである。
【0142】
近似部121-2は、コアデータCDと近似関数Fとを記憶部150から読み出し、読み出したコアデータCDと近似関数Fとを用いて、圧縮データセットD2に含まれる複数の学習データを近似する複数の近似データAPを生成する(ステップS601)。近似部121-2は、生成した複数の近似データAPを記憶部150に記憶する。
【0143】
ステップS602、S603は、図7のステップS302、S303と同様であるため、説明を省略する。なお、第2の実施形態では、近似データAPが圧縮データセットD2と同様のサンプル数のデータを含み、近似データAPがデータの多様性を保っている可能性があるため、ステップS602のデータ生成処理は省略することも考えられる。その場合、復元部122は、ステップS603において近似データAPから直接復元データRECを生成する。
【0144】
以上のように、第2の実施形態では、クラスタリング部と代表生成部の代わりに、学習データをコアデータと近似関数とに分解する分解部を用いて要約データを生成する。これにより、学習に用いた学習データをより少ないサンプル数の要約のデータで効率的に表現し、多様性を有する生成データを得ることができる。
【0145】
(適用可能なモデルの例)
上記実施形態(および各変形例)は、様々なモデルを再学習するときに適用可能である。以下に適用可能なモデルの例について説明する。
【0146】
適用例1:異常検知モデル
例えばインフラ設備および製造設備など設備の異常検知モデルをモデルMとし、当該設備から得られるセンサデータを元に得られるデータセットをデータセットD1とする形態に、上記実施形態を適用可能である。
【0147】
このとき、データセットD1の各学習データは、ある一時刻の複数のセンサの変数を並べたデータであってもよい。また、各学習データは、1つ以上のセンサデータを含む単変量データまたは多変量データを、決められた時間幅のウィンドウにより切り出し、切り出されたデータを並べたベクトルで構成されてもよい。
【0148】
適用例2:識別モデル
例えば画像識別などの識別モデルをモデルMとし、画像などである各学習データに対して正解のクラスがラベルとして付与されたデータセットによって教師あり学習により識別モデル(モデルM)を学習する形態にも、上記実施形態が適用できる。
【0149】
復元データに現れるクラスの多様性を保つために、例えば、データセットD1に含まれる各学習データをクラスごとに分割して複数のデータセットを生成し、それらの各々に個別に上記実施形態を適用してもよい。これにより、再学習の際に、データセットD1に含まれていたすべてのクラスについての復元データを使用することができる。または、データセットD1に含まれる各学習データをクラスごとに分割しなくても、クラスタリング部112がクラスタリングを行う際にクラスラベルを考慮してクラスタを構成することによっても、同様の効果が得られる。
【0150】
適用例3:回帰モデル
需要予測モデルおよび株価予測モデルなどの回帰モデルをモデルMとする形態にも上記実施形態を適用できる。この場合、データセットD1は、例えば、予測のための説明変数と予測対象の目的変数とを含む。復元データに現れる目的変数の値の多様性を保つために、例えば目的変数の値の範囲によってデータセットD1を分割し、それらの各々に個別に上記実施形態が適用されてもよい。または、クラスタリング部112がクラスタリングを行う際に、各学習データの目的変数の値を考慮してクラスタを構成してもよい。
【0151】
以上説明したとおり、第1から第2の実施形態によれば、より高精度に学習を行う学習データを生成することができる。
【0152】
次に、第1または第2の実施形態の情報処理装置のハードウェア構成について図12を用いて説明する。図12は、第1または第2の実施形態の情報処理装置のハードウェア構成例を示す説明図である。
【0153】
第1または第2の実施形態の情報処理装置は、CPU51などの制御装置と、ROM(Read Only Memory)52やRAM53などの記憶装置と、ネットワークに接続して通信を行う通信I/F54と、各部を接続するバス61を備えている。
【0154】
第1または第2の実施形態の情報処理装置で実行されるプログラムは、ROM52等に予め組み込まれて提供される。
【0155】
第1または第2の実施形態の情報処理装置で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでCD-ROM(Compact Disk Read Only Memory)、フレキシブルディスク(FD)、CD-R(Compact Disk Recordable)、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供されるように構成してもよい。
【0156】
さらに、第1または第2の実施形態の情報処理装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、第1または第2の実施形態の情報処理装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【0157】
第1または第2の実施形態の情報処理装置で実行されるプログラムは、コンピュータを上述した情報処理装置の各部として機能させうる。このコンピュータは、CPU51がコンピュータ読取可能な記憶媒体からプログラムを主記憶装置上に読み出して実行することができる。
【0158】
実施形態の構成例について以下に記載する。
(構成例1)
モデルの学習に用いられた複数の第1学習データに基づいて、複数の前記第1学習データのサンプル数より少ないサンプル数のデータであって、複数の前記第1学習データの要約を表す複数の第1要約データを生成する要約処理を実行し、
複数の前記第1要約データに基づいて、複数の前記第1要約データのサンプル数より多いサンプル数のデータであって、前記モデルの学習に用いる複数の第2学習データを生成する、
処理部、
を備える情報処理装置。
(構成例2)
前記処理部は、
複数の前記第1学習データそれぞれを複数のクラスタのいずれかに分類し、
複数の前記クラスタの少なくとも一部について、前記クラスタに含まれる前記第1学習データを代表する1つ以上のデータを、前記第1要約データとして生成する、
構成例1に記載の情報処理装置。
(構成例3)
前記処理部は、前記クラスタの重心を示すデータ、または、前記クラスタの重心に対する距離または類似度に関する尺度に基づいて選択される前記第1学習データを、前記第1要約データとして生成する、
構成例2に記載の情報処理装置。
(構成例4)
前記処理部は、
複数の前記クラスタのうち2つ以上について、
同じサンプル数の前記第1要約データを生成する、または、複数の前記クラスタそれぞれに分類された複数の前記第1学習データの属性に応じたサンプル数の前記第1要約データを生成する、
構成例2または3に記載の情報処理装置。
(構成例5)
前記属性は、複数の前記第1学習データのサンプル数、または、複数の前記第1学習データの多様性を示す指標である、
構成例4に記載の情報処理装置。
(構成例6)
前記処理部は、複数の前記第1要約データに対して、複数の前記クラスタそれぞれに分類された複数の前記第1学習データの統計情報に応じたノイズを付与することにより、複数の前記第2学習データを生成する、
構成例2に記載の情報処理装置。
(構成例7)
前記統計情報は、複数の前記第1学習データに含まれる1つ以上の変数それぞれの標準偏差である、
構成例6に記載の情報処理装置。
(構成例8)
前記処理部は、
複数の前記第1学習データを、複数の前記第1要約データと、複数の前記第1要約データを入力して複数の前記第1学習データに近似する複数の近似データを出力する近似関数と、に分解し、
複数の前記第1要約データを前記近似関数に入力して得られる複数の前記近似データを、前記第2学習データとして生成する、
構成例1に記載の情報処理装置。
(構成例9)
前記処理部は、行列分解またはオートエンコーダを用いて、複数の前記第1学習データを、複数の前記第1要約データと前記近似関数とに分解する、
構成例8に記載の情報処理装置。
(構成例10)
前記処理部は、
複数の前記第1学習データの次元を圧縮し、
次元が圧縮された複数の前記第1学習データを用いて、複数の前記第1要約データを生成し、
複数の前記第2学習データの次元を、複数の前記第1学習データの次元に復元する、
構成例1から9のいずれか1つに記載の情報処理装置。
(構成例11)
前記処理部は、
複数の前記第1学習データに基づいて、複数の前記第1学習データのサンプル数より少ないサンプル数のデータであって、複数の前記第1学習データの要約を表す複数の第2要約データを生成し、
複数の前記第2要約データを、複数の前記第2要約データのサンプル数より少ないサンプル数のデータであって、複数の前記第2要約データの要約を表す複数の前記第1要約データと、複数の前記第1要約データを入力して複数の前記第2要約データの近似データを出力する近似関数と、に分解し、
複数の前記第1要約データを前記近似関数に入力して得られる複数の近似データを生成し、
複数の前記近似データを、複数の前記第1要約データとして用いて、複数の第2学習データを生成する、
構成例1から10のいずれか1つに記載の情報処理装置。
(構成例12)
前記処理部は、行列分解またはオートエンコーダを用いて、複数の前記第1要約データを、複数の前記第1要約データと前記近似関数とに分解する、
構成例11に記載の情報処理装置。
(構成例13)
前記処理部は、
複数の前記第1学習データのデータサイズに対する、生成された複数の前記第1要約データのデータサイズの割合を表す圧縮率および、複数の前記第2学習データを用いて学習された前記モデルの性能を表すスコアのうち少なくとも一方に基づく評価値を算出し、
前記評価値が予め定められた条件を満たすまで、前記要約処理を繰り返し実行する、
構成例1から12のいずれか1つに記載の情報処理装置。
(構成例14)
前記処理部は、複数の前記第2学習データを用いて前記モデルを学習する、
構成例1から13のいずれか1つに記載の情報処理装置。
(構成例15)
前記処理部は、
前記要約処理を実行する要約部と、
複数の前記第2学習データを生成するデータ生成部と、
を備える、
構成例1から14のいずれか1つに記載の情報処理装置。
(構成例16)
情報処理装置で実行される情報処理方法であって、
モデルの学習に用いられた複数の第1学習データに基づいて、複数の前記第1学習データのサンプル数より少ないサンプル数のデータであって、複数の前記第1学習データの要約を表す複数の第1要約データを生成する要約処理を実行し、
複数の前記第1要約データに基づいて、複数の前記第1要約データのサンプル数より多いサンプル数のデータであって、前記モデルの学習に用いる複数の第2学習データを生成する、
ことを含む情報処理方法。
(構成例17)
コンピュータに、
モデルの学習に用いられた複数の第1学習データに基づいて、複数の前記第1学習データのサンプル数より少ないサンプル数のデータであって、複数の前記第1学習データの要約を表す複数の第1要約データを生成する要約処理を実行するステップと、
複数の前記第1要約データに基づいて、複数の前記第1要約データのサンプル数より多いサンプル数のデータであって、前記モデルの学習に用いる複数の第2学習データを生成するステップと、
を実行させるためのプログラム。
【0159】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0160】
100、100-2 情報処理装置
110、110-2 要約部
111 圧縮部
112 クラスタリング部
113 代表生成部
114、114-2 分解部
120、120-2 データ生成部
121、121-2 近似部
122 復元部
131 学習部
132 評価部
133 出力制御部
150 記憶部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12