--- license: mit language: - en datasets: - garythung/trashnet --- # Trash Classification CNN This repository contains a Convolutional Neural Network (CNN) model designed for classifying waste images into six distinct categories. ## Model Description The model implements a deep CNN architecture specifically designed for waste image classification. It processes RGB images through multiple convolutional layers with increasing feature complexity, followed by dense layers for final classification. ### Architecture Details The model uses a progressive feature extraction architecture: - Input layer for RGB images (3 channels) - Three convolutional layers with increasing filters (32 → 64 → 128) - MaxPooling layers after each convolution - Dropout layers (0.25) for regularization - Three fully connected layers (128 → 32 → 6) - ReLU activation functions throughout - Final layer outputs 6 classes (waste categories) ### Dataset and Training The model was trained on the TrashNet dataset with a careful data splitting strategy: - Training set: 70% of the data - Validation set: 20% of the data - Test set: 10% of the data The training process utilized comprehensive data augmentation techniques to improve model robustness: ```python transformers = transforms.Compose([ transforms.Resize((224, 224)), transforms.RandomHorizontalFlip(p=0.5), transforms.RandomRotation(degrees=15), transforms.ColorJitter(brightness=0.2, contrast=0.2, saturation=0.2), transforms.ToTensor(), transforms.Normalize( mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225] ) ])