[ЗАСТАВКА] Какую еще нерешаемую задачу можно решить при помощи метода наименьших квадратов? Давайте выпишем нерешаемую систему линейных уравнений. Мы помним, что если переменных меньше, чем уравнений, такая задача, скорее всего, не решается. Если матрица — неквадратная матрица (прямоугольная матрица), в которой строк больше, чем столбцов общего вида, то такую задачу мы решить не сможем. Давайте попробуем. Что можно сделать в этом случае? Давайте выпишем нерешаемую систему уравнений, например вот такую. Ее решить невозможно, мы это проходили, мы это обсудили на лекции про решение систем линейных уравнений. А нам нужно ее решить, а у нас из жизни возникла такая система линейных уравнений. Что будем делать? Как можно при помощи метода наименьших квадратов попробовать выйти из этой ситуации с наименьшими потерями. Ключевой момент — с наименьшими потерями. Давайте найдем не решение этой задачи — решение мы не найдем. Давайте найдем такое решение, отклонение которого минимально. Давайте найдем такой вектор x, при котором... такой набор значений переменных x, при котором отклонение левой части от правой части будет наименьшим. Итак, у нас есть вектор b — правая часть уравнения, и вектор Ax. Мы рассматриваем вектор b − Ax — это вектор «ошибки». Для каждого вектора x мы можем посмотреть, насколько он не подходит, насколько велик вектор b − Ax. Мы хотим, чтоб этот вектор был самым маленьким, каким возможно, чтобы длина этого вектора была минимальной. Длина? О чем мы говорим? Что значит «длина вектора»? Ну, длину вектора можно вводить по-разному, но когда мы говорили про векторы еще в школе, мы говорили, что длина вектора — это корень из суммы квадрата координат. Давайте забудем про корень, а просто будем минимизировать сумму квадратов координат, потому что корень — это монотонная функция. Чем больше значение суммы квадратов координат, тем больше корень. Если сумма квадратов координат одного вектора больше, чем сумма квадратов координат другого вектора, то и длина этого вектора больше, про корень можно забыть, не морочить им себе голову, просто чтобы были проще вычисления. Я хочу заметить, раз уж мы проходили билинейные квадратичные формы, что сумма квадратов координат — это квадратичная форма. И, в общем-то, это самая простая квадратичная форма, которая нам встречалась — это скалярное произведение вектора на себя. Действительно, если мы умножим на себя вектор с координатами x1, x2,..., xn скалярно, то получится в результате вектор x1 квадрат + x2 квадрат +... + xn квадрат. Впрочем, это мы знали еще в школе: что если вектор скалярно умножить на себя, то получится квадрат длины, ведь скалярное произведение двух векторов — это модуль одного вектора умножить на модуль другого вектора умножить на косинус угла между ними. Косинус нуля равен единице, значит, умножая вектор на себя, мы получим просто квадрат длины этого вектора. Итак, если мы запишем скалярное произведение так, как мы обычно записываем квадратичную форму... Мы помним, что у скалярного произведения матрица квадратичной формы просто единичная, значит, ее можно не писать. Итак, скалярное произведение вектора на себя — это будет произведение двух матриц: x транспонированная умножить на x, где x — это просто вектор-столбец. Мы взяли из вектора-столбца сделали строчку, умножили ее на столбец, получили число. Это число как раз и есть сумма квадратов координат вектора. Нас интересовал не просто какой-нибудь вектор x, нас интересовал вектор «ошибок» — b − Ax. Итак, мы вектор b − Ax скалярно умножаем на себя и хотим, чтобы значение этого скалярного произведения было минимальным. Итак, мы хотим найти минимум этого скалярного произведения. Что такое «минимум»? Что нам дано, а что мы ищем? Когда мы решали предыдущую задачу, данные xi, yi нам были даны, и мы искали параметры a и b. В нашем случае, помните, мы решаем систему линейный уравнений, которая, правда, не имеет решения. Нам дана матрица A, дан вектор b, и мы ищем вектор x, при котором вот это вот скалярное произведение вектора Ax − b на вектор Ax − b было бы минимальным. Итак, как решать такую задачу? Вообще решается ли она? Да, именно эта задача решается. Смотрите, мы опять ищем минимум некоторой функции. Функция квадратичная — ничего сложнее, чем квадрат в ней не содержится, опять нужно будет дифференцировать по каким-то переменным. Впрочем, когда мы ищем минимум квадратичной функции, можно воспользоваться и тем, где находится минимум у параболы, это мы еще хорошо знаем из школы. Я хочу просто выписать решение этой системы. Решение... ну так почти всегда можно делать. Ну, когда мы используем выражение «обратная матрица», мы предполагаем, что некоторая матрица не вырождена, а мы про матрицу A ничего такого не хотели. Однако если немножко поработать над матрицей A, сделать, чтобы она не содержала лишних строк, выкинуть все зависимые строки и убрать все несущественные переменные, тогда матрица A транспонированная умножить на A станет обратимой. Кстати, матрица A не была квадратной, она была прямоугольной. Ни у какой прямоугольной матрицы мы не можем найти обратную. Как же так? Как мы ищем обратную матрицу к произведению A транспонированная умножить на A? Все хорошо. Это матрица A — прямоугольная, а матрица A транспонированная умножить на A — все-таки квадратная. Она содержит столько строк, сколько было в матрице A транспонированная, и столько столбцов, сколько в матрице A. Столбцов в матрице A и строк в матрице A транспонированная одинаковое количество, это ровно они и есть. Строки матрицы A транспонированная — это и есть столбцы матрицы A. Итак, вот такое выражение, вот такой вектор не даст решение системы, линейной системы, которое было с самого начала. Та линейная система не решается, это известно раз и навсегда. Однако ошибка для этого вектора, ошибка в решении системы будет минимальной. Давайте решим вот эту систему линейных уравнений, которую мы выписали с самого начала. Здесь две неизвестных и три уравнения — эта система не решается. Однако мы можем найти вектор, мы находим вектор, при котором решение этой системы... при котором ошибка минимальна, при котором левая часть отличается от правой части на минимальное возможное значение. Нет никаких других векторов, при котором ответ получится лучше. Какой другой вектор x мы ни возьмем, разница между левой частью и правой частью будет больше. [ЗАСТАВКА] [ЗАСТАВКА]