CS231n 3강 Loss function, optimization

이은비·2024년 3월 12일

SVM의 hingeloss

  1. 모두 1만큼 증가하는 결과
  2. score에 대해 mean값->큰 의미 없다
  3. 제곱한것을 사용 nonlinear하기 때문에 차이가 있다.
  4. 최저값은 0 최대값은 무한대.
    5.일반적으로 weight를 작게하는데 이를 0으로 한다면 이때의 loss ->2라는 값이 나올 것이다.
    loss값이 이규칙에 맞는지 미리 체크하는것 "sanitycheck"
    유니크한 weight값을 결정하기 위해서 하는 것 ->"weight regularization"
    lambda = regularization strenght라는 파라미터 값
    L=data loss항 + regularizaition loss항 각각은 training dataset,test dataset에 최대한 일반화
    따라서 각각의 항이 서로 싸우면서 합의점을 찾는 과정 가장 최적화된 weight값
    L2 regularization,(dropout도 regularizaiton에 대한 내용)
    trainingset에는 안좋을지 모르지만 testset에 대한 perfromance좋은
    weight가 작기를 원하는 regularization loss항 그러나 분류를 하기위해서는 weight가 0일수는 없음.
    같은 score라면 최대한 spreadout된 형태를 선호한다.

Softmax classifier
scores=클래스를 정규화하지 않은 log확률
하고자하는것은 log의 확률을 최대화 하고자 하는 것
W가 얼마나 괜찮은가 수식에 따르면 정확한 클래스의 -로그의 확률을 최소화 하고자 하는 것
결과 식에 대해서는 cross-entropy loss

1.loss의 최소값과 최대값은 ? -logx를 참고 최대값은 무한대 최소값은 0
5.일반적으로 weight를 작게하는데 이를 0으로 한다면 이때의 loss ->각각1, 최종 -log(1/3)라는 값이 나올 것이다.
실제로는 softmax를 좀더 많이 사용하기는 한다
상대적으로 비교하면 SVM은 변화에 대해서 둔감하다는 것을 알 수 있고, softmax는 그에비해 값이 더 잘 변한다는 것을 알 수 있다.

Optimization(loss를 최소해가는 과정
regularization loss는 weight에만 영향을 받는다.
절대로 하면안되는 것 random search
최적화를 해나가는 과정 전략 follow the slope
미분을 이용해서!
Gradient descent
step_size=lr=alpha
regularization strenght = lambda ->최적화필요
mini-batch gradient descent 전체 dataset을 나눠서 학습하는 것.
learning rate너무 크면 explode
너무 작으면 너무 느림
decay를 통해 lr를 조절하기도 한다,
인수로 momentum loss가 줄어드는 속도에 대한 것.

Image feature
feature를 추출,
추출방식
1)color histogram
2)hog/sift edge방향을 통해 feature추출.
3)bag of words 사전화
전통적인 image feature추출 과정에서는
이처럼 feature추출 후, 이후과정을 진행하였지만
딥러닝에서는 feature 추출과정 없이 바로 linear classification으로 던져준다.

profile
cs/ce 전공 재학생입니다.

0개의 댓글