Self-supervised learning for skin cancer diagnosis with limited training data