|
Download README.md from blatoet/cat-dog-classifier: direct link, hf CLI and curl.
- Browser
- Download file 2.03 kB
-
https://huggingface.co/blatoet/cat-dog-classifier/resolve/main/README.md
- Command line
-
hf download hf://blatoet/cat-dog-classifier/README.md
-
curl -L -o README.md https://huggingface.co/blatoet/cat-dog-classifier/resolve/main/README.md
2.03 kB
| license: mit | |
| tags: | |
| - image-classification | |
| - pytorch | |
| - cats-vs-dogs | |
| - computer-vision | |
| datasets: | |
| - microsoft/cats_vs_dogs | |
| metrics: | |
| - accuracy | |
| # Cat vs Dog Classifier | |
| This model is a simple CNN (Convolutional Neural Network) trained to classify images as either cats or dogs. | |
| ## Model Description | |
| - **Architecture**: Custom CNN with 3 convolutional layers and 3 fully connected layers | |
| - **Input**: 224x224 RGB images | |
| - **Output**: Binary classification (Cat or Dog) | |
| - **Framework**: PyTorch | |
| ## Training Data | |
| The model was trained on the [microsoft/cats_vs_dogs](https://huggingface.co/datasets/microsoft/cats_vs_dogs) dataset from Hugging Face. | |
| ## Usage | |
| ```python | |
| import torch | |
| from PIL import Image | |
| from torchvision import transforms | |
| # Load model | |
| model = CatDogClassifier() | |
| model.load_state_dict(torch.load('model_weights.pth')) | |
| model.eval() | |
| # Prepare image | |
| transform = transforms.Compose([ | |
| transforms.Resize((224, 224)), | |
| transforms.ToTensor(), | |
| transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]) | |
| ]) | |
| image = Image.open('your_image.jpg').convert('RGB') | |
| image_tensor = transform(image).unsqueeze(0) | |
| # Predict | |
| with torch.no_grad(): | |
| outputs = model(image_tensor) | |
| _, predicted = torch.max(outputs.data, 1) | |
| classes = ['Cat', 'Dog'] | |
| print(f"Prediction: {classes[predicted.item()]}") | |
| ``` | |
| ## Training Procedure | |
| - **Optimizer**: Adam with learning rate 0.001 | |
| - **Loss Function**: CrossEntropyLoss | |
| - **Batch Size**: 32 | |
| - **Epochs**: 10 | |
| - **Data Augmentation**: Random horizontal flip, rotation, and color jitter | |
| ## Performance | |
| The model achieves approximately 85-90% accuracy on the validation set (results may vary based on training run). | |
| ## Limitations | |
| - Model is trained specifically on cats and dogs only | |
| - Performance may degrade on images with multiple animals | |
| - Works best with clear, well-lit images | |
| - Input images must be resized to 224x224 | |
| ## License | |
| MIT License | |
| ## Author | |
| Created as an educational project for learning image classification with PyTorch. | |