Регуляризация регрессии Пуассона

Этот пример показывает, как идентифицировать и удалить избыточные предикторы из обобщенной линейной модели.

Создайте данные с 20 предикторами и откликами Пуассона, используя всего три предиктора плюс константа.

rng('default') % for reproducibility
X = randn(100,20);
mu = exp(X(:,[5 10 15])*[.4;.2;.3] + 1);
y = poissrnd(mu);

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

[B,FitInfo] = lassoglm(X,y,'poisson','CV',10);

Исследуйте график перекрестной проверки, чтобы увидеть эффект Lambda параметр регуляризации.

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

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

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

Найдите ненулевые коэффициенты модели, соответствующие двум идентифицированным точкам.

minpts = find(B(:,FitInfo.IndexMinDeviance))
minpts = 7×1

     3
     5
     6
    10
    11
    15
    16

min1pts = find(B(:,FitInfo.Index1SE))
min1pts = 3×1

     5
    10
    15

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

Найдите значения коэффициентов модели в минимальной плюс одной стандартной точке ошибки.

B(min1pts,FitInfo.Index1SE)
ans = 3×1

    0.2903
    0.0789
    0.2081

Значения коэффициентов, как и ожидалось, меньше исходного [0.4,0.2,0.3]. Лассо работает с помощью «усадки», которая смещает коэффициенты предиктора к нулю.

Постоянный член находится в FitInfo.Intercept вектор.

FitInfo.Intercept(FitInfo.Index1SE)
ans = 1.0879

Постоянный термин близок к 1, что является значением, используемым для генерации данных.

Для просмотра документации необходимо авторизоваться на сайте