Skip to content

Autism Spectrum Disorder (ASD) is a developmental condition that can benefit significantly from early and accurate diagnosis, particularly through eye-tracking techniques.

Notifications You must be signed in to change notification settings

ACM40960/project-DivyaPariti

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

25 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿง  Autism Spectrum Disorder Classification using Deep Learning ๐ŸŒŸ

ASD title

Python Pip OpenSSL SQLite Setuptools Tzdata VC VS2015_Runtime Wheel ca-certificates Jupyter Notebook SCSS CSS JavaScript Other

๐Ÿ“š Introduction

Autism Spectrum Disorder (ASD) is a developmental disorder that affects communication, behavior, and social interaction. Individuals with ASD may exhibit a wide range of abilities and challenges. Some common features include difficulty with social interactions, repetitive behaviors, and sensitivity to sensory input. However, the presentation of ASD varies greatly between individuals.

In this project, we explore the use of deep learning techniques combined with eye-tracking technology for the early detection of Autism Spectrum Disorder (ASD). Early diagnosis is crucial for effective intervention, yet it often occurs around the age of 4, despite earlier symptom onset. Eye-tracking technology offers a promising, cost-effective, and non-invasive method for early diagnosis by capturing eye movement data that can serve as biomarkers for ASD.

We analyze an eye-tracking dataset using enhanced image processing techniques to extract critical visual features. This study introduces a hybrid classification approach that integrates multiple deep learning models, including GoogleNet, ResNet, XceptionV3, DenseNet, Xception, and MobileNet, to enhance the diagnostic accuracy of Autism Spectrum Disorder (ASD) detection. These features are processed through a hybrid model that leverages the strengths of multiple deep learning architectures, significantly improving the accuracy of ASD diagnosis. This approach successfully distinguishes ASD cases from typical development (TD) cases, offering a robust tool for early detection and contributing to better treatment strategies.

๐Ÿ“Š Dataset Overview

dataset

The dataset used in this project is a specialized collection of images intended for the classification of Autism Spectrum Disorder (ASD). It is organized to facilitate the training and evaluation of various deep learning models.

๐Ÿ”‘ Key Characteristics:

๐Ÿ“‚ Source and Structure: The dataset, referred to as "AutismDataset" in the notebook, is structured into directories, with subfolders representing different classes. This structure allows for easy ingestion into deep learning models using image data generators.

The data is initially stored in a consolidated folder and is then split into training and validation sets using the splitfolders library. The split ratio used is 70% for training and 30% for validation.

1. ๐Ÿ–ผ๏ธ Image Properties:

  • ๐Ÿ“ Image Size: All images are resized to 128x128 pixels to ensure uniformity across the dataset, which is crucial for feeding the data into convolutional neural networks.

  • ๐ŸŒŸ Image Scaling: The pixel values of the images are rescaled to a range of 0 to 1. This normalization helps stabilize the training process and improve the model's convergence.

2. ๐Ÿ”„ Data Augmentation:

  • Training Set: Data augmentation techniques are applied to the training set to improve the generalization of the model. This includes shearing, zooming, and horizontal flipping, which artificially increases the variety of the training data and helps the model learn more robust features.

  • Validation Set: Only scaling is applied to the validation set, ensuring that the data remains representative of real-world conditions without introducing synthetic variations.

3. ๐Ÿงฉ Class Distribution: The dataset is divided into different classes, each representing a specific category within the Autism Spectrum Disorder diagnosis. The exact classes are not detailed in the notebook, but they are structured to support a categorical classification task. This dataset is well-suited for training deep learning models aimed at diagnosing Autism Spectrum Disorder, with careful consideration given to data preparation and augmentation to maximize the performance of the models.

๐Ÿ”„ Model Workflow

model workflow

๐Ÿ“ Overview:

This section outlines the specific steps followed in the deep learning workflow used in this project for Autism Spectrum Disorder classification, as implemented in the provided Jupyter Notebook.

1. ๐Ÿ—‚๏ธ Data Preparation: The initial stage involves organizing and preprocessing the dataset:

  • ๐Ÿ“ Data Splitting: The dataset is divided into training and validation sets using the splitfolders library. This ensures a proper split between the data for training the model and validating its performance.
  • ๐Ÿ“ Image Rescaling: Images are scaled to a standard size of 128x128 pixels. This uniformity is crucial for feeding the data into the neural network.
  • ๐Ÿ”„ Data Augmentation: To enhance the training set, data augmentation techniques such as shearing, zooming, and horizontal flipping are applied. This helps the model generalize better by learning from a wider variety of data.

2. ๐Ÿ—๏ธ Model Architecture: The notebook demonstrates the use of several advanced deep learning models, each contributing unique strengths to the Autism Spectrum Disorder classification task:

  • ๐Ÿ” GoogleNet: Also known as Inception, GoogleNet is a convolutional neural network architecture that introduces the inception module, allowing the network to consider multiple filter sizes for each convolutional layer.

  • ๐Ÿ”— ResNet: Short for Residual Networks, ResNet addresses the vanishing gradient problem in deep networks by using skip connections, allowing gradients to flow through the network more effectively and enabling the training of very deep networks.

  • โšก XceptionV3: Xception is an extension of the Inception architecture that replaces the standard inception modules with depthwise separable convolutions, significantly improving performance and computational efficiency.

  • ๐ŸŒ DenseNet: DenseNet (Densely Connected Convolutional Networks) connects each layer to every other layer in a feed-forward manner, which helps in reusing features, reducing the number of parameters, and improving gradient flow.

  • โš™๏ธ Xception: Similar to XceptionV3, this model uses depthwise separable convolutions and is based on the Inception architecture. It's designed to be more efficient and achieve better performance by optimizing the convolution operations.

  • ๐Ÿ“ฑ MobileNet: MobileNet is a lightweight convolutional neural network architecture optimized for mobile and embedded vision applications, focusing on reducing the computational cost while maintaining performance.

These models were selected for their ability to handle complex image classification tasks effectively, each bringing a unique approach to feature extraction and network efficiency.

3. ๐Ÿ‹๏ธ Model Training: The training process includes the following:

  • ๐Ÿงฐ Data Generators: ImageDataGenerator is used for loading and augmenting the images in batches. This allows efficient handling of large datasets by feeding the model with data in real-time.
  • โš™๏ธ Training Parameters: The model is compiled with specific loss functions and optimizers suitable for multi-class classification, such as categorical_crossentropy and optimizers like Adam.
  • ๐Ÿ“ฆ Batch Processing: The model is trained using small batches of data, with the training set providing data for learning and the validation set used to tune the model.

4. ๐Ÿ“Š Model Evaluation: Post-training, the model's performance is evaluated using:

  • ๐Ÿ“ˆ Accuracy Metrics: The accuracy of the model on the validation set is calculated to assess its ability to generalize to new data.
  • ๐Ÿ“‰ Loss Curves: The loss during training and validation is plotted to check for overfitting or underfitting.

5. ๐Ÿš€ Model Deployment: Though the notebook primarily focuses on training and evaluation, deploying the model typically involves:

  • ๐Ÿ’พ Saving the Model: The trained model is saved in a format like .h5 for future use in production environments.
  • ๐Ÿ–ฅ๏ธ Integration with the Dashboard: The model is integrated into an interactive dashboard where users can input new data and receive predictions in real-time.

๐Ÿ› ๏ธ Visual Workflow: A visual representation of this workflow, including data preprocessing, model architecture, training, and evaluation, is presented in the dashboard to offer a clear understanding of the entire process.

๐Ÿš€ User Interactive Dashboard

Overview

The User Interactive Dashboard is designed to provide an intuitive interface for exploring the model's performance and classification results. Users can interact with the dashboard to gain insights into the classification outcomes and understand the deep learning model's predictions in a clear and accessible manner.

Index Page

This is the landing page of the dashboard where users can access the main functionalities. It provides a summary of the model's capabilities and guides the user on how to proceed with classification.

app index page

Classification Results Page:

The Classification Results Page displays the model's predictions, detailing whether the input data indicates a diagnosis of Autism Spectrum Disorder (ASD) or Non-Autistic. This page is critical for users looking to understand the model's decision-making process.

Example - Non-Autistic Result

Here, the model's output indicates that the subject is non-autistic. The page visualizes the prediction along with confidence scores and relevant details.

app results page na

Classification Results Page:

Example - Autistic Result

In this scenario, the model predicts the subject as autistic. Users can view the prediction, analyze contributing factors, and see confidence levels associated with the decision.

app results page aus

๐ŸŽฏ Conclusion & Future Work

This project implemented and compared several deep learning models, with Xception and MobileNet showing the highest accuracy. An interactive dashboard was developed to visualize and explore model performance.

๐Ÿ”ฎ Future Work

  • Model Refinement: Further refine the models to enhance their diagnostic accuracy.
  • Dashboard Enhancement: Improve the interactive dashboard for better visualization and user experience.
  • Real-World Deployment: Deploy the system in real-world applications for practical use.
  • Ensemble Techniques: Explore ensemble techniques to further boost the accuracy of ASD detection.

References

๐Ÿ“š References

  1. National Institute of Mental Health (NIMH) ๐ŸŒ. Autism Spectrum Disorder.

  2. Jana Christina Koehler, Mark Sen Dong, Afton M. Bierlich, Stefanie Fischer, Johanna Spath, Irene Sophia Plank, Nikolaos Koutsouleris & Christine M. Falter-Wagner. โ€œMachine learning classification of autism spectrum disorder based on reciprocity in naturalistic social interactions.โ€

  3. Md. Mokhlesur Rahman, Opeyemi Lateef Usman, Ravie Chandren Muniyandi, Shahnorbanun Sahran, Suziyani Mohamed, and Rogayah A Razak. โ€œA Review of Machine Learning Methods of Feature Selection and Classification for Autism Spectrum Disorder.โ€

  4. Md. Zasim Uddin, Md. Arif Shahriar, Md. Nadim Mahamood, Fady Alnajjar, Md. Ileas Pramanik, Md Atiqur Rahman Ahad. โ€œDeep learning with image-based autism spectrum disorder analysis: A systematic review.โ€

  5. Ibrahim Abdulrab Ahmed, Ebrahim Mohammed Senan, Taha H. Rassem, Mohammed A. H. Ali, Hamzeh Salameh Ahmad Shatnawi, Salwa Mutahar Alwazer, and Mohammed Alshahrani. โ€œEye Tracking-Based Diagnosis and Early Detection of Autism Spectrum Disorder Using Machine Learning and Deep Learning Techniques.โ€

๐Ÿ“œ LICENSE

This project is licensed under the MIT License. Feel free to use, modify, and distribute this project under the terms of the MIT License.

๐Ÿค Contributions

Contributions to the project are welcome! If you have any suggestions or questions, please feel free to reach out via email at divyatanuja17@gmail.com.

About

Autism Spectrum Disorder (ASD) is a developmental condition that can benefit significantly from early and accurate diagnosis, particularly through eye-tracking techniques.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published