2. 행렬

Daisy 🌼·2022년 7월 11일
0

AI 기초

목록 보기
2/5
post-thumbnail

학습목표

  • 행렬의 개념과 연산, 그리고 벡터공간에서 가지는 의미를 설명
  • 연립방정식 풀기와 선형회귀분석에 응용하는 방법을 소개
  • 벡터의 확장된 개념인 행렬은 행(row)벡터를 원소로 가지는 2차원 배열로 벡터와 다르게 계산되는 연산들에 주의
  • 행렬연산은 딥러닝에서 가장 핵심적인 연산이라고 볼 수 있을만큼 중요하고 자주 사용되기 때문에,
    행렬 연산의 메커니즘, 그리고 이 때 가지는 기하학적 의미ML에서 어떻게 사용되는지를 충분히 이해

1. 행렬


  • i번째 행벡터에 있는 j번째 원소


  • 전치행렬 (tranpose matrix)T기호를 붙여서 표기
    - 열을 행으로, 행을 열로 교환!
    - 행렬의 우측 상단과 교환


행렬은 간단하게 데이터들의 모임이구나라는 개념으로!


2. 행렬의 덧셈과 뺄셈


3. 행렬의 성분곱

  • 인덱스 위치에 따른 곱을 볼 수 있음


  • 순서를 바꾸면 다른 결과가 나옴 (순서 중요)
  • 행 개수와 열 개수가 같아야 함

4. 행렬 곱셈

  • numpy에서 @ 연산 사용


  • np.inneri번째 행벡터j번째 행벡터 사이의 내적을 성분으로 가지는 행렬을 계산
    • 곱과는 다르게, x의 행개수와 y의 행개수가 같아야 함!

5. 행렬의 내적


  • linear transform (선형변환) : 기계학습 시 많이 사용


6. 행렬의 역행렬, 유사역행렬, 무어펜로즈 역행렬

  • 역행렬 : 연산을 거꾸로 되돌리는 행렬, 행과 열 숫자가 같아야하고 행렬식이 0이 아니여야만 함

  • 행과 열의 숫자가 같아야 하고, 행렬식이 0이 아니어야 하는데 이 조건을 만족시키기 어려움

  • 유사역행렬 : 행과 열의 숫자가 달라도 계산 가능 (+)기호 사용
    • 행의 개수 열의 개수에 따라 계산
    • 기능이 다르므로 주의해야하는데 유사역행렬을 이용할 때, 행이 열보다 많으면 유사역행렬은 원래 행렬보다 더 먼저 곱해줘야 항등행렬이 나옴

  • 무어펜로즈 역행렬
    • 어떤 실수행렬에 대해서 다음과 같이 4가지 조건을 만족하는 행렬 를 무어-펜로즈(Moore-Penrose) 역행렬이라고 함


  • 코드예시

7. 행렬의 연립방정식

  • 변수의 개수 = 식의 개수 해를 구할 수 있는데,
    만약 변수의 개수 > 식의 개수 식을 만족하면, 변수의 개수가 많아지므로 해가 무한히 많다 (부정)
  • a = 개수, x1~xm = 해(solution)
  • 해가 무한하므로, 무어펜로즈 역행렬을 이용해 해를 하나만 구함

8. 행렬의 선형회귀분석

  • 변수의 개수 < 식의 개수 → 선형회귀분석 (유사역행렬 이용)



  • 사이킷런 (sklearn)


profile
세상을 이롭게하는 AI Engineer

0개의 댓글