{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Natural Language Processing Tutorial (NLP101) - Level Beginner" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Date Updated: Feb 25, 2020**\n", "\n", "# 1.0 Objective of Tutorial\n", "Welcome to Natural Language Processing Tutorial (NLP101). This tutorial assumes that you are new to PyCaret and looking to get started with Natural Language Processing using `pycaret.nlp` Module.\n", "\n", "In this tutorial we will learn:\n", "\n", "\n", "* **Getting Data:** How to import data from PyCaret repository?\n", "* **Setting up Environment:** How to setup environment in PyCaret and perform critical text pre-processing tasks?\n", "* **Create Model:** How to create a topic model?\n", "* **Assign Model:** How to assign documents/text to topics using a trained model?\n", "* **Plot Model:** How to analyze topic models / overall corpus using various plots?\n", "* **Save / Load Model:** How to save / load model for future use?\n", "\n", "Read Time : Approx. 30 Minutes\n", "\n", "\n", "## 1.1 Installing PyCaret\n", "First step to get started with PyCaret is to install pycaret. Installing pycaret is easy and take few minutes only. Follow the instructions below:\n", "\n", "#### Installing PyCaret in Local Jupyter Notebook\n", "`pip install pycaret`
\n", "\n", "#### Installing PyCaret on Google Colab or Azure Notebooks\n", "`!pip install pycaret`\n", "\n", "\n", "## 1.2 Pre-Requisites\n", "- Python 3.x\n", "- Latest version of pycaret\n", "- Internet connection to load data from pycaret's repository\n", "- Basic Knowledge of NLP \n", "\n", "## 1.3 For Google colab users:\n", "If you are running this notebook on Google colab, below code of cells must be run at top of the notebook to display interactive visuals.
\n", "
\n", "`from pycaret.utils import enable_colab`
\n", "`enable_colab()`\n", "\n", "## 1.4 See also:\n", "- __[Natural Language Processing Tutorial (NLP102) - Level Intermediate](https://github.com/pycaret/pycaret/blob/master/Tutorials/Natural%20Language%20Processing%20Tutorial%20Level%20Intermediate%20-%20NLP102.ipynb)__\n", "- __[Natural Language Processing Tutorial (NLP103) - Level Expert](https://github.com/pycaret/pycaret/blob/master/Tutorials/Natural%20Language%20Processing%20Tutorial%20Level%20Expert%20-%20NLP103.ipynb)__" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 2.0 What is Natural Language Processing?\n", "\n", "Natural Language Processing (NLP in short) is a branch of artificial intelligence that deals with analyzing, understanding and generating the languages that humans use naturally in order to interface with computers in both written and spoken contexts using natural human languages instead of computer languages. Some of the common use case of NLP in machine learning are: \n", "\n", "- **Topic discovery and modeling:** Capture the meaning and themes in text collections, and apply advanced modeling techniques such as Topic Modeling to group similar documents together.\n", "- **Sentiment Analysis:** Identifying the mood or subjective opinions within large amounts of text, including average sentiment and opinion mining.\n", "- **Document summarization:** Automatically generating synopses of large bodies of text.\n", "- **Speech-to-text and text-to-speech conversion:** Transforming voice commands into written text, and vice versa.\n", "- **Machine translation:** Automatic translation of text or speech from one language to another. \n", "\n", "__[Learn More about Natural Language Processing](https://en.wikipedia.org/wiki/Natural_language_processing)__" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 3.0 Overview of Natural Language Processing Module in PyCaret\n", "PyCaret's NLP module (`pycaret.nlp`) is an unsupervised machine learning module which can be used for analyzing the text data by creating topic model to find hidden semantic structure in documents. PyCaret's NLP module comes built-in with a wide range of text pre-processing techniques which is the fundamental step in any NLP problem. It transforms the raw text into a format that machine learning algorithms can learn from.\n", "\n", "As of first release, PyCaret's NLP module only support `English` language and provides several popular implementation of topic models from Latent Dirichlet Allocation to Non-Negative Matrix Factorization. It has over 5 ready-to-use algorithms and over 10 plots to analyze the text. PyCaret's NLP module also implements a unique function `tune_model()` that allows you to tune the hyperparameters of a topic model to optimize the supervised learning objective such as `AUC` for classification or `R2` for regression." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 4.0 Dataset for the Tutorial" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For this tutorial we will be using data from **Kiva Microfunds** https://www.kiva.org/. Kiva Microfunds is a non-profit that allows individuals to lend money to low-income entrepreneurs and students around the world. Since starting in 2005, Kiva has crowd-funded millions of loans with a repayment rate of around 98%. At Kiva, each loan request includes both traditional demographic information on the borrower, such as gender and location, as well as a personal story. In this tutorial we will use the text given in personal story to gain insights of the dataset and understand hidden semantic structure in the text. The dataset contains 6,818 samples. Short description of features are below:\n", "\n", "- **country:** country of borrower\n", "- **en:** Personal story of borrower when applied for loan\n", "- **gender:** Gender (M=male, F=female)\n", "- **loan_amount:** Amount of loan approved and disbursed\n", "- **nonpayment:** Type of lender (Lender = personal registered user on Kiva website, Partner = microfinance institution who work with Kiva to find and fund loans)\n", "- **sector:** sector of borrower\n", "- **status:** status of loan (1-default, 0-repaid)\n", "\n", "In this tutorial we will only use `en` column to create topic model. In next tutorial __[Natural Language Processing (NLP102) - Level Intermediate](https://github.com/pycaret/pycaret/blob/master/Tutorials/Natural%20Language%20Processing%20Tutorial%20Level%20Intermediate%20-%20NLP102.ipynb)__ we will use topic model to build a classifier that predicts `status` of loan to know whether the applicant will default or not. \n", "\n", "#### Dataset Acknowledgement:\n", "Kiva Microfunds https://www.kiva.org/ " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 5.0 Getting the Data" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can download the data from PyCaret's git repository __[Click Here to Download](https://github.com/pycaret/pycaret/blob/master/datasets/kiva.csv)__ or you can load it using `get_data()` function (This will require internet connection)." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
countryengenderloan_amountnonpaymentsectorstatus
0Dominican Republic\"Banco Esperanza\" is a group of 10 women looki...F1225partnerRetail0
1Dominican Republic\"Caminemos Hacia Adelante\" or \"Walking Forward...F1975lenderClothing0
2Dominican Republic\"Creciendo Por La Union\" is a group of 10 peop...F2175partnerClothing0
3Dominican Republic\"Cristo Vive\" (\"Christ lives\" is a group of 10...F1425partnerClothing0
4Dominican Republic\"Cristo Vive\" is a large group of 35 people, 2...F4025partnerFood0
\n", "
" ], "text/plain": [ " country en \\\n", "0 Dominican Republic \"Banco Esperanza\" is a group of 10 women looki... \n", "1 Dominican Republic \"Caminemos Hacia Adelante\" or \"Walking Forward... \n", "2 Dominican Republic \"Creciendo Por La Union\" is a group of 10 peop... \n", "3 Dominican Republic \"Cristo Vive\" (\"Christ lives\" is a group of 10... \n", "4 Dominican Republic \"Cristo Vive\" is a large group of 35 people, 2... \n", "\n", " gender loan_amount nonpayment sector status \n", "0 F 1225 partner Retail 0 \n", "1 F 1975 lender Clothing 0 \n", "2 F 2175 partner Clothing 0 \n", "3 F 1425 partner Clothing 0 \n", "4 F 4025 partner Food 0 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from pycaret.datasets import get_data\n", "data = get_data('kiva')" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(6818, 7)" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#check the shape of data\n", "data.shape" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(1000, 7)" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# sampling the data to select only 1000 documents\n", "data = data.sample(1000, random_state=786).reset_index(drop=True)\n", "data.shape" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 6.0 Setting up Environment in PyCaret" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "`setup()` function initializes the environment in pycaret and performs several text pre-processing steps that are imperative to work with NLP problems. setup must be called before executing any other function in pycaret. It takes two parameters: pandas dataframe and name of the text column passed as `target` parameter. You can also pass a `list` containing text, in which case you don't need to pass `target` parameter. When setup is executed, following pre-processing steps are applied automatically:\n", "\n", "- **Removing Numeric Characters:** All numeric characters are removed from the text. They are replaced with blanks.
\n", "
\n", "- **Removing Special Characters:** All non-alphanumeric special characters are removed from the text. They are also replaced with blanks.
\n", "
\n", "- **Word Tokenization:** Word tokenization is the process of splitting a large sample of text into words. This is the core requirement in natural language processing tasks where each word needs to be captured separately for further analysis. __[Read More](https://nlp.stanford.edu/IR-book/html/htmledition/tokenization-1.html)__
\n", "
\n", "- **Stopword Removal:** A stop word (or stopword) is a word that is often removed from text because it is common and provides little value for information retrieval, even though it might be linguistically meaningful. Example of such words in english language are: \"the\", \"a\", \"an\", \"in\" etc. __[Read More](https://en.wikipedia.org/wiki/Stop_words)__
\n", "
\n", "- **Bigram Extraction:** A bigram is a sequence of two adjacent elements from a string of tokens, which are typically letters, syllables, or words. For example: word New York is captured as two different words \"New\" and \"York\" when tokenization is performed but if it is repeated enough times, Bigram Extraction will represent the word as one i.e. \"New_York\" __[Read More](https://en.wikipedia.org/wiki/Bigram)__
\n", "
\n", "- **Trigram Extraction:** Similar to bigram extraction, trigram is a sequence of three adjacent elements from a string of tokens. __[Read More](https://en.wikipedia.org/wiki/Trigram)__
\n", "
\n", "- **Lemmatizing:** Lemmatization is the process of grouping together the inflected forms of a word so they can be analysed as a single word, identified by the word's lemma, or dictionary form. In English language, word appears in several inflected forms. For example the verb 'to walk' may appear as 'walk', 'walked', 'walks', 'walking'. The base form, 'walk', that one might look up in a dictionary, is called the lemma for the word. __[Read More](https://en.wikipedia.org/wiki/Lemmatisation)__
\n", "
\n", "- **Custom Stopwords:** Many times text contains words that are not stopwords by the rule of language but they add no or very little information. For example, in this tutorial we are using the loan dataset. As such, words like \"loan\", \"bank\", \"money\", \"business\" are too obvious and adds no value. More often than not, they also add a lot of noise in the topic model. You can remove those words from corpus by using `custom_stopwords` parameter. In next tutorial, __[Natural Language Processing Tutorial (NLP102) - Level Intermediate](https://github.com/pycaret/pycaret/blob/master/Tutorials/Natural%20Language%20Processing%20Tutorial%20Level%20Intermediate%20-%20NLP102.ipynb)__ we will demonstrate the use of `custom_stopwords` parameter inside `setup()`.
\n", "
\n", "\n", "**Note :** Some functionalities in `pycaret.nlp` requires english language model. The language model is not downloaded automatically when you install pycaret. You will have to download these python command line interface such as Anaconda Prompt. To download the model, please type the following in your command line:\n", "\n", "`python -m spacy download en_core_web_sm`
\n", "`python -m textblob.download_corpora`
" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "from pycaret.nlp import *" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "scrolled": false }, "outputs": [ { "data": { "text/html": [ "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Description Value
session_id123
# Documents1000
Vocab Size4596
Custom StopwordsFalse
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "exp_nlp101 = setup(data = data, target = 'en', session_id = 123)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Once the setup is succesfully executed it prints the information grid with the following information: \n", "\n", "- **session_id :** A pseduo-random number distributed as a seed in all functions for later reproducibility. If no `session_id` is passed, a random number is automatically generated that is distributed to all functions. In this experiment session_id is set as `123` for later reproducibility.
\n", "
\n", "- **# Documents :** Number of documents (or samples in dataset if dataframe is passed).
\n", "
\n", "- **Vocab Size :** Size of vocabulary in the corpus after applying all text pre-processing such as removal of stopwords, bigram/trigram extraction, lemmatization etc.
\n", "\n", "Notice that all text pre-processing steps are performed automatically when you execute `setup()`. These steps are imperative to perform any NLP experiment. `setup()` function prepares the corpus and dictionary that is ready-to-use for the topic models that you can create using `create_model()` function. Another way to pass the text is in the form of list. See an example below:" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "list" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#convert 'en' column of dataset into list format\n", "text_list = list(data['en'])\n", "type(text_list)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Description Value
session_id123
# Documents1000
Vocab Size4596
Custom StopwordsFalse
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "exp_nlp101_list = setup(data = text_list, session_id = 123)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Notice the output of `exp_nlp101_list` is identical to the output of `exp_nlp101`." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 7.0 Create a Topic Model" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**What is Topic Model?** In machine learning and natural language processing, a topic model is a type of statistical model for discovering the abstract \"topics\" that occur in a collection of documents. Topic modeling is a frequently used text-mining tool for discovery of hidden semantic structures in a text body. Intuitively, given that a document is about a particular topic, one would expect particular words to appear in the document more or less frequently: \"dog\" and \"bone\" will appear more often in documents about dogs, \"cat\" and \"meow\" will appear in documents about cats, and \"the\" and \"is\" will appear equally in both. A document typically concerns multiple topics in different proportions; thus, in a document that is 10% about cats and 90% about dogs, there would probably be about 9 times more dog words than cat words. The \"topics\" produced by topic modeling techniques are clusters of similar words. A topic model captures this intuition in a mathematical framework, which allows examining a set of documents and discovering, based on the statistics of the words in each, what the topics might be and what each document's balance of topics is. __[Read More](https://en.wikipedia.org/wiki/Topic_model)__\n", "\n", "Creating a topic model in PyCaret is simple and similar to how you would have created a model in supervised modules of pycaret. A topic model is created using `create_model()` function which takes one mandatory parameter i.e. name of model as a string. This function returns a trained model object. There are 5 topic models available in PyCaret. see the docstring of `create_model()` for complete list of models. See an example below where we create Latent Dirichlet Allocation (LDA) model:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "scrolled": false }, "outputs": [], "source": [ "lda = create_model('lda')" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "LdaModel(num_terms=4596, num_topics=4, decay=0.5, chunksize=100)\n" ] } ], "source": [ "print(lda)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We have created Latent Dirichlet Allocation (LDA) model with just one word i.e. `create_model()`. Notice the `num_topics` parameter is set to `4` which is a default value taken when you donot pass `num_topics` parameter in `create_model()`. In below example, we will create LDA model with 6 topics and we will also set `multi_core` parameter to `True`. When `multi_core` is set to `True` Latent Dirichlet Allocation (LDA) uses all CPU cores to parallelize and speed up model training." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "lda2 = create_model('lda', num_topics = 6, multi_core = True)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "LdaModel(num_terms=4596, num_topics=6, decay=0.5, chunksize=100)\n" ] } ], "source": [ "print(lda2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 8.0 Assign a Model" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now that we have created a topic model, we would like to assign the topic proportions to our dataset (6818 documents / samples) to analyze the results. We will achieve this by using `assign_model()` function. See an example below:" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
enTopic_0Topic_1Topic_2Topic_3Dominant_TopicPerc_Dominant_Topic
0praxide marry child primary school train tailo...0.8885330.0011670.0020190.108281Topic 00.89
1gynaecology practitioner run year old live wif...0.2978770.2861660.0020580.413899Topic 30.41
2live child boy girl range year old sell used w...0.2081600.0705870.0023250.718928Topic 30.72
3phanice marry child daughter secondary school ...0.7387360.0014360.0024840.257344Topic 00.74
4year old hotel kaptembwa operate hotel last ye...0.7214750.0289890.0020590.247477Topic 00.72
\n", "
" ], "text/plain": [ " en Topic_0 Topic_1 \\\n", "0 praxide marry child primary school train tailo... 0.888533 0.001167 \n", "1 gynaecology practitioner run year old live wif... 0.297877 0.286166 \n", "2 live child boy girl range year old sell used w... 0.208160 0.070587 \n", "3 phanice marry child daughter secondary school ... 0.738736 0.001436 \n", "4 year old hotel kaptembwa operate hotel last ye... 0.721475 0.028989 \n", "\n", " Topic_2 Topic_3 Dominant_Topic Perc_Dominant_Topic \n", "0 0.002019 0.108281 Topic 0 0.89 \n", "1 0.002058 0.413899 Topic 3 0.41 \n", "2 0.002325 0.718928 Topic 3 0.72 \n", "3 0.002484 0.257344 Topic 0 0.74 \n", "4 0.002059 0.247477 Topic 0 0.72 " ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "lda_results = assign_model(lda)\n", "lda_results.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Notice how 6 additional columns are now added to the dataframe. `en` is the text after all pre-processing. `Topic_0 ... Topic_3` are the topic proportions and represents the distribution of topics for each document. `Dominant_Topic` is the topic number with highest proportion and `Perc_Dominant_Topic` is the percentage of dominant topic over 1 (only shown when models are stochastic i.e. sum of all proportions equal to 1) ." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 9.0 Plot a Model" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "`plot_model()` function can be used to analyze the overall corpus or only specific topics extracted through topic model. Hence the function `plot_model()` can also work without passing any trained model object. See examples below:" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 9.1 Frequency Distribution of Entire Corpus" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "linkText": "Export to plot.ly", "plotlyServerURL": "https://plot.ly", "showLink": true }, "data": [ { "marker": { "color": "rgba(255, 153, 51, 0.6)", "line": { "color": "rgba(255, 153, 51, 1.0)", "width": 1 } }, "name": "count", "orientation": "v", "text": "", "type": "bar", "x": [ "loan", "business", "child", "year", "sell", "buy", "school", "also", "work", "use", "old", "family", "make", "able", "start", "small", "live", "help", "group", "purchase", "product", "income", "increase", "husband", "home", "woman", "community", "customer", "good", "well", "need", "order", "request", "member", "pay", "hope", "marry", "stock", "want", "grow", "people", "time", "new", "provide", "farmer", "store", "get", "many", "client", "entrepreneur", "expand", "area", "support", "go", "money", "improve", "market", "give", "shop", "rice", "hard", "first", "sale", "food", "clothing", "ago", "invest", "plan", "run", "mother", "profit", "take", "clothe", "life", "education", "farm", "high", "service", "continue", "capital", "month", "house", "enable", "young", "local", "item", "fee", "demand", "wife", "large", "operate", "part", "say", "married", "receive", "meet", "repay", "day", "still", "supply" ], "y": [ 1932, 1904, 1199, 1069, 1039, 796, 668, 647, 630, 597, 564, 562, 529, 516, 486, 472, 467, 460, 456, 395, 390, 357, 347, 345, 331, 325, 319, 315, 313, 308, 291, 289, 273, 267, 263, 263, 259, 256, 246, 243, 243, 242, 242, 235, 235, 230, 219, 217, 216, 214, 209, 209, 209, 209, 205, 202, 198, 198, 197, 192, 191, 188, 186, 184, 182, 182, 181, 178, 178, 174, 172, 171, 168, 167, 167, 165, 164, 163, 162, 156, 154, 153, 152, 149, 149, 142, 141, 140, 137, 136, 133, 133, 132, 131, 131, 130, 130, 128, 126, 124 ] } ], "layout": { "legend": { "bgcolor": "#F5F6F9", "font": { "color": "#4D5663" } }, "paper_bgcolor": "#F5F6F9", "plot_bgcolor": "#F5F6F9", "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "font": { "color": "#4D5663" }, "text": "Top 100 words after removing stop words" }, "xaxis": { "gridcolor": "#E1E5ED", "linecolor": "black", "showgrid": true, "tickfont": { "color": "#4D5663" }, "title": { "font": { "color": "#4D5663" }, "text": "" }, "zerolinecolor": "#E1E5ED" }, "yaxis": { "gridcolor": "#E1E5ED", "linecolor": "black", "showgrid": true, "tickfont": { "color": "#4D5663" }, "title": { "font": { "color": "#4D5663" }, "text": "Count" }, "zerolinecolor": "#E1E5ED" } } }, "text/html": [ "
\n", " \n", " \n", "
\n", " \n", "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_model()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 9.2 Top 100 Bigrams on Entire Corpus" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "linkText": "Export to plot.ly", "plotlyServerURL": "https://plot.ly", "showLink": true }, "data": [ { "marker": { "color": "rgba(255, 153, 51, 0.6)", "line": { "color": "rgba(255, 153, 51, 1.0)", "width": 1 } }, "name": "count", "orientation": "v", "text": "", "type": "bar", "x": [ "year old", "request loan", "start business", "marry child", "year ago", "loan buy", "use loan", "expand business", "business year", "loan use", "school fee", "child school", "old child", "repay loan", "second loan", "first loan", "hard work", "old married", "old marry", "primary school", "loan usd", "business sell", "work hard", "small business", "loan purchase", "mother child", "business able", "married child", "pay school", "use buy", "educate child", "increase stock", "need loan", "increase income", "child live", "secondary school", "loan order", "support family", "last year", "business selling", "woman group", "start small", "business training_educational_programs_information", "business grow", "run business", "apply loan", "able buy", "training_educational_programs_information org", "start sell", "group member", "help business", "also sell", "year experience", "loan able", "husband work", "business help", "farmer also", "high school", "give loan", "business loan", "operate business", "child child", "loan pemci", "loan invest", "begin business", "child primary", "pay loan", "sell product", "child age", "receive loan", "able repay", "husband child", "member group", "go school", "rice farmer", "provide family", "loan help", "many loan", "person group", "risk_making loan", "loan risk_willing_accept_additional", "risk_willing_accept_additional risk_making", "communities_remains_unsettled_affecte many", "microinsurance_acces business", "fee child", "mifex_offers_client microinsurance_acces", "loan month", "loan intend", "group loan", "able provide", "sell clothing", "willing_repay loan", "attend school", "high demand", "loan group", "live husband", "grow business", "run small", "old mother", "old live" ], "y": [ 403, 194, 175, 168, 161, 160, 147, 115, 112, 105, 105, 99, 87, 82, 81, 80, 78, 76, 76, 74, 68, 68, 67, 67, 66, 66, 60, 59, 58, 57, 57, 51, 51, 50, 50, 50, 49, 49, 47, 46, 46, 46, 46, 46, 45, 44, 44, 44, 43, 43, 43, 42, 42, 42, 42, 41, 41, 41, 40, 40, 39, 39, 39, 39, 38, 37, 37, 37, 37, 37, 36, 36, 35, 35, 35, 34, 34, 34, 33, 32, 32, 32, 32, 32, 31, 31, 30, 29, 29, 29, 29, 29, 28, 28, 28, 28, 28, 28, 28, 27 ] } ], "layout": { "legend": { "bgcolor": "#F5F6F9", "font": { "color": "#4D5663" } }, "paper_bgcolor": "#F5F6F9", "plot_bgcolor": "#F5F6F9", "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "font": { "color": "#4D5663" }, "text": "Top 100 bigrams after removing stop words" }, "xaxis": { "gridcolor": "#E1E5ED", "linecolor": "black", "showgrid": true, "tickfont": { "color": "#4D5663" }, "title": { "font": { "color": "#4D5663" }, "text": "" }, "zerolinecolor": "#E1E5ED" }, "yaxis": { "gridcolor": "#E1E5ED", "linecolor": "black", "showgrid": true, "tickfont": { "color": "#4D5663" }, "title": { "font": { "color": "#4D5663" }, "text": "Count" }, "zerolinecolor": "#E1E5ED" } } }, "text/html": [ "
\n", " \n", " \n", "
\n", " \n", "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_model(plot = 'bigram')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 9.3 Frequency Distribution of Topic 1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "`plot_model()` can also be used to analyze the same plots for specific topics. To generate plots at topic level, function requires trained model object to be passed inside `plot_model()`. In example below we will generate frequency distribution on `Topic 1` only as defined by `topic_num` parameter." ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "linkText": "Export to plot.ly", "plotlyServerURL": "https://plot.ly", "showLink": true }, "data": [ { "marker": { "color": "rgba(255, 153, 51, 0.6)", "line": { "color": "rgba(255, 153, 51, 1.0)", "width": 1 } }, "name": "count", "orientation": "v", "text": "", "type": "bar", "x": [ "drug", "rise", "year", "work", "child", "loan", "pharmacy", "health", "stock", "service", "purchase", "train", "clinic", "plan", "nurse", "live", "offer", "perseverance", "midwife", "hard", "old", "also", "family", "facility", "assistance", "care", "financial", "base", "mother", "apply", "maternal", "many", "madre", "client", "general", "communities_remains_unsettled_affecte", "invertir", "infection", "curative", "disclaimer_due_recent_event", "government", "gas", "able", "open", "private", "pablo", "sector", "run", "risk_willing_accept_additional", "risk_making", "provide", "slum", "treat", "una", "training", "son", "poder", "vive", "competitor", "dina", "desea", "actividade", "start", "comprarse", "allergy", "worker", "various", "cannot_afford", "ste", "ante", "syrups", "antimalarial", "area", "ulcer", "community", "sell", "ella", "era", "painkiller", "medication", "parte", "people", "personally", "worm", "price", "know", "ingreso", "product", "home", "hiv_aid", "high", "haca", "good", "give", "genere", "futuro", "free", "selling", "skin", "low" ], "y": [ 8, 7, 6, 6, 6, 6, 5, 5, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ] } ], "layout": { "legend": { "bgcolor": "#F5F6F9", "font": { "color": "#4D5663" } }, "paper_bgcolor": "#F5F6F9", "plot_bgcolor": "#F5F6F9", "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "font": { "color": "#4D5663" }, "text": "Topic 1: Top 100 words after removing stop words" }, "xaxis": { "gridcolor": "#E1E5ED", "linecolor": "black", "showgrid": true, "tickfont": { "color": "#4D5663" }, "title": { "font": { "color": "#4D5663" }, "text": "" }, "zerolinecolor": "#E1E5ED" }, "yaxis": { "gridcolor": "#E1E5ED", "linecolor": "black", "showgrid": true, "tickfont": { "color": "#4D5663" }, "title": { "font": { "color": "#4D5663" }, "text": "Count" }, "zerolinecolor": "#E1E5ED" } } }, "text/html": [ "
\n", " \n", " \n", "
\n", " \n", "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_model(lda, plot = 'frequency', topic_num = 'Topic 1')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 9.4 Topic Distribution" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "alignmentgroup": "True", "customdata": [ [ "loan, child, business, school, year, buy, able, group, pay, also" ], [ "risk_willing_accept_additional, communities_remains_unsettled_affecte, risk_making, disclaimer_due_recent_event, bread, many, rise, health, kenya_security_situation_many, facility" ], [ "loan, also, rice, farmer, use, small, area, land, many, sector" ], [ "business, loan, sell, year, child, work, product, buy, make, help" ] ], "hoverlabel": { "namelength": 0 }, "hovertemplate": "Topic=%{x}
Documents=%{y}
Keyword=%{customdata[0]}", "legendgroup": "", "marker": { "color": "#636efa" }, "name": "", "offsetgroup": "", "orientation": "v", "showlegend": false, "textposition": "auto", "type": "bar", "x": [ "Topic 0", "Topic 1", "Topic 2", "Topic 3" ], "xaxis": "x", "y": [ 415, 8, 26, 551 ], "yaxis": "y" } ], "layout": { "barmode": "relative", "legend": { "tracegroupgap": 0 }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Document Distribution by Topics" }, "xaxis": { "anchor": "y", "domain": [ 0, 1 ], "title": { "text": "Topic" } }, "yaxis": { "anchor": "x", "domain": [ 0, 1 ], "title": { "text": "Documents" } } } }, "text/html": [ "
\n", " \n", " \n", "
\n", " \n", "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_model(lda, plot = 'topic_distribution')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Each document is a distribution of topics and not a single topic. Although, if the task is of categorizing document into specific topics, it wouldn't be wrong to use the topic proportion with highest value to categorize the document into **a topic**. In above plot, each document is categorized into one topic using the largest proportion of topic weights. We can see most of the documents are in `Topic 3` with only few in `Topic 1`. If you hover over these bars, you will get basic idea of themes in this topic by looking at the keywords. For example if you evaluate `Topic 2`, you will see keywords words like 'farmer', 'rice', 'land', which probably means that the loan applicants in this category pertains to agricultural/farming loans. However, if you hover over `Topic 0` and `Topic 3` you will observe lot of repitions and keywords are overlapping in all topics such as word \"loan\" and \"business\" appears both in `Topic 0` and `Topic 3`. In next tutorial, __[Natural Language Processing Tutorial (NLP102) - Level Intermediate](https://github.com/pycaret/pycaret/blob/master/Tutorials/Natural%20Language%20Processing%20Tutorial%20Level%20Intermediate%20-%20NLP102.ipynb)__ we will demonstrate the use of `custom_stopwords` at which point we will re-analyze this plot." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 9.5 T-distributed Stochastic Neighbor Embedding (t-SNE)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hoverlabel": { "namelength": 0 }, "hovertemplate": "Dominant_Topic=Topic 0
0=%{x}
1=%{y}
2=%{z}", "legendgroup": "Dominant_Topic=Topic 0", "marker": { "color": "#636efa", "opacity": 0.7, "symbol": "circle" }, "mode": "markers", "name": "Dominant_Topic=Topic 0", "scene": "scene", "showlegend": true, "type": "scatter3d", "x": [ -8.608729362487793, -3.449270486831665, -5.1493988037109375, -8.355928421020508, -8.8486967086792, -3.106522798538208, -4.316102981567383, -4.473966121673584, 8.270657539367676, -2.873662233352661, 1.5604636669158936, -3.0006773471832275, -5.905602931976318, -4.92913818359375, -3.0338642597198486, 0.930622398853302, -3.809321403503418, -1.559649109840393, -2.369685173034668, 8.092514991760254, -7.861120223999023, -1.312436580657959, 5.276008129119873, 8.006168365478516, 7.973714828491211, -8.497553825378418, -3.0834035873413086, -7.652866363525391, 2.8802108764648438, -4.255480766296387, -2.1227211952209473, -5.729995250701904, 2.7832870483398438, 2.303431987762451, 2.9241220951080322, -5.528079032897949, 0.5474454760551453, -6.840963363647461, -3.609055757522583, -5.957661151885986, 7.534295082092285, -2.8011667728424072, -2.818911552429199, -3.7643165588378906, -5.934777736663818, -3.583871364593506, -8.408769607543945, -0.4865702986717224, 3.963343620300293, -8.324466705322266, -4.69083309173584, -7.93284273147583, -8.605924606323242, -2.441927671432495, -8.578213691711426, -2.843726396560669, -5.954280376434326, -4.846769332885742, -6.4718017578125, -4.106837272644043, 1.7550873756408691, -0.9781631827354431, 0.4939008951187134, -6.8309736251831055, 1.746622920036316, 4.058075428009033, 7.272129058837891, 1.0785306692123413, -5.532783031463623, 0.018191581591963768, 7.720111846923828, 2.7534592151641846, 8.162467956542969, 7.783346652984619, -4.851553440093994, -6.034549713134766, 4.617560863494873, -2.396671772003174, 8.326144218444824, 3.1808297634124756, -4.241217136383057, -3.2994580268859863, -2.716110944747925, 4.507784366607666, 1.0880563259124756, -4.012491226196289, -1.8818981647491455, 1.9844415187835693, 4.998645305633545, 7.014450550079346, 1.810992956161499, -4.530220031738281, 2.601922035217285, -3.2850115299224854, -2.650792121887207, 2.1750783920288086, 5.607980728149414, 6.964809417724609, -3.1164863109588623, 8.1226167678833, -2.707444667816162, -4.3681745529174805, -3.772362232208252, -6.8314032554626465, 3.173532009124756, 8.241069793701172, -0.6367214918136597, -1.9717408418655396, 3.82382869720459, -5.21741247177124, 3.894155979156494, 6.346513748168945, -0.33898887038230896, -3.68632435798645, 0.9410411715507507, -3.275622844696045, -6.4809651374816895, -2.9954397678375244, -5.343206405639648, -4.160217761993408, -2.8710989952087402, -6.107564449310303, -6.234940528869629, 7.897449970245361, 0.9974428415298462, -3.680330276489258, 7.341864585876465, 6.0024871826171875, -8.925536155700684, -3.243818998336792, -3.4610402584075928, -2.4697353839874268, -4.2484049797058105, -4.627392292022705, 3.2683284282684326, 6.513227939605713, 1.9488303661346436, 8.314109802246094, -4.982259273529053, -3.837163209915161, -4.298853397369385, 5.485028266906738, -6.639005661010742, -0.4742388427257538, 5.408748149871826, -4.697657585144043, -8.142009735107422, 6.493923664093018, 3.275724172592163, -8.562911033630371, -2.34922194480896, -4.519927978515625, -2.6134252548217773, 0.16655118763446808, 7.023719310760498, -5.708735942840576, 8.267511367797852, 0.5781689882278442, 7.824449062347412, -3.7917401790618896, 6.369394302368164, -5.2639288902282715, 3.188347101211548, -6.064022541046143, -8.458724975585938, 7.541464328765869, -7.121298313140869, 2.336148500442505, -8.364485740661621, -7.574917793273926, 0.9537202715873718, -8.91515064239502, -4.756725788116455, -8.15151596069336, -5.926100254058838, -8.851580619812012, -2.9197139739990234, 1.7345081567764282, -5.692661285400391, -6.6680755615234375, -4.56101655960083, 4.964341640472412, -2.847907781600952, 8.377347946166992, -4.516342639923096, 1.369204044342041, 7.6496171951293945, 7.46951150894165, 2.570364475250244, -7.135148048400879, -1.3272935152053833, -5.943087100982666, 6.660731315612793, -8.859842300415039, -3.9621949195861816, -5.268120765686035, 1.7571638822555542, -0.625186562538147, -8.526070594787598, 7.870302200317383, 6.444554805755615, -6.147066593170166, -2.636779308319092, -6.8055100440979, -4.049270153045654, 8.198321342468262, -5.157452583312988, -8.911176681518555, -2.4145867824554443, 8.37739086151123, -3.9904563426971436, -8.689764976501465, -3.6727983951568604, 6.6334547996521, -7.037793159484863, -2.5300076007843018, 8.112597465515137, 4.728193759918213, 5.347702503204346, -6.052605628967285, -6.0023722648620605, 8.363930702209473, -0.19841821491718292, 6.531321048736572, -8.922245025634766, 7.527495384216309, 4.859605312347412, -3.3463120460510254, 4.447306156158447, -4.583302021026611, -3.8735556602478027, 2.8631463050842285, -8.245158195495605, -0.186861053109169, -8.522489547729492, -0.46440061926841736, -7.891273021697998, -5.2904372215271, -8.612557411193848, -5.344502925872803, -2.0431463718414307, -2.4421143531799316, -8.476845741271973, -8.834551811218262, -2.339165449142456, -8.181684494018555, -0.24352937936782837, -5.776079177856445, 4.045302867889404, -4.585671424865723, 7.750515937805176, 8.206377983093262, -4.314725399017334, 5.966803550720215, -2.7218410968780518, 1.294284701347351, -2.026068925857544, 2.819899559020996, -7.279694080352783, 4.723045349121094, 7.7768940925598145, -4.7547383308410645, 0.06778036057949066, 7.7748284339904785, -2.6685845851898193, -7.61445426940918, 3.7598743438720703, -8.364686965942383, -3.0397918224334717, 8.088624954223633, -3.57975172996521, -2.753681182861328, -1.4837597608566284, 8.260339736938477, -5.35454797744751, 8.135769844055176, 8.317216873168945, -4.804644584655762, -3.672417163848877, -5.399998188018799, 1.876243233680725, 5.225409507751465, -3.086794376373291, 3.939983606338501, -3.053954839706421, -4.322286128997803, -4.015697956085205, -8.944201469421387, 1.7437891960144043, -8.242138862609863, 4.6682257652282715, -0.11360710859298706, 1.2034311294555664, -7.075969696044922, -4.273066520690918, 8.319559097290039, 6.9774298667907715, 7.7195563316345215, -6.922321319580078, -5.43720006942749, 7.90116024017334, -8.926554679870605, -5.219162940979004, -8.845494270324707, -4.931650161743164, -2.5691049098968506, -2.2941646575927734, -5.7717976570129395, -2.6244466304779053, 1.9723505973815918, -1.4425878524780273, -5.319399356842041, -3.334491491317749, -5.577247142791748, -4.894825458526611, -5.830865859985352, 5.64504337310791, -5.514723300933838, -8.484657287597656, 5.633171558380127, -4.411510944366455, -8.407997131347656, 1.4185802936553955, 4.164414405822754, -2.5574533939361572, 7.7895121574401855, -4.371315956115723, -4.946470260620117, 6.665078163146973, 5.077589511871338, 1.8037611246109009, -6.5562849044799805, -3.091287612915039, -5.3392415046691895, 6.4955267906188965, 6.809565544128418, -8.897774696350098, 8.158504486083984, -6.524725437164307, 7.411317348480225, -3.799009084701538, -6.258737087249756, -6.450069427490234, -5.762934684753418, 3.8512699604034424, -1.1006628274917603, -4.3772807121276855, -4.061111927032471, 0.8759416937828064, -6.55994176864624, 7.480964183807373, -3.5743563175201416, 3.2225418090820312, -3.288435459136963, 7.99682092666626, -5.7620744705200195, 8.368756294250488, -6.12191915512085, -3.691117286682129, -0.09982374310493469, 8.226402282714844, 7.311054229736328, 5.398276329040527, 2.3997862339019775, -7.17294454574585, -8.10906982421875, 3.233354091644287, -4.148129463195801, -3.8669190406799316, 1.1474299430847168, -6.048267841339111, -2.394587755203247, 2.948960781097412, 7.484297275543213, -4.222890853881836, -3.7742414474487305, -4.461194038391113, 3.9481327533721924, 7.471209526062012, -7.015602111816406, -6.858746528625488, -3.494337320327759, -3.6546742916107178, 8.368766784667969, 1.758576512336731, 2.4928321838378906, 7.4136505126953125, 1.1071833372116089, 2.951479196548462, 8.040063858032227, -4.121102333068848, 1.1765954494476318, 0.09473879635334015, 8.147856712341309, -3.23895525932312, 6.670626163482666, -5.4531707763671875, -5.722188949584961, -8.78007984161377, -5.648556232452393, -2.782255172729492, -2.6945455074310303, -7.5685529708862305, 3.2311770915985107, 3.2940611839294434, 8.131217002868652, -0.486512690782547, 0.5802382826805115, 7.207589149475098, 2.086496114730835, -0.47125542163848877, -1.1996725797653198, 8.144001960754395, -2.284681797027588, -7.72421932220459 ], "y": [ -3.2324318885803223, 5.277303218841553, -0.018763583153486252, -3.7696444988250732, -0.9735664129257202, 6.414970874786377, -2.4616570472717285, 3.036369800567627, -8.642210960388184, 7.170027732849121, -9.900508880615234, 6.4729790687561035, -7.35194730758667, 2.2820024490356445, 7.397436141967773, -12.928598403930664, -10.097301483154297, -11.963315963745117, -11.543264389038086, -9.346709251403809, -3.753180742263794, -12.103446960449219, -5.8319525718688965, -7.657008647918701, -6.6177825927734375, -3.561178684234619, 6.055457592010498, 0.05856155604124069, -13.009231567382812, -3.1250481605529785, -11.638569831848145, 1.2366719245910645, -12.992560386657715, -12.969182968139648, -5.323522567749023, -8.101351737976074, -12.821091651916504, -6.14075231552124, 4.718807220458984, -2.8261935710906982, -9.944504737854004, -10.716425895690918, 8.235130310058594, -4.106523036956787, -6.162966251373291, 4.967967510223389, -0.560211181640625, -7.081262111663818, -12.846026420593262, -3.826547384262085, -5.271877765655518, -4.7045817375183105, -3.0844812393188477, 8.291351318359375, -0.6271271109580994, 6.974771499633789, -6.721761226654053, 2.4062869548797607, -3.144770383834839, -3.6931540966033936, -9.784075736999512, -8.87219524383545, -6.735124111175537, 0.5624590516090393, -12.878146171569824, -5.486743450164795, -11.045071601867676, -12.529806137084961, -7.889498710632324, -7.155088901519775, -6.361093044281006, -9.309624671936035, -9.20474624633789, -0.9351221919059753, -5.250212669372559, -2.6209895610809326, -4.962277889251709, 9.099774360656738, -8.275613784790039, -12.980395317077637, -4.953699111938477, -10.737165451049805, 8.876758575439453, -12.595656394958496, -12.90499210357666, -3.8313212394714355, -8.650429725646973, -12.866043090820312, -12.519328117370605, -11.400992393493652, -6.5207953453063965, -2.0270795822143555, -9.37130355834961, -10.793049812316895, 8.85978889465332, -6.43766975402832, -10.796454429626465, -11.420391082763672, 6.105976581573486, -6.9422478675842285, 8.498481750488281, -4.634562969207764, -10.228311538696289, 0.29767248034477234, -12.97388744354248, -7.310024261474609, -7.109548091888428, -11.759332656860352, -5.453476905822754, -0.341526597738266, -12.220160484313965, -11.834074974060059, -8.893685340881348, -10.4113187789917, -6.70322322845459, 5.801604747772217, 0.7172303795814514, -11.077193260192871, 1.7245938777923584, -7.405261993408203, 7.74803352355957, -7.262660980224609, -7.241642475128174, -6.750965595245361, -8.9594087600708, 4.7823638916015625, -7.121555328369141, -6.240936279296875, -1.2912964820861816, 5.5770063400268555, 5.148241996765137, 9.045000076293945, -4.417532444000244, -0.7983973622322083, -6.168528079986572, -10.444629669189453, -10.043021202087402, -7.462344646453857, -8.795153617858887, 4.339568614959717, -4.603349208831787, -12.312639236450195, -6.389598369598389, -12.458325386047363, -10.858746528625488, 2.636219024658203, -0.2559947371482849, -11.454607963562012, -12.903450012207031, -0.6204216480255127, -8.279253005981445, -0.9064727425575256, 7.683566093444824, -12.755207061767578, -7.614328384399414, -2.782802104949951, -7.534177303314209, -6.8692450523376465, -10.14359188079834, 4.412321090698242, -10.523641586303711, 1.3938053846359253, -6.402314186096191, 0.00980041828006506, -0.6942394971847534, -10.633208274841309, 0.3517674505710602, -12.995100021362305, -0.4527131915092468, -4.757317066192627, -6.246978282928467, -1.6423394680023193, -9.035099983215332, -4.399980545043945, 0.6129963397979736, -2.623068332672119, 7.524178504943848, -9.873193740844727, -7.807625770568848, 0.6368944048881531, -1.1446222066879272, -12.045401573181152, -11.064653396606445, -7.780551433563232, 2.9741382598876953, -12.794673919677734, -10.440888404846191, -6.288724899291992, -5.369764804840088, 0.34705641865730286, -11.547798156738281, 0.6070419549942017, -11.669611930847168, -1.050195574760437, -9.980433464050293, 1.7309761047363281, -12.457697868347168, -11.957052230834961, -3.201975107192993, -6.667614936828613, -11.795063018798828, -7.222358703613281, 7.803147792816162, 0.567852258682251, 3.924945831298828, -9.087203979492188, 1.9359396696090698, -1.9111689329147339, 9.037997245788574, -7.880828857421875, 3.973325490951538, -1.6468164920806885, 4.725566864013672, -11.346151351928711, -5.881087779998779, -11.388223648071289, -6.92593240737915, -12.619355201721191, -5.936289310455322, 0.9886465668678284, 1.081111192703247, -8.206315040588379, -6.685049057006836, -10.534004211425781, -1.6399890184402466, -10.646321296691895, -5.480894088745117, 5.7467474937438965, -5.534256458282471, -1.1824109554290771, 4.291285991668701, -13.024026870727539, -1.857722282409668, -7.487233638763428, -0.580228865146637, -12.4597749710083, -4.5473408699035645, -8.45848560333252, -1.1432121992111206, -1.1777616739273071, -11.759846687316895, 8.61285400390625, -2.3537514209747314, -1.0308501720428467, -8.169567108154297, -4.255670070648193, -6.967818737030029, 1.2373806238174438, -12.815945625305176, 2.8258585929870605, -6.274702072143555, -7.951848983764648, -2.3131814002990723, -12.05471134185791, -11.228277206420898, -6.746183395385742, -8.716175079345703, -12.531049728393555, -3.1078264713287354, -5.677170276641846, -10.263808250427246, 2.530517578125, -12.667078018188477, -10.240041732788086, 7.323768138885498, -5.001969814300537, -5.545917510986328, -4.009189128875732, -10.920876502990723, -9.523324012756348, 3.8661978244781494, 7.514462947845459, -11.590827941894531, -8.80990982055664, -8.278257369995117, -9.389430046081543, -7.557162761688232, -0.47330865263938904, -10.392454147338867, -1.0400813817977905, -9.966798782348633, -12.17703914642334, 6.3203864097595215, -12.852073669433594, 7.289274215698242, -9.593133926391602, -7.736659049987793, -1.8407498598098755, -5.912135601043701, -4.0047478675842285, -12.62319564819336, -12.637042045593262, -12.968555450439453, 0.3732537031173706, -2.7610065937042236, -7.53108024597168, -6.522862434387207, -6.359399795532227, 0.5403794646263123, -3.057241439819336, -9.530138969421387, -2.1753833293914795, 1.827723741531372, -2.6736502647399902, -8.177227020263672, 7.474987030029297, -11.532506942749023, -7.80603551864624, 8.604122161865234, -6.201617240905762, -12.08350658416748, 1.644649863243103, 4.442707538604736, 1.5457873344421387, -5.085255146026611, -7.4031171798706055, -5.945273399353027, -8.167999267578125, -3.7324817180633545, -12.23571491241455, -9.489651679992676, -2.6746647357940674, -9.207059860229492, -12.751825332641602, -11.276749610900879, -1.0308811664581299, -9.573236465454102, 2.180112361907959, -10.580181121826172, -12.496176719665527, -5.864532947540283, -6.654474258422852, 6.437155723571777, -0.531973123550415, -11.689266204833984, -11.43298053741455, -1.8147958517074585, -7.004122257232666, -6.6549296379089355, -5.780554294586182, -8.533978462219238, -2.196058988571167, -6.77315616607666, -6.588069915771484, -5.694440841674805, -7.112741947174072, 3.233166217803955, 3.852717161178589, -12.915281295776367, -6.426896095275879, -10.797722816467285, 3.8906686305999756, -5.348701477050781, 4.565430641174316, -6.664451599121094, 1.3158841133117676, -7.728134632110596, 1.0087112188339233, -10.222164154052734, -12.622815132141113, -8.966133117675781, -11.02711296081543, -5.5915913581848145, -6.338002681732178, -5.744369029998779, -4.452816486358643, -6.458662986755371, -9.846705436706543, 4.237620830535889, -9.061651229858398, -7.556887626647949, 9.297043800354004, -12.41849422454834, -6.19303035736084, -4.705785274505615, -9.511556625366211, 3.0840299129486084, -5.581637859344482, -5.915792465209961, -5.883378505706787, -6.104863166809082, 5.213750839233398, -10.413405418395996, -8.17791748046875, -10.100908279418945, -6.648164749145508, -5.78048038482666, -12.869028091430664, -5.3351359367370605, -6.786882400512695, -5.154938220977783, -9.154455184936523, -12.714197158813477, -9.306323051452637, 5.9155988693237305, -9.646931648254395, -8.163620948791504, 1.0285879373550415, -0.9924960732460022, 1.3738409280776978, 7.062137126922607, -8.007708549499512, 0.1077171266078949, -12.949271202087402, -12.261669158935547, -7.8932976722717285, -7.112748146057129, -12.560954093933105, -11.050013542175293, -5.667097568511963, -11.468131065368652, -10.964484214782715, -8.154644966125488, 8.782564163208008, -4.842001438140869 ], "z": [ 6.746514320373535, 12.811984062194824, 10.601083755493164, 6.511877536773682, 8.130897521972656, 12.925955772399902, 9.982985496520996, 12.160283088684082, 4.195158958435059, 13.143065452575684, 7.785168647766113, 12.750600814819336, 6.119930744171143, 11.73922348022461, 13.003804206848145, 7.759198188781738, 6.585062026977539, 7.269756317138672, 7.076412677764893, 4.91074800491333, 6.359663009643555, 7.3319268226623535, 1.0554616451263428, 3.2537856101989746, 1.6278916597366333, 6.614842891693115, 12.695048332214355, 9.059518814086914, 7.882207870483398, 9.638287544250488, 7.135869979858398, 10.865660667419434, 7.862599849700928, 7.834588050842285, 0.2901163697242737, 6.1583571434021, 7.680866718292236, 6.197624683380127, 12.638298988342285, 6.2717084884643555, 5.967748165130615, 6.763901233673096, 13.197595596313477, 9.489364624023438, 6.5219011306762695, 12.766916275024414, 8.163591384887695, 4.460629940032959, 7.765139579772949, 6.492335796356201, 7.772266387939453, 6.332442283630371, 6.766706466674805, 13.089080810546875, 8.38231372833252, 12.750910758972168, 6.284316062927246, 11.815947532653809, 6.266360759735107, 9.430444717407227, 7.798612594604492, 6.149358749389648, 3.6209561824798584, 9.787267684936523, 7.751767158508301, 0.6504831314086914, 6.339016437530518, 7.169306755065918, 6.158875942230225, 4.2768025398254395, 1.3432549238204956, 7.781469345092773, 4.749871730804443, -0.5629522800445557, 7.634530067443848, 6.336797714233398, 1.2605584859848022, 13.32711410522461, 3.7964823246002197, 7.863204002380371, 8.451432228088379, 6.776581287384033, 13.173887252807617, 7.623557090759277, 7.753581523895264, 9.435323715209961, 6.0516557693481445, 7.746746063232422, 7.518266677856445, 6.600613117218018, 2.835052967071533, 10.038748741149902, 7.788628101348877, 6.789539337158203, 13.391077041625977, 2.6191723346710205, 7.0750651359558105, 6.6339030265808105, 12.909720420837402, 2.109422206878662, 12.953719139099121, 8.552163124084473, 6.607480049133301, 9.407814979553223, 7.856576919555664, 2.642458200454712, 4.5555195808410645, 7.174683094024658, 0.5339387655258179, 7.5262064933776855, 6.912546157836914, 7.0053277015686035, 6.327749729156494, 6.652246952056885, 3.3765392303466797, 12.889914512634277, 10.089974403381348, 6.894048690795898, 11.338295936584473, 5.887945652008057, 12.832844734191895, 6.111665725708008, 6.0962419509887695, 1.992158055305481, 7.723991870880127, 12.782735824584961, 2.764404058456421, 1.6673074960708618, 7.837253093719482, 12.608969688415527, 12.689826011657715, 13.192039489746094, 8.815436363220215, 10.577176094055176, 2.0076982975006104, 7.04223108291626, 7.82831335067749, 2.8230865001678467, 6.271163463592529, 12.665103912353516, 8.641836166381836, 7.359694480895996, 6.187407970428467, 7.506958961486816, 6.289834022521973, 11.952861785888672, 8.70207405090332, 6.894958019256592, 7.789945125579834, 8.371840476989746, 7.344192028045654, 10.597037315368652, 13.105454444885254, 7.637822151184082, 3.6891345977783203, 6.251028060913086, 3.0516700744628906, 3.7425594329833984, 5.5615715980529785, 12.653823852539062, 5.793785572052002, 11.11937141418457, 2.4325432777404785, 8.443166732788086, 7.8277082443237305, 5.9886369705200195, 9.47583293914795, 7.8586602210998535, 8.492914199829102, 6.323050498962402, 2.5294036865234375, 7.557150363922119, 6.319187641143799, 6.385948657989502, 10.340505599975586, 7.09046745300293, 13.19060230255127, 7.803857326507568, 6.129810333251953, 9.934438705444336, 10.458806037902832, 7.133255958557129, 6.921557903289795, 3.1876542568206787, 12.141319274902344, 7.6870293617248535, 5.823223114013672, 2.0974137783050537, 0.43096455931663513, 9.472490310668945, 7.313355922698975, 10.324886322021484, 6.83273983001709, 8.029459953308105, 6.541597366333008, 11.345478057861328, 7.013215065002441, 7.039764404296875, 6.6930742263793945, 1.8551957607269287, 6.960641860961914, 6.107481956481934, 12.843109130859375, 9.804247856140137, 12.599120140075684, 4.632702350616455, 11.495463371276855, 7.415002346038818, 13.291914939880371, 3.3373866081237793, 12.50910758972168, 7.246981143951416, 12.74697494506836, 6.574223518371582, 6.218181133270264, 7.027169704437256, 2.087451934814453, 7.5831298828125, 1.2534247636795044, 10.545919418334961, 10.650283813476562, 3.700547695159912, 3.999051332473755, 7.027348518371582, 7.566952705383301, 6.0049967765808105, 0.8354551196098328, 12.966381072998047, 0.5942354798316956, 10.425329208374023, 12.696590423583984, 7.894613742828369, 6.193132400512695, 4.667288780212402, 8.402335166931152, 7.5078020095825195, 6.346318244934082, 6.2070841789245605, 7.480309963226318, 6.983563423156738, 7.1606669425964355, 13.386669158935547, 6.735622406005859, 7.999048709869385, 5.776525020599365, 6.409738063812256, 4.244297027587891, 10.846781730651855, 7.740487575531006, 12.045818328857422, 1.066963791847229, 3.5714030265808105, 10.064497947692871, 7.166871070861816, 6.968428134918213, 3.3398938179016113, 6.082853317260742, 7.136936664581299, 6.377022743225098, 0.8609383702278137, 5.649747371673584, 11.885656356811523, 7.601564407348633, 5.641059875488281, 13.10670280456543, 6.3027753829956055, 0.7592028379440308, 6.492092609405518, 6.863331317901611, 5.028425693511963, 10.25658130645752, 12.707297325134277, 7.342916965484619, 4.353297710418701, 6.187038898468018, 4.9027018547058105, 3.0267391204833984, 10.610507011413574, 6.651885986328125, 7.111292839050293, 7.819421768188477, 7.263932704925537, 12.833979606628418, 7.767245292663574, 12.95699405670166, 6.438746929168701, 5.918197154998779, 7.48997688293457, 1.6741148233413696, 6.45266580581665, 7.587811470031738, 7.582798004150391, 7.80139684677124, 9.514472007751465, 9.843725204467773, 2.946376323699951, 3.1852309703826904, 1.339151382446289, 9.738850593566895, 6.143686771392822, 5.101253986358643, 7.298426628112793, 11.411994934082031, 7.0723876953125, 6.210196018218994, 12.877384185791016, 7.092127323150635, 6.120710372924805, 12.934403419494629, 2.2014856338500977, 7.305784702301025, 11.26805305480957, 10.517182350158691, 11.156737327575684, 7.551323890686035, 6.139267444610596, 1.1759206056594849, 6.163282871246338, 6.582191467285156, 7.301997184753418, 6.414979934692383, 6.641368389129639, 7.742767333984375, 7.681879997253418, 7.010233402252197, -0.44145506620407104, 6.431982040405273, 11.645869255065918, 5.866111755371094, 7.498767375946045, 1.5692119598388672, 6.13582706451416, 12.946629524230957, 7.459321022033691, 6.916593074798584, 6.726354122161865, 7.442661285400391, 2.1936142444610596, 6.142195701599121, 0.06807901710271835, 6.092672348022461, 6.513795852661133, 6.128721237182617, 6.397894859313965, 1.1290664672851562, 4.775674819946289, 12.25947380065918, 12.4917631149292, 7.747496128082275, 6.199736595153809, 6.107022285461426, 10.294180870056152, 0.3254573941230774, 10.591338157653809, 1.6991016864776611, 10.924318313598633, 3.1033976078033447, 10.52253246307373, 6.621813774108887, 7.579616546630859, 4.5113606452941895, 6.306589126586914, 0.4334876537322998, 2.4078173637390137, 6.221585273742676, 6.376091480255127, 2.5262277126312256, 6.4961371421813965, 12.585611343383789, 7.726626396179199, 6.106338977813721, 13.450275421142578, 6.9987359046936035, 1.0259356498718262, 8.632084846496582, 6.3810858726501465, 12.192031860351562, 0.819706916809082, 0.4922841787338257, 6.224085330963135, 6.20281457901001, 12.833333015441895, 6.657467365264893, 3.663516044616699, 7.817115783691406, 2.9338414669036865, 0.06657177954912186, 7.731274127960205, 0.3158619701862335, 1.8941045999526978, 8.4197359085083, 7.659017562866211, 7.619638919830322, 4.836021423339844, 12.855193138122559, 7.043217658996582, 6.171200752258301, 10.74526309967041, 7.953227996826172, 11.002592086791992, 12.892925262451172, 7.507109642028809, 9.125078201293945, 7.83336067199707, 6.803323268890381, 3.570676565170288, 4.485213756561279, 7.583399772644043, 6.378637790679932, 1.1173348426818848, 7.621819496154785, 7.502367973327637, 3.798527956008911, 13.149773597717285, 6.316201210021973 ] }, { "hoverlabel": { "namelength": 0 }, "hovertemplate": "Dominant_Topic=Topic 1
0=%{x}
1=%{y}
2=%{z}", "legendgroup": "Dominant_Topic=Topic 1", "marker": { "color": "#EF553B", "opacity": 0.7, "symbol": "circle" }, "mode": "markers", "name": "Dominant_Topic=Topic 1", "scene": "scene", "showlegend": true, "type": "scatter3d", "x": [ 0.058246783912181854, 0.1561301052570343, 0.12853141129016876, 0.9836311340332031, 1.2443991899490356, 0.13790865242481232, 0.5545778274536133, 1.2896524667739868 ], "y": [ -4.75504732131958, -4.710216999053955, -4.75202751159668, -4.400564193725586, -4.526569843292236, -4.70463752746582, -4.816626071929932, -4.700214862823486 ], "z": [ -0.17616577446460724, -0.2693259119987488, -0.20382407307624817, -1.2945891618728638, -1.0880329608917236, -0.27115598320961, -0.2405235767364502, -0.7442936301231384 ] }, { "hoverlabel": { "namelength": 0 }, "hovertemplate": "Dominant_Topic=Topic 2
0=%{x}
1=%{y}
2=%{z}", "legendgroup": "Dominant_Topic=Topic 2", "marker": { "color": "#00cc96", "opacity": 0.7, "symbol": "circle" }, "mode": "markers", "name": "Dominant_Topic=Topic 2", "scene": "scene", "showlegend": true, "type": "scatter3d", "x": [ 13.163626670837402, 13.733743667602539, 13.969192504882812, 13.487640380859375, 14.067075729370117, 13.884115219116211, 13.753656387329102, 13.800711631774902, 14.135066986083984, 13.964573860168457, 14.048131942749023, 13.134417533874512, 13.613687515258789, 13.69484806060791, 13.296577453613281, 13.746986389160156, 13.671345710754395, 13.401246070861816, 13.419979095458984, 13.385261535644531, 13.941920280456543, 13.435635566711426, 7.737373352050781, 13.232757568359375, 13.111310958862305, 13.527458190917969 ], "y": [ 2.4953877925872803, 2.7507145404815674, 3.1218438148498535, 2.873567581176758, 2.764153003692627, 2.3648459911346436, 3.0187699794769287, 2.3721120357513428, 2.6975669860839844, 3.166067600250244, 2.9242823123931885, 2.6768717765808105, 3.2372846603393555, 2.450134038925171, 2.7277164459228516, 2.7714297771453857, 2.7318549156188965, 3.139054298400879, 3.1056079864501953, 2.350173234939575, 2.499986171722412, 2.2197625637054443, 0.33688706159591675, 3.077280282974243, 2.5864768028259277, 3.1844606399536133 ], "z": [ 0.6359475255012512, 0.8671063184738159, 0.22300828993320465, -0.045689113438129425, 0.142240971326828, 0.3588857650756836, 0.8157697319984436, 0.19070309400558472, 0.35602471232414246, 0.4118032157421112, 0.6710631251335144, 0.20975320041179657, 0.21337349712848663, 0.7536283135414124, 0.7789515852928162, -0.08175381273031235, -0.08449839055538177, 0.12496815621852875, 0.6769125461578369, 0.1786510944366455, 0.6544660925865173, 0.4211713671684265, -1.7129967212677002, 0.32872340083122253, 0.5160210132598877, 0.6307522058486938 ] }, { "hoverlabel": { "namelength": 0 }, "hovertemplate": "Dominant_Topic=Topic 3
0=%{x}
1=%{y}
2=%{z}", "legendgroup": "Dominant_Topic=Topic 3", "marker": { "color": "#ab63fa", "opacity": 0.7, "symbol": "circle" }, "mode": "markers", "name": "Dominant_Topic=Topic 3", "scene": "scene", "showlegend": true, "type": "scatter3d", "x": [ -3.4518070220947266, -5.974636554718018, -0.3675481379032135, -0.5131378173828125, -5.154693126678467, -4.653284072875977, -2.571751832962036, 1.6958732604980469, 6.561468601226807, 4.227837562561035, 4.980151653289795, 5.250816822052002, -2.75576114654541, -2.742145538330078, -6.118823528289795, -5.105478763580322, 5.615278244018555, -6.1962504386901855, 6.637463092803955, 0.7429002523422241, -0.9151397943496704, 1.8460878133773804, 6.896239280700684, -2.620873212814331, -0.26035648584365845, 5.511272430419922, -3.0356976985931396, -5.232486724853516, -4.802530288696289, -0.34123820066452026, -4.632390975952148, 2.7914156913757324, 2.381577491760254, 1.4784542322158813, -2.6855621337890625, 6.21040153503418, 5.382091045379639, 4.213400363922119, 2.3975064754486084, -5.951471328735352, -3.218024969100952, -1.7511042356491089, 2.165469169616699, 0.6544477343559265, 4.181297779083252, -4.644601345062256, -0.5353297591209412, 4.518369197845459, -6.078373908996582, 4.290629863739014, -6.307061195373535, -0.5403984785079956, 1.9647140502929688, 3.5957844257354736, -0.2169264554977417, 6.7745513916015625, 4.776814937591553, 2.740790605545044, -4.755561828613281, -2.675581693649292, 2.6503148078918457, 7.269653797149658, 0.5517745614051819, 6.820511341094971, 6.7001848220825195, -3.995833158493042, 5.410713195800781, 6.783051490783691, -2.8717257976531982, -6.150622367858887, -2.6980583667755127, -2.7660698890686035, -2.6457393169403076, -5.924203395843506, 6.839329242706299, 3.988854169845581, -5.09930419921875, 3.2048301696777344, -1.1724884510040283, 1.0654455423355103, -4.741488933563232, 7.514071464538574, 0.518671452999115, -6.292123794555664, 4.6876935958862305, 6.761606216430664, -2.65973162651062, 3.8287672996520996, -4.392484188079834, -2.79485821723938, 3.224149227142334, 0.47654974460601807, 6.361915588378906, 0.13499711453914642, 3.6531386375427246, -0.31280577182769775, -4.490962505340576, 1.066427230834961, 3.4423866271972656, -3.375094413757324, 5.886269569396973, -2.609355926513672, -0.1121843010187149, -5.80911111831665, -6.179607391357422, 4.4405293464660645, 4.047403335571289, 6.100541591644287, 6.752261161804199, 1.7326972484588623, -0.5717279314994812, -5.864713668823242, -3.47226881980896, 1.284292221069336, -2.095217227935791, 7.409093379974365, 0.8077054619789124, -0.29786670207977295, 0.981610894203186, 6.2772722244262695, -0.8251239061355591, 4.913400650024414, 6.8156962394714355, -4.859147071838379, -0.25578394532203674, -1.2426050901412964, 7.269052982330322, 3.5552480220794678, -2.535705804824829, -2.3468310832977295, -2.6252501010894775, 3.2443065643310547, -0.6275790333747864, -2.6040730476379395, 0.45768389105796814, -1.1908997297286987, 6.894589424133301, 5.764966011047363, -6.339216709136963, 2.7806618213653564, -2.6009280681610107, -5.37055778503418, -5.652210712432861, -3.2331056594848633, -3.5178511142730713, 0.2934303879737854, 2.379102945327759, 2.9665603637695312, -0.8507229089736938, -2.524473190307617, 6.890372276306152, -0.9364815950393677, 1.3633460998535156, -3.080249786376953, 0.43787458539009094, 3.8692121505737305, -6.094329833984375, 3.453906536102295, 2.806138277053833, 7.441344261169434, -3.3355231285095215, 2.5012331008911133, 3.092989921569824, -6.281585693359375, -6.238928318023682, -4.357186794281006, -6.200563430786133, 7.733442783355713, 7.357832908630371, -4.575900554656982, -6.084381580352783, 5.6413187980651855, 1.4352747201919556, 5.159327030181885, -2.244234561920166, 0.37631985545158386, 2.604994773864746, 0.8083765506744385, -2.968345880508423, 0.3003805875778198, 7.273813247680664, 0.6222625970840454, -2.7887473106384277, 1.4394196271896362, 5.96528434753418, -2.0809993743896484, -2.8482141494750977, -0.955662727355957, -4.509816646575928, -1.677110195159912, -1.8302712440490723, -5.027673721313477, 1.2807289361953735, 2.4464876651763916, 1.2347030639648438, 7.547338485717773, -4.693323135375977, -5.5411295890808105, -4.225985527038574, -6.047224044799805, 5.505976676940918, -6.270900249481201, 3.4388928413391113, 2.2190592288970947, 6.298388481140137, -3.8384478092193604, 4.26814603805542, 3.806337356567383, -6.086893558502197, 6.555688381195068, 6.888233661651611, -1.4270676374435425, -2.6158676147460938, -3.7137081623077393, -1.7110193967819214, -1.3292139768600464, 1.8271523714065552, -2.307079315185547, 7.742177486419678, -2.7488107681274414, 5.987419128417969, -6.129706859588623, 3.654303550720215, -5.8188157081604, -6.149956226348877, 0.5367414355278015, 5.729249954223633, 4.160065650939941, -0.7964770197868347, 5.342001914978027, -2.5448198318481445, -6.1581339836120605, -1.760185956954956, -0.14353786408901215, -4.8915486335754395, 2.8025565147399902, 1.9717779159545898, 1.1111620664596558, -6.307384490966797, 1.0016088485717773, -6.203761577606201, -3.1304845809936523, 5.525404930114746, 1.1949830055236816, -6.2080793380737305, 3.7714827060699463, -2.545783758163452, -6.021918296813965, 2.976012945175171, -5.820621490478516, -4.923766613006592, -6.197386264801025, 6.881927490234375, 2.7352778911590576, -2.7100796699523926, 5.702954292297363, -5.952491283416748, 3.055121660232544, 5.329661846160889, 5.182342052459717, -3.343639373779297, -6.210087299346924, -2.5785114765167236, -6.157729625701904, 6.637842178344727, -1.5329111814498901, -6.122990131378174, 7.058689594268799, 2.915288209915161, 6.552022933959961, 1.1506438255310059, -2.2499122619628906, -4.250595569610596, -1.1158603429794312, 3.245218515396118, -6.208540439605713, 0.034577444195747375, -5.951157093048096, -6.050309658050537, 3.9066808223724365, 3.6433358192443848, 6.62352180480957, 0.15758664906024933, -4.332118511199951, 1.574273943901062, -2.6694443225860596, 6.650590896606445, -5.660196304321289, -3.816059112548828, -6.114686489105225, 6.474085807800293, 2.0566885471343994, -2.8311212062835693, -0.8159781098365784, 4.894783973693848, -1.5914565324783325, 3.9532296657562256, 6.061136245727539, -6.119542121887207, -5.7910308837890625, 6.041424751281738, -2.6873011589050293, -6.023285388946533, 6.183802604675293, -2.8186097145080566, 2.195082902908325, 3.0707552433013916, -5.667844772338867, 1.1710147857666016, 2.8653087615966797, 4.840304851531982, 6.2863874435424805, -2.5770485401153564, 7.278298377990723, 6.450287342071533, -6.306005954742432, -2.6512815952301025, 3.229722499847412, -3.5929906368255615, -6.1645283699035645, -3.29612398147583, 6.463062763214111, 6.2574567794799805, 7.496033668518066, -5.838460445404053, 5.393617153167725, -3.6059036254882812, 6.852855205535889, 5.979652404785156, -6.297787666320801, -0.18919901549816132, 6.347261905670166, -6.229615211486816, -0.42110005021095276, 6.152153015136719, -6.159173965454102, 1.8968969583511353, -0.37843286991119385, 3.0826563835144043, -1.6306650638580322, -2.783228635787964, 4.544470310211182, 6.308055400848389, -0.906629204750061, 7.28689432144165, 0.5297806262969971, 4.261302471160889, -1.6326947212219238, -2.7979862689971924, -3.6582465171813965, 6.589996337890625, -0.2642025053501129, 1.5905438661575317, 7.351256847381592, -4.249001502990723, 1.956833004951477, 2.3637120723724365, -5.912341594696045, -4.789648056030273, 6.742133140563965, -3.1917951107025146, -2.776099920272827, 1.7150485515594482, -4.623565673828125, 6.0916643142700195, 2.6587438583374023, -2.7134461402893066, 6.948448181152344, -4.471816539764404, 5.902249813079834, 1.9568935632705688, -0.09557592123746872, 3.1162989139556885, 7.272781848907471, 6.766915798187256, 5.394679546356201, 3.948556900024414, -6.112876892089844, -0.7622652649879456, 7.023505687713623, 6.721491813659668, 6.331692218780518, 1.736575722694397, -0.6874353289604187, 5.9444684982299805, 3.025883436203003, -3.6941676139831543, -1.7003202438354492, -1.7533848285675049, 1.8088995218276978, 5.2111029624938965, -2.9913060665130615, 0.4073651432991028, 4.497563362121582, -4.906501293182373, 2.5807077884674072, -3.4613540172576904, -1.430375576019287, -4.497349262237549, 0.6254693269729614, -5.041782855987549, 7.741985321044922, 2.2318191528320312, 2.7636795043945312, -0.1829439103603363, 3.150782585144043, -2.4834673404693604, -5.152724742889404, 4.809642314910889, 1.8508014678955078, 6.41422700881958, 6.9458794593811035, -1.8131723403930664, 1.0240775346755981, -5.417356014251709, 7.104406833648682, -0.34111830592155457, -3.03507137298584, 2.595288038253784, -4.333835124969482, 3.9685659408569336, 2.4140589237213135, 2.4582860469818115, 3.928769826889038, 3.947068691253662, -1.771388292312622, -5.837461471557617, -4.452534198760986, -4.5517988204956055, -2.688206195831299, -0.6484195590019226, -5.3174004554748535, -5.989104270935059, -2.628960609436035, -4.553346633911133, 1.1934969425201416, -2.42482852935791, -5.945751667022705, 6.505843639373779, 5.823894500732422, -0.02186225913465023, -6.19637393951416, 4.237849235534668, 6.176779747009277, 3.4920833110809326, 2.071037530899048, -6.183388710021973, -3.796663999557495, 3.763983726501465, -6.189035892486572, -3.3829402923583984, 2.0139048099517822, 5.297320365905762, -2.815049409866333, -4.828632354736328, -5.835789680480957, 0.4424566626548767, -1.0385874509811401, 5.85499906539917, -0.03751004859805107, -4.646152019500732, 5.932539463043213, 7.691462516784668, -3.104128360748291, -2.5596988201141357, -1.6407967805862427, -3.5974535942077637, 5.013754367828369, 6.49699592590332, 5.745203971862793, -0.5206701159477234, 1.6748476028442383, 0.5300881862640381, -0.32668742537498474, 2.6251349449157715, -2.8812789916992188, -2.8667304515838623, -4.264454364776611, -6.23938512802124, 3.6735429763793945, -2.641266107559204, -2.386012077331543, 0.7654821276664734, -5.037657260894775, 0.31304943561553955, -3.7442901134490967, -0.16509371995925903, 1.3925365209579468, 2.7713680267333984, -0.9500067234039307, 5.641291618347168, -0.46724921464920044, -3.541078805923462, 3.054553747177124, -1.4317517280578613, -2.460489511489868, -2.8113248348236084, -0.8030842542648315, -6.060348033905029, -6.261189937591553, 0.7352820634841919, 3.579338788986206, 5.909436225891113, -6.191468715667725, -1.5771645307540894, -6.189692497253418, 6.59331750869751, -2.494593620300293, 6.839545726776123, 2.8790109157562256, -4.660956382751465, -2.110710620880127, -2.6126747131347656, 5.354724407196045, 6.026319980621338, 5.5868821144104, 6.6379313468933105, 3.3770525455474854, 2.8504140377044678, 1.370614767074585, 6.590887069702148, 6.749755859375, 3.671675682067871, 1.2213385105133057, -1.6257281303405762, 5.112521171569824, 3.9780142307281494, -5.064460277557373, 2.6185805797576904, 0.30701127648353577, 6.655488014221191, 5.021397590637207, 6.397559642791748, -4.751299858093262, 0.2931877374649048, -6.316053867340088, 0.27267172932624817, 2.772361993789673, 3.0713868141174316, -2.196528434753418, 0.1379212588071823, -5.369034290313721, -2.1645126342773438, 6.839101791381836, -3.492252826690674, -2.9240145683288574, 5.486019611358643, 1.065589189529419, -1.5610530376434326, -3.09352707862854, 3.6088662147521973 ], "y": [ 0.32797303795814514, 2.404906749725342, 7.369823932647705, -0.4472329914569855, 2.8312361240386963, 0.8835166692733765, 13.471397399902344, 1.312079668045044, -4.702779293060303, 4.6539459228515625, -4.303044319152832, 4.87094783782959, 14.121492385864258, 13.142468452453613, 7.688896179199219, 4.569891452789307, -4.321971893310547, 7.106027603149414, -0.5901292562484741, -3.121424674987793, -0.15305101871490479, -3.3289811611175537, -4.59382963180542, 13.145713806152344, 7.407279014587402, 4.448369026184082, 12.91065502166748, 1.4173755645751953, 10.004203796386719, -0.49690449237823486, 11.887613296508789, -1.9963244199752808, -4.344603061676025, -3.4457004070281982, 6.995433807373047, 4.327411651611328, -4.471351623535156, 0.32294419407844543, -1.7574776411056519, 2.404705286026001, 0.2367633581161499, 10.9364595413208, -3.5146241188049316, 7.349238872528076, -4.6582465171813965, 0.9381887912750244, 8.224658966064453, 0.43844079971313477, 9.12637996673584, 3.853895664215088, 4.918574810028076, 5.366687774658203, -3.817920446395874, -2.6125810146331787, 8.4547758102417, -0.7623319029808044, 3.396144151687622, 6.270819664001465, 0.9317845106124878, 13.311023712158203, 0.5261668562889099, -5.6756181716918945, -0.9701476097106934, -4.5735273361206055, 3.945324659347534, 2.6613447666168213, 0.0976715087890625, -4.2162981033325195, 14.222201347351074, 9.142143249511719, 13.166787147521973, 0.10140426456928253, 6.8583292961120605, 8.8366060256958, -4.463413715362549, 4.603196620941162, 9.477113723754883, 1.1967206001281738, 6.9614787101745605, -1.000731348991394, 11.769890785217285, 1.171942114830017, -3.2628941535949707, 4.243557929992676, 5.076249599456787, -4.629000186920166, 13.36112117767334, 5.637414455413818, 12.072399139404297, 13.678829193115234, 2.7718734741210938, -2.8571341037750244, -0.5754015445709229, 7.982421875, -2.6577963829040527, 7.855935096740723, 12.102802276611328, -1.3128172159194946, 5.573668956756592, 6.776702880859375, -4.495830059051514, 13.369290351867676, 4.878288269042969, 2.095600128173828, 7.27313232421875, 5.203450679779053, 5.434654235839844, -4.574571132659912, -2.9835329055786133, -4.447168827056885, -0.7158223390579224, 9.81009578704834, 0.34039542078971863, -1.6537930965423584, -0.08328438550233841, 1.4184954166412354, 1.4864917993545532, 7.055913925170898, -0.9730584621429443, -0.4535506069660187, 8.731771469116211, -4.819665908813477, -4.532609462738037, 1.0203006267547607, -1.7141261100769043, 5.21725606918335, -5.590508937835693, 4.177460670471191, 6.2458953857421875, 13.783019065856934, 13.402283668518066, -2.3263843059539795, -1.4630154371261597, 13.305733680725098, -2.242765426635742, -0.2817506194114685, -5.0128607749938965, 2.458569288253784, 4.715137004852295, 1.7039209604263306, 13.871014595031738, 10.691067695617676, 10.198442459106445, 12.7907075881958, 0.3235166072845459, -2.1461567878723145, -3.9287209510803223, -4.589815616607666, -1.0913163423538208, 13.515128135681152, -4.5851664543151855, -0.3438931107521057, 6.18291711807251, 8.544514656066895, 7.377016544342041, 0.07275700569152832, 2.5896995067596436, 2.977630853652954, -2.0185275077819824, 1.2775769233703613, 2.472529649734497, -1.8182718753814697, -2.215487480163574, 4.647337913513184, 4.080532073974609, 1.6424741744995117, 6.263227462768555, -0.11050783097743988, 3.331388473510742, 0.8419665694236755, 2.5006933212280273, -4.454519748687744, 1.8753315210342407, -4.162442207336426, 13.825906753540039, 4.050835609436035, 5.160576343536377, -4.138684272766113, 12.916318893432617, -1.7091152667999268, -5.616116046905518, 7.637135982513428, 13.084057807922363, -3.3652663230895996, 4.419475555419922, -0.08654096722602844, 14.209547996520996, 6.0264105796813965, 10.6693115234375, -0.16885411739349365, -0.14396391808986664, 1.2218056917190552, 1.0711795091629028, 2.978137969970703, 1.4191699028015137, 0.8929211497306824, 11.834944725036621, 5.556882858276367, 0.6287466287612915, 3.342897653579712, 1.9102706909179688, 5.868223190307617, -2.4497218132019043, -3.645275831222534, -4.470520973205566, 12.548351287841797, 0.20612099766731262, -4.419437408447266, 2.931002616882324, -3.698087453842163, -4.625110626220703, -0.22968889772891998, 13.204788208007812, 0.3904314339160919, 1.8858473300933838, -0.2547886073589325, -3.6503655910491943, -0.021545378491282463, -0.5938901901245117, 6.7316999435424805, 2.478868007659912, 8.760437965393066, -5.303199291229248, 9.843831062316895, 8.320487976074219, -3.145263433456421, -4.48553991317749, 2.765167713165283, 9.08353042602539, -4.30925178527832, 6.616494655609131, 7.815683364868164, 10.912590026855469, -1.6036484241485596, 11.496627807617188, -3.94071888923645, -3.0216403007507324, 6.7007737159729, 5.684957504272461, 7.1789021492004395, 3.703916072845459, 12.840275764465332, -4.787809371948242, -4.3022685050964355, 7.244716644287109, 2.709876775741577, 13.486662864685059, 2.787303924560547, 3.2228686809539795, 9.837479591369629, 1.166093111038208, 5.93298864364624, 2.020864963531494, 4.857450485229492, 12.932744979858398, -4.4794158935546875, 9.568907737731934, 5.525707721710205, -4.427078723907471, -4.189756870269775, 2.433908700942993, 8.47235107421875, 13.845191955566406, 8.005282402038574, -5.492978096008301, 10.127114295959473, 6.545940399169922, 2.0280601978302, 5.832729339599609, 4.046074390411377, -1.028720736503601, 13.885920524597168, 0.6523146629333496, -0.6223676204681396, 5.88991641998291, 8.421955108642578, -0.6094814538955688, 9.535933494567871, 2.483414888381958, -2.918426990509033, 0.8917533159255981, -0.555415153503418, -0.5240895748138428, 2.7346017360687256, -1.2489216327667236, 13.027658462524414, 1.3131041526794434, 1.909189224243164, 12.561236381530762, 8.27377986907959, 4.104440212249756, 5.964338302612305, 13.122288703918457, -1.3514997959136963, -4.760419845581055, 9.969788551330566, 4.188620090484619, 2.2835614681243896, 8.635319709777832, 9.953506469726562, 4.3577752113342285, 2.040879964828491, 3.5350091457366943, 4.351614952087402, 12.939626693725586, -4.735556602478027, -3.5573558807373047, 5.612346649169922, 1.8833633661270142, 5.389880657196045, 4.898609638214111, -0.4399477243423462, 13.552018165588379, 1.3769923448562622, 0.6353745460510254, 3.242767810821533, 13.354181289672852, -2.300846576690674, 12.715502738952637, 3.6730871200561523, 7.166164398193359, 0.778549313545227, 2.493964433670044, 1.0620484352111816, 2.117069721221924, -3.8943867683410645, 12.65718936920166, -4.7266340255737305, 2.8158082962036133, 4.4241790771484375, 8.425127029418945, -4.605546951293945, 3.2441329956054688, -1.443716287612915, 0.1267869770526886, 5.729201793670654, 5.696499347686768, -0.8948007822036743, -1.6770539283752441, 1.9627503156661987, 13.23470401763916, 0.24532093107700348, -4.356502056121826, 9.291462898254395, -5.622418403625488, -2.976391077041626, 0.19585783779621124, 10.205821990966797, 13.665322303771973, 12.693394660949707, -2.3711822032928467, 5.409047603607178, -1.269616961479187, -5.699145793914795, 12.300127029418945, 6.149184226989746, 6.426771640777588, 9.505109786987305, 1.013998031616211, -3.364795207977295, 0.23233307898044586, 13.789654731750488, -1.350368857383728, 11.895737648010254, -4.507035732269287, -4.011865139007568, 12.945374488830566, -0.61611008644104, 0.8301447629928589, 1.2918416261672974, -1.489989995956421, -0.5594978928565979, -1.2620559930801392, -5.680200099945068, -3.923320770263672, -3.6990420818328857, -2.9410345554351807, 7.975861549377441, 9.16361141204834, 1.695326566696167, -4.164378643035889, 1.308779001235962, -1.3261998891830444, 9.025400161743164, -4.183596134185791, -3.5946290493011475, 0.38896211981773376, 6.760949611663818, -0.16340836882591248, -1.4097046852111816, -3.7603485584259033, 12.876251220703125, 6.915197849273682, 3.4027373790740967, 9.687360763549805, -3.7357144355773926, 2.4593093395233154, 7.240843772888184, 10.706131935119629, 1.3194490671157837, 9.432827949523926, -0.7850820422172546, 6.4755072593688965, -3.706904888153076, -1.7843542098999023, -4.620924949645996, 13.59253978729248, 1.4719841480255127, -5.420749664306641, -1.4132044315338135, 4.19186544418335, 3.5625953674316406, 11.136853218078613, 3.6427624225616455, 1.515758991241455, 3.389756441116333, 8.470471382141113, 12.894721031188965, -4.161252021789551, 12.195939064025879, -4.385196685791016, -1.7521021366119385, 2.711824417114258, 3.181649923324585, 0.297929584980011, 7.371640205383301, 2.07808518409729, 10.773149490356445, 10.580636978149414, 13.032410621643066, -0.40049096941947937, 1.4975864887237549, 2.951413869857788, 13.377059936523438, 3.826010227203369, 2.034362316131592, -0.14295543730258942, 9.428221702575684, -4.415853500366211, -4.525622844696045, -0.5973482131958008, 3.0067520141601562, 0.04262496531009674, 2.046412706375122, 2.483957290649414, -1.6415032148361206, 6.870683193206787, 0.44537198543548584, -2.7594387531280518, 7.008498668670654, 0.29051142930984497, -4.743031978607178, -4.282266616821289, 0.1148669570684433, 9.927711486816406, 2.22890305519104, -1.5114212036132812, -0.043987952172756195, -5.5781707763671875, -1.454829216003418, 11.733251571655273, 2.4644205570220947, 0.19560828804969788, 0.10215191543102264, 14.141342163085938, 2.094242811203003, 12.723898887634277, -4.032718658447266, 0.94820636510849, 0.23724161088466644, 6.740036487579346, -1.3342357873916626, 3.3229451179504395, 8.570246696472168, 2.7552874088287354, 7.440169334411621, 14.220775604248047, 0.6514694094657898, 5.179464817047119, -2.3154590129852295, 13.48257827758789, 14.044302940368652, 1.2080695629119873, 9.258849143981934, 8.081339836120605, 0.4285544157028198, 8.446242332458496, -1.1354026794433594, 2.0882558822631836, 5.873257160186768, -4.387773036956787, 8.869010925292969, 12.680274963378906, 1.3680620193481445, 9.824603080749512, 13.539546012878418, 13.819357872009277, -0.05085138976573944, 9.38965892791748, 5.432363986968994, 2.101693868637085, -2.5838277339935303, 2.1601409912109375, 7.179089546203613, -0.19680364429950714, 5.504307270050049, -0.7709856033325195, 13.68851375579834, -4.463455677032471, -1.3550983667373657, 11.881979942321777, -0.07863171398639679, 14.133028030395508, -4.785550117492676, -4.524905204772949, 4.67458963394165, 2.213501453399658, -5.223025321960449, 6.155317306518555, -1.1453492641448975, -4.628788471221924, -4.370754718780518, -4.883419036865234, 1.2397665977478027, 6.404118537902832, -4.125412464141846, 5.505820274353027, 9.175337791442871, 2.948162794113159, 7.994574069976807, 1.7272365093231201, 0.6515579223632812, -3.611471652984619, 11.723965644836426, 4.078916072845459, 4.142738342285156, 3.5492167472839355, 2.6987597942352295, -1.5787526369094849, 10.112263679504395, 4.841960906982422, 10.692008018493652, 6.756309986114502, -4.4628448486328125, 12.72258186340332, 12.816941261291504, -4.54249382019043, -1.0009315013885498, -0.1876685619354248, 7.2303242683410645, -2.623818874359131 ], "z": [ -11.55898666381836, -8.720427513122559, -4.586028099060059, -11.849308013916016, -7.943033218383789, -10.721872329711914, 2.753598928451538, -8.179717063903809, -2.7833590507507324, -4.950562000274658, -7.346385478973389, -4.132875442504883, 4.962983131408691, 1.8459479808807373, -5.864584445953369, -6.221900939941406, -7.79464864730835, -6.071702003479004, -4.384982109069824, -3.543145179748535, -6.614151954650879, -1.9756041765213013, -3.8713624477386475, 1.2986172437667847, -4.5434770584106445, -5.076231002807617, -0.16871970891952515, -9.901494026184082, -0.3437176048755646, -11.80817985534668, -2.6497161388397217, -10.125020980834961, -1.8490959405899048, -3.282320499420166, -5.4733734130859375, -3.5777690410614014, -7.834588527679443, -7.003997802734375, -10.451191902160645, -8.70828628540039, -11.754592895507812, -1.657088279724121, -4.1025776863098145, -4.426784038543701, -1.860129952430725, -10.514453887939453, -3.9607558250427246, -6.653895378112793, -5.2328619956970215, -5.2953033447265625, -6.965317726135254, -5.953505039215088, -2.8599493503570557, -9.58108139038086, -3.7459335327148438, -4.18146276473999, -5.217652797698975, -5.069403171539307, -10.678008079528809, 2.297898530960083, -8.12919807434082, -0.12747922539710999, -8.056715965270996, -3.365886688232422, -3.2065823078155518, -7.729677200317383, -5.805863857269287, -4.375550746917725, 5.182742118835449, -5.152862548828125, 0.8383035063743591, -11.830866813659668, -5.542474746704102, -5.442371368408203, -3.987976312637329, -5.10561466217041, -6.171199321746826, -7.306985855102539, -5.082303047180176, -11.313131332397461, -2.823056697845459, -2.4286606311798096, -3.2329111099243164, -7.3290791511535645, -4.439760208129883, -2.8592660427093506, 2.306075096130371, -4.623790264129639, -2.2794506549835205, 3.7567784786224365, -6.456790447235107, -3.81225848197937, -4.78088903427124, -3.655085563659668, -9.525148391723633, -3.0000996589660645, -2.3971710205078125, -8.187856674194336, -4.841911792755127, -5.727846145629883, -7.023292064666748, 1.7457629442214966, -6.154674530029297, -9.078978538513184, -6.009461402893066, -4.521295547485352, -4.622961044311523, -2.281895399093628, -3.6558570861816406, -1.3289177417755127, -6.245406627655029, -4.705809116363525, -11.687593460083008, -6.791118144989014, -11.904860496520996, -2.6023261547088623, -8.435256958007812, -4.8100266456604, -11.374690055847168, -4.878171443939209, -3.6414172649383545, -1.6524732112884521, -4.544269561767578, -10.494725227355957, -5.173386573791504, -6.161469459533691, -0.3701936900615692, -5.546193599700928, -5.86267614364624, 4.302010536193848, 2.387235403060913, -9.84363079071045, -5.325887680053711, 1.9289768934249878, -4.7002739906311035, -11.942472457885742, -1.9621996879577637, -4.644162654876709, -7.087390422821045, -7.287871837615967, 3.5726630687713623, -3.8909764289855957, -4.367773532867432, -0.5784296989440918, -11.392043113708496, -4.946963787078857, -3.0091896057128906, -1.5381335020065308, -5.533845901489258, 3.4170596599578857, -4.019906997680664, -11.930548667907715, -5.103083610534668, -4.529864311218262, -4.445230484008789, -7.339771270751953, -8.539363861083984, -6.22062873840332, -10.139227867126465, -2.566486358642578, -7.811707496643066, -10.358830451965332, -9.481439590454102, -7.095065116882324, -7.395960807800293, -9.199102401733398, -6.359515190124512, -1.4006561040878296, -2.6597354412078857, -10.745891571044922, -8.646153450012207, -6.955854415893555, -7.8166069984436035, -8.144305229187012, 3.4128971099853516, -6.5354180335998535, -5.406836986541748, -1.7720465660095215, -0.01631959341466427, -4.451266288757324, -0.30715107917785645, -4.2230024337768555, 0.6072561740875244, -3.168635845184326, -3.7640814781188965, -11.895476341247559, 5.145760536193848, -5.642000198364258, 0.1301284283399582, -11.731674194335938, -11.994352340698242, -10.167104721069336, -8.679044723510742, -6.684276580810547, -8.332341194152832, -2.3611388206481934, -2.743149995803833, -6.307760238647461, -11.07996940612793, -7.829508304595947, -5.088894367218018, -6.533936500549316, -9.650403022766113, -3.7601022720336914, -6.122432231903076, -1.4404175281524658, -7.024602890014648, -2.457066774368286, -8.1852445602417, -4.971983432769775, -3.557011127471924, -11.988968849182129, 1.7456979751586914, -11.351536750793457, -8.390135765075684, -11.99555492401123, -3.1122703552246094, -11.914706230163574, -0.9951756596565247, -5.638162612915039, -4.432317733764648, -5.393882751464844, 0.15036576986312866, -4.687889099121094, -5.612040042877197, -3.428838014602661, -7.413618087768555, -5.860896110534668, -3.3453283309936523, -8.045114517211914, -5.658245086669922, -5.81728458404541, -1.6930625438690186, -5.252724647521973, -3.093247413635254, -3.43438458442688, -1.5565712451934814, -4.808370590209961, -6.621486186981201, -4.488162517547607, -7.634488105773926, -0.37377774715423584, -1.8779953718185425, -1.5115633010864258, -6.022412300109863, -6.164057731628418, 3.7280209064483643, -8.294407844543457, -6.336790084838867, -4.692972183227539, -10.216141700744629, -6.473692417144775, -3.40090274810791, -5.533727645874023, 0.6443198323249817, -7.436634063720703, -4.905362129211426, -5.034519672393799, -7.860538482666016, -8.14770221710205, -7.8488335609436035, -5.5028510093688965, 4.8237714767456055, -5.7374749183654785, -0.35736358165740967, -2.5513970851898193, -6.235482215881348, -3.119159460067749, -4.89811897277832, -3.331238269805908, -11.270548820495605, 4.061755657196045, -10.986214637756348, -5.873490333557129, -4.737090587615967, -5.543889045715332, -11.688711166381836, -4.942051410675049, -8.64941692352295, -8.94391918182373, -7.149824619293213, -4.402238368988037, -7.677778720855713, -7.779723644256592, -11.085433006286621, 1.3908021450042725, -3.9341583251953125, -9.288496017456055, -1.4110503196716309, -5.640522003173828, -3.3934080600738525, -5.178230285644531, 1.141713261604309, -5.348264217376709, -1.8245633840560913, -2.766857147216797, -5.329925537109375, -4.40902042388916, -5.457197189331055, -4.594233989715576, -3.719813585281372, -7.914721965789795, -7.695558071136475, -3.5908424854278564, 0.38222455978393555, -0.8690208196640015, -5.668587684631348, -6.343151569366455, -7.905178546905518, -5.1862688064575195, -4.433113098144531, -4.863656997680664, 3.154247283935547, -2.8754847049713135, -4.4337944984436035, -8.029945373535156, 2.1651926040649414, -9.828082084655762, -1.0791712999343872, -7.639917850494385, -5.533569812774658, -4.382483959197998, -4.1121625900268555, -2.4883902072906494, -9.05966854095459, -7.361113548278809, -1.127992033958435, -3.0259790420532227, -4.337498664855957, -7.22684907913208, -3.7638916969299316, -2.9815733432769775, -7.993737697601318, -5.532262325286865, -4.930290699005127, -6.529343605041504, -5.28941011428833, -6.269709587097168, -9.401144981384277, -8.249138832092285, 1.026442050933838, -6.731062412261963, -5.804935932159424, -3.19897723197937, -0.29700005054473877, -3.6707255840301514, -7.0366339683532715, -2.5085947513580322, 3.5388453006744385, -1.1866238117218018, -4.518500328063965, -5.873241424560547, -11.092483520507812, -0.11570470035076141, -2.0301480293273926, -4.99012565612793, -4.687368869781494, -4.982244968414307, -10.451203346252441, -3.6548447608947754, -11.582770347595215, 4.281044960021973, -11.005560874938965, -2.6355667114257812, -6.651893138885498, -3.038097858428955, 0.938366711139679, -3.853471279144287, -10.6152925491333, -4.907918930053711, -10.807096481323242, -11.712079048156738, -8.954936981201172, -0.11751504987478256, -4.117561340332031, -6.156259059906006, -9.289515495300293, -5.762171745300293, -3.284003734588623, -3.2561652660369873, -4.6527886390686035, -4.399907112121582, -10.911364555358887, -3.37939715385437, -6.382122993469238, -5.442935466766357, -11.410212516784668, -5.358147144317627, -12.060132026672363, -10.94332218170166, -7.637814044952393, -0.12015194445848465, -4.7764363288879395, -5.343525409698486, -0.49958348274230957, -3.956634283065796, -7.847753524780273, -4.948116779327393, 0.12189611047506332, -8.713976860046387, -6.276416301727295, -0.8390994668006897, -4.686158180236816, -4.08144998550415, -5.102473735809326, -1.5251365900039673, 3.463165521621704, -9.764908790588379, 0.1656426638364792, -10.87250804901123, -3.428739547729492, -3.0214715003967285, -1.4368022680282593, -6.635255813598633, -9.817567825317383, -2.8874123096466064, -3.7496731281280518, -0.1800733059644699, -2.50980806350708, -2.1667211055755615, -2.6366758346557617, -10.402261734008789, -6.845040798187256, -5.834780693054199, -7.248034954071045, -4.953550815582275, -9.113312721252441, 0.250684529542923, 0.06913436204195023, 0.8940771818161011, -11.848278999328613, -9.804121017456055, -8.12875747680664, 2.4281675815582275, -6.226993083953857, -7.764004707336426, -10.303509712219238, -5.044991970062256, -5.496092319488525, -7.283377170562744, -11.714855194091797, -8.176210403442383, -7.148736953735352, -2.3898773193359375, -6.453646183013916, -8.910049438476562, -6.148642063140869, -11.462176322937012, -9.436209678649902, -6.102930068969727, -11.649415969848633, -0.8003620505332947, -8.012540817260742, -11.795052528381348, -0.37506088614463806, -8.902336120605469, -4.394169330596924, -6.640049457550049, 0.21515995264053345, -5.890520095825195, -2.744603395462036, -4.493929386138916, -1.6957416534423828, -10.032668113708496, 4.883516788482666, -8.076478958129883, -1.0824462175369263, -8.300447463989258, -4.290074348449707, -5.38604736328125, -5.07572078704834, -11.057092666625977, -6.955334663391113, -3.662440061569214, -6.753798007965088, -5.252066135406494, 5.175827980041504, -11.073488235473633, -6.799788951873779, -9.170713424682617, 3.128044366836548, 4.425876140594482, -8.798023223876953, -0.7762895822525024, -3.9684362411499023, -11.534854888916016, -3.743471145629883, -11.163490295410156, -7.075694561004639, -5.73482608795166, -7.772233009338379, -3.477954149246216, -1.0426963567733765, -7.311435699462891, -2.8525137901306152, 4.001303672790527, 4.576021194458008, -6.692566394805908, -5.034015655517578, -6.699734210968018, -7.8252081871032715, -9.567848205566406, -2.4089062213897705, -6.045662879943848, -11.979235649108887, -6.630395412445068, -4.468752861022949, 4.570698261260986, -3.987588405609131, -8.830552101135254, -2.6871979236602783, -11.900578498840332, 4.319845199584961, -1.9023139476776123, -6.804488658905029, -3.9699015617370605, -3.6994259357452393, -0.026319235563278198, -4.70905065536499, -11.2097806930542, -3.1140987873077393, -3.144108533859253, -1.0529837608337402, -8.525023460388184, -5.568939208984375, -8.209943771362305, -4.623018264770508, -0.8267196416854858, -6.640819072723389, -4.021506309509277, -3.8234663009643555, -6.049319267272949, -4.263439655303955, -2.8534421920776367, -6.536315441131592, -7.401490688323975, -6.854971408843994, -6.724142074584961, -8.905938148498535, -2.910115957260132, -6.12882661819458, -3.889491081237793, -5.481695175170898, -3.988154888153076, -0.9497745037078857, -0.05490387976169586, -7.63749885559082, -11.313039779663086, -11.937177658081055, -5.446620464324951, -9.569853782653809 ] } ], "layout": { "height": 800, "legend": { "tracegroupgap": 0 }, "scene": { "domain": { "x": [ 0, 1 ], "y": [ 0, 1 ] }, "xaxis": { "title": { "text": "0" } }, "yaxis": { "title": { "text": "1" } }, "zaxis": { "title": { "text": "2" } } }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "3d TSNE Plot for Topic Model" }, "width": 900 } }, "text/html": [ "
\n", " \n", " \n", "
\n", " \n", "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_model(lda, plot = 'tsne')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "T-distributed Stochastic Neighbor Embedding (t-SNE) is a nonlinear dimensionality reduction technique well-suited for embedding high-dimensional data for visualization in a low-dimensional space of two or three dimensions. \n", "\n", "__[Learn More](https://en.wikipedia.org/wiki/T-distributed_stochastic_neighbor_embedding)__" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 9.6 Uniform Manifold Approximation and Projection Plot" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAgAAAAFiCAYAAACArGA2AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nOy9eZRdVZn//dn7nHPHGm9SUxISpiSACthigyHMgiJDgIitIrT+FnZjY7e6hP5pY7e8dr8OiHa3OGCLYi/aF2khTCIKTgSEAAFEUEgISchUU2q4dccz7f3+ce49VbeqQgIClaT2Z62sJOeec+4+96ayn/3s7/N9hNZaYzAYDAaDYVYhZ3oABoPBYDAY3nhMAGAwGAwGwyzEBAAGg8FgMMxCTABgMBgMBsMsxAQABoPBYDDMQkwAYDAYDAbDLMQEAIYGli5dyvDwcMOxn//851x88cUArFq1iqVLl/KNb3yj4RytNaeddhpnn312w/F169axdOlS/uu//qvh+KpVq3jb297GihUrOO+881ixYgXvf//7eeqpp6aMadu2bRx++OGsWLEi/nXuuedy6623vuLnu+qqq3j44Ydf8XUAhUKBSy65JP77ihUrGBsbe1X3eiV85zvf4eSTT+azn/3stK97nsdHPvIRfv7zn8fHKpUKn/70pznzzDN517vexS9/+cv4taeffpqVK1dy5pln8td//dcMDAzEr333u9/l3e9+N6effjrXXXcd01UJT/zuVqxYwTnnnMNll13Gs88++xo+9RvH5z73uX127AbDn4U2GCawZMkSPTQ01HDs3nvv1R/60Ie01lrfdttt+uSTT9annXZawzmPPfaYXrZsmT7rrLMajv/Lv/yL/vSnP61PPPFE7ft+fPy2227Tf/M3f9Nw7q9+9St9/PHHN5yntdZbt27VRx99dMOxvr4+fcwxx+jnnnvu1T3oq2C6cbwRnHrqqfrxxx+f9rUnn3xSn3feefrII4/U9957b3z8K1/5iv7c5z6ntdZ6+/btevny5bq3t1e7rqtPPPFEvXbtWq211j/60Y/0pZdeqrXW+re//a1esWKFLpVKulqt6osuukjfc889U95zuu/ud7/7nT722GP1tm3bXpNnfiM55ZRT9B/+8IeZHobB8IZjMgCGV8ySJUvIZDI8+eST8bHbb7+dc889t+G8YrHI3Xffzcc+9jGam5v5xS9+8bL3fcc73sHg4OAeraq7urpYtGgRmzdvZtWqVXzwgx/k/PPPjzMV3/rWt3jPe97DOeecwz/8wz8wODgIwMUXXxyvlJ988sn4upUrV/Kb3/wmvn99JXz22Wdz+eWXUygU+OxnP0u1WmXFihWEYdiQLXm59/va177GRRddxKmnnspVV12FUmrK8/T19XHZZZdxzjnncPbZZ3PDDTcA8MlPfpL+/n6uuuoqfvazn0257qabbuLTn/40Rx55ZMPxX/7yl1x44YUAzJs3j+OPP557772XZ555hqamJt72trcB8N73vpdHHnmEkZER7r//fs4++2wymQzJZJILLriAu+66a7ffBcCyZcs4/fTTufnmmwF44YUXuPjiiznnnHM499xzueOOO+Jzb731Vs466yzOOeccLrnkEnp7e3n00UcbskcT/37ddddx5ZVXcskll3DmmWdyxRVX8JOf/ISLLrqIk046iZ/+9Kfxdd/5znc4//zzWbFiBX/3d39Hf3//y34P//7v/87AwABXXHEFTz/9NPfddx/nn38+F1xwARdeeCGPP/74Hj2/wbAvYgIAw6vivPPO48477wSidPMTTzzBCSec0HDOnXfeyYEHHsghhxzCeeedxw9/+MNd3k9rzS233MKSJUvI5XK7ff+nnnqKLVu2cNRRRwGwYcMGbrrpJm666SZuu+02HnzwQW699VbuvvtuFi9ezGc+85mG6/P5PJ/97Ge55ppruP322/n2t7/N1VdfzY4dO/jVr37FqlWruOWWW/jpT3/KggUL+J//+R++9KUvkUqluPPOO7EsK77X7t5vy5Yt3HTTTdx1112sXr2axx57bMrzXHHFFRx77LHcfffd3Hzzzdx1113cc889/Md//AednZ1ce+21vOc975ly3de//nWWL18+5Xhvby89PT3x37u6uujr66Ovr4/u7u74eCKRIJfL0d/fP+Wa7u7ueALdEw477DDWr19PEAR87GMf4+KLL+buu+/me9/7Hl//+td56qmneP7557n22mu54YYbuPvuuzn11FP5zne+s9t7P/HEE3zrW9/i9ttvZ/Xq1bz44ov86Ec/4p//+Z+57rrrALjjjjtYv349P/nJT7jzzjs56aST+NznPhffY7rv4VOf+lT8+R511FFcc801fP7zn2fVqlV8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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_model(lda, plot = 'umap')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "UMAP (Uniform Manifold Approximation and Projection) is a novel manifold learning technique for dimensionality reduction. It is similar to tSNE and PCA in its purpose as all of them are techniques to reduce dimensionality for 2d/3d projections. UMAP is constructed from a theoretical framework based in Riemannian geometry and algebraic topology. \n", "\n", "__[Learn More](https://towardsdatascience.com/how-exactly-umap-works-13e3040e1668)__" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 10.0 Evaluate Model" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Another way to analyze performance of models is to use `evaluate_model()` function which displays a user interface for all of the available plots for a given model. It internally uses the `plot_model()` function. See below example where we have generated Sentiment Polarity Plot for `Topic 3` using LDA model stored in `lda` variable." ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "ca1c7e1a351d408b9efbc6803987e482", "version_major": 2, "version_minor": 0 }, "text/plain": [ "interactive(children=(ToggleButtons(description='Plot Type:', icons=('',), options=(('Frequency Plot', 'freque…" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "evaluate_model(lda)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 11.0 Saving the model" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As you get deeper into Natural Language Processing, you will learn that training time of topic models increases exponentially as the size of corpus increases. As such, if you would like to continue your experiment or analysis at a later point, you don't need to repeat the entire experiment and re-train your model. PyCaret inbuilt function `save_model()` allows you to save the model for later use." ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Model Succesfully Saved\n" ] } ], "source": [ "save_model(lda,'Final LDA Model 08Feb2020')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 12.0 Loading the model" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To load a saved model on a future date in the same or different environment, we would use the PyCaret's `load_model()` function." ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Model Sucessfully Loaded\n" ] } ], "source": [ "saved_lda = load_model('Final LDA Model 08Feb2020')" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "LdaModel(num_terms=4596, num_topics=4, decay=0.5, chunksize=100)\n" ] } ], "source": [ "print(saved_lda)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 13.0 Wrap-up / Next Steps?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "What we have covered in this tutorial is the entire workflow for Natural Language Processing experiment. Our task today was to create and analyze a topic model. We have performed several text pre-processing steps using `setup()` then we have created a topic model using `create_model()`, assigned topics to the dataset using `assign_model()` and analyze the results using `plot_model()`. All this was completed in less than 10 commands that are naturally constructed and very intuitive to remember. Re-creating the entire experiment without PyCaret would have taken well over 100 lines of code.\n", "\n", "In this tutorial, we have only covered basics of `pycaret.nlp`. In the next tutorial we will demonstrate the use of `tune_model()` to automatically select the number of topics for a topic model. We will also go deeper into few concepts and techniques such as `custom_stopwords` to improve the result of a topic model. \n", "\n", "See you at the next tutorial. Follow the link to __[Natural Language Processing (NLP102) - Level Intermediate](https://github.com/pycaret/pycaret/blob/master/Tutorials/Natural%20Language%20Processing%20Tutorial%20Level%20Intermediate%20-%20NLP102.ipynb)__" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.4" } }, "nbformat": 4, "nbformat_minor": 2 }