Hadamard 제품(매트릭스)
Hadamard product (matrices)수학에서 파이고 요소는 각 요소, j제품은 원래 두 matrice의 j는 피연산자와 같은 차원의 또 다른 매트릭스를 생성하는 같은 치수의 두 매트릭스는 아다마르 제품(또한element-wise 제품으로 알려진entrywise product[1][2]:ch.5~슈어 product[3])는 2항 작업이다.s 그것은 더 일반적인 매트릭스 제품과 구별되는 것이다. 그것은 프랑스의 수학자 자크 하다마드나 독일의 수학자 잇사이 슈르에게 기인하고 이름을 따서 명명되었다.
Hadamard 제품은 연관성이 있고 유통성이 있다. 매트릭스 제품과 달리, 그것은 또한 대응적이다.[4]
정의
동일한 치수 m × n의 두 행렬 A와 B에 대해, Hadamard 제품 A [1][5][6][7]는 피연산자와 동일한 치수의 행렬이며, 다음과[4] 같은 요소에 의해 주어진다.
차원이 다른 행렬(m × n 및 p × q, 여기서 m ≠ p 또는 n ≠ q)의 경우, Hadamard 제품은 정의되지 않는다.
예
예를 들어, 3 × 3 매트릭스 B의 3 × 3 매트릭스 A에 대한 Hadamard 제품은 다음과 같다.
특성.
- Hadamard 제품은 (커뮤니케이션 링과 작업할 때), 연관성이 있고 덧셈보다 분배성이 있다. 즉, A, B, C가 같은 크기의 행렬이고 k가 스칼라인 경우:
- 2 m × n 행렬의 Hadamard 곱하기 아래의 ID 행렬은 모든 원소가 1과 동일한 m × n 행렬이다. 이는 주 대각선 원소만 1과 같은 정규 행렬 곱셈의 ID 행렬과는 다르다. 게다가, 만약 원소가 0이 아닌 경우에만, 하나의 행렬은 Hadamard 곱셈에서 역행한다.[8]
- 벡터 x와 y, 그리고 이러한 벡터를 주 대각선으로 하는 해당 대각 행렬x D와y D의 경우, 다음과 같은 정체성이 유지된다.[2]: 479
- 하다마드 제품은 크로네커 제품의 주요 서브트릭스다.
- Hadamard 제품은 계급 불평등을 만족시킨다.
- A와 B가 양립할 수 있는 행렬이라면, Hadamard 제품과 관련된 다음과 같은 불평등이 유효하다.[10]
- D와 E가 대각 행렬인 경우[11]
- 및 의 두 벡터의 Hadamard 제품은 다른 벡터의 해당 대각 행렬에 의한 한 벡터의 행렬 곱셈과 동일하다.
혼합물 속성
- , where is Kronecker product
- , where denotes face-splitting product.[12]
- )( D)=( ) D) D 여기서 은 기둥-현 Khatri-rao 제품이다.
슈르 생산물 정리
두 개의 양성-세미드 피니트 행렬의 하다마드 제품은 양성-세미드 피니트다.[4][9] 이것은 러시아의 수학자 잇사이 슈르의 이름을 따서 슈르 제품 정리라고 알려져 있다.[8] 또한 두 가지 양-세미드 피니트 행렬 A와 B의 경우, Hadamard 제품의 결정요인이 각 결정요인의 산물보다 크거나 같은 것으로 알려져 있다.[9]
프로그래밍 언어에서
Hadamard 곱셈은 다양한 이름으로 특정 프로그래밍 언어에 내장되어 있다. MATLAB, GNU 옥타브, GAUSS, HP Prime에서는 어레이 곱셈, 줄리아브로드캐스트 곱셈으로 알려져 있으며 기호가 있다. .*
.[13] Fortran, R,[14] APL, J, Wolfram Language (Mathematica)에서는 간단한 곱셈 연산자를 통해 이루어진다. *
매트릭스 제품은 함수를 통해 수행되는 반면, matmul
, %*%
, +.×
, +/ .*
그리고 .
각각 연산자. NumPy 숫자 라이브러리가 있는 파이썬에서는 객체를 로 배열하다. a*b
Hadamard 제품을 생산하고, 곱셈을 다음과 같이 생산한다. a@b
매트릭스 제품을 생산한다. SymPy 심볼 라이브러리를 사용하면 어레이 개체를 두 개 모두로 곱할 수 있음 a*b
그리고 a@b
매트릭스 제품을 생산하고, Hadamard 제품은 다음과 같이 얻을 수 있다. a.multiply_elementwise(b)
.[15] C++에서 Eigen 라이브러리는 cwiseProduct
Matrix 클래스에 대한 멤버 함수(a.cwiseProduct(b)
() 아르마딜로 도서관은 운영자를 사용한다. %
콤팩트한 표현을 하다(a % b
; a * b
매트릭스 제품). R 패키지 행렬계산 기능 도입 hadamard.prod()
숫자 행렬 또는 벡터의 Hadamard 제품.
적용들
Hadamard 제품은 JPEG와 같은 손실 압축 알고리즘에 나타난다. 디코딩 단계에는 엔트리 포 엔트리 제품, 즉 하다마드 제품이 포함된다.[citation needed]
기계학습 문헌에서도 사용되는데, 예를 들어 재발 신경망의 구조를 GRU나 LSTM으로 기술하는 데에도 사용된다.[citation needed]
유사 연산
다른 하다마드 연산도 다음과 같은 행렬에 대해 정의된 수학 문헌, [16]즉 하다마드 근원과 하다마드 힘(분수 지수로 인해 사실상 동일한 것임)에서 볼 수 있다.
을 위해
그리고 위하여
Hadamard 역은 다음과 같다.[16]
Hadamard 분할은 다음과 같이 정의된다.[17][18]
침투 면 제품
V의 정의에 따르면. 슬리퍼사(Sliusar)는 pg 블록(=[ 과 n차원 B n > 1)의 관통면 제품은 형태 {\displaystyle {의 매트릭스다[19]
예
만약
그때
주특성
- [19];
- = M [ ( ) {
여기서 }은 행렬의 얼굴 주름 제품을 의미한다.
- = [ M 여기서 은 벡터다.
적용들
침투면 제품은 디지털 안테나 어레이의 텐서-매트릭스 이론에 사용된다.[19] 이 조작은 인공신경망 모델, 특히 경련층에서도 사용될 수 있다.[20]
참고 항목
참조
- ^ Jump up to: a b "Comprehensive List of Algebra Symbols". Math Vault. 2020-03-25. Retrieved 2020-09-06.
- ^ Jump up to: a b Horn, Roger A.; Johnson, Charles R. (2012). Matrix analysis. Cambridge University Press.
- ^ Davis, Chandler (1962). "The norm of the Schur product operation". Numerische Mathematik. 4 (1): 343–44. doi:10.1007/bf01386329.
- ^ Jump up to: a b c Million, Elizabeth (April 12, 2007). "The Hadamard Product" (PDF). buzzard.ups.edu. Retrieved September 6, 2020.
- ^ "Hadamard product - Machine Learning Glossary". machinelearning.wtf.
- ^ "linear algebra - What does a dot in a circle mean?". Mathematics Stack Exchange.
- ^ "Element-wise (or pointwise) operations notation?". Mathematics Stack Exchange.
- ^ Jump up to: a b Million, Elizabeth. "The Hadamard Product" (PDF). Retrieved 2 January 2012.
- ^ Jump up to: a b c Styan, George P. H. (1973), "Hadamard Products and Multivariate Statistical Analysis", Linear Algebra and Its Applications, 6: 217–240, doi:10.1016/0024-3795(73)90023-2, hdl:10338.dmlcz/102190
- ^ Hiai, Fumio; Lin, Minghua (February 2017). "On an eigenvalue inequality involving the Hadamard product". Linear Algebra and Its Applications. 515: 313–320. doi:10.1016/j.laa.2016.11.017.
- ^ "Project" (PDF). buzzard.ups.edu. 2007. Retrieved 2019-12-18.
- ^ Slyusar, V. I. (December 27, 1996). "End products in matrices in radar applications" (PDF). Radioelectronics and Communications Systems.– 1998, Vol. 41; Number 3: 50–53.
- ^ "Arithmetic Operators + - * / \ ^ ' -". MATLAB documentation. MathWorks. Archived from the original on 24 April 2012. Retrieved 2 January 2012.
- ^ "Matrix multiplication". An Introduction to R. The R Project for Statistical Computing. 16 May 2013. Retrieved 24 August 2013.
- ^ https://docs.sympy.org/latest/modules/matrices/common.html?highlight=multiply_elementwise#sympy.matrices.common.MatrixCommon.multiply
- ^ Jump up to: a b Reams, Robert (1999). "Hadamard inverses, square roots and products of almost semidefinite matrices". Linear Algebra and Its Applications. 288: 35–43. doi:10.1016/S0024-3795(98)10162-3.
- ^ Wetzstein, Gordon; Lanman, Douglas; Hirsch, Matthew; Raskar, Ramesh. "Supplementary Material: Tensor Displays: Compressive Light Field Synthesis using Multilayer Displays with Directional Backlighting" (PDF). MIT Media Lab.
- ^ Cyganek, Boguslaw (2013). Object Detection and Recognition in Digital Images: Theory and Practice. John Wiley & Sons. p. 109. ISBN 9781118618363.
- ^ Jump up to: a b c Slyusar, V. I. (March 13, 1998). "A Family of Face Products of Matrices and its properties" (PDF). Cybernetics and Systems Analysis C/C of Kibernetika I Sistemnyi Analiz. 1999. 35 (3): 379–384. doi:10.1007/BF02733426.
- ^ Ha D., Dai A.M., Le Q.V. (2017). "HyperNetworks". The International Conference on Learning Representations (ICLR) 2017. – Toulon, 2017.: Page 6. arXiv:1609.09106.CS1 maint: 여러 이름: 작성자 목록(링크)