Векторы: третий уровень сложности

Векторы: третий уровень сложности

1 часть
Знакомимся с вектором
2 часть
Операции с векторами
3 часть
Векторы: третий уровень сложности
4 часть
Знакомство с матрицами
5 часть
Что такое обратная матрица
6 часть
Решение матричных уравнений

Знакомимся с коллинеарностью.

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

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

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

Что за коллинеарность

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

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

Коллинеарные векторы
Коллинеарные векторы
Неколлинеарные векторы
Неколлинеарные векторы

Сложение коллинеарных и неколлинеарных векторов

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

Можно представить, что вы идёте прямо: каждый ваш шаг — это вектор. Каждый новый шаг — новый вектор. Но если все их сложить, получится один большой прямой вектор длиной как все ваши шаги. 

Теперь попробуем сложить пару неколлинеарных векторов. Это как если бы мы сначала сделали шаг немного правее, а потом сделали бы шаг влево. Шага два, но если соединить начало и конец пути, он не будет совпадать с траекториями наших шагов. Появится какой-то новый вектор, с новым направлением, и он будет неколлинеарным по отношению к своим слагаемым. 

Также пару неколлинеарных векторов из одной плоскости можно растянуть и развернуть в пространстве. Если их сложить, также появится новый вектор.

У математиков такой вектор называют базисом. Когда базис находится на плоскости или в пространстве, то он может единственным образом превращаться обратно в пару неколлинеарных векторов, которые его сформировали.

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

Базис — понятие из высшей математики, поэтому, если сейчас сложно, не отчаивайтесь. Студенты-математики когда-то тоже отчаивались.

Сложение коллинеарных и неколлинеарных векторов
Мы изменили пару неколлинеарных векторов и сформировали из них базис — получили новый фиолетовый вектор с собственной системой координат
Сложение коллинеарных и неколлинеарных векторов
Теперь мы изменили исходные неколлинеарные векторы и получили новый базис — это оранжевый вектор

Как определять неколлинеарность

Когда мы работаем с короткими векторами, всё очевидно: нарисовали систему координат, отложили на ней векторы, они либо совпали, либо не совпали. Если совпали — коллинеарные, если нет — неколлинеарные. 

А теперь представьте, что вектора настолько огромные, что мы физически не можем их нарисовать и сопоставить. Например, 

Как такое нарисовать? Как проверить коллинеарность? Вот тут начинается магия алгебры. 

Есть три способа проверки линейной зависимости векторов. Для простоты вычислений проверим эти три способа на вот этих всё ещё простых векторах:

По этим координатам ответим на два вопроса: являются ли предложенные вектора линейно зависимыми (то есть коллинеарными) и можно ли их раскладывать по базису. 

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

👉 Знак λ здесь по традиции и для удобства. На самом деле это просто некое неизвестное число. Вместо этой буквы могли быть X, Y, Z или N, но так как у нас вектора уже называются X и Y, а N в математике используется для других целей, возьмём λ — это греческая буква «лямбда», давний предок нашей русской буквы «Л». 

Составляем систему уравнений: 

Вычисляем значение λ:

Сравниваем результат и делаем вывод: 

Мы получили разное значение для неизвестного числа λ и поэтому наши векторы будут считаться линейно независимыми. Из них можно получить базис. 

Если бы значение λ совпало, то мы бы имели дело с линейно зависимыми векторами. 

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

Получаем такую пропорцию: 

Считаем значение и сравниваем результат: 

Равенство не выполняется, и поэтому между векторами нет зависимости. 

Третий способ. Используем четыре элемента наших координат для поиска определителя — скалярной величины, с которой мы подробно познакомимся в следующих статьях во время решения матричных уравнений. Сейчас нам не нужны подробности, и для проверки линейной зависимости достаточно формулы. 

Записываем в две строки координаты наших векторов: 

Переводим координаты векторов в определитель — добавляем с двух сторон вертикальную черту и получаем простую квадратную матрицу размером 2 на 2:

В полученной матрице две диагонали. Числа −6 и −1 образуют главную диагональ; числа −4 и 5 — вторую диагональ. Чтобы найти определитель, нам нужно умножить числа главной и второй диагонали, а затем вычесть их разницу. 

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

И наоборот: нулевой определитель указывает на линейную зависимость векторов.

Что из этого нужно запомнить

  • С точки зрения векторов важно, они сонаправленные или нет. По-другому — они коллинеарны или нет.
  • Коллинеарность влияет на то, что можно делать с этими векторами. Например, неколлинеарные векторы можно разложить по базису.
  • Базис — это вектор, который можно разложить на те самые неколлинеарные векторы.  
  • Коллинеарность легко проверяется через уравнения. Строить векторы на координатной плоскости необязательно.

Что дальше

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

Текст:

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

Редактура:

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

Художник:

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

Корректор:

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

Вёрстка:

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

Соцсети:

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

Веб-разработка — это новый черный
А мы знаем толк в моде и поможем освоить новую специальность за полгода.
Посмотреть
Фронтенд — это новый черный
Еще по теме
prev
next
Линтер — это чистый код для ленивых

Зачем нужен и как работает расчёсывальщик кода.

Как попасть в ИТ и построить карьеру: бесплатная рассылка

Ваш гид по быстрому старту карьеры.

Двоичное счисление на пальцах

Все знают, что компьютеры состоят из единиц и нулей. Но что это значит на самом деле?

Давид Роганов о работе фронтенд-разработчика в Яндекс.Практикуме
«Успешный программист не привязывается к языку. Он просто умеет программировать»

Давид Роганов о работе фронтенд-разработчика в Яндекс.Практикуме.

Как устроена и кому нужна стажировка в Яндексе
Как устроена и кому нужна стажировка в Яндексе

Как туда попасть и что там делают.

Карьерный путь: руководитель группы в лаборатории ИИ Сбера
Карьерный путь: руководитель группы в лаборатории ИИ Сбера

Разговор с Алексеем Васильевым: управление проектами, учёба в ШАД и разработка систем ИИ.

Отлить в бетоне!
Отлить в бетоне!

Сага о генераторах статических сайтов.

Что такое канбан
Что такое канбан

Самый узнаваемый атрибут айтишных команд.

Для чего нужен язык C#

Как в Микрософте сделали свой язык программирования. И зачем.

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

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

Что такое даркнет

Это не настолько анонимно и не так безопасно, как кажется.

Системный администратор — что нужно знать, чтобы получать 160 000 рублей
Системный администратор — что нужно знать, чтобы получать 160 000 рублей

Это не тот администратор, который ставит вам Windows.

Как устроен спутниковый интернет
Как устроен спутниковый интернет

Надёжно, но с большими задержками.

medium