Στόχος
Σκοπός του μαθήματος είναι η εμβάθυνση των φοιτητών στις μεθοδολογίες επίλυσης σύνθετων προβλημάτων ανάλυσης δεδομένων με χρήση της γλώσσας προγραμματισμού Python. Στο μάθημα δίνεται έμφαση στην παρουσίαση σύγχρονων μεθοδολογιών που εφαρμόζονται σε μεγάλο εύρος προβλημάτων τα οποία προέρχονται από τον ευρύτερο τομέα της επιστήμης δεδομένων, συμπεριλαμβανομένων προβλημάτων μεγάλων δεδομένων και επιχειρησιακής λογικής και ευφυίας. Βασικός στόχος είναι η εξοικείωση των φοιτητών με τις πιο εξελιγμένες μεθοδολογίες επίλυσης και βιβλιοθήκες της γλώσσας που χρησιμοποιούνται ευρύτατα στους παραπάνω τομείς, καθώς και με τις τεχνικές ενσωμάτωσης τους στην ανάπτυξη τεχνολογικά προηγμένων λύσεων.
Περιεχόμενα Μαθήματος
Δομικά Στοιχεία Γλώσσας
Υποστηριζόμενες δομές δεδομένων και αλγοριθμικές δομές της python. Δομή προγράμματος και συναρτήσεις. Βασικά στοιχεία διανυσματικού και αντικειμενοστραφή προγραμματισμού που απαιτούνται για το χειρισμό δεδομένων. Οπτικοποίηση και εργαλεία αναπαράστασης δεδομένων. Βασικές βιβλιοθήκες χειρισμού, ανάλυσης και αναπαράστασης δεδομένων.
Διασύνδεση με Πηγές Δεδομένων
Διασύνδεση, ανάκτηση και χειρισμός δεδομένων από σχεσιακές και μη σχεσιακές βάσεις δεδομένων. Καθαρισμός, κανονικοποίηση και ομαδοποίηση δεδομένων, τεχνικές συμπλήρωσης και επέκτασης δεδομένων. Παραδείγματα ανάκτησης δεδομένων από πηγές κειμένων και το διαδίκτυο. Δημιουργία και χρήση κανονικών εκφράσεων (regular expressions).
Μοντελοποίηση και Ανάλυση Δεδομένων
Εφαρμογές ανάλυσης χρονοσειρών (περιοδικότητα, τάση, εποχικότητα). Δειγματοληψία, μετασχηματισμοί και αναπαπαράσταση χρονοσειρών. Εξαγωγή χαρακτηριστικών. Προγνωστικά μοντέλα. Τεχνικές και παραδείγματα για προεπεξεργασία, παλινδρόμιση και δημιουργία στατιστικών μοντέλων. Ανάλυση δεδομένων μεγάλης κλίμακας. Ανάλυση δεδομένων από κοινωνικά δίκτυα.
Τεχνικές Μηχανικής Mάθησης
Ανάπτυξη εφαρμογών για την επίλυση προβλημάτων με χρήση τεχνικών επιβλεπόμενης και μη επιβλεπόμενης μάθησης, δυνατότητες. Περιορισμοί και αξιολόγηση της αποτελεσματικότητας τους. Τεχνικές και παραδείγματα υλοποιήσεων με νευρωνικά δίκτυα. Παραδείγματα ανάλυσης κειμένου με φυσική γλώσσα (NLP). Δέντρα αποφάσεων. Συστήματα συστάσεων (Recommender systems).
Προτεινόμενα Συγγράμματα
- Deitel, H. Deitel (2019), Python for Programmers, Pearson Education
- Mitchel (2018), Web Scraping with Python, O’ Reilly
- Nelli (2018), Python Data Analytics, Apress
- Bengfort, R. Bilbro & T. Ojeda (2018), Applied Text Analysis with Python, O’Reilly
- Bowles (2015), Machine Learning in Python, Wiley