Το αντικείμενο της παρούσας πτυχιακής είναι η δημιουργία τριών widgets για την πλατφόρμα Orange. Ο κύριος στόχος είναι η μελέτη και εξοικείωση με τις τεχνικές εξόρυξης δεδομένων, την ανακάλυψη γνώσεων, τη γλώσσα Python και το περιβάλλον ανάπτυξης.
Το πρώτο widget εφαρμόζει τον αλγόριθμο SMOTE, το οποίο μπορεί να εφαρμοστεί σε ένα σύνολο δεδομένων, όταν υπάρχουν ανεπαρκή αντιπροσωπευτικά στιγμιότυπα στο πλήθος μιας ή περισσότερων κλάσεων του συνόλου αυτού. Ο αλγόριθμος έχει σκοπό την εξισορρόπηση του πλήθους των στιγμιότυπων μεταξύ των κλάσεων του συνόλου αυτού. Η χρησιμότητα του widget αυτού είναι πολύ σημαντική σε μοντέλα μηχανικής μάθησης. Το δεύτερο widget είναι το OPTICS, το οποίο έχει την ικανότητα να εντοπίζει συστάδες ποικίλης πυκνότητας δεδομένων είτε αυτές είναι αυτόνομες ή είναι ενσωματωμένες σε ομάδες παρόμοιας πυκνότητας. Η τεχνική που υλοποιεί είναι πολύ χρήσιμη επειδή δίνει την δυνατότητα εξερεύνησης συμπλεγμάτων ή συστάδων σε μη κατηγοριοποιημένα σύνολα δεδομένων. Το τρίτο widget είναι το KDE-2D, το οποίο είναι μια δισδιάστατή οπτικοποίηση δεδομένων και δείχνει την εκτίμηση πυκνότητας βασισμένη σε πυρήνες κανονικής κατανομής. Η συγκεκριμένη μεθοδολογία αποτελεί μία πολύ χρήσιμη αποτύπωση για άμεσο εντοπισμό ιδιαίτερων χαρακτηριστικών μεταξύ 2 μεταβλητών σε μεγάλα σύνολα δεδομένων και τα οποία είναι δύσκολο να εντοπιστούν σε άλλα γραφήματα, όπως το διάγραμμα διασποράς. Το λογισμικό ανάπτυξης που χρησιμοποιήθηκε ήταν το VS Code και η γλώσσα προγραμματισμού ήταν η Python. Για τους αλγόριθμους των widgets έγινε εγκατάσταση στο περιβάλλον του Orange των βιβλιοθηκών "imbalanced-learn", "scikit-learn" και "sciPy".
Το ουσιαστικό αποτέλεσμα της μελέτης του Orange ήταν η αποκάλυψη τόσο της δυναμικότητας όσο και της εκπαιδευτικής ικανότητας, στην βαθιά κατανόηση της εξόρυξης δεδομένων και όχι μόνο, δημιουργώντας έτσι ένα πολύτιμο σύνολο δεξιοτήτων, το οποίο είναι σημαντικά αξιοποιήσιμο και επεκτάσιμο.
The scope of the present thesis is to create three widgets for the Orange platform. The main goal is to study and become familiar with data mining techniques, knowledge discovery, the Python language and the development environment. The first widget implements the SMOTE algorithm. SMOTE is used to balance classes in a dataset in order to allow for the dataset to be more effectively used in a machine learning model. The second widget is OPTICS, which allows clustering of an unsupervised dataset based on the dynamic density of the data. The third widget is KDE-2D and it yields a visualization of data based on a two-dimensional kernel-density estimate using Gaussian kernels. This methodology is a very useful illustration for direct detection of special features between 2 variables in large data sets and which are difficult to detect in other graphs, such as the scatter plot. In addition, hidden clusters can be found, as well as it can indicate whether the data form normal distributions. VS Code, Python and Orange, as well as “imbalanced-learn”, “scikit-learn” and “sciPy” were used in the development process. Through the aforementioned development, Orange's exceptional potential in data mining was uncovered and an insightful understanding of Data Science concepts and techniques was achieved, bringing about a valuable skillset that can be expanded and built upon.