[논문 리뷰] An Architecture Combining Convolutional Neural Network (CNN) and Support Vector Machine (SVM) for Image Classification
이 논문은 이미지 분류를 위한 CNN-SVM 아키텍처를 구현하고 MNIST와 Fashion-MNIST에서 CNN-Softmax와 비교하며 유사하거나 약간 다른 정확도를 보고합니다.
Convolutional neural networks (CNNs) are similar to "ordinary" neural networks in the sense that they are made up of hidden layers consisting of neurons with "learnable" parameters. These neurons receive inputs, performs a dot product, and then follows it with a non-linearity. The whole network expresses the mapping between raw image pixels and their class scores. Conventionally, the Softmax function is the classifier used at the last layer of this network. However, there have been studies (Alalshekmubarak and Smith, 2013; Agarap, 2017; Tang, 2013) conducted to challenge this norm. The cited studies introduce the usage of linear support vector machine (SVM) in an artificial neural network architecture. This project is yet another take on the subject, and is inspired by (Tang, 2013). Empirical data has shown that the CNN-SVM model was able to achieve a test accuracy of ~99.04% using the MNIST dataset (LeCun, Cortes, and Burges, 2010). On the other hand, the CNN-Softmax was able to achieve a test accuracy of ~99.23% using the same dataset. Both models were also tested on the recently-published Fashion-MNIST dataset (Xiao, Rasul, and Vollgraf, 2017), which is suppose to be a more difficult image classification dataset than MNIST (Zalandoresearch, 2017). This proved to be the case as CNN-SVM reached a test accuracy of ~90.72%, while the CNN-Softmax reached a test accuracy of ~91.86%. The said results may be improved if data preprocessing techniques were employed on the datasets, and if the base CNN model was a relatively more sophisticated than the one used in this study.
연구 동기 및 목표
- SVM을 CNN 아키텍처의 대안 분류기로 탐색하도록 동기를 부여한다.
- 표준 벤치마크인 MNIST와 Fashion-MNIST에서 CNN-SVM 성능을 CNN-Softmax와 비교 평가한다.
- 데이터 전처리 없이 트레이닝 다이나믹스와 최종 테스트 정확도를 분석한다.
- 이전 연구(Tang, 2013)와의 관련성 및 한계를 논의한다.
제안 방법
- 두 개의 합성곱 계층 followed by 완전 연결 계층과 드롭아웃이 있는 기본 CNN을 사용한다.
- 마지막 계층의 소프트맥스 분류기를 L2-SVM 손실로 대체하고 Adam 최적화로 학습한다.
- 명시적 전처리 없이 MNIST와 Fashion-MNIST에서 CNN-Softmax와 CNN-SVM의 두 설정을 비교한다.
- 10,000 스텝 후의 학습 정확도, 학습 손실, 테스트 정확도를 보고한다.
- 하이퍼파라미터: 배치 크기 128, 드롭아웃 0.5, 학습률 1e-3, CNN-SVM의 SVM C = 1.
- 코드 가능: https://github.com/AFAgarap/cnn-svm
실험 결과
연구 질문
- RQ1CNN-SVM이 MNIST와 Fashion-MNIST에서 CNN-Softmax와 비교해 동등하거나 더 나은 테스트 정확도를 달성하는가?
- RQ2데이터 전처리 제거가 이 데이터셋에서 CNN-SVM 성능에 어떤 영향을 미치는가?
- RQ3동일한 아키텍처와 학습 규칙에서 CNN-SVM 대 CNN-Softmax의 학습 다이나믹스(정확도와 손실)는 어떻게 되는가?
- RQ4결과가 CNN-SVM이 소프트맥스 기반 분류기와 경쟁할 수 있다는 기존 연구 Tang, 2013의 주장을 지지하는가?
주요 결과
| Dataset | CNN-Softmax | CNN-SVM |
|---|---|---|
| MNIST | 99.23% | 99.04% |
| Fashion-MNIST | 91.86% | 90.72% |
- MNIST에서 CNN-Softmax가 테스트 정확도에서 약간 앞섰다 (99.23% 대 99.04%).
- Fashion-MNIST에서 CNN-Softmax가 역시 CNN-SVM보다 우수하다 (91.86% 대 90.72%).
- MNIST와 Fashion-MNIST에서 두 모델의 학습 시간은 약 4분 정도로 비슷했다(훈련 스텝에서의 추정).
- 데이터 전처리 없이 테스트된 데이터셋에 대해 CNN-SVM은 경쟁적이긴 하지만 CNN-Softmax를 능가하지 못한다.
- 연구는 더 정교한 베이스 CNN 모델 및 전처리 방법이 관련 연구(Tang, 2013)의 결과를 재현하거나 향상시킬 수 있음을 시사한다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.