From 46ec25562ba90e1ea7748e32a3bebdb50040950b Mon Sep 17 00:00:00 2001 From: Paskal Sunari <60564521+PaskalSunari@users.noreply.github.com> Date: Thu, 12 Jun 2025 17:25:59 +0000 Subject: [PATCH] claffification 1 finished --- .../2-Classifiers-1/notebook.ipynb | 135 ++++++++++++++++-- 1 file changed, 125 insertions(+), 10 deletions(-) diff --git a/4-Classification/2-Classifiers-1/notebook.ipynb b/4-Classification/2-Classifiers-1/notebook.ipynb index 2b51e68c..342f51c8 100644 --- a/4-Classification/2-Classifiers-1/notebook.ipynb +++ b/4-Classification/2-Classifiers-1/notebook.ipynb @@ -16,7 +16,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 1, "metadata": {}, "outputs": [ { @@ -214,7 +214,7 @@ "[5 rows x 382 columns]" ] }, - "execution_count": 6, + "execution_count": 1, "metadata": {}, "output_type": "execute_result" } @@ -227,7 +227,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 2, "metadata": {}, "outputs": [], "source": [ @@ -240,7 +240,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 3, "metadata": {}, "outputs": [ { @@ -254,7 +254,7 @@ "Name: cuisine, dtype: object" ] }, - "execution_count": 9, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" } @@ -266,7 +266,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 4, "metadata": {}, "outputs": [ { @@ -464,7 +464,7 @@ "[5 rows x 380 columns]" ] }, - "execution_count": 11, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" } @@ -476,7 +476,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ @@ -485,7 +485,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 6, "metadata": {}, "outputs": [ { @@ -513,7 +513,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 7, "metadata": {}, "outputs": [ { @@ -529,6 +529,121 @@ "print(f'ingredients: {X_test.iloc[50][X_test.iloc[50]!=0].keys()}')\n", "print(f'cuisine: {y_test.iloc[50]}')" ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/workspaces/ML-For-Beginners/.venv/lib/python3.11/site-packages/sklearn/utils/validation.py:2739: UserWarning: X does not have valid feature names, but LogisticRegression was fitted with feature names\n", + " warnings.warn(\n" + ] + }, + { + "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", + "
0
thai0.839568
japanese0.134624
chinese0.014531
korean0.008383
indian0.002894
\n", + "
" + ], + "text/plain": [ + " 0\n", + "thai 0.839568\n", + "japanese 0.134624\n", + "chinese 0.014531\n", + "korean 0.008383\n", + "indian 0.002894" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "test= X_test.iloc[50].values.reshape(-1, 1).T\n", + "proba = model.predict_proba(test)\n", + "classes = model.classes_\n", + "resultdf = pd.DataFrame(data=proba, columns=classes)\n", + "\n", + "topPrediction = resultdf.T.sort_values(by=[0], ascending = [False])\n", + "topPrediction.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " precision recall f1-score support\n", + "\n", + " chinese 0.69 0.69 0.69 236\n", + " indian 0.91 0.91 0.91 245\n", + " japanese 0.73 0.72 0.73 231\n", + " korean 0.81 0.76 0.78 242\n", + " thai 0.78 0.84 0.81 245\n", + "\n", + " accuracy 0.79 1199\n", + " macro avg 0.79 0.78 0.78 1199\n", + "weighted avg 0.79 0.79 0.79 1199\n", + "\n" + ] + } + ], + "source": [ + "y_pred = model.predict(X_test)\n", + "print(classification_report(y_test, y_pred))" + ] } ], "metadata": {