Loading...
2022. 3. 1. 21:49

딥러닝에서 말하는 경량화란?

1. 경량화란? switch transformer model은 거대하기로 유명한 GPT-3 parameter의 9.14배인 1600000000000개(1.6조) text description으로부터 image를 생성하는 DALL-E는 GPT-3 parameter의 0.068배인 12000000000개(120억) 성능을 높이려면 parameter 수를 늘려야한다고는 하지만 너무 심한 수준으로 끝을 모르고 증가하는 요즘 추세 거대기업이 아닌 일반 사람이 이런 모델을 돌리는 것은 사실상 불가능한 수준 무겁고 큰 performance가 좋은 모델에서 performance를 약간 손해보더라도 model size를 줄여 원래 모델보다 좋진 못하겠지만 어느정도 쓸 수는 있을 충분히 작은 모델을 만들고자하는 기술 경량..

2021. 12. 24. 01:13

모델의 일반화능력(generalization performance)

모델에 학습을 계속 시켜서 train data에 대해 error를 0으로 만드는 것이 최적인가? 많은 경우 우리는 ‘generalization performance’가 좋은, train data가 아닌 다른 test data에 대해 잘 동작하는 모델을 만들고자 함 iteration이 커질 수록 train error는 계속 줄어들지만 test error는 어느 순간 커진다는 것이 알려짐 generalization performance가 좋다는 것은 이 모델의 train data의 성능이 다른 test data에서의 성능과 비슷하게 나온다는 것임 generalization performance가 좋은 모델이 반드시 좋은 모델인가? 사실 그렇지도 않다. generalization performance가 좋다고..

2021. 11. 22. 23:17

가장 좋은 loss function은?

1. Huber loss MSE와 MAE가 모두 바람직하지 않은 경우도 많다. 만약 90%의 데이터가 매우 큰 값 예를 들어 200, 10% 데이터가 0~10정도 값을 가진다고 하면 MSE는 10%의 작은 값을 가지는 0~10에 맞출려고 하고 MAE는 90%의 데이터가 있는 200에 맞출려고 한다. MSE는 식 자체가 평균을 구하는 것에 목적이 있고 MAE는 중앙값을 구하는 것에 목적이 있다. 수학적으로 MSE를 가장 최소화하는 하나의 예측치는 평균이고, MAE를 가장 최소화하는 하나의 예측치는 중앙값이다. 이런 경우 적합한 loss function은 huber loss라고 있다. huber loss는 MSE와 MAE를 적절하게 합친 것이다. 그래서 MSE에 비해 outlier에 덜 민감하고 MAE에 비..

2021. 11. 22. 01:00

MSE loss 와 MAE loss의 비교

1. MSE loss(mean square error) regression 문제에서 사용하는 가장 대표적인 loss function L2 norm을 사용한다고 해서 L2 loss라고도 부른다. true value와 predicted value의 제곱합의 평균이다. $$MSE= {\sum _{i=1} ^{n} \frac{(y _{i} -y _{i}^{p} ) ^{2}}{n}}$$ root를 씌운 RMSE(Root Mean squared error)를 종종 쓰기도 한다. $$RMSE= \sqrt [2]{\sum _{i=1} ^{n} \frac{(y _{i} -y _{i}^{p} ) ^{2}}{n}}$$ 풀기 쉽다는 이유에서 가장 많이 쓰인다. 미분을 하기 쉬워서, 최적화하기가 쉬워서 자주 쓰인다. 그러나 o..

loss function에 대하여

1. loss function은 도대체 무엇인가? 누군가가 loss function이 뭐냐고 물어보면 뭐라 대답해야할지 모르겠다. 나라면 당장 데이터의 실제 정답(ground truth)과 모델이 예측한 대답의 차이로 정의되는 함수라고 답할 것 같다 찾아보니까 대부분 이 말에 비슷한 것 같다 위키피디아의 첫줄 정의를 가지고 와봤다. 'In mathematical optimization and decision theory, a loss function or cost function is a function that maps an event or values of one or more variables onto a real number intuitively representing some "cost" ass..

2021. 11. 1. 19:33

Gradient boosting 모형

기존 boosting이 model의 정확성을 점점 개선하는 방식으로 진행되었다면 gradient boosting은 그 이름에서도 알 수 있듯이 loss function을 정의하고 이것을 줄여나가는 방식으로 model을 학습해나갑니다. loss function은 딥러닝에서도 자주 사용하듯이 실제값과 예측값의 차이로 정의합니다. 예시 그림을 보면 이해하기 쉬울 것이라고 생각합니다. 위 그림에서 weight를 예측하는 model을 만든다고 합시다. 실제값과 예측값의 차이인 loss function을 최소로하는 최초 예측은 모든 weight의 평균값으로 예측하는 것이 제일 간단합니다. 여기서 평균은 71.2라고 합니다. 예측한 값과 실제 값들의 차이(이것을 residual 혹은 loss라고 부릅니다)를 각 ro..