MatConvNet可以用于训练模型,通常使用一种形式的随机梯度下(SGD)和反向传播。
MNIST. See examples/mnist/cnn_mnist.m.
CIFAR. See examples/cifar/cnn_cifar.m.
ImageNet. See examples/imagenet/cnn_imagenet.m.
这些演示是独立的; 特别是MNIST和CIFAR,自动下载和解压所需的数据,以便他们可以开箱即用。
虽然MNIST和CIFAR是小型数据集(通过今天的标准),并且训练在CPU上可行,ImageNet需要强大的GPU在合理的时间(几天!)内完成。 它还需要编译工具箱中的vl_imreadjpeg()命令,以便加速读取大批量的JPEG图像,并避免使GPU挨饿。
所有这些演示使用示例/ cnn_train.m和example / cnn_train_dag.m SGD驱动程序,它们是具有动量的标准SGD的简单实现,直接在MATLAB代码中完成。 但是,它应该很容易实现自己的专业或改进的解算器。