
이번 포스팅은 3강에 대한 내용 입니다.
3강에서 나온 큼지막한 내용은
손실함수(Loss Function)
정규화(Regularization)
최적화(Optimization)
이미지 피쳐(Image Feature)
에 대한 내용이었습니다.

첫번째로 Hinge Loss입니다. 주로 SVM(서포트 벡터 머신)에 사용되는 손실함수 입니다.

똑같은 손실함수 이며, -log값을 최소화 하는것이 목적입니다.
모든 확률값을 더하면 '1'이 되는 특징을 갖고 있습니다.

두 손실함수의 차이에 대해 고민을 하게 되었는데, SVM함수는 뒤에 '+1'이라는 마진 값이 있어서, 변화에 크게 민감하지 않고,
반대로 소프트맥스 함수는 모든 레이블을 다 보기 때문에, 매우 민감하다고 합니다.
정규화(Regularization)
정규화는 어떤 그래프를 그렸을 때, 그 그래프가 구불구불 하면, 좋지 않습니다.
직선 그래프(단순 그래프)로 예측하는게 더 좋은데, 이렇게 만드는 과정을 'Regularization'입니다.

이렇게 구성이 되어 있습니다.
위에 빨간 네모(정규화 손실)를 제외하면, SVM손실 함수와 굉장히 유사한데, 이 두개가 충돌하면서, 최적의 값을 찾는 내용의 식 입니다.
1. 랜덤 탐색(Random Search)
2. 경사 따라가기(Follow the slope)
이렇게 두가지의 안 좋은 예시가 있습니다.

위의 식은 단순 미분식 인데, 기울기를 구하려면 미분을 하는게 맞습니다.
수치적 경사(Numerical gradient): 대략적, 느림, 작성하기 쉬움
분석적 경사(Analytic gradient): 정확, 빠름, 오류 발생 확률 높음
위와 같은 각각의 단점, 장점을 잘 활용하기 위해 두가지 방식을 잘 섞어서 쓴다고 합니다.

그리고 위 그래프가 강의자료에 있었는데, learning_rate에 따른 loss값 비교를 한눈에 알아 볼 수 있습니다.
epoch값이 증가할수록, loss값 또한 증가하면, learning_rate가 매우 높은것, epoch값 증가할수록, loss값 이쁘게 내려가면, 적당한 learning_rate.
Mini-batch Gradient Descent
Mini-batch Gradient Descent는 나눠 놓은 train세트 중, 일부만 뽑아서 쓰는 방식 입니다.
미니배치 사이즈는 그 환경에 맞춰서 쓰면 된다고 합니다.
다만, 이렇게 하면 단기간에 노이즈가 쫌 생기는데, 장기적으로 보면 loss값이 서서히 내려가서 좋은 방식이라고 합니다.
Image Features


Linear Classifier(선형 분류기)를 사용하긴 하는데,
이걸 바로 사용하면 큰일나고,
1. 픽셀 추출
2. 각각의 픽셀을 Linear Classifier(선형 분류기)에 넣기
3. 이렇게 뱉은 계산값 하나로 합치기
4. 다시 Linear Classifier(선형 분류기)
이런 과정을 거쳐야한다고 합니다.
몇가지 예시를 들어줬는데,
1. 색 히스토그램(Color Histogram)
2. Histogram of Oriented Gradients(HoG)
3. Bag of words
이미지에서 사용하는 방식이 이렇게 있다고 합니다.
시간이 흐름에 따라, Color Histogram -> HoG -> Bag of words 방식으로 발전했다고 합니다.
감사합니당 ~ 🦾