Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale

Цель статьи — оказание поддержки начинающим датасайнтистам. В articolo precedente мы на пальцах разобрали три способа решения уравнения линейной регрессии: аналитическое решение, градиентный спуск, стохастический градиентный спуск. Тогда для аналитического решения мы применили формулу Presentiamo l'equazione della regressione lineare in forma matriciale. В этой статье, как следует из заголовка, мы обоснуем применение данной формулы или другими словами, самостоятельно ее выведем.

Почему имеет смысл уделить повышенное внимание к формуле Presentiamo l'equazione della regressione lineare in forma matriciale?

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

Например, на курсах по машинному обучению от Яндекса, когда слушателей знакомят с регуляризацией, то предлагают воспользоваться функциями из библиотеки sklearn, при этом ни слова не упоминается о матричном представлении алгоритма. Именно в этот момент у некоторых слушателей может появится желание разобраться в этом вопросе подробнее — написать код без использования готовых функций. А для этого, надо сначала представить уравнение с регуляризатором в матричном виде. Данная статья, как раз, позволит желающим овладеть такими умениями. Приступим.

Исходные условия

Целевые показатели

У нас имеется ряд значений целевого показателя. Например, целевым показателем может быть цена на какой-либо актив: нефть, золото, пшеница, доллар и т.д. При этом, под рядом значений целевого показателя мы понимаем количество наблюдений. Такими наблюдениями могут быть, например, ежемесячные цены на нефть за год, то есть у нас будет 12 значений целевого показателя. Начнем вводить обозначения. Обозначим каждое значение целевого показателя как Presentiamo l'equazione della regressione lineare in forma matriciale. Всего мы имеем Presentiamo l'equazione della regressione lineare in forma matriciale наблюдений, а значит можно представить наши наблюдения как Presentiamo l'equazione della regressione lineare in forma matriciale.

Регрессоры

Будем считать, что существуют факторы, которые в определенной степени объясняют значения целевого показателя. Например, на курс пары доллар/рубль сильное влияние оказывает цена на нефть, ставка ФРС и др. Такие факторы называются регрессорами. При этом, каждому значению целевого показателя должно соответствовать значение регрессора, то есть, если у нас имеется 12 целевых показателей за каждый месяц в 2018 году, то и значений регрессоров у нас тоже должно быть 12 за тот же период. Обозначим значения каждого регрессора через Presentiamo l'equazione della regressione lineare in forma matriciale. Пусть в нашем случае имеется Presentiamo l'equazione della regressione lineare in forma matriciale регрессоров (т.е. Presentiamo l'equazione della regressione lineare in forma matriciale факторов, которые оказывают влияние на значения целевого показателя). Значит наши регрессоры можно представить следующим образом: для 1-го регрессора (например, цена на нефть): Presentiamo l'equazione della regressione lineare in forma matriciale, для 2-го регрессора (например, ставка ФРС): Presentiamo l'equazione della regressione lineare in forma matriciale, для «Presentiamo l'equazione della regressione lineare in forma matriciale-го» регрессора: Presentiamo l'equazione della regressione lineare in forma matriciale

Зависимость целевых показателей от регрессоров

Предположим, что зависимость целевого показателя Presentiamo l'equazione della regressione lineare in forma matriciale от регрессоров «Presentiamo l'equazione della regressione lineare in forma matriciale-го» наблюдения может быть выражена через уравнение линейной регрессии вида:

Presentiamo l'equazione della regressione lineare in forma matriciale

, dove Presentiamo l'equazione della regressione lineare in forma matriciale — «Presentiamo l'equazione della regressione lineare in forma matriciale-ое» значение регрессора от 1 до Presentiamo l'equazione della regressione lineare in forma matriciale,

Presentiamo l'equazione della regressione lineare in forma matriciale — количество регрессоров от 1 до Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale — угловые коэффициенты, которые представляют величину, на которую изменится расчетный целевой показатель в среднем при изменении регрессора.

Другими словами, мы для каждого (за исключением Presentiamo l'equazione della regressione lineare in forma matriciale) регрессора определяем «свой» коэффициент Presentiamo l'equazione della regressione lineare in forma matriciale, затем перемножаем коэффициенты на значения регрессоров «Presentiamo l'equazione della regressione lineare in forma matriciale-го» наблюдения, в результате получаем некое приближение «Presentiamo l'equazione della regressione lineare in forma matriciale-го» целевого показателя.

Следовательно, нам нужно подобрать такие коэффициенты Presentiamo l'equazione della regressione lineare in forma matriciale, при которых значения нашей апроксимирующей функции Presentiamo l'equazione della regressione lineare in forma matriciale будут расположены максимально близко к значениям целевых показателей.

Оценка качества апроксиммирующей функции

Будем определять оценку качества апроксимирующей функции методом наименьших квадратов. Функция оценки качества в таком случае примет следующий вид:

Presentiamo l'equazione della regressione lineare in forma matriciale

Нам требуется подобрать такие значения коэффициентов $w$, при которых значение Presentiamo l'equazione della regressione lineare in forma matriciale будет наименьшим.

Переводим уравнение в матричный вид

Векторное представление

Для начала, чтобы облегчить себе жизнь, следует обратить внимание на уравнение линейной регрессии и заметить, что первый коэффициент Presentiamo l'equazione della regressione lineare in forma matriciale не умножается ни на один регрессор. При этом, когда мы переведем данные в матричный вид, вышеобозначенное обстоятельство будет серьезно осложнять расчеты. В этой связи предлагается ввести еще один регрессор для первого коэффициента Presentiamo l'equazione della regressione lineare in forma matriciale и приравнять его единице. Вернее, каждое «Presentiamo l'equazione della regressione lineare in forma matriciale-ое» значение этого регрессора приравнять единице — ведь при умножении на единицу у нас с точки зрения результата вычислений ничего не изменится, а с точки зрения правил произведения матриц, существенно сократятся наши мучения.

Теперь, на некоторое время, с целью упрощения материала, предположим, что у нас только одно «Presentiamo l'equazione della regressione lineare in forma matriciale-ое» наблюдение. Тогда, представим значения регрессоров «Presentiamo l'equazione della regressione lineare in forma matriciale-ого» наблюдения в качестве вектора Presentiamo l'equazione della regressione lineare in forma matriciale. Вектор Presentiamo l'equazione della regressione lineare in forma matriciale имеет размерность Presentiamo l'equazione della regressione lineare in forma matriciale, vale a dire Presentiamo l'equazione della regressione lineare in forma matriciale строк и 1 столбец:

Presentiamo l'equazione della regressione lineare in forma matriciale

Искомые коэффициенты представим в виде вектора Presentiamo l'equazione della regressione lineare in forma matriciale, имеющего размерность Presentiamo l'equazione della regressione lineare in forma matriciale:

Presentiamo l'equazione della regressione lineare in forma matriciale

Уравнение линейной регрессии для «Presentiamo l'equazione della regressione lineare in forma matriciale-го» наблюдения примет вид:

Presentiamo l'equazione della regressione lineare in forma matriciale

Функция оценки качества линейной модели примет вид:

Presentiamo l'equazione della regressione lineare in forma matriciale

Обратим внимание, что в соответствии с правилами умножения матриц, нам потребовалось транспонировать вектор Presentiamo l'equazione della regressione lineare in forma matriciale.

Матричное представление

В результате умножения векторов, мы получим число: Presentiamo l'equazione della regressione lineare in forma matriciale, что и следовало ожидать. Это число и есть приближение «Presentiamo l'equazione della regressione lineare in forma matriciale-го» целевого показателя. Но нам-то нужно приближение не одного значения целевого показателя, а всех. Для этого запишем все «Presentiamo l'equazione della regressione lineare in forma matriciale-ые» регрессоры в формате матрицы Presentiamo l'equazione della regressione lineare in forma matriciale. Полученная матрица имеет размерность Presentiamo l'equazione della regressione lineare in forma matriciale:

Presentiamo l'equazione della regressione lineare in forma matriciale

Теперь уравнение линейной регрессии примет вид:

Presentiamo l'equazione della regressione lineare in forma matriciale

Обозначим значения целевых показателей (все Presentiamo l'equazione della regressione lineare in forma matriciale) за вектор Presentiamo l'equazione della regressione lineare in forma matriciale размерностью Presentiamo l'equazione della regressione lineare in forma matriciale:

Presentiamo l'equazione della regressione lineare in forma matriciale

Теперь мы можем записать в матричном формате уравнение оценки качества линейной модели:

Presentiamo l'equazione della regressione lineare in forma matriciale

Собственно, из этой формулы далее получают известную нам формулу Presentiamo l'equazione della regressione lineare in forma matriciale

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

Матричные преобразования

Раскроем скобки

Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale

Подготовим уравнение для дифференцирования

Для этого проведем некоторые преобразования. В последующих расчетах нам будет удобнее, если вектор Presentiamo l'equazione della regressione lineare in forma matriciale будет представлен в начале каждого произведения в уравнении.

Преобразование 1

Presentiamo l'equazione della regressione lineare in forma matriciale

Как это получилось? Для ответа на этот вопрос достаточно посмотреть на размеры умножаемых матриц и увидеть, что на выходе мы получаем число или иначе Presentiamo l'equazione della regressione lineare in forma matriciale.

Запишем размеры матричных выражений.

Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale

Преобразование 2

Presentiamo l'equazione della regressione lineare in forma matriciale

Распишем аналогично преобразованию 1

Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale

На выходе получаем уравнение, которое нам предстоит продифференцировать:
Presentiamo l'equazione della regressione lineare in forma matriciale

Дифференцируем функцию оценки качества модели

Продифференцируем по вектору Presentiamo l'equazione della regressione lineare in forma matriciale:

Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale

Вопросов почему Presentiamo l'equazione della regressione lineare in forma matriciale быть не должно, а вот операции по определению производных в двух других выражениях мы разберем подробнее.

Дифференцирование 1

Раскроем дифференцирование: Presentiamo l'equazione della regressione lineare in forma matriciale

Для того, чтобы определить производную от матрицы или вектора требуется посмотреть, что у них там внутри. Смотрим:

Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale Presentiamo l'equazione della regressione lineare in forma matriciale

Обозначим произведение матриц Presentiamo l'equazione della regressione lineare in forma matriciale через матрицу Presentiamo l'equazione della regressione lineare in forma matriciale. Матрица Presentiamo l'equazione della regressione lineare in forma matriciale квадратная и более того, она симметричная. Эти свойства нам пригодятся далее, запомним их. Матрица Presentiamo l'equazione della regressione lineare in forma matriciale имеет размерность Presentiamo l'equazione della regressione lineare in forma matriciale:

Presentiamo l'equazione della regressione lineare in forma matriciale

Теперь наша задача правильно перемножить вектора на матрицу и не получить «дважды два пять», поэтому сосредоточимся и будем предельно внимательны.

Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale

Однако, замысловатое выражение у нас получилось! На самом деле мы получили число — скаляр. И теперь, уже по-настоящему, переходим к дифференцированию. Необходимо найти производную полученного выражения по каждому коэффициенту Presentiamo l'equazione della regressione lineare in forma matriciale и получить на выходе вектор размерности Presentiamo l'equazione della regressione lineare in forma matriciale. На всякий случай распишу процедуры по действиям:

1) продифференцируем по Presentiamo l'equazione della regressione lineare in forma matriciale, получим: Presentiamo l'equazione della regressione lineare in forma matriciale

2) продифференцируем по Presentiamo l'equazione della regressione lineare in forma matriciale, получим: Presentiamo l'equazione della regressione lineare in forma matriciale

3) продифференцируем по Presentiamo l'equazione della regressione lineare in forma matriciale, получим: Presentiamo l'equazione della regressione lineare in forma matriciale

На выходе — обещанный вектор размером Presentiamo l'equazione della regressione lineare in forma matriciale:

Presentiamo l'equazione della regressione lineare in forma matriciale

Если присмотреться к вектору повнимательнее, то можно заметить, что левые и соответствующие правые элементы вектора можно сгруппировать таким образом, что в итоге из представленного вектора можно выделить вектор Presentiamo l'equazione della regressione lineare in forma matriciale размера Presentiamo l'equazione della regressione lineare in forma matriciale. Ad esempio, Presentiamo l'equazione della regressione lineare in forma matriciale (левый элемент верхней строчки вектора) Presentiamo l'equazione della regressione lineare in forma matriciale (правый элемент верхней строчки вектора) можно представить как Presentiamo l'equazione della regressione lineare in forma matriciale, e Presentiamo l'equazione della regressione lineare in forma matriciale — как Presentiamo l'equazione della regressione lineare in forma matriciale и т.д. по каждой строчке. Сгруппируем:

Presentiamo l'equazione della regressione lineare in forma matriciale

Вынесем вектор Presentiamo l'equazione della regressione lineare in forma matriciale и на выходе получим:

Presentiamo l'equazione della regressione lineare in forma matriciale

Теперь, присмотримся к получившейся матрице. Матрица представляет собой сумму двух матриц Presentiamo l'equazione della regressione lineare in forma matriciale:

Presentiamo l'equazione della regressione lineare in forma matriciale

Вспомним, что несколько ранее, мы отметили одно важное свойство матрицы Presentiamo l'equazione della regressione lineare in forma matriciale — она симметричная. Исходя из этого свойства, мы можем с уверенностью заявить, что выражение Presentiamo l'equazione della regressione lineare in forma matriciale равняется Presentiamo l'equazione della regressione lineare in forma matriciale. Это легко проверить, раскрыв поэлементно произведение матриц Presentiamo l'equazione della regressione lineare in forma matriciale. Мы не будем делать этого здесь, желающие могут провести проверку самостоятельно.

Вернемся к нашему выражению. После наших преобразований оно получилось таким, каким мы и хотели его увидеть:

Presentiamo l'equazione della regressione lineare in forma matriciale

Итак, с первым дифференцированием мы справились. Переходим ко второму выражению.

Дифференцирование 2

Presentiamo l'equazione della regressione lineare in forma matriciale

Пойдем по протоптанной дорожке. Она будет намного короче предыдущей, так что не уходите далеко от экрана.

Раскроем поэлементно вектора и матрицу:

Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale

На время уберем из расчетов двойку — она большой роли не играет, потом вернем ее на место. Перемножим вектора на матрицу. В первую очередь умножим матрицу Presentiamo l'equazione della regressione lineare in forma matriciale на вектор Presentiamo l'equazione della regressione lineare in forma matriciale, здесь у нас нет никаких ограничений. Получим вектор размера Presentiamo l'equazione della regressione lineare in forma matriciale:

Presentiamo l'equazione della regressione lineare in forma matriciale

Выполним следующее действие — умножим вектор Presentiamo l'equazione della regressione lineare in forma matriciale на полученный вектор. На выходе нас будет ждать число:

Presentiamo l'equazione della regressione lineare in forma matriciale

Его то мы и продифференцируем. На выходе получим вектор размерности Presentiamo l'equazione della regressione lineare in forma matriciale:

Presentiamo l'equazione della regressione lineare in forma matriciale

Что-то напоминает? Все верно! Это произведение матрицы Presentiamo l'equazione della regressione lineare in forma matriciale на вектор Presentiamo l'equazione della regressione lineare in forma matriciale.

Таким образом, второе дифференцирование успешно завершено.

In conclusion

Теперь мы знаем, как получилось равенство Presentiamo l'equazione della regressione lineare in forma matriciale.

Напоследок опишем быстрый путь преобразований основных формул.

Оценим качество модели в соответствии с методом наименьших квадратов:
Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale

Дифференцируем полученное выражение:
Presentiamo l'equazione della regressione lineare in forma matriciale Presentiamo l'equazione della regressione lineare in forma matriciale

Presentiamo l'equazione della regressione lineare in forma matriciale

Letteratura

Интернет источники:

1) habr.com/ru/post/278513
2) habr.com/ru/company/ods/blog/322076
3) habr.com/ru/post/307004
4) nabatchikov.com/blog/view/matrix_der

Учебники, сборники задач:

1) Конспект лекций по высшей математике: полный курс / Д.Т. Письменный – 4-е изд. – М.: Айрис-пресс, 2006
2) Прикладной регрессионный анализ / Н. Дрейпер, Г. Смит – 2-е изд. – М.: Финансы и статистика, 1986 (перевод с английского)
3) Задачи на решение матричных уравнений:
function-x.ru/matrix_equations.html
mathprofi.ru/deistviya_s_matricami.html


Fonte: habr.com

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster