Main Content

ReconstructionICA

再構成 ICA による特徴抽出

説明

ReconstructionICA は、再構成独立成分分析 (RICA) を適用して、入力予測子を新しい予測子にマッピングする変換を学習します。

作成

関数 rica を使用して ReconstructionICA オブジェクトを作成します。

プロパティ

すべて展開する

この プロパティ は読み取り専用です。

当てはめの履歴。次の 2 つのフィールドがある構造体として返されます。

  • Iteration — 0 から最後の反復までの反復回数。

  • Objective — 対応する各反復における目的関数の値。反復 0 は、当てはめを行う前の初期値に対応します。

データ型: struct

この プロパティ は読み取り専用です。

特徴変換の重みの初期値。pq 列の行列として返されます。pX で渡された予測子の個数、q は要求された特徴量の個数です。これらの重みは、作成関数に渡された重みの初期値です。学習データ X が single 型である場合、データ型は single 型になります。

データ型: single | double

この プロパティ は読み取り専用です。

モデルに学習をさせるためのパラメーター。構造体として返されます。この構造体には、モデル作成時に有効であった rica の名前と値のペアに対応するフィールドのサブセットが格納されます。

  • IterationLimit

  • VerbosityLevel

  • Lambda

  • Standardize

  • ContrastFcn

  • GradientTolerance

  • StepTolerance

詳細については、ricaName,Value ペアを参照してください。

データ型: struct

この プロパティ は読み取り専用です。

標準化時の予測子の平均。p1 列のベクトルとして返されます。モデル作成時に名前と値のペア Standardizetrue であった場合、このプロパティは空以外になります。値は、学習データにおける予測子の平均のベクトルです。学習データ X が single 型である場合、データ型は single 型になります。

データ型: single | double

この プロパティ は読み取り専用です。

ソースの非ガウス性。±1 による長さ q のベクトルとして返されます。

  • NonGaussianityIndicator(k) = 1 は、ricak 番目のソースを劣ガウス性としてモデル化したことを意味します。

  • NonGaussianityIndicator(k) = -1 は、ricak 番目のソースを鋭いピークが 0 にある優ガウス性としてモデル化したことを意味します。

データ型: double

この プロパティ は読み取り専用です。

出力特徴量の個数。正の整数として返されます。この値は、作成関数に渡された引数 q であり、学習するように要求した特徴量の個数です。

データ型: double

この プロパティ は読み取り専用です。

入力予測子の個数。正の整数として返されます。この値は、X で作成関数に渡された予測子の個数です。

データ型: double

この プロパティ は読み取り専用です。

標準化時の予測子の標準偏差。p1 列のベクトルとして返されます。モデル作成時に名前と値のペア Standardizetrue であった場合、このプロパティは空以外になります。値は、学習データにおける予測子の標準偏差のベクトルです。学習データ X が single 型である場合、データ型は single 型になります。

データ型: single | double

この プロパティ は読み取り専用です。

特徴変換の重み。pq 列の行列として返されます。pX で渡された予測子の個数、q は要求された特徴量の個数です。学習データ X が single 型である場合、データ型は single 型になります。

データ型: single | double

オブジェクト関数

transform抽出された特徴量への予測子の変換

すべて折りたたむ

関数 rica を使用して ReconstructionICA オブジェクトを作成します。

イメージ パッチ SampleImagePatches を読み込みます。

data = load('SampleImagePatches');
size(data.X)
ans = 1×2

        5000         363

5,000 個のイメージ パッチがあり、それぞれに 363 個の特徴量が含まれています。

100 個の特徴量をデータから抽出します。

rng default % For reproducibility
q = 100;
Mdl = rica(data.X,q,'IterationLimit',100)
Warning: Solver LBFGS was not able to converge to a solution.
Mdl = 
  ReconstructionICA
            ModelParameters: [1x1 struct]
              NumPredictors: 363
         NumLearnedFeatures: 100
                         Mu: []
                      Sigma: []
                    FitInfo: [1x1 struct]
           TransformWeights: [363x100 double]
    InitialTransformWeights: []
    NonGaussianityIndicator: [100x1 double]


ステップ サイズの制限または勾配サイズの制限に達したのではなく反復制限に達したために停止したので、rica は警告を発します。しかし、関数 transform を呼び出すことにより、返されたオブジェクトに含まれている学習済み特徴量を使用できます。

バージョン履歴

R2017a で導入