{ "cells": [ { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [], "source": [ "import numpy as np \n", "import pandas as pd\n", "from sklearn.tree import DecisionTreeClassifier\n", "from sklearn import preprocessing\n", "from sklearn.model_selection import train_test_split\n", "from sklearn import metrics\n", "import matplotlib.pyplot as plt\n", "from sklearn.metrics import precision_score\n", "from sklearn.metrics import recall_score\n", "import matplotlib.image as mpimg\n", "from sklearn import tree\n", "from sklearn import preprocessing\n", "from sklearn.naive_bayes import GaussianNB\n", "from sklearn.neural_network import MLPClassifier\n", "from sklearn import svm\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 27, "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", "
PregnanciesGlucoseBloodPressureSkinThicknessInsulinBMIDiabetesPedigreeFunctionAgeOutcome
061487235033.60.627501
11856629026.60.351310
28183640023.30.672321
318966239428.10.167210
40137403516843.12.288331
\n", "
" ], "text/plain": [ " Pregnancies Glucose BloodPressure SkinThickness Insulin BMI \\\n", "0 6 148 72 35 0 33.6 \n", "1 1 85 66 29 0 26.6 \n", "2 8 183 64 0 0 23.3 \n", "3 1 89 66 23 94 28.1 \n", "4 0 137 40 35 168 43.1 \n", "\n", " DiabetesPedigreeFunction Age Outcome \n", "0 0.627 50 1 \n", "1 0.351 31 0 \n", "2 0.672 32 1 \n", "3 0.167 21 0 \n", "4 2.288 33 1 " ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df=df=pd.read_csv(\"E:/Datasets/pimadiabetes.csv\", delimiter=\",\")\n", "df.head(5)" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [], "source": [ "X=df[['Pregnancies','Glucose','BloodPressure','SkinThickness','Insulin','BMI','DiabetesPedigreeFunction','Age']]\n", "A=X.values" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0,\n", " 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1,\n", " 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0,\n", " 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0,\n", " 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1,\n", " 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1,\n", " 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,\n", " 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1,\n", " 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1,\n", " 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1,\n", " 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0,\n", " 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0,\n", " 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 0,\n", " 0, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0,\n", " 1, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 0,\n", " 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,\n", " 0, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0,\n", " 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 1, 0,\n", " 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1,\n", " 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0,\n", " 1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0,\n", " 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,\n", " 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,\n", " 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0,\n", " 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 0,\n", " 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,\n", " 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,\n", " 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0,\n", " 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0,\n", " 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1,\n", " 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 1,\n", " 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0,\n", " 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0,\n", " 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0,\n", " 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0],\n", " dtype=int64)" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Y=df['Outcome']\n", "B=Y.values\n", "B" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[]\n" ] } ], "source": [ "print(scores)\n", "#cross_val_predict(best_svr, X, y, cv=10)" ] }, { "cell_type": "code", "execution_count": 53, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt\n", "import numpy as np\n", "from sklearn.linear_model import LassoCV\n", "\n", "lasso = LassoCV().fit(X, Y)\n", "importance = np.abs(lasso.coef_)\n", "feature_names = np.array(X.columns)\n", "plt.bar(height=importance, x=feature_names)\n", "plt.title(\"Feature importances via coefficients\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [], "source": [ "from sklearn.preprocessing import StandardScaler\n", "\n", "scaler = StandardScaler().fit(X)\n", "\n", "normalizeX = scaler.transform(X)" ] }, { "cell_type": "code", "execution_count": 55, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Features selected by forward sequential selection: ['Pregnancies' 'Glucose' 'BloodPressure' 'BMI' 'DiabetesPedigreeFunction'\n", " 'Age']\n", "Done in 26.758s\n", "Features selected by backward sequential selection: ['Pregnancies' 'Glucose' 'BloodPressure' 'BMI' 'DiabetesPedigreeFunction'\n", " 'Age']\n", "Done in 12.736s\n" ] } ], "source": [ "from sklearn.feature_selection import SequentialFeatureSelector\n", "from sklearn.ensemble import RandomForestClassifier\n", "from time import time\n", "#Create a Gaussian Classifier\n", "clf2=RandomForestClassifier(n_estimators=50)\n", "\n", "tic_fwd = time()\n", "sfs_forward = SequentialFeatureSelector(clf2, n_features_to_select=6,\n", " direction='forward').fit(normalizeX, Y)\n", "toc_fwd = time()\n", "\n", "tic_bwd = time()\n", "sfs_backward = SequentialFeatureSelector(clf2, n_features_to_select=6,\n", " direction='backward').fit(normalizeX, Y)\n", "toc_bwd = time()\n", "\n", "print(\"Features selected by forward sequential selection: \"f\"{feature_names[sfs_forward.get_support()]}\")\n", "print(f\"Done in {toc_fwd - tic_fwd:.3f}s\")\n", "print(\"Features selected by backward sequential selection: \"\n", " f\"{feature_names[sfs_backward.get_support()]}\")\n", "print(f\"Done in {toc_bwd - tic_bwd:.3f}s\")\n", "a=feature_names[sfs_forward.get_support()]\n", "b=feature_names[sfs_backward.get_support()]\n", "x1=df[a]\n", "x2=df[b]" ] }, { "cell_type": "code", "execution_count": 56, "metadata": {}, "outputs": [], "source": [ "from sklearn.preprocessing import StandardScaler\n", "\n", "scaler = StandardScaler().fit(x2)\n", "\n", "normalizeX = scaler.transform(x2)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [], "source": [ "X_trainset, X_testset, y_trainset, y_testset = train_test_split(normalizeX, Y, test_size=0.3, random_state=3)" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.7402597402597403\n" ] } ], "source": [ "#xtrain, xtst, ytrain, ytst = train_test_split(n, Y, test_size=0.3, random_state=0)\n", "drugTree = DecisionTreeClassifier(criterion=\"entropy\", max_depth = 5)\n", "drugTree.fit(X_trainset,y_trainset)\n", "predTree = drugTree.predict(X_testset)\n", "print(\"Accuracy: \", metrics.accuracy_score(y_testset, predTree))\n" ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " precision recall f1-score support\n", "\n", " 0 0.74 0.89 0.81 133\n", " 1 0.79 0.57 0.66 98\n", "\n", " accuracy 0.75 231\n", " macro avg 0.76 0.73 0.73 231\n", "weighted avg 0.76 0.75 0.74 231\n", "\n" ] } ], "source": [ "from sklearn.linear_model import LogisticRegression\n", "from sklearn.metrics import confusion_matrix\n", "from sklearn.metrics import classification_report\n", "LR = LogisticRegression(solver='liblinear').fit(X_trainset,y_trainset)\n", "yhat = LR.predict(X_testset)\n", "print (classification_report(y_testset, yhat))" ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.7489177489177489\n", "Confusion Matrix:\n", "[[118 15]\n", " [ 43 55]]\n", "Classification Report\n", " precision recall f1-score support\n", "\n", " 0 0.73 0.89 0.80 133\n", " 1 0.79 0.56 0.65 98\n", "\n", " accuracy 0.75 231\n", " macro avg 0.76 0.72 0.73 231\n", "weighted avg 0.76 0.75 0.74 231\n", "\n" ] } ], "source": [ "from sklearn import svm\n", "\n", "#Create a svm Classifier\n", "clf = svm.SVC(kernel='rbf') # Linear Kernel\n", "\n", "#Train the model using the training sets\n", "clf.fit(X_trainset,y_trainset)\n", "\n", "#Predict the response for test dataset\n", "y_pred = clf.predict(X_testset)\n", "print(\"Accuracy:\",metrics.accuracy_score(y_testset, y_pred))\n", "print(\"Confusion Matrix:\")\n", "print(confusion_matrix(y_testset, y_pred))\n", "\n", "print(\"Classification Report\")\n", "print(classification_report(y_testset, y_pred))" ] }, { "cell_type": "code", "execution_count": 61, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.6666666666666666\n", "Confusion Matrix:\n", "[[118 15]\n", " [ 62 36]]\n", "Classification Report\n", " precision recall f1-score support\n", "\n", " 0 0.66 0.89 0.75 133\n", " 1 0.71 0.37 0.48 98\n", "\n", " accuracy 0.67 231\n", " macro avg 0.68 0.63 0.62 231\n", "weighted avg 0.68 0.67 0.64 231\n", "\n" ] } ], "source": [ "from sklearn.neighbors import KNeighborsClassifier\n", "\n", "modeln = KNeighborsClassifier(n_neighbors=4)\n", "\n", "#Train the model using the training sets\n", "modeln.fit(X_trainset,y_trainset)\n", "\n", "#Predict the response for test dataset\n", "y_pred1 = modeln.predict(X_testset)\n", "print(\"Accuracy:\",metrics.accuracy_score(y_testset, y_pred1))\n", "print(\"Confusion Matrix:\")\n", "print(confusion_matrix(y_testset, y_pred1))\n", "\n", "print(\"Classification Report\")\n", "print(classification_report(y_testset, y_pred1))" ] }, { "cell_type": "code", "execution_count": 62, "metadata": {}, "outputs": [ { "ename": "NameError", "evalue": "name 'listt' is not defined", "output_type": "error", "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[1;31mNameError\u001b[0m Traceback (most recent call last)", "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[0msklearn\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mensemble\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mAdaBoostClassifier\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 2\u001b[1;33m \u001b[1;32mfor\u001b[0m \u001b[0mi\u001b[0m \u001b[1;32min\u001b[0m \u001b[0mlistt\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 3\u001b[0m abc = AdaBoostClassifier(n_estimators=i,\n\u001b[0;32m 4\u001b[0m learning_rate=0.5)\n\u001b[0;32m 5\u001b[0m \u001b[1;31m# Train Adaboost Classifer\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;31mNameError\u001b[0m: name 'listt' is not defined" ] } ], "source": [ "from sklearn.ensemble import AdaBoostClassifier\n", "for i in listt:\n", " abc = AdaBoostClassifier(n_estimators=i,\n", " learning_rate=0.5)\n", "# Train Adaboost Classifer\n", " model = abc.fit(X_trainset,y_trainset)\n", "\n", "#Predict the response for test dataset\n", " y_pred = model.predict(X_testset)\n", " print(\"Accuracy:\",metrics.accuracy_score(y_testset, y_pred))" ] }, { "cell_type": "code", "execution_count": 63, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.7359307359307359\n", "Confusion Matrix:\n", "[[117 16]\n", " [ 45 53]]\n", "Classification Report\n", " precision recall f1-score support\n", "\n", " 0 0.72 0.88 0.79 133\n", " 1 0.77 0.54 0.63 98\n", "\n", " accuracy 0.74 231\n", " macro avg 0.75 0.71 0.71 231\n", "weighted avg 0.74 0.74 0.73 231\n", "\n" ] } ], "source": [ "from sklearn.ensemble import AdaBoostClassifier\n", "\n", "# Import Support Vector Classifier\n", "from sklearn.svm import SVC\n", "#Import scikit-learn metrics module for accuracy calculation\n", "from sklearn import metrics\n", "svc=SVC(probability=True, kernel='linear')\n", "#LR = LogisticRegression(C=0.001, solver='liblinear')\n", "LR = LogisticRegression(solver='liblinear')\n", "# Create adaboost classifer object\n", "abc =AdaBoostClassifier(n_estimators=20, base_estimator=LR,learning_rate=0.5)\n", "\n", "# Train Adaboost Classifer\n", "model = abc.fit(X_trainset,y_trainset)\n", "\n", "#Predict the response for test dataset\n", "y_pred = model.predict(X_testset)\n", "\n", "\n", "# Model Accuracy, how often is the classifier correct?\n", "print(\"Accuracy:\",metrics.accuracy_score(y_testset, y_pred))\n", "print(\"Confusion Matrix:\")\n", "print(confusion_matrix(y_testset, y_pred))\n", "\n", "print(\"Classification Report\")\n", "print(classification_report(y_testset, y_pred))" ] }, { "cell_type": "code", "execution_count": 64, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.7489177489177489\n", "Confusion Matrix:\n", "[[111 22]\n", " [ 36 62]]\n", "Classification Report\n", " precision recall f1-score support\n", "\n", " 0 0.76 0.83 0.79 133\n", " 1 0.74 0.63 0.68 98\n", "\n", " accuracy 0.75 231\n", " macro avg 0.75 0.73 0.74 231\n", "weighted avg 0.75 0.75 0.75 231\n", "\n", "RandomForestClassifier(n_estimators=50)\n" ] } ], "source": [ "from sklearn.ensemble import RandomForestClassifier\n", "\n", "#Create a Gaussian Classifier\n", "clf=RandomForestClassifier(n_estimators=50)\n", "\n", "#Train the model using the training sets y_pred=clf.predict(X_test)\n", "clf.fit(X_trainset,y_trainset)\n", "\n", "yhat4=clf.predict(X_testset)\n", "print(\"Accuracy:\",metrics.accuracy_score(y_testset, yhat4))\n", "print(\"Confusion Matrix:\")\n", "print(confusion_matrix(y_testset, yhat4))\n", "\n", "print(\"Classification Report\")\n", "print(classification_report(y_testset, yhat4))\n", "print(clf)" ] }, { "cell_type": "code", "execution_count": 65, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Learning rate: 0.001\n", "Accuracy score (training): 0.683\n", "Accuracy score (validation): 0.576\n", "Learning rate: 0.002\n", "Accuracy score (training): 0.683\n", "Accuracy score (validation): 0.576\n", "Learning rate: 0.05\n", "Accuracy score (training): 0.842\n", "Accuracy score (validation): 0.671\n", "Learning rate: 0.075\n", "Accuracy score (training): 0.862\n", "Accuracy score (validation): 0.719\n", "Learning rate: 0.1\n", "Accuracy score (training): 0.877\n", "Accuracy score (validation): 0.714\n", "Learning rate: 0.25\n", "Accuracy score (training): 0.914\n", "Accuracy score (validation): 0.732\n", "Learning rate: 0.5\n", "Accuracy score (training): 0.974\n", "Accuracy score (validation): 0.706\n", "Learning rate: 0.75\n", "Accuracy score (training): 0.989\n", "Accuracy score (validation): 0.740\n", "Learning rate: 1\n", "Accuracy score (training): 0.994\n", "Accuracy score (validation): 0.688\n" ] } ], "source": [ "from sklearn.ensemble import GradientBoostingClassifier\n", "lr_list = [0.001,0.002,0.05, 0.075, 0.1, 0.25, 0.5, 0.75, 1]\n", "\n", "for learning_rate in lr_list:\n", " gb_clf = GradientBoostingClassifier(n_estimators=19, learning_rate=learning_rate, max_features=2, max_depth=4, random_state=0)\n", " gb_clf.fit(X_trainset,y_trainset)\n", "\n", " print(\"Learning rate: \", learning_rate)\n", " print(\"Accuracy score (training): {0:.3f}\".format(gb_clf.score(X_trainset,y_trainset)))\n", " print(\"Accuracy score (validation): {0:.3f}\".format(gb_clf.score(X_testset,y_testset)))" ] }, { "cell_type": "code", "execution_count": 66, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Confusion Matrix:\n", "[[106 27]\n", " [ 41 57]]\n", "Accuracy: 0.7056277056277056\n", "Classification Report\n", " precision recall f1-score support\n", "\n", " 0 0.72 0.80 0.76 133\n", " 1 0.68 0.58 0.63 98\n", "\n", " accuracy 0.71 231\n", " macro avg 0.70 0.69 0.69 231\n", "weighted avg 0.70 0.71 0.70 231\n", "\n" ] }, { "data": { "text/plain": [ "GradientBoostingClassifier(learning_rate=0.5, max_depth=4, max_features=2,\n", " n_estimators=19, random_state=0)" ] }, "execution_count": 66, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gb_clf1 = GradientBoostingClassifier(n_estimators=19, learning_rate=0.5, max_features=2, max_depth=4, random_state=0)\n", "gb_clf1.fit(X_trainset,y_trainset)\n", "predictions = gb_clf1.predict(X_testset)\n", "\n", "print(\"Confusion Matrix:\")\n", "print(confusion_matrix(y_testset, predictions))\n", "print(\"Accuracy: \", metrics.accuracy_score(y_testset, predictions))\n", "\n", "print(\"Classification Report\")\n", "print(classification_report(y_testset, predictions))\n", "gb_clf1" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "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.7.0" } }, "nbformat": 4, "nbformat_minor": 2 }