Review


이전 강의에서는 KNN, 하이퍼파라미터를 찾는 방법, linear classifier 에 대해서 배웠습니다.

image → f(x,w)→ class scores (어떤 class의 score가 높으면 분류기는 이미지가 그 class일 것이라고 생각합니다.)

Linear clssification은 고차원 공간에서의 일종의 "결정 경계"를 학습한다는 측면으로 볼 수 있는데, 그 공간의 차원은 이미지의 픽셀 값에 해당하는 것입니다.

그럼 W를 어떻게 만들어내는가? 가장 좋은 행렬 W를 구하는데 어떻게 트레이닝 데이터를 활용해야 하는가?

눈으로 직접 확인하면서, W가 좋은지 아닌지 확인하는 것은 비효율적입니다. 그래서 이런 일을 자동으로 해주는 어떤 알고리즘을 만들고, 어떤 W가 좋은지 나쁜지 확인하기 위해서 정량화를 해야하는데, 이때 이용하는것이 loss function 입니다. W 가 얼마나 좋지 않은지 확인할 수 있도록 하는 것입니다.

이제 저희가 하고싶은것은 W가 될 수 있는 여러가지 경우들 중에서, 가장 괜찮은 것을 찾는 것인데, 이 과정을 optimization 이라고 합니다.

Loss function


이제 그럼 loss function에 대해서 살펴보겠습니다.

어떤 N개 의 트레이닝 데이터가 있다고 할때, x는 이미지로, y는 그 이미지에 대한 클래스로 표현하겠습니다.

f(x,w)는 예측함수이니까 x를 넣었을 때, 어떤 클래스다라고 예측을 할 것입니다.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/a5d9b026-ed8d-445f-9cff-3e217b6d64eb/Untitled.png

지금 loss function이 Li로 표현되어 있습니다. 입력으로 예측함수에 의해서 나온 스코어값과, 실제 정답 클래스의 값이 들어값니다. 그럼 결과로 예측 결과가 얼마나 나쁜지 정량화된 수치가 나옵니다.