Lezioni: venerdì ore 11-14 aula 2 (Lettere)
1 - lezione 25/2: presentazione e avvio 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
2 - lezione 4/3: 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).
3 - lezione 11/3: il passaggio dalla codifica analogica alla codifica digitale: la quantizzazione ed il campionamento. Fare il download e l'installazione di Anaconda Individual Edition (https://www.anaconda.com/products/individual). Scarica la Breve Guida all'uso di Anaconda.
4 - lezione 18/3. Introduzione agli algoritmi ed alla programmazione nel linguaggio Python: assegnazione di valori a variabili, funzioni di lettura in input e di scrittura in output; istruzione condizionale "if ... then ... else ...". Esempi. Scarica le slides viste a lezione sugli algoritmi.
5 - lezione 25/3: introduzione agli algoritmi mediante la sintassi dei diagrammi di flusso; i principi della programmazione strutturata (Jacopini - Bohm): blocchi sequenziali, blocchi condizionali e blocchi iterativi; linguaggi di programmazione, interpreti e compilatori. Scarica il notebook jupyter degli esempi visti oggi a lezione.
6 - lezione 1/4: Introduzione agli algoritmi in python: i costrutti iterativi con "while" e "for". Programmazione in Python delle stringhe di caratteri: captitolo 8, da pag. 71-72 del manuale Python, "Allen B. Downey et al., Pensare da Informatico (versione PDF)". Scarica il notebook della lezione.
7 - lezione 8/4: Programmazione in Python delle stringhe di caratteri: captitolo 8, pagg 73-76 del manuale Allen B. Downey et al., versione PDF. Il costrutto "def" per la definizione di funzioni; esempi di funzioni su stringhe: trova (parola, carattere) e conta(parola, carattere). Scarica il notebook della lezione.
lezione 15/4 (sospesa per vacanze Pasqua?)
8 - lezione 22/4: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. Eesercizio sulla rotazione delle stringhe (scarica il notebook dell'esercitazione + il diagramma di flusso). Introduzione al Natural Language Processing with Python and NLTK . Per installare il package NLTK con Jupyter su Anaconda, eseguire le seguenti istruzioni:
1. lanciare il programma "Anaconda Navigator"
2. lanciare il "Notebook Jupyter" come in figura
3. cliccare a destra sul pulsante "new" come in figura
4. digitare le linee di comando come in figura
5. per verificare il funzionamento del notebook Jupyter, aprire con il noteboook il file ex-nltk.ipynb
9 - lezione 29/4: Introduzione al Natural Language Processing with Python and NLTK . Capitolo 1 Language Processing and Python (continua)". Scarica il notebook della lezione.
10 - lezione 6/5:Introduzione al Natural Language Processing with Python and NLTK . Capitolo 1 Language Processing and Python (fine)". Scarica il notebook della lezione + il Notebook degli esercizi del cap.8 del libro Programmazione in Python
11 - lezione 13/5: Introduzione al Machine Learning. Come classificare il testo: Learning "to Classify Text" (capitolo 6). Esempi di classificatori bayesiani basati su NLTK: classificatore di nomi propri di persona (scarica sorgente python e notebook jupyter).
12 - lezione (recupero) 20/5: presentazione della modalità di esame e prenotazione gruppi; scrarica il notebook della classificazione di genere in un articolo: notebook+ballet.txt