diff --git a/nbs/lesson05-190011611-ciro-c-ciro-costa.ipynb b/nbs/lesson05-190011611-ciro-c-ciro-costa.ipynb new file mode 100644 index 00000000..61e34334 --- /dev/null +++ b/nbs/lesson05-190011611-ciro-c-ciro-costa.ipynb @@ -0,0 +1 @@ +{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"name":"python","version":"3.10.12","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"markdown","source":"# Linear model of anxiety on the student mental\n\n\n## Introduction\nThe main objetive of this notebook it is to create a linear model capable of predict if a given student have panic attack.\n\n\nLesson 5 - Student 190011611\n\nGithub: ciro-c","metadata":{}},{"cell_type":"markdown","source":"## Importing packages","metadata":{}},{"cell_type":"code","source":"import torch\nimport numpy as np\nimport pandas as pd\nimport matplotlib.pyplot as plt\nimport seaborn as sns\nnp.set_printoptions(linewidth=140)\ntorch.set_printoptions(linewidth=140, sci_mode=False, edgeitems=7)\npd.set_option('display.width', 140)","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","execution":{"iopub.status.busy":"2023-11-13T01:03:33.864524Z","iopub.execute_input":"2023-11-13T01:03:33.865054Z","iopub.status.idle":"2023-11-13T01:03:33.870417Z","shell.execute_reply.started":"2023-11-13T01:03:33.865021Z","shell.execute_reply":"2023-11-13T01:03:33.869446Z"},"trusted":true},"execution_count":3,"outputs":[]},{"cell_type":"markdown","source":"## Getting dataset and pre processing\n\nThe dataset we are going to use to train our model is [Student Mental health](https://www.kaggle.com/datasets/shariful07/student-mental-health/data)","metadata":{}},{"cell_type":"code","source":"df = pd.read_csv(\"/kaggle/input/student-mental-health/Student Mental health.csv\")\ndf.head(5)","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:03:36.004355Z","iopub.execute_input":"2023-11-13T01:03:36.005058Z","iopub.status.idle":"2023-11-13T01:03:36.040757Z","shell.execute_reply.started":"2023-11-13T01:03:36.005027Z","shell.execute_reply":"2023-11-13T01:03:36.039872Z"},"trusted":true},"execution_count":4,"outputs":[{"execution_count":4,"output_type":"execute_result","data":{"text/plain":" Timestamp Choose your gender Age What is your course? Your current year of Study What is your CGPA? Marital status \\\n0 8/7/2020 12:02 Female 18.0 Engineering year 1 3.00 - 3.49 No \n1 8/7/2020 12:04 Male 21.0 Islamic education year 2 3.00 - 3.49 No \n2 8/7/2020 12:05 Male 19.0 BIT Year 1 3.00 - 3.49 No \n3 8/7/2020 12:06 Female 22.0 Laws year 3 3.00 - 3.49 Yes \n4 8/7/2020 12:13 Male 23.0 Mathemathics year 4 3.00 - 3.49 No \n\n Do you have Depression? Do you have Anxiety? Do you have Panic attack? Did you seek any specialist for a treatment? \n0 Yes No Yes No \n1 No Yes No No \n2 Yes Yes Yes No \n3 Yes No No No \n4 No No No No ","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 \n \n \n \n \n \n \n \n \n \n \n \n
TimestampChoose your genderAgeWhat is your course?Your current year of StudyWhat is your CGPA?Marital statusDo you have Depression?Do you have Anxiety?Do you have Panic attack?Did you seek any specialist for a treatment?
08/7/2020 12:02Female18.0Engineeringyear 13.00 - 3.49NoYesNoYesNo
18/7/2020 12:04Male21.0Islamic educationyear 23.00 - 3.49NoNoYesNoNo
28/7/2020 12:05Male19.0BITYear 13.00 - 3.49NoYesYesYesNo
38/7/2020 12:06Female22.0Lawsyear 33.00 - 3.49YesYesNoNoNo
48/7/2020 12:13Male23.0Mathemathicsyear 43.00 - 3.49NoNoNoNoNo
\n
"},"metadata":{}}]},{"cell_type":"markdown","source":"The column timestamp it means nothing to our goal. So we are going to exclude it.","metadata":{}},{"cell_type":"code","source":"df.drop('Timestamp', axis=1, inplace=True)\ndf.head(5)","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:03:38.200448Z","iopub.execute_input":"2023-11-13T01:03:38.200807Z","iopub.status.idle":"2023-11-13T01:03:38.221496Z","shell.execute_reply.started":"2023-11-13T01:03:38.200776Z","shell.execute_reply":"2023-11-13T01:03:38.220640Z"},"trusted":true},"execution_count":5,"outputs":[{"execution_count":5,"output_type":"execute_result","data":{"text/plain":" Choose your gender Age What is your course? Your current year of Study What is your CGPA? Marital status Do you have Depression? \\\n0 Female 18.0 Engineering year 1 3.00 - 3.49 No Yes \n1 Male 21.0 Islamic education year 2 3.00 - 3.49 No No \n2 Male 19.0 BIT Year 1 3.00 - 3.49 No Yes \n3 Female 22.0 Laws year 3 3.00 - 3.49 Yes Yes \n4 Male 23.0 Mathemathics year 4 3.00 - 3.49 No No \n\n Do you have Anxiety? Do you have Panic attack? Did you seek any specialist for a treatment? \n0 No Yes No \n1 Yes No No \n2 Yes Yes No \n3 No No No \n4 No No No ","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 \n \n \n \n \n \n
Choose your genderAgeWhat is your course?Your current year of StudyWhat is your CGPA?Marital statusDo you have Depression?Do you have Anxiety?Do you have Panic attack?Did you seek any specialist for a treatment?
0Female18.0Engineeringyear 13.00 - 3.49NoYesNoYesNo
1Male21.0Islamic educationyear 23.00 - 3.49NoNoYesNoNo
2Male19.0BITYear 13.00 - 3.49NoYesYesYesNo
3Female22.0Lawsyear 33.00 - 3.49YesYesNoNoNo
4Male23.0Mathemathicsyear 43.00 - 3.49NoNoNoNoNo
\n
"},"metadata":{}}]},{"cell_type":"markdown","source":"Now lets change the columns names to be more easy to manipulate\n","metadata":{}},{"cell_type":"code","source":"new_columns = ['Gender','Age','Major','Year','CGPA','Marriage','Depression','Anxiety','Panic','Treatment']\ndf.columns = new_columns\ndf.head(5)","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:03:40.247794Z","iopub.execute_input":"2023-11-13T01:03:40.248244Z","iopub.status.idle":"2023-11-13T01:03:40.267216Z","shell.execute_reply.started":"2023-11-13T01:03:40.248209Z","shell.execute_reply":"2023-11-13T01:03:40.266137Z"},"trusted":true},"execution_count":6,"outputs":[{"execution_count":6,"output_type":"execute_result","data":{"text/plain":" Gender Age Major Year CGPA Marriage Depression Anxiety Panic Treatment\n0 Female 18.0 Engineering year 1 3.00 - 3.49 No Yes No Yes No\n1 Male 21.0 Islamic education year 2 3.00 - 3.49 No No Yes No No\n2 Male 19.0 BIT Year 1 3.00 - 3.49 No Yes Yes Yes No\n3 Female 22.0 Laws year 3 3.00 - 3.49 Yes Yes No No No\n4 Male 23.0 Mathemathics year 4 3.00 - 3.49 No No No No No","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 \n \n \n \n \n \n
GenderAgeMajorYearCGPAMarriageDepressionAnxietyPanicTreatment
0Female18.0Engineeringyear 13.00 - 3.49NoYesNoYesNo
1Male21.0Islamic educationyear 23.00 - 3.49NoNoYesNoNo
2Male19.0BITYear 13.00 - 3.49NoYesYesYesNo
3Female22.0Lawsyear 33.00 - 3.49YesYesNoNoNo
4Male23.0Mathemathicsyear 43.00 - 3.49NoNoNoNoNo
\n
"},"metadata":{}}]},{"cell_type":"markdown","source":"Now lets change Major and Year lines to upper case","metadata":{}},{"cell_type":"code","source":"df['Year'] = df['Year'].str.upper()\ndf['Major'] = df['Major'].str.upper()","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:03:41.840196Z","iopub.execute_input":"2023-11-13T01:03:41.841041Z","iopub.status.idle":"2023-11-13T01:03:41.846844Z","shell.execute_reply.started":"2023-11-13T01:03:41.841009Z","shell.execute_reply":"2023-11-13T01:03:41.845904Z"},"trusted":true},"execution_count":7,"outputs":[]},{"cell_type":"code","source":"df['Major'].unique()","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:03:44.015657Z","iopub.execute_input":"2023-11-13T01:03:44.016317Z","iopub.status.idle":"2023-11-13T01:03:44.025711Z","shell.execute_reply.started":"2023-11-13T01:03:44.016283Z","shell.execute_reply":"2023-11-13T01:03:44.024763Z"},"trusted":true},"execution_count":8,"outputs":[{"execution_count":8,"output_type":"execute_result","data":{"text/plain":"array(['ENGINEERING', 'ISLAMIC EDUCATION', 'BIT', 'LAWS', 'MATHEMATHICS', 'PENDIDIKAN ISLAM', 'BCS', 'HUMAN RESOURCES', 'IRKHS',\n 'PSYCHOLOGY', 'KENMS', 'ACCOUNTING ', 'ENM', 'MARINE SCIENCE', 'KOE', 'BANKING STUDIES', 'BUSINESS ADMINISTRATION', 'LAW', 'KIRKHS',\n 'USULUDDIN ', 'TAASL', 'ENGINE', 'ALA', 'BIOMEDICAL SCIENCE', 'BENL', 'IT', 'CTS', 'ENGIN', 'ECONS', 'MHSC', 'MALCOM', 'KOP',\n 'HUMAN SCIENCES ', 'BIOTECHNOLOGY', 'COMMUNICATION ', 'DIPLOMA NURSING', 'PENDIDIKAN ISLAM ', 'RADIOGRAPHY', 'FIQH FATWA ',\n 'DIPLOMA TESL', 'FIQH', 'NURSING '], dtype=object)"},"metadata":{}}]},{"cell_type":"code","source":"df['Year'].unique()","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:03:45.319036Z","iopub.execute_input":"2023-11-13T01:03:45.319890Z","iopub.status.idle":"2023-11-13T01:03:45.326007Z","shell.execute_reply.started":"2023-11-13T01:03:45.319856Z","shell.execute_reply":"2023-11-13T01:03:45.324913Z"},"trusted":true},"execution_count":9,"outputs":[{"execution_count":9,"output_type":"execute_result","data":{"text/plain":"array(['YEAR 1', 'YEAR 2', 'YEAR 3', 'YEAR 4'], dtype=object)"},"metadata":{}}]},{"cell_type":"code","source":"df['CGPA'].unique()","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:03:46.620636Z","iopub.execute_input":"2023-11-13T01:03:46.621069Z","iopub.status.idle":"2023-11-13T01:03:46.627946Z","shell.execute_reply.started":"2023-11-13T01:03:46.621031Z","shell.execute_reply":"2023-11-13T01:03:46.627002Z"},"trusted":true},"execution_count":10,"outputs":[{"execution_count":10,"output_type":"execute_result","data":{"text/plain":"array(['3.00 - 3.49', '3.50 - 4.00', '3.50 - 4.00 ', '2.50 - 2.99', '2.00 - 2.49', '0 - 1.99'], dtype=object)"},"metadata":{}}]},{"cell_type":"markdown","source":"Checking for dupplicates and treating null or missing values ","metadata":{}},{"cell_type":"code","source":"df.duplicated().sum()","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:03:49.866338Z","iopub.execute_input":"2023-11-13T01:03:49.867142Z","iopub.status.idle":"2023-11-13T01:03:49.875849Z","shell.execute_reply.started":"2023-11-13T01:03:49.867111Z","shell.execute_reply":"2023-11-13T01:03:49.874925Z"},"trusted":true},"execution_count":11,"outputs":[{"execution_count":11,"output_type":"execute_result","data":{"text/plain":"0"},"metadata":{}}]},{"cell_type":"code","source":"# Missing values\ndf.isna().sum()","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:03:51.286161Z","iopub.execute_input":"2023-11-13T01:03:51.287033Z","iopub.status.idle":"2023-11-13T01:03:51.294494Z","shell.execute_reply.started":"2023-11-13T01:03:51.286997Z","shell.execute_reply":"2023-11-13T01:03:51.293572Z"},"trusted":true},"execution_count":12,"outputs":[{"execution_count":12,"output_type":"execute_result","data":{"text/plain":"Gender 0\nAge 1\nMajor 0\nYear 0\nCGPA 0\nMarriage 0\nDepression 0\nAnxiety 0\nPanic 0\nTreatment 0\ndtype: int64"},"metadata":{}}]},{"cell_type":"code","source":"#Dropping missing values\ndf.dropna(inplace=True)\ndf.isna().sum()","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:03:52.721912Z","iopub.execute_input":"2023-11-13T01:03:52.722456Z","iopub.status.idle":"2023-11-13T01:03:52.731938Z","shell.execute_reply.started":"2023-11-13T01:03:52.722418Z","shell.execute_reply":"2023-11-13T01:03:52.730995Z"},"trusted":true},"execution_count":13,"outputs":[{"execution_count":13,"output_type":"execute_result","data":{"text/plain":"Gender 0\nAge 0\nMajor 0\nYear 0\nCGPA 0\nMarriage 0\nDepression 0\nAnxiety 0\nPanic 0\nTreatment 0\ndtype: int64"},"metadata":{}}]},{"cell_type":"code","source":"#Current number of lines \ndf.shape[0]","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:03:54.372598Z","iopub.execute_input":"2023-11-13T01:03:54.373372Z","iopub.status.idle":"2023-11-13T01:03:54.379370Z","shell.execute_reply.started":"2023-11-13T01:03:54.373336Z","shell.execute_reply":"2023-11-13T01:03:54.378470Z"},"trusted":true},"execution_count":14,"outputs":[{"execution_count":14,"output_type":"execute_result","data":{"text/plain":"100"},"metadata":{}}]},{"cell_type":"markdown","source":"Changging all binaries columns to ones and zeros","metadata":{}},{"cell_type":"code","source":"df['Marriage'] = df['Marriage'].map({'Yes': 1, 'No': 0})\ndf['Depression'] = df['Depression'].map({'Yes': 1, 'No': 0})\ndf['Anxiety'] = df['Anxiety'].map({'Yes': 1, 'No': 0})\ndf['Panic'] = df['Panic'].map({'Yes': 1, 'No': 0})\ndf['Treatment'] = df['Treatment'].map({'Yes': 1, 'No': 0})\ndf['Gender'] = df['Gender'].map({'Female': 1, 'Male': 0})\ndf['CGPA'] = df['CGPA'].map({'3.00 - 3.49':4, '3.50 - 4.00':5, '3.50 - 4.00 ':5, '2.50 - 2.99':3, '2.00 - 2.49': 1, '0 - 1.99': 0})","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:03:56.133704Z","iopub.execute_input":"2023-11-13T01:03:56.134067Z","iopub.status.idle":"2023-11-13T01:03:56.147164Z","shell.execute_reply.started":"2023-11-13T01:03:56.134037Z","shell.execute_reply":"2023-11-13T01:03:56.146218Z"},"trusted":true},"execution_count":15,"outputs":[]},{"cell_type":"markdown","source":"## Data analisys","metadata":{}},{"cell_type":"code","source":"df['Age'].hist()\nplt.title('Age distribution of participants')\nplt.xlabel('Age')\nplt.ylabel('Frequency')","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:03:57.563227Z","iopub.execute_input":"2023-11-13T01:03:57.564006Z","iopub.status.idle":"2023-11-13T01:03:57.854030Z","shell.execute_reply.started":"2023-11-13T01:03:57.563970Z","shell.execute_reply":"2023-11-13T01:03:57.853146Z"},"trusted":true},"execution_count":16,"outputs":[{"execution_count":16,"output_type":"execute_result","data":{"text/plain":"Text(0, 0.5, 'Frequency')"},"metadata":{}},{"output_type":"display_data","data":{"text/plain":"
","image/png":"iVBORw0KGgoAAAANSUhEUgAAAjIAAAHHCAYAAACle7JuAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA9qElEQVR4nO3daXxTdf7+/ystadrSBYGylC4gIIgVHFEQAUEoLYvI5oiiQrEuowXZdEbUkcUFRUEcZfE7g0VGEATZxgUsi2VQGIUREEfZF5ECspa2EEJ7fjf8N39CtzSkTQ68no9Hb5yTk895n3eT9OrJ5yQWwzAMAQAAmFCArwsAAADwFEEGAACYFkEGAACYFkEGAACYFkEGAACYFkEGAACYFkEGAACYFkEGAACYFkEGAACYFkEGqET79u2TxWLRrFmznOvGjh0ri8VSKfvv2LGjOnbs6Fz+6quvZLFYtHDhwkrZf0pKiurXr18p+/JUTk6OHnnkEdWpU0cWi0XDhw/3dUllql+/vlJSUsp1n+Iei4AZEWRwRZk2bZosFotat27t61Iq1KFDhzR27Fht3rzZ16UU4c+1uePVV1/VrFmz9MQTT+if//ynHnroIV+XJEn65ptvNHbsWJ06dcrXpVSIK/34UIEM4Apy++23G/Xr1zckGTt37vR1OUXs3bvXkGSkp6c71zkcDuPs2bPlGue7774rMo477Ha7Ybfbnctr1qwxJBkLFiwo1zie1nb+/Hnj3LlzXttXRWjdurXRtm1bX5dRxBtvvGFIMvbu3VvktnPnzhnnz58v13gFBQXG2bNnjQsXLnipwstT2vEBpeGMDK4Ye/fu1TfffKPJkycrKipKc+bM8XVJbqlSpYqCg4MrdB95eXmSpKCgIAUFBVXovkpjtVpls9l8tn93HD16VNWqVfN1GU65ubllbmOz2WS1Wss1rsViUXBwsAIDAz0tDfALBBlcMebMmaNrrrlGPXr00D333FNikDl+/LgeeughRUREqFq1aho0aJC2bNlS7HyBn3/+Wffcc4+qV6+u4OBg3XLLLVq2bJlb9Zw6dUopKSmKjIx07qe40+bFzZHJyMhQu3btVK1aNYWFhalJkyZ67rnnJP0+r+XWW2+VJA0ePFgWi8Wl9o4dOyohIUGbNm3SHXfcodDQUOd9L50jUyg/P1/PPfec6tSpo6pVq+ruu+/WL7/84rJNSfMwLh6zrNqKmyOTm5urUaNGKTY2VjabTU2aNNGbb74pwzBctrNYLBoyZIiWLFmihIQE2Ww23XDDDVq+fHmRmopz9OhRpaamqnbt2goODlaLFi30wQcfOG8vnC+0d+9effbZZ87a9+3bV+KYhTXNmTNHTZo0UXBwsFq2bKm1a9e6bLd//349+eSTatKkiUJCQlSjRg398Y9/LDL2rFmzZLFYlJmZqSeffFK1atVSTEyMxo4dq2eeeUaS1KBBgyK1Ffe7OXXqlEaMGKH69evLZrMpJiZGAwcO1LFjxyQVP0cmJSVFYWFh2rNnj5KTk1W1alVFR0dr/PjxRX4fb775pm6//XbVqFFDISEhatmyZbFzrdz5vZV1fKU9H4Aqvi4A8JY5c+aob9++CgoK0v3336/p06fru+++c/5hlaSCggL17NlT3377rZ544gk1bdpUS5cu1aBBg4qM9+OPP6pt27aqV6+enn32WVWtWlUff/yxevfurU8++UR9+vQpsRbDMNSrVy+tW7dOf/rTn3T99ddr8eLFxe6nuP3eddddat68ucaPHy+bzaZdu3bp66+/liRdf/31Gj9+vF588UU99thjat++vSTp9ttvd45x/PhxdevWTffdd58efPBB1a5du9R9vvLKK7JYLPrLX/6io0ePasqUKUpMTNTmzZsVEhJSZs2F3KntYoZh6O6779aaNWuUmpqqm266SStWrNAzzzyjX3/9VW+99ZbL9uvWrdOiRYv05JNPKjw8XH/729/Ur18/HThwQDVq1CixrrNnz6pjx47atWuXhgwZogYNGmjBggVKSUnRqVOnNGzYMF1//fX65z//qREjRigmJkajRo2SJEVFRZV6zJmZmZo/f76eeuop2Ww2TZs2TV27dtW3336rhIQESdJ3332nb775Rvfdd59iYmK0b98+TZ8+XR07dtT//vc/hYaGuoz55JNPKioqSi+++KJyc3PVrVs37dixQx999JHeeust1axZs9TacnJy1L59e/300096+OGHdfPNN+vYsWNatmyZDh486Lx/cfLz89W1a1fddtttmjhxopYvX64xY8bowoULGj9+vHO7t99+W3fffbceeOABnT9/XvPmzdMf//hHffrpp+rRo4fLmGX93vr27Vvi8ZX1fACYI4MrwsaNGw1JRkZGhmEYv7//HxMTYwwbNsxlu08++cSQZEyZMsW5Lj8/3+jUqVOReR2dO3c2brzxRpc5HQUFBcbtt99uNG7cuNR6lixZYkgyJk6c6Fx34cIFo3379kX2M2bMGOPip+Jbb71lSDJ+++23EscvbR5Khw4dDEnGjBkzir2tQ4cOzuXCOTL16tUzsrOznes//vhjQ5Lx9ttvO9fFx8cbgwYNKnPM0mobNGiQER8f71wu7NPLL7/sst0999xjWCwWY9euXc51koygoCCXdVu2bDEkGe+8806RfV1sypQphiTjww8/dK47f/680aZNGyMsLMzl2OPj440ePXqUOt7FNUkyNm7c6Fy3f/9+Izg42OjTp49zXV5eXpH7rl+/3pBkzJ4927kuPT3dkGS0a9euyNyV0uaQXPq7efHFFw1JxqJFi4psW1BQYBhG8fO1Bg0aZEgyhg4d6rJ9jx49jKCgIJfH5KXHdP78eSMhIcHo1KmTy3p3f28lHZ87zwdc3XhrCVeEOXPmqHbt2rrzzjsl/X46u3///po3b57y8/Od2y1fvlxWq1WPPvqoc11AQIDS0tJcxjtx4oRWr16te++9V2fOnNGxY8d07NgxHT9+XMnJydq5c6d+/fXXEuv5/PPPVaVKFT3xxBPOdYGBgRo6dGiZx1I4P2Pp0qUqKChw6/gvZbPZNHjwYLe3HzhwoMLDw53L99xzj+rWravPP//co/276/PPP1dgYKCeeuopl/WjRo2SYRj64osvXNYnJiaqYcOGzuXmzZsrIiJCe/bsKXM/derU0f333+9cZ7Va9dRTTyknJ0eZmZkeH0ObNm3UsmVL53JcXJx69eqlFStWOB97F5/VcjgcOn78uBo1aqRq1arpv//9b5ExH3300cuau/LJJ5+oRYsWxZ41dOdS/yFDhrhsP2TIEJ0/f14rV650rr/4mE6ePKnTp0+rffv2xR6Pp783yTvPB1zZCDIwvfz8fM2bN0933nmn9u7dq127dmnXrl1q3bq1jhw5olWrVjm33b9/v+rWrVvkVH6jRo1clnft2iXDMPTXv/5VUVFRLj9jxoyR9Puci5IU7icsLMxlfZMmTco8nv79+6tt27Z65JFHVLt2bd133336+OOPy/UiXq9evXJN6m3cuLHLssViUaNGjUqdH+IN+/fvV3R0tEuIkn5/i6rw9ovFxcUVGeOaa67RyZMny9xP48aNFRDg+pJX0n7K49LeSdJ1112nvLw8/fbbb5J+f2vrxRdfdM4DqlmzpqKionTq1CmdPn26yP0bNGjgcT2StHv3bufbWuUVEBCga6+91mXdddddJ0kuj4dPP/1Ut912m4KDg1W9enVFRUVp+vTpxR6Pp783yTvPB1zZmCMD01u9erWysrI0b948zZs3r8jtc+bMUVJSUrnGLHyRfPrpp5WcnFzsNpeGH28JCQnR2rVrtWbNGn322Wdavny55s+fr06dOunLL7906z/18sxrcVdJ/8nn5+dX2pUvJe3HuGQiqr8ZOnSo0tPTNXz4cLVp00aRkZGyWCy67777iv2DXBG/P2/697//rbvvvlt33HGHpk2bprp168pqtSo9PV1z584tsv3l/N688XzAlY0gA9ObM2eOatWqpalTpxa5bdGiRVq8eLFmzJihkJAQxcfHa82aNcrLy3M5K7Nr1y6X+xX+R2q1WpWYmFjumuLj47Vq1Srl5OS4nJXZvn27W/cPCAhQ586d1blzZ02ePFmvvvqqnn/+ea1Zs0aJiYle/yTgnTt3uiwbhqFdu3apefPmznXXXHNNsVdd7d+/3+U/+PLUFh8fr5UrV+rMmTMuZ2V+/vln5+3eEB8fr61bt6qgoMDlrIw39nNp7yRpx44dCg0NdU7GXbhwoQYNGqRJkyY5tzl37ly5PvytPH1t2LChtm3b5vb2FysoKNCePXucZ2Gk349HkvOKs08++UTBwcFasWKFy+X06enpHu1TKv34yno+4OrGW0swtbNnz2rRokW66667dM899xT5GTJkiM6cOeO8ZDo5OVkOh0N///vfnWMUFBQUCUG1atVSx44d9d577ykrK6vIfgvfMihJ9+7ddeHCBU2fPt25Lj8/X++8806Zx3TixIki62666SZJkt1ulyRVrVpVkrz2KaizZ8/WmTNnnMsLFy5UVlaWunXr5lzXsGFDbdiwQefPn3eu+/TTT4tcpl2e2rp37678/Hy9++67LuvfeustWSwWl/1fju7du+vw4cOaP3++c92FCxf0zjvvKCwsTB06dPB47PXr17vMC/nll1+0dOlSJSUlOc8WBAYGFjn78M4777jM3ypLefrar18/bdmyRYsXLy5ymztnQS7+fRiGoXfffVdWq1WdO3eW9PvxWCwWl/r37dunJUuWlDl2SUo6PneeD7i6cUYGprZs2TKdOXNGd999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bdiwQRkZGXI4HEpKSnLpxYgRI/Svf/1LCxYsUGZmpg4dOqS+ffv6sGrfcKdXeXl56tq1q5577jkfVup7ZfXq0KFDOnTokN58801t27ZNs2bN0vLly5WamurjyiufO4+rli1bKj09XT/99JNWrFghwzCUlJSk/Px8H1buG+70q9CUKVO8+pVAZTLgNknG4sWLXdbdcMMNxvjx413W3Xzzzcbzzz9fiZX5n0t7tX37dkOSsW3bNue6/Px8Iyoqyvj73//ugwr9y9GjRw1JRmZmpmEYhnHq1CnDarUaCxYscG7z008/GZKM9evX+6pMv3Bpry62Zs0aQ5Jx8uTJyi/MD5XWq0Iff/yxERQUZDgcjkqszP+406stW7YYkoxdu3ZVYmX+qaR+ff/990a9evWMrKysYv9mVgTOyFym22+/XcuWLdOvv/4qwzC0Zs0a7dixQ0lJSb4uza/Y7XZJUnBwsHNdQECAbDab1q1b56uy/Ebhqf3q1atLkjZt2iSHw6HExETnNk2bNlVcXJzWr1/vkxr9xaW9Qsnc6dXp06cVERGhKlVM8fmoFaasXuXm5io9PV0NGjRQbGxsZZbml4rrV15engYMGKCpU6eW+MXOFYEgc5neeecdNWvWTDExMQoKClLXrl01depU3XHHHb4uza8U/hEePXq0Tp48qfPnz+v111/XwYMHlZWV5evyfKqgoEDDhw9X27ZtlZCQIEk6fPiwgoKCinzhae3atXX48GEfVOkfiusViudOr44dO6aXXnpJjz32WCVX519K69W0adMUFhamsLAwffHFF8rIyFBQUJCPKvUPJfVrxIgRuv3229WrV69KrefqjuBe8M4772jDhg1atmyZ4uPjtXbtWqWlpSk6Otrlv+mrndVq1aJFi5Samqrq1asrMDBQiYmJ6tatm4yr/MOl09LStG3bNs5MuYFeua+sXmVnZ6tHjx5q1qyZxo4dW7nF+ZnSevXAAw+oS5cuysrK0ptvvql7771XX3/9tcvZ5atNcf1atmyZVq9ere+//77yC6rwN6+uILrk/b68vDzDarUan376qct2qampRnJyciVX518u7dXFTp06ZRw9etQwDMNo1aqV8eSTT1ZiZf4lLS3NiImJMfbs2eOyftWqVcXO9YiLizMmT55ciRX6j5J6dTHmyPyurF5lZ2cbbdq0MTp37mycPXu2kqvzL+48rgrZ7XYjNDTUmDt3biVU5p9K6tewYcMMi8ViBAYGOn8kGQEBAUaHDh0qtCbeWroMDodDDodDAQGubQwMDFRBQYGPqvJ/kZGRioqK0s6dO7Vx48ZKPw3pDwzD0JAhQ7R48WKtXr1aDRo0cLm9ZcuWslqtWrVqlXPd9u3bdeDAAbVp06ayy/WpsnqF/587vcrOzlZSUpKCgoK0bNmyq/bMgiePK8MwZBiGc87f1aSsfj377LPaunWrNm/e7PyRpLfeekvp6ekVWhtvLZUhJydHu3btci7v3btXmzdvVvXq1RUXF6cOHTromWeeUUhIiOLj45WZmanZs2dr8uTJPqzaN8rq1YIFCxQVFaW4uDj98MMPGjZsmHr37n1VToxOS0vT3LlztXTpUoWHhzvnvURGRiokJESRkZFKTU3VyJEjVb16dUVERGjo0KFq06aNbrvtNh9XX7nK6pX0+5yiw4cPOx9/P/zwg8LDwxUXF3dVTQouq1eFISYvL08ffvihsrOzlZ2dLUmKiopSYGCgL8uvVGX1as+ePZo/f76SkpIUFRWlgwcP6rXXXlNISIi6d+/u4+orX1n9qlOnTrETfOPi4ir+n48KPd9zBSg8VX3pz6BBgwzDMIysrCwjJSXFiI6ONoKDg40mTZoYkyZNMgoKCnxbuA+U1au3337biImJMaxWqxEXF2e88MILht1u923RPlJcnyQZ6enpzm3Onj1rPPnkk8Y111xjhIaGGn369DGysrJ8V7SPuNOrMWPGlLnN1aCsXpX0HJVk7N2716e1V7ayevXrr78a3bp1M2rVqmVYrVYjJibGGDBggPHzzz/7tnAfced5WNx9KuPya8v/tzMAAADTYY4MAAAwLYIMAAAwLYIMAAAwLYIMAAAwLYIMAAAwLYIMAAAwLYIMAAAwLYIMAAAwLYIMAL+0fv16BQYGqkePHr4uBYAf45N9AfilRx55RGFhYZo5c6a2b9+u6OhoX5cEwA9xRgaA38nJydH8+fP1xBNPqEePHpo1a5bL7cuWLVPjxo0VHBysO++8Ux988IEsFotOnTrl3GbdunVq3769QkJCFBsbq6eeekq5ubmVeyAAKhxBBoDf+fjjj9W0aVM1adJEDz74oN5//30Vnjzeu3ev7rnnHvXu3VtbtmzR448/rueff97l/rt371bXrl3Vr18/bd26VfPnz9e6des0ZMgQXxwOgArEW0sA/E7btm117733atiwYbpw4YLq1q2rBQsWqGPHjnr22Wf12Wef6YcffnBu/8ILL+iVV17RyZMnVa1aNT3yyCMKDAzUe++959xm3bp16tChg3JzcxUcHOyLwwJQATgjA8CvbN++Xd9++63uv/9+SVKVKlXUv39/zZw503n7rbfe6nKfVq1auSxv2bJFs2bNUlhYmPMnOTlZBQUF2rt3b+UcCIBKUcXXBQDAxWbOnKkLFy64TO41DEM2m03vvvuuW2Pk5OTo8ccf11NPPVXktri4OK/VCsD3CDIA/MaFCxc0e/ZsTZo0SUlJSS639e7dWx999JGaNGmizz//3OW27777zmX55ptv1v/+9z81atSowmsG4FvMkQHgN5YsWaL+/fvr6NGjioyMdLntL3/5i1avXq2PP/5YTZo00YgRI5SamqrNmzdr1KhROnjwoE6dOqXIyEht3bpVt912mx5++GE98sgjqlq1qv73v/8pIyPD7bM6AMyBOTIA/MbMmTOVmJhYJMRIUr9+/bRx40adOXNGCxcu1KJFi9S8eXNNnz7dedWSzWaTJDVv3lyZmZnasWOH2rdvrz/84Q968cUX+Swa4ArEGRkApvfKK69oxowZ+uWXX3xdCoBKxhwZAKYzbdo03XrrrapRo4a+/vprvfHGG3xGDHCVIsgAMJ2dO3fq5Zdf1okTJxQXF6dRo0Zp9OjRvi4LgA/w1hIAADAtJvsCAADTIsgAAADTIsgAAADTIsgAAADTIsgAAADTIsgAAADTIsgAAADTIsgAAADTIsgAAADT+n8QaMna75WKegAAAABJRU5ErkJggg=="},"metadata":{}}]},{"cell_type":"code","source":"df_anxiety = df[df['Anxiety'] == 1]\ndf_no_anxiety = df[df['Anxiety'] == 0]\n# Count the ages\nanxiety_counts = df_anxiety['Age'].value_counts().sort_index()\nno_anxiety_counts = df_no_anxiety['Age'].value_counts().sort_index()\n\n# Ensure that the counts for each age group are the same\nages = anxiety_counts.index.union(no_anxiety_counts.index)\nanxiety_counts = anxiety_counts.reindex(ages, fill_value=0)\nno_anxiety_counts = no_anxiety_counts.reindex(ages, fill_value=0)\n\n# Create the distribution graph\nwidth = 0.35\nx = np.arange(len(ages))\n\nplt.bar(x - width/2, anxiety_counts, width, label='Anxiety')\nplt.bar(x + width/2, no_anxiety_counts, width, label='No Anxiety')\n\nplt.xticks(x, ages)\nplt.title('Age Distribution of Anxiety')\nplt.xlabel('Age')\nplt.ylabel('Frequency')\nplt.legend()\nplt.grid(True)\nplt.show()","metadata":{"execution":{"iopub.status.busy":"2023-11-12T23:19:07.489549Z","iopub.execute_input":"2023-11-12T23:19:07.489921Z","iopub.status.idle":"2023-11-12T23:19:07.850841Z","shell.execute_reply.started":"2023-11-12T23:19:07.489893Z","shell.execute_reply":"2023-11-12T23:19:07.849901Z"},"trusted":true},"execution_count":38,"outputs":[{"output_type":"display_data","data":{"text/plain":"
","image/png":"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8eDBAwDa/ze8du1a9O7dG+3bt8fUqVPxwgsvICUlBdHR0bh16xYuXLhQ6viuXr2KrVu3QgiBjIwMzZOgMzMzsXLlSvj4+JS47qBBgzBmzBi0adMGFhYW2Lt3L1JSUvDaa69p2nl4eGD9+vX4+OOP0bx5czg4OBQ5ilJWLVu2REBAAH7//Xc0bNgQmzZtQkpKCsLCwjRtvLy84OrqioCAALz77rswNzfHpk2bYG9vj8TERK3+yjo2uVyOpUuXYtKkSejXrx/8/PyQkpKCL774Am5ubnjnnXf02p/n2dvbIzg4GAsWLICPjw9efvllxMbGYt26dejWrZteF/du374dQohi34NDhw6FhYUFtm3bVq6faBFCYPLkybCyssL69esBANOmTcN3332HmTNnwtPTE87OzjrXfeONN7Br1y689dZbOHLkCHr16oX8/HxcuXIFu3btws8//6y5kNrDwwO//PILVq5cCWdnZzRt2lRrnBMmTMArr7wCAFi0aFGZx09UZlV4BxqRyRo+fLhQKpUiKyur2DYTJ04UcrlcpKamCiGEuHfvnhg3bpywsbERderUERMnThQnT54UAMSOHTu01k1ISBATJkwQjo6OQi6Xi0aNGol//etf4ttvvy11bAA0LzMzM2FnZyc6d+4sZs6cKf76668i7Z+/Db7gtmd3d3dRq1YtUadOHdGjRw+xa9curfWSk5PFsGHDhI2NjQCguR264Lb052+ZfnbZ87fBDxs2TPz888+iQ4cOQqFQCHd3d7F79+4i6589e1b06NFDWFpaCldXV7Fy5UqdfRY3Nl3PARJCiJ07d4rOnTsLhUIh6tWrJ15//XVx69YtrTb+/v6iVq1aRcZU3O35uqxZs0a4u7sLuVwuGjZsKN5++22tZw09219pt8G3b99euLq6ltimf//+wsHBQahUKs2+P1/X5//+BbfFP/tYAiGESExMFLa2tmLo0KGaec/fBi/E00cLLF26VLRt21YoFApRt25d4eHhIRYsWKB59pQQQly5ckX07dtXWFlZCQBFbonPzc0VdevWFXXq1NF6RAGRofC3wIiqUEREBEaOHIkTJ06gV69eVT0comrjyZMncHZ2xvDhw7Fx48aqHg7VQLwGiKiSPH78WGs6Pz8fq1evhq2tLbp06VJFoyKqniIiInDv3r0iP8lBZCi8Boiokvzf//0fHj9+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bdu2LbZ9bm4ucnNzNdMZGRkAnv7sh0qlMtwO/H8Kc+NcO6Uwe9qvysyIp/yMUA9jKPi7sRZPaephQmM2FtaiEGuhzeifGwaus7G+S4BK+D4x0nuuPO9lmTChK5l37dqFcePGITExEc7OzjrbREdHIy4uDh06dEB6ejqWL1+O48eP46+//oKLi4vOdUJCQrBgwYIi87dv3w5ra2uD7gMREREZR3Z2NsaNG4f09HTY2tqW2NakApC3tzcsLS3x/fffl3kdlUqF1q1bw8/PD4sWLdLZRtcRoMaNGyM1NbXUAuqjXcjPBu8TeJrYF3VVY/CfMyBX5xhlGwi+ZZx+DUylUiEyMpK1+P809Rg8GHK5vKqHU6VYi0KshTajf24Y+DPDWN8lQCV8nxjp8zMjIwMNGjQoUwDS66cwqsKNGzfwyy+/lPsCa7lcjs6dOyM+Pr7YNgqFQnNh9/PrGuNDITffuBdly9U5xvvSN7EPSdZCm7He06aItSjEWmgz2ueGgWts7O8SwHRqUdht2fut0HOAKlNYWBgcHBwwbNiwcq2Xn5+PP//8E05OTkYaGREREZkakwhAarUaYWFh8Pf3h4WF9kGrCRMmIDg4WDO9cOFCHDp0CP/88w/++OMPjB8/Hjdu3MCUKVMqe9hERERUTZnEKbBffvkFiYmJmDx5cpFliYmJMDMrzHEPHz7E1KlTkZycjLp168LDwwOnTp1CmzZtKnPIREREVI2ZRADy8vIq9mc3jh49qjX92Wef4bPPPquEUREREZGpMolTYERERESGxABEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREklOtA1BISAhkMpnWy93dvcR1du/eDXd3dyiVSrRv3x4//fRTJY2WiIiITEW1DkAA0LZt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ERFRNVetA1BZrs8+evSo1vRnn32Gzz77zEgjIiIiopqgWl8DRERERGQMDEBEREQkOQxAREREJDnV+hogIpImt7k/Gq1vhbnAp92N1r1pCnUBjPW8rJB0g3bH9wYZCo8AERERkeQwABEREZHkMAARERGR5DAAERERkeQwABEREZHkMAARERGR5DAAERERkeQwABEREZHkMAARERGR5DAAERERkeQwABEREZHkMAARERGR5DAAERERkeQwABEREZHkMAARERGR5DAAERERkeQwABEREZHkMAARERGR5FhU9QCIiKpEqAugzjFO3yHpxumXiAyGR4CIiIhIchiAiIiISHIYgIiIiEhyGICIiIhIchiAiIiISHIYgIiIiEhyGICIiIhIchiAiIiISHIYgIiIiEhyGICIiIhIchiAiIiISHIYgIiIiEhyGICIiIhIchiAiIiISHJMIgCtXbsWbm5uUCqV6NGjB86cOVNi+927d8Pd3R1KpRLt27fHTz/9VEkjJSIiIlNQ7QPQzp07ERQUhPnz5+OPP/5Ax44d4e3tjbt37+psf+rUKfj5+SEgIADnzp2Dr68vfH19cenSpUoeOREREVVX1T4ArVy5ElOnTsWkSZPQpk0bbNiwAdbW1ti0aZPO9l988QV8fHzw7rvvonXr1li0aBG6dOmCNWvWVPLIiYiIqLqq1gEoLy8PZ8+ehaenp2aemZkZPD09ER0drXOd6OhorfYA4O3tXWx7IiIikh6Lqh5ASVJTU5Gfn4+GDRtqzW/YsCGuXLmic53k5GSd7ZOTk4vdTm5uLnJzczXT6enpAIAHDx5ApVLpO/xiWTzJMnifAGChFsjOVuN+niXkarVRtoH79w3aHWtRyFi1ACqhHqyFNgPXw1hUKhWys7NNqhYm/d5gLQoZ6d/Io0ePAABCiFLbVusAVFlCQ0OxYMGCIvObNm1aBaOpmHHG3kBoA2NvwWBYC21GrQdroc3E6mFUJlYL/jspZMq1ePToEerUqVNim2odgBo0aABzc3OkpKRozU9JSYGjo6POdRwdHcvVHgCCg4MRFBSkmVar1Xjw4AHq168PmUxWgT2oXBkZGWjcuDFu3rwJW1vbqh5OlWIttLEehViLQqyFNtajkKnWQgiBR48ewdnZudS21ToAWVpawsPDA1FRUfD19QXwNJxERUUhMDBQ5zo9e/ZEVFQU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"},"metadata":{}}]},{"cell_type":"code","source":"df_married = df[df['Marriage'] == 1]\ndf_no_married = df[df['Marriage'] == 0]\n# Count the ages\nmarried_counts = df_married['Age'].value_counts().sort_index()\nno_married_counts = df_no_married['Age'].value_counts().sort_index()\n\n# Ensure that the counts for each age group are the same\nages = married_counts.index.union(no_married_counts.index)\nmarried_counts = married_counts.reindex(ages, fill_value=0)\nno_married_counts = no_married_counts.reindex(ages, fill_value=0)\n\n# Create the distribution graph\nwidth = 0.35\nx = np.arange(len(ages))\n\nplt.bar(x - width/2, married_counts, width, label='Married')\nplt.bar(x + width/2, no_married_counts, width, label='No Married')\n\nplt.xticks(x, ages)\nplt.title('Age Distribution of Marriage')\nplt.xlabel('Age')\nplt.ylabel('Frequency')\nplt.legend()\nplt.grid(True)\nplt.show()","metadata":{"execution":{"iopub.status.busy":"2023-11-12T23:07:48.538418Z","iopub.execute_input":"2023-11-12T23:07:48.538843Z","iopub.status.idle":"2023-11-12T23:07:48.886708Z","shell.execute_reply.started":"2023-11-12T23:07:48.538811Z","shell.execute_reply":"2023-11-12T23:07:48.885630Z"},"trusted":true},"execution_count":17,"outputs":[{"output_type":"display_data","data":{"text/plain":"
","image/png":"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PPWaiIiInhutgszEiRMhl8tx7do1WFlZqZcPGTIE27dv11lxREREROXR6hiZ33//HTt27IC7u7vG8kaNGuHq1as6KYyIiIioIlrtkcnJydHYE1PkwYMHUCgU1S6KiIiIqDK0CjJdunTB2rVr1Y9lMhlUKhXmz5+PHj166Kw4IiIiovJo9dHS/Pnz0atXLxw7dgwFBQX4+OOPcebMGTx48AAHDx7UdY1EREREpdJqj0zz5s1x4cIFdO7cGf3790dOTg4GDhyIpKQkNGjQQNc1EhEREZWqyntklEolAgMDsWLFCvz73//WR01ERERElVLlPTJyuRynTp3SRy1EREREVaLVR0vDhg3DqlWrdF0LERERUZVodbDvkydPsHr1auzcuRNt27YtcY+l6OhonRRHREREVJ4qBZnLly/D29sbp0+fRps2bQAAFy5c0Bgjk8l0Vx0RERFROaoUZBo1aoS0tDTs2bMHwD+3JFi8eDGcnZ31UhwRERFReap0jMyzd7fetm0bcnJydFoQERERUWVpdbBvkWeDDREREdHzVKUgI5PJShwDw2NiiIiIyFCqdIyMEAKhoaHqG0Pm5eXh/fffL3HWUkJCgu4qJCIiIipDlYLMyJEjNR4PGzZMp8UQERERVUWVgkxMTIy+6iAiIiKqsmod7EtERERkSAwyREREJFkMMkRERCRZDDJEREQkWQwyREREJFkMMkRERCRZDDJEREQkWQwyREREJFkMMkRERCRZDDJEREQkWQwyREREJFkMMkRERCRZDDJEREQkWVW6+zUREZGkRLkDqjzdzxuZqfs5SSvcI0NERESSxSBDREREksUgQ0RERJLFIENERESSxSBDREREksUgQ0RERJLFIENERESSZdAgs3//fgQFBcHNzQ0ymQxbtmzRWC+EwPTp0+Hq6gpLS0v4+fnh4sWLhimWiIiIjI5Bg0xOTg5atmyJpUuXlrp+/vz5WLx4MVasWIE//vgDtWrVQkBAAPLy9HBxIyIiIpIcg17Zt0+fPujTp0+p64QQWLRoET777DP0798fALB27Vo4Oztjy5YteOutt55nqURERGSEjPYWBampqbh9+zb8/PzUy+zs7NCxY0ccPny4zCCTn5+P/Px89eOsrCwAgFKphFKp1G/ROlRUq9LEQp8b0d/cOsReaFL3Q0I16wt7UYy90KT33xsS6rNUe1HZ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"},"metadata":{}}]},{"cell_type":"code","source":"df_depressed = df[df['Depression'] == 1]\ndf_no_depressed = df[df['Depression'] == 0]\n# Count the ages\ndepressed_counts = df_depressed['Age'].value_counts().sort_index()\nno_depressed_counts = df_no_depressed['Age'].value_counts().sort_index()\n\n# Ensure that the counts for each age group are the same\nages = depressed_counts.index.union(no_depressed_counts.index)\ndepressed_counts = depressed_counts.reindex(ages, fill_value=0)\nno_depressed_counts = no_depressed_counts.reindex(ages, fill_value=0)\n\n# Create the distribution graph\nwidth = 0.35\nx = np.arange(len(ages))\n\nplt.bar(x - width/2, depressed_counts, width, label='Has depression')\nplt.bar(x + width/2, no_depressed_counts, width, label='No depression')\n\nplt.xticks(x, ages)\nplt.title('Age Distribution of Depression')\nplt.xlabel('Age')\nplt.ylabel('Frequency')\nplt.legend()\nplt.grid(True)\nplt.show()","metadata":{"execution":{"iopub.status.busy":"2023-11-12T23:07:50.882498Z","iopub.execute_input":"2023-11-12T23:07:50.883643Z","iopub.status.idle":"2023-11-12T23:07:51.243103Z","shell.execute_reply.started":"2023-11-12T23:07:50.883601Z","shell.execute_reply":"2023-11-12T23:07:51.242077Z"},"trusted":true},"execution_count":18,"outputs":[{"output_type":"display_data","data":{"text/plain":"
","image/png":"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zw0DqrOh1qIk72WZEEI/30B6sHnzZgwaNAgJCQlwdnbW2ubkyZOIj49H48aNkZqainnz5uHo0aP4888/UaNGDa3rhIWFITw8vMD8DRs2wMLCQqf7QERERPqRmZmJQYMGITU1FTY2NkW2NagAFBAQAFNTU/z666/FXkepVKJ+/foYOHAgpk+frrWNtiNALi4uuH///ksLWBoNw/bpvE/g2VGP6c1V6HxxNOT6eIgXAEy+pdPuWIuyoVQqER0djc6dO0Mul5f3cMoVa5GPtdCkroe+PjcM8TPDwGqRlpaGqlWrFisAGcwpsJs3b2L//v3Ytm1bidaTy+Vo2rQprl69WmgbhUIBhUKhdV19fChk5+r3omy5Kkt/X/o6rgdrUbb09Z42RKxFPtZCk94+NwywxoZWi5K8jyv8bfB51qxZAwcHB3Tv3r1E6+Xm5uLixYtwcnLS08iIiIjI0BhEAFKpVFizZg2CgoJgYqJ50GrIkCGYPHmyenratGn47bff8M8//+DcuXMYPHgwbt68ieHDh5f1sImIiKiCMohTYPv370dCQgI++OCDAssSEhJgZJSf4x49eoQRI0YgKSkJlSpVgo+PD06cOIEGDRqU5ZCJiIioAjOIAOTv74/CrtU+fPiwxvTChQuxcOHCMhgVERERGSqDOAVGREREpEsMQERERCQ5DEBEREQkOQxAREREJDkMQERERCQ5DEBEREQkOQxAREREJDkMQERERCQ5DEBEREQkOQxAREREJDkMQERERCQ5DEBEREQkOQxAREREJDkMQERERCQ5DEBEREQkOQxAREREJDkMQERERCQ5DEBEREQkOSblPQAiIiIqObdJu/TWt8JYYE5LvXVfIfAIEBEREUkOAxARERFJDgMQERERSQ4DEBEREUkOAxARERFJDgMQERERSQ4DEBEREUkOAxARERFJDgMQERERSQ4DEBEREUkOAxARERFJDgMQERERSU6FDkBhYWGQyWQaf56enkWus2XLFnh6esLMzAyNGjXC7t27y2i0REREZCgqdAACAC8vLyQmJqr/jh07VmjbEydOYODAgQgODkZMTAwCAwMRGBiIS5culeGIiYiIqKKr8AHIxMQEjo6O6r+qVasW2vabb75Bly5d8Omnn6J+/fqYPn06mjVrhiVLlpThiImIiKiiMynvAbxMfHw8nJ2dYWZmBl9fX0RERKBmzZpa2548eRLjx4/XmBcQEICoqKgit5GdnY3s7Gz1dFpaGgBAqVRCqVS+2g5ooTAWOu8TABRGz/pVGpnppf9nneu2HqxF2ch7H+vj/WxoWIt8rIUmdT309blhIJ+fQBl8hurpPVeS97JMCKG/Cr6iPXv2ID09HfXq1UNiYiLCw8Nx+/ZtXLp0CdbW1gXam5qa4ocffsDAgQPV85YtW4bw8HAkJycXup2wsDCEh4cXmL9hwwZYWFjoZmeIiIhIrzIzMzFo0CCkpqbCxsamyLYV+ghQ165d1f/duHFjtGrVCq6urti8eTOCg4N1tp3JkydrHDlKS0uDi4sL/P39X1rA0mgYtk/nfQLPEvv05ip0vjgaclWWXraBybd02h1rUTaUSiWio6PRuXNnyOXy8h5OuWIt8hliLfT1mQGUweeGgXx+AoZXizx5Z3CKo0IHoBfZ2dmhbt26uHr1qtbljo6OBY70JCcnw9HRsch+FQoFFApFgflyuVwvHwrZuTKd9/k8uSpLf1/6Oq4Ha1G29PWeNkSsRT5DqoW+PzMAPX5uGNjnJ2A4tcjvtvj9VviLoJ+Xnp6Oa9euwcnJSetyX19fHDhwQGNedHQ0fH19y2J4REREZCAqdACaOHEijhw5ghs3buDEiRPo1asXjI2N1df4DBkyBJMnT1a3HzNmDPbu3Yv58+fjr7/+QlhYGM6cOYPQ0NDy2gUiIiKqgCr0KbBbt25h4MCBePDgAezt7dGmTRucOnUK9vb2AICEhAQYGeVnuDfffBMbNmzAl19+iS+++AIeHh6IiopCw4YNy2sXiIiIqAKq0AFo48aNRS4/fPhwgXn9+vVDv3799DQiIiIieh1U6FNgRERERPrAAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSwwBEREREksMARERERJLDAERERESSY1LeAyCiZ9wm7dJb3wpjgTktAUTUAFRZut9AWKru+9Q3fdUCMMx6EEkMjwARERGR5DAAERERkeQwABEREZHkMAARERGR5FTo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"},"metadata":{}}]},{"cell_type":"code","source":"df_treatment = df[df['Treatment'] == 1]\ndf_no_treatment = df[df['Treatment'] == 0]\n# Count the ages\ntreatment_counts = df_treatment['Age'].value_counts().sort_index()\nno_treatment_counts = df_no_treatment['Age'].value_counts().sort_index()\n\n# Ensure that the counts for each age group are the same\nages = treatment_counts.index.union(no_treatment_counts.index)\ntreatment_counts = treatment_counts.reindex(ages, fill_value=0)\nno_treatment_counts = no_treatment_counts.reindex(ages, fill_value=0)\n\n# Create the distribution graph\nwidth = 0.35\nx = np.arange(len(ages))\n\nplt.bar(x - width/2, treatment_counts, width, label='Treatment')\nplt.bar(x + width/2, no_treatment_counts, width, label='No Treatment')\n\nplt.xticks(x, ages)\nplt.title('Age Distribution of Treatment')\nplt.xlabel('Age')\nplt.ylabel('Frequency')\nplt.legend()\nplt.grid(True)\nplt.show()","metadata":{"execution":{"iopub.status.busy":"2023-11-12T23:07:52.925872Z","iopub.execute_input":"2023-11-12T23:07:52.926828Z","iopub.status.idle":"2023-11-12T23:07:53.259973Z","shell.execute_reply.started":"2023-11-12T23:07:52.926778Z","shell.execute_reply":"2023-11-12T23:07:53.258925Z"},"trusted":true},"execution_count":19,"outputs":[{"output_type":"display_data","data":{"text/plain":"
","image/png":"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zZ49G9euXUPHjh1hYfFsCo1Gg8GDB/McGSIiIio1OgUZS0tLbNy4EbNnz8apU6dgbW2NevXqoUqVKvquj4iIiKhQOgWZXDVr1kTNmjX1VQsRERHRS9EpyOTk5CAqKgp79+7FvXv3oNFotJbv27dPL8URERERFUWnIDNu3DhERUWhW7duqFu3LhQKhb7rIiIiIiqWTkFmw4YN2LRpE7p27arveoiIiIhKTKfLry0tLVG9enV910JERET0UnQKMpMmTcLXX38NIYS+6yEiIiIqMZ0OLR06dAixsbHYuXMn6tSpA6VSqbU8OjpaL8URERERFUWnIOPk5ITevXvruxYiIiKil6JTkImMjNR3HUREREQvTadzZADg6dOn2LNnD1auXInU1FQAwO3bt5GWlqa34oiIiIiKotMemX///RedO3fG9evXkZWVhU6dOsHe3h7z5s1DVlYWVqxYoe86iYiIiPLRaY/MuHHj0KRJEzx+/BjW1tbSeO/evbF37169FUdERERUFJ32yPz+++84cuQILC0ttca9vb1x69YtvRRGREREVByd9shoNBrk5OTkG7958ybs7e1fuSgiIiKiktApyAQGBmLx4sXSY4VCgbS0NMyYMYO3LSAiIqJSo9OhpYULFyIoKAi1a9dGZmYmBg4ciEuXLqF8+fL48ccf9V0jERERUYF0CjIeHh44deoUNmzYgNOnTyMtLQ0hISF49913tU7+JSIiIjIknYIMAFhYWGDQoEH6rIWIiIjopegUZNauXVvk8sGDB+tUDBEREdHL0CnIjBs3TuuxWq1GRkYGLC0tYWNjwyBDREREpUKnq5YeP36s9ZWWlob4+Hi8+eabPNmXiIiISo3O91p6UY0aNTB37tx8e2uKcvDgQXTv3h3u7u5QKBTYunWr1vLg4GAoFAqtr86dO+urZCIiIpI5vQUZ4NkJwLdv3y7x+unp6WjQoAGWLl1a6DqdO3dGYmKi9MU9PkRERJRLp3Nktm/frvVYCIHExER8++23aNWqVYnn6dKlC7p06VLkOiqVCm5ubrqUSURERGWcTkGmV69eWo8VCgUqVKiADh06YOHChfqoS7J//364urqiXLly6NChA+bMmQMXFxe9boOIiIjkSacgo9Fo9F1HgTp37ow+ffrAx8cHV65cwaeffoouXbrg6NGjMDc3L/A5WVlZyMrKkh6npKQA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"},"metadata":{}}]},{"cell_type":"markdown","source":"Transforming text to boolen to make it easier to our model","metadata":{}},{"cell_type":"code","source":"df = pd.get_dummies(df, columns=['Major','Year'], dtype=int)\ndf.columns","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:04:02.539564Z","iopub.execute_input":"2023-11-13T01:04:02.540517Z","iopub.status.idle":"2023-11-13T01:04:02.553429Z","shell.execute_reply.started":"2023-11-13T01:04:02.540480Z","shell.execute_reply":"2023-11-13T01:04:02.552436Z"},"trusted":true},"execution_count":17,"outputs":[{"execution_count":17,"output_type":"execute_result","data":{"text/plain":"Index(['Gender', 'Age', 'CGPA', 'Marriage', 'Depression', 'Anxiety', 'Panic', 'Treatment', 'Major_ACCOUNTING ', 'Major_ALA',\n 'Major_BANKING STUDIES', 'Major_BCS', 'Major_BENL', 'Major_BIOMEDICAL SCIENCE', 'Major_BIOTECHNOLOGY', 'Major_BIT',\n 'Major_BUSINESS ADMINISTRATION', 'Major_COMMUNICATION ', 'Major_CTS', 'Major_DIPLOMA NURSING', 'Major_DIPLOMA TESL', 'Major_ECONS',\n 'Major_ENGIN', 'Major_ENGINE', 'Major_ENGINEERING', 'Major_ENM', 'Major_FIQH', 'Major_FIQH FATWA ', 'Major_HUMAN RESOURCES',\n 'Major_HUMAN SCIENCES ', 'Major_IRKHS', 'Major_ISLAMIC EDUCATION', 'Major_IT', 'Major_KENMS', 'Major_KIRKHS', 'Major_KOE',\n 'Major_KOP', 'Major_LAW', 'Major_LAWS', 'Major_MALCOM', 'Major_MARINE SCIENCE', 'Major_MATHEMATHICS', 'Major_MHSC',\n 'Major_NURSING ', 'Major_PENDIDIKAN ISLAM', 'Major_PENDIDIKAN ISLAM ', 'Major_PSYCHOLOGY', 'Major_RADIOGRAPHY', 'Major_TAASL',\n 'Major_USULUDDIN ', 'Year_YEAR 1', 'Year_YEAR 2', 'Year_YEAR 3', 'Year_YEAR 4'],\n dtype='object')"},"metadata":{}}]},{"cell_type":"code","source":"added_cols = ['Major_ACCOUNTING ', 'Major_ALA', 'Major_BANKING STUDIES',\n 'Major_BCS', 'Major_BENL', 'Major_BIOMEDICAL SCIENCE',\n 'Major_BIOTECHNOLOGY', 'Major_BIT', 'Major_BUSINESS ADMINISTRATION',\n 'Major_COMMUNICATION ', 'Major_CTS', 'Major_DIPLOMA NURSING',\n 'Major_DIPLOMA TESL', 'Major_ECONS', 'Major_ENGIN', 'Major_ENGINE',\n 'Major_ENGINEERING', 'Major_ENM', 'Major_FIQH', 'Major_FIQH FATWA ',\n 'Major_HUMAN RESOURCES', 'Major_HUMAN SCIENCES ', 'Major_IRKHS',\n 'Major_ISLAMIC EDUCATION', 'Major_IT', 'Major_KENMS', 'Major_KIRKHS',\n 'Major_KOE', 'Major_KOP', 'Major_LAW', 'Major_LAWS', 'Major_MALCOM',\n 'Major_MARINE SCIENCE', 'Major_MATHEMATHICS', 'Major_MHSC',\n 'Major_NURSING ', 'Major_PENDIDIKAN ISLAM', 'Major_PENDIDIKAN ISLAM ',\n 'Major_PSYCHOLOGY', 'Major_RADIOGRAPHY', 'Major_TAASL',\n 'Major_USULUDDIN ', 'Year_YEAR 1', 'Year_YEAR 2', 'Year_YEAR 3',\n 'Year_YEAR 4']","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:04:06.493676Z","iopub.execute_input":"2023-11-13T01:04:06.494029Z","iopub.status.idle":"2023-11-13T01:04:06.500446Z","shell.execute_reply.started":"2023-11-13T01:04:06.494001Z","shell.execute_reply":"2023-11-13T01:04:06.499508Z"},"trusted":true},"execution_count":18,"outputs":[]},{"cell_type":"markdown","source":"Now we can create our independent (predictors) and dependent (target) variables. They both need to be PyTorch tensors. Our dependent variable is Anxiety\n","metadata":{}},{"cell_type":"code","source":"from torch import tensor\n\nt_dep = tensor(df.Anxiety.values)","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:53:19.258140Z","iopub.execute_input":"2023-11-13T01:53:19.258815Z","iopub.status.idle":"2023-11-13T01:53:19.263335Z","shell.execute_reply.started":"2023-11-13T01:53:19.258781Z","shell.execute_reply":"2023-11-13T01:53:19.262356Z"},"trusted":true},"execution_count":129,"outputs":[]},{"cell_type":"code","source":"indep_cols = ['Gender', 'Age', 'CGPA', 'Marriage', 'Depression', 'Panic', 'Treatment'] + added_cols\n\nt_indep = tensor(df[indep_cols].values, dtype=torch.int64)\nt_indep","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:53:21.515329Z","iopub.execute_input":"2023-11-13T01:53:21.516138Z","iopub.status.idle":"2023-11-13T01:53:21.526532Z","shell.execute_reply.started":"2023-11-13T01:53:21.516102Z","shell.execute_reply":"2023-11-13T01:53:21.525664Z"},"trusted":true},"execution_count":130,"outputs":[{"execution_count":130,"output_type":"execute_result","data":{"text/plain":"tensor([[ 1, 18, 4, 0, 1, 1, 0, ..., 0, 0, 0, 1, 0, 0, 0],\n [ 0, 21, 4, 0, 0, 0, 0, ..., 0, 0, 0, 0, 1, 0, 0],\n [ 0, 19, 4, 0, 1, 1, 0, ..., 0, 0, 0, 1, 0, 0, 0],\n [ 1, 22, 4, 1, 1, 0, 0, ..., 0, 0, 0, 0, 0, 1, 0],\n [ 0, 23, 4, 0, 0, 0, 0, ..., 0, 0, 0, 0, 0, 0, 1],\n [ 0, 19, 5, 0, 0, 1, 0, ..., 0, 0, 0, 0, 1, 0, 0],\n [ 1, 23, 5, 1, 1, 1, 0, ..., 0, 0, 0, 0, 1, 0, 0],\n ...,\n [ 1, 24, 0, 0, 0, 1, 0, ..., 0, 0, 0, 0, 0, 1, 0],\n [ 1, 18, 5, 0, 0, 0, 0, ..., 0, 0, 0, 1, 0, 0, 0],\n [ 1, 21, 5, 0, 0, 0, 0, ..., 0, 0, 0, 1, 0, 0, 0],\n [ 0, 18, 4, 0, 1, 0, 0, ..., 0, 0, 0, 0, 1, 0, 0],\n [ 1, 19, 5, 1, 1, 1, 0, ..., 0, 0, 0, 0, 0, 1, 0],\n [ 1, 23, 5, 0, 0, 0, 0, ..., 0, 0, 0, 0, 0, 0, 1],\n [ 0, 20, 4, 0, 0, 0, 0, ..., 0, 0, 0, 0, 1, 0, 0]])"},"metadata":{}}]},{"cell_type":"code","source":"t_indep.shape","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:53:24.005424Z","iopub.execute_input":"2023-11-13T01:53:24.006286Z","iopub.status.idle":"2023-11-13T01:53:24.011746Z","shell.execute_reply.started":"2023-11-13T01:53:24.006249Z","shell.execute_reply":"2023-11-13T01:53:24.010805Z"},"trusted":true},"execution_count":131,"outputs":[{"execution_count":131,"output_type":"execute_result","data":{"text/plain":"torch.Size([100, 53])"},"metadata":{}}]},{"cell_type":"markdown","source":"## Setting up a linear model","metadata":{}},{"cell_type":"code","source":"torch.manual_seed(442)\n\nn_coeff = t_indep.shape[1]\ncoeffs = torch.rand(n_coeff)-0.5\ncoeffs","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:53:26.573390Z","iopub.execute_input":"2023-11-13T01:53:26.573984Z","iopub.status.idle":"2023-11-13T01:53:26.582787Z","shell.execute_reply.started":"2023-11-13T01:53:26.573948Z","shell.execute_reply":"2023-11-13T01:53:26.581775Z"},"trusted":true},"execution_count":132,"outputs":[{"execution_count":132,"output_type":"execute_result","data":{"text/plain":"tensor([-0.4629, 0.1386, 0.2409, -0.2262, -0.2632, -0.3147, 0.4876, 0.3136, 0.2799, -0.4392, 0.2103, 0.3625, 0.1722, 0.2324,\n -0.3575, -0.0010, -0.1833, -0.2411, 0.0489, 0.0866, -0.0534, 0.3132, -0.1487, -0.2551, 0.3328, 0.1292, 0.2361, -0.2622,\n 0.4051, -0.2674, -0.2312, 0.1147, 0.4072, 0.2834, 0.0835, -0.0504, 0.4354, -0.3408, -0.4552, 0.1447, -0.4648, -0.3039,\n -0.1297, -0.0850, 0.4682, 0.3973, -0.4849, 0.2098, -0.3018, 0.4185, 0.1089, 0.0791, -0.1708])"},"metadata":{}}]},{"cell_type":"code","source":"vals,indices = t_indep.max(dim=0)\nt_indep = t_indep / vals","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:53:32.145096Z","iopub.execute_input":"2023-11-13T01:53:32.145445Z","iopub.status.idle":"2023-11-13T01:53:32.150153Z","shell.execute_reply.started":"2023-11-13T01:53:32.145418Z","shell.execute_reply":"2023-11-13T01:53:32.149236Z"},"trusted":true},"execution_count":133,"outputs":[]},{"cell_type":"code","source":"def calc_preds(coeffs, indeps): return torch.sigmoid(indeps@coeffs)\ndef calc_loss(coeffs, indeps, deps): return torch.abs(calc_preds(coeffs, indeps)-deps).mean()","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:53:33.541561Z","iopub.execute_input":"2023-11-13T01:53:33.541895Z","iopub.status.idle":"2023-11-13T01:53:33.546803Z","shell.execute_reply.started":"2023-11-13T01:53:33.541867Z","shell.execute_reply":"2023-11-13T01:53:33.545812Z"},"trusted":true},"execution_count":134,"outputs":[]},{"cell_type":"markdown","source":"## Doing a gradient descent step","metadata":{}},{"cell_type":"code","source":"coeffs.requires_grad_()","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:53:36.156805Z","iopub.execute_input":"2023-11-13T01:53:36.157158Z","iopub.status.idle":"2023-11-13T01:53:36.164407Z","shell.execute_reply.started":"2023-11-13T01:53:36.157129Z","shell.execute_reply":"2023-11-13T01:53:36.163491Z"},"trusted":true},"execution_count":135,"outputs":[{"execution_count":135,"output_type":"execute_result","data":{"text/plain":"tensor([-0.4629, 0.1386, 0.2409, -0.2262, -0.2632, -0.3147, 0.4876, 0.3136, 0.2799, -0.4392, 0.2103, 0.3625, 0.1722, 0.2324,\n -0.3575, -0.0010, -0.1833, -0.2411, 0.0489, 0.0866, -0.0534, 0.3132, -0.1487, -0.2551, 0.3328, 0.1292, 0.2361, -0.2622,\n 0.4051, -0.2674, -0.2312, 0.1147, 0.4072, 0.2834, 0.0835, -0.0504, 0.4354, -0.3408, -0.4552, 0.1447, -0.4648, -0.3039,\n -0.1297, -0.0850, 0.4682, 0.3973, -0.4849, 0.2098, -0.3018, 0.4185, 0.1089, 0.0791, -0.1708], requires_grad=True)"},"metadata":{}}]},{"cell_type":"code","source":"loss = calc_loss(coeffs, t_indep, t_dep)\nloss.backward()\ncoeffs.grad","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:53:37.762028Z","iopub.execute_input":"2023-11-13T01:53:37.762748Z","iopub.status.idle":"2023-11-13T01:53:37.802555Z","shell.execute_reply.started":"2023-11-13T01:53:37.762711Z","shell.execute_reply":"2023-11-13T01:53:37.801693Z"},"trusted":true},"execution_count":136,"outputs":[{"execution_count":136,"output_type":"execute_result","data":{"text/plain":"tensor([ 0.0650, 0.0669, 0.0565, 0.0042, -0.0029, 0.0173, 0.0006, 0.0025, 0.0025, 0.0025,\n 0.0140, 0.0022, 0.0094, 0.0025, -0.0168, 0.0025, -0.0020, 0.0025, 0.0025, 0.0025,\n -0.0025, 0.0024, 0.0049, 0.0212, -0.0022, 0.0024, 0.0025, 0.0024, 0.0025, -0.0025,\n 0.0000, 0.0024, -0.0024, 0.0045, -0.0046, -0.0024, -0.0025, 0.0043, 0.0024, -0.0022,\n 0.0024, 0.0022, 0.0020, 0.0045, 0.0024, -0.0023, 0.0025, 0.0024, 0.0023, 0.0335,\n 0.0146, 0.0177, 0.0098])"},"metadata":{}}]},{"cell_type":"code","source":"loss = calc_loss(coeffs, t_indep, t_dep)\nloss.backward()\nwith torch.no_grad():\n coeffs.sub_(coeffs.grad * 0.1)\n coeffs.grad.zero_()\n print(calc_loss(coeffs, t_indep, t_dep))","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:53:40.640815Z","iopub.execute_input":"2023-11-13T01:53:40.641194Z","iopub.status.idle":"2023-11-13T01:53:40.648229Z","shell.execute_reply.started":"2023-11-13T01:53:40.641151Z","shell.execute_reply":"2023-11-13T01:53:40.647341Z"},"trusted":true},"execution_count":137,"outputs":[{"name":"stdout","text":"tensor(0.5010)\n","output_type":"stream"}]},{"cell_type":"markdown","source":"## Training the linear model","metadata":{}},{"cell_type":"code","source":"from fastai.data.transforms import RandomSplitter\ntrn_split,val_split=RandomSplitter(seed=42)(df)","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:53:43.135910Z","iopub.execute_input":"2023-11-13T01:53:43.136274Z","iopub.status.idle":"2023-11-13T01:53:43.141975Z","shell.execute_reply.started":"2023-11-13T01:53:43.136243Z","shell.execute_reply":"2023-11-13T01:53:43.140962Z"},"trusted":true},"execution_count":138,"outputs":[]},{"cell_type":"code","source":"trn_indep,val_indep = t_indep[trn_split],t_indep[val_split]\ntrn_dep,val_dep = t_dep[trn_split],t_dep[val_split]\nlen(trn_indep),len(val_indep)","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:53:44.555614Z","iopub.execute_input":"2023-11-13T01:53:44.555968Z","iopub.status.idle":"2023-11-13T01:53:44.563785Z","shell.execute_reply.started":"2023-11-13T01:53:44.555938Z","shell.execute_reply":"2023-11-13T01:53:44.562874Z"},"trusted":true},"execution_count":139,"outputs":[{"execution_count":139,"output_type":"execute_result","data":{"text/plain":"(80, 20)"},"metadata":{}}]},{"cell_type":"code","source":"def update_coeffs(coeffs, lr):\n coeffs.sub_(coeffs.grad * lr)\n coeffs.grad.zero_()","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:53:46.735447Z","iopub.execute_input":"2023-11-13T01:53:46.735774Z","iopub.status.idle":"2023-11-13T01:53:46.740248Z","shell.execute_reply.started":"2023-11-13T01:53:46.735748Z","shell.execute_reply":"2023-11-13T01:53:46.739333Z"},"trusted":true},"execution_count":140,"outputs":[]},{"cell_type":"code","source":"def one_epoch(coeffs, lr):\n loss = calc_loss(coeffs, trn_indep, trn_dep)\n loss.backward()\n with torch.no_grad(): update_coeffs(coeffs, lr)\n print(f\"{loss:.3f}\", end=\"; \")","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:53:48.275403Z","iopub.execute_input":"2023-11-13T01:53:48.276069Z","iopub.status.idle":"2023-11-13T01:53:48.280720Z","shell.execute_reply.started":"2023-11-13T01:53:48.276034Z","shell.execute_reply":"2023-11-13T01:53:48.279838Z"},"trusted":true},"execution_count":141,"outputs":[]},{"cell_type":"code","source":"def init_coeffs(): return (torch.rand(n_coeff, 1)*0.1).requires_grad_()","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:53:50.081209Z","iopub.execute_input":"2023-11-13T01:53:50.082006Z","iopub.status.idle":"2023-11-13T01:53:50.086288Z","shell.execute_reply.started":"2023-11-13T01:53:50.081974Z","shell.execute_reply":"2023-11-13T01:53:50.085313Z"},"trusted":true},"execution_count":142,"outputs":[]},{"cell_type":"code","source":"def train_model(epochs=30, lr=0.01):\n torch.manual_seed(442)\n coeffs = init_coeffs()\n for i in range(epochs): one_epoch(coeffs, lr=lr)\n return coeffs","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:53:51.782780Z","iopub.execute_input":"2023-11-13T01:53:51.783133Z","iopub.status.idle":"2023-11-13T01:53:51.788191Z","shell.execute_reply.started":"2023-11-13T01:53:51.783101Z","shell.execute_reply":"2023-11-13T01:53:51.787201Z"},"trusted":true},"execution_count":143,"outputs":[]},{"cell_type":"code","source":"trn_dep = trn_dep[:,None]\nval_dep = val_dep[:,None]","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:53:54.179246Z","iopub.execute_input":"2023-11-13T01:53:54.179635Z","iopub.status.idle":"2023-11-13T01:53:54.184030Z","shell.execute_reply.started":"2023-11-13T01:53:54.179602Z","shell.execute_reply":"2023-11-13T01:53:54.183151Z"},"trusted":true},"execution_count":144,"outputs":[]},{"cell_type":"code","source":"coeffs = train_model(800, lr=0.4)","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:54:25.029502Z","iopub.execute_input":"2023-11-13T01:54:25.030153Z","iopub.status.idle":"2023-11-13T01:54:25.188637Z","shell.execute_reply.started":"2023-11-13T01:54:25.030122Z","shell.execute_reply":"2023-11-13T01:54:25.187729Z"},"trusted":true},"execution_count":150,"outputs":[{"name":"stdout","text":"0.518; 0.512; 0.506; 0.500; 0.494; 0.488; 0.482; 0.476; 0.470; 0.464; 0.459; 0.454; 0.449; 0.444; 0.439; 0.435; 0.431; 0.427; 0.424; 0.420; 0.417; 0.414; 0.412; 0.409; 0.407; 0.404; 0.402; 0.400; 0.398; 0.397; 0.395; 0.393; 0.392; 0.390; 0.389; 0.388; 0.386; 0.385; 0.384; 0.383; 0.382; 0.381; 0.380; 0.380; 0.379; 0.378; 0.377; 0.376; 0.376; 0.375; 0.374; 0.374; 0.373; 0.373; 0.372; 0.372; 0.371; 0.371; 0.370; 0.370; 0.369; 0.369; 0.368; 0.368; 0.368; 0.367; 0.367; 0.367; 0.366; 0.366; 0.366; 0.365; 0.365; 0.365; 0.364; 0.364; 0.364; 0.364; 0.363; 0.363; 0.363; 0.363; 0.362; 0.362; 0.362; 0.362; 0.361; 0.361; 0.361; 0.361; 0.361; 0.360; 0.360; 0.360; 0.360; 0.360; 0.359; 0.359; 0.359; 0.359; 0.359; 0.359; 0.358; 0.358; 0.358; 0.358; 0.358; 0.358; 0.358; 0.357; 0.357; 0.357; 0.357; 0.357; 0.357; 0.357; 0.356; 0.356; 0.356; 0.356; 0.356; 0.356; 0.356; 0.355; 0.355; 0.355; 0.355; 0.355; 0.355; 0.355; 0.355; 0.355; 0.354; 0.354; 0.354; 0.354; 0.354; 0.354; 0.354; 0.354; 0.353; 0.353; 0.353; 0.353; 0.353; 0.353; 0.353; 0.353; 0.353; 0.352; 0.352; 0.352; 0.352; 0.352; 0.352; 0.352; 0.352; 0.352; 0.352; 0.351; 0.351; 0.351; 0.351; 0.351; 0.351; 0.351; 0.351; 0.351; 0.350; 0.350; 0.350; 0.350; 0.350; 0.350; 0.350; 0.350; 0.350; 0.349; 0.349; 0.349; 0.349; 0.349; 0.349; 0.349; 0.349; 0.349; 0.348; 0.348; 0.348; 0.348; 0.348; 0.348; 0.348; 0.348; 0.347; 0.347; 0.347; 0.347; 0.347; 0.347; 0.347; 0.346; 0.346; 0.346; 0.346; 0.346; 0.346; 0.346; 0.346; 0.345; 0.345; 0.345; 0.345; 0.345; 0.345; 0.344; 0.344; 0.344; 0.344; 0.344; 0.344; 0.343; 0.343; 0.343; 0.343; 0.343; 0.343; 0.342; 0.342; 0.342; 0.342; 0.342; 0.341; 0.341; 0.341; 0.341; 0.341; 0.340; 0.340; 0.340; 0.340; 0.340; 0.339; 0.339; 0.339; 0.339; 0.338; 0.338; 0.338; 0.338; 0.337; 0.337; 0.337; 0.337; 0.336; 0.336; 0.336; 0.336; 0.335; 0.335; 0.335; 0.335; 0.334; 0.334; 0.334; 0.333; 0.333; 0.333; 0.332; 0.332; 0.332; 0.332; 0.331; 0.331; 0.331; 0.330; 0.330; 0.330; 0.329; 0.329; 0.329; 0.328; 0.328; 0.328; 0.327; 0.327; 0.327; 0.326; 0.326; 0.325; 0.325; 0.325; 0.324; 0.324; 0.324; 0.323; 0.323; 0.323; 0.322; 0.322; 0.322; 0.321; 0.321; 0.320; 0.320; 0.320; 0.319; 0.319; 0.319; 0.318; 0.318; 0.318; 0.317; 0.317; 0.317; 0.316; 0.316; 0.316; 0.315; 0.315; 0.315; 0.314; 0.314; 0.314; 0.313; 0.313; 0.313; 0.312; 0.312; 0.312; 0.311; 0.311; 0.311; 0.310; 0.310; 0.310; 0.309; 0.309; 0.309; 0.308; 0.308; 0.308; 0.308; 0.307; 0.307; 0.307; 0.306; 0.306; 0.306; 0.306; 0.305; 0.305; 0.305; 0.304; 0.304; 0.304; 0.304; 0.303; 0.303; 0.303; 0.303; 0.302; 0.302; 0.302; 0.301; 0.301; 0.301; 0.301; 0.300; 0.300; 0.300; 0.300; 0.299; 0.299; 0.299; 0.299; 0.298; 0.298; 0.298; 0.298; 0.297; 0.297; 0.297; 0.297; 0.297; 0.296; 0.296; 0.296; 0.296; 0.295; 0.295; 0.295; 0.295; 0.294; 0.294; 0.294; 0.294; 0.294; 0.293; 0.293; 0.293; 0.293; 0.292; 0.292; 0.292; 0.292; 0.292; 0.291; 0.291; 0.291; 0.291; 0.290; 0.290; 0.290; 0.290; 0.290; 0.289; 0.289; 0.289; 0.289; 0.289; 0.288; 0.288; 0.288; 0.288; 0.288; 0.287; 0.287; 0.287; 0.287; 0.287; 0.286; 0.286; 0.286; 0.286; 0.286; 0.285; 0.285; 0.285; 0.285; 0.285; 0.285; 0.284; 0.284; 0.284; 0.284; 0.284; 0.283; 0.283; 0.283; 0.283; 0.283; 0.282; 0.282; 0.282; 0.282; 0.282; 0.282; 0.281; 0.281; 0.281; 0.281; 0.281; 0.281; 0.280; 0.280; 0.280; 0.280; 0.280; 0.280; 0.279; 0.279; 0.279; 0.279; 0.279; 0.279; 0.278; 0.278; 0.278; 0.278; 0.278; 0.278; 0.277; 0.277; 0.277; 0.277; 0.277; 0.277; 0.276; 0.276; 0.276; 0.276; 0.276; 0.276; 0.275; 0.275; 0.275; 0.275; 0.275; 0.275; 0.275; 0.274; 0.274; 0.274; 0.274; 0.274; 0.274; 0.273; 0.273; 0.273; 0.273; 0.273; 0.273; 0.273; 0.272; 0.272; 0.272; 0.272; 0.272; 0.272; 0.272; 0.271; 0.271; 0.271; 0.271; 0.271; 0.271; 0.271; 0.270; 0.270; 0.270; 0.270; 0.270; 0.270; 0.270; 0.269; 0.269; 0.269; 0.269; 0.269; 0.269; 0.269; 0.269; 0.268; 0.268; 0.268; 0.268; 0.268; 0.268; 0.268; 0.267; 0.267; 0.267; 0.267; 0.267; 0.267; 0.267; 0.267; 0.266; 0.266; 0.266; 0.266; 0.266; 0.266; 0.266; 0.266; 0.265; 0.265; 0.265; 0.265; 0.265; 0.265; 0.265; 0.265; 0.264; 0.264; 0.264; 0.264; 0.264; 0.264; 0.264; 0.264; 0.263; 0.263; 0.263; 0.263; 0.263; 0.263; 0.263; 0.263; 0.262; 0.262; 0.262; 0.262; 0.262; 0.262; 0.262; 0.262; 0.262; 0.261; 0.261; 0.261; 0.261; 0.261; 0.261; 0.261; 0.261; 0.260; 0.260; 0.260; 0.260; 0.260; 0.260; 0.260; 0.260; 0.260; 0.259; 0.259; 0.259; 0.259; 0.259; 0.259; 0.259; 0.259; 0.259; 0.258; 0.258; 0.258; 0.258; 0.258; 0.258; 0.258; 0.258; 0.258; 0.258; 0.257; 0.257; 0.257; 0.257; 0.257; 0.257; 0.257; 0.257; 0.257; 0.256; 0.256; 0.256; 0.256; 0.256; 0.256; 0.256; 0.256; 0.256; 0.256; 0.255; 0.255; 0.255; 0.255; 0.255; 0.255; 0.255; 0.255; 0.255; 0.255; 0.254; 0.254; 0.254; 0.254; 0.254; 0.254; 0.254; 0.254; 0.254; 0.254; 0.253; 0.253; 0.253; 0.253; 0.253; 0.253; 0.253; 0.253; 0.253; 0.253; 0.252; 0.252; 0.252; 0.252; 0.252; 0.252; 0.252; 0.252; 0.252; 0.252; 0.252; 0.251; 0.251; 0.251; 0.251; 0.251; 0.251; 0.251; 0.251; 0.251; 0.251; 0.250; 0.250; 0.250; 0.250; 0.250; 0.250; 0.250; 0.250; 0.250; 0.250; 0.250; 0.249; 0.249; 0.249; 0.249; 0.249; 0.249; 0.249; 0.249; 0.249; 0.249; 0.249; 0.248; 0.248; 0.248; 0.248; 0.248; 0.248; 0.248; 0.248; 0.248; 0.248; 0.248; 0.248; 0.247; 0.247; 0.247; 0.247; 0.247; 0.247; 0.247; 0.247; 0.247; 0.247; 0.247; 0.246; 0.246; 0.246; 0.246; 0.246; 0.246; 0.246; 0.246; 0.246; 0.246; 0.246; 0.246; 0.245; 0.245; 0.245; 0.245; 0.245; 0.245; 0.245; 0.245; 0.245; 0.245; 0.245; 0.245; 0.244; 0.244; 0.244; 0.244; 0.244; 0.244; 0.244; 0.244; 0.244; 0.244; 0.244; 0.244; 0.243; 0.243; 0.243; 0.243; 0.243; 0.243; 0.243; 0.243; 0.243; 0.243; 0.243; 0.243; 0.243; 0.242; ","output_type":"stream"}]},{"cell_type":"code","source":"def show_coeffs(): return dict(zip(indep_cols, coeffs.requires_grad_(False)))\nshow_coeffs()","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:48:17.851513Z","iopub.execute_input":"2023-11-13T01:48:17.851880Z","iopub.status.idle":"2023-11-13T01:48:17.872301Z","shell.execute_reply.started":"2023-11-13T01:48:17.851847Z","shell.execute_reply":"2023-11-13T01:48:17.871420Z"},"trusted":true},"execution_count":106,"outputs":[{"execution_count":106,"output_type":"execute_result","data":{"text/plain":"{'Gender': tensor(-3.5400),\n 'Age': tensor(-3.0903),\n 'CGPA': tensor(3.3035),\n 'Marriage': tensor(-0.6180),\n 'Depression': tensor(3.5757),\n 'Panic': tensor(-1.1756),\n 'Treatment': tensor(1.9421),\n 'Major_ACCOUNTING ': tensor(0.3136),\n 'Major_ALA': tensor(-1.2993),\n 'Major_BANKING STUDIES': tensor(-0.8890),\n 'Major_BCS': tensor(-4.5611),\n 'Major_BENL': tensor(0.3944),\n 'Major_BIOMEDICAL SCIENCE': tensor(-1.5497),\n 'Major_BIOTECHNOLOGY': tensor(-0.2874),\n 'Major_BIT': tensor(7.3195),\n 'Major_BUSINESS ADMINISTRATION': tensor(-0.8007),\n 'Major_COMMUNICATION ': tensor(3.4117),\n 'Major_CTS': tensor(-0.4926),\n 'Major_DIPLOMA NURSING': tensor(-0.9195),\n 'Major_DIPLOMA TESL': tensor(-0.3667),\n 'Major_ECONS': tensor(3.6470),\n 'Major_ENGIN': tensor(0.3132),\n 'Major_ENGINE': tensor(-0.5417),\n 'Major_ENGINEERING': tensor(-2.0118),\n 'Major_ENM': tensor(3.8077),\n 'Major_FIQH': tensor(-0.0677),\n 'Major_FIQH FATWA ': tensor(-0.7641),\n 'Major_HUMAN RESOURCES': tensor(-0.9474),\n 'Major_HUMAN SCIENCES ': tensor(-0.3133),\n 'Major_IRKHS': tensor(3.9527),\n 'Major_ISLAMIC EDUCATION': tensor(1.9158),\n 'Major_IT': tensor(-0.3895),\n 'Major_KENMS': tensor(4.4673),\n 'Major_KIRKHS': tensor(-2.8368),\n 'Major_KOE': tensor(0.1907),\n 'Major_KOP': tensor(-0.0504),\n 'Major_LAW': tensor(2.7355),\n 'Major_LAWS': tensor(-2.4227),\n 'Major_MALCOM': tensor(-2.5271),\n 'Major_MARINE SCIENCE': tensor(0.1447),\n 'Major_MATHEMATHICS': tensor(-2.6815),\n 'Major_MHSC': tensor(-4.1485),\n 'Major_NURSING ': tensor(-0.1297),\n 'Major_PENDIDIKAN ISLAM': tensor(-2.0035),\n 'Major_PENDIDIKAN ISLAM ': tensor(-0.8241),\n 'Major_PSYCHOLOGY': tensor(4.4799),\n 'Major_RADIOGRAPHY': tensor(-1.6805),\n 'Major_TAASL': tensor(-2.0629),\n 'Major_USULUDDIN ': tensor(-0.3018),\n 'Year_YEAR 1': tensor(-1.8532),\n 'Year_YEAR 2': tensor(0.2108),\n 'Year_YEAR 3': tensor(0.1780),\n 'Year_YEAR 4': tensor(0.5122)}"},"metadata":{}}]},{"cell_type":"markdown","source":"## Measuring accuracy","metadata":{}},{"cell_type":"markdown","source":"We'll assume that any student with a score of over 0.5 is predicted to have anxiety. So that means we're correct for each row where preds>0.5 is the same as the dependent variable:","metadata":{}},{"cell_type":"code","source":"def acc(coeffs): return (val_dep.bool()==(calc_preds(coeffs, val_indep)>0.5)).float().mean()\nacc(coeffs)","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:54:26.677927Z","iopub.execute_input":"2023-11-13T01:54:26.678499Z","iopub.status.idle":"2023-11-13T01:54:26.685984Z","shell.execute_reply.started":"2023-11-13T01:54:26.678465Z","shell.execute_reply":"2023-11-13T01:54:26.685138Z"},"trusted":true},"execution_count":151,"outputs":[{"execution_count":151,"output_type":"execute_result","data":{"text/plain":"tensor(0.7000)"},"metadata":{}}]},{"cell_type":"markdown","source":"## A neural network","metadata":{}},{"cell_type":"code","source":"def init_coeffs(n_hidden=20):\n layer1 = (torch.rand(n_coeff, n_hidden)-0.5)/n_hidden\n layer2 = torch.rand(n_hidden, 1)-0.3\n const = torch.rand(1)[0]\n return layer1.requires_grad_(),layer2.requires_grad_(),const.requires_grad_()","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:55:49.583309Z","iopub.execute_input":"2023-11-13T01:55:49.583657Z","iopub.status.idle":"2023-11-13T01:55:49.589271Z","shell.execute_reply.started":"2023-11-13T01:55:49.583629Z","shell.execute_reply":"2023-11-13T01:55:49.588237Z"},"trusted":true},"execution_count":152,"outputs":[]},{"cell_type":"code","source":"import torch.nn.functional as F\n\ndef calc_preds(coeffs, indeps):\n l1,l2,const = coeffs\n res = F.relu(indeps@l1)\n res = res@l2 + const\n return torch.sigmoid(res)","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:56:02.267859Z","iopub.execute_input":"2023-11-13T01:56:02.268251Z","iopub.status.idle":"2023-11-13T01:56:02.273430Z","shell.execute_reply.started":"2023-11-13T01:56:02.268217Z","shell.execute_reply":"2023-11-13T01:56:02.272515Z"},"trusted":true},"execution_count":153,"outputs":[]},{"cell_type":"code","source":"def update_coeffs(coeffs, lr):\n for layer in coeffs:\n layer.sub_(layer.grad * lr)\n layer.grad.zero_()","metadata":{"execution":{"iopub.status.busy":"2023-11-13T01:56:12.904903Z","iopub.execute_input":"2023-11-13T01:56:12.905294Z","iopub.status.idle":"2023-11-13T01:56:12.910157Z","shell.execute_reply.started":"2023-11-13T01:56:12.905263Z","shell.execute_reply":"2023-11-13T01:56:12.909159Z"},"trusted":true},"execution_count":154,"outputs":[]},{"cell_type":"code","source":"coeffs = train_model(50,lr=1.4)","metadata":{"execution":{"iopub.status.busy":"2023-11-13T02:00:26.288741Z","iopub.execute_input":"2023-11-13T02:00:26.289092Z","iopub.status.idle":"2023-11-13T02:00:26.313295Z","shell.execute_reply.started":"2023-11-13T02:00:26.289062Z","shell.execute_reply":"2023-11-13T02:00:26.312464Z"},"trusted":true},"execution_count":217,"outputs":[{"name":"stdout","text":"0.566; 0.558; 0.550; 0.541; 0.530; 0.518; 0.504; 0.489; 0.469; 0.447; 0.425; 0.406; 0.389; 0.376; 0.367; 0.359; 0.354; 0.348; 0.343; 0.338; 0.333; 0.327; 0.321; 0.314; 0.307; 0.301; 0.295; 0.289; 0.284; 0.280; 0.275; 0.271; 0.267; 0.263; 0.260; 0.256; 0.253; 0.250; 0.247; 0.244; 0.241; 0.238; 0.235; 0.232; 0.230; 0.227; 0.225; 0.222; 0.220; 0.217; ","output_type":"stream"}]},{"cell_type":"code","source":"acc(coeffs)","metadata":{"execution":{"iopub.status.busy":"2023-11-13T02:00:27.430977Z","iopub.execute_input":"2023-11-13T02:00:27.431305Z","iopub.status.idle":"2023-11-13T02:00:27.438264Z","shell.execute_reply.started":"2023-11-13T02:00:27.431275Z","shell.execute_reply":"2023-11-13T02:00:27.437309Z"},"trusted":true},"execution_count":218,"outputs":[{"execution_count":218,"output_type":"execute_result","data":{"text/plain":"tensor(0.7000)"},"metadata":{}}]},{"cell_type":"markdown","source":"## Deep learning","metadata":{}},{"cell_type":"code","source":"def init_coeffs():\n hiddens = [10, 10] # <-- set this to the size of each hidden layer you want\n sizes = [n_coeff] + hiddens + [1]\n n = len(sizes)\n layers = [(torch.rand(sizes[i], sizes[i+1])-0.3)/sizes[i+1]*4 for i in range(n-1)]\n consts = [(torch.rand(1)[0]-0.5)*0.1 for i in range(n-1)]\n for l in layers+consts: l.requires_grad_()\n return layers,consts","metadata":{"execution":{"iopub.status.busy":"2023-11-13T02:01:40.020393Z","iopub.execute_input":"2023-11-13T02:01:40.021192Z","iopub.status.idle":"2023-11-13T02:01:40.028840Z","shell.execute_reply.started":"2023-11-13T02:01:40.021132Z","shell.execute_reply":"2023-11-13T02:01:40.027734Z"},"trusted":true},"execution_count":219,"outputs":[]},{"cell_type":"code","source":"import torch.nn.functional as F\n\ndef calc_preds(coeffs, indeps):\n layers,consts = coeffs\n n = len(layers)\n res = indeps\n for i,l in enumerate(layers):\n res = res@l + consts[i]\n if i!=n-1: res = F.relu(res)\n return torch.sigmoid(res)","metadata":{"execution":{"iopub.status.busy":"2023-11-13T02:01:49.345358Z","iopub.execute_input":"2023-11-13T02:01:49.345711Z","iopub.status.idle":"2023-11-13T02:01:49.351313Z","shell.execute_reply.started":"2023-11-13T02:01:49.345683Z","shell.execute_reply":"2023-11-13T02:01:49.350364Z"},"trusted":true},"execution_count":220,"outputs":[]},{"cell_type":"code","source":"def update_coeffs(coeffs, lr):\n layers,consts = coeffs\n for layer in layers+consts:\n layer.sub_(layer.grad * lr)\n layer.grad.zero_()","metadata":{"execution":{"iopub.status.busy":"2023-11-13T02:01:59.662473Z","iopub.execute_input":"2023-11-13T02:01:59.662836Z","iopub.status.idle":"2023-11-13T02:01:59.668019Z","shell.execute_reply.started":"2023-11-13T02:01:59.662802Z","shell.execute_reply":"2023-11-13T02:01:59.666922Z"},"trusted":true},"execution_count":221,"outputs":[]},{"cell_type":"code","source":"coeffs = train_model(lr=0.06)\n# best lr=0.06 acc(coeffs) = 0.8 loss = 0.48\n# average lr >= 0.06 acc(coeffs) = 0.75 loss 0.46 - 0.5","metadata":{"execution":{"iopub.status.busy":"2023-11-13T02:08:43.552723Z","iopub.execute_input":"2023-11-13T02:08:43.553356Z","iopub.status.idle":"2023-11-13T02:08:43.575464Z","shell.execute_reply.started":"2023-11-13T02:08:43.553322Z","shell.execute_reply":"2023-11-13T02:08:43.574626Z"},"trusted":true},"execution_count":274,"outputs":[{"name":"stdout","text":"0.590; 0.578; 0.564; 0.548; 0.532; 0.519; 0.511; 0.506; 0.503; 0.501; 0.500; 0.498; 0.497; 0.496; 0.495; 0.494; 0.493; 0.492; 0.491; 0.490; 0.489; 0.488; 0.488; 0.487; 0.486; 0.484; 0.483; 0.482; 0.481; 0.480; ","output_type":"stream"}]},{"cell_type":"code","source":"acc(coeffs)","metadata":{"execution":{"iopub.status.busy":"2023-11-13T02:08:44.752221Z","iopub.execute_input":"2023-11-13T02:08:44.752986Z","iopub.status.idle":"2023-11-13T02:08:44.759875Z","shell.execute_reply.started":"2023-11-13T02:08:44.752954Z","shell.execute_reply":"2023-11-13T02:08:44.758937Z"},"trusted":true},"execution_count":275,"outputs":[{"execution_count":275,"output_type":"execute_result","data":{"text/plain":"tensor(0.8000)"},"metadata":{}}]},{"cell_type":"code","source":"coeffs","metadata":{"execution":{"iopub.status.busy":"2023-11-13T02:14:46.651214Z","iopub.execute_input":"2023-11-13T02:14:46.652014Z","iopub.status.idle":"2023-11-13T02:14:46.667576Z","shell.execute_reply.started":"2023-11-13T02:14:46.651980Z","shell.execute_reply":"2023-11-13T02:14:46.666748Z"},"trusted":true},"execution_count":277,"outputs":[{"execution_count":277,"output_type":"execute_result","data":{"text/plain":"([tensor([[-0.1075, 0.1425, 0.1672, -0.0265, -0.0450, -0.0617, 0.2577, 0.1785, 0.1984, -0.0910],\n [ 0.1604, 0.2316, 0.1402, 0.1593, -0.0768, 0.0668, -0.0109, -0.0410, 0.1070, 0.1220],\n [ 0.0566, 0.2097, 0.0132, -0.0296, 0.2010, 0.1235, 0.1580, -0.0399, 0.2508, -0.0215],\n [-0.0118, 0.1250, 0.2421, 0.1932, 0.1100, 0.0564, 0.2532, -0.0609, -0.1012, 0.1383],\n [-0.1052, -0.0426, 0.0288, 0.0482, 0.2692, 0.2399, -0.1133, 0.1637, -0.0405, 0.2479],\n [ 0.1198, 0.1138, 0.0130, 0.0004, 0.2728, -0.0208, -0.0294, 0.0375, 0.2155, -0.1157],\n [-0.0228, 0.1157, -0.1067, 0.2295, 0.0368, 0.2187, -0.0578, 0.1255, -0.0346, 0.0899],\n [ 0.0144, 0.0462, 0.0273, 0.2275, 0.2297, 0.2709, 0.0669, -0.0431, 0.1379, 0.2291],\n [ 0.1222, 0.0385, -0.0923, 0.0751, -0.0301, 0.1611, 0.0420, -0.1168, 0.1574, 0.1164],\n [ 0.1973, -0.0271, 0.2566, -0.0405, 0.1406, 0.2055, 0.0206, 0.1945, 0.1074, 0.1892],\n [ 0.1770, -0.0258, -0.0540, -0.0717, 0.1149, -0.0475, -0.0779, -0.0508, 0.0077, 0.2233],\n [-0.0828, -0.0545, -0.0889, 0.2473, 0.1067, -0.0272, 0.1318, 0.1191, 0.0119, 0.1944],\n [ 0.1298, 0.0301, -0.0682, 0.0020, 0.1957, -0.0512, 0.0873, 0.1427, 0.0248, 0.2508],\n [ 0.0675, -0.0359, -0.0793, 0.1049, 0.0826, 0.1932, 0.0836, 0.1936, -0.0202, -0.0478],\n [ 0.0631, 0.1938, 0.0075, -0.0797, 0.0196, 0.0448, 0.0295, 0.0597, -0.0577, 0.1113],\n [-0.0283, 0.1456, -0.0108, 0.0957, 0.0065, 0.0947, 0.2319, -0.0561, 0.0264, 0.0269],\n [ 0.0610, 0.2471, -0.0516, 0.2655, 0.2801, 0.1121, 0.2662, 0.2255, 0.1107, 0.1330],\n [ 0.1459, 0.1128, -0.1057, -0.0804, -0.0704, 0.0425, -0.0047, 0.1710, -0.1053, -0.1151],\n [ 0.2145, -0.0775, 0.1872, 0.2543, 0.0401, -0.0252, 0.0507, -0.1096, 0.2194, -0.0046],\n [ 0.0528, -0.0360, -0.0040, 0.2632, 0.0199, -0.0764, 0.2027, 0.0505, -0.0816, 0.2178],\n [ 0.1415, 0.0864, -0.1113, 0.1966, 0.1078, 0.1051, -0.0222, 0.0956, -0.0772, 0.2332],\n [ 0.2473, 0.1886, -0.0052, -0.0804, -0.0391, 0.2438, 0.0460, -0.1177, 0.2083, -0.0856],\n [-0.0831, 0.1668, -0.0926, -0.1147, 0.0961, 0.0529, 0.0318, 0.1889, -0.0953, -0.0215],\n [ 0.1614, 0.2133, -0.0886, -0.0586, -0.0911, 0.1180, 0.2020, -0.0524, 0.2755, 0.1090],\n [ 0.2365, 0.1136, 0.0382, -0.0389, -0.1052, 0.0293, 0.1410, 0.1000, 0.2340, 0.0994],\n [ 0.0383, -0.0578, -0.0302, 0.1536, -0.0587, -0.0244, 0.2450, 0.2466, 0.2085, -0.1121],\n [ 0.1746, -0.0690, 0.2420, -0.1048, 0.0528, 0.1495, 0.1530, 0.1483, 0.1181, -0.1167],\n [ 0.0622, -0.0250, 0.2642, 0.2090, 0.1939, 0.2735, -0.0711, 0.2264, 0.0269, 0.0988],\n [ 0.1132, 0.1665, -0.0188, -0.1042, 0.1988, 0.2395, 0.0677, -0.1212, 0.0713, 0.2279],\n [ 0.0707, 0.2555, -0.0198, 0.2271, -0.0724, -0.0623, -0.0963, -0.0475, 0.1738, 0.2540],\n [ 0.0472, -0.0213, 0.2584, 0.1496, 0.0100, 0.0380, 0.0989, -0.0108, -0.0779, 0.0204],\n [ 0.2354, -0.1074, 0.1796, 0.0166, -0.0406, 0.0462, 0.1403, 0.0254, -0.0598, 0.1390],\n [ 0.1074, -0.0942, -0.0973, 0.1077, 0.0527, -0.0479, -0.0513, 0.2150, 0.2591, -0.0882],\n [-0.0183, 0.0284, 0.1283, 0.2387, 0.2590, -0.0438, 0.1616, -0.0416, -0.0238, 0.2385],\n [-0.0751, 0.0265, 0.0665, 0.2542, 0.1773, 0.1578, 0.0609, 0.0314, 0.0078, 0.1089],\n [-0.1192, 0.1532, 0.1689, 0.2031, -0.0874, 0.0709, 0.1456, 0.1401, -0.0423, 0.2354],\n [-0.1014, -0.0749, 0.0445, -0.0350, 0.1810, -0.0267, 0.0211, 0.0435, 0.2697, 0.2295],\n [-0.0235, -0.0095, 0.1184, 0.2119, 0.1822, 0.2703, 0.0249, 0.0818, -0.0856, 0.0500],\n [ 0.2269, 0.0232, -0.1082, 0.0563, 0.0360, -0.0982, 0.1553, 0.0551, 0.2490, 0.1156],\n [-0.0463, -0.0900, 0.0395, 0.0418, 0.0289, 0.2037, 0.2774, 0.0944, 0.1583, 0.1908],\n [-0.0696, 0.0341, 0.0673, 0.2630, 0.2391, -0.0142, 0.0951, -0.0936, 0.1397, 0.1501],\n [ 0.0900, 0.1487, 0.1411, 0.1282, 0.2349, -0.1002, -0.0393, 0.1264, 0.1442, 0.2283],\n [ 0.1121, 0.1570, -0.0284, -0.0957, 0.1100, -0.1042, -0.0060, 0.0691, 0.2315, -0.0167],\n [ 0.1016, 0.1038, 0.0020, 0.2505, -0.0384, -0.1091, 0.1980, 0.0781, -0.0131, 0.2350],\n [ 0.2551, 0.2135, 0.1722, -0.1102, 0.1052, 0.2372, -0.0768, 0.2565, 0.0549, -0.1040],\n [-0.0780, 0.1217, 0.0296, 0.0795, 0.0444, 0.0183, 0.0370, 0.1226, 0.0504, 0.0132],\n [-0.0245, 0.0402, -0.0078, 0.1193, -0.0910, 0.1239, 0.0462, -0.0425, 0.2713, 0.2373],\n [ 0.1815, 0.0613, 0.0940, 0.0547, 0.1125, 0.1282, 0.1146, 0.1273, -0.0992, -0.0150],\n [ 0.2628, 0.0930, -0.0192, 0.1679, 0.0676, 0.1004, -0.0263, 0.0026, 0.1126, 0.0487],\n [ 0.1463, 0.1671, 0.2697, 0.1097, 0.0149, 0.2351, 0.0021, -0.1073, -0.1101, 0.2623],\n [ 0.2642, 0.0892, -0.0252, -0.0633, -0.0160, 0.1736, -0.0332, 0.0542, -0.0433, 0.0153],\n [ 0.0964, 0.0695, 0.1613, 0.0941, -0.0632, -0.0980, -0.0221, -0.0870, 0.0923, 0.2376],\n [ 0.0169, 0.2518, 0.1385, 0.0879, -0.1043, 0.1380, -0.0223, 0.1320, -0.0220, -0.0741]], requires_grad=True),\n tensor([[ 0.1047, 0.1608, -0.1318, 0.1312, 0.2640, 0.0717, 0.1756, 0.1119, -0.0907, -0.0173],\n [ 0.1172, 0.1368, 0.0245, 0.0038, 0.0735, -0.0382, 0.2992, 0.1239, 0.0962, 0.2740],\n [-0.1163, 0.2266, 0.0704, 0.1228, 0.1719, -0.0228, 0.0967, 0.0293, 0.1101, -0.0850],\n [ 0.0245, 0.0847, -0.0972, 0.2212, -0.0502, 0.2162, -0.0782, 0.2240, 0.2565, 0.0805],\n [ 0.2186, 0.2430, 0.1870, 0.1442, 0.2630, -0.1176, 0.1017, 0.2908, 0.2296, -0.0920],\n [ 0.1453, 0.0487, 0.2521, 0.2403, 0.0955, 0.1383, 0.0050, 0.2297, -0.0809, 0.2199],\n [ 0.1218, -0.0633, -0.0346, -0.1393, -0.0543, -0.1053, -0.0773, -0.0114, 0.1956, 0.0107],\n [ 0.1833, 0.0255, 0.1586, 0.0837, 0.0560, 0.2672, 0.1205, 0.1054, 0.0480, 0.0272],\n [-0.0803, -0.0254, 0.0098, -0.0398, 0.1174, 0.1546, -0.0673, 0.1412, 0.0297, 0.0994],\n [-0.0864, 0.1109, 0.0954, 0.0306, 0.0548, 0.0804, -0.0063, 0.2612, 0.0762, -0.0554]], requires_grad=True),\n tensor([[ 2.0529],\n [ 0.2744],\n [ 1.8658],\n [ 1.0914],\n [-0.1058],\n [ 1.8337],\n [-0.6160],\n [-0.8687],\n [ 0.4645],\n [-0.4771]], requires_grad=True)],\n [tensor(-0.0863, requires_grad=True),\n tensor(-0.1643, requires_grad=True),\n tensor(-0.0882, requires_grad=True)])"},"metadata":{}}]},{"cell_type":"markdown","source":"## Exporting the tensor\n","metadata":{}},{"cell_type":"code","source":"torch.save(coeffs,'anxietyBot.pt')","metadata":{"execution":{"iopub.status.busy":"2023-11-13T02:45:05.221138Z","iopub.execute_input":"2023-11-13T02:45:05.221817Z","iopub.status.idle":"2023-11-13T02:45:05.226589Z","shell.execute_reply.started":"2023-11-13T02:45:05.221783Z","shell.execute_reply":"2023-11-13T02:45:05.225582Z"},"trusted":true},"execution_count":300,"outputs":[]}]} \ No newline at end of file