Inspiration

We are interested in using AI in healthcare for early and accurate disease prediction. In this case, we are trying to detect whether the symptoms on the skin are benign or malignant cancer.

What it does

Our product use EfficientNetB0 pre-trained model for image classification on pictures of cancer patients' skin to predict whether they have benign or malignant cancer.

How we built it

First, we preprocessed the images such as resizing and augmentation using Keras. Then we trained the model using the pre-trained EfficientNetB0, which is a CNN model pre-trained by GOOGLE, and fine-tuned to fit our data. Then we test using different parameters to choose the best model.

Challenges we ran into

This is the first time we have the image classification task and using EfficientNetB0 in particular so we have to read a lot of document and watch tutorial video to choose the best solution and how to use it. When training the model, we did not have sufficient hardware like GPU to train the model so we have to rent online GPUs on Hugging Face. The MINDS dataset is too large and complex so we cannot process it to make the model more advanced.

Accomplishments that we're proud of

After testing, we achieved an accuracy of around 90%.

What we learned

We learned how to use EfficientNetB0 and compare it with other pre-trained CNN models. After choosing the right model, we learned to to fine-tuned the model with by changing the parameters and validate the accuracy after training.

Built With

  • cnn
  • keras
  • python
  • streamlit
  • tensorflow
Share this project:

Updates