※ 본 내용은 stanford에서 제공하는 cs231n 강의, 강의자료를 바탕으로 작성하였습니다.

 

Assignment1의 마지막 과제인 Q5에서는 이미지로부터 feature를 extraction한 후 extraction한 feature에 대해 학습하는 내용을 다루고 있다.

feature extraction 코드로 제공되고, 앞선 과제에서 만들어둔 model을 이용하여 실험을 진행한다.

 

Lecture3의 슬라이드로, feature eatraction을 거친 후 training하는 것과 raw pixel을 통해 training하는 과정의 차이를 보여준다.

 

- 0. Extract Feature

우선 앞선 과제들과 동일하게 CIFAR10 데이터를 사용하고, 제공되는 feature extraction 코드를 이용해 새로운 data로 생성한다.

ex) X_train -> X_train_feats

 

참고로 Histogram of Oriented Gradients(HDG) 와 color histogram에 대한 feature를 추출한다고 한다.

 

- 1. Train Linear SVM

먼저 Linear SVM 모델에 대해 학습을 진행해본다.

learing_rate 등의 파라미터를 조정하여 40% 이상의 정확도가 나와야 된다고 한다.

 

실험에 대한 코드는 생략하고,

learning rate와 regularization strength 그리고 num_iters를 적절히 조정하여 조정하여 47%의 정확도를 얻을 수 있었다.

 

Q2에서 SVM을 통한 정확도가 40% 정도로 나왔던 것을 생각해보면, 단순 raw pixel을 이용한 것보다 더 좋은 성능을 보이는 것을 확인할 수 있다.

- train 2-layer network

다음으로는 2-layer network에 대해 실험을 진행한다. 

 

여태까지 실험한 모델들 중 가장 좋은 성능을 보일 것이라고 한다.

(55%~60%의 정확도)

 

이미 dropout을 추가로 구현해놨기 때문에, learning_rate와 num_epochs 만 간단하게 조정하면서 실험을 진행한 결과, 

59%의 정확도를 달성할 수 있었다.

 

2 layer net만으로도 60% 정도의 정확도를 달성할 수 있을 정도로, feature extraction을 통해 큰 성능 향상을 얻을 수 있었다.

 

 

 

 

'Computer Vision > cs231n' 카테고리의 다른 글

[Lec6] Training Neural Networks, Part 1  (0) 2022.01.10
[Lec5] Convolutional Neural Network  (0) 2022.01.09
[Assignment1 - Q4] 2-layer NN  (0) 2022.01.01
[Lec 4] Backpropagation and Neural Network  (0) 2021.12.30
[Assignment1 - Q3] Softmax  (0) 2021.12.30

+ Recent posts