# Image classification with ConvMixer

**URL:** <https://discuss.ai.google.dev/t/image-classification-with-convmixer/28801>\
**Category:** Show and Tell\
**Tags:** education, learning, keras\
**Created:** [October 18, 2021, 4:34pm UTC](https://discuss.ai.google.dev/t/image-classification-with-convmixer/28801 "2021-10-18T16:34:14Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Sayak\_Paul](https://d1dlmcr85iqnpo.cloudfront.net/user_avatar/discuss.ai.google.dev/sayak_paul/32/13002_2.png) [@Sayak\_Paul](https://discuss.ai.google.dev/u/Sayak_Paul)\
**Post date:** [October 18, 2021, 4:34pm UTC](https://discuss.ai.google.dev/t/image-classification-with-convmixer/28801/1 "2021-10-18T16:34:14Z")

</div>

What happens when we apply similar pure convolution blocks on patches of images? We can train a network with 0.8 million parameters for 10 epochs on CIFAR-10 and get ~83% top-1 test accuracy without having to use any fancy regularization. ConvMixer (the recently talked about architecture on Twitter):

> **[Keras documentation: Image classification with ConvMixer](https://keras.io/examples/vision/convmixer/)**
>
> Keras documentation

There are a few visualizations of the internals of ConvMixer that might be useful for the community.

Learned patch embeddings:

 ![image](https://d3qe71uytubmmx.cloudfront.net/original/2X/1/1d594030e8b87178404489c13c9be26a18d10f62.jpeg)

Convolution kernel from the middle of the network showing varying locality spans:

 ![image](https://d3qe71uytubmmx.cloudfront.net/original/2X/a/ad450d6f333cf0e25f7ee069eb615c20d64d7230.jpeg)
