| --- |
| license: apache-2.0 |
| datasets: |
| - benschill/brain-tumor-collection |
| metrics: |
| - accuracy |
| pipeline_tag: image-classification |
| --- |
| |
| # Brain Tumor Classification Model |
|
|
| ## Overview |
| This repository contains a deep learning model for brain tumor classification using Hugging Face Transformers. The model has been trained on a brain tumor dataset consisting of 5712 training samples and validated on 1311 samples. It is designed to classify brain tumor images into four classes: 'glioma', 'meningioma', 'notumor', and 'pituitary'. |
|
|
| ## Model Details |
| - **Framework**: Hugging Face Transformers |
| - **Dataset**: Brain Tumor Dataset |
| - **Training Data**: 5712 samples |
| - **Validation Data**: 1311 samples |
| - **Input Shape**: 130x130 pixels with 3 channels (RGB) |
| - **Data Preprocessing**: Data is normalized |
| - **Validation Accuracy**: 72% |
|
|
| ## Classes |
| The model classifies brain tumor images into the following classes: |
| - 'glioma' (Class 0) |
| - 'meningioma' (Class 1) |
| - 'notumor' (Class 2) |
| - 'pituitary' (Class 3) |
|
|
| ## Usage |
| You can use this model for brain tumor classification tasks. Here's an example of how to load and use the model for predictions in Python: |
|
|
| ```python |
| from transformers import AutoModelForSequenceClassification, AutoTokenizer |
| import tensorflow as tf |
| import numpy as np |
| |
| # Load the pre-trained model |
| model_name = "model/brain_tumor_model.h5" # Replace with the actual model name |
| model = tf.keras.models.load_model(model_name) |
| |
| # to get prediction |
| x = numpy array image |
| pred = np.argmax(model.predict(x),axis=-1) |
| |
| # class label |
| class_labels = {0: 'glioma', 1: 'meningioma', 2: 'notumor', 3: 'pituitary'} |
| |