이 자료는 인공지능 교육 비영리단체 OUTTA 에서 출판한 《인공지능 교육단체 OUTTA 와 함께 하는! 머신러닝 첫 단추 끼우기》 를 바탕으로 제작되었습니다.
Remnote 자료의 경우 링크를 통해 확인하실 수 있습니다.
Made by Hyunsoo Lee (SNU Dept. of Electrical and Computer Engineering, Leader of Mentor Team for 2022 Spring Semester)
모델 (Model) : 관찰한 데이터로부터 예측과 결정을 얻어내는 수학적 함수
모델 파라미터 (Model Parameters): 올바른 예측과 결정을 얻기 위해 조정(tuning)하는 변수들 모델의 함수식을 결정하는 역할을 하는 변수들
손실 함수 (Loss function) : 모델의 질을 평가하는 함수
선형 회귀 (Linear Regression) : 독립변수와 종속변수에 대해, 두 변수의 관계를 설명할 수 있는 선형 함수를 찾아내는 과정
종속 변수 : , 독립 변수 :
수학적 모델링
Data points
전체 데이터 개수 개
True Data points :
Expected Data points :
잔차 (Residual)
잔차 :
잔차 제곱합 (RSS)
Q) 잔차의 합 대신 제곱을 사용하는 이유?
A) 잔차의 부호가 고려되지 않기 때문. +, - 부호가 섞여 있는 경우 잔차의 합은 선형 회귀 모델의 오차를 Perfectly represent 하지 못한다.
Q) 잔차의 절댓값 합 대신 제곱합을 사용하는 이유?
A) 절댓값을 사용한 경우 모델 오차로써의 의의는 가지지만, 이를 최적화 하는 과정이 제곱합을 이용했을 때에 비해 복잡하기 때문. 여러 최적화 기법 중 미분을 사용하는데, 절댓값의 합으로 이루어진 함수를 미분해 최소값을 찾는 과정은 복잡함. 반면 제곱합을 미분해 최솟값을 찾는 과정은 상대적으로 컴퓨터가 연산하기 수월함.
선형 회귀 모델이 학습을 통해 최소화 하고자 하는 값 RSS
손실 함수 (Loss Function)
RSS를 이용해서 정의
최소제곱법
손실 함수 를 최소화하는 구하기
위험도와 경험적 위험도 최적화
Definition of MSE (Risk, 위험도)
경험적인 위험도 (Empirical Risk) : 학습용 데이터셋에 대해, 개별 데이터 각각의 손실의 평균을 구한 것
ex) MSE, |Residual|, Cross-Entropy
경험적 위험도 최적화 : Train Datasets의 경험적인 위험도를 감소시켜 Optimal Model 을 찾는 과정
과적합 (Overfitting) : Train data 수가 적을 때, Train data에 모델이 과하게 학습되어 Test data에 대한 성능이 감소하는 경우
구조적 위험도 최소화(Structural Risk Minimization)
기존의 오차 함수 (경험적 위험도)에 Model의 Complexity에 관한 Penalty 항을 추가해, 모델의 Performance와 Complexity 간의 균형을 맞추는 학습 방법
Overfitting 방지
Ex) 가중치 규제(Weight Decay), 배치 정규화(Batch Normalization), 규제(Regularization), etc...
Method 1 : 직접 구하기 (Brute-Force)
(0) 원리 : 손실 함수가 최솟값을 가질 때 :(1) 손실 함수 전개
(2) 을 에 대해 편미분
(3) 편미분 식으로부터 구하기
(4) 최소제곱법을 사용할 수 없는 경우
(5) 일반화
개의 data point 에 대해, 변수를 다음과 같이 정의하자.
이 때 앞서 정의한 손실 함수는 아래와 같다.
(2), (3)의 과정을 통해 의 값을 구하면 다음과 같다.
Method 2: Gradient Descent