Logistic Regression เป็นอัลกอริทึมในการเรียนรู้แบบจำแนกแบบโครงสร้าง ที่ใช้ในงานที่มีการจำแนกโดยใช้ข้อมูลที่มีตัวแปรต้นที่เป็นตัวแปรจำเพาะ เช่น การจำแนกเพศ, การแยกประเภทของสินค้า, หรือการพยากรณ์ว่าลูกค้าจะซื้อสินค้าหรือไม่ โดยอัลกอริทึม Logistic Regression จะคำนวณความน่าจะเป็นที่คำตอบที่ได้จะอยู่ในกลุ่มหรือประเภทบางรายการ ในที่นี้เราจะแสดงการใช้ scikit-learn ในการทำ Logistic Regression สำหรับงานจำแนกแบบอย่างอย่างง่าย ที่มีชองเป็นบริโภคหรือไม่ (binary classification)
ขั้นตอนแรกในการทำ Logistic Regression คือ การนำเข้าข้อมูล โดยในที่นี้เราจะใช้ชุดข้อมูล Iris dataset ซึ่งเป็นชุดข้อมูลที่มีสองกลุ่มข้อมูลที่ต้องการจำแนก กลุ่มเห็ด (0) และกลุ่มไม่เห็ด (1)
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score
url = “https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data”
names = [‘sepal-length’, ‘sepal-width’, ‘petal-length’, ‘petal-width’, ‘class’]
data = pd.read_csv(url, names=names)
ขั้นตอนถัดมาเราจะแบ่งข้อมูลออกเป็นกลุ่ม train set และ test set
X = data.drop(‘class’, axis=1)
y = data[‘class’]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
ต่อมาเราจะสร้างโมเดล Logistic Regression และฝึกโมเดลด้วย train set
model = LogisticRegression()
model.fit(X_train, y_train)
หลังจากฝึกโมเดลเสร็จเรียบร้อยแล้ว เราจะใช้ test set เพื่อทดสอบประสิทธิภาพของโมเดล
predictions = model.predict(X_test)
เมื่อได้ผลลัพธ์จากการทดสอบ เราสามารถนับความแม่นยำของโมเดลโดยใช้ accuracy score
accuracy = accuracy_score(y_test, predictions)
print(“Accuracy:”, accuracy)
นอกจากนี้ เรายังสามารถใช้ Logistic Regression ในการจำแนกข้อมูลที่มีตัวแปรต้นมากกว่าหนึ่งตัวแปร และสามารถใช้การตรวจสอบความถูกต้องด้วย confusion matrix หรือ ROC curve ตามต้องการ
สรุป เราได้เรียนรู้วิธีการทำ Logistic Regression (binary classification) โดยใช้ scikit-learn ซึ่งเป็น library ที่มีประสิทธิภาพสำหรับงานในการทำ machine learning โดย Logistic Regression เป็นวิธีการทำ machine learning ที่ง่ายและมีประสิทธิภาพสำหรับงานจำแนกแบบ binary classification และช่วยให้เราสามารถทำนายค่าตรงความน่าจะเป็นได้โดยอ้างอิงจากข้อมูลที่มีอยู่
สวัสดีครับ อาจารย์ ผมสมัครเรียนมหาวิทยาลัย สาขา logistic แต่ผมกำลังหาข้อมูลในการซื้อ notebook มาใช้เรียนและทำงานในสาขา logistic ผมอยากจะสอบถามว่าในการเรียนและทำงานในสาขาlogistic ใช้ Software ตัวไหนใน notebook ในการทำงานบ้างครับ ผมไม่อยากซื้อแพงจนเกินความจำเป็น อยากประหยัดช่วยครอบครัวให้มากที่สุดเท่าที่จะทำได้ รบกวนหน่อยนะครับ ใครรู้ก็สามารถตอบได้เลยนะครับ ขอบคุณล่วงหน้าครับ
ขอบคุณมากๆครับอาจารย์ เป็นประโยชน์สำหรับผู้ที่สนใจมากๆครับ
ขอบคุณมากครัับอาจารย์
กราบ
ทำต่อไปเรื่อยๆนะครับเป็นช่องที่มีประโยชน์มากผมดูแทบทุกวันเลย