<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://neerc.ifmo.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=217.66.156.131&amp;*</id>
		<title>Викиконспекты - Вклад участника [ru]</title>
		<link rel="self" type="application/atom+xml" href="http://neerc.ifmo.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=217.66.156.131&amp;*"/>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/217.66.156.131"/>
		<updated>2026-05-17T04:56:05Z</updated>
		<subtitle>Вклад участника</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://neerc.ifmo.ru/wiki/index.php?title=%D0%9B%D0%B8%D0%BD%D0%B5%D0%B9%D0%BD%D0%B0%D1%8F_%D1%80%D0%B5%D0%B3%D1%80%D0%B5%D1%81%D1%81%D0%B8%D1%8F&amp;diff=70326</id>
		<title>Линейная регрессия</title>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%D0%9B%D0%B8%D0%BD%D0%B5%D0%B9%D0%BD%D0%B0%D1%8F_%D1%80%D0%B5%D0%B3%D1%80%D0%B5%D1%81%D1%81%D0%B8%D1%8F&amp;diff=70326"/>
				<updated>2019-03-11T15:30:58Z</updated>
		
		<summary type="html">&lt;p&gt;217.66.156.131: Решение МНК через сингулярное разложение&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Линейная регрессия''' (англ. ''linear regression'') — метод восстановления зависимости одной (объясняемой, зависимой) переменной &amp;lt;tex&amp;gt; y &amp;lt;/tex&amp;gt; от другой или нескольких других переменных (факторов, регрессоров, независимых переменных) &amp;lt;tex&amp;gt; x &amp;lt;/tex&amp;gt; с линейной функцией зависимости. Данный метод позволяет предсказывать значения зависимой переменной &amp;lt;tex&amp;gt; y &amp;lt;/tex&amp;gt; по значениям независимой переменной &amp;lt;tex&amp;gt; x &amp;lt;/tex&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
== Задача ==&lt;br /&gt;
&lt;br /&gt;
==== Дано ====&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tex&amp;gt; f_1(x), \dots ,f_n(x) &amp;lt;/tex&amp;gt; - числовые признаки&lt;br /&gt;
* модель многомерной линейной регрессии:&lt;br /&gt;
&amp;lt;center&amp;gt; &amp;lt;tex&amp;gt; f(x,\alpha) = \sum\limits_{j=1}^n \alpha_j f_j(x) &amp;lt;/tex&amp;gt;, &amp;lt;/center&amp;gt;&lt;br /&gt;
где &amp;lt;tex&amp;gt; a \in R^n &amp;lt;/tex&amp;gt;&lt;br /&gt;
* обучающая выборка: множество из пар &amp;lt;tex&amp;gt;(x_i, y_i)_{i=1 \dots n}&amp;lt;/tex&amp;gt;&lt;br /&gt;
* &amp;lt;tex&amp;gt; x_i &amp;lt;/tex&amp;gt; - объекты из множества &amp;lt;tex&amp;gt; X = R^n &amp;lt;/tex&amp;gt;&lt;br /&gt;
* &amp;lt;tex&amp;gt; y_i &amp;lt;/tex&amp;gt; - объекты из множества &amp;lt;tex&amp;gt; X = R &amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Матричные обозначения ====&lt;br /&gt;
&lt;br /&gt;
Перейдем к матричным обозначениям:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
\underset{l \times n}{F} = &lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
  f_1(x_1) &amp;amp; \dots &amp;amp; f_n(x_1) \\&lt;br /&gt;
  \dots &amp;amp; \dots &amp;amp; \dots \\&lt;br /&gt;
  f_n(x_1) &amp;amp; \dots &amp;amp; f_n(x_l)&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
,&lt;br /&gt;
&lt;br /&gt;
\underset{l \times 1}{y} = &lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
  y_1 \\&lt;br /&gt;
  \dots \\&lt;br /&gt;
  y_l&lt;br /&gt;
\end{pmatrix},&lt;br /&gt;
&lt;br /&gt;
\underset{n \times 1}{\alpha} = &lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
  \alpha_1 \\&lt;br /&gt;
  \dots \\&lt;br /&gt;
  \alpha_l&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
, где&lt;br /&gt;
* &amp;lt;tex&amp;gt; F &amp;lt;/tex&amp;gt; - матрица объектов-признаков, где строки соответствуют объектам а столбцы - признакам&lt;br /&gt;
* &amp;lt;tex&amp;gt; y &amp;lt;/tex&amp;gt; - вектор ответов, или целевой вектор&lt;br /&gt;
* &amp;lt;tex&amp;gt; \alpha &amp;lt;/tex&amp;gt; - вектор коэффициентов&lt;br /&gt;
&lt;br /&gt;
==== Постановка задачи ====&lt;br /&gt;
&lt;br /&gt;
В этих трех векторно-матричных обозначениях очень удобно расписать постановку задачи наименьших квадратов:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; Q(\alpha, X^l) = \sum\limits_{i=1}^n (f(x_i, \alpha) - y_i)^2 = || F\alpha - y ||^2 \rightarrow \underset{\alpha}{min} &amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Необходимо найти вектор &amp;lt;tex&amp;gt; \alpha &amp;lt;/tex&amp;gt; при известной матрице &amp;lt;tex&amp;gt; F &amp;lt;/tex&amp;gt; и известном вектор-столбце &amp;lt;tex&amp;gt; y &amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Решение ==&lt;br /&gt;
&lt;br /&gt;
=== Нормальная система уравнений ===&lt;br /&gt;
&lt;br /&gt;
Запишем необходимые условия минимума в матричном виде.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; \frac{\partial Q }{\partial \alpha } (\alpha) = 2F^T (F\alpha - y) = 0 &amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Отсюда следует нормальная система задачи МНК:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; F^T F \alpha = F^T y &amp;lt;/tex&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
где &amp;lt;tex&amp;gt; F^T F - n \times n &amp;lt;/tex&amp;gt; матрица&lt;br /&gt;
&lt;br /&gt;
Мы получили систему уравнений, откуда можем выразить искомый вектор &amp;lt;tex&amp;gt; \alpha &amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== Решение системы ====&lt;br /&gt;
&amp;lt;tex&amp;gt; \alpha^* = (F^T F)^{-1} F^T y = F^+ y &amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Значение функционала: &amp;lt;tex&amp;gt; Q(\alpha^*) = ||P_F y - y||^2 &amp;lt;/tex&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
где &amp;lt;tex&amp;gt; P_F = F F^+ = F (F^T F)^{-1} F^T &amp;lt;/tex&amp;gt; - ''проекционная матрица''&lt;br /&gt;
&lt;br /&gt;
==== Проблемы ====&lt;br /&gt;
&lt;br /&gt;
В случае мультиколлинеарности (столбцы матрицы &amp;lt;tex&amp;gt; F &amp;lt;/tex&amp;gt; линейно-зависимы) нам не удастся найти обратную матрицу к &amp;lt;tex&amp;gt; F^T F &amp;lt;/tex&amp;gt; (она будет вырождена).&lt;br /&gt;
&lt;br /&gt;
Если же столбцы матрицы &amp;lt;tex&amp;gt; F &amp;lt;/tex&amp;gt; почти линейно-зависимы, то у нас возникнет масса вычислительных проблем с обращением этой матрицы.&lt;br /&gt;
&lt;br /&gt;
=== Сингулярное разложение ===&lt;br /&gt;
&lt;br /&gt;
Воспользуемся понятием [https://ru.wikipedia.org/wiki/%D0%A1%D0%B8%D0%BD%D0%B3%D1%83%D0%BB%D1%8F%D1%80%D0%BD%D0%BE%D0%B5_%D1%80%D0%B0%D0%B7%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5/ сингулярного разложения ], которое позволяет произвольную прямоугольную матрицу представить в виде произведения трех матриц:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; F = V D U^T &amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Основные свойства сингулярного разложения:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tex&amp;gt; l \times n &amp;lt;/tex&amp;gt;-матрица &amp;lt;tex&amp;gt; V = (v_1, \dots, v_n) &amp;lt;/tex&amp;gt; ортогональна, &amp;lt;tex&amp;gt; V^T V = I_n &amp;lt;/tex&amp;gt;,  &amp;lt;br&amp;gt; столбцы &amp;lt;tex&amp;gt; v_j &amp;lt;/tex&amp;gt; — собственные векторы матрицы &amp;lt;tex&amp;gt; F F^T &amp;lt;/tex&amp;gt;;&lt;br /&gt;
* &amp;lt;tex&amp;gt; n \times n &amp;lt;/tex&amp;gt;-матрица &amp;lt;tex&amp;gt; U = (u_1, \dots, u_n) &amp;lt;/tex&amp;gt; ортогональна, &amp;lt;tex&amp;gt; U^T U = I_n &amp;lt;/tex&amp;gt;, &amp;lt;br&amp;gt; столбцы &amp;lt;tex&amp;gt; u_j &amp;lt;/tex&amp;gt; — собственные векторы матриц &amp;lt;tex&amp;gt; F^T F &amp;lt;/tex&amp;gt;;&lt;br /&gt;
* &amp;lt;tex&amp;gt; n \times n &amp;lt;/tex&amp;gt;-матрица &amp;lt;tex&amp;gt; D &amp;lt;/tex&amp;gt; диагональна, &amp;lt;tex&amp;gt; D = diag(\sqrt{\lambda_1}, \dots, \sqrt{\lambda_n}) &amp;lt;/tex&amp;gt;, &amp;lt;br&amp;gt; &amp;lt;tex&amp;gt; \lambda_j \geq 0 &amp;lt;/tex&amp;gt; — собственные значения матриц &amp;lt;tex&amp;gt; F^T F &amp;lt;/tex&amp;gt; и &amp;lt;tex&amp;gt; F F^T &amp;lt;/tex&amp;gt;, &amp;lt;br&amp;gt; &amp;lt;tex&amp;gt; \sqrt{ \lambda_j } &amp;lt;/tex&amp;gt; — сингулярные числа матрицы &amp;lt;tex&amp;gt; F &amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Решение МНК через сингулярное разложение ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; F^+ = (U D V^T V D U^T)^{-1} U D V^T = U D^{-1} V^T = \sum\limits_{j=1}^n \frac{ 1 }{ \sqrt{ \lambda_j } } u_j v_j &amp;lt;/tex&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; \alpha^* = F^+ y = U D^{-1} V^T y = \sum\limits_{j=1}^n \frac{ 1 }{ \sqrt{ \lambda_j } } u_j (v_j^T y) &amp;lt;/tex&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; F \alpha^* = P_F y = (V D U^T) U D^{-1} V^T y = V V^T y = \sum\limits_{j=1}^n v_j (v_j^T y) &amp;lt;/tex&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; || \alpha^* ||^2 = ||D^{-1} V^T y||^2 = \sum\limits_{j=1}^n \frac{ 1 }{ \lambda_j } (v_j^T y)^2 &amp;lt;/tex&amp;gt;.&lt;/div&gt;</summary>
		<author><name>217.66.156.131</name></author>	</entry>

	<entry>
		<id>http://neerc.ifmo.ru/wiki/index.php?title=%D0%9B%D0%B8%D0%BD%D0%B5%D0%B9%D0%BD%D0%B0%D1%8F_%D1%80%D0%B5%D0%B3%D1%80%D0%B5%D1%81%D1%81%D0%B8%D1%8F&amp;diff=70320</id>
		<title>Линейная регрессия</title>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%D0%9B%D0%B8%D0%BD%D0%B5%D0%B9%D0%BD%D0%B0%D1%8F_%D1%80%D0%B5%D0%B3%D1%80%D0%B5%D1%81%D1%81%D0%B8%D1%8F&amp;diff=70320"/>
				<updated>2019-03-11T15:13:57Z</updated>
		
		<summary type="html">&lt;p&gt;217.66.156.131: /* Решение */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Линейная регрессия''' (англ. ''linear regression'') — метод восстановления зависимости одной (объясняемой, зависимой) переменной &amp;lt;tex&amp;gt; y &amp;lt;/tex&amp;gt; от другой или нескольких других переменных (факторов, регрессоров, независимых переменных) &amp;lt;tex&amp;gt; x &amp;lt;/tex&amp;gt; с линейной функцией зависимости. Данный метод позволяет предсказывать значения зависимой переменной &amp;lt;tex&amp;gt; y &amp;lt;/tex&amp;gt; по значениям независимой переменной &amp;lt;tex&amp;gt; x &amp;lt;/tex&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
== Задача ==&lt;br /&gt;
&lt;br /&gt;
==== Дано ====&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tex&amp;gt; f_1(x), \dots ,f_n(x) &amp;lt;/tex&amp;gt; - числовые признаки&lt;br /&gt;
* модель многомерной линейной регрессии:&lt;br /&gt;
&amp;lt;center&amp;gt; &amp;lt;tex&amp;gt; f(x,\alpha) = \sum\limits_{j=1}^n \alpha_j f_j(x) &amp;lt;/tex&amp;gt;, &amp;lt;/center&amp;gt;&lt;br /&gt;
где &amp;lt;tex&amp;gt; a \in R^n &amp;lt;/tex&amp;gt;&lt;br /&gt;
* обучающая выборка: множество из пар &amp;lt;tex&amp;gt;(x_i, y_i)_{i=1 \dots n}&amp;lt;/tex&amp;gt;&lt;br /&gt;
* &amp;lt;tex&amp;gt; x_i &amp;lt;/tex&amp;gt; - объекты из множества &amp;lt;tex&amp;gt; X = R^n &amp;lt;/tex&amp;gt;&lt;br /&gt;
* &amp;lt;tex&amp;gt; y_i &amp;lt;/tex&amp;gt; - объекты из множества &amp;lt;tex&amp;gt; X = R &amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Матричные обозначения ====&lt;br /&gt;
&lt;br /&gt;
Перейдем к матричным обозначениям:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
\underset{l \times n}{F} = &lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
  f_1(x_1) &amp;amp; \dots &amp;amp; f_n(x_1) \\&lt;br /&gt;
  \dots &amp;amp; \dots &amp;amp; \dots \\&lt;br /&gt;
  f_n(x_1) &amp;amp; \dots &amp;amp; f_n(x_l)&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
,&lt;br /&gt;
&lt;br /&gt;
\underset{l \times 1}{y} = &lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
  y_1 \\&lt;br /&gt;
  \dots \\&lt;br /&gt;
  y_l&lt;br /&gt;
\end{pmatrix},&lt;br /&gt;
&lt;br /&gt;
\underset{n \times 1}{\alpha} = &lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
  \alpha_1 \\&lt;br /&gt;
  \dots \\&lt;br /&gt;
  \alpha_l&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
, где&lt;br /&gt;
* &amp;lt;tex&amp;gt; F &amp;lt;/tex&amp;gt; - матрица объектов-признаков, где строки соответствуют объектам а столбцы - признакам&lt;br /&gt;
* &amp;lt;tex&amp;gt; y &amp;lt;/tex&amp;gt; - вектор ответов, или целевой вектор&lt;br /&gt;
* &amp;lt;tex&amp;gt; \alpha &amp;lt;/tex&amp;gt; - вектор коэффициентов&lt;br /&gt;
&lt;br /&gt;
==== Постановка задачи ====&lt;br /&gt;
&lt;br /&gt;
В этих трех векторно-матричных обозначениях очень удобно расписать постановку задачи наименьших квадратов:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; Q(\alpha, X^l) = \sum\limits_{i=1}^n (f(x_i, \alpha) - y_i)^2 = || F\alpha - y ||^2 \rightarrow \underset{\alpha}{min} &amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Необходимо найти вектор &amp;lt;tex&amp;gt; \alpha &amp;lt;/tex&amp;gt; при известной матрице &amp;lt;tex&amp;gt; F &amp;lt;/tex&amp;gt; и известном вектор-столбце &amp;lt;tex&amp;gt; y &amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Решение ==&lt;br /&gt;
&lt;br /&gt;
=== Нормальная система уравнений ===&lt;br /&gt;
&lt;br /&gt;
Запишем необходимые условия минимума в матричном виде.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; \frac{\partial Q }{\partial \alpha } (\alpha) = 2F^T (F\alpha - y) = 0 &amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Отсюда следует нормальная система задачи МНК:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; F^T F \alpha = F^T y &amp;lt;/tex&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
где &amp;lt;tex&amp;gt; F^T F - n \times n &amp;lt;/tex&amp;gt; матрица&lt;br /&gt;
&lt;br /&gt;
Мы получили систему уравнений, откуда можем выразить искомый вектор &amp;lt;tex&amp;gt; \alpha &amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== Решение системы ====&lt;br /&gt;
&amp;lt;tex&amp;gt; \alpha^* = (F^T F)^{-1} F^T y = F^+ y &amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Значение функционала: &amp;lt;tex&amp;gt; Q(\alpha^*) = ||P_F y - y||^2 &amp;lt;/tex&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
где &amp;lt;tex&amp;gt; P_F = F F^+ = F (F^T F)^{-1} F^T &amp;lt;/tex&amp;gt; - ''проекционная матрица''&lt;br /&gt;
&lt;br /&gt;
==== Проблемы ====&lt;br /&gt;
&lt;br /&gt;
В случае мультиколлинеарности (столбцы матрицы &amp;lt;tex&amp;gt; F &amp;lt;/tex&amp;gt; линейно-зависимы) нам не удастся найти обратную матрицу к &amp;lt;tex&amp;gt; F^T F &amp;lt;/tex&amp;gt; (она будет вырождена).&lt;br /&gt;
&lt;br /&gt;
Если же столбцы матрицы &amp;lt;tex&amp;gt; F &amp;lt;/tex&amp;gt; почти линейно-зависимы, то у нас возникнет масса вычислительных проблем с обращением этой матрицы.&lt;br /&gt;
&lt;br /&gt;
=== Сингулярное разложение ===&lt;br /&gt;
&lt;br /&gt;
Воспользуемся понятием [https://ru.wikipedia.org/wiki/%D0%A1%D0%B8%D0%BD%D0%B3%D1%83%D0%BB%D1%8F%D1%80%D0%BD%D0%BE%D0%B5_%D1%80%D0%B0%D0%B7%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5/ сингулярного разложения ], которое позволяет произвольную прямоугольную матрицу представить в виде произведения трех матриц:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; F = V D U^T &amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Основные свойства сингулярного разложения:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tex&amp;gt; l \times n &amp;lt;/tex&amp;gt;-матрица &amp;lt;tex&amp;gt; V = (v_1, \dots, v_n) &amp;lt;/tex&amp;gt; ортогональна, &amp;lt;tex&amp;gt; V^T V = I_n &amp;lt;/tex&amp;gt;,  &amp;lt;br&amp;gt; столбцы &amp;lt;tex&amp;gt; v_j &amp;lt;/tex&amp;gt; — собственные векторы матрицы &amp;lt;tex&amp;gt; F F^T &amp;lt;/tex&amp;gt;;&lt;br /&gt;
* &amp;lt;tex&amp;gt; n \times n &amp;lt;/tex&amp;gt;-матрица &amp;lt;tex&amp;gt; U = (u_1, \dots, u_n) &amp;lt;/tex&amp;gt; ортогональна, &amp;lt;tex&amp;gt; U^T U = I_n &amp;lt;/tex&amp;gt;, &amp;lt;br&amp;gt; столбцы &amp;lt;tex&amp;gt; u_j &amp;lt;/tex&amp;gt; — собственные векторы матриц &amp;lt;tex&amp;gt; F^T F &amp;lt;/tex&amp;gt;;&lt;br /&gt;
* &amp;lt;tex&amp;gt; n \times n &amp;lt;/tex&amp;gt;-матрица &amp;lt;tex&amp;gt; D &amp;lt;/tex&amp;gt; диагональна, &amp;lt;tex&amp;gt; D = diag(\sqrt{\lambda_1}, \dots, \sqrt{\lambda_n}) &amp;lt;/tex&amp;gt;, &amp;lt;br&amp;gt; &amp;lt;tex&amp;gt; \lambda_j \geq 0 &amp;lt;/tex&amp;gt; — собственные значения матриц &amp;lt;tex&amp;gt; F^T F &amp;lt;/tex&amp;gt; и &amp;lt;tex&amp;gt; F F^T &amp;lt;/tex&amp;gt;, &amp;lt;br&amp;gt; &amp;lt;tex&amp;gt; \sqrt{ \lambda_j } &amp;lt;/tex&amp;gt; — сингулярные числа матрицы &amp;lt;tex&amp;gt; F &amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Решение МНК через сингулярное разложение ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; F^+ = (U D V^T V D U^T)^{-1} U D V^T = U D^{-1} V^T = &amp;lt;/tex&amp;gt;&lt;/div&gt;</summary>
		<author><name>217.66.156.131</name></author>	</entry>

	<entry>
		<id>http://neerc.ifmo.ru/wiki/index.php?title=%D0%9B%D0%B8%D0%BD%D0%B5%D0%B9%D0%BD%D0%B0%D1%8F_%D1%80%D0%B5%D0%B3%D1%80%D0%B5%D1%81%D1%81%D0%B8%D1%8F&amp;diff=70319</id>
		<title>Линейная регрессия</title>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%D0%9B%D0%B8%D0%BD%D0%B5%D0%B9%D0%BD%D0%B0%D1%8F_%D1%80%D0%B5%D0%B3%D1%80%D0%B5%D1%81%D1%81%D0%B8%D1%8F&amp;diff=70319"/>
				<updated>2019-03-11T15:11:28Z</updated>
		
		<summary type="html">&lt;p&gt;217.66.156.131: /* Сингулярное разложение */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Линейная регрессия''' (англ. ''linear regression'') — метод восстановления зависимости одной (объясняемой, зависимой) переменной &amp;lt;tex&amp;gt; y &amp;lt;/tex&amp;gt; от другой или нескольких других переменных (факторов, регрессоров, независимых переменных) &amp;lt;tex&amp;gt; x &amp;lt;/tex&amp;gt; с линейной функцией зависимости. Данный метод позволяет предсказывать значения зависимой переменной &amp;lt;tex&amp;gt; y &amp;lt;/tex&amp;gt; по значениям независимой переменной &amp;lt;tex&amp;gt; x &amp;lt;/tex&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
== Задача ==&lt;br /&gt;
&lt;br /&gt;
==== Дано ====&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tex&amp;gt; f_1(x), \dots ,f_n(x) &amp;lt;/tex&amp;gt; - числовые признаки&lt;br /&gt;
* модель многомерной линейной регрессии:&lt;br /&gt;
&amp;lt;center&amp;gt; &amp;lt;tex&amp;gt; f(x,\alpha) = \sum\limits_{j=1}^n \alpha_j f_j(x) &amp;lt;/tex&amp;gt;, &amp;lt;/center&amp;gt;&lt;br /&gt;
где &amp;lt;tex&amp;gt; a \in R^n &amp;lt;/tex&amp;gt;&lt;br /&gt;
* обучающая выборка: множество из пар &amp;lt;tex&amp;gt;(x_i, y_i)_{i=1 \dots n}&amp;lt;/tex&amp;gt;&lt;br /&gt;
* &amp;lt;tex&amp;gt; x_i &amp;lt;/tex&amp;gt; - объекты из множества &amp;lt;tex&amp;gt; X = R^n &amp;lt;/tex&amp;gt;&lt;br /&gt;
* &amp;lt;tex&amp;gt; y_i &amp;lt;/tex&amp;gt; - объекты из множества &amp;lt;tex&amp;gt; X = R &amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Матричные обозначения ====&lt;br /&gt;
&lt;br /&gt;
Перейдем к матричным обозначениям:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
\underset{l \times n}{F} = &lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
  f_1(x_1) &amp;amp; \dots &amp;amp; f_n(x_1) \\&lt;br /&gt;
  \dots &amp;amp; \dots &amp;amp; \dots \\&lt;br /&gt;
  f_n(x_1) &amp;amp; \dots &amp;amp; f_n(x_l)&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
,&lt;br /&gt;
&lt;br /&gt;
\underset{l \times 1}{y} = &lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
  y_1 \\&lt;br /&gt;
  \dots \\&lt;br /&gt;
  y_l&lt;br /&gt;
\end{pmatrix},&lt;br /&gt;
&lt;br /&gt;
\underset{n \times 1}{\alpha} = &lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
  \alpha_1 \\&lt;br /&gt;
  \dots \\&lt;br /&gt;
  \alpha_l&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
, где&lt;br /&gt;
* &amp;lt;tex&amp;gt; F &amp;lt;/tex&amp;gt; - матрица объектов-признаков, где строки соответствуют объектам а столбцы - признакам&lt;br /&gt;
* &amp;lt;tex&amp;gt; y &amp;lt;/tex&amp;gt; - вектор ответов, или целевой вектор&lt;br /&gt;
* &amp;lt;tex&amp;gt; \alpha &amp;lt;/tex&amp;gt; - вектор коэффициентов&lt;br /&gt;
&lt;br /&gt;
==== Постановка задачи ====&lt;br /&gt;
&lt;br /&gt;
В этих трех векторно-матричных обозначениях очень удобно расписать постановку задачи наименьших квадратов:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; Q(\alpha, X^l) = \sum\limits_{i=1}^n (f(x_i, \alpha) - y_i)^2 = || F\alpha - y ||^2 \rightarrow \underset{\alpha}{min} &amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Необходимо найти вектор &amp;lt;tex&amp;gt; \alpha &amp;lt;/tex&amp;gt; при известной матрице &amp;lt;tex&amp;gt; F &amp;lt;/tex&amp;gt; и известном вектор-столбце &amp;lt;tex&amp;gt; y &amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Решение ==&lt;br /&gt;
&lt;br /&gt;
=== Нормальная система уравнений ===&lt;br /&gt;
&lt;br /&gt;
Запишем необходимые условия минимума в матричном виде.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; \frac{\partial Q }{\partial \alpha } (\alpha) = 2F^T (F\alpha - y) = 0 &amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Отсюда следует нормальная система задачи МНК:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; F^T F \alpha = F^T y &amp;lt;/tex&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
где &amp;lt;tex&amp;gt; F^T F - n \times n &amp;lt;/tex&amp;gt; матрица&lt;br /&gt;
&lt;br /&gt;
Мы получили систему уравнений, откуда можем выразить искомый вектор &amp;lt;tex&amp;gt; \alpha &amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== Решение системы ====&lt;br /&gt;
&amp;lt;tex&amp;gt; \alpha^* = (F^T F)^{-1} F^T y = F^+ y &amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Значение функционала: &amp;lt;tex&amp;gt; Q(\alpha^*) = ||P_F y - y||^2 &amp;lt;/tex&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
где &amp;lt;tex&amp;gt; P_F = F F^+ = F (F^T F)^{-1} F^T &amp;lt;/tex&amp;gt; - ''проекционная матрица''&lt;br /&gt;
&lt;br /&gt;
==== Проблемы ====&lt;br /&gt;
&lt;br /&gt;
В случае мультиколлинеарности (столбцы матрицы &amp;lt;tex&amp;gt; F &amp;lt;/tex&amp;gt; линейно-зависимы) нам не удастся найти обратную матрицу к &amp;lt;tex&amp;gt; F^T F &amp;lt;/tex&amp;gt; (она будет вырождена).&lt;br /&gt;
&lt;br /&gt;
Если же столбцы матрицы &amp;lt;tex&amp;gt; F &amp;lt;/tex&amp;gt; почти линейно-зависимы, то у нас возникнет масса вычислительных проблем с обращением этой матрицы.&lt;br /&gt;
&lt;br /&gt;
=== Сингулярное разложение ===&lt;br /&gt;
&lt;br /&gt;
Воспользуемся понятием [https://ru.wikipedia.org/wiki/%D0%A1%D0%B8%D0%BD%D0%B3%D1%83%D0%BB%D1%8F%D1%80%D0%BD%D0%BE%D0%B5_%D1%80%D0%B0%D0%B7%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5/ сингулярного разложения ], которое позволяет произвольную прямоугольную матрицу представить в виде произведения трех матриц:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt; F = V D U^T &amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Основные свойства сингулярного разложения:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tex&amp;gt; l \times n &amp;lt;/tex&amp;gt;-матрица &amp;lt;tex&amp;gt; V = (v_1, \dots, v_n) &amp;lt;/tex&amp;gt; ортогональна, &amp;lt;tex&amp;gt; V^T V = I_n &amp;lt;/tex&amp;gt;,  &amp;lt;br&amp;gt; столбцы &amp;lt;tex&amp;gt; v_j &amp;lt;/tex&amp;gt; — собственные векторы матрицы &amp;lt;tex&amp;gt; F F^T &amp;lt;/tex&amp;gt;;&lt;br /&gt;
* &amp;lt;tex&amp;gt; n \times n &amp;lt;/tex&amp;gt;-матрица &amp;lt;tex&amp;gt; U = (u_1, \dots, u_n) &amp;lt;/tex&amp;gt; ортогональна, &amp;lt;tex&amp;gt; U^T U = I_n &amp;lt;/tex&amp;gt;, &amp;lt;br&amp;gt; столбцы &amp;lt;tex&amp;gt; u_j &amp;lt;/tex&amp;gt; — собственные векторы матриц &amp;lt;tex&amp;gt; F^T F &amp;lt;/tex&amp;gt;;&lt;br /&gt;
* &amp;lt;tex&amp;gt; n \times n &amp;lt;/tex&amp;gt;-матрица &amp;lt;tex&amp;gt; D &amp;lt;/tex&amp;gt; диагональна, &amp;lt;tex&amp;gt; D = diag(\sqrt{\lambda_1}, \dots, \sqrt{\lambda_n}) &amp;lt;/tex&amp;gt;, &amp;lt;br&amp;gt; &amp;lt;tex&amp;gt; \lambda_j \geq 0 &amp;lt;/tex&amp;gt; — собственные значения матриц &amp;lt;tex&amp;gt; F^T F &amp;lt;/tex&amp;gt; и &amp;lt;tex&amp;gt; F F^T &amp;lt;/tex&amp;gt;, &amp;lt;br&amp;gt; &amp;lt;tex&amp;gt; \sqrt{ \lambda_j } &amp;lt;/tex&amp;gt; — сингулярные числа матрицы &amp;lt;tex&amp;gt; F &amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Решение МНК через сингулярное разложение ===&lt;/div&gt;</summary>
		<author><name>217.66.156.131</name></author>	</entry>

	</feed>