{'fraction_non_alphanumeric': 0.015345268542199489, 'fraction_numerical': 0.0017050298380221654, 'mean_word_length': 4.617224880382775, '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}}
Dafny Verification of kNN Algorithm

A data set in machine learning is simply a table representing collections of entries. Each entry, has attributes of which can be thought as the columns in a table. A label describes the class or category of an entry. For binary labels each entry may posses a class label of 0 or 1 of which can be thought of as negative or positive labels. Model and classifier are used synonymously. Two phases are involved in supervised learningthe training phase and testing phase. The training phase uses a training data set to build a model. The testing phase involves using the model to predict entries from the test data set. After using the model to predict a label, if the predicted label is wrong we describe this as a misclassification. The accuracy rate is the percentage of test set entries that are correctly classified by the model. The accuracy rate is used to summarize the number of correct classifications or misclassifications when comparing different implementations. My work was on using Dafny for the verification of the k-nearest neighbors (kNN) algorithm, one of the most popular machine learning algorithm repository on Github.