diff --git a/PROJECT_STRUCTURE.md b/PROJECT_STRUCTURE.md index b8842c1..6ede19b 100644 --- a/PROJECT_STRUCTURE.md +++ b/PROJECT_STRUCTURE.md @@ -59,6 +59,7 @@ │ └── Stock_Price_Prediction_REMOTE_20502.ipynb ├── README.md ├── SBIN.csv +├── Stock_Price_Prediction(Updated) MultiLayer LSTM.ipynb ├── Stock_Price_Prediction(Updated).ipynb ├── Stock_Price_Prediction.ipynb ├── Stock_Recommendation.ipynb diff --git a/Stock_Price_Prediction(Updated) MultiLayer LSTM.ipynb b/Stock_Price_Prediction(Updated) MultiLayer LSTM.ipynb new file mode 100644 index 0000000..19a6861 --- /dev/null +++ b/Stock_Price_Prediction(Updated) MultiLayer LSTM.ipynb @@ -0,0 +1,4766 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "id": "8tzEK_mSvRoh" + }, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "from sklearn.model_selection import train_test_split\n", + "from sklearn.impute import SimpleImputer\n", + "from sklearn.preprocessing import MinMaxScaler\n", + "from sklearn.linear_model import LinearRegression\n", + "from sklearn.svm import SVR\n", + "from sklearn.tree import DecisionTreeRegressor\n", + "from sklearn.ensemble import RandomForestRegressor, AdaBoostRegressor, GradientBoostingRegressor\n", + "from sklearn.metrics import mean_squared_error, mean_absolute_error, mean_absolute_percentage_error\n", + "from sklearn.neighbors import KNeighborsRegressor\n", + "from tensorflow.keras.models import Sequential\n", + "from tensorflow.keras.layers import Dense,LSTM" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 206 + }, + "id": "NbBSc2jLvZWx", + "outputId": "457e0a63-90a0-4e1c-b846-95e4e50c31dc" + }, + "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", + "
DateOpenHighLowCloseAdj CloseVolume
001-01-199618.69114718.97892218.54018418.82324012.40993143733533.0
102-01-199618.89400518.96476717.73819218.22410612.01493156167280.0
203-01-199618.32789218.56848917.64383917.73819211.69457768296318.0
304-01-199617.50231217.83254217.22397217.67686311.65414286073880.0
405-01-199617.73819217.78536617.45985217.57779311.58882776613039.0
\n", + "
" + ], + "text/plain": [ + " Date Open High Low Close Adj Close \\\n", + "0 01-01-1996 18.691147 18.978922 18.540184 18.823240 12.409931 \n", + "1 02-01-1996 18.894005 18.964767 17.738192 18.224106 12.014931 \n", + "2 03-01-1996 18.327892 18.568489 17.643839 17.738192 11.694577 \n", + "3 04-01-1996 17.502312 17.832542 17.223972 17.676863 11.654142 \n", + "4 05-01-1996 17.738192 17.785366 17.459852 17.577793 11.588827 \n", + "\n", + " Volume \n", + "0 43733533.0 \n", + "1 56167280.0 \n", + "2 68296318.0 \n", + "3 86073880.0 \n", + "4 76613039.0 " + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Load the dataset\n", + "df = pd.read_csv(r\"D:\\Jupyter Notebook\\Contribution\\Stock-Price-Prediction\\Data\\SBIN.csv\")\n", + "df.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "id": "2QdTvORzwEJw" + }, + "outputs": [], + "source": [ + "# Drop the 'Date' and 'Adj Close' columns\n", + "df.drop(['Date', 'Adj Close'], axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 206 + }, + "id": "xMfr71b2w3eX", + "outputId": "a6990b82-ef82-454f-c0ba-fc0c21cc91ca" + }, + "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", + "
OpenHighLowCloseVolume
018.69114718.97892218.54018418.82324043733533.0
118.89400518.96476717.73819218.22410656167280.0
218.32789218.56848917.64383917.73819268296318.0
317.50231217.83254217.22397217.67686386073880.0
417.73819217.78536617.45985217.57779376613039.0
\n", + "
" + ], + "text/plain": [ + " Open High Low Close Volume\n", + "0 18.691147 18.978922 18.540184 18.823240 43733533.0\n", + "1 18.894005 18.964767 17.738192 18.224106 56167280.0\n", + "2 18.327892 18.568489 17.643839 17.738192 68296318.0\n", + "3 17.502312 17.832542 17.223972 17.676863 86073880.0\n", + "4 17.738192 17.785366 17.459852 17.577793 76613039.0" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "# Handle missing values\n", + "imputer = SimpleImputer(strategy='mean')\n", + "df = pd.DataFrame(imputer.fit_transform(df), columns=df.columns)" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "id": "dUw_auE7w8JA" + }, + "outputs": [], + "source": [ + "# Select features and target variable\n", + "X = df[['Open', 'High', 'Low', 'Volume']]\n", + "y = df['Close']" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "id": "FD2542-uxMhN" + }, + "outputs": [], + "source": [ + "# Split the data into training and testing sets\n", + "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "id": "IfBxpcjIw-h7" + }, + "outputs": [], + "source": [ + "# Scale the features using Min-Max scaling\n", + "scaler = MinMaxScaler()\n", + "X_train_scaled = scaler.fit_transform(X_train)\n", + "X_test_scaled = scaler.transform(X_test)" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "BUsngQNexIjX", + "outputId": "6b739018-4a7d-48d9-a3ec-591a5cd0784e" + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(5659, 4)" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X_train.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "GAb1kDEZxQD6", + "outputId": "4babae88-adba-49ad-9d56-514bd7abde50" + }, + "outputs": [ + { + "data": { + "text/plain": [ + "(1415, 4)" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X_test.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "id": "SrzPIdvxxSWL" + }, + "outputs": [], + "source": [ + "# Function to evaluate and print RMSE, MAE, and MAPE\n", + "def evaluate_model(model, X_test, y_test):\n", + " predictions = model.predict(X_test)\n", + " rmse = np.sqrt(mean_squared_error(y_test, predictions))\n", + " mae = mean_absolute_error(y_test, predictions)\n", + " mape = mean_absolute_percentage_error(y_test, predictions)\n", + "\n", + " print(f\"RMSE: {rmse}\")\n", + " print(f\"MAE: {mae}\")\n", + " print(f\"MAPE: {mape}\\n\")\n", + "\n", + " return rmse, mae, mape\n" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "id": "1V0eOGD_xVCq" + }, + "outputs": [], + "source": [ + "\n", + "metrics = {\n", + " \"Model\": [],\n", + " \"RMSE\": [],\n", + " \"MAE\": [],\n", + " \"MAPE\": []\n", + "}" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "4gNvcwrH55rP" + }, + "source": [ + "# **1. Linear Regression**" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "id": "uTbRFCB4xXHU" + }, + "outputs": [], + "source": [ + "# Create a linear regression model\n", + "model1 = LinearRegression()" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 241 + }, + "id": "UKaUaJ6sxaYG", + "outputId": "a28ae8d2-9430-4a1b-e9ba-475edfb7c788" + }, + "outputs": [ + { + "data": { + "text/plain": [ + "5286 257.350006\n", + "3408 129.464996\n", + "5477 279.350006\n", + "6906 588.500000\n", + "530 21.644367\n", + "Name: Close, dtype: float64" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "y_train.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 80 + }, + "id": "6iJA5FrBxdEs", + "outputId": "6667305e-dd8d-445e-df54-c470c5b1e5ae" + }, + "outputs": [ + { + "data": { + "text/html": [ + "
LinearRegression()
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "LinearRegression()" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Train the model\n", + "model1.fit(X_train, y_train)" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "k-T73PFExiZD", + "outputId": "c794cf2c-c031-42c5-83ec-9432a9082d0f" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "RMSE: 1.6881364643681729\n", + "MAE: 0.9433353485344458\n", + "MAPE: 0.006085435990852853\n", + "\n" + ] + } + ], + "source": [ + "rmse, mae, mape = evaluate_model(model1, X_test, y_test)\n", + "metrics[\"Model\"].append(\"Linear Regressor\")\n", + "metrics[\"RMSE\"].append(rmse)\n", + "metrics[\"MAE\"].append(mae)\n", + "metrics[\"MAPE\"].append(mape)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "qEVWWYIS592D" + }, + "source": [ + "# 2. Support Vector Regression" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "id": "LeUTf8Vhxj_k" + }, + "outputs": [], + "source": [ + "# Create an SVR model\n", + "model2 = SVR()" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 80 + }, + "id": "ud3Yhe5Vzvyh", + "outputId": "08f14bf4-3c1f-4973-c72a-52e2c264e759" + }, + "outputs": [ + { + "data": { + "text/html": [ + "
SVR()
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "SVR()" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Train the model\n", + "model2.fit(X_train, y_train)" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "eiqL4fTuzxWH", + "outputId": "4a88e15a-0922-4c3c-906b-3d5d6efee119" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "RMSE: 147.71103599153602\n", + "MAE: 110.99419106508152\n", + "MAPE: 1.9715076513294716\n", + "\n" + ] + } + ], + "source": [ + "rmse, mae, mape = evaluate_model(model2, X_test, y_test)\n", + "metrics[\"Model\"].append(\"SVR\")\n", + "metrics[\"RMSE\"].append(rmse)\n", + "metrics[\"MAE\"].append(mae)\n", + "metrics[\"MAPE\"].append(mape)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "PlDcozy-6OGR" + }, + "source": [ + "# 3. Random Forest Regressor" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": { + "id": "iaN8nOOO6cBg" + }, + "outputs": [], + "source": [ + "model3 = RandomForestRegressor()" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 80 + }, + "id": "wZ7x_Yp06fI_", + "outputId": "8f64c153-17f2-4939-9344-58db634aee31" + }, + "outputs": [ + { + "data": { + "text/html": [ + "
RandomForestRegressor()
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "RandomForestRegressor()" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Train the model\n", + "model3.fit(X_train, y_train)" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "IwK7IZ3E6g_n", + "outputId": "1fa15097-6587-4b81-a0f0-e65ac6c6ba8f" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "RMSE: 224.93042098590243\n", + "MAE: 162.9878683280432\n", + "MAPE: 0.7508043759857392\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\DEEPANSHU\\anaconda3\\Lib\\site-packages\\sklearn\\base.py:493: UserWarning: X does not have valid feature names, but RandomForestRegressor was fitted with feature names\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "rmse, mae, mape = evaluate_model(model3, X_test_scaled, y_test)\n", + "metrics[\"Model\"].append(\"Random Forest\")\n", + "metrics[\"RMSE\"].append(rmse)\n", + "metrics[\"MAE\"].append(mae)\n", + "metrics[\"MAPE\"].append(mape)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "ijTIDEEa6izO" + }, + "source": [ + "# 4. Gradient Boosting Models" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": { + "id": "EO6OFflr6nJo" + }, + "outputs": [], + "source": [ + "model4 = GradientBoostingRegressor()" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 80 + }, + "id": "vrwnbrEi6o1X", + "outputId": "dbf1c6ff-ffcc-4b47-fbf6-8ba7f64a5f16" + }, + "outputs": [ + { + "data": { + "text/html": [ + "
GradientBoostingRegressor()
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "GradientBoostingRegressor()" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Train the model\n", + "model4.fit(X_train, y_train)" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "-pTBa0fD6qqx", + "outputId": "16225599-0077-447e-a1f5-3e2aa2f7ba8f" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "RMSE: 224.41069433522418\n", + "MAE: 162.27122816197573\n", + "MAPE: 0.7378541693598378\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\DEEPANSHU\\anaconda3\\Lib\\site-packages\\sklearn\\base.py:493: UserWarning: X does not have valid feature names, but GradientBoostingRegressor was fitted with feature names\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "rmse, mae, mape = evaluate_model(model4, X_test_scaled, y_test)\n", + "metrics[\"Model\"].append(\"GBM\")\n", + "metrics[\"RMSE\"].append(rmse)\n", + "metrics[\"MAE\"].append(mae)\n", + "metrics[\"MAPE\"].append(mape)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "eGcU-e6C6sJI" + }, + "source": [ + "# 5. Extreme Graident Boosting" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": { + "id": "0GQmPNFd6uxx" + }, + "outputs": [], + "source": [ + "import xgboost as xgb\n", + "# Create an XGBoost model\n", + "model5 = xgb.XGBRegressor()" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 253 + }, + "id": "kfo1ZNft6xTp", + "outputId": "edfefbbd-744d-4c08-80bb-7ca2ffb3f765" + }, + "outputs": [ + { + "data": { + "text/html": [ + "
XGBRegressor(base_score=None, booster=None, callbacks=None,\n",
+       "             colsample_bylevel=None, colsample_bynode=None,\n",
+       "             colsample_bytree=None, device=None, early_stopping_rounds=None,\n",
+       "             enable_categorical=False, eval_metric=None, feature_types=None,\n",
+       "             gamma=None, grow_policy=None, importance_type=None,\n",
+       "             interaction_constraints=None, learning_rate=None, max_bin=None,\n",
+       "             max_cat_threshold=None, max_cat_to_onehot=None,\n",
+       "             max_delta_step=None, max_depth=None, max_leaves=None,\n",
+       "             min_child_weight=None, missing=nan, monotone_constraints=None,\n",
+       "             multi_strategy=None, n_estimators=None, n_jobs=None,\n",
+       "             num_parallel_tree=None, random_state=None, ...)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "XGBRegressor(base_score=None, booster=None, callbacks=None,\n", + " colsample_bylevel=None, colsample_bynode=None,\n", + " colsample_bytree=None, device=None, early_stopping_rounds=None,\n", + " enable_categorical=False, eval_metric=None, feature_types=None,\n", + " gamma=None, grow_policy=None, importance_type=None,\n", + " interaction_constraints=None, learning_rate=None, max_bin=None,\n", + " max_cat_threshold=None, max_cat_to_onehot=None,\n", + " max_delta_step=None, max_depth=None, max_leaves=None,\n", + " min_child_weight=None, missing=nan, monotone_constraints=None,\n", + " multi_strategy=None, n_estimators=None, n_jobs=None,\n", + " num_parallel_tree=None, random_state=None, ...)" + ] + }, + "execution_count": 30, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Train the model\n", + "model5.fit(X_train, y_train)" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "7QwLt9iS6zSj", + "outputId": "bfc728a1-e169-44ea-8a4e-4b18e29f8c0e" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "RMSE: 224.66436370022384\n", + "MAE: 162.62070643817412\n", + "MAPE: 0.7441437311249671\n", + "\n" + ] + } + ], + "source": [ + "rmse, mae, mape = evaluate_model(model5, X_test_scaled, y_test)\n", + "metrics[\"Model\"].append(\"XGBoost\")\n", + "metrics[\"RMSE\"].append(rmse)\n", + "metrics[\"MAE\"].append(mae)\n", + "metrics[\"MAPE\"].append(mape)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "sUD1VQBF605K" + }, + "source": [ + "# 6. AdaBoost Regressor" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": { + "id": "0foTLiQp63Y9" + }, + "outputs": [], + "source": [ + "model6 = AdaBoostRegressor()" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 80 + }, + "id": "bkzSWYA365MO", + "outputId": "c1f2bc96-a89c-4c83-873b-0836fa97c154" + }, + "outputs": [ + { + "data": { + "text/html": [ + "
AdaBoostRegressor()
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "AdaBoostRegressor()" + ] + }, + "execution_count": 33, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Train the model\n", + "model6.fit(X_train, y_train)" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "ZKxqdmp166pF", + "outputId": "b027a6a7-45e7-49e3-f93c-ed787d86e83f" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "RMSE: 211.58009272421995\n", + "MAE: 150.12127349523968\n", + "MAPE: 0.709215367666854\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\DEEPANSHU\\anaconda3\\Lib\\site-packages\\sklearn\\base.py:493: UserWarning: X does not have valid feature names, but AdaBoostRegressor was fitted with feature names\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "rmse, mae, mape = evaluate_model(model6, X_test_scaled, y_test)\n", + "metrics[\"Model\"].append(\"AdaBoost Regressor\")\n", + "metrics[\"RMSE\"].append(rmse)\n", + "metrics[\"MAE\"].append(mae)\n", + "metrics[\"MAPE\"].append(mape)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "mtfkPIRi67xo" + }, + "source": [ + "# 7. Decision Tree" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": { + "id": "E6EyzrH36_Fq" + }, + "outputs": [], + "source": [ + "model7 = DecisionTreeRegressor()" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 80 + }, + "id": "DTp5VIYx7AWt", + "outputId": "8c71c048-7309-4aa2-ede9-517e62deaee3" + }, + "outputs": [ + { + "data": { + "text/html": [ + "
DecisionTreeRegressor()
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "DecisionTreeRegressor()" + ] + }, + "execution_count": 36, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Train the model\n", + "model7.fit(X_train, y_train)" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "3YC-pSgv7Dh4", + "outputId": "cd1a1793-3a36-4028-919f-90d79f0c1b46" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "RMSE: 225.19713405326468\n", + "MAE: 163.35574713804317\n", + "MAPE: 0.7574890717636951\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\DEEPANSHU\\anaconda3\\Lib\\site-packages\\sklearn\\base.py:493: UserWarning: X does not have valid feature names, but DecisionTreeRegressor was fitted with feature names\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "rmse, mae, mape = evaluate_model(model7, X_test_scaled, y_test)\n", + "metrics[\"Model\"].append(\"Decision Tree\")\n", + "metrics[\"RMSE\"].append(rmse)\n", + "metrics[\"MAE\"].append(mae)\n", + "metrics[\"MAPE\"].append(mape)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "WfJAZHnP7E_2" + }, + "source": [ + "# 8. KNeighbors Regressor" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": { + "id": "smujnWTRzzDL" + }, + "outputs": [], + "source": [ + "# Create a KNN model\n", + "model8 = KNeighborsRegressor()" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 80 + }, + "id": "zeokqhKd0Aj8", + "outputId": "018dff42-47da-4f2f-8bf9-16938de97723" + }, + "outputs": [ + { + "data": { + "text/html": [ + "
KNeighborsRegressor()
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "KNeighborsRegressor()" + ] + }, + "execution_count": 39, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Train the model\n", + "model8.fit(X_train, y_train)" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "X2uNfESC0CA8", + "outputId": "6c449192-697f-4bb9-9a8e-bc9aed955532" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "RMSE: 224.35603706259303\n", + "MAE: 162.1962430618594\n", + "MAPE: 0.7365233640314862\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\DEEPANSHU\\anaconda3\\Lib\\site-packages\\sklearn\\base.py:493: UserWarning: X does not have valid feature names, but KNeighborsRegressor was fitted with feature names\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "rmse, mae, mape = evaluate_model(model8, X_test_scaled, y_test)\n", + "metrics[\"Model\"].append(\"KNN\")\n", + "metrics[\"RMSE\"].append(rmse)\n", + "metrics[\"MAE\"].append(mae)\n", + "metrics[\"MAPE\"].append(mape)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "X3yNCskZ7KMV" + }, + "source": [ + "# 9. Artificial Neural Networks" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "syd9MRhf0Df1", + "outputId": "1c546101-530f-4e5c-af43-79fd68b68347" + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\DEEPANSHU\\anaconda3\\Lib\\site-packages\\keras\\src\\layers\\core\\dense.py:87: UserWarning: Do not pass an `input_shape`/`input_dim` argument to a layer. When using Sequential models, prefer using an `Input(shape)` object as the first layer in the model instead.\n", + " super().__init__(activity_regularizer=activity_regularizer, **kwargs)\n" + ] + } + ], + "source": [ + "# Create an ANN model\n", + "model9 = Sequential()\n", + "model9.add(Dense(32, activation='relu', input_shape=(X_train.shape[1],)))\n", + "model9.add(Dense(16, activation='relu'))\n", + "model9.add(Dense(1, activation='linear'))" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": { + "id": "pdlxN-Dp0IZr" + }, + "outputs": [], + "source": [ + "# Compile the model\n", + "model9.compile(loss='mean_squared_error', optimizer='adam')" + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "qcryLURL0KIH", + "outputId": "54e02177-ee86-46bf-cfef-496cb59b8577" + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 43, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Train the model\n", + "model9.fit(X_train_scaled, y_train, epochs=100, batch_size=32, verbose=0)" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "Xu6Cwjey0MaP", + "outputId": "92beea16-08fa-45d1-c817-88b1b1e3c688" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[1m45/45\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1ms/step\n", + "RMSE: 2.7823218514274872\n", + "MAE: 1.7367742329144598\n", + "MAPE: 0.011622923464328404\n", + "\n" + ] + } + ], + "source": [ + "rmse, mae, mape = evaluate_model(model9, X_test_scaled, y_test)\n", + "metrics[\"Model\"].append(\"ANN\")\n", + "metrics[\"RMSE\"].append(rmse)\n", + "metrics[\"MAE\"].append(mae)\n", + "metrics[\"MAPE\"].append(mape)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "Yet4TgKq7OZl" + }, + "source": [ + "# 10. Long Short Term Memory" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "metadata": { + "id": "keiZDN4w7UH0" + }, + "outputs": [], + "source": [ + "n_features = X_train_scaled.shape[1]\n", + "n_steps = 10\n", + "n_samples_train = X_train_scaled.shape[0] - n_steps + 1\n", + "n_samples_test = X_test_scaled.shape[0] - n_steps + 1\n", + "\n", + "# Reshape the input data\n", + "X_train_reshaped = np.array([X_train_scaled[i:i+n_steps, :] for i in range(n_samples_train)])\n", + "X_test_reshaped = np.array([X_test_scaled[i:i+n_steps, :] for i in range(n_samples_test)])" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "nRRTkQTD7Vjd", + "outputId": "8c0e1de9-8382-482f-dc46-d6148e3f535e" + }, + "outputs": [], + "source": [ + "model10 = Sequential()\n", + "model10.add(LSTM(128, return_sequences = True, input_shape=(n_steps, n_features)))\n", + "model10.add(LSTM(64, return_sequences = True))\n", + "model10.add(LSTM(32, return_sequences = False))\n", + "model10.add(Dense(64))\n", + "model10.add(Dense(1))" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "metadata": { + "id": "3UJtO3wC7WWe" + }, + "outputs": [], + "source": [ + "# Compile the model\n", + "model10.compile(loss='mean_squared_error', optimizer='adam')\n" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "ld9dofMD7YNO", + "outputId": "2b3021f3-d88f-431c-a059-a9b6e065a29b" + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 52, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "model10.fit(X_train_reshaped, y_train[n_steps-1:], epochs=50, batch_size=32, verbose=0)" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "lOTdB8Bj7aXM", + "outputId": "c844bad9-4c1e-447f-dad9-7b86f57dee9b" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[1m44/44\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 12ms/step\n", + "RMSE: 3.3970840606919817\n", + "MAE: 2.3823417967059495\n", + "MAPE: 0.023917546379577784\n", + "\n" + ] + } + ], + "source": [ + "rmse, mae, mape = evaluate_model(model10, X_test_reshaped, y_test[n_steps-1:])\n", + "\n", + "# Store metrics\n", + "metrics[\"Model\"].append(\"LSTM\")\n", + "metrics[\"RMSE\"].append(rmse)\n", + "metrics[\"MAE\"].append(mae)\n", + "metrics[\"MAPE\"].append(mape)" + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 506 + }, + "id": "O8DHEHgI0wNg", + "outputId": "5cd999c9-0cca-4d23-da28-8655ce099354" + }, + "outputs": [ + { + "data": { + "image/png": "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EREZDIZfIiIiIjIYDL9EREREZDAYfomIiIjIYDD8EhEREZHBYPglIiIiIoPB8EtEREREBoPhl4iIiIgMhomuCyAiIt3adjtY1yV8lcZO2XVdAhHpIfb8EhEREZHBYPglIiIiIoPB8EtEREREBoPhl4iIiIgMBsMvERERERkMhl8iIiIiMhgMv0RERERkMBh+iYiIiMhgMPwSERERkcFg+CUiIiIig8HwS0REREQGQ6fhd8KECXBxcYGVlRWyZcuGhg0b4vbt21ptRAQBAQFwcHCApaUlPDw8cP36da02sbGx6N27N7JkyYL06dOjfv36CAoK+pG7QkRERER6QKfh99ixY+jZsydOnz6N3377DQkJCahVqxaio6OVNpMnT8b06dMxd+5cnD17Fvb29qhZsyYiIyOVNn369MH27duxYcMGnDhxAlFRUfD29kZiYqIudouIiIiIUikTXf7y/fv3a91esWIFsmXLhvPnz8Pd3R0igpkzZ2Lo0KFo3LgxAGDVqlWws7NDYGAgunXrhvDwcCxbtgxr1qxBjRo1AABr166Fo6Mjfv/9d3h6en7we2NjYxEbG6vcjoiI+I57SURERESpRaoa8xseHg4AyJw5MwDgwYMHCAkJQa1atZQ25ubmqFKlCk6ePAkAOH/+POLj47XaODg4oFixYkqb902YMAE2NjbKj6Oj4/faJSIiIiJKRVJN+BUR9OvXD5UqVUKxYsUAACEhIQAAOzs7rbZ2dnbKfSEhITAzM0OmTJk+2eZ9/v7+CA8PV36ePHmS0rtDRERERKmQToc9JNerVy9cuXIFJ06c+OA+lUqldVtEPtj2vn9rY25uDnNz868vloiIiIj0Uqro+e3duzd27dqFI0eOIGfOnMp2e3t7APigBzc0NFTpDba3t0dcXBzCwsI+2YaIiIiICNBx+BUR9OrVC9u2bcPhw4eRN29erfvz5s0Le3t7/Pbbb8q2uLg4HDt2DBUqVAAAlClTBqamplptgoODce3aNaUNERERERGg42EPPXv2RGBgIHbu3AkrKyulh9fGxgaWlpZQqVTo06cPxo8fj4IFC6JgwYIYP3480qVLh9atWyttO3fujP79+8PW1haZM2eGn58fihcvrqz+QEREREQE6Dj8LliwAADg4eGhtX3FihXo0KEDAGDgwIF49+4devTogbCwMJQvXx4HDx6ElZWV0n7GjBkwMTFB8+bN8e7dO1SvXh0rV66EsbHxj9oVIiIiItIDOg2/IvKfbVQqFQICAhAQEPDJNhYWFpgzZw7mzJmTgtURERERUVqTKia8ERERERH9CAy/RERERGQwGH6JiIiIyGAw/BIRERGRwWD4JSIiIiKDwfBLRERERAaD4ZeIiIiIDAbDLxEREREZDIZfIiIiIjIYDL9EREREZDAYfomIiIjIYDD8EhEREZHBYPglIiIiIoPB8EtEREREBoPhl4iIiIgMBsMvERERERkMhl8iIiIiMhgMv0RERERkMBh+iYiIiMhgMPwSERERkcFg+CUiIiIig8HwS0REREQGg+GXiIiIiAwGwy8RERERGQyGXyIiIiIyGAy/RERERGQwGH6JiIiIyGAw/BIRERGRwWD4JSIiIiKDwfBLRERERAaD4ZeIiIiIDAbDLxEREREZDIZfIiIiIjIYDL9EREREZDAYfomIiIjIYDD8EhEREZHBYPglIiIiIoPB8EtEREREBoPhl4iIiIgMBsMvERERERkMhl8iIiIiMhgMv0RERERkMBh+iYiIiMhgMPwSERERkcFg+CUiIiIig8HwS0REREQGg+GXiIiIiAwGwy8RERERGQyGXyIiIiIyGAy/RERERGQwGH6JiIiIyGAw/BIRERGRwWD4JSIiIiKDwfBLRERERAaD4ZeIiIiIDIZOw+8ff/yBevXqwcHBASqVCjt27NC6v0OHDlCpVFo/rq6uWm1iY2PRu3dvZMmSBenTp0f9+vURFBT0A/eCiIiIiPSFTsNvdHQ0fvrpJ8ydO/eTbWrXro3g4GDl59dff9W6v0+fPti+fTs2bNiAEydOICoqCt7e3khMTPze5RMRERGRnjHR5S/38vKCl5fXv7YxNzeHvb39R+8LDw/HsmXLsGbNGtSoUQMAsHbtWjg6OuL333+Hp6fnRx8XGxuL2NhY5XZERMRX7gERERER6ZNUP+b36NGjyJYtGwoVKoSuXbsiNDRUue/8+fOIj49HrVq1lG0ODg4oVqwYTp48+cnnnDBhAmxsbJQfR0fH77oPRERERJQ6pOrw6+XlhXXr1uHw4cOYNm0azp49i2rVqim9tiEhITAzM0OmTJm0HmdnZ4eQkJBPPq+/vz/Cw8OVnydPnnzX/SAiIiKi1EGnwx7+S4sWLZR/FytWDGXLlkXu3Lmxd+9eNG7c+JOPExGoVKpP3m9ubg5zc/MUrZWIiIiIUr9UHX7flz17duTOnRt37twBANjb2yMuLg5hYWFavb+hoaGoUKGCrsqk92y7HazrEr5KY6fsui6BiIiIUliqHvbwvlevXuHJkyfInj0plJQpUwampqb47bfflDbBwcG4du0awy8RERERfUCnPb9RUVG4e/eucvvBgwe4dOkSMmfOjMyZMyMgIABNmjRB9uzZ8fDhQwwZMgRZsmRBo0aNAAA2Njbo3Lkz+vfvD1tbW2TOnBl+fn4oXry4svoDEREREZGGTsPvuXPnULVqVeV2v379AADt27fHggULcPXqVaxevRpv3rxB9uzZUbVqVWzcuBFWVlbKY2bMmAETExM0b94c7969Q/Xq1bFy5UoYGxv/8P0hIiIiotRNp+HXw8MDIvLJ+w8cOPCfz2FhYYE5c+Zgzpw5KVkaEREREaVBejXml4iIiIjoWzD8EhEREZHBYPglIiIiIoPB8EtEREREBoPhl4iIiIgMBsMvERERERkMhl8iIiIiMhgMv0RERERkMBh+iYiIiMhgMPwSERERkcFg+CUiIiIig8HwS0REREQGg+GXiIiIiAwGwy8RERERGQyGXyIiIiIyGAy/RERERGQwGH6JiIiIyGAw/BIRERGRwWD4JSIiIiKD8UXh96+//kJiYqJyW0S07o+NjcWmTZtSpjIiIiIiohT2ReHXzc0Nr169Um7b2Njg/v37yu03b96gVatWKVcdEREREVEK+qLw+35P7/u3P7WNiIiIiCg1SPExvyqVKqWfkoiIiIgoRXDCGxEREREZDJMvfcCNGzcQEhICIGmIw61btxAVFQUAePnyZcpWR0RERESUgr44/FavXl1rXK+3tzeApOEOIsJhD0RERESUan1R+H3w4MH3qoOIiIiI6Lv7ovCbO3fu71UHEREREdF390UT3l6/fo2goCCtbdevX0fHjh3RvHlzBAYGpmhxREREREQp6YvCb8+ePTF9+nTldmhoKCpXroyzZ88iNjYWHTp0wJo1a1K8SCIiIiKilPBF4ff06dOoX7++cnv16tXInDkzLl26hJ07d2L8+PGYN29eihdJRERERJQSvij8hoSEIG/evMrtw4cPo1GjRjAxSRo6XL9+fdy5cydlKyQiIiIiSiFfFH6tra3x5s0b5fZff/0FV1dX5bZKpUJsbGyKFUdE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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a DataFrame for metrics\n", + "metrics_df = pd.DataFrame(metrics)\n", + "\n", + "plt.figure(figsize=(20, 5))\n", + "\n", + "# RMSE Plot\n", + "plt.subplot(1, 3, 1)\n", + "plt.bar(metrics_df['Model'], metrics_df['RMSE'], color='lightblue')\n", + "plt.ylabel('RMSE')\n", + "plt.xlabel('Model')\n", + "plt.xticks(rotation=45,ha='right')\n", + "plt.title('RMSE for Different Models')\n", + "\n", + "plt.tight_layout()\n", + "plt.show()\n" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 506 + }, + "id": "mwniKbys0xJ0", + "outputId": "ff2fe79a-78c2-4e13-efef-75e89882656b" + }, + "outputs": [ + { + "data": { + "image/png": "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LjUQERERkf59VGj99ttvv+gdrwICAjB69Gj4+PggLCwMjo6O6NWrF8aMGaO0GTp0KGJjY+Hj46PcXGDv3r2co5WIiIgoA/nomwt8SVZWVpgzZw7mzJnz3jYajQZ+fn7w8/P7YnURERER0ZeV/gNRiYiIiIjSGUMrEREREakeQysRERERqR5DKxERERGpHkMrEREREakeQysRERERqR5DKxERERGpHkMrEREREakeQysRERERqR5DKxERERGpHkMrEREREakeQysRERERqR5DKxERERGpHkMrEREREakeQysRERERqR5DKxERERGpHkMrEREREakeQysRERERqR5DKxERERGpHkMrEREREakeQysRERERqR5DKxERERGpHkMrEREREakeQysRERERqR5DKxERERGpHkMrEREREame6kPr33//jY4dO8LW1haZMmVCmTJlcPbsWWW9iMDPzw+Ojo6wtLSEu7s7rl69qseKiYiIiCi9qTq0hoeHo1q1ajA1NcXvv/+Oa9euYebMmciaNavSZtq0aZg1axYCAwNx+vRpODg4oF69eoiKitJf4URERESUrkz0XcA/mTp1KpycnLB8+XJlWf78+ZV/iwjmzJmDkSNHonnz5gCAFStWwN7eHmvXrkWvXr3e+brx8fGIj49Xfo6MjPw8G0BERERE6ULVPa3bt29HhQoV0KpVK9jZ2aFs2bJYsmSJsj44OBihoaHw8PBQlpmbm8PNzQ3Hjx9/7+v6+/vDxsZGeTg5OX3W7SAiIiKi/0bVofXevXtYuHAhihQpgj179uD7779Hv379sHLlSgBAaGgoAMDe3l7nefb29sq6d/H19UVERITyePTo0efbCCIiIiL6z1Q9PCAlJQUVKlTA5MmTAQBly5bF1atXsXDhQnz77bdKO41Go/M8EXlrWVrm5uYwNzf/PEUTERERUbpTdU9rrly5UKJECZ1lxYsXx8OHDwEADg4OAPBWr2pYWNhbva9EREREZLhUHVqrVauGmzdv6iy7desW8uXLBwAoUKAAHBwcsG/fPmV9QkICjhw5gqpVq37RWomIiIjo81H18IABAwagatWqmDx5Mlq3bo2//voLixcvxuLFiwGkDgvo378/Jk+ejCJFiqBIkSKYPHkyMmXKhPbt2+u5eiIiIiJKL6oOra6urti6dSt8fX0xfvx4FChQAHPmzEGHDh2UNkOHDkVsbCx8fHwQHh6OSpUqYe/evbCystJj5URERESUnlQdWgHA29sb3t7e712v0Wjg5+cHPz+/L1cUEREREX1Rqh7TSkREREQEMLQSERERkQFgaCUiIiIi1WNoJSIiIiLVY2glIiIiItVjaCUiIiIi1WNoJSIiIiLVY2glIiIiItVjaCUiIiIi1WNoJSIiIiLVY2glIiIiItVjaCUiIiIi1WNoJSIiIiLVY2glIiIiItVjaCUiIiIi1WNoJSIiIiLVY2glIiIiItVjaCUiIiIi1WNoJSIiIiLVY2glIiIiItVjaCUiIiIi1WNoJSIiIiLVY2glIiIiItVjaCUiIiIi1WNoJSIiIiLVM6jQ6u/vD41Gg/79+yvLRAR+fn5wdHSEpaUl3N3dcfXqVf0VSURERETpzmBC6+nTp7F48WJ88803OsunTZuGWbNmITAwEKdPn4aDgwPq1auHqKgoPVVKREREROnNIEJrdHQ0OnTogCVLliBbtmzKchHBnDlzMHLkSDRv3hwlS5bEihUr8Pr1a6xdu1aPFRMRERFRejKI0Nq7d280bNgQdevW1VkeHByM0NBQeHh4KMvMzc3h5uaG48ePv/f14uPjERkZqfMgIiIiIvUy0XcB/2b9+vU4d+4cTp8+/da60NBQAIC9vb3Ocnt7ezx48OC9r+nv749x48alb6FERERE9Nmouqf10aNH+PHHH7F69WpYWFi8t51Go9H5WUTeWpaWr68vIiIilMejR4/SrWYiIiIiSn+q7mk9e/YswsLCUL58eWVZcnIy/vjjDwQGBuLmzZsAUntcc+XKpbQJCwt7q/c1LXNzc5ibm3++womIiIgoXam6p7VOnTq4fPkyLly4oDwqVKiADh064MKFCyhYsCAcHBywb98+5TkJCQk4cuQIqlatqsfKiYiIiCg9qbqn1crKCiVLltRZljlzZtja2irL+/fvj8mTJ6NIkSIoUqQIJk+ejEyZMqF9+/b6KJmIiIiIPgNVh9YPMXToUMTGxsLHxwfh4eGoVKkS9u7dCysrK32XRkRERETpxOBC6+HDh3V+1mg08PPzg5+fn17qISIiIqLPT9VjWomIiIiIAIZWIiIiIjIADK1EREREpHoMrURERESkegytRERERKR6DK1EREREpHoMrURERESkegytRERERKR6DK1EREREpHoMrURERESkegytRERERKR6DK1EREREpHoMrURERESkegytRERERKR6DK1EREREpHoMrURERESkegytRERERKR6DK1EREREpHoMrURERESkegytRERERKR6DK1EREREpHoMrURERESkegytRERERKR6DK1EREREpHoMrURERESkeqoOrf7+/nB1dYWVlRXs7OzQtGlT3Lx5U6eNiMDPzw+Ojo6wtLSEu7s7rl69qqeKiYiIiOhzUHVoPXLkCHr37o2TJ09i3759SEpKgoeHB2JiYpQ206ZNw6xZsxAYGIjTp0/DwcEB9erVQ1RUlB4rJyIiIqL0ZKLvAv7J7t27dX5evnw57OzscPbsWdSsWRMigjlz5mDkyJFo3rw5AGDFihWwt7fH2rVr0atXL32UTURERETpTNU9rW+KiIgAAGTPnh0AEBwcjNDQUHh4eChtzM3N4ebmhuPHj7/3deLj4xEZGanzICIiIiL1MpjQKiIYOHAgqlevjpIlSwIAQkNDAQD29vY6be3t7ZV17+Lv7w8bGxvl4eTk9PkKJyIiIqL/zGBCa58+fXDp0iWsW7furXUajUbnZxF5a1lavr6+iIiIUB6PHj1K93qJiIiIKP2oekyrVt++fbF9+3b88ccfyJMnj7LcwcEBQGqPa65cuZTlYWFhb/W+pmVubg5zc/PPVzARERERpStV97SKCPr06YMtW7bg4MGDKFCggM76AgUKwMHBAfv27VOWJSQk4MiRI6hateqXLpeIiIiIPhNV97T27t0ba9euxa+//gorKytlnKqNjQ0sLS2h0WjQv39/TJ48GUWKFEGRIkUwefJkZMqUCe3bt9dz9URERESUXlQdWhcuXAgAcHd311m+fPlydOnSBQAwdOhQxMbGwsfHB+Hh4ahUqRL27t0LKyurL1wtEREREX0uqg6tIvKvbTQaDfz8/ODn5/f5CyIiIiIivVD1mFYiIiIiIoChlYiIiIgMAEMrEREREakeQysRERERqR5DKxERERGpHkMrEREREakeQysRERERqR5DKxERERGpHkMrEREREakeQysRERERqR5DKxERERGpHkMrEREREakeQysRERERqR5DKxERERGpHkMrEREREakeQysRERERqR5DKxERERGpHkMrEREREakeQysRERERqR5DKxERERGpHkMrEREREakeQysRERERqR5DKxERERGpHkMr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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# MAE Plot\n", + "plt.figure(figsize=(20, 5))\n", + "plt.subplot(1, 3, 2)\n", + "plt.bar(metrics_df['Model'], metrics_df['MAE'], color='lightgreen') # Changed to plt.bar()\n", + "plt.ylabel('MAE') # Set y-label to MAE\n", + "plt.xlabel('Model') # Set x-label to Model\n", + "plt.xticks(rotation=45,ha='right') # Rotate x-axis labels for better readability\n", + "plt.title('MAE for Different Models')\n", + "\n", + "plt.tight_layout()\n", + "plt.show()\n" + ] + }, + { + "cell_type": "code", + "execution_count": 56, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 506 + }, + "id": "vxK0_IkL1zaU", + "outputId": "69c4c24b-f6d5-4a4c-f85a-baa8455475e5" + }, + "outputs": [ + { + "data": { + "image/png": "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iIiAnZ2dTpmdnR0SExPx5MmT99aJiIh46z4DAgJgY2OjPHi7VyIiIiLDYzCJa69evXD+/PkPupT/5l0VtKMdUpe/rc677sbg7++PyMhI5XH37t30hk9EREREn5lB3PK1d+/e2LRpEw4dOoTcuXO/t669vX2antNHjx7BxMQEtra2763zZi+slrm5OczNzf9DC4iIiIjoc9Nrj6uIoFevXli3bh327duH/Pnz/+s27u7u2L17t07Zrl27UL58eZiamr63TqVKlT5d8ERERET0Rem1x7Vnz55YsWIFNm7cCCsrK6WX1MbGBpaWlgBSLuPfv38fS5cuBZCygsDcuXPRv39/dOnSBWFhYVi8eLHOEIMff/wRHh4emDRpEho1aoSNGzdiz549OHLkyJdvJAEAEkb/pO8Q0s105DR9h0BERESp6LXHdd68eYiMjET16tWRM2dO5bFq1SqlTnh4OO7cuaM8z58/P7Zt24YDBw6gTJkyGDt2LGbPno0mTZoodSpVqoSVK1diyZIlKFWqFIKDg7Fq1SpUrFjxi7aPiIiIiD4dg1rH1VBwHddPjz2uRERE9C6qXMeViIiIiOhdmLgSERERkSowcSUiIiIiVWDiSkRERESqwMSViIiIiFSBiSsRERERqQITVyIiIiJSBSauRERERKQKTFyJiIiISBWYuBIRERGRKjBxJSIiIiJVYOJKRERERKrAxJWIiIiIVIGJKxERERGpAhNXIiIiIlIFJq5EREREpApMXImIiIhIFZi4EhEREZEqMHElIiIiIlVg4kpEREREqsDElYiIiIhUgYkrEREREakCE1ciIiIiUgUmrkRERESkCkxciYiIiEgVmLgSERERkSowcSUiIiIiVdBr4nro0CE0aNAADg4O0Gg02LBhw3vrt2/fHhqNJs3D2dlZqRMcHPzWOrGxsZ+5NURERET0Oek1cY2JiUHp0qUxd+7cD6o/a9YshIeHK4+7d+8ia9asaNasmU49a2trnXrh4eGwsLD4HE0gIiIioi/ERJ9/3NvbG97e3h9c38bGBjY2NsrzDRs24Pnz5+jQoYNOPY1GA3t7+08WJxERERHpn6rHuC5evBi1a9eGo6OjTvnLly/h6OiI3Llzw8fHB2fOnHnvfuLi4hAVFaXzICIiIiLDotrENTw8HNu3b0fnzp11yosWLYrg4GBs2rQJISEhsLCw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791nXFwcoqKidB5EREREZFj0lrg+efIESUlJsLOz0ym3s7NDRETEW7fJmTMnFi5ciNDQUKxbtw5OTk6oVasWDh06pNSJiIhI1z4BICAgADY2NsojT548/6FlRERERPQ5mOg7AI1Go/NcRNKUaTk5OcHJyUl57u7ujrt372Lq1Knw8PD4qH0CgL+/P/r37688j4qKYvJKREREZGD01uOaLVs2GBsbp+kJffToUZoe0/dxc3PD9evXlef29vbp3qe5uTmsra11HkRERERkWPSWuJqZmaFcuXLYvXu3Tvnu3btRqVKlD97PmTNnkDNnTuW5u7t7mn3u2rUrXfskIiIiIsOj16EC/fv3h5+fH8qXLw93d3csXLgQd+7cQffu3QGkXMK/f/8+li5dCiBlxYB8+fLB2dkZ8fHxWL58OUJDQxEaGqrs88cff4SHhwcmTZqERo0aYePGjdizZw+OHDmilzYSERER0aeh18TV19cXT58+xZgxYxAeHo4SJUpg27ZtcHR0BACEh4frrOkaHx+PAQMG4P79+7C0tISzszO2bt2KevXqKXUqVaqElStXYvjw4fj5559RsGBBrFq1ChUrVvzi7SMiIiKiT0fvk7N69OiBHj16vPW14OBgneeDBg3CoEGD/nWfTZs2RdOmTT9FeERERERkIPR+y1ciIiIiog/BxJWIiIiIVIGJKxERERGpAhNXIiIiIlIFJq5EREREpApMXImIiIhIFZi4EhEREZEqMHElIiIiIlVg4kpEREREqsDElYiIiIhUgYkrEREREakCE1ciIiIiUgUmrkRERESkCkxciYiIiEgVmLgSERERkSowcSUiIiIiVWDiSkRERESqwMSViIiIiFSBiSsRERERqQITVyIiIiJSBSauRERERKQKTFyJiIiISBWYuBIRERGRKjBxJSIiIiJVYOJKRERERKrAxJWIiIiIVIGJKxERERGpgt4T18DAQOTPnx8WFhYoV64cDh8+/M6669atQ506dZA9e3ZYW1vD3d0dO3fu1KkTHBwMjUaT5hEbG/u5m0JEREREn5FeE9dVq1ahb9++GDZsGM6cOYOqVavC29sbd+7ceWv9Q4cOoU6dOti2bRtOnTqFGjVqoEGDBjhz5oxOPWtra4SHh+s8LCwsvkSTiIiIiOgzMdHnH58+fTo6deqEzp07AwBmzpyJnTt3Yt68eQgI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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# MAPE Plot\n", + "plt.figure(figsize=(20, 5))\n", + "plt.subplot(1, 3, 3)\n", + "plt.bar(metrics_df['Model'], metrics_df['MAPE'], color='salmon')\n", + "plt.ylabel('MAPE')\n", + "plt.xlabel('Model')\n", + "plt.xticks(rotation=45,ha='right')\n", + "plt.title('MAPE for Different Models')\n", + "\n", + "plt.tight_layout()\n", + "plt.show()\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "colab": { + "provenance": [] + }, + "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.5" + } + }, + "nbformat": 4, + "nbformat_minor": 1 +} diff --git a/repo_structure.txt b/repo_structure.txt index 89201c2..0cb7129 100644 --- a/repo_structure.txt +++ b/repo_structure.txt @@ -55,6 +55,7 @@ │ └── Stock_Price_Prediction_REMOTE_20502.ipynb ├── README.md ├── SBIN.csv +├── Stock_Price_Prediction(Updated) MultiLayer LSTM.ipynb ├── Stock_Price_Prediction(Updated).ipynb ├── Stock_Price_Prediction.ipynb ├── Stock_Recommendation.ipynb