MNIST CNN from scratch
CNN to classify digits coded from scratch using cross-entropy loss and Adam optimizer.
This CNN has two convolutional layers, one max pooling layer, and two fully connected layers, employing cross-entropy as the loss function. To use this, load the mnist data into your Workspace, and run main_cnn. Parameters for training (number of epochs, batch size) can be adapted, as well as parameters pertaining to the Adam optimizer.
Trained on 1 epoch, the CNN achieves an accuracy of 95% on the test set. Accuracy may be improved by parameter tuning, but I coded this to construct the components of a typical CNN. Functions for the calculation of convolutions, max pooling, gradients (through backpopagation), etc. can be adapted for other architectures.
引用
Sabina Stefan (2024). MNIST CNN from scratch (https://github.com/sstefan01/MNIST_CNN_from_scratch), GitHub. 取得済み .
MATLAB リリースの互換性
プラットフォームの互換性
Windows macOS Linuxカテゴリ
- Image Processing and Computer Vision > Computer Vision Toolbox > Recognition, Object Detection, and Semantic Segmentation >
タグ
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!GitHub の既定のブランチを使用するバージョンはダウンロードできません
バージョン | 公開済み | リリース ノート | |
---|---|---|---|
1.1 | Improved speed/ fixed bugs |
|
|
1.0.0 |
|