[論文レビュー] 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.
研究の動機と目的
- CNNアーキテクチャにおける代替分類器としてSVMの探索を促す。
- 標準ベンチマークであるMNISTとFashion-MNISTに対してCNN-Softmaxと比較してCNN-SVMの性能を評価する。
- データ前処理を行わず、トレーニングダイナミクスと最終的なテスト精度を分析する。
- 先行研究(Tang, 2013)に対する含意と限界を論じる。
提案手法
- 畳み込み層2層を備えたベースのCNNを使用し、その後全結合層とドロップアウトを適用する。
- 最終層のソフトマックス分類器をL2-SVM損失に置換し、Adam最適化で訓練する。
- MNISTとFashion-MNIST上で、明示的な前処理を行わず CNN-SoftmaxとCNN-SVMの2つの設定を比較する。
- 10,000ステップ後の訓練精度、訓練損失、およびテスト精度を報告する。
- ハイパーパラメータ: バッチサイズ128、ドロップアウト0.5、学習率1e-3、CNN-SVMでのC=1。
- コードは以下で入手可能: https://github.com/AFAgarap/cnn-svm
実験結果
リサーチクエスチョン
- RQ1CNN-SVMはMNISTとFashion-MNISTでCNN-Softmaxと同等またはそれ以上のテスト精度を達成しますか?
- RQ2これらのデータセットでデータ前処理を削除することはCNN-SVMの性能にどのような影響を与えますか?
- RQ3同じアーキテクチャと訓練規約の下で、CNN-SVMとCNN-Softmaxの訓練ダイナミクス(精度と損失)はどうですか?
- RQ4CNN-SVMがソフトマックスベースの分類器と競合し得ると示唆する先行研究と結果は一貫していますか?
主な発見
| データセット | CNN-Softmax | CNN-SVM |
|---|---|---|
| MNIST | 99.23% | 99.04% |
| Fashion-MNIST | 91.86% | 90.72% |
- MNISTでは、CNN-Softmaxがテスト精度でわずかにCNN-SVMを上回る(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が作成し、人間の編集者が確認しました。