4-2 엑셀 매트릭스 연산: MINVERSE 와 MMULT

in #kr5 years ago (edited)

이미 아두이노 C/C++을 사용하여 매트릭스 연산을 위한 어레이를 설정하고 매트릭스 요소 값들을 입력한 후 매트릭스 연산 룰에 따라 코딩하여 실행 후 결과를 출력하여 보았다. 이번에는 보다 HIGH LEVEL 언어라 할 수 있는 엑셀 명령을 사용하여 매트릭스 곱하기 연산을 해보자. 엑셀이 머신 러닝과 얼마나 깊은 관계를 맺고 있을지는 모르겠으나 머신 러닝이 워낙 매트릭스 연산을 바탕으로 하고 있으므로 쉽게 배울 수 있는 엑셀을 사용하여 매트릭스 연산 수학에 대한 감을 가져가지 위한 작업으로 생각하자.

머신 러닝의 대부분 연산은 학습과정에서 입력 벡터와 웨이트벡터를 곱해 바이아스를 더한 후 그 값과 알고 있는 출력 값과의 차이의 제곱을 합하여 cost 함수를 구성하고 Backpropagation 에 의해서 웨이트 값을 업데이트하여 계속적으로 웨이트 매트릭스를 수렴시키는 과정이 거의 다를 차지하고 있음에 유의하자.

매트릭스 곱하기
엑셀 스프레드쉬트에서 2x3 매트릭스 A 와 3x2 매트릭스 B를 정의 후 ‘=MMULT’ 명령을 사용하여 AxB 하여 2x2 매트릭스 C를 얻어보자. 매트릭스 결과가 2x2 로 얻어지므로 C 매트릭스 해당 영역을 클릭하여 활성화 시킨 후 입력 창에서 ‘=MMULT(’ 를 입력 후 A 매트릭스 해당 영역을 클릭하여 활성화 시키면 B5:D6 로 표기된다. ‘,’ 를 입력 후 B 매트릭스 해당 영역을 클릭하여 활성화시키면 F5:G7 이 입력된다. 이 시점에서 Cntr+Shift+Enter 하면 C 매트릭스 영역에 값들이 채워진다. 이놈의 엑셀 얼마나 많은 단축 키들을 사용했으면 Cntr+Shift+Enter 키 밖에 더 남은 단축 키는 없는 듯.

noname01.png

해보니 엑셀의 매트릭스 곱셈 기능은 아주 마음dp 들 정도로 산뜻하군요.
선형 방정식의 매트릭스 표현 및 매트릭스 인버스에 의한 해법

그렇다면 한발 더 나아가 선형 방정식(Systems of Linear Equations)을 매트릭스 형태로 표현 후 매트릭스이 인버스를 사용하여 선형 방정식의 해를 구해 보자.

noname02.png

매트릭스 표현 AX = B 의 해 X는 A 매트릭스의 역(Inverse)을 구해서 곱해주면 얻어진다. A 매트릭스의 역(Inverse)과 A를 곱해주면즉 대각선 성분이 1.0 인 단위 매트릭스 I 가 얻어지며 IX = X 가 된다.
마지막으로 A 매트릭스의 역(Inverse)이 엑셀 명령 MINVERSE 에 의해서 구해지면 B 매트릭스와 곱셈에 의해서 해인 X 매트릭스가 얻어지게 된다.

noname03.png

A 매트릭스의 역(Inverse)이 얻어지면 B 매트릭스와의 곱셈에 의해서 X 값이 얻어질 수 있다.

noname04.png

한가지 확인해봐야 할 점은 A 매트릭스와 A의 인버스 매트릭스를 곱해서 단위 매트릭스가 얻어지는가 하는 점이다. 다음의 결과를 참조하자.

noname05.png

마나마인로고.png

Sort:  

짱짱맨 호출에 응답하였습니다.

3.1 운동 100주년을 기념하여 북이오는 인터넷에 돌아다니는 많은 문헌의 오류를 수정, 정성스럽게 다국어 버전의 디지털 문서로 출간하였습니다.

3·1 독립선언서 바로가기

널리 공유되기를 희망하며, 참여에 감사를 드립니다.

Congratulations @codingart! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

You published a post every day of the week

Click here to view your Board
If you no longer want to receive notifications, reply to this comment with the word STOP

To support your work, I also upvoted your post!

Support SteemitBoard's project! Vote for its witness and get one more award!

Coin Marketplace

STEEM 0.30
TRX 0.11
JST 0.033
BTC 64223.84
ETH 3158.34
USDT 1.00
SBD 4.29