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- NLambda матрица, где p количество предикторов и каждый столбец B набор коэффициентов lasso вычисляет использование того Lambda значение штрафа.

FitInfo

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

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

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

Аргументы name-value

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

Parent

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

Значение по умолчанию: Newplot

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. Это значение Lambda делает самую разреженную модель с относительно низким 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

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

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

B = lasso(D,y);

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

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

Figure contains 2 axes objects. Axes object 1 with title Trace Plot of Coefficients Fit by Lasso is empty. Axes object 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.

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

Отобразите всплывающую подсказку для графика трассировки. Всплывающая подсказка появляется, когда вы наводите на всплывающую подсказку.

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

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

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 objects. Axes object 1 with title Trace Plot of Coefficients Fit by Lasso is empty. Axes object 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

Создайте подгонку лассо использование 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 object. The axes object 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