lassoPlot

Трассировка графика лассо подгонки

Синтаксис

lassoPlot(B)
lassoPlot(B,FitInfo)
lassoPlot(B,FitInfo,Name,Value)
[ax,figh] = lassoPlot(___)

Описание

lassoPlot(B) создает график трассировки значений в B против L1 норма B.

lassoPlot(B,FitInfo) создает график с типом в зависимости от типа данных FitInfo и значение, если таковое имеется, PlotType Пара "имя-значение".

lassoPlot(B,FitInfo,Name,Value) создает график с дополнительными опциями, заданными одним или несколькими Name,Value аргументы в виде пар.

[ax,figh] = lassoPlot(___)для любого предыдущего синтаксиса входа возвращает указатель ax к оси графика и указателю на figh в окно рисунка.

Входные параметры

B

Коэффициенты последовательности регрессии подходят, как возвращено из lasso или lassoglm функций. B является p-by- NLambda матрица, где p количество предикторов и каждый столбец B является набором коэффициентов lasso вычисляет с помощью одного Lambda значение штрафа.

FitInfo

Информация, управляющая графиком:

  • FitInfo является структурой, особенно по возвращению из lasso или lassoglmlassoPlot создает график на основе PlotType Пара "имя-значение".

  • FitInfo является вектором - lassoPlot формирует x -ось графика из значений в FitInfo. Длина FitInfo должно равняться количеству столбцов B.

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

'Parent'

Ось, на которой нужно нарисовать график.

По умолчанию: Новый график

'PlotType'

Тип графика, когда вы задаете FitInfo вектор или структура:

PlotTypeГрафик
'L1'lassoPlot создает x -ось из L1 норма коэффициентов в B. Ось x в верхней части графика содержит степени свободы (df), означающее количество ненулевых коэффициентов B.

'Lambda'

Когда вы выбираете это значение, FitInfo должна быть структурой.

lassoPlot создает x -ось из Lambda область FitInfo. Ось x в верхней части графика содержит степени свободы (df), означающее количество ненулевых коэффициентов B.

'CV'

Когда вы выбираете это значение, FitInfo должна быть перекрестной проверенной структурой.

  • Для каждого Lambda, lassoPlot строит графики оценки средней квадратной ошибки предсказания на новых данных для модели, подобранной lasso с таким значением Lambda.

  • lassoPlot строит графики полос ошибок для оценок.

Если вы включите перекрестную проверенную FitInfo структура, lassoPlot также указывает на два конкретных Lambda значения с зелеными и синими штриховыми линиями.

  • Зеленая штриховая линия указывает значение Lambda с минимальной перекрестной проверенной средней квадратичной невязкой (MSE).

  • Синяя штриховая линия указывает на наибольшую Lambda это в пределах одной стандартной ошибки минимального MSE. Это значение Лямбды делает самую разреженную модель с относительно низким MSE.

Чтобы отобразить метку для каждого графика в легенде рисунка, введите legend('show') в Командном окне.

По умолчанию: 'L1'

'PredictorNames'

Строковые массивы или массив ячеек из векторов символов для пометки каждого коэффициента B. Если длина PredictorNames меньше, чем количество строк Bоставшиеся метки заполнены значениями по умолчанию.

lassoPlot использует PredictorNames в FitInfo только в том случае, если:

  • Вы создали FitInfo с вызовом на lasso который включал в себя PredictorNames Пара "имя-значение".

  • Вы звоните lassoPlot без PredictorNames Пара "имя-значение".

  • Вы включаете FitInfo в вашем lassoPlot вызов.

Для получения примера см. Раздел «График Лассо с типом графика по умолчанию».

По умолчанию: {'B1','B2',...}

'XScale'

  • 'linear' для линейной оси X

  • 'log' для логарифмической масштабированной оси X

По умолчанию: 'linear', кроме 'log' для 'CV' тип графика

Выходные аргументы

ax

Указатель на ось графика (см. «Внешний вид осей»).

figh

Указатель на окно рисунка (см. «Специальные идентификаторы объектов»).

Примеры

свернуть все

Загрузите выборочные данные

load acetylene

Подготовьте матрицу проекта для подгонки лассо с взаимодействиями.

X = [x1 x2 x3];
D = x2fx(X,'interaction');
D(:,1) = []; % No constant term

The x2fx функция возвращает квадратичную модель в порядке постоянного члена, линейных членов и членов взаимодействия: константа, x1, x2, x3, x1.*x2, x1.*x3, и x2.*x3

Подбор регуляризованной модели данных с помощью lasso.

B = lasso(D,y);

Постройте график соответствия lasso маркированным коэффициентам с помощью PredictorNames Пара "имя-значение".

lassoPlot(B,'PredictorNames',{'x1','x2','x3','x1.*x2','x1.*x3','x2.*x3'});
legend('show','Location','NorthWest') % Show legend

Figure contains 2 axes. Axes 1 with title Trace Plot of Coefficients Fit by Lasso is empty. Axes 2 with title Trace Plot of Coefficients Fit by Lasso contains 6 objects of type line. These objects represent x1, x2, x3, x1.*x2, x1.*x3, x2.*x3.

Каждая линия представляет трассировку значений В для одной переменной предиктора: x1, x2, x3, x1.*x2, x1.*x3, и x2.*x3.

Отображение всплывающих подсказок для графика трассировки. При наведении указателя мыши на всплывающую подсказку появляется всплывающая подсказка.

В всплывающую подсказку отображаются эти линии информации: имя выбранного коэффициента с подобранным значением, L1 норма набора коэффициентов, включая выбранный коэффициент, и индекс соответствующей Лямбды.

Загрузите выборочные данные.

load acetylene

Подготовьте данные для лассо- подгонку с взаимодействиями.

X = [x1 x2 x3];
D = x2fx(X,'interaction');
D(:,1) = []; % No constant term

Подбор регуляризованной модели данных с lasso.

[B,FitInfo] = lasso(D,y);

Постройте график моделей с Lambda тип графика и логарифмическое масштабирование.

lassoPlot(B,FitInfo,'PlotType','Lambda','XScale','log');

Figure contains 2 axes. Axes 1 with title Trace Plot of Coefficients Fit by Lasso is empty. Axes 2 with title Trace Plot of Coefficients Fit by Lasso contains 6 objects of type line. These objects represent B1, B2, B3, B4, B5, B6.

Визуально проверьте перекрестную ошибку различных уровней регуляризации.

Загрузите выборочные данные.

load acetylene

Создайте матрицу проекта с взаимодействиями и без постоянного члена.

X = [x1 x2 x3];
D = x2fx(X,'interaction');
D(:,1) = []; % No constant term

Создайте подгонку lasso с помощью 10-кратной перекрестной валидации. Включите FitInfo выход, чтобы можно было построить график результата.

rng default % For reproducibility 
[B,FitInfo] = lasso(D,y,'CV',10);

Постройте график кросс-проверенных подгонок.

lassoPlot(B,FitInfo,'PlotType','CV');
legend('show') % Show legend

Figure contains an axes. The axes with title Cross-Validated MSE of Lasso Fit contains 5 objects of type errorbar, line. These objects represent MSE with Error Bars, LambdaMinMSE, Lambda1SE.

Зеленый круг и пунктирная линия определяют местоположение Lambda с минимальной ошибкой перекрестной проверки. Синий круг и пунктирная линия определяют местоположение точки с минимальной ошибкой перекрестной валидации плюс одно стандартное отклонение.

Введенный в R2011b