{'fraction_non_alphanumeric': 0.025660377358490565, 'fraction_numerical': 0.005283018867924529, 'mean_word_length': 5.027272727272727, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
A Hierarchical Approach to Skin Lesion Classification

Deep Neural Networks (DNNs) are powerful models that can perform extremely complex tasks with a high level of accuracy. Convolutional Neural Networks (CNNs) are extensions of DNNs which specialize in dealing with data possessing spatial representations. We attempt to build a CNN model that can learn to classify a dermoscopic image of skin melanoma into one of seven categories {NV, BCC, BKL, MEL, DF, VASC, AKIEC} belonging to the HAM10000 dataset, each having a varying criticality. We arrange a set of CNN models in a hierarchical structure which, we believe, helps each sub-model gain specific intuitions about the differentiating factors present in a class of images in question without exploiting any false bias. We denote each level in the hierarchy as a 'stage'. In this paper, we present three such hierarchical combinations and conclude that the 5-stage hierarchical classifier yields the best results, followed by the 2-stage hierarchical classifier. We also conclude that, in spite of heavy class imbalance, data augmentation can significantly aid a CNN in extracting a good set of features so as to accurately represent the minority classes. We have also open-sourced our implementations. All our models and scripts are available on our Gi tHub repository.