Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 

Repository files navigation

Gravitational Wave Signal Classification using Deep Learning (CNN)

Project Overview

The project deals with identifying and recognizing gravitational wave signals through noisy space signals using deep learning. The CNN is trained to classify patterns that occur in spectrograms related to different kinds of gravitational wave signals.

Gravitational waves are distortions in space-time that arise due to catastrophic celestial events like black hole collisions. These are difficult to detect due to the presence of significant amounts of noise.

Objective

  • Build a deep learning model to classify gravitational wave signals
  • Automatically distinguish between real signals and noise
  • Analyze model performance using multiple evaluation metrics

Methodology

1. Data Preprocessing

  • Input data consists of spectrogram images
  • Images are resized to a uniform shape (128x128)
  • Pixel values are normalized for better training

2. Model Architecture

  • Convolutional Neural Network (CNN) used for feature extraction
  • Multiple Conv2D and MaxPooling layers
  • Dropout layer added to prevent overfitting
  • Softmax activation for multi-class classification

3. Training Process

  • Model trained on labeled dataset
  • Validation data used to monitor performance
  • Early stopping and checkpoints used (if implemented)

4. Evaluation Metrics

  • Accuracy
  • Loss curves
  • Confusion Matrix
  • ROC / Precision-Recall curves
  • Top-K Accuracy

📊 Results

The CNN model was trained for 10 epochs on a dataset containing 31,868 spectrogram images across 22 classes.

Metric Performance
Training Accuracy 96.98%
Best Validation Accuracy 94.85%
Test Accuracy 94.75%

The model achieved a test accuracy of 94.75%, demonstrating strong performance in classifying gravitational-wave signal patterns across multiple classes.

Results And Visualizations

The following are the visualizations generated to evaluate the model:

  • Training Accuracy vs Validation Accuracy
  • Training Loss vs Validation Loss
  • Confusion Matrix (Normalized)
  • ROC Curve (Multi-class)
  • Precision-Recall Curve
  • Sample Predictions (Correct vs Incorrect)

Technologies Used

  • Python
  • TensorFlow / Keras
  • NumPy
  • Matplotlib
  • Scikit-learn

How to Run the Project

Run on Google Colab

Open the notebook directly: https://colab.research.google.com/github/Anushka-Pokhriyal/Gravitational-Wave-Signal-Classification/blob/main/Gravitational_Wave_Signal_Classification.ipynb

Run Locally

  1. Clone the repository:
git clone https://github.com/Anushka-Pokhriyal/Gravitational-Wave-Signal-Classification.git
  1. Install dependencies:
pip install tensorflow numpy matplotlib scikit-learn
  1. Open the notebook:
  • Run in Jupyter Notebook or Google Colab

Key Learnings

  • Understanding of CNNs for image classification
  • Handling noisy real-world data
  • Model evaluation using multiple metrics
  • Visualization of model performance

Some of the Screenshots

image image image image image

Applications

  • Detection of black hole collisions
  • Space research and astrophysics
  • Signal classification in noisy environments

Author

**Anushka **


Acknowledgment

Dataset inspired by gravitational wave detection research (Gravity Spy / Kaggle) (https://www.kaggle.com/datasets/tentotheminus9/gravity-spy-gravitational-waves)

📂 Dataset

The project uses the Gravity Spy gravitational-wave spectrogram dataset. The dataset contains labeled spectrogram images representing different types of gravitational-wave signal morphologies and noise patterns.

Dataset Distribution

Dataset Split Number of Images Number of Classes
Training 22,348 22
Validation 4,800 22
Testing 4,720 22
Total 31,868 22

The dataset is divided into training, validation, and testing sets to train the CNN model, monitor its performance during training, and evaluate its final generalization performance.

Due to the size of the dataset, the raw dataset is not included in this repository.


About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages