Syllabus del Corso di Programmazione & NLP
Obiettivi del Corso:
- Imparare le basi della programmazione Python.
- Comprendere i fondamenti del Natural Language Processing.
- Utilizzare librerie come NLTK e Spacy per il pre-processing di testi e l'analisi linguistica.
- Applicare tecniche di NLP per l'estrazione di informazioni, analisi del sentiment, e classificazione del testo.
- Sviluppare progetti pratici che dimostrano l'applicazione del NLP in scenari reali.
Durata del Corso: 30 ore, suddivise in 20 lezioni da 1 ora e 30 minuti ciascuna.
________________________
Lezione 1: Introduzione a Python e all'NLP
- Panoramica del corso.
- Installazione di Python e configurazione dell'ambiente di sviluppo.
- Sintassi di base di Python: variabili, tipi di dati, operazioni.
Lezione 2: Strutture Dati e Controllo del Flusso in Python
- Liste, tuple, dizionari, set.
- Condizioni, cicli for e while.
Lezione 3: Funzioni, Moduli e Gestione delle Eccezioni
- Definizione di funzioni, importazione di moduli.
- Gestione delle eccezioni.
Lezione 4: File I/O e Pre-elaborazione del Testo
- Lettura e scrittura di file.
- Tokenizzazione, rimozione delle stop-words, stemming, lemmatizzazione.
Lezione 5: Analisi del Testo con NLTK
- Analisi di frequenza, tagging POS.
- N-grams, chunking.
Lezione 6: Analisi del Testo con Spacy
- Entity Recognition, Dependency Parsing.
- Caratteristiche avanzate di Spacy per NLP.
Lezione 7: Vettorializzazione del Testo e Introduzione al Machine Learning
- Bag of Words, TF-IDF.
- Panoramica del Machine Learning.
Lezione 8: Sentiment Analysis
- Metodi di Sentiment Analysis.
- Costruzione e valutazione di modelli.
Lezione 9: Topic Modeling e Classificazione del Testo
- Introduzione al Topic Modeling.
- Classificazione del testo con modelli ML.
Lezione 10: Word Embeddings e Modelli di Linguaggio
- Word2Vec, GloVe.
- Introduzione a BERT e modelli trasformativi.
Lezione 11: Framework di Deep Learning per NLP
- Introduzione a TensorFlow e PyTorch.
- Esempi di applicazione nel NLP.
Lezione 12: Estrazione di Informazioni e Summarization
- Tecniche di estrazione di informazioni.
- Summarization automatico di testi.
Lezione 13: Named Entity Recognition Avanzato
- Approfondimento su tecniche di NER.
- Esercizi pratici con NLTK e Spacy.
Lezione 14: Analisi di Reti Sociali con NLP
- Utilizzo di NLP per l'analisi di dati da reti sociali.
- Case study: analisi del sentiment su Twitter.
Lezione 15: Chatbots e Assistenti Virtuali
- Principi di creazione di chatbots.
- NLP per l'interpretazione delle richieste utente.
Lezione 16: Question Answering Systems
- Sviluppo di sistemi di risposta a domande.
- Applicazioni pratiche e casi d'uso.
Lezione 17: Etica e Privacy nel NLP
- Discussione sull'etica nell'uso di NLP.
- Considerazioni sulla privacy e sull'anonimato dei dati.
Lezione 18: Progetti di NLP nel Mondo Reale
- Presentazione di case study e progetti di successo.
- Discussione su sfide e soluzioni innovative.
Lezione 19: Laboratorio e Workshop su Progetti di NLP
- Sviluppo guidato di un progetto di NLP.
- Supporto, Q&A, e sessioni interattive.
Lezione 20: Presentazione del Progetto Finale e Revisione
- Presentazione dei progetti finali degli studenti.
- Feedback collettivo e individuale, discussione dei risultati.
________________________
Metodologia Didattica:
- Lezioni interattive con dimostrazioni pratiche.
- Esercizi pratici per consolidare le conoscenze.
- Utilizzo di quiz e test per la valutazione dell'apprendimento.
- Forum di discussione per il supporto tra pari e il chiarimento dei dubbi.
Materiale Fornito:
- Slide delle lezioni.
- Video tutorial.
- Guide e risorse online selezionate.
Valutazione:
- Teacher: Binatomy Team
Syllabus del Corso di Programmazione & Analisi Dati
Obiettivi del Corso:
- Impartire una conoscenza approfondita di Python, dalle sue basi sintattiche alle strutture dati complesse, per sviluppare solide competenze di programmazione applicabili a vari ambiti.
- Introdurre le fondamenta dell'analisi dei dati utilizzando Pandas e Numpy, consentendo ai partecipanti di manipolare, analizzare e accedere ai dati in modo efficace.
- Esplorare tecniche avanzate di visualizzazione dei dati con Matplotlib e Seaborn, per comunicare risultati complessi attraverso grafici e diagrammi intuitivi.
- Fornire una solida base nel machine learning con Python, attraverso l'uso di Scikit-learn per l'apprendimento supervisionato e non supervisionato, inclusi modelli di regressione e classificazione.
- Approfondire metodi di data mining, clustering, e riduzione della dimensionalità, utilizzando Scikit-learn e Scipy, per scoprire pattern nascosti nei dati e migliorare la preparazione dei dati per il machine learning.
- Preparare i partecipanti a gestire sfide reali nel campo dell'analisi dei dati e del machine learning, attraverso l'applicazione pratica delle competenze acquisite in progetti finali che integrano data mining, analisi dei dati e tecniche di machine learning.
Durata del Corso: 30 ore, suddivise in 20 lezioni da 1 ora e 30 minuti ciascuna.
________________________
Lezione 1: Introduzione a Python
• Panoramica del corso.
• Installazione di Python e configurazione dell’ambiente di sviluppo.
• Sintassi di base di Python: variabili, tipi di dati, operazioni.
Lezione 2: Strutture Dati in Python
• Liste, tuple, dizionari, set.
• Comprensioni di liste e dizionari.
Lezione 3: Controllo del Flusso
• Condizioni, cicli for e while.
• Istruzioni break, continue, pass.
Lezione 4: Funzioni e Moduli
• Definizione e chiamata di funzioni.
• Scopo delle variabili, parametri, valori di ritorno.
• Importazione di moduli e pacchetti.
Lezione 5: Gestione delle Eccezioni e File I/O
• Gestione delle eccezioni.
• Lettura e scrittura di file.
Lezione 6: Analisi dei Dati con Pandas e Numpy
• Installazione e configurazione di Pandas e Numpy.
• Serie e DataFrame: creazione, manipolazione, accesso ai dati.
• Operazioni matematiche e scientifiche con Numpy.
Lezione 7: Operazioni Avanzate con Pandas
• Operazioni sui DataFrame: filtraggio, ordinamento, aggregazione.
• Merge, join, concatenazione di DataFrame.
Lezione 8: Visualizzazione dei Dati
• Introduzione a Matplotlib e Seaborn.
• Creazione di grafici e visualizzazioni dei dati.
Lezione 9: Introduzione al Machine Learning con Python
• Panoramica del Machine Learning.
• Processo di apprendimento supervisionato e non supervisionato.
Lezione 10: Preprocessing dei Dati con Scikit-learn
• Gestione dei dati mancanti.
• Normalizzazione e standardizzazione dei dati.
Lezione 11: Data Mining e Esplorazione dei Dati
• Tecniche di data mining per la scoperta di pattern.
• Identificazione di outliers e pulizia dei dati.
Lezione 12: Clustering e Riduzione della Dimensionalità con Scikit-learn e Scipy
• K-Means, PCA (Principal Component Analysis).
• Uso di Scipy per metodi avanzati di clustering e analisi.
Lezione 13: Analisi Avanzata dei Dati e Visualizzazione
• Tecniche avanzate di visualizzazione dei dati.
• Esplorazione multidimensionale dei dati.
Lezione 14: Modelli di Regressione con Scikit-learn
• Regressione lineare e logistica.
• Valutazione dei modelli.
Lezione 15: Modelli di Classificazione con Scikit-learn
• K-Nearest Neighbors (KNN).
• Support Vector Machines (SVM), Decision Trees.
Lezione 16: Preparazione dei Dati per Machine Learning
• Tecniche di data preparation.
• Selezione delle caratteristiche e riduzione della dimensionalità.
Lezione 17: Sentiment Analysis e Data Mining
• Metodi di Sentiment Analysis.
• Applicazioni di data mining per l'analisi del sentiment.
Lezione 18: Topic Modeling e Classificazione del Testo
• Introduzione al Topic Modeling.
• Classificazione del testo con modelli ML.
Lezione 19: Applicazioni Pratiche di Machine Learning
• Caso studio: applicazioni reali di machine learning.
• Discussione su casi d'uso e best practices.
Lezione 20: Progetto Finale e Revisione
• Sviluppo di un progetto finale che incorpora tecniche di data mining, clustering e machine learning.
• Discussione dei progetti, feedback e revisione del corso.
________________________
Metodologia Didattica:
- Lezioni interattive con dimostrazioni pratiche.
- Esercizi pratici per consolidare le conoscenze.
- Utilizzo di quiz e test per la valutazione dell'apprendimento.
- Forum di discussione per il supporto tra pari e il chiarimento dei dubbi.
Materiale Fornito:
- Slide delle lezioni.
- Video tutorial.
- Guide e risorse online selezionate.
Valutazione:
- Teacher: Binatomy Team
Syllabus del Corso di Programmazione Web
Obiettivi del Corso:
- Fornire ai partecipanti una solida base nelle tecnologie web (HTML, CSS, JavaScript, PHP, MySQL, Laravel, Vue.js) per lo sviluppo di siti e applicazioni web.
- Insegnare la creazione di interfacce utente responsive e applicazioni dinamiche, introducendo pratiche moderne di sviluppo software, inclusi Git e principi di sicurezza web.
- Fornire esperienza pratica con progetti reali, migliorando le competenze in gestione dati con PHP/MySQL e sviluppo front-end/back-end con Vue.js e Laravel.
- Promuovere soluzioni creative nel problem solving e la sicurezza nelle applicazioni web, preparando i partecipanti per il settore professionale dello sviluppo web.
Durata del Corso: 30 ore, suddivise in 20 lezioni da 1 ora e 30 minuti ciascuna.
________________________
Lezione 1: Introduzione al Web Development
• Panoramica del corso e obiettivi.
• Introduzione a HTML: storia, importanza e struttura di base.
Lezione 2: HTML Avanzato
• Form, liste, collegamenti, immagini.
• Introduzione alla semantica HTML.
Lezione 3: Introduzione a CSS
• Selezione di stili, proprietà fondamentali.
• Introduzione al Box Model.
Lezione 4: Layout CSS e Responsività
• Flexbox e Grid.
• Media queries per design responsivo.
Lezione 5: Fondamenti di JavaScript
• Sintassi, variabili, tipi di dati.
• Operatori, stringhe, numeri.
Lezione 6: Controllo del Flusso e Funzioni in JavaScript
• Condizioni, cicli.
• Funzioni e scope.
Lezione 7: DOM e Eventi in JavaScript
• Manipolazione del DOM.
• Gestione degli eventi.
Lezione 8: Introduzione a PHP
• Sintassi di base, variabili, stringhe e numeri.
• Condizioni e cicli in PHP.
Lezione 9: Array e Form in PHP
• Gestione degli array.
• Ricezione e validazione dei dati dei form.
Lezione 10: Introduzione a MySQL
• Fondamenti di database.
• Connessione tra PHP e MySQL.
Lezione 11: CRUD con PHP e MySQL
• Creazione, lettura, aggiornamento, cancellazione di dati.
Lezione 12: Introduzione a Laravel
• Installazione e configurazione di Laravel.
• Struttura di un progetto Laravel.
Lezione 13: Le Basi di Laravel
• Routing, Controller, View.
• Blade templating engine.
Lezione 14: Database e Migrazioni in Laravel
• Migrazioni, modelli, seeders.
• Eloquent ORM: basi.
Lezione 15: Autenticazione e Sicurezza in Laravel
• Autenticazione utenti.
• Protezione CSRF e XSS.
Lezione 16: Relazioni Eloquent e Validazione dei Dati
• Relazioni tra modelli.
• Validazione dei dati in Laravel.
Lezione 17: Laravel Avanzato
• Middleware, gestione delle eccezioni.
• Servizi e Dependency Injection.
Lezione 18: Introduzione a Vue.js con Laravel
• Integrare Vue.js in un progetto Laravel.
• Componenti base e comunicazione.
Lezione 19: Progetto Finale - Parte 1
• Pianificazione e inizio sviluppo del progetto finale.
Lezione 20: Progetto Finale - Parte 2 e Revisione
• Completamento e presentazione dei progetti.
• Feedback e revisione del corso.
________________________
Metodologia Didattica:
- Lezioni interattive con dimostrazioni pratiche.
- Esercizi pratici per consolidare le conoscenze.
- Utilizzo di quiz e test per la valutazione dell'apprendimento.
- Forum di discussione per il supporto tra pari e il chiarimento dei dubbi.
Materiale Fornito:
- Slide delle lezioni.
- Video tutorial.
- Guide e risorse online selezionate.
Valutazione:
- Teacher: Binatomy Team