Le lezioni si terranno ogni Venerdì dalle ore 11 alle ore 14 in aula 2 a partire dal 28 febbraio 2025
Lezione (venerdì 28 febbraio) presentazione ed introduzione ai temi del corso. L'importanza dei dati nel text data mining: General data protection regulation (link). Banche per investire e recuperare valore dai tuoi dati (link). Privacy Data Manager (link). l'importanza di conoscere un linguaggio di programmazione e di saper programmare: Python il "Giornalismo Computazionale" : esempi di twitter sentiment analysis with python e clustering with python. Il concetto di codifica dell'informazione
Lezione (venerdì 7 marzo) la codifica dei numeri naturali (0, 1, 2, ...); il teorema di rappresentazione dei numeri nella varie basi, binaria, ottale ed esadecimale (slides codifica dell'informazione). Esercizio: trovare un codice univoco per tutti e mesi dell'anno usando il codice binario, ternario, ottale ed esadecimale. Si possono usare convertitori di base disponibili online per verificare gli esercizi ed esempi: https://wims.univ-cotedazur.fr/wims/it_tool~number~baseconv.it.html
Lezione (venerdì 14 marzo) il passaggio dalla codifica analogica alla codifica digitale: la quantizzazione ed il campionamento (slides codifica dell'informazione). Introduzione agli algoritmi (slides sugli algoritmi).
Lezione (venerdì 21 marzo) Introduzione agli algoritmi, sintassi sequenziale (pseudo-codice) e sintassi grafica (diagrammi a blocchi). Introduzione alla programmazione nel linguaggio Python: assegnazione di valori a variabili, funzioni di lettura in input e di scrittura in output; le istruzioni di lettura dell'input e di stampa dell'output, l'istruzioni di assegnazione di un valore o di una espressione ad una variabile, l istruzione condizionale "if ... then ... else ...". Scarica le slides viste a lezione sugli algoritmi. Apri l'esercitazione python con colab
Lezione (venerdì 28 marzo) : i principi della programmazione strutturata (Jacopini - Bohm): blocchi sequenziali, blocchi condizionali e blocchi iterativi; linguaggi di programmazione, interpreti e compilatori. Le istruzioni iterative (cicli) in Python con il costrutto while ed il costrutto for. Scarica le slides viste a lezione sugli algoritmi. Scarica il notebook5 e notebook6.
Lezione (venerdì 4 aprile) Introduzione alla Programmazione in Python delle stringhe di caratteri: captitolo 8, da pag. 71-74 del manuale Python, "Allen B. Downey et al., Pensare da Informatico (versione PDF)". Scarica il notebook della lezione.
Lezione (venerdì 11 aprile) Programmazione in Python delle stringhe di caratteri: captitolo 8, pagg 76-77 del manuale Allen B. Downey et al., versione PDF. Svolgere gli esercizi da 8.1 ad 8.5 di pag.80-81. Scarica il notebook della lezione ed il notebook dell'esercitazione. Svolgimento dell'Esercizio sulla rotazione delle stringhe (scarica il notebook dell'esercitazione + il diagramma di flusso)
Lezione (venerdì 2 maggio) Introduzione al Natural Language Processing with Python and NLTK. Capitolo 1 Language Processing and Python (continua)". Scarica i notebook della lezione: (un aasistente di AI per la generaizone di codice a partire da diagrammi di flusso) Claude, Notebookcolab, Notebookcolab.
Lezione (venerdì 9 maggio) Introduzione al Natural Language Processing with Python and NLTK. Capitolo 1 Language Processing and Python (continua)". Scarica il notebook della lezione ed il notebook per caricare un corpus in formato testo (.txt).
Lezione (venerdì 16 maggio) Introduzione al Machine Learning: i classificatori Bayesiani. Capitolo 6 di NLTK https://www.nltk.org/book/ch06.html. Scarica il Notebook della Lezione. Svolgimento in aula del fac-simile della prova di esame scritta + il notebook colab con il codice soluzione esercizio 3
Lezione (venerdì 23 maggio) Document Classification con Naive Bayes, Capitolo 6 di NLTK. Vai al notebook di Colab. Esercitazione: facsimile esame con soluzioni.
Lezione (venerdì 30 maggio)