SparseFiltering

Редукция данных разреженной фильтрацией

Описание

SparseFiltering использует разреженную фильтрацию, чтобы узнать преобразование, которое сопоставляет входные предикторы с новыми предикторами.

Создание

Создайте SparseFiltering использование объекта sparsefilt функция.

Свойства

расширить все

Это свойство доступно только для чтения.

История аппроксимации, возвращенная как структура с двумя полями:

  • Iteration - Числа итераций от 0 до конечной итерации.

  • Objective - Значение целевой функции при каждой соответствующей итерации. Итерация 0 соответствует начальным значениям перед любым подбором кривой.

Типы данных: struct

Это свойство доступно только для чтения.

Начальные веса преобразования функций, возвращенные как p-by- q матрица, где p количество переданных предикторов X и q - количество требуемых функций. Эти веса являются начальными весами, переданными в функцию создания. Тип данных является единичным, когда обучающие данные X является одиночным.

Типы данных: single | double

Это свойство доступно только для чтения.

Параметры, используемые для настройки модели, возвращаются как структура. Структура содержит подмножество полей, которое соответствует sparsefilt Пары "имя-значение", которые были в эффект во время создания модели:

  • IterationLimit

  • VerbosityLevel

  • Lambda

  • Standardize

  • GradientTolerance

  • StepTolerance

Для получения дополнительной информации смотрите sparsefilt Пары "имя-значение" в документации.

Типы данных: struct

Это свойство доступно только для чтения.

Предиктор означает, что при стандартизации возвращается как p-by- 1 вектор. Это свойство непусто, когда Standardize Пара "имя-значение" true при создании модели. Значение является вектором средств предиктора в обучающих данных. Тип данных является единичным, когда обучающие данные X является одиночным.

Типы данных: single | double

Это свойство доступно только для чтения.

Количество выхода функций, возвращаемое в виде положительного целого числа. Это значение является q аргумент передан в функцию создания, которая является запрошенным количеством функций для изучения.

Типы данных: double

Это свойство доступно только для чтения.

Количество входа предикторов, возвращенных как положительное целое число. Это значение является количеством переданных предикторов X в функцию создания.

Типы данных: double

Это свойство доступно только для чтения.

Предиктор стандартных отклонений при стандартизации, возвращается как p-by- 1 вектор. Это свойство непусто, когда Standardize Пара "имя-значение" true при создании модели. Значение является вектором стандартных отклонений предиктора в обучающих данных. Тип данных является единичным, когда обучающие данные X является одиночным.

Типы данных: single | double

Это свойство доступно только для чтения.

Веса преобразования функций, возвращенные как p-by- q матрица, где p количество переданных предикторов X и q - количество требуемых функций. Тип данных является единичным, когда обучающие данные X является одиночным.

Типы данных: single | double

Функции объекта

transformПреобразуйте предикторы в извлечённые функции

Примеры

свернуть все

Создайте SparseFiltering объект при помощи sparsefilt функция.

Загрузите SampleImagePatches image закрашенных фигур.

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

        5000         363

Существует 5000 закрашенные фигуры для изображений, каждый из которых содержит 363 функции.

Извлеките 100 функции из данных.

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


  Properties, Methods

sparsefilt выдает предупреждение, поскольку оно остановлено из-за достижения предела итерации, вместо достижения предельного размера шага или предельного размера градиента. Вы по-прежнему можете использовать выученные функции в возвращаемом объекте, вызывая transform функция.

Введенный в R2017a