선형대수학

조권휘·2022년 6월 26일
0

Codeit_머신러닝

목록 보기
1/13
post-thumbnail

선형대수학

  • 일차식이나 일차 함수를 공부하는 학문
  • 머신러닝을 할 때 데이터를 일차식에 사용하는 경우가 많으므로 머신러닝에는 선형대수학이 필수이다.

행렬(Matrix)

  • 행렬은 수를 직사각형의 형태로 나열한 것
  • 행(row) : 행렬의 가로줄
  • 열(column) : 행렬의 세로줄
  • 배열이나 리스트의 인덱스는 0부터 시작하기 때문에 프로그래밍을 할 때 주의 할 것!

벡터(vector)

  • 일종의 행렬로, 행이 하나밖에 없거나 열이 하나밖에 없는 행렬
  • 벡터의 차원 : 원소의 개수 (ex. 위의 벡터는 m차원의 벡터)
  • 대부분 행렬은 대문자 알파벳으로, 벡터는 소문자 알파벳으로 나타낸다.

행렬 연산

  • 행렬의 덧셈 : 두 행렬의 같은 위치에 있는 원소들끼리 더해주면 된다.
    - 단, 두 행렬의 차원은 같아야한다!

  • 행렬의 스칼라곱 : 행렬의 각 원소에 스칼라 값을 곱해주면 된다.

  • 두 행렬의 곱(내적곱) : 두 행렬을 A, B라고 했을 때, A의 a행과 B의 b열을 각각 곱하여 더하면 결과 행렬의 a행 b열에 들어가는 원소가 된다.
    - 행렬끼리의 곱셈을 할 때는 A의 열 수와 B의 행 수가 동일해야 한다.
    - 행렬의 곱셈은 교환법칙이 성립하지 않는다.

  • 두 행렬 요소별 곱(외적곱) : 같은 차원의 행렬이 있을 때, 같은 행과 같은 열에 있는 요소들끼리 곱해서 새로운 행렬을 만드는 것.

    • 기호는 A○B로 나타낸다.

전치 행렬, 단위 행렬, 역행렬

  • 전치 행렬(Transpose Matrix) : 행렬의 열과 행을 바꾼 행렬
    • A행렬의 전치행렬은 A.T로 표기한다.
    • numpy 함수 : A.T

  • 단위 행렬(Identity Matrix) : 주대각선의 원소가 전부 1이고 그 외는 전부 0인 행렬
    • 어떤 행렬에 단위행렬을 곱하면 기존 행렬이 그대로 유지된다.
    • numpy함수 : np.eye(n, m) / np.identity(n)
  • 역행렬 : 행렬에 곱했을 때 단위행렬이 나오도록 하는 행렬

    • numpy함수 : np.linalg.pinv(C)

    본 포스트는 코드잇 강의를 공부하며 정리한 내용입니다! 자세한 설명은 "코드잇 머신러닝 강의를 참고해주세요!

+) 코드잇 강의 바로가기

profile
안녕하세요 :) Data/AI 공부 중인 한국외대 컴퓨터공학부 조권휘입니다.

0개의 댓글