Strumenti Utente

Strumenti Sito


mds:txa:start

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisione Revisione precedente
Prossima revisione
Revisione precedente
Prossima revisione Entrambe le parti successive la revisione
mds:txa:start [30/09/2021 alle 14:15 (3 anni fa)]
Andrea Esuli [Lecture Notes]
mds:txa:start [09/12/2022 alle 15:55 (17 mesi fa)]
Lucia Passaro [Lecture Notes]
Linea 1: Linea 1:
-====== Text Analytics (635AA) A.Y. 2021/22 ======+<html> 
 +<!-- Google Analytics --> 
 +<script type="text/javascript" charset="utf-8"> 
 +(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 
 +(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 
 +m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 
 +})(window,document,'script','//www.google-analytics.com/analytics.js','ga'); 
 + 
 +ga('create', 'UA-34685760-1', 'auto', 'personalTracker', {'allowLinker': true}); 
 +ga('personalTracker.require', 'linker'); 
 +ga('personalTracker.linker:autoLink', ['pages.di.unipi.it', 'enforce.di.unipi.it', 'didawiki.di.unipi.it', 'luciacpassaro.github.io'] );     
 +ga('personalTracker.require', 'displayfeatures'); 
 +ga('personalTracker.send', 'pageview', 'courses/txa/'); 
 +setTimeout("ga('send','event','adjusted bounce rate','30 seconds')",30000);  
 +</script> 
 +<!-- End Google Analytics --> 
 +<!-- Global site tag (gtag.js) - Google Analytics --> 
 +<script async src="https://www.googletagmanager.com/gtag/js?id=G-LPWY0VLB5W"></script> 
 +<script> 
 +  window.dataLayer = window.dataLayer || []; 
 +  function gtag(){dataLayer.push(arguments);
 +  gtag('js', new Date()); 
 + 
 +  gtag('config', 'G-LPWY0VLB5W'); 
 +</script> 
 +<!-- Capture clicks --> 
 +<script> 
 +jQuery(document).ready(function(){ 
 +  jQuery('a[href$=".pdf"]').click(function() { 
 +    var fname = this.href.split('/').pop(); 
 +    ga('personalTracker.send', 'event',  'TXA', 'PDFs', fname); 
 +  }); 
 +  jQuery('a[href$=".r"]').click(function() { 
 +    var fname = this.href.split('/').pop(); 
 +    ga('personalTracker.send', 'event',  'TXA', 'Rs', fname); 
 +  }); 
 +  jQuery('a[href$=".zip"]').click(function() { 
 +    var fname = this.href.split('/').pop(); 
 +    ga('personalTracker.send', 'event',  'TXA', 'ZIPs', fname); 
 +  }); 
 +}); 
 +</script> 
 +</html> 
 +====== Text Analytics (635AA) A.Y. 2022/23 ======
  
  
 ==== Teacher ==== ==== Teacher ====
  
-[[http://www.esuli.it/|Andrea Esuli]] (andrea.esuli@isti.cnr.it)+[[http://luciacpassaro.github.io/|Lucia Passaro]] (lucia.passaro [at] unipi [dot] it)
  
-Office hours: by appointment, send email.+Office hours: Monday 16-18 via [[https://teams.microsoft.com/l/chat/0/0?users=lucia.passaro@unipi.it|Teams]]
  
  
-==== Schedule  ====+==== Schedule ====
  
 ^ Day ^ Hour ^ Room ^  ^ Day ^ Hour ^ Room ^ 
-| Monday | 9-11 | Fib C - [[https://teams.microsoft.com/l/channel/19%3aPNQvMI4MdxtWb0_5d1r1UoIPA9QHxRe6kOuZ9VHTG-I1%40thread.tacv2/General?groupId=109c5615-d2be-49ef-848f-85c7aa07de5b&tenantId=c7456b31-a220-47f5-be52-473828670aa1|Teams]]+| Monday | 9-11 | Fib M1 
-| Friday| 11-13 | Fib M1 -  [[https://teams.microsoft.com/l/channel/19%3aPNQvMI4MdxtWb0_5d1r1UoIPA9QHxRe6kOuZ9VHTG-I1%40thread.tacv2/General?groupId=109c5615-d2be-49ef-848f-85c7aa07de5b&tenantId=c7456b31-a220-47f5-be52-473828670aa1|Teams]]|+| Friday| 11-13 | Fib M1 |
  
 +
 +[[https://teams.microsoft.com/l/team/19%3au_2NWnfXHAGPknxec1GtEY5y8UrjGRSAQjuJ1tySJ7w1%40thread.tacv2/conversations?groupId=414d90af-3f1a-4188-9dd7-21ac607e5c1f&tenantId=c7456b31-a220-47f5-be52-473828670aa1|Team of the class]]
  
 ==== Objectives ==== ==== Objectives ====
-The course targets text analytics systems and applications to respond to business problems by discovering and presenting knowledge that is otherwise locked in textual form. The objective is to learn to recognize situations in which text analytics techniques can solve information processing needsto identify the analytic task/process that best models the business problemto select the most appropriate resources methods and tools, to collect text data and apply such methods to them. Several applications context will be presented: information extractionsentiment analysis (what is the nature of commentary on an issue)spam and fake posts detectionquantification problemssummarization, etc.+The course targets text analytics systems and applications to respond to business problems by discovering and presenting knowledge that is otherwise locked in textual form.  
 +The main objectives of the course are: 
 +  - Learning essential techniques, algorithms, and models used in natural language processing. 
 +  - Understanding of the architectures of typical text analytics applications and of libraries for building them.  
 +  - Expertise in designimplementation, and evaluation of applications that exploit analysisinterpretationand transformation of texts.
  
-  - Disciplinary background: Natural Language Processing, Information Retrieval and Machine Learning 
-  - Mathematical background: Probability, Statistics and Algebra 
-  - Linguistic essentials: words, lemmas, morphology, PoS, syntax 
-  - Basic text processing: regular expression, tokenisation 
-  - Data collection: twitter API, scraping 
-  - Basic modelling: collocations, language models 
-  - Introduction to Machine Learning: theory and practical tips 
-  - Libraries and tools: NLTK, Spacy, Keras, pytorch 
-  - Classification/Clustering 
-  - Sentiment Analysis/Opinion Mining 
-  - Information Extraction/Relation Extraction/Entity Linking 
-  - Transfer learning 
-  - Quantification 
  
 +==== Background ====
  
-==== Exam ====+  * Background: Natural Language Processing, Information Retrieval and Machine Learning 
 +  * Mathematical background: Probability, Statistics and Algebra 
 +  * Linguistic essentials: words, lemmas, morphology, Part of Speech (PoS), syntax 
 +  * Basic text processing: regular expression, tokenisation 
 +  * Data collection: scraping 
 +  * Basic modelling: collocations, language models 
 +  * Introduction to Machine Learning: theory and practical tips 
 +  * Libraries and tools: NLTK, Spacy, Keras, pytorch 
 +  * Classification/Clustering 
 +  * Sentiment Analysis/Opinion Mining 
 +  * Information Extraction/Relation Extraction/Entity Linking 
 +  * Transfer learning 
 +  * Quantification
  
-**__Students MUST contact the teacher at least one month before the date set for the exam session__, so as to agree on the contents of the project and get a go ahead.**+==== Lecture Notes ====
  
-**The date set for the exam session ([[https://esami.unipi.it/esami/findcourse.php?id=52426|Check here]]) is the deadline for submitting the completed project (report and code).**+^ Date ^ Lecture ^ Slides ^ Material / Reference ^ 
 +| 2022/09/16 | Introduction to the course, NLP & Text Analytics. | [[https://drive.google.com/file/d/1wc6yvn6Y5QrFXyFw53xeB4M6MsMmWssS/view?usp=sharing| 1 - Introduction to the Text Analytics course]]|JEisenstein. Introduction to Natural Language Processing. MIT Press.[[https://drive.google.com/file/d/17T4zo2uGssKBa_MrHsLW-uSmyP_ZJvpj/view?usp=sharingChp. 1]].| 
 +| 2022/09/19 | Reminds on Probability. Language and Probability. | [[https://drive.google.com/file/d/1-exk-JS0_Oa3Eg1ApTGlxonQlL3KbTQG/view?usp=sharing| 2 - Reminds on Probability]]| | 
 +| 2022/09/23 | Introduction to Python.| [[https://drive.google.com/file/d/1lpyA0N4K0d0ZTrJgokot1NwC_w4HG6gG/view?usp=sharing| 3 - Introduction to Python]]|[[https://drive.google.com/file/d/1BubwKtByCankjnbClWErvSsw9EjCLnte/view?usp=sharing|Introduction to Python - Notebook.]]| 
 +| 2022/09/30 | Introduction to Python (continued). Project Presentation and Important Dates. | [[https://drive.google.com/file/d/1FjCYvOkZDWomEsJuXD32Vl_155kxnKik/view?usp=sharing|Project and Dates]]| | 
 +| 2022/10/03 | Probabilistic Language Models. | [[https://drive.google.com/file/d/1B5HfPtPgK41Ig_NWrPim6YxK3mCF-XSj/view?usp=sharing| 5 - Probabilistic Language models]]|D. Jurafsky, J.H. Martin.[[https://drive.google.com/file/d/1OXSjwE0-ZN6DZ4MELOMp8JVy-tP2_4Iw/view?usp=sharing| Chp. 3]]. [[https://drive.google.com/file/d/1osuyJi5ZbBMghOrQz_IVqMsfxi2-1Vzj/view?usp=sharing| Probabilistic Language Models - Notebook]].| 
 +| 2022/10/07 | Text Indexding: Strings, Regular Expressions and BS4. | [[https://drive.google.com/file/d/1hkkjm5saUiKqL-9KgGgozTBupgIOus74/view?usp=sharing| 6 - Text Indexing-1]]|D. Jurafsky, J.H. Martin.[[https://drive.google.com/file/d/1RO_PGJj0a8v_N0dnw5iK4nGiabaAKZc5/view?usp=sharing| Chp. 2]]. [[https://drive.google.com/file/d/1IX8qSNdSbTFz5n1yMsMqtX9QU6HOofdv/view?usp=sharing| Strings, Regular Expressions and BS4 - Notebook]].| 
 +| 2022/10/10 | Text Indexding: Linguistic annotation. NLTK. | [[https://drive.google.com/file/d/11AjdH0K1W5OytgdofaxlCP_nQlI-rRTB/view?usp=sharing| 6 - Text Indexing-2]]|[[https://drive.google.com/file/d/1uigGIb0_9bX2Gb5g6SX51JHyN3kxN4y_/view?usp=sharing| Linguistic annotation with NLTK - Notebook]].| 
 +| 2022/10/14 | Text Indexding: Collocations with Gensim. stanza. spacy. Feature selection. | [[https://drive.google.com/file/d/13RDX2D2m8Bhkv0_qddvpWndBYQWoKYpY/view?usp=sharing| 6 - Text Indexing-3]]|[[https://drive.google.com/file/d/12L7nHe9TvZJPSS4RaiyGyIaPnx8cXkrN/view?usp=sharing| L6.3.4 - collocations - stanza - spacy - Notebooks]].| 
 +| 2022/10/17 | Text Indexding: Vector space models. | [[https://drive.google.com/file/d/1AhhYq-1mCGqtVcUnvoiAb7c2WYs4CSm2/view?usp=sharing| 6 - Text Indexing-4]]|D. Jurafsky, J.H. Martin.[[https://drive.google.com/file/d/1A1aKTIQh8CnEU8QBkmet1iADpTBAdUHR/view?usp=sharing| Chp. 6]]. [[https://drive.google.com/file/d/1dyn540ISuJ8wMlBkUoFH5J9ctNIcHj54/view?usp=sharing| L6.5 - Vector space model - toy example - Notebook]].| 
 +| 2022/10/21 | Machine Learning for Text Analytics. | [[https://drive.google.com/file/d/1eHQR4GhtPjgN7muIRLfyQBXcgM4oQmUK/view?usp=sharing| 10 - Machine Learning for Text Analytics]]| | 
 +| 2022/10/24 | Student project presentations: proposal, brainstorming, discussion. | |  
 +| 2022/10/28 | Student project presentations: proposal, brainstorming, discussion. | |   
 +| 2022/11/04 | Machine Learning for Text Analytics. Experiments and Practice. | [[https://drive.google.com/file/d/1HXC4pHde9D7bYYAw4vM6ihS2u7kChgO8/view?usp=share_link| 13 - Experiments]]| [[https://drive.google.com/file/d/1xbRmZ-HudXRIqBbQDpXjOlUNyrq7-yop/view?usp=share_link| Classification sklearn - Notebook.]]| 
 +| 2022/11/07 | Topic Modeling. | [[https://drive.google.com/file/d/1ytnJjLHtLT97gCNbzBp_I2TCcY7bfjMN/view?usp=share_link| 14 - Topic modeling]]| Zhai and Massung (2016) Text Data Management and Analysis. [[https://drive.google.com/file/d/1iJ71WZIpWP-cWxLtvsf5L4vp_epJH0uV/view?usp=share_link| Chp 17]].[[https://drive.google.com/file/d/1fKpyNYs9kNlPJpiYiDkzO_j6TkyHM8sS/view?usp=share_link| Topic Modeling - Notebooks.]]| 
 +| 2022/11/11 | A primer on Neural Networks. | [[https://drive.google.com/file/d/1_snMjfUb1z5YLBEHft6HJo65w4EWYD-v/view?usp=share_link|15 - A Primer on Neural Networks]]| |  
 +| 2022/11/14 | A primer on Neural Networks (continued). Practice.| | [[https://drive.google.com/file/d/1UEKJ_E1hD92E4OPw5HUOhvf1NKxxTR2T/view?usp=share_link| From SVM to NN, Classification with Keras - Notebooks.]]| 
 +| 2022/11/18 | Neural Language Models. Word2vec | [[https://drive.google.com/file/d/1Juf8aMqg_c5wW1KvQxfzvz2A6diV4a4A/view?usp=share_link| 17 - Neural Language Models-1]]|[[https://drive.google.com/file/d/1ffEsnsmb_o3iX9YBkS095UMPrMOMGrdO/view?usp=share_link|Word2vec with Gensim - Notebook.]]| 
 +| 2022/11/21 | Neural Language Models. Doc2vec. Transformer. BERT. | [[https://drive.google.com/file/d/10_VjJacKzajp7yNuSOhZo-nNUJjChkcN/view?usp=share_link| 18 - Neural Language Models-2]]|D. Jurafsky, J.H. Martin. Chps. [[https://drive.google.com/file/d/14oI6vsl4KCpGyamBbVjeYPTuzWOSNEtV/view?usp=share_link|7]] [[https://drive.google.com/file/d/1wonZ08i0etFhEMSjQEVU2vKf6UyUjEHb/view?usp=share_link|9]][[https://drive.google.com/file/d/1BsCfRzp3t6xAe4GfUTZbHfBujXyxtdAA/view?usp=share_link|11]].[[https://drive.google.com/file/d/1hs6ffqsn1gLM6RXSsFcTYjfh-AjFYXDu/view?usp=share_link|Doc2vec with Gensim - Notebook.]]| 
 +| 2022/11/25 | Seminar (Alessandro Bondielli). Evaluating strategies for Automatic Profiling of Résumés.| |[[https://drive.google.com/file/d/1dopSg44-kSGhIo3nv2wLFis7IRePp6xM/view?usp=share_link|A case study.]] | 
 +| 2022/12/02 | Student project presentations: ongoing experiments. Discussion. | |  
 +| 2022/12/05 | Student project presentations: ongoing experiments. Discussion. | |  
 +| 2022/12/09 | Fine-tuning BERT. Advanced applications (Conversational Agents, Affective Computing).| [[https://drive.google.com/file/d/1RdiNnhM5he2ZIfLBFZ-dPdhlDZMZEHjO/view?usp=share_link| 22 - Advanced applications]]| [[https://drive.google.com/file/d/1q7ZsRYoA4fL4e0VRytezq1-b6s-FpkJD/view?usp=share_link|BERT finetune - Notebooks]]. Recommended chapters: D. Jurafsky, J.H. Martin.[[https://drive.google.com/file/d/1BWfVPq4HiTWzvUHGaqaEkJEWieQxhf-g/view?usp=share_link|20]];[[https://drive.google.com/file/d/148pdYBYtUCwCHR349-HDjEMJMS11ONDi/view?usp=share_link|24]].| 
 + 
  
-Exam will consist in a project to be agreed with the teacher and an oral exam. +==== Exam ====
-The outcome of the project will be some code and a report of the activity (4-10 pages is the typical length range). +
-Oral exam will consist in the presentation and discussion of the project.+
  
-The purpose of the project is to let you have some hands on experience on applying the concepts and methods seen during the course to practical text analytics problems.+** Attending students **
  
-Projects may be based on challenges proposed in either research forums ([[https://alt.qcri.org/semeval2020/|Semeval]], [[http://www.evalita.it/|Evalita]]) or other platforms ([[https://kaggle.com|Kaggle]]). Students are also invited to propose a project on problem based on other sources (e.g., recent papers on ArXiv [[https://arxiv.org/list/cs.CL/new|CL]] or [[https://arxiv.org/list/cs.AI/new|AI]]), or their own interests.+The exam for attending students will consist of the development of a project to be agreed upon with the teacher and an oral exam. The outcome of the project will be some code and a report of the activity (4-10 pages is the typical length range). The oral exam will consist of the presentation and discussion of the project. 
 +Projects may be based on challenges proposed in either research forums ([[https://alt.qcri.org/semeval2020/|Semeval]], [[http://www.evalita.it/|Evalita]]) or other platforms ([[https://kaggle.com|Kaggle]]). Students are also invited to propose a project based on other sources (e.g., recent papers on ArXiv [[https://arxiv.org/list/cs.CL/new|CL]] or [[https://arxiv.org/list/cs.AI/new|AI]]), or their own interests. Students may work in 3-5 people groups.
  
-Students may work solo or in groups up to three persons. 
  
-==== Lecture Notes ====+** Non-Attending students **  
 + 
 +The exam for non attending students will consist in a written exam with open question and exercises, and an oral discussion on the topics of the course. 
  
-^ Date ^ Lecture ^ Notes ^ 
-| 2021/09/13 | Introduction to the course, NLP & Text Analytics | {{ :mds:txa:00_-_introduction_to_the_text_analytics_course.pdf |}}, {{ :mds:txa:01_-_natural_language_and_text_analytics.pdf |}} | 
-| 2021/09/17 | Introduction to probability | {{ :mds:txa:02_-_introduction_to_probability.pdf |}}  |  
-| 2021/09/20 | //canceled// 
-| 2021/09/24 | Introduction to python 1/2 | {{ :mds:txa:03_-_introduction_to_python.pdf |}} {{ :mds:txa:03_1_introduction_to_python.zip |}}|  
-| 2021/09/27 | Introduction to python 2/2 |  |  
-| 2021/10/01 | Probabilistic Language Models | {{ :mds:txa:04_-_probabilistic_language_models.pdf |}} {{ :mds:txa:04_1_probabilisticlanguagemodel.zip |}}|  
-| 2021/10/04 |  |  | 
-| 2021/10/08 |  |  | 
-| 2021/10/11 |  |  | 
-| 2021/10/15 |  |  | 
-| 2021/10/18 |  |  | 
-| 2021/10/22 |  |  | 
-| 2021/10/25 |  |  | 
-| 2021/10/29 |  |  | 
-| 2022/11/05 |  |  | 
-| 2022/11/08 |  |  | 
-| 2022/11/12 |  |  | 
-| 2022/11/15 |  |  | 
-| 2022/11/19 |  |  | 
-| 2022/11/22 |  |  | 
-| 2022/11/26 |  |  | 
-| 2022/11/29 |  |  | 
-| 2022/12/03 |  |  | 
  
 ==== Textbooks ==== ==== Textbooks ====
 +It is recommended to read selected chapters from:
 +
  
   - D. Jurafsky, J.H. Martin, [[https://web.stanford.edu/~jurafsky/slp3/|Speech and Language Processing]]. 3nd edition, Prentice-Hall, 2018.   - D. Jurafsky, J.H. Martin, [[https://web.stanford.edu/~jurafsky/slp3/|Speech and Language Processing]]. 3nd edition, Prentice-Hall, 2018.
-  - B. Liu, [[https://www.cs.uic.edu/~liub/FBS/SentimentAnalysis-and-OpinionMining.html|Sentiment Analysis and Opinion Mining]]. Morgan & Claypool Publishers, 2012. 
   - S. Bird, E. Klein, E. Loper. [[https://www.nltk.org/book/|Natural Language Processing with Python]].   - S. Bird, E. Klein, E. Loper. [[https://www.nltk.org/book/|Natural Language Processing with Python]].
  
 +Further bibliography will be indicated as a material for the single lessons.
 ==== Previous editions ==== ==== Previous editions ====
  
 +  * [[http://didawiki.cli.di.unipi.it/doku.php/mds/txa/start?rev=1649067582|2021-2022]]
   * [[http://didawiki.di.unipi.it/doku.php/mds/txa/start?rev=1612257498|2020-2021]]   * [[http://didawiki.di.unipi.it/doku.php/mds/txa/start?rev=1612257498|2020-2021]]
   * [[https://elearning.di.unipi.it/course/view.php?id=162|2019-2020]]   * [[https://elearning.di.unipi.it/course/view.php?id=162|2019-2020]]
mds/txa/start.txt · Ultima modifica: 15/01/2024 alle 10:31 (3 mesi fa) da Laura Pollacci