Что такое обратная матрица
hard

Что такое обратная матрица

Сложная тема из линейной алгебры.

Недавно мы начали говорить о линейной алгебре и матрицах. Сначала всё было хорошо и легко: 

Но начав заниматься линейной алгеброй, бывает трудно остановиться. Сегодня мы познакомимся с обратной матрицей и научимся её вычислять. Это навык, который в будущем нам пригодится для решения матричных уравнений.

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

Читать ли эту статью?

❌ Если вам нужны простые быстрые решения для жизни — нет, можно объявить, что у вас сегодня выходной. 

✅ Если вашему мозгу не хватает вызова и новых горизонтов — велком ту зе матрикс. 

Обратное — это как? 

В математике есть взаимно обратные числа. Они получаются так: вы берёте какое-то число, добавляете отрицательную степень и получаете обратное число: 

Что такое обратная матрица

Обратные числа при умножении друг на друга всегда дают единицу:

Что такое обратная матрица

Что такое обратная матрица

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

Что такое обратная матрица

Единичная матрица работает как единица с числами: если умножить любое число на единицу, получится исходное число; если умножить любую матрицу на единичную матрицу — получится исходная матрица:

Что такое обратная матрица

Единичная матрица состоит из единиц и нулей: на диагонали находятся единицы; остальные элементы — нули. Единичные матрицы не используются при расчёте обратных матриц, но без них не получится решать матричные уравнения.

Пример квадратной единичной матрицы размером 5×5
Пример квадратной единичной матрицы размером 5×5. Единичная матрица может быть любого размера — состоять из любого количества строк и столбцов

Как рассчитать обратную матрицу

Для расчёта обратной матрицы нужно выполнить три действия. Пока что не обращайте внимание на термины:

  1. Разделить единицу на матричный определитель. 
  2. Найти транспонированную матрицу алгебраических дополнений. 
  3. Перемножить полученные значения.

Далее мы по порядку во всём разберёмся.

Формула расчёта обратной матрицы
Формула расчёта обратной матрицы: |A| — матричный определитель; Aᵀᵢⱼ — матрица алгебраических дополнений

Первое действие: делим единицу на матричный определитель

Определитель — это особое число, которое «определяет» свойства матрицы. 

Порядок вычисления определителя зависит от размера матрицы, которому он соответствует — чем больше матрица, тем сложнее считать определитель. Мы только знакомимся с матрицами, поэтому остановимся на определителях второго и третьего порядка — они подходят для квадратных матриц размером 2×2 и 3×3. 

Чтобы найти определитель второго порядка, нам достаточно умножить элементы главной диагонали и вычесть из значения произведение чисел второй диагонали.

Формула для расчёта определителя второго порядка
Формула для расчёта определителя второго порядка
Пример расчёта определителя второго порядка
Пример расчёта определителя второго порядка

Определитель третьего порядка находится путём умножения диагоналей на треугольники. Здесь много операций, поэтому формулу соберём по частям. 

Сначала работаем по главной диагонали: идём от верхнего левого элемента и движемся к правому нижнему элементу. Перемножаем элементы между собой.

Считаем определитель третьего порядка: 1-й этап — главная диагональ
Считаем определитель третьего порядка: 1-й этап — главная диагональ

Прибавляем к произведению элементов первой диагонали произведение первого треугольника. Основание первого треугольника находится параллельно главной диагонали и состоит из элементов А₂₁ и А₃₂. Вершина — элементА₁₃.

Считаем определитель третьего порядка: 2-й этап — первый треугольник
Считаем определитель третьего порядка: 2-й этап — первый треугольник

Прибавляем к полученному результату произведение второго треугольника, в котором основание состоит из элементов А₁₂ и А₂₃, а вершина — А₃₁.

Считаем определитель третьего порядка: 3-й этап — второй треугольник
Считаем определитель третьего порядка: 3-й этап — второй треугольник

Вычитаем из полученного значения произведение элементов второй диагонали. Вторая диагональ начинается в левом нижнем углу и идёт в правый верхний угол.

Считаем определитель третьего порядка: 4-й этап — вторая диагональ
Считаем определитель третьего порядка: 4-й этап — вторая диагональ

Вычитаем произведение элементов третьего треугольника, в котором основание — элементы А₁₂ и А₂₁, а вершина — А₃₃.

Считаем определитель третьего порядка: 5-й этап — третий треугольник
Считаем определитель третьего порядка: 5-й этап — третий треугольник

Последний шаг: вычитаем произведение четвёртого треугольника, с основанием из элементов А₂₃ и А₃₂ и вершиной А₁₁.

Считаем определитель третьего порядка: 6-й этап — четвёртый треугольник
Считаем определитель третьего порядка: 6-й этап — четвёртый треугольник
Общий вид формулы для расчёта определителя третьего порядка
Общий вид формулы для расчёта определителя третьего порядка
Пример расчёта определителя третьего порядка
Пример расчёта определителя третьего порядка

Второе действие: находим транспонированную матрицу алгебраических дополнений

Транспонированная матрица алгебраических дополнений вычисляется в три шага: 

  1. Мы из исходной матрицы находим матрицу миноров. 
  2. Меняем в матрице миноров знак некоторых элементов и получаем матрицу алгебраических дополнений. 
  3. Находим транспонированную матрицу из матрицы алгебраических дополнений. 

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

Чтобы найти матрицу миноров второго порядка, нам нужно последовательно зачеркнуть три элемента исходной матрицы: 

  • Вычёркиваем первую строку и первый столбец исходной матрицы — получаем первый элемент первой строки матрицы миноров. 
  • Вычёркиваем первую строку и второй столбец — получаем второй элемент первой строки матрицы миноров. 
  • Вычёркиваем вторую строку и первый столбец — получаем первый элемент второй строки матрицы миноров. 
  • Вычёркиваем вторую строку и второй столбец — получаем второй элемент второй строки матрицы миноров. 

Когда матрица миноров составлена — меняем знаки элементов второй диагонали и получаем матрицу алгебраических дополнений. Теперь берём эту матрицу и проводим транспонирование — меняем расположение строк и столбцов. Готово.

Пример вычисления матрицы миноров из матрицы второго порядка
Пример вычисления матрицы миноров из матрицы второго порядка
Пример вычисления матрицы алгебраических дополнений (Aᵢⱼ ) из матрицы миноров второго порядка
Пример вычисления матрицы алгебраических дополнений (Aᵢⱼ ) из матрицы миноров второго порядка
Пример вычисления транспонированной матрицы алгебраических дополнений (Aᵀᵢⱼ), полученной из матрицы миноров второго порядка
Пример вычисления транспонированной матрицы алгебраических дополнений (Aᵀᵢⱼ), полученной из матрицы миноров второго порядка

Матрица миноров третьего порядка рассчитывается по следующему принципу: 

  1. Последовательно вычёркиваем строки и столбцы. 
  2. Получаем четыре элемента и считаем определитель. 
  3. Записываем результат в матрицу миноров третьего порядка. 

Чтобы не запоминать порядок вычёркивания элементов — попробуйте схему: 

  1. Определите элемент, который вы ищете для матрицы. Пусть это будет A₁₁.
  2. Найдите этот же элемент в исходной матрице и отметьте его точкой. 
  3. Проведите от этой точки две линии: вдоль строки и вдоль столбца. 

После вычёркивания останется квадратная двухразмерная матрица, определитель которой равен разности произведений двух диагоналей.

Пример вычисления первого элемента матрицы миноров из матрицы третьего порядка. Треугольник, или греческая дельта, — это обозначение определителя вне матрицы
Пример вычисления первого элемента матрицы миноров из матрицы третьего порядка. Треугольник, или греческая дельта, — это обозначение определителя вне матрицы

Матрицу миноров третьего порядка удобно находить на бумаге с помощью ручки, карандаша и ластика — записываете исходную матрицу, карандашом вычёркиваете линии, считаете определитель, вытираете линии и повторяете процедуру. Рекомендуем попробовать и сверить результат с нашими расчётами. 

1-я строка 1-й элемент:  

Δ = 5×1 - 8×6 = -43

1-я строка 2-й элемент: 

Δ = 4×1 - 7×6 = -38

1-я строка 3-й элемент: 

Δ = 4×8 - 7×5 = -3

2-я строка 1-й элемент: 

Δ = 2×1 - 8×3 = -22

2-я строка 2-й элемент: 

Δ = 1×1 - 7×3 = -20

2-я строка 3-й элемент: 

Δ = 1×8 - 7×2 = -6

3-я строка 1-й элемент: 

Δ = 2×6 - 5×3 = -3

3-я строка 2-й элемент: 

Δ = 1×6 - 4×3 = -6

3-я строка 3-й элемент: 

Δ = 1×5 - 4×2 = -3

Считаем матрицу алгебраических дополнений: берём матрицу миноров и меняем на противоположный знак в четырёх элементах — изменяем А₁₂, А₂₁, А₂₃ и А₃₂. Транспонируем полученную матрицу и можем переходить к последнему действию.

Получаем из матрицы третьего порядка матрицу миноров
Получаем из матрицы третьего порядка матрицу миноров
Меняем знаки в матрице миноров и получаем матрицу алгебраических дополнений (Aᵢⱼ)
Меняем знаки в матрице миноров и получаем матрицу алгебраических дополнений (Aᵢⱼ)
Пример вычисления транспонированной матрицы алгебраических дополнений (Aᵀᵢⱼ), полученной из матрицы миноров третьего порядка
Пример вычисления транспонированной матрицы алгебраических дополнений (Aᵀᵢⱼ), полученной из матрицы миноров третьего порядка

Третье действие: считаем обратную матрицу

Мы нашли все компоненты для вычисления обратной матрицы. Осталось их подставить в формулу, перемножить и записать ответ:

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

Господи, зачем всё это?

Мы понимаем, что это всё кажется совершенно оторванным от жизни. Какие-то миноры, детерминанты, о чём вообще речь? 

Смотрите: 

  • Вам не нужно уметь решать все эти уравнения самостоятельно. Для этого давно есть мощные алгоритмы. 
  • Достаточно понимать, из чего всё это складывается. Вот матрица. Вот некий алгоритм, который делает из этой матрицы какую-то другую матрицу. Это всё просто арифметика, числа туда, числа сюда. 
  • В конце этого пути мы покажем, как из этих кубиков собрано машинное обучение. И вы увидите, что машинное обучение — это просто много алгебры. Просто арифметика, числа туда, числа сюда.
  • И вы понимаете, что никакого искусственного интеллекта не существует. Это всё, от начала и до конца, работа с числами и расчёты по формулам. Просто когда это делается в больших масштабах, создаётся иллюзия осмысленной деятельности. Ключевое слово — иллюзия. 

Спокойствие, всё будет хорошо. 

Текст:

Александр Бабаскин

Редактура:

Максим Ильяхов

Художник:

Даня Берковский

Корректор:

Ирина Михеева

Вёрстка:

Мария Дронова

Соцсети:

Олег Вешкурцев

Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
Начать карьеру в ИТ
Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию
Еще по теме
Гид: что изучать, чтобы получить ИТ-профессию

Планы на будущий год.

easy
MySQL — царица баз
MySQL — царица баз

Она сложная, но с ней всё просто.

easy
Scala
Зачем нужен Scala?

Разбираем, почему это не самый популярный язык.

easy
Гит-словарик для начинающих программистов
Гит-словарик для начинающих программистов

Мёржим бранчи и коммитим реквесты

hard
Делаем неубиваемый сайт: статика и динамика
Делаем неубиваемый сайт: статика и динамика

Немного об устройстве сайтов.

easy
Что не так с программированием в школе
Почему школьники не любят уроки программирования

Почему обучение основам программирования в школах такое ужасное и что с этим можно сделать.

easy
Как начать программировать на Python

Если знаете JavaScript, освоиться в Питоне можно за 15 минут.

easy
Как отправить JSON-данные на сервер
Как отправить JSON-данные на сервер

Первый шаг на пути к облачному хранению данных.

medium
Как устроен Юникод и зачем он нужен (в том числе и вам)
Как устроен Юникод и зачем он нужен (в том числе и вам)

Таблица со всеми символами мира

easy
hard