{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "\n", "##
Tutorial on text classification

Analyzing Amazon product reviews\n", "
Yury Kashnitskiy, Data Science Lab" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We'll be analyzing Amazon products [reviews](http://jmcauley.ucsd.edu/data/amazon/). We took a sample of 100k grocery reviews. The prepared zipped `.csv` file is [here](https://drive.google.com/file/d/1fUSV3GrFzKkpY7tvbp3-tNHqb-Veo4xY/view?usp=sharing).\n", "\n", "**Outline:**\n", "\n", "1. Simple text features
\n", " 1.1. Bag of Words
\n", " 1.2. Tf-Idf vectorization
\n", "2. Simple text classification
\n", "3. Understanding the model
\n", " 3.1. Confusion matrix
\n", " 3.2. Visualizing coefficients
\n", " 3.3. ELI5 (\"Explain Like I'm 5\")
\n", "4. Hierarchical text classification" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "PATH_TO_DATA = '/home/yorko/Documents/data/amazon_reviews_sample100k_grocery.csv.zip'" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "# some necessary imports\n", "import os\n", "import pickle\n", "import json\n", "from pprint import pprint\n", "import numpy as np\n", "import pandas as pd\n", "from sklearn.feature_extraction.text import TfidfVectorizer\n", "from sklearn.linear_model import LogisticRegression\n", "from sklearn.pipeline import Pipeline\n", "from sklearn.model_selection import train_test_split\n", "from sklearn.metrics import accuracy_score, confusion_matrix\n", "import seaborn as sns\n", "from matplotlib import pyplot as plt" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "df = pd.read_csv(PATH_TO_DATA)" ] }, { "cell_type": "code", "execution_count": 4, "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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
productIdTitleuserIdHelpfulnessScoreTimeTextCat1Cat2Cat3
0B0000DF3IXPaprika Hungarian SweetA244MHL2UN2EYL0/05.01127088000While in Hungary we were given a recipe for Hu...grocery gourmet foodherbsspices seasonings
1B0002QF1LKQuaker Honey Graham Oh's 10.5 oz - (6 pack)A3FL7SXVYMC5NR3/35.01138147200Without a doubt, I would recommend this wholes...grocery gourmet foodbreakfast foodscereals
2B0002QF1LKQuaker Honey Graham Oh's 10.5 oz - (6 pack)A12IDQSS4OW33B3/35.01118016000This cereal is so sweet....yet so good for you...grocery gourmet foodbreakfast foodscereals
3B0002QF1LKQuaker Honey Graham Oh's 10.5 oz - (6 pack)A2GZKHC1M4PKF42/23.01206489600Man I love Oh's cereal. It is really great to ...grocery gourmet foodbreakfast foodscereals
4B0002QF1LKQuaker Honey Graham Oh's 10.5 oz - (6 pack)AUGT2DOGKLHIN2/25.01177545600And I've tried alot of cereals. This is by far...grocery gourmet foodbreakfast foodscereals
\n", "
" ], "text/plain": [ " productId Title userId \\\n", "0 B0000DF3IX Paprika Hungarian Sweet A244MHL2UN2EYL \n", "1 B0002QF1LK Quaker Honey Graham Oh's 10.5 oz - (6 pack) A3FL7SXVYMC5NR \n", "2 B0002QF1LK Quaker Honey Graham Oh's 10.5 oz - (6 pack) A12IDQSS4OW33B \n", "3 B0002QF1LK Quaker Honey Graham Oh's 10.5 oz - (6 pack) A2GZKHC1M4PKF4 \n", "4 B0002QF1LK Quaker Honey Graham Oh's 10.5 oz - (6 pack) AUGT2DOGKLHIN \n", "\n", " Helpfulness Score Time \\\n", "0 0/0 5.0 1127088000 \n", "1 3/3 5.0 1138147200 \n", "2 3/3 5.0 1118016000 \n", "3 2/2 3.0 1206489600 \n", "4 2/2 5.0 1177545600 \n", "\n", " Text Cat1 \\\n", "0 While in Hungary we were given a recipe for Hu... grocery gourmet food \n", "1 Without a doubt, I would recommend this wholes... grocery gourmet food \n", "2 This cereal is so sweet....yet so good for you... grocery gourmet food \n", "3 Man I love Oh's cereal. It is really great to ... grocery gourmet food \n", "4 And I've tried alot of cereals. This is by far... grocery gourmet food \n", "\n", " Cat2 Cat3 \n", "0 herbs spices seasonings \n", "1 breakfast foods cereals \n", "2 breakfast foods cereals \n", "3 breakfast foods cereals \n", "4 breakfast foods cereals " ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head()" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(99982, 10)" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.shape" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Index(['productId', 'Title', 'userId', 'Helpfulness', 'Score', 'Time', 'Text',\n", " 'Cat1', 'Cat2', 'Cat3'],\n", " dtype='object')" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.columns" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "From these 10 columns we'll use only 3 now:\n", " - Text - review on the product\n", " - Cat2 - label of category 2 for this product\n", " - Cat3 - label of category 3 for this product\n", " \n", "There's a taxonomy (hierarchical catalog) of all products with 3 categories (a.k.a. levels). Based on the review, we're going to classify it into one of level 2 categories (i.e. predicting `Cat2`) and level 3 categories (i.e. predicting `Cat3`). \n", "\n", "We're not intrested anymore in `Cat1` because here we chose only grocery. So we have 16 `Cat2` categories and 157 `Cat3` categories." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([' grocery gourmet food'], dtype=object)" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df['Cat1'].unique()" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "pantry staples 27291\n", "beverages 23440\n", "snack food 12724\n", "candy chocolate 11433\n", "breakfast foods 6248\n", "breads bakery 4240\n", "cooking baking supplies 2444\n", "herbs 2069\n", "gourmet gifts 1939\n", "fresh flowers live indoor plants 1811\n", "baby food 1270\n", "meat poultry 1268\n", "meat seafood 1250\n", "produce 1196\n", "sauces dips 845\n", "dairy eggs 514\n", "Name: Cat2, dtype: int64" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df['Cat2'].value_counts()" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "157" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df['Cat3'].nunique()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 1. Simple text features\n", "#### 1.1. Bag of Words \n", "\n", "*The following explanation of Bag of Words and Tf-Idf is based on [this](https://www.kaggle.com/kashnitsky/topic-6-feature-engineering-and-feature-selection) notebook from our course [mlcourse.ai](https://mlcourse.a).*\n", "\n", "\n", "\n", "The easiest way to convert text to features is called Bag of Words: we create a vector with the length of the vocabulary, compute the number of occurrences of each word in the text, and place that number of occurrences in the appropriate position in the vector. The process described looks simpler in code:" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Vocabulary: [(0, 'i'), (1, 'dog'), (2, 'and'), (3, 'a'), (4, 'cat'), (5, 'you'), (6, 'have')]\n", "Vectors:\n", "[1. 0. 0. 1. 1. 0. 1.]\n", "[0. 1. 0. 1. 0. 1. 1.]\n", "[1. 1. 2. 2. 1. 1. 1.]\n" ] } ], "source": [ "texts = ['i have a cat', \n", " 'you have a dog', \n", " 'you and i have a cat and a dog']\n", "\n", "vocabulary = list(enumerate(set([word for sentence in texts \n", " for word in sentence.split()])))\n", "print('Vocabulary:', vocabulary)\n", "\n", "def vectorize(text): \n", " vector = np.zeros(len(vocabulary)) \n", " for i, word in vocabulary:\n", " num = 0 \n", " for w in text: \n", " if w == word: \n", " num += 1 \n", " if num: \n", " vector[i] = num \n", " return vector\n", "\n", "print('Vectors:')\n", "for sentence in texts: \n", " print(vectorize(sentence.split()))" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Feature matrix:\n", " [[0 1 0 1 0]\n", " [0 0 1 1 1]\n", " [2 1 1 1 1]]\n", "Vocabulary\n", "{'and': 0, 'cat': 1, 'dog': 2, 'have': 3, 'you': 4}\n" ] } ], "source": [ "from sklearn.feature_extraction.text import CountVectorizer\n", "\n", "vect = CountVectorizer()\n", "print('Feature matrix:\\n {}'.format(vect.fit_transform(texts).toarray()))\n", "print('Vocabulary')\n", "pprint(vect.vocabulary_)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "When using algorithms like Bag of Words, we lose the order of the words in the text, which means that the texts \"i have no cows\" and \"no, i have cows\" will appear identical after vectorization when, in fact, they have the opposite meaning. To avoid this problem, we can revisit our tokenization step and use N-grams (the *sequence* of N consecutive tokens) instead." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Feature matrix:\n", " [[0 0 0 1 0 0 1 1 0 0 0 0]\n", " [0 0 0 0 0 1 1 0 1 1 0 1]\n", " [2 1 1 1 1 1 1 1 0 1 1 0]]\n", "Vocabulary\n", "{'and': 0,\n", " 'and dog': 1,\n", " 'and have': 2,\n", " 'cat': 3,\n", " 'cat and': 4,\n", " 'dog': 5,\n", " 'have': 6,\n", " 'have cat': 7,\n", " 'have dog': 8,\n", " 'you': 9,\n", " 'you and': 10,\n", " 'you have': 11}\n" ] } ], "source": [ "# the same but with bigrams\n", "vect2 = CountVectorizer(ngram_range=(1, 2))\n", "print('Feature matrix:\\n {}'.format(vect2.fit_transform(texts).toarray()))\n", "print('Vocabulary')\n", "pprint(vect2.vocabulary_)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 1.2. Tf-Idf \n", "Adding onto the Bag of Words idea: words that are rarely found in the corpus (in all the documents of this dataset) but are present in this particular document might be more important. Then it makes sense to increase the weight of more domain-specific words to separate them out from common words. This approach is called TF-IDF (term frequency-inverse document frequency), which cannot be written in a few lines, so you should look into the details in references such as [this wiki](https://en.wikipedia.org/wiki/Tf%E2%80%93idf). The default option is as follows:\n", "\n", "$$ \\large idf(t,D) = \\log\\frac{\\mid D\\mid}{df(d,t)+1} $$\n", "\n", "$$ \\large tfidf(t,d,D) = tf(t,d) \\times idf(t,D) $$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2. Simple text classification\n", "\n", "For now, we'll only take a look at 16 level 2 categories. We'll be doing a 16-class classification with logistic regression and Tf-Idf vectorization. Here we resort to Sklearn pipelines." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "# build bigrams, put a limit on maximal number of features\n", "# and minimal word frequency\n", "tf_idf = TfidfVectorizer(ngram_range=(1, 2), max_features=50000, min_df=2)\n", "# multinomial logistic regression a.k.a softmax classifier\n", "logit = LogisticRegression(C=1e2, n_jobs=4, solver='lbfgs', \n", " random_state=17, multi_class='multinomial',\n", " verbose=1)\n", "# sklearn's pipeline\n", "tfidf_logit_pipeline = Pipeline([('tf_idf', tf_idf), \n", " ('logit', logit)])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For now, we only use review text. " ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "texts, y = df['Text'], df['Cat2']" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We split data into training and validation parts." ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "train_texts, valid_texts, y_train, y_valid = \\\n", " train_test_split(texts, y, random_state=17,\n", " stratify=y, shuffle=True)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "[Parallel(n_jobs=4)]: Using backend LokyBackend with 4 concurrent workers.\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 10.1 s, sys: 300 ms, total: 10.4 s\n", "Wall time: 46.3 s\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "[Parallel(n_jobs=4)]: Done 1 out of 1 | elapsed: 36.0s finished\n" ] }, { "data": { "text/plain": [ "Pipeline(memory=None,\n", " steps=[('tf_idf', TfidfVectorizer(analyzer='word', binary=False, decode_error='strict',\n", " dtype=, encoding='utf-8', input='content',\n", " lowercase=True, max_df=1.0, max_features=50000, min_df=2,\n", " ngram_range=(1, 2), norm='l2', preprocessor=None, smooth_idf=Tru... penalty='l2', random_state=17, solver='lbfgs',\n", " tol=0.0001, verbose=1, warm_start=False))])" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%time\n", "tfidf_logit_pipeline.fit(train_texts, y_train)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 2.42 s, sys: 7.79 ms, total: 2.43 s\n", "Wall time: 2.43 s\n" ] } ], "source": [ "%%time\n", "valid_pred = tfidf_logit_pipeline.predict(valid_texts)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.7564810369659145" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "accuracy_score(y_valid, valid_pred)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 3. Understanding the model\n", "#### 3.1. Confusion matrix" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [], "source": [ "def plot_confusion_matrix(actual, predicted, classes,\n", " normalize=False,\n", " title='Confusion matrix', figsize=(7,7),\n", " cmap=plt.cm.Blues, path_to_save_fig=None):\n", " \"\"\"\n", " This function prints and plots the confusion matrix.\n", " Normalization can be applied by setting `normalize=True`.\n", " \"\"\"\n", " import itertools\n", " from sklearn.metrics import confusion_matrix\n", " cm = confusion_matrix(actual, predicted).T\n", " if normalize:\n", " cm = cm.astype('float') / cm.sum(axis=1)[:, np.newaxis]\n", " \n", " plt.figure(figsize=figsize)\n", " plt.imshow(cm, interpolation='nearest', cmap=cmap)\n", " plt.title(title)\n", " plt.colorbar()\n", " tick_marks = np.arange(len(classes))\n", " plt.xticks(tick_marks, classes, rotation=90)\n", " plt.yticks(tick_marks, classes)\n", "\n", " fmt = '.2f' if normalize else 'd'\n", " thresh = cm.max() / 2.\n", " for i, j in itertools.product(range(cm.shape[0]), range(cm.shape[1])):\n", " plt.text(j, i, format(cm[i, j], fmt),\n", " horizontalalignment=\"center\",\n", " color=\"white\" if cm[i, j] > thresh else \"black\")\n", "\n", " plt.tight_layout()\n", " plt.ylabel('Predicted label')\n", " plt.xlabel('True label')\n", " \n", " if path_to_save_fig:\n", " plt.savefig(path_to_save_fig, dpi=300, bbox_inches='tight')" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array(['baby food', 'beverages', 'breads bakery', 'breakfast foods',\n", " 'candy chocolate', 'cooking baking supplies', 'dairy eggs',\n", " 'fresh flowers live indoor plants', 'gourmet gifts', 'herbs',\n", " 'meat poultry', 'meat seafood', 'pantry staples', 'produce',\n", " 'sauces dips', 'snack food'], dtype=object)" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "category2_classes = tfidf_logit_pipeline.named_steps['logit'].classes_\n", "category2_classes" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_confusion_matrix(y_valid, valid_pred, \n", " category2_classes, figsize=(8, 8))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 3.2. Visualizing coefficients" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "def visualize_coefficients(classifier_coefs, feature_names, \n", " n_top_features=25, title='Coefs', \n", " save_path=None):\n", " # get coefficients with large absolute values \n", " coef = classifier_coefs.ravel()\n", " positive_coefficients = np.argsort(coef)[-n_top_features:]\n", " negative_coefficients = np.argsort(coef)[:n_top_features]\n", " interesting_coefficients = np.hstack([negative_coefficients, \n", " positive_coefficients])\n", " # plot them\n", " plt.figure(figsize=(15, 5))\n", " colors = [\"red\" if c < 0 else \"blue\" \n", " for c in coef[interesting_coefficients]]\n", " plt.bar(np.arange(2 * n_top_features), \n", " coef[interesting_coefficients], color=colors)\n", " feature_names = np.array(feature_names)\n", " plt.xticks(np.arange(1, 1 + 2 * n_top_features), \n", " feature_names[interesting_coefficients], \n", " rotation=90, ha=\"right\")\n", " plt.title(title);\n", " if save_path:\n", " plt.savefig(save_path, dpi=300);" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "visualize_coefficients(tfidf_logit_pipeline.named_steps['logit'].coef_[0, :], \n", " tfidf_logit_pipeline.named_steps['tf_idf'].get_feature_names(),\n", " title=category2_classes[0])" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "visualize_coefficients(tfidf_logit_pipeline.named_steps['logit'].coef_[1, :], \n", " tfidf_logit_pipeline.named_steps['tf_idf'].get_feature_names(),\n", " title=category2_classes[1])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 3.3. ELI5 (\"Explain Like I'm 5\")\n", "\n", "[GitHub](https://github.com/TeamHG-Memex/eli5). \n", "ELI5 is a Python package which helps to debug machine learning classifiers and explain their predictions. It supports Sklearn, Xgboost, LightGBM and others. " ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [], "source": [ "# pip install eli5\n", "import eli5" ] }, { "cell_type": "code", "execution_count": 28, "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", " \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", " y=baby food\n", " \n", "\n", "\n", "top features\n", " \n", " \n", " \n", " y=beverages\n", " \n", "\n", "\n", "top features\n", " \n", " \n", " \n", " y=breads bakery\n", " \n", "\n", "\n", "top features\n", " \n", " \n", " \n", " y=breakfast foods\n", " \n", "\n", "\n", "top features\n", " \n", " \n", " \n", " y=candy chocolate\n", " \n", "\n", "\n", "top features\n", " \n", " \n", " \n", " y=cooking baking supplies\n", " \n", "\n", "\n", "top features\n", " \n", " \n", " \n", " y=dairy eggs\n", " \n", "\n", "\n", "top features\n", " \n", " \n", " \n", " y=fresh flowers live indoor plants\n", " \n", "\n", "\n", "top features\n", " \n", " \n", " \n", " y=gourmet gifts\n", " \n", "\n", "\n", "top features\n", " \n", " \n", " \n", " y=herbs\n", " \n", "\n", "\n", "top features\n", " \n", " \n", " \n", " y=meat poultry\n", " \n", "\n", "\n", "top features\n", " \n", " \n", " \n", " y=meat seafood\n", " \n", "\n", "\n", "top features\n", " \n", " \n", " \n", " y=pantry staples\n", " \n", "\n", "\n", "top features\n", " \n", " \n", " \n", " y=produce\n", " \n", "\n", "\n", "top features\n", " \n", " \n", " \n", " y=sauces dips\n", " \n", "\n", "\n", "top features\n", " \n", " \n", " \n", " y=snack food\n", " \n", "\n", "\n", "top features\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", " \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", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "
\n", " Weight?\n", " Feature
\n", " +44.371\n", " \n", " baby\n", "
\n", " +39.677\n", " \n", " formula\n", "
\n", " +22.257\n", " \n", " gerber\n", "
\n", " +16.179\n", " \n", " similac\n", "
\n", " +16.148\n", " \n", " this formula\n", "
\n", " +15.863\n", " \n", " earth best\n", "
\n", " +15.532\n", " \n", " cereal\n", "
\n", " +15.284\n", " \n", " babies\n", "
\n", " +13.853\n", " \n", " my baby\n", "
\n", " +13.091\n", " \n", " daughter\n", "
\n", " +12.813\n", " \n", " month old\n", "
\n", " +12.559\n", " \n", " earth\n", "
\n", " +12.135\n", " \n", " baby food\n", "
\n", " +11.852\n", " \n", " food\n", "
\n", " +11.834\n", " \n", " old\n", "
\n", " +11.623\n", " \n", " toddler\n", "
\n", " +11.065\n", " \n", " son\n", "
\n", " +10.936\n", " \n", " months\n", "
\n", " +10.730\n", " \n", " month\n", "
\n", " +10.385\n", " \n", " child\n", "
\n", " … 10790 more positive …\n", "
\n", " … 39191 more negative …\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", " \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", " \n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "
\n", " Weight?\n", " Feature
\n", " +71.027\n", " \n", " tea\n", "
\n", " +48.800\n", " \n", " this tea\n", "
\n", " +40.395\n", " \n", " drink\n", "
\n", " +34.729\n", " \n", " teas\n", "
\n", " +34.680\n", " \n", " pods\n", "
\n", " +31.821\n", " \n", " coffee\n", "
\n", " +31.040\n", " \n", " coconut water\n", "
\n", " +28.885\n", " \n", " movie\n", "
\n", " +28.634\n", " \n", " drinking\n", "
\n", " +27.084\n", " \n", " zico\n", "
\n", " +26.962\n", " \n", " chai\n", "
\n", " +26.894\n", " \n", " hot chocolate\n", "
\n", " +25.221\n", " \n", " soda\n", "
\n", " +23.568\n", " \n", " senseo\n", "
\n", " +23.189\n", " \n", " water\n", "
\n", " +22.381\n", " \n", " espresso\n", "
\n", " … 20526 more positive …\n", "
\n", " … 29455 more negative …\n", "
\n", " -21.645\n", " \n", " salt\n", "
\n", " -22.586\n", " \n", " popcorn\n", "
\n", " -23.213\n", " \n", " sauce\n", "
\n", " -28.835\n", " \n", " eat\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", " \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", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "
\n", " Weight?\n", " Feature
\n", " +25.276\n", " \n", " cookies\n", "
\n", " +22.181\n", " \n", " cookie\n", "
\n", " +20.022\n", " \n", " cake\n", "
\n", " +19.781\n", " \n", " fruitcake\n", "
\n", " +19.179\n", " \n", " pocky\n", "
\n", " +18.776\n", " \n", " biscotti\n", "
\n", " +16.200\n", " \n", " breadsticks\n", "
\n", " +15.999\n", " \n", " oreos\n", "
\n", " +15.511\n", " \n", " pizza\n", "
\n", " +15.289\n", " \n", " bread\n", "
\n", " +15.138\n", " \n", " baklava\n", "
\n", " +14.979\n", " \n", " cakes\n", "
\n", " +14.884\n", " \n", " wafers\n", "
\n", " +14.655\n", " \n", " wafer\n", "
\n", " +13.962\n", " \n", " mallomars\n", "
\n", " +12.839\n", " \n", " crust\n", "
\n", " +11.086\n", " \n", " shells\n", "
\n", " +11.055\n", " \n", " oreo\n", "
\n", " +10.833\n", " \n", " wraps\n", "
\n", " … 17490 more positive …\n", "
\n", " … 32491 more negative …\n", "
\n", " -14.362\n", " \n", " mix\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", " \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", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "
\n", " Weight?\n", " Feature
\n", " +34.379\n", " \n", " cereal\n", "
\n", " +30.655\n", " \n", " bars\n", "
\n", " +29.471\n", " \n", " bar\n", "
\n", " +29.235\n", " \n", " oatmeal\n", "
\n", " +28.824\n", " \n", " granola\n", "
\n", " +22.415\n", " \n", " breakfast\n", "
\n", " +21.553\n", " \n", " cereals\n", "
\n", " +20.874\n", " \n", " tarts\n", "
\n", " +20.341\n", " \n", " pop tarts\n", "
\n", " +18.485\n", " \n", " puffed\n", "
\n", " +18.082\n", " \n", " oats\n", "
\n", " +17.246\n", " \n", " blueberry\n", "
\n", " +16.701\n", " \n", " pop\n", "
\n", " +16.352\n", " \n", " these bars\n", "
\n", " +16.051\n", " \n", " this cereal\n", "
\n", " +15.865\n", " \n", " frosted\n", "
\n", " +15.545\n", " \n", " toaster\n", "
\n", " +13.876\n", " \n", " filling\n", "
\n", " +13.804\n", " \n", " this bar\n", "
\n", " … 17193 more positive …\n", "
\n", " … 32788 more negative …\n", "
\n", " -15.753\n", " \n", " tea\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", " \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", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "
\n", " Weight?\n", " Feature
\n", " +51.312\n", " \n", " licorice\n", "
\n", " +47.510\n", " \n", " gum\n", "
\n", " +37.105\n", " \n", " mints\n", "
\n", " +34.616\n", " \n", " candy\n", "
\n", " +32.241\n", " \n", " altoids\n", "
\n", " +29.186\n", " \n", " haribo\n", "
\n", " +27.022\n", " \n", " candies\n", "
\n", " +25.932\n", " \n", " chocolate\n", "
\n", " +24.702\n", " \n", " bears\n", "
\n", " +21.744\n", " \n", " gummi\n", "
\n", " +21.503\n", " \n", " gummy\n", "
\n", " +19.630\n", " \n", " bar\n", "
\n", " +19.497\n", " \n", " gummies\n", "
\n", " +19.185\n", " \n", " chocolates\n", "
\n", " +18.243\n", " \n", " liquorice\n", "
\n", " +18.102\n", " \n", " jelly\n", "
\n", " +15.880\n", " \n", " this gum\n", "
\n", " +15.691\n", " \n", " belly\n", "
\n", " … 19000 more positive …\n", "
\n", " … 30981 more negative …\n", "
\n", " -22.117\n", " \n", " tea\n", "
\n", " -24.629\n", " \n", " cookies\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", " \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", " \n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "
\n", " Weight?\n", " Feature
\n", " +17.945\n", " \n", " bread\n", "
\n", " +14.719\n", " \n", " cake\n", "
\n", " +13.839\n", " \n", " vanilla\n", "
\n", " +13.691\n", " \n", " almonds\n", "
\n", " +13.063\n", " \n", " syrup\n", "
\n", " +13.024\n", " \n", " baking\n", "
\n", " +12.991\n", " \n", " mincemeat\n", "
\n", " +12.832\n", " \n", " mix\n", "
\n", " +12.764\n", " \n", " flour\n", "
\n", " +12.728\n", " \n", " muffins\n", "
\n", " +12.081\n", " \n", " cocoa\n", "
\n", " +12.003\n", " \n", " sugar\n", "
\n", " +11.901\n", " \n", " nuts\n", "
\n", " +11.820\n", " \n", " peanuts\n", "
\n", " +11.633\n", " \n", " spoon\n", "
\n", " +11.012\n", " \n", " pancakes\n", "
\n", " +10.687\n", " \n", " salt\n", "
\n", " +10.680\n", " \n", " wasabi\n", "
\n", " +10.302\n", " \n", " splenda\n", "
\n", " +10.260\n", " \n", " chocolate\n", "
\n", " … 16830 more positive …\n", "
\n", " … 33151 more negative …\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", " \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", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "
\n", " Weight?\n", " Feature
\n", " +28.332\n", " \n", " cheese\n", "
\n", " +18.710\n", " \n", " this cheese\n", "
\n", " +13.140\n", " \n", " milk\n", "
\n", " +13.119\n", " \n", " cheeses\n", "
\n", " +11.565\n", " \n", " coffee\n", "
\n", " +11.039\n", " \n", " creamer\n", "
\n", " +9.343\n", " \n", " cream\n", "
\n", " +9.145\n", " \n", " creamy\n", "
\n", " +8.321\n", " \n", " blue\n", "
\n", " +7.280\n", " \n", " cheese is\n", "
\n", " +7.036\n", " \n", " butter\n", "
\n", " +6.992\n", " \n", " egg\n", "
\n", " +6.720\n", " \n", " creamers\n", "
\n", " +6.423\n", " \n", " lurpak\n", "
\n", " +6.325\n", " \n", " igourmet\n", "
\n", " +5.795\n", " \n", " it\n", "
\n", " +5.710\n", " \n", " ice\n", "
\n", " +5.665\n", " \n", " coffee mate\n", "
\n", " +5.339\n", " \n", " blue cheese\n", "
\n", " … 8247 more positive …\n", "
\n", " … 41734 more negative …\n", "
\n", " -7.579\n", " \n", " these\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", " \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", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "
\n", " Weight?\n", " Feature
\n", " +45.917\n", " \n", " plant\n", "
\n", " +42.770\n", " \n", " tree\n", "
\n", " +38.306\n", " \n", " bonsai\n", "
\n", " +32.808\n", " \n", " plants\n", "
\n", " +31.475\n", " \n", " herbs\n", "
\n", " +29.085\n", " \n", " grow\n", "
\n", " +25.124\n", " \n", " aerogarden\n", "
\n", " +24.322\n", " \n", " flowers\n", "
\n", " +22.405\n", " \n", " garden\n", "
\n", " +22.146\n", " \n", " growing\n", "
\n", " +19.220\n", " \n", " leaves\n", "
\n", " +18.608\n", " \n", " kit\n", "
\n", " +18.017\n", " \n", " the plant\n", "
\n", " +15.479\n", " \n", " the tree\n", "
\n", " +14.450\n", " \n", " seed\n", "
\n", " +14.393\n", " \n", " pods\n", "
\n", " +13.557\n", " \n", " basil\n", "
\n", " +13.258\n", " \n", " weeks\n", "
\n", " +12.672\n", " \n", " lettuce\n", "
\n", " … 10332 more positive …\n", "
\n", " … 39649 more negative …\n", "
\n", " -14.176\n", " \n", " taste\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", " \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", " \n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "
\n", " Weight?\n", " Feature
\n", " +47.095\n", " \n", " tea\n", "
\n", " +29.819\n", " \n", " candy\n", "
\n", " +27.930\n", " \n", " basket\n", "
\n", " +23.935\n", " \n", " sushi\n", "
\n", " +21.573\n", " \n", " the tea\n", "
\n", " +18.165\n", " \n", " gift\n", "
\n", " +16.264\n", " \n", " chocolates\n", "
\n", " +15.424\n", " \n", " set\n", "
\n", " +14.591\n", " \n", " flowering\n", "
\n", " +13.823\n", " \n", " teapot\n", "
\n", " +13.475\n", " \n", " this gift\n", "
\n", " +13.392\n", " \n", " kit\n", "
\n", " +13.051\n", " \n", " pot\n", "
\n", " +12.905\n", " \n", " candies\n", "
\n", " +12.401\n", " \n", " teas\n", "
\n", " +12.350\n", " \n", " bamboo\n", "
\n", " +12.204\n", " \n", " coffee\n", "
\n", " +11.800\n", " \n", " hot\n", "
\n", " +11.167\n", " \n", " flower\n", "
\n", " +10.973\n", " \n", " fun\n", "
\n", " … 13033 more positive …\n", "
\n", " … 36948 more negative …\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", " \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", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "
\n", " Weight?\n", " Feature
\n", " +21.926\n", " \n", " popcorn\n", "
\n", " +21.711\n", " \n", " salt\n", "
\n", " +21.467\n", " \n", " beans\n", "
\n", " +20.799\n", " \n", " seasoning\n", "
\n", " +15.792\n", " \n", " peppercorns\n", "
\n", " +15.629\n", " \n", " cinnamon\n", "
\n", " +15.521\n", " \n", " vanilla\n", "
\n", " +14.036\n", " \n", " spice\n", "
\n", " +14.001\n", " \n", " pepper\n", "
\n", " +13.502\n", " \n", " vanilla beans\n", "
\n", " +13.081\n", " \n", " chili\n", "
\n", " +12.501\n", " \n", " ginger\n", "
\n", " +12.035\n", " \n", " spices\n", "
\n", " +11.083\n", " \n", " seeds\n", "
\n", " +10.727\n", " \n", " curry\n", "
\n", " +10.309\n", " \n", " rub\n", "
\n", " +10.208\n", " \n", " powder\n", "
\n", " +10.129\n", " \n", " this salt\n", "
\n", " +10.093\n", " \n", " used\n", "
\n", " … 14181 more positive …\n", "
\n", " … 35800 more negative …\n", "
\n", " -11.357\n", " \n", " chocolate\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", " \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", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "
\n", " Weight?\n", " Feature
\n", " +32.038\n", " \n", " jerky\n", "
\n", " +21.365\n", " \n", " slim\n", "
\n", " +14.512\n", " \n", " snack\n", "
\n", " +14.437\n", " \n", " sausage\n", "
\n", " +12.727\n", " \n", " sticks\n", "
\n", " +12.551\n", " \n", " jims\n", "
\n", " +12.551\n", " \n", " slim jims\n", "
\n", " +12.185\n", " \n", " meat\n", "
\n", " +11.911\n", " \n", " chicken\n", "
\n", " +11.400\n", " \n", " salty\n", "
\n", " +10.772\n", " \n", " slim jim\n", "
\n", " +10.697\n", " \n", " jim\n", "
\n", " +10.616\n", " \n", " bacon\n", "
\n", " +10.613\n", " \n", " salami\n", "
\n", " +10.374\n", " \n", " sardines\n", "
\n", " +10.177\n", " \n", " beef\n", "
\n", " +9.305\n", " \n", " pate\n", "
\n", " +9.155\n", " \n", " teriyaki\n", "
\n", " +8.716\n", " \n", " duck\n", "
\n", " … 11580 more positive …\n", "
\n", " … 38401 more negative …\n", "
\n", " -9.532\n", " \n", " chocolate\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", " \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", " \n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "
\n", " Weight?\n", " Feature
\n", " +44.230\n", " \n", " sardines\n", "
\n", " +28.676\n", " \n", " jerky\n", "
\n", " +23.535\n", " \n", " tuna\n", "
\n", " +18.209\n", " \n", " anchovies\n", "
\n", " +16.566\n", " \n", " lobster\n", "
\n", " +14.608\n", " \n", " salmon\n", "
\n", " +13.983\n", " \n", " meat\n", "
\n", " +13.665\n", " \n", " crab\n", "
\n", " +13.569\n", " \n", " fish\n", "
\n", " +13.443\n", " \n", " clams\n", "
\n", " +13.291\n", " \n", " smoked\n", "
\n", " +12.194\n", " \n", " kippers\n", "
\n", " +12.156\n", " \n", " beef\n", "
\n", " +11.561\n", " \n", " oysters\n", "
\n", " +11.532\n", " \n", " can\n", "
\n", " +11.367\n", " \n", " packed\n", "
\n", " +10.932\n", " \n", " these sardines\n", "
\n", " +10.344\n", " \n", " canned\n", "
\n", " +10.219\n", " \n", " bones\n", "
\n", " +10.192\n", " \n", " prince\n", "
\n", " … 12081 more positive …\n", "
\n", " … 37900 more negative …\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", " \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", " \n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "
\n", " Weight?\n", " Feature
\n", " +30.934\n", " \n", " soup\n", "
\n", " +30.484\n", " \n", " noodles\n", "
\n", " +22.171\n", " \n", " pasta\n", "
\n", " +20.552\n", " \n", " olives\n", "
\n", " +20.147\n", " \n", " sauce\n", "
\n", " +19.369\n", " \n", " seasoning\n", "
\n", " +17.525\n", " \n", " splenda\n", "
\n", " +17.464\n", " \n", " mac\n", "
\n", " +17.173\n", " \n", " kraft\n", "
\n", " +16.808\n", " \n", " cake\n", "
\n", " +16.366\n", " \n", " beans\n", "
\n", " +16.338\n", " \n", " dressing\n", "
\n", " +15.891\n", " \n", " this soup\n", "
\n", " … 23590 more positive …\n", "
\n", " … 26391 more negative …\n", "
\n", " -15.874\n", " \n", " cereal\n", "
\n", " -15.931\n", " \n", " fruit\n", "
\n", " -16.100\n", " \n", " licorice\n", "
\n", " -17.908\n", " \n", " bar\n", "
\n", " -18.101\n", " \n", " this tea\n", "
\n", " -23.085\n", " \n", " tea\n", "
\n", " -26.895\n", " \n", " jerky\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", " \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", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "
\n", " Weight?\n", " Feature
\n", " +43.953\n", " \n", " cherries\n", "
\n", " +33.261\n", " \n", " pumpkin\n", "
\n", " +27.775\n", " \n", " dried\n", "
\n", " +21.389\n", " \n", " seaweed\n", "
\n", " +16.916\n", " \n", " fruit\n", "
\n", " +16.438\n", " \n", " dried cherries\n", "
\n", " +14.810\n", " \n", " tart\n", "
\n", " +12.109\n", " \n", " canned\n", "
\n", " +11.898\n", " \n", " these cherries\n", "
\n", " +11.486\n", " \n", " cans\n", "
\n", " +11.283\n", " \n", " dented\n", "
\n", " +9.935\n", " \n", " snack\n", "
\n", " +9.902\n", " \n", " truffles\n", "
\n", " +9.443\n", " \n", " traverse\n", "
\n", " +9.200\n", " \n", " plums\n", "
\n", " +9.066\n", " \n", " mushrooms\n", "
\n", " +9.056\n", " \n", " cherries are\n", "
\n", " +8.943\n", " \n", " canned pumpkin\n", "
\n", " +8.856\n", " \n", " apricots\n", "
\n", " … 11622 more positive …\n", "
\n", " … 38359 more negative …\n", "
\n", " -8.532\n", " \n", " chocolate\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", " \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", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "
\n", " Weight?\n", " Feature
\n", " +30.654\n", " \n", " sauce\n", "
\n", " +13.080\n", " \n", " salsa\n", "
\n", " +12.011\n", " \n", " paste\n", "
\n", " +11.276\n", " \n", " marinade\n", "
\n", " +11.229\n", " \n", " hot\n", "
\n", " +11.223\n", " \n", " sauces\n", "
\n", " +11.131\n", " \n", " use\n", "
\n", " +10.508\n", " \n", " marmite\n", "
\n", " +10.208\n", " \n", " bottle\n", "
\n", " +9.444\n", " \n", " gravy\n", "
\n", " +8.884\n", " \n", " this sauce\n", "
\n", " +8.149\n", " \n", " chicken\n", "
\n", " +8.089\n", " \n", " thai\n", "
\n", " +7.877\n", " \n", " use it\n", "
\n", " +7.637\n", " \n", " tapatio\n", "
\n", " +6.823\n", " \n", " spicy\n", "
\n", " +6.664\n", " \n", " bottles\n", "
\n", " +6.491\n", " \n", " curry\n", "
\n", " … 10636 more positive …\n", "
\n", " … 39345 more negative …\n", "
\n", " -8.777\n", " \n", " they\n", "
\n", " -10.002\n", " \n", " these\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", " \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", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "
\n", " Weight?\n", " Feature
\n", " +38.187\n", " \n", " popcorn\n", "
\n", " +34.106\n", " \n", " chips\n", "
\n", " +29.419\n", " \n", " pretzels\n", "
\n", " +27.025\n", " \n", " jerky\n", "
\n", " +24.860\n", " \n", " crackers\n", "
\n", " +22.564\n", " \n", " cracker\n", "
\n", " +22.472\n", " \n", " this popcorn\n", "
\n", " +21.880\n", " \n", " cookies\n", "
\n", " +18.115\n", " \n", " bloks\n", "
\n", " +17.453\n", " \n", " cookie\n", "
\n", " +17.322\n", " \n", " rice cakes\n", "
\n", " +16.863\n", " \n", " chip\n", "
\n", " +16.522\n", " \n", " pretzel\n", "
\n", " +16.463\n", " \n", " raisins\n", "
\n", " +16.040\n", " \n", " hummus\n", "
\n", " +15.033\n", " \n", " sahale\n", "
\n", " +15.015\n", " \n", " snack\n", "
\n", " +14.812\n", " \n", " granola\n", "
\n", " … 20111 more positive …\n", "
\n", " … 29870 more negative …\n", "
\n", " -15.215\n", " \n", " beans\n", "
\n", " -22.005\n", " \n", " tea\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", "\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" ], "text/plain": [ "" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eli5.show_weights(estimator=tfidf_logit_pipeline.named_steps['logit'],\n", " vec=tfidf_logit_pipeline.named_steps['tf_idf'])" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "('While in Hungary we were given a recipe for Hungarian Goulash. It needs sweet paprika. This was terrific in that dish and others. I will purchase it again when I need more.',\n", " 'herbs')" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_texts[0], y_train[0]" ] }, { "cell_type": "code", "execution_count": 30, "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", " y=baby food\n", " \n", "\n", "\n", " \n", " (probability 0.000, score -2.327)\n", "\n", "top features\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", " Contribution?\n", " Feature
\n", " -0.697\n", " \n", " Highlighted in text (sum)\n", "
\n", " -1.630\n", " \n", " <BIAS>\n", "
\n", "\n", " \n", "\n", "\n", "\n", "

\n", " while in hungary we were given a recipe for hungarian goulash. it needs sweet paprika. this was terrific in that dish and others. i will purchase it again when i need more.\n", "

\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "

\n", " \n", " \n", " y=beverages\n", " \n", "\n", "\n", " \n", " (probability 0.000, score -1.968)\n", "\n", "top features\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", " Contribution?\n", " Feature
\n", " +2.623\n", " \n", " <BIAS>\n", "
\n", " -4.591\n", " \n", " Highlighted in text (sum)\n", "
\n", "\n", " \n", "\n", "\n", "\n", "

\n", " while in hungary we were given a recipe for hungarian goulash. it needs sweet paprika. this was terrific in that dish and others. i will purchase it again when i need more.\n", "

\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "

\n", " \n", " \n", " y=breads bakery\n", " \n", "\n", "\n", " \n", " (probability 0.001, score 0.055)\n", "\n", "top features\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", " Contribution?\n", " Feature
\n", " +0.835\n", " \n", " <BIAS>\n", "
\n", " -0.780\n", " \n", " Highlighted in text (sum)\n", "
\n", "\n", " \n", "\n", "\n", "\n", "

\n", " while in hungary we were given a recipe for hungarian goulash. it needs sweet paprika. this was terrific in that dish and others. i will purchase it again when i need more.\n", "

\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "

\n", " \n", " \n", " y=breakfast foods\n", " \n", "\n", "\n", " \n", " (probability 0.000, score -1.159)\n", "\n", "top features\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", " Contribution?\n", " Feature
\n", " +0.279\n", " \n", " <BIAS>\n", "
\n", " -1.438\n", " \n", " Highlighted in text (sum)\n", "
\n", "\n", " \n", "\n", "\n", "\n", "

\n", " while in hungary we were given a recipe for hungarian goulash. it needs sweet paprika. this was terrific in that dish and others. i will purchase it again when i need more.\n", "

\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "

\n", " \n", " \n", " y=candy chocolate\n", " \n", "\n", "\n", " \n", " (probability 0.001, score 0.212)\n", "\n", "top features\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", " Contribution?\n", " Feature
\n", " +1.973\n", " \n", " <BIAS>\n", "
\n", " -1.760\n", " \n", " Highlighted in text (sum)\n", "
\n", "\n", " \n", "\n", "\n", "\n", "

\n", " while in hungary we were given a recipe for hungarian goulash. it needs sweet paprika. this was terrific in that dish and others. i will purchase it again when i need more.\n", "

\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "

\n", " \n", " \n", " y=cooking baking supplies\n", " \n", "\n", "\n", " \n", " (probability 0.004, score 1.170)\n", "\n", "top features\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", " Contribution?\n", " Feature
\n", " +0.860\n", " \n", " <BIAS>\n", "
\n", " +0.310\n", " \n", " Highlighted in text (sum)\n", "
\n", "\n", " \n", "\n", "\n", "\n", "

\n", " while in hungary we were given a recipe for hungarian goulash. it needs sweet paprika. this was terrific in that dish and others. i will purchase it again when i need more.\n", "

\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "

\n", " \n", " \n", " y=dairy eggs\n", " \n", "\n", "\n", " \n", " (probability 0.001, score -0.053)\n", "\n", "top features\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", " Contribution?\n", " Feature
\n", " +0.437\n", " \n", " Highlighted in text (sum)\n", "
\n", " -0.491\n", " \n", " <BIAS>\n", "
\n", "\n", " \n", "\n", "\n", "\n", "

\n", " while in hungary we were given a recipe for hungarian goulash. it needs sweet paprika. this was terrific in that dish and others. i will purchase it again when i need more.\n", "

\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "

\n", " \n", " \n", " y=fresh flowers live indoor plants\n", " \n", "\n", "\n", " \n", " (probability 0.000, score -6.405)\n", "\n", "top features\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", " Contribution?\n", " Feature
\n", " -0.509\n", " \n", " Highlighted in text (sum)\n", "
\n", " -5.897\n", " \n", " <BIAS>\n", "
\n", "\n", " \n", "\n", "\n", "\n", "

\n", " while in hungary we were given a recipe for hungarian goulash. it needs sweet paprika. this was terrific in that dish and others. i will purchase it again when i need more.\n", "

\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "

\n", " \n", " \n", " y=gourmet gifts\n", " \n", "\n", "\n", " \n", " (probability 0.000, score -2.366)\n", "\n", "top features\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", " Contribution?\n", " Feature
\n", " -0.537\n", " \n", " <BIAS>\n", "
\n", " -1.828\n", " \n", " Highlighted in text (sum)\n", "
\n", "\n", " \n", "\n", "\n", "\n", "

\n", " while in hungary we were given a recipe for hungarian goulash. it needs sweet paprika. this was terrific in that dish and others. i will purchase it again when i need more.\n", "

\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "

\n", " \n", " \n", " y=herbs\n", " \n", "\n", "\n", " \n", " (probability 0.154, score 4.945)\n", "\n", "top features\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", " Contribution?\n", " Feature
\n", " +4.215\n", " \n", " Highlighted in text (sum)\n", "
\n", " +0.730\n", " \n", " <BIAS>\n", "
\n", "\n", " \n", "\n", "\n", "\n", "

\n", " while in hungary we were given a recipe for hungarian goulash. it needs sweet paprika. this was terrific in that dish and others. i will purchase it again when i need more.\n", "

\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "

\n", " \n", " \n", " y=meat poultry\n", " \n", "\n", "\n", " \n", " (probability 0.004, score 1.199)\n", "\n", "top features\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", " Contribution?\n", " Feature
\n", " +1.214\n", " \n", " Highlighted in text (sum)\n", "
\n", " -0.015\n", " \n", " <BIAS>\n", "
\n", "\n", " \n", "\n", "\n", "\n", "

\n", " while in hungary we were given a recipe for hungarian goulash. it needs sweet paprika. this was terrific in that dish and others. i will purchase it again when i need more.\n", "

\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "

\n", " \n", " \n", " y=meat seafood\n", " \n", "\n", "\n", " \n", " (probability 0.000, score -0.847)\n", "\n", "top features\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", " Contribution?\n", " Feature
\n", " +0.606\n", " \n", " Highlighted in text (sum)\n", "
\n", " -1.453\n", " \n", " <BIAS>\n", "
\n", "\n", " \n", "\n", "\n", "\n", "

\n", " while in hungary we were given a recipe for hungarian goulash. it needs sweet paprika. this was terrific in that dish and others. i will purchase it again when i need more.\n", "

\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "

\n", " \n", " \n", " y=pantry staples\n", " \n", "\n", "\n", " \n", " (probability 0.820, score 6.619)\n", "\n", "top features\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", " Contribution?\n", " Feature
\n", " +3.366\n", " \n", " Highlighted in text (sum)\n", "
\n", " +3.253\n", " \n", " <BIAS>\n", "
\n", "\n", " \n", "\n", "\n", "\n", "

\n", " while in hungary we were given a recipe for hungarian goulash. it needs sweet paprika. this was terrific in that dish and others. i will purchase it again when i need more.\n", "

\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "

\n", " \n", " \n", " y=produce\n", " \n", "\n", "\n", " \n", " (probability 0.013, score 2.489)\n", "\n", "top features\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", " Contribution?\n", " Feature
\n", " +3.578\n", " \n", " Highlighted in text (sum)\n", "
\n", " -1.089\n", " \n", " <BIAS>\n", "
\n", "\n", " \n", "\n", "\n", "\n", "

\n", " while in hungary we were given a recipe for hungarian goulash. it needs sweet paprika. this was terrific in that dish and others. i will purchase it again when i need more.\n", "

\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "

\n", " \n", " \n", " y=sauces dips\n", " \n", "\n", "\n", " \n", " (probability 0.001, score -0.255)\n", "\n", "top features\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", " Contribution?\n", " Feature
\n", " +0.471\n", " \n", " Highlighted in text (sum)\n", "
\n", " -0.726\n", " \n", " <BIAS>\n", "
\n", "\n", " \n", "\n", "\n", "\n", "

\n", " while in hungary we were given a recipe for hungarian goulash. it needs sweet paprika. this was terrific in that dish and others. i will purchase it again when i need more.\n", "

\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "

\n", " \n", " \n", " y=snack food\n", " \n", "\n", "\n", " \n", " (probability 0.000, score -1.309)\n", "\n", "top features\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", " Contribution?\n", " Feature
\n", " +1.284\n", " \n", " <BIAS>\n", "
\n", " -2.593\n", " \n", " Highlighted in text (sum)\n", "
\n", "\n", " \n", "\n", "\n", "\n", "

\n", " while in hungary we were given a recipe for hungarian goulash. it needs sweet paprika. this was terrific in that dish and others. i will purchase it again when i need more.\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" ], "text/plain": [ "" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eli5.show_prediction(estimator=tfidf_logit_pipeline.named_steps['logit'],\n", " vec=tfidf_logit_pipeline.named_steps['tf_idf'],\n", " doc=train_texts[0])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 4. Hierarchical text classification" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we are going to predict categories 2 and 3 at the same time. It's not straightfoward how you make your category 3 predictions consistent with category 2 predictions. Example: if the model predicts \"breakfast foods\" as category 2, then it's obliged to predicts subcategories of \"breakfast foods\" as category 3, for instance, \"cereals\". But not \"spices seasonings\". Formally, it's called hierarchical text classification." ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [], "source": [ "# combine categories 2 and 3\n", "df['Cat2_Cat3'] = df['Cat2'] + '/' + df['Cat3']" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [], "source": [ "y_cat2_and_cat3 = df['Cat2_Cat3']" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0 herbs/spices seasonings\n", "1 breakfast foods/cereals\n", "2 breakfast foods/cereals\n", "3 breakfast foods/cereals\n", "4 breakfast foods/cereals\n", "Name: Cat2_Cat3, dtype: object" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_cat2_and_cat3.head()" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [], "source": [ "train_texts, valid_texts,y_train_cat2_and_cat3, y_valid_cat2_and_cat3 = \\\n", " train_test_split(texts, y_cat2_and_cat3, \n", " random_state=17,\n", " stratify=y_cat2_and_cat3, \n", " shuffle=True)" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "[Parallel(n_jobs=4)]: Using backend LokyBackend with 4 concurrent workers.\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 9.69 s, sys: 257 ms, total: 9.95 s\n", "Wall time: 5min 29s\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "[Parallel(n_jobs=4)]: Done 1 out of 1 | elapsed: 5.3min finished\n" ] }, { "data": { "text/plain": [ "Pipeline(memory=None,\n", " steps=[('tf_idf', TfidfVectorizer(analyzer='word', binary=False, decode_error='strict',\n", " dtype=, encoding='utf-8', input='content',\n", " lowercase=True, max_df=1.0, max_features=50000, min_df=2,\n", " ngram_range=(1, 2), norm='l2', preprocessor=None, smooth_idf=Tru... penalty='l2', random_state=17, solver='lbfgs',\n", " tol=0.0001, verbose=1, warm_start=False))])" ] }, "execution_count": 35, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%time\n", "tfidf_logit_pipeline.fit(train_texts, y_train_cat2_and_cat3)" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 2.52 s, sys: 36.2 ms, total: 2.56 s\n", "Wall time: 2.57 s\n" ] } ], "source": [ "%%time\n", "valid_pred_cat2_and_cat3 = tfidf_logit_pipeline.predict(valid_texts)" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [], "source": [ "cat2_pred = pd.Series(valid_pred_cat2_and_cat3).apply(lambda s: \n", " s.split('/')[0])\n", "cat3_pred = pd.Series(valid_pred_cat2_and_cat3).apply(lambda s: \n", " s.split('/')[1])" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [], "source": [ "y_valid_cat2 = pd.Series(y_valid_cat2_and_cat3).apply(lambda s: \n", " s.split('/')[0])\n", "y_valid_cat3 = pd.Series(y_valid_cat2_and_cat3).apply(lambda s: \n", " s.split('/')[1])" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.6370619299087854" ] }, "execution_count": 39, "metadata": {}, "output_type": "execute_result" } ], "source": [ "accuracy_score(y_valid_cat3, cat3_pred)" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.758801408225316" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "accuracy_score(y_valid_cat2, cat2_pred)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Links:\n", " - Machine learning library [Scikit-learn](https://scikit-learn.org/stable/index.html) (a.k.a. sklearn)\n", " - Open ML course [mlcourse.ai](https://mlcourse.ai), the same as a [Kaggle Dataset](https://www.kaggle.com/kashnitsky/mlcourse) \n", " - Kernels on [logistic regression](https://www.kaggle.com/kashnitsky/topic-4-linear-models-part-2-classification) and its applications to [text classification](https://www.kaggle.com/kashnitsky/topic-4-linear-models-part-4-more-of-logit), also a [Kernel](https://www.kaggle.com/kashnitsky/topic-6-feature-engineering-and-feature-selection) on feature engineering and feature selection\n", " - [Kaggle Kernel](https://www.kaggle.com/abhishek/approaching-almost-any-nlp-problem-on-kaggle) \"Approaching (Almost) Any NLP Problem on Kaggle\"\n", " - [ELI5](https://github.com/TeamHG-Memex/eli5) to explain model predictions" ] } ], "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.6.0" } }, "nbformat": 4, "nbformat_minor": 2 }