일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- featureimportances
- 머신러닝 #ml #기본기
- 상호 배제
- db
- 운영체제
- 속성중요도
- gridsearch
- 머신러닝 #ml #미분 #기본기
- 결정트리
- cross_val_score
- 머신러닝 #ml #선형대수학 #기본기
- 에다 부스트
- bootstrapping
- Mutex lock
- jdk #javac #jre #java standard library #javadoc #jar #java
- 코틀린
- 다항회귀
- ml
- Java
- 11049
- min-max
- Kotlin
- 멀티 프로그래밍
- 디자인 패턴 #싱글톤
- featurescaling
- 지니불순도
- Mutual exclusion
- 경쟁 조건
- ML
- JetBrains
- Today
- Total
코딩하는 오리
[ML] 머신 러닝 기본기 - 2. 선형대수학 필요한 만큼만 배우기 본문
01. 일차식과 일차 함수
선형 대수학
일차식 : 가장 높은 차수가 1인 다항식 (ax+b)
일차 함수 : y = ax+b
02. 일차 함수 표기법
일차 함수의 예시
f(x,y) = 3x+6y+4
f(x0,x1,,,xn) = a0x0+a1x1 + ... + anxn + b
03. 행렬과 벡터
행렬 : Matrix, 수를 직사각형의 형태로 나열한 것
3(i)행, 4(j)열 => 3x4 행렬 => A34(Aij)
벡터 : Vector, 행 또는 열이 1인 행렬
열벡터(1열만 존재하는 행렬) = 벡터
행벡터(1행만 존재하는 행렬)
벡터의 차원 = 굳이 몇 X 몇 하지 않고 원소의 갯수를 표현. ex) 열 5개 : 5차원의 벡터
행렬은 주로 대문자 알파벳, 벡터는 주로 소문자 알파벳으로 표현
05. numpy로 행렬 사용하기
2차원 배열 : list 안에 list 형태
A = np.array([2차원행렬])
B = np.random.rand(3,5) : 3x5 행렬 생성(0~1 사이의 랜덤 값)
C = np.zeros((2,4)) : 2x4 행렬 생성(값은 0)
값 조회 : A [행값][열값]
07. 행렬 연산 (덧셈, 스칼라곱)
행렬 덧셈과 곱셈
행렬 덧셈 : 두 행렬의 차원(행 수, 열 수)가 같아야 가능
행렬 곱셈
1) 스칼라 곱 : 행렬 x 수
2) 두 행렬의 곱
- 내적곱 : [2x3] 행렬 , [3x2] 행렬 => 결과 [2x2 행렬]
mxn 행렬 A, nxp 행렬 B => mxp 행렬 AB 생성
AB는 BA와 다름
- 외적곱
- 요소별 곱하기 : A∘B (두 행렬 차원이 같아야 가능)
A @ B, np.dot(A,B)
15. 전치 행렬, 단위 행렬, 역행렬
특수 행렬들
1) 전치 행렬(transposed matrix) : A의 전치는 B (B는 A의 행과 열을 뒤바꾼 것)
전치 행렬 사용 이유 : 행렬의 모양을 맞춰야 할 때 사용 가능
np.transpose(A)
A.T
2) 단위 행렬(identity matrix) : 왼쪽 위로부터 아래 대각선으로 값이 1, 나머지는 0인 행렬. 항상 정사각형 모양
단위 행렬 사용 이유 : 어떤 수에 1을 곱할 때 그 수 그대로, 어떤 행열이든 단위행렬을 곱하면 기존 행렬이 그대로 유지
np.identity(3) : 3x3 단위행렬
3) 역행렬(inverse matrix) : 행렬 A에 곱했을 때 단위 행렬이 나오도록 하는 행렬
역수 : 곱했을 때 1이 되도록 하는 수
모든 행렬에 역행렬이 있는 것은 아님 ! 역행렬은 반드시 정사각형
np.linalg.pinv(A) : 역행렬이 없어도, 최대한 비슷한 효과를 낼 수 있는 값을 리턴해
19. 선형대수학과 행렬/벡터
아무리 복잡한 선형 시스템도 행렬과 벡터로 쉽게 표현할 수 있음 !
Ax=y
20. 선형대수학이 머신 러닝에 필요한 이유
아파트 가격 예측
집 값 = 크기 X a1 + 지하철 역 거리 X a2 + 층수 X a3
머신 러닝을 할 때는 데이터를 일차식에 사용하는 경우가 많다
행렬을 이용하면 정돈된 형태로 효율적이게 계산을 할 수 있다
선형 대수학은 일차식, 일차 함수, 행렬, 벡터를 다루는 학문이기 때문에 필수
'AI > ML' 카테고리의 다른 글
[ML] 기본 지도 학습 알고리즘들 - 3. 다항 회귀 (Polynomial Regression) (0) | 2024.07.30 |
---|---|
[ML] 기본 지도 학습 알고리즘들 - 2. 다중 선형 회귀(Multiple Linear Regression) (0) | 2024.07.29 |
[ML] 기본 지도 학습 알고리즘들 - 1. 선형 회귀(Linear Regression) (0) | 2024.07.27 |
[ML] 머신 러닝 기본기 - 3. 미분 필요한 만큼만 배우기 (0) | 2024.07.21 |
[ML] 머신 러닝 기본기 - 1. 머신러닝이란? (0) | 2024.07.12 |