{"cells":[{"cell_type":"markdown","metadata":{"id":"PRQWzo8DAbNt"},"source":["# Logistic Regression"]},{"cell_type":"markdown","metadata":{"id":"5OtTMUf8c2ih"},"source":["\n","\n","[Slides: Logistic Regression](https://github.com/ichatnun/brainCodeCamp2023_lectures/blob/main/MachineLearning/machine_learning_logistic_regression.pdf)\n","\n","
\n","\n","ก่อนหน้านี้ เราได้เรียนรู้ Simple Linear Model ในสัปดาห์ที่ 3 ทำให้เราสามารถพัฒนาโมเดลเชิงเส้น (linear model) เพื่อทำนายค่า $y$ โดยเรียนรู้จากชุดข้อมูลที่มีโดยไม่จำกัดค่าที่เป็นไปได้ของค่า $y$ ในกรณีที่ชุดข้อมูลประกอบด้วย 1 feature คือ $x$ เราสามารถเขียนสมการของความสัมพันธ์เชิงเส้นได้เป็น\n","\n","\n","$$y = w_0 + w_1x$$\n","\n","\n","โดยที่ $w_0$ และ $w_1$ คือ พารามิเตอร์ของโมเดลเชิงเส้น\n","\n","อย่างไรก็ดี มีโจทย์อีกประเภทหนึ่ง คือ classification problem หรือ ปัญหาการจำแนกหมวดหมู่ ซึ่ง $y$ เป็น label ของหมวดหมู่ (class) โดยมักแทนด้วยตัวเลข (เช่น จำนวนเต็ม) เพื่อให้สามารถทำงานกับระบบคำนวณของคอมพิวเตอร์ได้\n","\n","ในกรณีที่ชุดข้อมูลประกอบด้วย 2 classes หรือ binary classification เรามักกำหนดให้ค่า $y$ มีค่าเป็น 0 หรือ 1 แทน label ของแต่ละ class เช่น\n","การใช้เลข 0 แทน class แรก และตัวเลข 1 แทน class ที่สอง\n"," \n","การนำเอา linear model ตามสมการด้านบนมาใช้ทำนายค่า $y$ ในโจทย์ประเภทนี้จะไม่เหมาะนัก เนื่องจาก linear model นั้นให้ค่า $y$ ได้ตั้งแต่ $-∞$ ไปจนถึง $+∞$ ในขณะที่เราต้องการค่า $y$ ที่เป็น 0 หรือ 1 เท่านั้น\n","\n","วิธีหนึ่งที่เราสามารถใช้ในการแก้ปัญหาตรงนี้ก็คือการนำเอาฟังก์ชันทางคณิตศาสตร์มาใช้แปลงค่า $y$ ที่เราได้รับมาจากสมการ $y = w_0 + w_1x$ ให้มีค่าอยู่ระหว่าง 0 กับ 1 ได้ หนึ่งในฟังก์ชันที่มีคุณสมบัติดังกล่าว คือ logistic function หรือ sigmoid function ซึ่งมีสมการทางคณิตศาสตร์ ดังนี้\n","\n","\n","$$\n","g(x) = \\frac{1}{1 + e^{-x}}\n","$$"]},{"cell_type":"code","execution_count":1,"metadata":{"executionInfo":{"elapsed":907,"status":"ok","timestamp":1692639014011,"user":{"displayName":"Itthi Chatnuntawech","userId":"06267664527776052880"},"user_tz":-420},"id":"1vnHr9cvil3s"},"outputs":[],"source":["import numpy as np\n","import matplotlib.pyplot as plt\n","from matplotlib import colors\n","from sklearn.linear_model import LogisticRegression\n","from sklearn.inspection import DecisionBoundaryDisplay\n","from sklearn.model_selection import train_test_split\n","from sklearn.model_selection import StratifiedKFold, KFold\n","from sklearn.model_selection import GridSearchCV\n","from sklearn.preprocessing import StandardScaler\n","from sklearn.metrics import accuracy_score, classification_report, confusion_matrix, ConfusionMatrixDisplay\n","\n","# ตั้งค่า random seed สำหรับการทำซ้ำ (reproducibility)\n","RANDOM_SEED = 2566"]},{"cell_type":"code","execution_count":2,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":507},"executionInfo":{"elapsed":23,"status":"ok","timestamp":1692639014012,"user":{"displayName":"Itthi Chatnuntawech","userId":"06267664527776052880"},"user_tz":-420},"id":"wYgGnCf1W6ey","outputId":"c69c7695-cbae-4634-f9a9-93bca611b0db"},"outputs":[{"data":{"image/png":"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","text/plain":["