(37)86.Что такое произведение двух матриц? При каких условиях оно определено? Примеры.
Умноже́ниема́триц — одна из основных операций над матрицами. Матрица, получаемая в результате операции умножения, называется произведе́ниемма́триц.
Произведением матрицы размеровна матрицуразмеровназывается матрицаразмеров, элементы которой вычисляются по формуле
(14.5) |
где ,.
Операция умножения двух матриц выполнима только в том случае, если число столбцов в первом сомножителе равно числу строк во втором; в этом случае говорят, что форма матрицсогласована. В частности, умножение всегда выполнимо, если оба сомножителя — квадратные матрицы одного и того же порядка.
Найти произведения матриц AB и BA, если
и
Р е ш е н и е: Имеем
↑
(38)87.
Какие операции называют коммутативными? Покажите на примерах, что умножение матриц не коммутативно.Коммутативность = Перестановочность.
Обычные числа переставлять можно: , а матрицы в общем случае не перестановочны: .
Какие матрицы можно умножать?
Чтобы матрицу можно было умножить на матрицу нужно, чтобы число столбцов матрицы равнялось числу строк матрицы .
Пример: Можно ли умножить матрицу на матрицу ?
, значит, умножать данные матрицы можно.
А вот если матрицы переставить местами, то, в данном случае, умножение уже невозможно!
, следовательно, выполнить умножение невозможно:
Не так уж редко встречаются задания с подвохом, когда студенту предлагается умножить матрицы, умножение которых заведомо невозможно.
Следует отметить, что в ряде случаев можно умножать матрицы и так, и так. Например, для матриц, и возможно как умножение , так и умножение
↑ назад в содержание ↑
(39)88.
Что такое единичная и обратная матрицы? Как строится (по Гауссу) обратная матрица?Пусть a – квадратная матрица порядка n. Обратной к ней матрице называется такая матрица A-1, что A-1*A=E (здесь A-1 и E – квадратные матрицы того же порядка, причём E – единичная матрица).
Это определение вовсе не подразумевает, что обратная матрица существует для любой матрицы A.
Примеры
не существует
не существует
(0 0) – эта строка приводит к тому, что первая строка произведения этой матрицы на любую другую состоит из одних нулей (в единичной матрице это не так)
Определения с википедии: | ||||
|
Нахождение обратной матрицы методом Гаусса.
Исходная матрица А. |
A = | |||||
Найдем матрицу А-1 обратную к матрице А. |
Для этого напишем расширенную матрицу , в левой части которой находится наша исходная матрица А, а в правой единичная. |
Применяя метод Гаусса, последовательно будем приводить нашу исходную матрицу (левую часть расширенной матрицы) к единичной матрице. Причем совершенные преобразование мы будем применять ко всей расширенной матрице. |
Приведя левую часть расширенной матрицы к единичной, правая часть будет являться обратной матрицей к нашей исходной. |
Последовательность приведения левой части расширенной матрицы к единичной, Вы можете проследить по выделенным серыми прямоугольниками элементам. |
Рассмотрим столбец 1. |
К элементам стороки 2 прибавим соответствующие элементы строки 1 умноженные на -3. |
Рассмотрим столбец 2. |
К элементам строки 1 прибавим соответствующие элементы строки 2. |
Элементы строки 2 разделим на -2 . |
Ответ : |
A-1 = | |||||
↑ назад в содержание ↑
Умножение двух матриц с вещественными коэфициентами
|
|
|
Умножение матриц с использованием цикла For
[Эта статья была впервые опубликована в блогах на Adejumo RS и любезно предоставлена R-блогерами]. (Вы можете сообщить о проблеме с содержанием на этой странице здесь)
Хотите поделиться своим контентом с R-блогерами? нажмите здесь, если у вас есть блог, или здесь, если у вас его нет.
— Джон Акафф
Линейная алгебра — это раздел математики, который имеет дело с векторами и матрицами, хотя некоторые находят его сложным, я все же нахожу его проще, чем старый добрый исчисление. Векторы и матрицы — очень важные структуры данных в R, поэтому знание линейной алгебры очень важно. В этом посте мы будем использовать наше понимание «циклов for» для объяснения умножения матриц в R.0017, что является матрицей (3×4), умножение двух матриц даст нам c
, что является матрицей (4×4).
а <- матрица(с(9, 4, 12, 5, 0, 7, 2, 6, 8, 9, 2, 9), nряд = 4, byrow = ИСТИНА) а ## [1] [2] [3] ## [1,] 9 4 12 ## [2,] 5 0 7 ## [3,] 2 6 8 ## [4,] 9 2 9 б <- матрица(с(5, 4, 2, 5, 2, 7, 2, 1, 8, 3, 2, 6), nrow = 3, byrow = ИСТИНА) б ## [1] [2] [3] [4] ## [1,] 5 4 2 5 ## [2,] 2 7 2 1 ## [3,] 8 3 2 6
Следующий код представляет собой функцию для выполнения матричного умножения между a
и b
для получения матрицы c
.
mat_mup <- функция (а, б) { если (ncol(a) != nrow(b)){ вернуть("не умножить") } еще{ c = матрица (rep (0, nrow (a) * ncol (b)), ряд = ряд (а)) для (я в 1: nrow (а)) { for(j в 1:ncol(b)){ for(k в 1:nrow(b)){ c[i,j] <- c[i,j] + a[i,k]*b[k, j] } } } } возврат (с) }
В приведенном выше коде мы создаем функцию с именем mat_mup
, функция возвращает «невозможно умножить», если количество столбцов в матрице a
не соответствует количеству строк в матрице b
. Второе условие выполняет матричную операцию с использованием трех циклов for, первый для цикла
принимает i
значений для количества строк в матрице a
, второй для цикла
принимает j
для числа столбцов в матрице b
и третий для цикла
принимает k
для количества строк в матрице b
. Функция возвращает матрицу c
, результат умножения на
и на
.
mat_mup(а,б) ## [1] [2] [3] [4] ## [1,] 149 100 50 121 ## [2,] 81 41 24 67 ## [3,] 86 74 32 64 ## [4,] 121 77 40 101
Представьте, что вам нужно всегда делать то же самое только для умножения двух матриц. R имеет встроенный оператор, который обрабатывает умножение матриц. Когда-нибудь учили, почему матрица a*b
возвращает ошибку в R, что ж, я оставляю это на ваше усмотрение. Оператор %*%
используется для умножения матриц.
а %*% б ## [1] [2] [3] [4] ## [1,] 149 100 50 121 ## [2,] 81 41 24 67 ## [3,] 86 74 32 64 ## [4,] 121 77 40 101
Для оставьте комментарий для автора, перейдите по ссылке и оставьте комментарий в их блоге: Блоги на Adejumo R.S .
R-bloggers.com предлагает ежедневные обновления по электронной почте о новостях R и руководствах по изучению R и многим другим темам. Нажмите здесь, если вы хотите опубликовать или найти работу R/data-science.
Хотите поделиться своим контентом с R-блогерами? нажмите здесь, если у вас есть блог, или здесь, если у вас его нет.
Умножение матриц — Концепция — Алгебра 2 Видео от Brightstorm
При работе с матрицами мы можем выполнять ряд матричных операций, включая умножение матриц . При умножении матриц нам сначала нужно убедиться, что матрицы имеют одинаковые размеры, то есть количество строк, умноженное на количество столбцов. Результирующая матрица после умножения имеет размеры двух внешних измерений. Каждое значение равно произведению соответствующей строки и столбца.
умножение матриц размеры
Матричное умножение — одна из самых сложных вещей, которые мы делаем в Матрицах. Итак, мы собираемся взглянуть на своего рода абстрактную идею и выяснить, как все это работает вместе.
При перемножении матриц первое, что нам нужно сделать, это убедиться, что мы действительно можем перемножать матрицы вместе, а не все матрицы всегда можно перемножать вместе.
Итак, если внимательно посмотреть на это, первое, что нам нужно сделать, это посмотреть на размеры, помните, что измерения представляют собой строки за столбцами, поэтому первая матрица состоит из двух строк и двух столбцов, так что здесь матрица 2 на 2. Строки за столбцами две строки два столбца, так что это тоже два на два.
Хорошо, чтобы перемножить матрицы, эти две матрицы должны быть равны, две внутри внешней, второе измерение вашей первой матрицы - первое измерение вашей второй. Если они равны, вы можете умножить и более того, ваша результирующая матрица, с которой вы останетесь, будет иметь размеры ваших самых внешних двух. Таким образом, это будут ваши результирующие размеры матрицы. Итак, в этом случае у нас есть все два, поэтому все равно, говорит нам, что мы сможем умножить его, и результирующая матрица также будет матрицей два на два.
Хорошо, я напишу эту матрицу очень большой, потому что она будет достаточно сложной. Итак, у нас будет щель здесь, щель здесь, слайд здесь и щель здесь. Так что у нас есть довольно большой два на два. И как это работает, чтобы найти это первое место, первая матрица — этот элемент определяется строкой первой матрицы, такой же, как и столбец второй. Таким образом, это то же самое, что и ваши измерения по столбцам, это в первом столбце первой строки. Таким образом, это определяется первой строкой и первым столбцом. Итак, у нас есть четыре вещи, определяющие это место, и как оно работает: вы начинаете с первой записи в строке, начинаете с первой записи в столбце, умножаете и добавляете по мере продвижения вниз. Итак, мы берем a, умноженное на w, и прибавляем это к b, умноженному на y, так что это aw+by хорошо.
Немного запутанно, но давайте сделаем еще один, чтобы увидеть, есть ли он у нас, так что для этой записи прямо здесь он находится во втором столбце первой строки. Итак, мы снова рассмотрим первую строку здесь, но на этот раз мы переключились на вторую колонку. Итак, снова спускаясь по строке вниз по строке и вниз по столбцу, мы берем 8 раз x плюс b раз e хорошо.
Это довольно запутанные уравнения, я бы не рекомендовал их запоминать, но, надеюсь, с концепцией вы все в порядке. Первая матрица определяет строку, вторая определяет столбец. Допустим, мы хотим перейти вперед и посмотреть на эту запись прямо здесь, во втором столбце второй строки. Итак, нам нужно перейти к нашим матрицам и второму столбцу второй строки, снова первая матрица определяет строку, а вторая определяет столбец. Итак, затем мы просто идем по пути cx+dz, мы просто заканчиваем это, потому что нам остается только один вход.
Первая строка, извините, это наша первая строка, наша вторая строка, первый столбец, поэтому мы имеем дело со второй строкой нашей первой матрицы, первый столбец второго, это будет cw, умноженное на dy, простите, cw+dy. Поэтому, когда мы умножаем матрицы, всегда убедитесь, что ваши размеры совместимы, это всегда будет, если ваши самые внутренние измерения совпадают, ваши самые внешние измерения будут вашей результирующей матрицей, а затем любое место, которое вы ищете для строки, определяется первой матрицы столбцы определяются второй.