📝 คอร์สนี้ไม่ใช่คอร์สสอน coding/ programming นะครับ แอดแค่ยก code มาให้ดูเป็นตัวอย่างว่าเราเขียนโค้ดสร้าง ML models ยังไง ถ้าใครอยากเรียน code เต็มๆ มาลงเรียน bootcamp กับแอด 555+
ML in Python
Python คือภาษาที่ได้รับความนิยมสูงที่สุดในงานสาย ML/ AI บทเรียนนี้แอดจะ demo วิธีการเขียน sklearn เบื้องต้น
Scikit-Learn เรียกสั้นๆว่า sklearn คือสุดยอด ML library ของภาษา Python ถ้าใครอยากเรียน library นี้แบบเต็มๆลองดูหนังสือ Hands-On Machine Learning ของ Aurelien Geron ได้นะครับ เล่มนี้แพงมาก จริงๆแนะนำว่าซื้อแบบ ebook บน Google Play คุ้มสุดเลย

Google Colab
ตัวอย่างนี้เราเปลี่ยนมาใช้ Google Colab กันนะครับ Colab คือ Notebook สำหรับเขียน Python โดยเฉพาะ (จริงๆเขียน R/ Julia ได้เหมือนกัน) ข้อดีของ Colab เหมือนกับ Rstudio Cloud เลยคือใช้งานฟรีบน web browser
ใน Colab จะมีทั้ง code cell
และ text cell
สำหรับเขียนโน้ตสร้าง report ดาวน์โหลดออกมาเป็น PDF หรือจะ save เป็น .py file มาเขียนต่อในคอมพิวเตอร์ส่วนตัวก็ได้

นักเรียนสามารถดูตัวอย่าง Google Colab ของบทเรียนนี้ได้ที่นี่
Basic ML Workflow Again
นี่เป็นหน้าที่สามแล้วที่แอดแปะรูปนี้ 555+ คือถ้าทุกคนเข้าใจ Workflow ในการสร้างโมเดลคือจบแล้ว 😁
จะเขียน R, Python หรือภาษาอื่นๆ ก็วิ่งเข้า flow นี้เหมือนเดิม ถึง syntax จะเปลี่ยน แต่ไอเดียการทำงานเหมือนเดิม

Full Python Program
Code chunk แรกของ Python ใช้ import modules/ functions ต่างๆที่เราใช้ในการเทรนโมเดล ปกติเราจะ import ของพวกนี้ใน cell แรกของ notebook เพื่อความเป็นระเบียบเรียบร้อย
# import functions
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error
import pandas as pd
# read csv data
url = "https://raw.githubusercontent.com/toyeiei/datarockieblog/main/course/ml4e/boston.csv"
df = pd.read_csv(url)
# train test split in Python
X = df.drop("medv", axis=1)
y = df["medv"]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.20, random_state=42)
# train model
model = LinearRegression()
model.fit(X_train, y_train)
# score model
p = model.predict(X_test)
# evaluate model using RMSE
mean_squared_error(y_test, p, squared=False)
📝 You’re awesome! ถ้าใครเรียนมาถึงตรงนี้ เราจบพาร์ท coding ทั้งหมดแล้วครับ ยังไหวกันไหม 555+
ส่วนตัวแอดถนัดใช้ R มากกว่า Python พอสมควรเลย แต่พอถึงจุดหนึ่งเราก็ต้องเขียนเป็น อ่านออกทั้งสองภาษาอยู่ดี (ถ้าภาษาแรกเราทำได้แล้ว ภาษาต่อๆไปก็จะง่ายขึ้นครับ)
Modern Data Analyst แอดยังเชียร์ R > Python เหมือนเดิมนะครับ 555+
ใช้ R คู่กับ SQL คือที่สุดจริงๆ ลุยได้ทุกงาน ยุคหลังๆของ R เริ่มมาทางสาย software engineer มากขึ้นด้วย ตัวอย่างเช่น Shiny Framework สำหรับงาน web UI
Can We Train Models without Coding?
ในบทต่อไป แอดจะมาเล่าเทคโนโลยีล่าสุดในงาน ML ที่จะช่วยให้ทุกคนสร้าง ML models ได้ง่ายๆ (ทดสอบโมเดลเป็นร้อยเป็นพันโมเดลได้ในหนึ่งชั่วโมง) ยิ่งใหญ่ เหนือจินตนาการกับ AutoML
555+