Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice

Цель статьи — оказание поддержки начинающим датасайнтистам. В anterioară articol мы на пальцах разобрали три способа решения уравнения линейной регрессии: аналитическое решение, градиентный спуск, стохастический градиентный спуск. Тогда для аналитического решения мы применили формулу Aducem ecuația de regresie liniară în formă de matrice. В этой статье, как следует из заголовка, мы обоснуем применение данной формулы или другими словами, самостоятельно ее выведем.

Почему имеет смысл уделить повышенное внимание к формуле Aducem ecuația de regresie liniară în formă de matrice?

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

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

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

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

У нас имеется ряд значений целевого показателя. Например, целевым показателем может быть цена на какой-либо актив: нефть, золото, пшеница, доллар и т.д. При этом, под рядом значений целевого показателя мы понимаем количество наблюдений. Такими наблюдениями могут быть, например, ежемесячные цены на нефть за год, то есть у нас будет 12 значений целевого показателя. Начнем вводить обозначения. Обозначим каждое значение целевого показателя как Aducem ecuația de regresie liniară în formă de matrice. Всего мы имеем Aducem ecuația de regresie liniară în formă de matrice наблюдений, а значит можно представить наши наблюдения как Aducem ecuația de regresie liniară în formă de matrice.

Регрессоры

Будем считать, что существуют факторы, которые в определенной степени объясняют значения целевого показателя. Например, на курс пары доллар/рубль сильное влияние оказывает цена на нефть, ставка ФРС и др. Такие факторы называются регрессорами. При этом, каждому значению целевого показателя должно соответствовать значение регрессора, то есть, если у нас имеется 12 целевых показателей за каждый месяц в 2018 году, то и значений регрессоров у нас тоже должно быть 12 за тот же период. Обозначим значения каждого регрессора через Aducem ecuația de regresie liniară în formă de matrice. Пусть в нашем случае имеется Aducem ecuația de regresie liniară în formă de matrice регрессоров (т.е. Aducem ecuația de regresie liniară în formă de matrice факторов, которые оказывают влияние на значения целевого показателя). Значит наши регрессоры можно представить следующим образом: для 1-го регрессора (например, цена на нефть): Aducem ecuația de regresie liniară în formă de matrice, для 2-го регрессора (например, ставка ФРС): Aducem ecuația de regresie liniară în formă de matrice, pentru "Aducem ecuația de regresie liniară în formă de matrice-го» регрессора: Aducem ecuația de regresie liniară în formă de matrice

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

Предположим, что зависимость целевого показателя Aducem ecuația de regresie liniară în formă de matrice от регрессоров «Aducem ecuația de regresie liniară în formă de matrice-го» наблюдения может быть выражена через уравнение линейной регрессии вида:

Aducem ecuația de regresie liniară în formă de matrice

Unde Aducem ecuația de regresie liniară în formă de matrice - "Aducem ecuația de regresie liniară în formă de matrice-ое» значение регрессора от 1 до Aducem ecuația de regresie liniară în formă de matrice,

Aducem ecuația de regresie liniară în formă de matrice — количество регрессоров от 1 до Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice — угловые коэффициенты, которые представляют величину, на которую изменится расчетный целевой показатель в среднем при изменении регрессора.

Другими словами, мы для каждого (за исключением Aducem ecuația de regresie liniară în formă de matrice) регрессора определяем «свой» коэффициент Aducem ecuația de regresie liniară în formă de matrice, затем перемножаем коэффициенты на значения регрессоров «Aducem ecuația de regresie liniară în formă de matrice-го» наблюдения, в результате получаем некое приближение «Aducem ecuația de regresie liniară în formă de matrice-го» целевого показателя.

Следовательно, нам нужно подобрать такие коэффициенты Aducem ecuația de regresie liniară în formă de matrice, при которых значения нашей апроксимирующей функции Aducem ecuația de regresie liniară în formă de matrice будут расположены максимально близко к значениям целевых показателей.

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

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

Aducem ecuația de regresie liniară în formă de matrice

Нам требуется подобрать такие значения коэффициентов $w$, при которых значение Aducem ecuația de regresie liniară în formă de matrice будет наименьшим.

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

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

Для начала, чтобы облегчить себе жизнь, следует обратить внимание на уравнение линейной регрессии и заметить, что первый коэффициент Aducem ecuația de regresie liniară în formă de matrice не умножается ни на один регрессор. При этом, когда мы переведем данные в матричный вид, вышеобозначенное обстоятельство будет серьезно осложнять расчеты. В этой связи предлагается ввести еще один регрессор для первого коэффициента Aducem ecuația de regresie liniară în formă de matrice и приравнять его единице. Вернее, каждое «Aducem ecuația de regresie liniară în formă de matrice-ое» значение этого регрессора приравнять единице — ведь при умножении на единицу у нас с точки зрения результата вычислений ничего не изменится, а с точки зрения правил произведения матриц, существенно сократятся наши мучения.

Теперь, на некоторое время, с целью упрощения материала, предположим, что у нас только одно «Aducem ecuația de regresie liniară în formă de matrice-ое» наблюдение. Тогда, представим значения регрессоров «Aducem ecuația de regresie liniară în formă de matrice-ого» наблюдения в качестве вектора Aducem ecuația de regresie liniară în formă de matrice. Вектор Aducem ecuația de regresie liniară în formă de matrice имеет размерность Aducem ecuația de regresie liniară în formă de matricecare este Aducem ecuația de regresie liniară în formă de matrice строк и 1 столбец:

Aducem ecuația de regresie liniară în formă de matrice

Искомые коэффициенты представим в виде вектора Aducem ecuația de regresie liniară în formă de matrice, имеющего размерность Aducem ecuația de regresie liniară în formă de matrice:

Aducem ecuația de regresie liniară în formă de matrice

Уравнение линейной регрессии для «Aducem ecuația de regresie liniară în formă de matrice-го» наблюдения примет вид:

Aducem ecuația de regresie liniară în formă de matrice

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

Aducem ecuația de regresie liniară în formă de matrice

Обратим внимание, что в соответствии с правилами умножения матриц, нам потребовалось транспонировать вектор Aducem ecuația de regresie liniară în formă de matrice.

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

В результате умножения векторов, мы получим число: Aducem ecuația de regresie liniară în formă de matrice, что и следовало ожидать. Это число и есть приближение «Aducem ecuația de regresie liniară în formă de matrice-го» целевого показателя. Но нам-то нужно приближение не одного значения целевого показателя, а всех. Для этого запишем все «Aducem ecuația de regresie liniară în formă de matrice-ые» регрессоры в формате матрицы Aducem ecuația de regresie liniară în formă de matrice. Полученная матрица имеет размерность Aducem ecuația de regresie liniară în formă de matrice:

Aducem ecuația de regresie liniară în formă de matrice

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

Aducem ecuația de regresie liniară în formă de matrice

Обозначим значения целевых показателей (все Aducem ecuația de regresie liniară în formă de matrice) за вектор Aducem ecuația de regresie liniară în formă de matrice размерностью Aducem ecuația de regresie liniară în formă de matrice:

Aducem ecuația de regresie liniară în formă de matrice

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

Aducem ecuația de regresie liniară în formă de matrice

Собственно, из этой формулы далее получают известную нам формулу Aducem ecuația de regresie liniară în formă de matrice

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

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

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

Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice

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

Для этого проведем некоторые преобразования. В последующих расчетах нам будет удобнее, если вектор Aducem ecuația de regresie liniară în formă de matrice будет представлен в начале каждого произведения в уравнении.

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

Aducem ecuația de regresie liniară în formă de matrice

Как это получилось? Для ответа на этот вопрос достаточно посмотреть на размеры умножаемых матриц и увидеть, что на выходе мы получаем число или иначе Aducem ecuația de regresie liniară în formă de matrice.

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

Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice

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

Aducem ecuația de regresie liniară în formă de matrice

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

Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice

На выходе получаем уравнение, которое нам предстоит продифференцировать:
Aducem ecuația de regresie liniară în formă de matrice

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

Продифференцируем по вектору Aducem ecuația de regresie liniară în formă de matrice:

Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice

Вопросов почему Aducem ecuația de regresie liniară în formă de matrice быть не должно, а вот операции по определению производных в двух других выражениях мы разберем подробнее.

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

Раскроем дифференцирование: Aducem ecuația de regresie liniară în formă de matrice

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

Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice Aducem ecuația de regresie liniară în formă de matrice

Обозначим произведение матриц Aducem ecuația de regresie liniară în formă de matrice через матрицу Aducem ecuația de regresie liniară în formă de matrice. Матрица Aducem ecuația de regresie liniară în formă de matrice квадратная и более того, она симметричная. Эти свойства нам пригодятся далее, запомним их. Матрица Aducem ecuația de regresie liniară în formă de matrice имеет размерность Aducem ecuația de regresie liniară în formă de matrice:

Aducem ecuația de regresie liniară în formă de matrice

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

Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice

Однако, замысловатое выражение у нас получилось! На самом деле мы получили число — скаляр. И теперь, уже по-настоящему, переходим к дифференцированию. Необходимо найти производную полученного выражения по каждому коэффициенту Aducem ecuația de regresie liniară în formă de matrice и получить на выходе вектор размерности Aducem ecuația de regresie liniară în formă de matrice. На всякий случай распишу процедуры по действиям:

1) продифференцируем по Aducem ecuația de regresie liniară în formă de matrice, получим: Aducem ecuația de regresie liniară în formă de matrice

2) продифференцируем по Aducem ecuația de regresie liniară în formă de matrice, получим: Aducem ecuația de regresie liniară în formă de matrice

3) продифференцируем по Aducem ecuația de regresie liniară în formă de matrice, получим: Aducem ecuația de regresie liniară în formă de matrice

На выходе — обещанный вектор размером Aducem ecuația de regresie liniară în formă de matrice:

Aducem ecuația de regresie liniară în formă de matrice

Если присмотреться к вектору повнимательнее, то можно заметить, что левые и соответствующие правые элементы вектора можно сгруппировать таким образом, что в итоге из представленного вектора можно выделить вектор Aducem ecuația de regresie liniară în formă de matrice mărimea Aducem ecuația de regresie liniară în formă de matrice. De exemplu Aducem ecuația de regresie liniară în formă de matrice (левый элемент верхней строчки вектора) Aducem ecuația de regresie liniară în formă de matrice (правый элемент верхней строчки вектора) можно представить как Aducem ecuația de regresie liniară în formă de matriceȘi Aducem ecuația de regresie liniară în formă de matrice — как Aducem ecuația de regresie liniară în formă de matrice и т.д. по каждой строчке. Сгруппируем:

Aducem ecuația de regresie liniară în formă de matrice

Вынесем вектор Aducem ecuația de regresie liniară în formă de matrice и на выходе получим:

Aducem ecuația de regresie liniară în formă de matrice

Теперь, присмотримся к получившейся матрице. Матрица представляет собой сумму двух матриц Aducem ecuația de regresie liniară în formă de matrice:

Aducem ecuația de regresie liniară în formă de matrice

Вспомним, что несколько ранее, мы отметили одно важное свойство матрицы Aducem ecuația de regresie liniară în formă de matrice — она симметричная. Исходя из этого свойства, мы можем с уверенностью заявить, что выражение Aducem ecuația de regresie liniară în formă de matrice este egală Aducem ecuația de regresie liniară în formă de matrice. Это легко проверить, раскрыв поэлементно произведение матриц Aducem ecuația de regresie liniară în formă de matrice. Мы не будем делать этого здесь, желающие могут провести проверку самостоятельно.

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

Aducem ecuația de regresie liniară în formă de matrice

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

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

Aducem ecuația de regresie liniară în formă de matrice

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

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

Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice

На время уберем из расчетов двойку — она большой роли не играет, потом вернем ее на место. Перемножим вектора на матрицу. В первую очередь умножим матрицу Aducem ecuația de regresie liniară în formă de matrice на вектор Aducem ecuația de regresie liniară în formă de matrice, здесь у нас нет никаких ограничений. Получим вектор размера Aducem ecuația de regresie liniară în formă de matrice:

Aducem ecuația de regresie liniară în formă de matrice

Выполним следующее действие — умножим вектор Aducem ecuația de regresie liniară în formă de matrice на полученный вектор. На выходе нас будет ждать число:

Aducem ecuația de regresie liniară în formă de matrice

Его то мы и продифференцируем. На выходе получим вектор размерности Aducem ecuația de regresie liniară în formă de matrice:

Aducem ecuația de regresie liniară în formă de matrice

Что-то напоминает? Все верно! Это произведение матрицы Aducem ecuația de regresie liniară în formă de matrice на вектор Aducem ecuația de regresie liniară în formă de matrice.

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

În loc de concluzie

Теперь мы знаем, как получилось равенство Aducem ecuația de regresie liniară în formă de matrice.

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

Оценим качество модели в соответствии с методом наименьших квадратов:
Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice

Дифференцируем полученное выражение:
Aducem ecuația de regresie liniară în formă de matrice Aducem ecuația de regresie liniară în formă de matrice

Aducem ecuația de regresie liniară în formă de matrice

Literatură

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

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

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

1) Конспект лекций по высшей математике: полный курс / Д.Т. Письменный – 4-е изд. – М.: Айрис-пресс, 2006
2) Analiza de regresie aplicată / N. Draper, G. Smith - ed. a II-a. – M.: Finanțe și Statistică, 2 (traducere din engleză)
3) Задачи на решение матричных уравнений:
function-x.ru/matrix_equations.html
mathprofi.ru/deistviya_s_matricami.html


Sursa: www.habr.com

Adauga un comentariu