.. _td2asentimentanalysisrst: ============================= 2A.ml - Analyse de sentiments ============================= .. only:: html **Links:** :download:`notebook `, :downloadlink:`html `, :download:`python `, :downloadlink:`slides `, :githublink:`GitHub|_doc/notebooks/td2a_ml/td2a_sentiment_analysis.ipynb|*` C’est désormais un problème classique de machine learning. D’un côté, du texte, de l’autre une appréciation, le plus souvent binaire, positive ou négative mais qui pourrait être graduelle. .. code:: ipython3 %matplotlib inline .. code:: ipython3 from jyquickhelper import add_notebook_menu add_notebook_menu() .. contents:: :local: Les données ----------- On récupère les données depuis le site UCI `Sentiment Labelled Sentences Data Set `__ où on utilise la fonction ``load_sentiment_dataset``. .. code:: ipython3 from ensae_teaching_cs.data import load_sentiment_dataset df = load_sentiment_dataset() df.head() .. raw:: html
sentance sentiment source
0 So there is no way for me to plug it in here i... 0 amazon_cells_labelled
1 Good case, Excellent value. 1 amazon_cells_labelled
2 Great for the jawbone. 1 amazon_cells_labelled
3 Tied to charger for conversations lasting more... 0 amazon_cells_labelled
4 The mic is great. 1 amazon_cells_labelled
Exercice 1 : approche td-idf ---------------------------- La cible est la colonne *sentiment*, les deux autres colonnes sont les features. Il faudra utiliser les prétraitements `LabelEncoder `__, `OneHotEncoder `__, `TF-IDF `__. L’un d’entre eux n’est pas nécessaire depuis la version `0.20.0 `__ de *scikit-learn*. Exercice 2 : word2vec --------------------- On utilise l’approche `word2vec `__ du module `gensim `__ ou `spacy `__. Exercice 3 : comparer les deux approches ---------------------------------------- Avec une courbe `ROC `__ par exemple.