I trained a CNN for emotion recognition and used two different transformation pipelines for image preprocessing:
Simple Transformation:
TRANSFORM = transforms.Compose([
transforms.Resize((64, 64)),
transforms.Grayscale(num_output_channels=1),
transforms.ToTensor(),
transforms.Normalize(mean=[0.485], std=[0.229])
])
Extended Data Augmentation:
TRANSFORM = transforms.Compose([
transforms.Resize((64, 64)),
transforms.Grayscale(num_output_channels=1),
transforms.RandomHorizontalFlip(p=0.5),
transforms.RandomAffine(degrees=5, translate=(0.1, 0.1), scale=(0.9, 1.1), fill=0),
transforms.GaussianBlur(kernel_size=(3,3), sigma=(0.1, 1.0)),
transforms.ToTensor(),
transforms.Normalize(mean=[0.5], std=[0.5]),
])
I trained my model with both transformations separately and obtained two different accuracy curves for training and validation.
What key factors should I consider when interpreting the differences in these accuracy curves? Simple_Transformation_Curve Augmenatation_Curve
I trained a CNN for emotion recognition and used two different transformation pipelines for image preprocessing:
Simple Transformation:
TRANSFORM = transforms.Compose([
transforms.Resize((64, 64)),
transforms.Grayscale(num_output_channels=1),
transforms.ToTensor(),
transforms.Normalize(mean=[0.485], std=[0.229])
])
Extended Data Augmentation:
TRANSFORM = transforms.Compose([
transforms.Resize((64, 64)),
transforms.Grayscale(num_output_channels=1),
transforms.RandomHorizontalFlip(p=0.5),
transforms.RandomAffine(degrees=5, translate=(0.1, 0.1), scale=(0.9, 1.1), fill=0),
transforms.GaussianBlur(kernel_size=(3,3), sigma=(0.1, 1.0)),
transforms.ToTensor(),
transforms.Normalize(mean=[0.5], std=[0.5]),
])
I trained my model with both transformations separately and obtained two different accuracy curves for training and validation.
What key factors should I consider when interpreting the differences in these accuracy curves? Simple_Transformation_Curve Augmenatation_Curve
First a few remarks that can help the analysis in general:
From the two curves I would say that you should consider:
Finally, there are a lot of other metrics you could have a look at, to diagnose your models: true positive, true negative, precision, recall, f1-score, area under ROC curve... Here is a link to one of the numerous websites explaining these.