[Part 1] การใช้งาน Google colab เบื้องต้น , ติดตั้ง Environment , เตรียมข้อมูล และ วิเคราะห์ข้อมูลเบื้องต้น
[Part 2] วิเคราะห์ข้อมูล, ตั้งสมมติฐาน และเลือกโมเดล
[Part 3] แก้ไขข้อมูล และสร้างข้อมูลใหม่
[Part 4] Data visualization
[Part 5] การคัดเลือกข้อมูล จะดรอปอะไรออกไปดีนะ?
[Part 6] การทำ Labelencoder
[Part 7] เตรียมข้อมูลเพื่อ Fit model
[Part 8] Training Model
[Part 9] Training Model แบบหลายๆ Model

จากที่ผ่านๆมาทำให้เราได้ข้อมูล X,y มาเก็บไว้สำหรับเทรนโมเดลแล้วนะครับ เดี๋ยวในบทความนี้ เรามาลองเทรนโมเดลโดยใช้ Scikit learn กันครับ เย้!! ได้ใช้ซักที ฮ่าๆๆ

แล้วเราจะรู้ได้ยังไงหละว่าเราควรเลือกใช้โมเดลไหน สามารถศึกษาคร่าวๆได้จากบทความนี้ครับ
Ten Machine Learning Algorithms You Should Know to Become a Data Scientist

พี่คนนี้เขาเขียนดีมากๆครับ อธิบายได้สั้น กระชับดีครับ

สำหรับโปรเจค Kickstarter นี้ เราลองไปอ่านข้อที่ 10 ดูครับ โมเดลที่เหมาะกับโปรเจคนี้ก็จะเป็นกลุ่ม Decision Trees ประมาณนี้ครับ ตอนนี้ผมเล็งๆ GradientBoostingClassifier ครับ เพราะในเว็บของ Scikit learn บอกว่าเหมาะกับงาน Binary classification หรืองานที่มีผลลัพธ์ออกมา 2 แบบครับ ลองไปอ่านๆกันได้

https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.GradientBoostingClassifier.html

แต่เดี๋ยวก่อน เดี๋ยวเรามาลองเล่นอย่างอื่นก่อน เห็นอาจารย์เคยบอกว่าถ้าคิดโมเดลอะไรไม่ออก ก็ลองไปใช้ Naive Bayes ก่อน เดี๋ยวเราลองมาเล่นๆกันก่อนครับ

  1. import model

ในที่นี้ผมลองใช้ sklearn.naive_bayes GaussianNB ครับ ลองหาอ่านได้ที่

https://scikit-learn.org/stable/modules/naive_bayes.html

from sklearn.naive_bayes import GaussianNB
model = GaussianNB()
model

2. เราจะมาแยกข้อมูลออกเป็น X_train, X_test, y_train และ y_test

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3,random_state=1000)

3. ทำการ Fit model

model.fit(X_train, y_train)

4. ลอง Predict ดูครับ

y_pred = model.predict(X_test)

5. เรามาดู Accuracy score กันครับ

from sklearn import metrics
print("Accuracy:",metrics.accuracy_score(y_test, y_pred))
from sklearn.metrics import confusion_matrix
confusion_matrix(y_test, y_pred)

จะเห็นได้ชัดเลยว่า Accuracy score ต่ำมาก ได้แค่ 43.81% เอง ดังนั้นเราจึงต้องหาโมเดลใหม่ๆ ในการทำครับ เดี๋ยวบทความหน้าเรามาทดลองทำหลายๆโมเดลไปพร้อมๆกันครับ

[Data Sci workshop] มาลองใช้ google colab + Scikit learn วิเคราะห์โปรเจคที่จะ Success ในเว็บระดมทุน Kickstarter กันเถอะ [Part9]

สามารถเข้าไปดูไฟล์ Workshop ได้ที่นี่เลยยครับ >>>
https://colab.research.google.com/drive/1P09Xd-UKIrP_jQiDD43vdX91tGtd9JVX