merve's picture
merve HF staff
Update README.md
766ebdb
---
language:
- en
thumbnail:
tags:
- keras
- tensorflow
- image-classification
library_name: generic
libraries: TensorBoard
license: apache-2.0
metrics:
- accuracy
model-index:
- name: Image-Classification-using-EANet
results:
- task:
type: Image-Classification-using-EANet
dataset:
type: Image
name: CIFAR100
metrics:
- type: accuracy
value: []
- type: validation loss
value: []
---
## Image-Classification-using-EANet with Keras
This repo contains the model and the notebook on [Image Classification using EANet with Keras](https://keras.io/examples/vision/eanet/).
Credits: [ZhiYong Chang](https://github.com/czy00000) - Original Author
HF Contribution: [Drishti Sharma](https://huggingface.co/spaces/DrishtiSharma)
### Introduction
This example implements the EANet model for image classification, and demonstrates it on the [CIFAR-100](https://huggingface.co/datasets/cifar100) dataset. EANet introduces a novel attention mechanism named external attention, based on two external, small, learnable, and shared memories, which can be implemented easily by simply using two cascaded linear layers and two normalization layers. It conveniently replaces self-attention as used in existing architectures. External attention has linear complexity, as it only implicitly considers the correlations between all samples.
### Implemention of the EANet model
The EANet model leverages external attention. The computational complexity of traditional self attention is O(d * N ** 2), where d is the embedding size, and N is the number of patch. The authors find that most pixels are closely related to just a few other pixels, and an N-to-N attention matrix may be redundant. So, they propose as an alternative an external attention module where the computational complexity of external attention is O(d * S * N). As d and S are hyper-parameters, the proposed algorithm is linear in the number of pixels. In fact, this is equivalent to a drop patch operation, because a lot of information contained in a patch in an image is redundant and unimportant.