nlp-lab/Carsten_Solutions/Task 2 - Carsten Draschner.ipynb
2018-05-13 19:40:03 +02:00

1381 lines
168 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"import all usefull tool"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Populating the interactive namespace from numpy and matplotlib\n"
]
}
],
"source": [
"%pylab inline\n",
"\n",
"import pandas as pd\n",
"import numpy as np\n",
"import itertools\n",
"from sklearn.feature_extraction.text import CountVectorizer, TfidfVectorizer, HashingVectorizer\n",
"from sklearn.model_selection import train_test_split\n",
"from sklearn.linear_model import PassiveAggressiveClassifier\n",
"from sklearn.naive_bayes import MultinomialNB\n",
"from sklearn import metrics\n",
"import matplotlib.pyplot as plt"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Read in Datasets"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Load Dataset 1 - fake_or_real_news.csv\n",
"Read in File fake_or_real_news.csv"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"df = pd.read_csv('/Users/Carsten/GitRepos/NLP-LAB/Carsten_Solutions/sets/fact checking/fake_or_real_news.csv')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"ignores first column"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"df = df.set_index('Unnamed: 0')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"quick view at the data"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>title</th>\n",
" <th>text</th>\n",
" <th>label</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Unnamed: 0</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>8476</th>\n",
" <td>You Can Smell Hillarys Fear</td>\n",
" <td>Daniel Greenfield, a Shillman Journalism Fello...</td>\n",
" <td>FAKE</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10294</th>\n",
" <td>Watch The Exact Moment Paul Ryan Committed Pol...</td>\n",
" <td>Google Pinterest Digg Linkedin Reddit Stumbleu...</td>\n",
" <td>FAKE</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3608</th>\n",
" <td>Kerry to go to Paris in gesture of sympathy</td>\n",
" <td>U.S. Secretary of State John F. Kerry said Mon...</td>\n",
" <td>REAL</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10142</th>\n",
" <td>Bernie supporters on Twitter erupt in anger ag...</td>\n",
" <td>— Kaydee King (@KaydeeKing) November 9, 2016 T...</td>\n",
" <td>FAKE</td>\n",
" </tr>\n",
" <tr>\n",
" <th>875</th>\n",
" <td>The Battle of New York: Why This Primary Matters</td>\n",
" <td>It's primary day in New York and front-runners...</td>\n",
" <td>REAL</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" title \\\n",
"Unnamed: 0 \n",
"8476 You Can Smell Hillarys Fear \n",
"10294 Watch The Exact Moment Paul Ryan Committed Pol... \n",
"3608 Kerry to go to Paris in gesture of sympathy \n",
"10142 Bernie supporters on Twitter erupt in anger ag... \n",
"875 The Battle of New York: Why This Primary Matters \n",
"\n",
" text label \n",
"Unnamed: 0 \n",
"8476 Daniel Greenfield, a Shillman Journalism Fello... FAKE \n",
"10294 Google Pinterest Digg Linkedin Reddit Stumbleu... FAKE \n",
"3608 U.S. Secretary of State John F. Kerry said Mon... REAL \n",
"10142 — Kaydee King (@KaydeeKing) November 9, 2016 T... FAKE \n",
"875 It's primary day in New York and front-runners... REAL "
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"store label from tob row of the table"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"#store label before dropping it\n",
"bin_y = df.label\n",
"#y.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"cut of label column to get an unlabled array"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"df = df.drop('label', axis=1)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"from skikit learn the function: train_test_split\n",
"* in the dataframe get text column by df['text']\n",
"* use stored y label df\n",
"* use seed 42\n",
"* determine split size: in this case 0.33"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [],
"source": [
"bin_X_train, bin_X_test, bin_y_train, bin_y_test = train_test_split(df['text'], bin_y, test_size=0.25, random_state=4222)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Load Dataset 2 - liar_dataset.zip\n",
"Read in File liar_dataset.zip"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [],
"source": [
"#training data file\n",
"df = pd.read_csv('/Users/Carsten/GitRepos/NLP-LAB/Carsten_Solutions/sets/fact checking/train.tsv', delimiter=\"\\t\", header=None, usecols=[1,2], names=['y', 'claim'])"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>y</th>\n",
" <th>claim</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>false</td>\n",
" <td>Says the Annies List political group supports ...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>half-true</td>\n",
" <td>When did the decline of coal start? It started...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>mostly-true</td>\n",
" <td>Hillary Clinton agrees with John McCain \"by vo...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>false</td>\n",
" <td>Health care reform legislation is likely to ma...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>half-true</td>\n",
" <td>The economic turnaround started at the end of ...</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" y claim\n",
"0 false Says the Annies List political group supports ...\n",
"1 half-true When did the decline of coal start? It started...\n",
"2 mostly-true Hillary Clinton agrees with John McCain \"by vo...\n",
"3 false Health care reform legislation is likely to ma...\n",
"4 half-true The economic turnaround started at the end of ..."
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.head()"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"mul_X_train = df.claim\n",
"mul_y_train = df.y"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [],
"source": [
"#test data file\n",
"df = pd.read_csv('/Users/Carsten/GitRepos/NLP-LAB/Carsten_Solutions/sets/fact checking/test.tsv', delimiter=\"\\t\", header=None, usecols=[1,2], names=['y', 'claim'])"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>y</th>\n",
" <th>claim</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>true</td>\n",
" <td>Building a wall on the U.S.-Mexico border will...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>false</td>\n",
" <td>Wisconsin is on pace to double the number of l...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>false</td>\n",
" <td>Says John McCain has done nothing to help the ...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>half-true</td>\n",
" <td>Suzanne Bonamici supports a plan that will cut...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>pants-fire</td>\n",
" <td>When asked by a reporter whether hes at the ce...</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" y claim\n",
"0 true Building a wall on the U.S.-Mexico border will...\n",
"1 false Wisconsin is on pace to double the number of l...\n",
"2 false Says John McCain has done nothing to help the ...\n",
"3 half-true Suzanne Bonamici supports a plan that will cut...\n",
"4 pants-fire When asked by a reporter whether hes at the ce..."
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.head()"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"mul_X_test = df.claim\n",
"mul_y_test = df.y"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"#test data file\n",
"df = pd.read_csv('/Users/Carsten/GitRepos/NLP-LAB/Carsten_Solutions/sets/fact checking/valid.tsv', delimiter=\"\\t\", header=None, usecols=[1,2], names=['y', 'claim'])"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"mul_X_valid = df.claim\n",
"mul_y_valid = df.y"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<class 'pandas.core.series.Series'>\n"
]
}
],
"source": [
"print(type(mul_X_valid))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Generate Dataset 3\n",
"* using code from Diego by copy paste with some small modifications\n",
"* thanks for distributing this code @diego ;)"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"-- fake news\n",
"Index(['y', 'claim'], dtype='object')\n",
"3171\n",
"3164\n",
"6335\n",
"-- liar liar\n",
"Index(['y', 'claim'], dtype='object')\n",
"{'mostly-true', 'pants-fire', 'true', 'half-true', 'false', 'barely-true'} 10240\n",
"1676\n",
"1995\n",
"{'true', 'false'} 3671\n",
"false 5159\n",
"true 4847\n",
"Name: y, dtype: int64\n",
"done\n"
]
}
],
"source": [
"'''import random\n",
"import sys\n",
"import pandas as pd\n",
"import numpy as np\n",
"from sklearn.cross_validation import train_test_split\n",
"\n",
"ds1 = sys.argv[1]\n",
"ds2 = sys.argv[2]'''\n",
"\n",
"try:\n",
" print('-- fake news')\n",
" df1 = pd.read_csv('/Users/Carsten/GitRepos/NLP-LAB/Carsten_Solutions/sets/fact checking/fake_or_real_news.csv', sep=',', usecols=['title','text','label'])\n",
" df1['claim'] = df1[['title', 'text']].apply(lambda x: '. '.join(x), axis=1)\n",
" del df1['title']\n",
" del df1['text']\n",
" df1.rename(index=str, columns={'label': 'y'}, inplace=True)\n",
" print(df1.keys())\n",
" print(len(df1[df1['y']=='REAL']))\n",
" print(len(df1[df1['y']=='FAKE']))\n",
" df1['y'] = np.where(df1['y'] == 'FAKE', 'false', 'true')\n",
" print(len(df1))\n",
"\n",
" print('-- liar liar')\n",
" df2 = pd.read_csv('/Users/Carsten/GitRepos/NLP-LAB/Carsten_Solutions/sets/fact checking/train.tsv', sep='\\t', header=None, usecols=[1,2], names=['y', 'claim'])\n",
" print(df2.keys())\n",
" print(set(df2.y), len(df2))\n",
" print(len(df2[df2['y'] == 'true']))\n",
" print(len(df2[df2['y'] == 'false']))\n",
" df2=df2[(df2['y'] == 'true') | (df2['y'] == 'false')]\n",
" print(set(df2.y), len(df2))\n",
"\n",
" df3=pd.concat([df1, df2], ignore_index=True)\n",
"\n",
" print(df3['y'].value_counts())\n",
" print('done')\n",
" concat_X_train, concat_X_test, concat_y_train, concat_y_test = train_test_split(df3['claim'], df3['y'], test_size=0.25, random_state=4222)\n",
" \n",
" \n",
"except Exception as e:\n",
" print(e)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Vectorizer Classifiers\n",
"* tfids removes words in pregenerating the vectors by evaluating if this word appears more than 70% often in all articles\n",
"* an immense naive approach would be to store a set of the over all occuring word in all the texts and for each text determining how often this word occurs.\n",
"* also testing some min df thresholds as lower bound for regarded occurences"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Generate Vectorizer on Binary Classes"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [],
"source": [
"bin_count_vectorizer = CountVectorizer(stop_words='english')\n",
"bin_count_train = bin_count_vectorizer.fit_transform(bin_X_train)\n",
"bin_count_test = bin_count_vectorizer.transform(bin_X_test)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [],
"source": [
"bin_tfidf_vectorizer = TfidfVectorizer(stop_words='english', max_df=0.7, min_df=0.0005)\n",
"bin_tfidf_train = bin_tfidf_vectorizer.fit_transform(bin_X_train)\n",
"bin_tfidf_test = bin_tfidf_vectorizer.transform(bin_X_test)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"a short look on the last 10 tokens for the vectors"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['zoomed',\n",
" 'zooming',\n",
" 'zor',\n",
" 'zucker',\n",
" 'zuckerberg',\n",
" 'zuesse',\n",
" 'zurich',\n",
" 'zwick',\n",
" 'état',\n",
" 'œthe']"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"bin_tfidf_vectorizer.get_feature_names()[-10:]"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['تنجح', 'حلب', 'عن', 'لم', 'ما', 'محاولات', 'من', 'هذا', 'والمرضى', 'ยงade']"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"bin_count_vectorizer.get_feature_names()[-10:]#[:10]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Generate Vectorizer on Multilabel Classes"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [],
"source": [
"mul_count_vectorizer = CountVectorizer(stop_words='english')\n",
"mul_count_train = mul_count_vectorizer.fit_transform(mul_X_train)\n",
"mul_count_test = mul_count_vectorizer.transform(mul_X_test)\n",
"mul_count_valid = mul_count_vectorizer.transform(mul_X_valid)"
]
},
{
"cell_type": "code",
"execution_count": 49,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"mul_tfidf_vectorizer = TfidfVectorizer(stop_words='english', max_df=0.7)#, min_df=0.0005)\n",
"mul_tfidf_train = mul_tfidf_vectorizer.fit_transform(mul_X_train)\n",
"mul_tfidf_test = mul_tfidf_vectorizer.transform(mul_X_test)\n",
"mul_tfidf_valid = mul_tfidf_vectorizer.transform(mul_X_valid)"
]
},
{
"cell_type": "code",
"execution_count": 50,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['zip',\n",
" 'zippo',\n",
" 'zombie',\n",
" 'zombies',\n",
" 'zone',\n",
" 'zones',\n",
" 'zoning',\n",
" 'zoo',\n",
" 'zuckerberg',\n",
" 'zuckerbergs']"
]
},
"execution_count": 50,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mul_tfidf_vectorizer.get_feature_names()[-10:]"
]
},
{
"cell_type": "code",
"execution_count": 51,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"['zip',\n",
" 'zippo',\n",
" 'zombie',\n",
" 'zombies',\n",
" 'zone',\n",
" 'zones',\n",
" 'zoning',\n",
" 'zoo',\n",
" 'zuckerberg',\n",
" 'zuckerbergs']"
]
},
"execution_count": 51,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mul_count_vectorizer.get_feature_names()[-10:]#[:10]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Confusion Matrix Code\n",
"copy paste by distributed notebook"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def plot_confusion_matrix(cm, classes,\n",
" normalize=False,\n",
" title='Confusion matrix',\n",
" cmap=plt.cm.Blues):\n",
" \"\"\"\n",
" See full source and example: \n",
" http://scikit-learn.org/stable/auto_examples/model_selection/plot_confusion_matrix.html\n",
" \n",
" This function prints and plots the confusion matrix.\n",
" Normalization can be applied by setting `normalize=True`.\n",
" \"\"\"\n",
" #added after jonas hint\n",
" fig_1,ax_1 = plt.subplots()\n",
" \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=45)\n",
" plt.yticks(tick_marks, classes)\n",
"\n",
" if normalize:\n",
" cm = cm.astype('float') / cm.sum(axis=1)[:, np.newaxis]\n",
" print(\"Normalized confusion matrix\")\n",
" else:\n",
" print('Confusion matrix, without normalization')\n",
"\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, cm[i, j],\n",
" horizontalalignment=\"center\",\n",
" color=\"white\" if cm[i, j] > thresh else \"black\")\n",
"\n",
" plt.tight_layout()\n",
" plt.ylabel('True label')\n",
" plt.xlabel('Predicted label')"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Configurations"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Configuration 1\n",
"* model a - train - [performance measures][0:4]\n",
"* model a - test - [performance measures][0:4]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"* model a = MultinomialNB\n",
" * with tfidf vectorizer* dataset 1\n",
" * in contrast to the notebook with count vect.\n",
" * with dataset 1: fake_or_real_news.csv\n",
" * ** Take care with seeds for example split train test data function**\n",
" "
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"clf = MultinomialNB()"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"accuracy: 0.914\n",
"Confusion matrix, without normalization\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x10b9b55f8>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"clf.fit(bin_tfidf_train, bin_y_train)\n",
"pred = clf.predict(bin_tfidf_train)\n",
"score = metrics.accuracy_score(bin_y_train, pred)\n",
"print(\"accuracy: %0.3f\" % score)\n",
"cm = metrics.confusion_matrix(bin_y_train, pred, labels=['FAKE', 'REAL'])\n",
"plot_confusion_matrix(cm, classes=['FAKE', 'REAL'])"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"accuracy: 0.872\n",
"Confusion matrix, without normalization\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x114164898>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"clf.fit(bin_tfidf_train, bin_y_train)\n",
"pred = clf.predict(bin_tfidf_test)\n",
"score = metrics.accuracy_score(bin_y_test, pred)\n",
"print(\"accuracy: %0.3f\" % score)\n",
"cm = metrics.confusion_matrix(bin_y_test, pred, labels=['FAKE', 'REAL'])\n",
"plot_confusion_matrix(cm, classes=['FAKE', 'REAL'])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Configuration 2\n",
"* model b - train - [performance measures]\n",
"* model b - validation - [performance measures]\n",
"* model b - test - [performance measures]"
]
},
{
"cell_type": "code",
"execution_count": 53,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"clf = MultinomialNB()"
]
},
{
"cell_type": "code",
"execution_count": 58,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"accuracy: 0.602\n",
"Confusion matrix, without normalization\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1141259e8>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"clf.fit(mul_tfidf_train, mul_y_train)\n",
"pred = clf.predict(mul_tfidf_train)\n",
"\n",
"#print(pred[:20])\n",
"\n",
"score = metrics.accuracy_score(mul_y_train, pred)\n",
"print(\"accuracy: %0.3f\" % score)\n",
"cm = metrics.confusion_matrix(mul_y_train, pred, labels=['false', 'barely-true' , 'half-true' , 'mostly-true' , 'true'])\n",
"plot_confusion_matrix(cm, classes=['false', 'barely-true' , 'half-true' , 'mostly-true' , 'true'])"
]
},
{
"cell_type": "code",
"execution_count": 59,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"clf = MultinomialNB()"
]
},
{
"cell_type": "code",
"execution_count": 60,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"accuracy: 0.238\n",
"Confusion matrix, without normalization\n"
]
},
{
"data": {
"image/png": "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\nJElSEv8GmCutT8r42l8AAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1147ef588>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"clf.fit(mul_tfidf_train, mul_y_train)\n",
"pred = clf.predict(mul_tfidf_test)\n",
"score = metrics.accuracy_score(mul_y_test, pred)\n",
"print(\"accuracy: %0.3f\" % score)\n",
"cm = metrics.confusion_matrix(mul_y_test, pred, labels=['false', 'barely-true' , 'half-true' , 'mostly-true' , 'true'])\n",
"plot_confusion_matrix(cm, classes=['false', 'barely-true' , 'half-true' , 'mostly-true' , 'true'])"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"clf = MultinomialNB()"
]
},
{
"cell_type": "code",
"execution_count": 76,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"accuracy: 0.231\n",
"Confusion matrix, without normalization\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x114858fd0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"clf.fit(mul_tfidf_train, mul_y_train)\n",
"pred = clf.predict(mul_tfidf_valid)\n",
"score = metrics.accuracy_score(mul_y_valid, pred)\n",
"print(\"accuracy: %0.3f\" % score)\n",
"cm = metrics.confusion_matrix(mul_y_valid, pred, labels=['false', 'barely-true' , 'half-true' , 'mostly-true' , 'true'])\n",
"plot_confusion_matrix(cm, classes=['false', 'barely-true' , 'half-true' , 'mostly-true' , 'true'])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Configuration 3 (!no train)\n",
"* model a - test - dataset2 - [performance measures]\n",
"* model b - test - dataset1 - [performance measures]"
]
},
{
"cell_type": "code",
"execution_count": 65,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"clf = MultinomialNB()"
]
},
{
"cell_type": "code",
"execution_count": 73,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"0 true\n",
"1 false\n",
"2 false\n",
"3 half-true\n",
"4 pants-fire\n",
"5 true\n",
"6 true\n",
"7 barely-true\n",
"8 true\n",
"9 barely-true\n",
"10 barely-true\n",
"11 barely-true\n",
"12 pants-fire\n",
"13 false\n",
"14 half-true\n",
"15 true\n",
"16 pants-fire\n",
"17 half-true\n",
"18 true\n",
"19 false\n",
"20 mostly-true\n",
"21 half-true\n",
"22 pants-fire\n",
"23 mostly-true\n",
"24 false\n",
"25 true\n",
"26 barely-true\n",
"27 half-true\n",
"28 true\n",
"29 mostly-true\n",
"Name: y, dtype: object\n"
]
}
],
"source": [
"#print(type(bin_tfidf_train),type(mul_tfidf_test))\n",
"\n",
"tmp_mul_tfidf_test = bin_tfidf_vectorizer.transform(mul_X_test)\n",
"\n",
"print(mul_y_test[:5])"
]
},
{
"cell_type": "code",
"execution_count": 96,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"clf.fit(bin_tfidf_train, bin_y_train)\n",
"pred = clf.predict(tmp_mul_tfidf_test)"
]
},
{
"cell_type": "code",
"execution_count": 97,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1267\n",
"['true' 'true' 'true' 'true' 'true' 'true' 'true' 'true' 'true' 'true'\n",
" 'true' 'true' 'true' 'true' 'true' 'true' 'false' 'true' 'true' 'true'\n",
" 'true' 'true' 'true' 'false' 'false' 'true' 'false' 'true' 'true' 'false']\n"
]
}
],
"source": [
"print(len(pred))\n",
"pred = np.array(pred, dtype=object)\n",
"\n",
"pred[pred == \"FAKE\"] = \"false\"\n",
"pred[pred == \"REAL\"] = \"true\"\n",
"\n",
"print(pred[:30])\n",
"#pred[pred['FAKE']==false]"
]
},
{
"cell_type": "code",
"execution_count": 99,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"accuracy: 0.169\n",
"Confusion matrix, without normalization\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1141d4b38>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"score = metrics.accuracy_score(mul_y_test, pred)\n",
"print(\"accuracy: %0.3f\" % score)\n",
"cm = metrics.confusion_matrix(mul_y_test, pred, labels=['false', 'barely-true' , 'half-true' , 'mostly-true' , 'true' ])\n",
"plot_confusion_matrix(cm, classes=['false', 'barely-true' , 'half-true' , 'mostly-true' , 'true'])"
]
},
{
"cell_type": "code",
"execution_count": 119,
"metadata": {},
"outputs": [],
"source": [
"clf = MultinomialNB()\n",
"from sklearn.neural_network import MLPClassifier\n",
"\n",
"clf = MLPClassifier()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"0 true\n",
"1 false\n",
"2 false\n",
"3 half-true\n",
"4 pants-fire\n",
"5 true\n",
"6 true\n",
"7 barely-true\n",
"8 true\n",
"9 barely-true\n",
"Name: y, dtype: object\n"
]
}
],
"source": [
"tmp_bin_tfidf_test = mul_tfidf_vectorizer.transform(bin_X_test)\n",
"\n",
"print(mul_y_test[:10])"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"clf.fit(mul_tfidf_train, mul_y_train)\n",
"pred = clf.predict(tmp_bin_tfidf_test)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"print(pred[:20])\n",
"\n",
"bin_y_test = np.array(bin_y_test, dtype=object)\n",
"\n",
"bin_y_test[bin_y_test == \"FAKE\"] = \"false\"\n",
"bin_y_test[bin_y_test == \"REAL\"] = \"true\""
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"score = metrics.accuracy_score(bin_y_test, pred)\n",
"print(\"accuracy: %0.3f\" % score)\n",
"cm = metrics.confusion_matrix(bin_y_test, pred, labels=['false', 'barely-true' , 'half-true' , 'mostly-true' , 'true'])\n",
"plot_confusion_matrix(cm, classes=['false', 'barely-true' , 'half-true' , 'mostly-true' , 'true'])"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Configuration 4\n",
"* model c - train - [performance measures][0:4]\n",
"* model c - test - [performance measures][0:4]"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"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.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}