Как построить собственный вектор матрицы

Собственные числа и собственные векторы линейного оператора

Определение . Ненулевой вектор x называется собственным вектором оператора A , если оператор A переводит x в коллинеарный ему вектор, то есть A· x = λ· x . Число λ называется собственным значением или собственным числом оператора A, соответствующим собственному вектору x .
Отметим некоторые свойства собственных чисел и собственных векторов.
1. Любая линейная комбинация собственных векторов x 1, x 2, . x m оператора A , отвечающих одному и тому же собственному числу λ, является собственным вектором с тем же собственным числом.
2. Собственные векторы x 1, x 2, . x m оператора A с попарно различными собственными числами λ1, λ2, …, λm линейно независимы.
3. Если собственные числа λ12= λm= λ, то собственному числу λ соответствует не более m линейно независимых собственных векторов.

Итак, если имеется n линейно независимых собственных векторов x 1, x 2, . x n, соответствующих различным собственным числам λ1, λ2, …, λn, то они линейно независимы, следовательно, их можно принять за базис пространства Rn. Найдем вид матрицы линейного оператора A в базисе из его собственных векторов, для чего подействуем оператором A на базисные векторы: Как построить собственный вектор матрицытогда Как построить собственный вектор матрицы.
Таким образом, матрица линейного оператора A в базисе из его собственных векторов имеет диагональный вид, причем по диагонали стоят собственные числа оператора A.
Существует ли другой базис, в котором матрица имеет диагональный вид? Ответ на поставленный вопрос дает следующая теорема.

Теорема. Матрица линейного оператора A в базисе < ε i> (i = 1..n) имеет диагональный вид тогда и только тогда, когда все векторы базиса — собственные векторы оператора A.

Видео:Собственные значения и собственные векторы матрицы (4)Скачать

Собственные значения и собственные векторы матрицы (4)

Правило отыскания собственных чисел и собственных векторов

Система (1) имеет ненулевое решение, если ее определитель D равен нулю

Как построить собственный вектор матрицы

Пример №1 . Линейный оператор A действует в R3 по закону A· x =(x1-3x2+4x3, 4x1-7x2+8x3, 6x1-7x2+7x3), где x1, x2, . xn — координаты вектора x в базисе e 1=(1,0,0), e 2=(0,1,0), e 3=(0,0,1). Найти собственные числа и собственные векторы этого оператора.
Решение. Строим матрицу этого оператора:
A· e 1=(1,4,6)
A· e 2=(-3,-7,-7)
A· e 3=(4,8,7)
Как построить собственный вектор матрицы.
Составляем систему для определения координат собственных векторов:
(1-λ)x1-3x2+4x3=0
x1-(7+λ)x2+8x3=0
x1-7x2+(7-λ)x3=0
Составляем характеристическое уравнение и решаем его:

Как построить собственный вектор матрицы

Пример №2 . Дана матрица Как построить собственный вектор матрицы.
1. Доказать, что вектор x =(1,8,-1) является собственным вектором матрицы A. Найти собственное число, соответствующее этому собственному вектору.
2. Найти базис, в котором матрица A имеет диагональный вид.

Решение находим с помощью калькулятора.
1. Если A· x =λ· x , то x — собственный вектор

Как построить собственный вектор матрицы

Как построить собственный вектор матрицы

Как построить собственный вектор матрицы

Определение . Симметрической матрицей называется квадратная матрица, в которой элементы, симметричные относительно главной диагонали, равны, то есть в которой ai k =ak i .

Замечания .

  1. Все собственные числа симметрической матрицы вещественны.
  2. Собственные векторы симметрической матрицы, соответствующие попарно различным собственным числам, ортогональны.

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

Видео:Собственные векторы и собственные числа линейного оператораСкачать

Собственные векторы и собственные числа линейного оператора

5.1.3. Собственные числа и собственные векторы матрицы

Вектор Х называется Собственным вектором матрицы А, если найдется такое число L, что выполняется равенство: АХ = LХ, то есть результатом применения к Х линейного оператора, задаваемого матрицей А, является умножение этого вектора на число L. Само число L называется Собственным числом матрицы А.

Подставив в формулы (3) XJ = LXj, получим систему уравнений для определения координат собственного вектора:

Как построить собственный вектор матрицы

Как построить собственный вектор матрицы.

Эта линейная однородная система будет иметь нетривиальное решение только в случае, если ее главный определитель равен 0 (правило Крамера). Записав это условие в виде:

Как построить собственный вектор матрицы

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

Как построить собственный вектор матрицы

Поскольку в его левой части стоит определитель матрицы А-LЕ. Многочлен относительно L | A LE| называется Характеристическим многочленом матрицы А.

Свойства характеристического многочлена:

1) Характеристический многочлен линейного преобразования не зависит от выбора базиса.

Как построить собственный вектор матрицы(см. (11.4)), но Как построить собственный вектор матрицыСледовательно, Как построить собственный вектор матрицы. Таким образом, Как построить собственный вектор матрицыне зависит от выбора базиса. Значит, и |ALE| не изменяется при переходе к новому базису.

2) Если матрица А линейного оператора является Симметрической (т. е. АIj=Aji), то все корни характеристического уравнения (11.6) – действительные числа.

Свойства собственных чисел и собственных векторов:

1) Если выбрать базис из собственных векторов Х1, х2, х3, соответствующих собственным значениям λ1, λ2, λ3 матрицы А, то в этом базисе линейное преобразование А имеет матрицу диагонального вида:

Как построить собственный вектор матрицы

Доказательство этого свойства следует из определения собственных векторов.

2) Если собственные значения оператора А различны, то соответствующие им собственные векторы линейно независимы.

3) Если характеристический многочлен матрицы А имеет три различных корня, то в некотором базисе матрица А имеет диагональный вид.

Найдем собственные числа и собственные векторы матрицы

Как построить собственный вектор матрицы

Составим характеристическое уравнение:

Как построить собственный вектор матрицы

Найдем координаты собственных векторов, соответствующих каждому найденному значению L. Из (5) следует, что если Х(1)=<X1,X2,X3> – собственный вектор, соответствующий L1=-2, то

Как построить собственный вектор матрицы

Совместная, но неопределенная система. Ее решение можно записать в виде Х(1)=(A,0,-A), где А – любое число. В частности, если потребовать, чтобы |X(1)|=1,

Как построить собственный вектор матрицы

Подставив в систему (5) L2=3, получим систему для определения координат второго собственного вектора — X(2)=(Y1,Y2,Y3):

Видео:Собственные векторы и собственные значения матрицыСкачать

Собственные векторы и собственные значения матрицы

Спектральная кластеризация

Дата публикации Feb 21, 2019

Видео:Диагональный вид матрицы. Приведение матрицы к диагональному виду. Собственные векторыСкачать

Диагональный вид матрицы.  Приведение матрицы к диагональному виду.  Собственные векторы

Введение

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

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

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

Видео:7 4 Собственные векторы и собственные значенияСкачать

7 4  Собственные векторы и собственные значения

Собственные векторы и собственные значения

Критическим для этой дискуссии является концепция собственных значений и собственные векторы. Для матрицы A, если существует вектор x, который не является всеми 0 и скалярным λ, таким, что Ax = λx, то x называется собственным вектором A с соответствующим собственным значением λ.

Мы можем думать о матрице A как о функции, которая отображает векторы на новые векторы. Большинство векторов окажутся где-то совершенно разными, когда к ним будет применен A, но собственные векторы меняются только по величине. Если вы проведете линию через начало координат и собственный вектор, то после отображения собственный вектор все равно попадет на линию. Величина, по которой вектор масштабируется вдоль линии, зависит от λ.

Мы можем легко найти собственные значения и собственные векторы матрицы, используя numpy в Python:

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

Видео:А.7.35 Собственные вектора и собственные значения матрицыСкачать

А.7.35 Собственные вектора и собственные значения матрицы

диаграммы

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

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

Давайте использовать следующий неориентированный граф в качестве рабочего примера:

Как построить собственный вектор матрицы

Этот граф имеет 10 узлов и 12 ребер. Он также имеет два соединенных компонента и . Связанный компонент — это максимальный подграф узлов, у всех из которых есть пути к остальным узлам подграфа.

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

Видео:Собственные значения и собственные векторыСкачать

Собственные значения и собственные векторы

Матрица смежности

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

В матрице мы видим, что строка 0, столбец 1 имеет значение 1. Это означает, что существует ребро, соединяющее узел 0 с узлом 1. Если ребра были взвешены, веса ребер были бы в этой матрице вместо только 1 и 0. Так как наш график не направлен, записи для строки i, col j будут равны записи в строке j, col i. Последнее, что следует отметить, это то, что диагональ этой матрицы равна 0, поскольку ни один из наших узлов не имеет ребер.

Видео:Матрицы и векторыСкачать

Матрицы и векторы

Степень Матрица

Степень узла — это количество ребер, соединенных с ним. В ориентированном графе мы могли бы говорить о степени и степени, но в этом примере у нас просто есть степень, так как ребра идут в обе стороны. Глядя на наш график, мы видим, что узел 0 имеет степень 4, поскольку он имеет 4 ребра. Мы также можем получить степень, взяв сумму строки узла в матрице смежности.

Матрица степеней — это диагональная матрица, где значение на входе (i, i) является степенью узла i Давайте найдем матрицу степеней для нашего примера:

Сначала мы взяли сумму по оси 1 (строки) нашей матрицы смежности, а затем поместили эти значения в диагональную матрицу. Из матрицы степеней мы легко видим, что узлы 0 и 5 имеют 4 ребра, в то время как остальные узлы имеют только 2.

Видео:Собственные значения матрицыСкачать

Собственные значения матрицы

График лапласианский

Теперь мы собираемся вычислить граф Лапласа. Лапласиан — это просто еще одно матричное представление графа. У него есть несколько прекрасных свойств, которыми мы воспользуемся для спектральной кластеризации. Чтобы вычислить нормальный лапласиан (есть несколько вариантов), мы просто вычитаем матрицу смежности из нашей матрицы степеней:

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

Видео:Матрица переходаСкачать

Матрица перехода

Собственные значения графа лапласиана

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

Как построить собственный вектор матрицы

Мы видим, что когда граф полностью отключен, все десять наших собственных значений равны 0. Когда мы добавляем ребра, некоторые из наших собственных значений увеличиваются. Фактически, число собственных значений 0 соответствует числу связанных компонент в нашем графе!

Посмотрите внимательно, как добавлен этот последний край, соединяя два компонента в один. Когда это происходит, все собственные значения, кроме одного, были отменены:

Как построить собственный вектор матрицы

Первое собственное значение равно 0, потому что у нас есть только один связный компонент (весь граф связен). Соответствующий собственный вектор всегда будет иметь постоянные значения (в этом примере все значения близки к 0,32).

Первое ненулевое собственное значение называется спектральной щелью. Спектральная щель дает нам некоторое представление о плотности графика. Если бы этот граф был плотно связан (все пары из 10 узлов имели ребро), то спектральный разрыв был бы 10.

Второе собственное значение называется значением Фидлера, а соответствующий вектор является вектором Фидлера. Значение Фидлера приблизительно соответствует минимальному срезу графа, необходимому для разделения графа на два связанных компонента. Напомним, что если бы в нашем графе уже было два связанных компонента, то значение Фидлера было бы равно 0. Каждое значение в векторе Фидлера дает нам информацию о том, какой стороне разреза принадлежит этот узел. Давайте раскрасим узлы в зависимости от того, положительна ли их запись в векторе Филдера:

Как построить собственный вектор матрицы

Этот простой трюк разделил наш график на две группы! Почему это работает? Помните, что нулевые собственные значения представляют связанные компоненты. Собственные значения около нуля говорят нам, что существует почти разделение двух компонентов. Здесь у нас есть одно преимущество: если бы его не было, у нас было бы два отдельных компонента. Таким образом, второе собственное значение мало.

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

Возможно, вы заметили, что следующие два собственных значения также довольно малы. Это говорит нам о том, что мы «близки» к четырем отдельным подключенным компонентам. В общем, мы часто ищем первый большой разрыв между собственными значениями, чтобы найти число кластеров, выраженных в наших данных. Видите разрыв между собственными значениями четыре и пять?

Наличие четырех собственных значений перед разрывом указывает на то, что, вероятно, существует четыре кластера. Векторы, связанные с первыми тремя положительными собственными значениями, должны дать нам информацию о том, какие три разреза необходимо сделать на графике, чтобы назначить каждый узел одному из четырех приближенных компонентов. Давайте построим матрицу из этих трех векторов и выполним кластеризацию K-средних для определения назначений:

Как построить собственный вектор матрицы

График был сегментирован на четыре квадранта, причем узлы 0 и 5 произвольно назначены одному из их связанных квадрантов. Это действительно круто, и это спектральная кластеризация!

Подводя итог, мы сначала взяли наш граф и построили матрицу смежности. Затем мы создали лапласиан графа, вычтя матрицу смежности из матрицы степеней. Собственные значения лапласиана указывали на наличие четырех кластеров. Векторы, связанные с этими собственными значениями, содержат информацию о том, как сегментировать узлы. Наконец, мы выполнили K-средства для этих векторов, чтобы получить метки для узлов. Далее мы увидим, как это сделать для произвольных данных.

Видео:Айгенвектора и айгензначения | Сущность Линейной Алгебры, глава 10Скачать

Айгенвектора и айгензначения | Сущность Линейной Алгебры, глава 10

Спектральная кластеризация произвольных данных

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

Как построить собственный вектор матрицы

Эти данные не в форме графика. Итак, во-первых, давайте просто попробуем алгоритм обрезки печенья, такой как K-Means. K-Means найдет два центроида и пометит точки, в зависимости от того, к какому центроиду они ближе всего. Вот результаты:

Как построить собственный вектор матрицы

Очевидно, K-Means не собирался работать. Он действует на евклидовом расстоянии и предполагает, что скопления примерно сферические. Эти данные (и часто данные реального мира) нарушают эти предположения. Давайте попробуем решить эту проблему с помощью спектральной кластеризации.

Видео:Собственные значения и собственные векторы. ТемаСкачать

Собственные значения и собственные векторы. Тема

График ближайших соседей

Есть несколько способов обработать наши данные как график. Самый простой способ — построить граф k-ближайших соседей. Граф k-ближайших соседей обрабатывает каждую точку данных как узел в графе. Затем ребро рисуется от каждого узла до его k ближайших соседей в исходном пространстве. Как правило, алгоритм не слишком чувствителен к выбору k. Меньшие числа, такие как 5 или 10, обычно работают довольно хорошо.

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

Поскольку мы разделяем эти данные только на два компонента, мы должны использовать наш векторный метод Фидлера ранее. Вот код, который я использовал для спектральной кластеризации этих данных:

И вот результаты:

Как построить собственный вектор матрицы

Видео:Собственные векторы и собственные числа линейного оператораСкачать

Собственные векторы и собственные числа линейного оператора

Другие подходы

Граф ближайших соседей — хороший подход, но он основан на том факте, что «близкие» точки должны принадлежать одному кластеру. В зависимости от ваших данных, это может быть не так. Более общий подход заключается в построении аффинной матрицы. Матрица сходства похожа на матрицу смежности, за исключением того, что значение для пары точек показывает, насколько эти точки похожи друг на друга. Если пары точек сильно различаются, то сродство должно быть 0. Если точки идентичны, то сродство может быть 1. Таким образом, сродство действует как вес для ребер нашего графа.

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

Есть также целые поля, посвященные изучению того, как строить метрики подобия непосредственно из данных. Например, если у вас есть некоторые помеченные данные, вы можете обучить классификатор, чтобы предсказать, похожи ли два входа или нет, основываясь на том, имеют ли они одинаковую метку. Затем этот классификатор можно использовать для присвоения сходства парам немаркированных точек.

Видео:Собственные числа, собственные, присоединенные векторы. Матрица оператора в базисе...Скачать

Собственные числа, собственные, присоединенные векторы. Матрица оператора в базисе...

Вывод

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

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

Я надеюсь, что вам понравился этот пост, и вы нашли спектральную кластеризацию полезной в вашей работе или исследовании.

🎦 Видео

Урок 1. Матрицы, определитель матрицы и ранг матрицы | Высшая математика | TutorOnlineСкачать

Урок 1. Матрицы, определитель матрицы и ранг матрицы | Высшая математика | TutorOnline

Собственные векторы и собственные значенияСкачать

Собственные векторы и собственные значения

Занятие 12. Векторы и матрицыСкачать

Занятие 12. Векторы и матрицы

Собственные числа матрицыСкачать

Собственные числа матрицы

Как разложить вектор по базису - bezbotvyСкачать

Как разложить вектор по базису - bezbotvy

Собственные значения и собственные векторы. ПримерСкачать

Собственные значения и собственные векторы. Пример
Поделиться или сохранить к себе: