{ "cells": [ { "cell_type": "code", "execution_count": 3, "id": "dd76b8ad-f82f-492e-8640-74c610546fae", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Reading datasets...\n", "\n", "Extracting features...\n", "\n", "Index(['statuses_count', 'followers_count', 'friends_count',\n", " 'favourites_count', 'listed_count', 'sex_code'],\n", " dtype='object')\n", " statuses_count followers_count friends_count favourites_count \\\n", "count 2817.000000 2817.000000 2817.000000 2817.000000 \n", "mean 1672.781328 371.231807 395.396876 234.624423 \n", "std 4885.438340 8024.052863 465.773534 1446.097189 \n", "min 0.000000 0.000000 0.000000 0.000000 \n", "25% 35.000000 17.000000 168.000000 0.000000 \n", "50% 77.000000 26.000000 306.000000 0.000000 \n", "75% 1088.000000 111.000000 519.000000 37.000000 \n", "max 79876.000000 408372.000000 12773.000000 44349.000000 \n", "\n", " listed_count sex_code \n", "count 2817.000000 2817.000000 \n", "mean 2.819666 1.112176 \n", "std 23.484539 0.824551 \n", "min 0.000000 0.000000 \n", "25% 0.000000 0.000000 \n", "50% 0.000000 1.000000 \n", "75% 1.000000 2.000000 \n", "max 744.000000 2.000000 \n", "Splitting datasets into train and test dataset...\n", "\n", "Training datasets...\n", "\n", "The best classifier is: RandomForestClassifier(n_estimators=40, oob_score=True)\n", "[0.98891353 0.99556541 0.99113082 1. 0.99111111]\n", "Estimated score: 0.99334 (+/- 0.00198)\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Classification Accuracy on Test dataset: 0.99822695035461\n", "Confusion matrix, without normalization\n", "[[266 1]\n", " [ 0 297]]\n", "Normalized confusion matrix\n", "[[0.99625468 0.00374532]\n", " [0. 1. ]]\n", " precision recall f1-score support\n", "\n", " Fake 1.00 1.00 1.00 267\n", " Genuine 1.00 1.00 1.00 297\n", "\n", " accuracy 1.00 564\n", " macro avg 1.00 1.00 1.00 564\n", "weighted avg 1.00 1.00 1.00 564\n", "\n", "False Positive rate: [0. 0.00374532 1. ]\n", "True Positive rate: [0. 1. 1.]\n" ] }, { "data": { "image/png": "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Sa5tzNBFRESUl/D/R3GPpaLJtI0ZuoiIiPKQay+MlOTaxpzTRURERCQBhi4iIqI8cnthivugoknZxgsWLMBbb70Fe3t7uLq6okePHrh+/brKPkOHDs33Hk2bNlXZJz09HR999BFcXFxga2uL7t274969exrVwtBFRESUB0OX7knZxidOnMDYsWNx9uxZREZGIisrCwEBAXj58qXKfp06dUJ8fLzyERERofJ6SEgIdu/ejW3btuHUqVN48eIFunbtCoVCoXYtnNNFRESUh1znG0lJyjY+ePCgyvOwsDC4uroiOjoarVq1Um63tLSEu7t7gedITk7GunXrsGnTJrRv3x4A8P3338PLywtHjhxBx44d1aqFPV1EREQkG8nJyQAAJycnle3Hjx+Hq6sr/Pz8MHLkSCQmJipfi46ORmZmJgICApTbPD09Ubt2bZw+fVrt92boykMQBOzZs0ffZRARkT4JJXxQ0bTQxikpKSqP9PT0It9WFEVMnDgR77zzDmrXrq3cHhgYiM2bN+Po0aP48ssvce7cObRt21Z5zoSEBFhYWKBs2bIq53Nzc0NCQoLaH1vvw4sJCQlYsGAB9u/fj3v37sHR0RFVq1bFwIEDMXjwYNjY2EhWS3x8fL4GJSIieeHwou5po429vLxUNs+aNQuhoaFvPHTcuHH466+/cOrUKZXtffr0Uf537dq10bhxY3h7e2P//v147733Cj2fKIoafQ69hq7bt2+jRYsWKFOmDObPn486deogKysL//zzD9avXw9PT090795dsnoKG8slIiIiwxIXFwcHBwflc0tLyzfu/9FHH2Hv3r04efIkKlSo8MZ9PTw84O3tjRs3bgDIyQcZGRl4+vSpSudMYmIimjdvrnbNeh1eDA4OhpmZGaKiotC7d2/UqFEDderUwfvvv4/9+/ejW7duAHLGX0eNGgVXV1c4ODigbdu2+PPPP5XnCQ0NRf369bFp0yb4+PjA0dERffv2xfPnz5X7+Pj4YNmyZSrvX79+fZVUnHd48c6dOxAEAbt27YK/vz9sbGxQr149nDlzRuUcp0+fRqtWrWBtbQ0vLy+MHz8+3xURRERkPAShJFfX6bt646CNNnZwcFB5FBa6RFHEuHHjsGvXLhw9ehS+vr5F1vf48WPExcXBw8MDANCoUSOYm5sjMjJSuU98fDwuX76sUejSW0/X48eP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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import csv\n", "import numpy as np\n", "import pandas as pd\n", "import matplotlib.pyplot as plt\n", "from sklearn.model_selection import train_test_split, cross_val_score\n", "from sklearn.ensemble import RandomForestClassifier\n", "from sklearn.metrics import accuracy_score, confusion_matrix, classification_report, roc_curve, auc\n", "\n", "from sklearn.utils import shuffle\n", "from sklearn.model_selection import learning_curve\n", "import gender_guesser.detector as gender\n", "\n", "def read_datasets():\n", " \"\"\" Reads users profile from csv files \"\"\"\n", " genuine_users = pd.read_csv(\"data/users.csv\")\n", " fake_users = pd.read_csv(\"data/fusers.csv\")\n", " x = pd.concat([genuine_users, fake_users])\n", " y = [1] * len(genuine_users) + [0] * len(fake_users)\n", " return x, y\n", "\n", "def predict_sex(names):\n", " sex_predictor = gender.Detector(case_sensitive=False)\n", " sex_code = []\n", " for name in names:\n", " first_name = name.split(' ')[0]\n", " sex = sex_predictor.get_gender(first_name)\n", " if sex == 'female':\n", " sex_code.append(2)\n", " # elif sex == 'mostly_female':\n", " # sex_code.append(-1)\n", " elif sex == 'male':\n", " sex_code.append(1)\n", " # elif sex == 'mostly_male':\n", " # sex_code.append(1)\n", " else:\n", " sex_code.append(0) # Assign a default value for unknown genders\n", " return sex_code\n", "\n", "def extract_features(x):\n", " \n", "\n", " x['sex_code'] = predict_sex(x['name'])\n", "\n", " feature_columns_to_use = ['statuses_count', 'followers_count', 'friends_count', 'favourites_count', 'listed_count', 'sex_code']\n", " x = x[feature_columns_to_use]\n", " return x\n", "\n", "# Rest of your code...\n", "\n", "\n", "\n", "def plot_learning_curve(estimator, title, X, y, ylim=None, cv=None, n_jobs=1, train_sizes=np.linspace(.1, 1.0, 5)):\n", " plt.figure()\n", " plt.title(title)\n", " if ylim is not None:\n", " plt.ylim(*ylim)\n", " plt.xlabel(\"Training examples\")\n", " plt.ylabel(\"Score\")\n", "\n", " train_sizes, train_scores, test_scores = learning_curve(\n", " estimator, X, y, cv=cv, n_jobs=n_jobs, train_sizes=train_sizes)\n", " train_scores_mean = np.mean(train_scores, axis=1)\n", " train_scores_std = np.std(train_scores, axis=1)\n", " test_scores_mean = np.mean(test_scores, axis=1)\n", " test_scores_std = np.std(test_scores, axis=1)\n", "\n", " plt.grid()\n", " plt.fill_between(train_sizes, train_scores_mean - train_scores_std,\n", " train_scores_mean + train_scores_std, alpha=0.1,\n", " color=\"r\")\n", " plt.fill_between(train_sizes, test_scores_mean - test_scores_std,\n", " test_scores_mean + test_scores_std, alpha=0.1, color=\"g\")\n", " plt.plot(train_sizes, train_scores_mean, 'o-', color=\"r\",\n", " label=\"Training score\")\n", " plt.plot(train_sizes, test_scores_mean, 'o-', color=\"g\",\n", " label=\"Cross-validation score\")\n", "\n", " plt.legend(loc=\"best\")\n", " return plt\n", "\n", "def plot_confusion_matrix(cm, title='Confusion matrix', cmap=plt.cm.Blues):\n", " target_names=['Fake','Genuine']\n", " plt.imshow(cm, interpolation='nearest', cmap=cmap)\n", " plt.title(title)\n", " plt.colorbar()\n", " tick_marks = np.arange(len(target_names))\n", " plt.xticks(tick_marks, target_names, rotation=45)\n", " plt.yticks(tick_marks, target_names)\n", " plt.tight_layout()\n", " plt.ylabel('True label')\n", " plt.xlabel('Predicted label')\n", "\n", "def plot_roc_curve(y_test, y_pred):\n", " false_positive_rate, true_positive_rate, thresholds = roc_curve(y_test, y_pred)\n", "\n", " print(\"False Positive rate: \", false_positive_rate)\n", " print(\"True Positive rate: \", true_positive_rate)\n", "\n", " roc_auc = auc(false_positive_rate, true_positive_rate)\n", "\n", " plt.title('Receiver Operating Characteristic')\n", " plt.plot(false_positive_rate, true_positive_rate, 'b',\n", " label='AUC = %0.2f' % roc_auc)\n", " plt.legend(loc='lower right')\n", " plt.plot([0, 1], [0, 1], 'r--')\n", " plt.xlim([-0.1, 1.2])\n", " plt.ylim([-0.1, 1.2])\n", " plt.ylabel('True Positive Rate')\n", " plt.xlabel('False Positive Rate')\n", " plt.show()\n", "\n", "def train(X_train, y_train, X_test):\n", " \"\"\" Trains and predicts dataset with a Random Forest classifier \"\"\"\n", " clf = RandomForestClassifier(n_estimators=40, oob_score=True)\n", " clf.fit(X_train, y_train)\n", " print(\"The best classifier is: \", clf)\n", " \n", " # Estimate score\n", " scores = cross_val_score(clf, X_train, y_train, cv=5)\n", " print(scores)\n", " print('Estimated score: %0.5f (+/- %0.5f)' % (scores.mean(), scores.std() / 2))\n", "\n", " title = 'Learning Curves (Random Forest)'\n", " plot_learning_curve(clf, title, X_train, y_train, cv=5)\n", " plt.show()\n", "\n", " # Predict\n", " y_pred = clf.predict(X_test)\n", " import pickle\n", " with open('data.pkl','wb') as file:\n", " pickle.dump(clf,file)\n", " return y_test, y_pred\n", "\n", "print(\"Reading datasets...\\n\")\n", "x, y = read_datasets()\n", "x.describe()\n", "\n", "print(\"Extracting features...\\n\")\n", "x = extract_features(x)\n", "print(x.columns)\n", "print(x.describe())\n", "\n", "print(\"Splitting datasets into train and test dataset...\\n\")\n", "X_train, X_test, y_train, y_test = train_test_split(x, y, test_size=0.20, random_state=44)\n", "\n", "print(\"Training datasets...\\n\")\n", "y_test, y_pred = train(X_train, y_train, X_test)\n", "\n", "print('Classification Accuracy on Test dataset: ', accuracy_score(y_test, y_pred))\n", "\n", "\n", "\n", "cm = confusion_matrix(y_test, y_pred)\n", "print('Confusion matrix, without normalization')\n", "print(cm)\n", "plot_confusion_matrix(cm)\n", "\n", "cm_normalized = cm.astype('float') / cm.sum(axis=1)[:, np.newaxis]\n", "print('Normalized confusion matrix')\n", "print(cm_normalized)\n", "plot_confusion_matrix(cm_normalized, title='Normalized confusion matrix')\n", "\n", "print(classification_report(y_test, y_pred, target_names=['Fake', 'Genuine']))\n", "\n", "plot_roc_curve(y_test, y_pred)" ] }, { "cell_type": "code", "execution_count": 2, "id": "f044244b-4bda-4a6c-b7f8-55a242f45bc8", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " statuses_count followers_count friends_count favourites_count \\\n", "512 9950 658 701 18 \n", "630 6991 1001 614 2401 \n", "189 1809 102 392 18 \n", "343 770 42 149 28 \n", "1129 27 7 296 0 \n", "... ... ... ... ... \n", "1264 440 98 770 2 \n", "78 66 22 581 0 \n", "273 37 16 445 0 \n", "588 293 42 139 0 \n", "761 23 19 310 0 \n", "\n", " listed_count sex_code \n", "512 11 2 \n", "630 6 0 \n", "189 1 0 \n", "343 0 0 \n", "1129 0 2 \n", "... ... ... \n", "1264 0 1 \n", "78 0 0 \n", "273 0 0 \n", "588 0 2 \n", "761 0 2 \n", "\n", "[564 rows x 6 columns]\n" ] } ], "source": [ "print (X_test)" ] }, { "cell_type": "code", "execution_count": null, "id": "d2255c61-7aff-4f79-b502-d71ea90536b3", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "2203e547-594f-4aff-9fa5-1a4e7532f05a", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.11.7" } }, "nbformat": 4, "nbformat_minor": 5 }