39 lines
1.9 KiB
Markdown
39 lines
1.9 KiB
Markdown
# Research: ResNet Phenology Classifier
|
|
|
|
**Date**: 2025-11-04
|
|
**Feature**: specs/1-phenology-classifier/spec.md
|
|
|
|
## Research Tasks
|
|
|
|
1. Research best ResNet variant for plant image classification
|
|
2. Research data preprocessing techniques for botanical images
|
|
3. Research evaluation metrics for multi-class phenological phase classification
|
|
4. Research reproducibility practices for ML experiments
|
|
|
|
## Findings & Decisions
|
|
|
|
### ResNet Variant
|
|
**Decision**: Use ResNet50 as the base architecture
|
|
**Rationale**: Provides good balance between accuracy and computational efficiency. ResNet50 has been proven effective for image classification tasks similar to ImageNet.
|
|
**Alternatives considered**: ResNet18 (faster but lower accuracy), ResNet101 (higher accuracy but more compute-intensive)
|
|
|
|
### Data Preprocessing
|
|
**Decision**: Use standard ImageNet preprocessing with augmentation
|
|
**Rationale**: Random cropping, horizontal flipping, normalization to ImageNet mean/std. This is standard for transfer learning with ResNet.
|
|
**Alternatives considered**: Custom augmentations for plant-specific features, but standard works well for general classification.
|
|
|
|
### Evaluation Metrics
|
|
**Decision**: Primary: Accuracy, Secondary: F1-score per class, Precision, Recall
|
|
**Rationale**: Accuracy for overall performance, F1-score to handle class imbalance in phenological phases.
|
|
**Alternatives considered**: AUC-ROC (more for binary), but multi-class metrics are appropriate.
|
|
|
|
### Reproducibility
|
|
**Decision**: Use random seeds, version data with DVC, log all hyperparameters
|
|
**Rationale**: Ensures experiments can be reproduced. DVC for data versioning, MLflow or similar for experiment tracking.
|
|
**Alternatives considered**: Manual logging, but automated tools are more reliable.
|
|
|
|
## Resolved Clarifications
|
|
|
|
- Dataset format: Images in directory, labels in CSV with columns: image_path, phase
|
|
- Model output: Probabilities for each phase class
|
|
- Training hardware: GPU required for reasonable training time |