stringtranslate.com

Произведение Адамара (матрицы)

Произведение Адамара работает с матрицами одинаковой формы и создает третью матрицу тех же размеров.

В математике произведение Адамара (также известное как поэлементное произведение , поэлементное произведение [1] : гл. 5  или произведение Шура [2] ) — это бинарная операция , которая принимает две матрицы одинаковых размерностей и возвращает матрицу умноженные соответствующие элементы. Эту операцию можно рассматривать как «наивное умножение матрицы», и она отличается от произведения матрицы . Оно приписано и названо в честь французского математика Жака Адамара или немецкого математика Иссаи Шура .

Произведение Адамара ассоциативно и дистрибутивно . В отличие от матричного произведения, оно также коммутативно . [3]

Определение

Для двух матриц A и B одинаковой размерности m × n произведение Адамара (иногда [4] [5] [6] ) представляет собой матрицу той же размерности, что и операнды, с элементами, заданными формулой [3]

Для матриц разных размерностей ( m × n и p × q , где mp или q ) произведение Адамара не определено.

Например, произведение Адамара для двух произвольных матриц размера 2 × 3:

Характеристики

Смешанное свойство продукта

Кронекера

продукт расщепления граней[14]

произведение Хатри–Рао

Теорема Шура о произведении

Произведение Адамара двух положительно-полуопределенных матриц является положительно-полуопределенным. [3] [8] Это известно как теорема о произведении Шура, [7] в честь русского математика Иссая Шура . Для двух положительно-полуопределенных матриц A и B также известно, что определитель их произведения Адамара больше или равен произведению их соответствующих определителей: [8]

Аналогичные операции

В математической литературе встречаются и другие операции Адамара, а именно :корень Адамара иСтепень Адамара (которая по сути одно и то же из-за дробных индексов), определенная для такой матрицы, что:

Для

и для

The Обратный Адамара гласит:[15]

АДеление Адамара определяется как:[16][17]

В языках программирования

Большинство языков научного или числового программирования включают произведение Адамара под разными названиями.

В MATLAB произведение Адамара выражается как «точечное умножение»: a .* bили вызов функции: times(a, b). [18] Он также имеет аналогичные точечные операторы, которые включают, например, операторы a .^ bи a ./ b [19] . Благодаря этому механизму можно зарезервировать *и ^для матричного умножения и матричной экспоненты соответственно.

Язык программирования Julia имеет синтаксис, аналогичный MATLAB, где умножение Адамара называется широковещательным умножением и также обозначается a .* b, а другие операторы определяются аналогично поэлементно, например, используются степени Адамара a .^ b[20] . Но в отличие от MATLAB, в Julia этот «точечный» синтаксис обобщен с помощью универсального оператора широковещания. , который может применять любую функцию поэлементно. Сюда входят как бинарные операторы (такие как вышеупомянутые умножение и возведение в степень, а также любой другой бинарный оператор, такой как произведение Кронекера), а также унарные операторы, такие как !и . Таким образом, любая функция в префиксной записи f может быть применена как f.(x). [21]

Python не имеет встроенной поддержки массивов, что приводит к противоречивым или противоречивым обозначениям. Числовая библиотека NumPy интерпретирует a*bor a.multiply(b)как произведение Адамара и использует a@bor a.matmul(b)для матричного произведения. С помощью символьной библиотеки SymPy умножение объектов массива как a*bили a@bприведет к получению матричного продукта. Произведение Адамара можно получить вызовом метода a.multiply_elementwise(b). [22] Некоторые пакеты Python включают поддержку степеней Адамара с использованием таких методов np.power(a, b), как или метод Pandasa.pow(b) .

В C++ библиотека Eigen предоставляет cwiseProductфункцию-член для класса Matrix ( ), а библиотека Armadillo использует оператор для создания компактных выражений ( ; является матричным произведением).a.cwiseProduct(b)%a % ba * b

В GAUSS и HP Prime эта операция называется умножением массива.

В Fortran , R , APL , J и Wolfram Language ( Mathematica ) оператор умножения *или ×применяет произведение Адамара, тогда как матричное произведение записывается с использованием matmul, %*%, +.×и +/ .*, .соответственно. Пакет R matrixcalc представляет функцию hadamard.prod()произведения Адамара числовых матриц или векторов. [23]

Приложения

Произведение Адамара появляется в алгоритмах сжатия с потерями , таких как JPEG . Шаг декодирования включает в себя произведение «вход-за-вход», другими словами, произведение Адамара. [ нужна цитата ]

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

Он используется в литературе по машинному обучению , например, для описания архитектуры рекуррентных нейронных сетей как GRU или LSTM . [24]

Он также используется для изучения статистических свойств случайных векторов и матриц.[25] [26]

Проникающее средство для лица

Проникающее торцевое произведение матриц

По определению В. Слюсаря проникающее гранное произведение матрицы p × g и n -мерной матрицы ( n > 1) с блоками p × g ( ) представляет собой матрицу размера вида: [27]

Пример

Если

затем

Основные свойства

[27]

где обозначает произведение граней матриц,

где вектор.

Приложения

Произведение проникающей грани используется в тензорно -матричной теории цифровых антенных решеток . [27] Эту операцию также можно использовать в моделях искусственных нейронных сетей , особенно в сверточных слоях. [28]

Смотрите также

Рекомендации

  1. ^ Аб Хорн, Роджер А.; Джонсон, Чарльз Р. (2012). Матричный анализ . Издательство Кембриджского университета.
  2. ^ Дэвис, Чендлер (1962). «Норма эксплуатации изделия Шура». Нумерическая математика . 4 (1): 343–44. дои : 10.1007/bf01386329. S2CID  121027182.
  3. ↑ abc Million, Элизабет (12 апреля 2007 г.). «Произведение Адамара» (PDF) . buzzard.ups.edu . Проверено 6 сентября 2020 г.
  4. ^ «Продукт Адамара - Глоссарий машинного обучения» . машинное обучение.wtf .
  5. ^ «Линейная алгебра - Что означает точка в круге?». Математический обмен стеками .
  6. ^ «Поэлементное (или поточечное) обозначение операций?». Математический обмен стеками .
  7. ^ ab Million, Элизабет. «Произведение Адамара» (PDF) . Проверено 2 января 2012 г.
  8. ^ abc Стьян, Джордж П.Х. (1973), «Произведение Адамара и многомерный статистический анализ», Линейная алгебра и ее приложения , 6 : 217–240, doi : 10.1016/0024-3795(73)90023-2, hdl : 10338.dmlcz /102190
  9. ^ Лю, Шуанчжэ; Тренклер, Гетц (2008). «Адамар, Хатри-Рао, Кронекер и другие матричные продукты». Международный журнал информационных и системных наук . 4 (1): 160–177.
  10. ^ Лю, Шуанчжэ; Лейва, Виктор; Чжуан, Дэн; Ма, Тифенг; Фигероа-Суньига, Хорхе И. (2022). «Матричное дифференциальное исчисление с приложениями в многомерной линейной модели и ее диагностика». Журнал многомерного анализа . 188 : 104849. doi : 10.1016/j.jmva.2021.104849 . S2CID  239598156.
  11. ^ Лю, Шуанчжэ; Тренклер, Гетц; Колло, Тыну; фон Розен, Дитрих; Баксалари, Оскар Мария (2023). «Профессор Хайнц Нойдекер и матричное дифференциальное исчисление». Статистические документы . doi : 10.1007/s00362-023-01499-w.
  12. ^ Хиай, Фумио; Линь, Минхуа (февраль 2017 г.). «О неравенстве собственных значений, включающем произведение Адамара». Линейная алгебра и ее приложения . 515 : 313–320. дои : 10.1016/j.laa.2016.11.017 .
  13. ^ «Проект» (PDF) . buzzard.ups.edu. 2007 . Проверено 18 декабря 2019 г.
  14. ^ Слюсарь, В.И. (1998). «Конечные продукты в матрицах радиолокационных приложений» (PDF) . Радиоэлектроника и системы связи . 41 (3): 50–53.
  15. ^ Аб Римс, Роберт (1999). «Обратные Адамара, квадратные корни и произведения почти полуопределенных матриц». Линейная алгебра и ее приложения . 288 : 35–43. дои : 10.1016/S0024-3795(98)10162-3 .
  16. ^ Вецштейн, Гордон; Ланман, Дуглас; Хирш, Мэтью; Раскар, Рамеш. «Дополнительный материал: Тензорные дисплеи: синтез сжимающего светового поля с использованием многослойных дисплеев с направленной подсветкой» (PDF) . Медиалаборатория Массачусетского технологического института .
  17. ^ Цыганек, Богуслав (2013). Обнаружение и распознавание объектов на цифровых изображениях: теория и практика. Джон Уайли и сыновья. п. 109. ИСБН 9781118618363.
  18. ^ «Функция времени MATLAB» .
  19. ^ «Массив против матричных операций».
  20. ^ «Векторизованные «точечные» операторы» . Проверено 31 января 2024 г.
  21. ^ «Точечный синтаксис для векторизации функций» . Проверено 31 января 2024 г.
  22. ^ «Общие матрицы — документация SymPy 1.9» .
  23. ^ «Умножение матрицы». Введение в Р. Проект R для статистических вычислений. 16 мая 2013 года . Проверено 24 августа 2013 г.
  24. ^ Сак, Хашим; Старший, Эндрю; Бофе, Франсуаза (5 февраля 2014 г.). «Архитектуры рекуррентных нейронных сетей на основе долгосрочной краткосрочной памяти для распознавания речи с большим словарным запасом». arXiv : 1402.1128 [cs.NE].
  25. ^ Нойдекер, Хайнц; Лю, Шуанчжэ; Поласек, Вольфганг (1995). «Произведение Адамара и некоторые его приложения в статистике». Статистика . 26 (4): 365–373. дои : 10.1080/02331889508802503.
  26. ^ Нойдекер, Хайнц; Лю, Шуанчжэ (2001). «Некоторые статистические свойства произведений Адамара случайных матриц». Статистические документы . 42 (4): 475–487. дои : 10.1007/s003620100074. S2CID  121385730.
  27. ↑ abc Слюсар, VI (13 марта 1998 г.). «Семейство матриц лицевых продуктов и его свойства» (PDF) . Кибернетика и системный анализ ПК Кибернетика и Системный анализ. 1999 . 35 (3): 379–384. дои : 10.1007/BF02733426. S2CID  119661450.
  28. ^ Ха Д., Дай AM, Le QV (2017). «Гиперсети». Международная конференция по обучающим представлениям (ICLR), 2017. – Тулон, 2017.: Страница 6. arXiv : 1609.09106 .{{cite journal}}: CS1 maint: multiple names: authors list (link)