ЛИНЕЙНАЯ АЛГЕБРА ДЛЯ ДАННЫХ И МАШИНОСТРОЕНИЯ
Диапазон линейных операций, собственных значений и собственных векторов
Основа для ускорения обучения моделям больших данных
В последнем посте представлены свойства линейных операторов, в этом посте мы объясним некоторые последствия, возникающие при умножении нескольких матриц.
Размер подпространства
Пусть T (A) будет диапазоном A, набора всех векторов y = Ax, x ϵ X. Мы хотим найти размерность подпространства T (A), зная матрицу A.
Тогда диапазон A совпадает с линейными многообразиями, натянутыми на векторы Ae1,…, Aen. Размерность этого многообразия равна количеству линейно независимых векторов Ae1,…, Aen относительно базиса e1,…, en. Итак, проблема заключается в нахождении максимального количества линейно независимых столбцов в матрице A.
Ранг произведения двух матриц
Ранг произведения двух матриц может быть меньше ранга каждой матрицы, например:
обе исходные матрицы имели ранг 1, но матрица умножения имела ранг 0.
Чтобы узнать максимальный диапазон умножения матриц, мы должны взглянуть на эту теорему:
Пусть A будет матрицей mxn ранга rA и B матрица nxp ранга rB . Тогда ранг матрицы mxp AB не меньше, чем rA + rB-n .
Из этой теоремы мы можем извлечь следствие, что одна матрица имеет ранг n, умножение сохраняет ранг другой матрицы.
Левая инверсия оператора
Пусть A будет линейным оператором, отображающим линейное пространство X в линейное пространство Y . Линейный оператор B, отображающий Y в X называется оператором левым обратным оператором A, если:
- оператор единицы в пространстве X. Оператор A называется правым обратным оператором B.
Следующая теорема дает условия, при которых операторы должны иметь левый или правый обратный.
Оператор A: X➝ Y оставил обратным тогда и только тогда, когда A является мономорфизмом . Оператор B : Y➝ X имеет правый обратный тогда и только тогда, когда B является эпиморфизмом .
Мы можем выразить эти условия на основе ранга матриц:
Матрица mxn имеет обратную слева тогда и только тогда, когда ее ранг равен n, и обратную справа тогда и только тогда, когда его рейтинг равен м
Собственные значения и собственные векторы
Поскольку мы используем большие объемы данных, нам необходимо найти быстрые способы их обработки, матрицы являются одним из них, но даже в матрицах существуют самые быстрые типы матриц, каждая матрица может быть уменьшена как матрица собственных значений и собственных векторов.
Линейные операторы, отображающие пространство Kn в себя
Действующий оператор - это тот, который отображает пространство X в себя, предположим, что этот оператор (A ) представляет собой n-мерное пространство X = Kn, выбирая основу в пространстве X мы выбираем тот же базис в Y = X, чтобы сжать матрицу оператора A
В итоге для фиксированного базиса мы получаем взаимно однозначное соответствие между всеми линейными операторами, действующими в пространстве Kn, и всеми квадратными матрицами, составленными из элементов лежащих в основе поле K.
Вот некоторые примеры этого:
- Идентификационная матрица:
- Подобный оператор похож на единичную матрицу, но вместо диагонали 1 он имеет диагональ, заполненную символом λ.
Определитель произведения двух матриц
Одно из наиболее важных определяющих свойств записывается как:
Определитель произведения двух матриц n x n совпадает с произведением определителей каждой матрицы.
Это позволит нам разложить детерминанты и рассчитать их по партиям.
Обратный оператор
Оператор может иметь несколько обратных слева и не обратных справа, или несколько обратных справа и не обратных слева. Теперь мы возражаем против того, чтобы A имел и обратное, левое (P) и правое ( В):
Исправляя Q, мы видим, что есть только один P, поэтому P определяется однозначно. Мы можем решить то же самое от P до Q. Однозначно определенное P = Q является обратным A и обозначается A ^ (- 1).
Каждая невырожденная матрица A имеет уникальную обратную B такую, что AB = BA = E
Собственные векторы и собственные значения
Во-первых, нам нужно ввести инвариантное подпространство, определяемое как:
Для линейного оператора A actin в линейном пространстве K мы говорим, что подпространство K ’⊂ K инвариантно относительно A, если x ∈ K’ влечет Ax ∈ K ’.
Другими словами, это подпространство, которое содержит все преобразования его векторов.
Особую роль играют одномерные инвариантные подпространства данного оператора A, их также называют инвариантными направлениями или собственными массивами.
Каждый ненулевой вектор в одномерном инвариантном подпространстве оператора A называется собственным вектором оператора A и если Ax = λx, λ называется собственным значением оператора A к собственному вектору x
Введенный ранее диагональный оператор представляет собой композицию собственных векторов e1,…, en с собственными значениями λ1,…, λn .
Эта лемма позволит нам линейно вычислить зависимости по собственным векторам:
Для оператора A с собственными векторами x1,…, xm и соответствующими собственными значениями λ1,…, λm предположим, что λi ≠ λj всякий раз, когда i ≠ j. Тогда собственные векторы линейно независимы.
Мы можем получить определение собственного подпространства из собственных векторов как:
Собственные векторы линейного оператора A, соответствующие заданному собственному значению λ s панорамируют подпространство K ^ λ ⊂ K.
Как мы можем вычислить собственные векторы любой матрицы?
Чтобы найти собственные векторы, мы можем использовать следующее определение:
При решении этой системы есть несколько возможностей:
- В поле K нет корня. В этом случае линейный оператор A не имеет собственных векторов в пространстве Kn.
- Существует n различных корней. Если все уравнения лежат в одном поле K и различны, мы можем найти n окружных собственных векторов оператора A в пространстве Kn, решая систему для λ = λ1,…, λn, найденные собственные векторы становятся линейно независимыми. Выбрав их в качестве новой основы, мы можем построить матрицу оператора A как:
Резюме
В этом посте мы перешли от линейных операторов к собственным векторам. Это будет в каждой формуле моделей машинного обучения, начиная с OLS (обыкновенных наименьших квадратов) и заканчивая моделями глубокого обучения как GPT-3.
Это двадцатый пост из моего конкретного # 100daysofML, я буду публиковать достижения в этой задаче на GitHub, Twitter и Medium (Adrià Serra).