Steel Plate Fault Detection & Quality Control

A hybrid industrial engineering project combining Statistical Process Control (SPC) for process monitoring and Deep Learning (PyTorch, ResNet-18) for automated fault classification.

Python
Data Science & Analytics
Matplotlib
Machine Learning
Seaborn
PyTorch
Computer Vision
Statistical Process Control (SPC)
Quality Assurance (QA)
Statistics & Probability

Overview

This project applies advanced quality control methodologies to the steel manufacturing industry. Using the UCI Steel Plates Faults dataset, I conducted a comprehensive analysis to detect and classify seven distinct types of structural faults (e.g., Pastry, Z_Scratch, K_Scratch). The project bridges traditional Industrial Engineering methods with modern Artificial Intelligence.

[Image of steel rolling manufacturing process flow]

Methodology

1. Statistical Process Control (SPC)

To monitor production stability, I implemented various control charts:

  • Variable Charts: X-bar and S-bar charts analyzed physical dimensions (thickness, luminosity), revealing that the current production process was statistically "out of control" and required variance reduction.
  • Attribute Charts: P-charts and C-charts tracked the frequency of specific defects.

2. Machine Learning & Deep Learning

I developed and compared multiple models to automate defect classification:

  • Random Forest: Achieved a baseline accuracy of 68.10%.
  • PyTorch Neural Network: A custom Feed-Forward Neural Network. Through Batch Normalization, Dropout regularization, and hyperparameter tuning, accuracy was improved from an initial 40% to 88.24%.
  • Computer Vision (Transfer Learning): Implemented a novel approach by converting numerical dataset features into heatmap images. This allowed for the finetuning of a pre-trained ResNet-18 model, achieving 87.21% accuracy and demonstrating the viability of vision-based inspection.

Tech Stack

  • Analysis: Python, Pandas, NumPy, Scipy
  • Machine Learning: PyTorch, Scikit-learn, Torchvision
  • Visualization: Matplotlib, Seaborn