Многомерная линейная регрессия
возвращает оцененные коэффициенты для многомерной нормальной регрессии d-мерных откликов в beta = mvregress(X,Y)Y на матрицах проектирования в X.
возвращает оцененные коэффициенты с помощью дополнительных опций, заданных одним или несколькими аргументами пары имя-значение. Например, можно задать алгоритм оценки, начальные оценочные значения или максимальное количество итераций для регрессии.beta = mvregress(X,Y,Name,Value)
Поместите многомерную регрессионную модель в данные панели, предполагая различные перехваты и общие уклоны.
Загрузите образцы данных.
load('flu')Массив наборов данных flu содержит национальные оценки CDC гриппа и девять отдельных региональных оценок на основе данных запросов Google ® .
Извлеките данные ответа и предиктора.
Y = double(flu(:,2:end-1)); [n,d] = size(Y); x = flu.WtdILI;
Ответы в Y являются девятью региональными оценками гриппа. Наблюдения существуют для каждой недели в течение одного года, так что = 52. Размерность ответов соответствует областям, поэтому = 9. Предикторы в x являются еженедельными национальными оценками гриппа.
Постройте график данных гриппа, сгруппированных по регионам.
figure; regions = flu.Properties.VarNames(2:end-1); plot(x,Y,'x') legend(regions,'Location','NorthWest')

Подгоните многомерную регрессионную модель , где .., n = 1,..., d, с параллельной ϵij,ϵij) между областями =
Существует = 10 коэффициентов регрессии для оценки: девять членов пересечения и общий наклон. Входной аргумент X должен быть массивом ячеек с n-элементами из матриц конструкции d -by- K.
X = cell(n,1); for i = 1:n X{i} = [eye(d) repmat(x(i),d,1)]; end [beta,Sigma] = mvregress(X,Y);
beta содержит оценки вектора K-мерного коэффициента , β) ′.
Sigma содержит оценки -by- дисперсионно-ковариантной матрицы × 1,..., d для параллельных корреляций между областями.
Постройте график подогнанной регрессионной модели.
B = [beta(1:d)';repmat(beta(end),1,d)]; xx = linspace(.5,3.5)'; fits = [ones(size(xx)),xx]*B; figure; h = plot(x,Y,'x',xx,fits,'-'); for i = 1:d set(h(d+i),'color',get(h(i),'color')); end legend(regions,'Location','NorthWest');

График показывает, что каждая линия регрессии имеет различный пересечение, но одинаковый наклон. При визуальном осмотре некоторые линии регрессии, по-видимому, лучше подходят к данным, чем другие.
Подгоните многомерную регрессионную модель к данным панели, используя наименьшие квадраты, предполагая различные перехваты и наклоны.
Загрузите образцы данных.
load('flu');Массив наборов данных flu содержит национальные оценки CDC гриппа и девять отдельных региональных оценок на основе запросов Google ® .
Извлеките данные ответа и предиктора.
Y = double(flu(:,2:end-1)); [n,d] = size(Y); x = flu.WtdILI;
Ответы в Y являются девятью региональными оценками гриппа. Наблюдения существуют для каждой недели в течение одного года, так что = 52. Размерность ответов соответствует областям, поэтому = 9. Предикторы в x являются еженедельными национальными оценками гриппа.
Подгоните многомерную регрессионную модель , где .., n = 1,..., d, с параллельной ϵij,ϵij) между областями =
Существует = 18 коэффициентов регрессии для оценки: девять членов пересечения и девять членов наклона. X - массив ячеек с n-элементами из матриц конструкции d -by- K.
X = cell(n,1); for i = 1:n X{i} = [eye(d) x(i)*eye(d)]; end [beta,Sigma] = mvregress(X,Y,'algorithm','cwls');
beta содержит оценки вектора K-мерного коэффициента ..., β9) ′.
Постройте график подогнанной регрессионной модели.
B = [beta(1:d)';beta(d+1:end)']; xx = linspace(.5,3.5)'; fits = [ones(size(xx)),xx]*B; figure; h = plot(x,Y,'x',xx,fits,'-'); for i = 1:d set(h(d+i),'color',get(h(i),'color')); end regions = flu.Properties.VarNames(2:end-1); legend(regions,'Location','NorthWest');

График показывает, что каждая линия регрессии имеет разные пересечение и наклон.
Подгонка многомерной регрессионной модели с использованием одной матрицы конструкции n-by-P для всех размеров отклика.
Загрузите образцы данных.
load('flu')Массив наборов данных flu содержит национальные оценки CDC гриппа и девять отдельных региональных оценок на основе запросов Google ® .
Извлеките данные ответа и предиктора.
Y = double(flu(:,2:end-1)); [n,d] = size(Y); x = flu.WtdILI;
Ответы в Y являются девятью региональными оценками гриппа. Наблюдения существуют для каждой недели в течение одного года, так что = 52. Размерность ответов соответствует областям, поэтому = 9. Предикторы в x являются еженедельными национальными оценками гриппа.
Создание матрицы конструкции n -by- P X. Добавьте столбец единиц, чтобы включить постоянный член в регрессию.
X = [ones(size(x)),x];
Подгонка многомерной регрессионной модели
где .., n = 1,..., d, с параллельной корреляцией между областями
startjj.
Существует 18 коэффициентов регрессии для оценки: девять членов пересечения и девять членов наклона.
[beta,Sigma,E,CovB,logL] = mvregress(X,Y);
beta содержит оценки матрицы коэффициентов P-к-d. Sigma содержит оценки матрицы d-за-d дисперсией-ковариацией для параллельных корреляций между областями. E - матрица остатков. CovB - оценочная матрица дисперсии-ковариации коэффициентов регрессии. logL - значение целевой функции логарифмического правдоподобия после последней итерации.
Постройте график подогнанной регрессионной модели.
B = beta; xx = linspace(.5,3.5)'; fits = [ones(size(xx)),xx]*B; figure h = plot(x,Y,'x', xx,fits,'-'); for i = 1:d set(h(d+i),'color',get(h(i),'color')) end regions = flu.Properties.VarNames(2:end-1); legend(regions,'Location','NorthWest')

График показывает, что каждая линия регрессии имеет разные пересечение и наклон.
X - Матрицы проектированияСоздание матриц для многомерной регрессии, заданной как матрица или массив ячеек матриц. n - количество наблюдений в данных, K - число коэффициентов регрессии для оценки, p - число переменных предиктора, d - количество измерений в матрице переменных отклика Y.
Если d = 1, укажите X как единая матрица конструкции n-by-K.
Если d > 1 и все d размеры имеют одинаковую матрицу конструкции, то можно указать X как единая матрица конструкции n-by-p (не в массиве ячеек).
Если d > 1 и все n наблюдений имеют одинаковую матрицу конструкции, то можно указать X в виде массива ячеек, содержащего одну матрицу конструкции d-by-K.
Если d > 1 и все n наблюдений не имеют одинаковой матрицы проектирования, то укажите X в виде массива ячеек длиной n, содержащего матрицы конструкции d-by-K.
Чтобы включить постоянный член в регрессионную модель, каждая матрица конструкции должна содержать столбец из них.
mvregress удовольствия NaN значения в X как отсутствующие значения и игнорирует строки в X с отсутствующими значениями.
Типы данных: single | double | cell
Y - Переменные ответаПеременные ответа, указанные как матрица n-by-d. n - количество наблюдений в данных, а d - число измерений в ответе. Когда d = 1, mvregress обрабатывает значения в Y как и n независимых значений ответа.
mvregress удовольствия NaN значения в Y как отсутствующие значения, и обрабатывает их в соответствии с алгоритмом оценки, указанным с помощью аргумента пары имя-значение algorithm.
Типы данных: single | double
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
'algorithm','cwls','covar0',C определяет оценку наименьших квадратов с ковариационным взвешиванием с использованием ковариационной матрицы C.'algorithm' - Алгоритм оценки'mvn' | 'ecm' | 'cwls'Алгоритм оценки, определяемый как разделенная запятыми пара, состоящая из 'algorithm' и одно из следующих.
'mvn' | Обычная многомерная нормальная оценка максимального правдоподобия. |
'ecm' | Оценка максимального правдоподобия с помощью алгоритма ECM. |
'cwls' | Оценка наименьших квадратов с ковариационным взвешиванием. |
Алгоритм по умолчанию зависит от наличия отсутствующих данных.
Для полных данных по умолчанию используется значение 'mvn'.
Если есть какие-либо отсутствующие ответы (указано NaN), значение по умолчанию - 'ecm'при условии, что размер выборки достаточен для оценки всех параметров. В противном случае по умолчанию используется следующий алгоритм: 'cwls'.
Примечание
Если algorithm имеет значение 'mvn', то mvregress удаляет наблюдения с отсутствующими значениями ответа перед оценкой.
Пример: 'algorithm','ecm'
'beta0' - Первоначальные оценки коэффициентов регрессииНачальные оценки для коэффициентов регрессии, указанных как пара, разделенная запятыми, состоящая из 'beta0' и вектор с K элементами. Значением по умолчанию является вектор 0 с.
beta0 аргумент не используется, если оценка algorithm является 'mvn'.
'covar0' - Начальная оценка для матрицы дисперсия-ковариацияНачальная оценка для матрицы дисперсия-ковариация, Sigma, указанная как пара, разделенная запятыми, состоящая из 'covar0' и симметричную положительную определенную матрицу d-by-d. Значением по умолчанию является единичная матрица.
Если оценка algorithm является 'cwls', то mvregress использование covar0 в качестве матрицы взвешивания в каждой итерации без изменения ее.
'covtype' - Тип матрицы дисперсия-ковариация'full' (по умолчанию) | 'diagonal'Тип матрицы дисперсии-ковариации для оценки Y, указанная как пара, разделенная запятыми, состоящая из 'covtype' и одно из следующих.
'full' | Оцените все d (d + 1 )/2 элемента дисперсии-ковариации. |
'diagonal' | Оцените только d диагональных элементов матрицы дисперсии-ковариации. |
Пример: 'covtype','diagonal'
'maxiter' - Максимальное число итераций100 (по умолчанию) | положительное целое числоМаксимальное количество итераций для алгоритма оценки, указанного как пара, разделенная запятыми, состоящая из 'maxiter' и положительное целое число.
Итерации продолжаются до тех пор, пока оценки не окажутся в пределах допусков сходимости tolbeta и tolobjили максимальное число итераций, указанное в maxiter достигнут. Если оба tolbeta и tolobj равны 0, затем mvregress выступает maxiter итерации без тестов сходимости.
Пример: 'maxiter',50
'outputfcn' - Функция для вычисления каждой итерацииФункция для вычисления на каждой итерации, заданная как разделенная запятыми пара, состоящая из 'outputfcn' и дескриптор функции. Функция должна возвращать логическое true или false. При каждой итерации mvregress вычисляет функцию. Если результат true, итерации прекращаются. В противном случае итерации продолжаются. Например, можно указать функцию, отображающую текущие результаты итерации и возвращающую true если закрыть фигуру.
Функция должна принимать три входных аргумента в следующем порядке:
Вектор текущих оценок коэффициентов
Структура, содержащая три поля:
Covar | Текущее значение матрицы дисперсия-ковариация |
iteration | Номер текущей итерации |
fval | Текущее значение целевой функции loglikeability |
Текст, который принимает следующие три значения:
'init' | Когда функция вызывается во время инициализации |
'iter' | Когда функция вызывается после итерации |
'done' | Когда функция вызывается после завершения |
'tolbeta' - Допуск сходимости для коэффициентов регрессииsqrt(eps) (по умолчанию) | положительное скалярное значениеДопуск сходимости для коэффициентов регрессии, указанный как пара, разделенная запятыми, состоящая из 'tolbeta' и положительное скалярное значение.
Пусть обозначает оценку вектора коэффициентов при итерации t, а - допуск, заданный tolbeta. Критерием сходимости для оценки коэффициента регрессии является
‖),
где K - длина , а ‖ - норма v.
Итерации продолжаются до тех пор, пока оценки не окажутся в пределах допусков сходимости tolbeta и tolobjили максимальное число итераций, указанное в maxiter достигнут. Если оба tolbeta и tolobj равны 0, затем mvregress выступает maxiter итерации без тестов сходимости.
Пример: 'tolbeta',1e-5
'tolobj' - Допуск конвергенции для целевой функции loglikeabilityeps^(3/4) (по умолчанию) | положительное скалярное значениеДопуск сходимости для целевой функции loglikestivity, указанной как пара, разделенная запятыми, состоящая из 'tolobj' и положительное скалярное значение.
Пусть обозначает значение целевой функции loglikeability при итерации t и быть допуском, указанным tolobj. Критерием сходимости для целевой функции является
Lt |).
Итерации продолжаются до тех пор, пока оценки не окажутся в пределах допусков сходимости tolbeta и tolobjили максимальное число итераций, указанное в maxiter достигнут. Если оба tolbeta и tolobj равны 0, затем mvregress выступает maxiter итерации без тестов сходимости.
Пример: 'tolobj',1e-5
'varformat' - Формат матрицы дисперсионная-ковариационная оценка параметров'beta' (по умолчанию) | 'full'Формат матрицы дисперсионная-ковариационная оценка параметров, CovB, указанная как пара, разделенная запятыми, состоящая из 'varformat' и одно из следующих.
'beta' | Возвращает матрицу дисперсии-ковариации только для оценок коэффициента регрессии. beta. |
'full' | Возвращает матрицу дисперсии-ковариации для обеих оценок коэффициента регрессии. betaи оценку матрицы дисперсия-ковариация, Sigma. |
Пример: 'varformat','full'
'vartype' - Тип матрицы дисперсии-ковариации для оценок параметров'hessian' (по умолчанию) | 'fisher'Тип матрицы дисперсии-ковариации для оценок параметров, определяемый как разделенная запятыми пара, состоящая из 'vartype' и либо 'hessian' или 'fisher'.
Если значение равно 'hessian', то mvregress использует матрицу Гессена или наблюдаемую информацию для вычисления CovB.
Если значение равно 'fisher', то mvregress использует матрицу Fisher полных данных или ожидаемую информацию для вычисления CovB.
'hessian' метод учитывает увеличение неопределенностей из-за отсутствия данных, в то время как 'fisher' метод не используется.
Пример: 'vartype','fisher'
beta - Оценочные коэффициенты регрессииОцененные коэффициенты регрессии, возвращаемые в виде вектора столбца или матрицы.
При указании X как единая матрица конструкции n-by-K, то mvregress прибыль beta в виде вектора столбца длиной К. Например, если X является матрицей дизайна 20 на 5, то beta является вектором столбца 5 на 1.
При указании X в виде массива ячеек, содержащего одну или несколько матриц проектирования d-by-K, mvregress прибыль beta в виде вектора столбца длиной К. Например, если X является массивом ячеек, содержащим матрицы конструкции 2 на 10, то beta является вектором-столбцом 10 на 1.
При указании X как единая матрица конструкции n-by-p (не в массиве ячеек), и Y имеет размер d > 1, затем mvregress прибыль beta в виде матрицы p-by-d. Например, если X является матрицей дизайна 20 на 5, и Y имеет два измерения, так что d = 2, то beta является матрицей 5 на 2, и Y значения X × beta.
E - ОстаткиОстатки для подгоняемой регрессионной модели, возвращаемые в виде матрицы n-by-d.
Если algorithm имеет значение 'ecm' или 'cwls', то mvregress вычисляет остаточные значения, соответствующие отсутствующим значениям в Y как разница между условно вмененными значениями и подобранными значениями.
Примечание
Если algorithm имеет значение 'mvn', то mvregress удаляет наблюдения с отсутствующими значениями ответа перед оценкой.
CovB - Матрица дисперсии-ковариации оценки параметровМатрица дисперсии-ковариации оценки параметров, возвращаемая как квадратная матрица.
logL - Значение объективной функции LoglikeabilityЗначение целевой функции Loglikestivity после последней итерации, возвращаемое как скалярное значение.
Многомерная нормальная регрессия - это регрессия d-мерного отклика на матрице проектирования переменных предиктора с нормально распределенными ошибками. Ошибки могут быть гетероскедастическими и коррелированными.
Модель:
.., n,
где
- d-мерный вектор откликов.
является конструктивной матрицей переменных предиктора.
- вектор или матрица коэффициентов регрессии.
- d-мерный вектор членов ошибки с многомерным нормальным распределением
Λ).
Ожидание/условная максимизация ('ecm') и взвешенные по ковариации наименьшие квадраты ('cwls') алгоритмы оценки включают вменение отсутствующих значений ответа.
Позвольте обозначить отсутствующие наблюдения. Условно-вмененные значения - это ожидаемое значение отсутствующего наблюдения с учетом наблюдаемых данных, ).
Совместное распределение отсутствующих и наблюдаемых ответов является многомерным нормальным распределением,
Σy˜Σy˜yΣyy˜Σy)}.
Используя свойства многомерного нормального распределения, вмененное условное ожидание задается
Xβ).
Примечание
mvregress только вменяет отсутствующие значения ответа. Наблюдения с отсутствующими значениями в проектной матрице удаляются.
[1] Литтл, Родерик Дж. А. и Дональд Б. Рубин. Статистический анализ с отсутствующими данными. 2-е изд., Хобокен, Нью-Джерси: John Wiley & Sons, Inc., 2002.
[2] Мэн, Сяо-Ли и Дональд Б. Рубин. «Оценка максимального правдоподобия с помощью алгоритма ECM». Биометрика. т. 80, № 2, 1993, стр. 267-278.
[3] Секстон, Джо и А. Р. Свенсен. «Алгоритмы ECM, сходящиеся со скоростью EM». Биометрика. т. 87, № 3, 2000, стр. 651-662.
[4] Демпстер, А. П., Н. М. Лэрд и Д. Б. Рубин. «Максимальное вероятность неполных данных через алгоритм EM». Журнал Королевского статистического общества. Серия В, т. 39, № 1, 1977, стр. 1-37.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.