อธิบาย K-Fold Cross Validation พร้อมโค้ดตัวอย่างใน R

เทคนิคที่เรียกว่าเป็น Golden Standard สำหรับการสร้างและทดสอบ Machine Learning Model คือ “K-Fold Cross Validation” หรือเรียกสั้นๆว่า k-fold cv เป็นหนึ่งในเทคนิคการทำ Resampling ไอเดียของ k-fold cv คือการแบ่งข้อมูลเป็น k ส่วนเท่าๆกันเพื่อสร้างและทดสอบโมเดล (train + validate) คำนวณค่าเฉลี่ย accuracy หรือ error (i.e. model performance) ก่อนที่จะนำโมเดลไปใช้ทำนายข้อมูล test set รูปด้านล่างแสดงการแบ่งข้อมูลเป็น 5 folds เท่าๆกัน โดยการแบ่งข้อมูลต้องเป็นไปอย่าง random ทำไมต้อง random? เพราะ randomness จะช่วยให้ข้อมูลในแต่ละ fold มีการกระจายตัวใกล้เคียงกัน ช่วยลด bias เวลาที่เราสร้างและทดสอบโมเดล จำนวน k ที่นิยมใช้กันในทางปฏิบัติมีสองค่าคือ k=5…

Read More

ภาษา R พื้นฐานสำหรับ Excel Users

R เป็นหนึ่งในภาษาที่ได้รับความนิยมสูงมากสำหรับงาน data science เรียนรู้ง่าย ทำงานได้รวดเร็ว เกิดมาพร้อมกับความสามารถด้านสถิติ (ภาษาอังกฤษ เราเรียก R ว่า fast data crunching language) R เหมาะสำหรับคนที่ใช้ Excel ในการทำงานอยู่แล้ว ถ้าอยากจะเริ่มเขียนโปรแกรม แอดแนะนำ R เป็นภาษาแรกเพราะ logic ในการทำงานของเครื่องมือสองตัวนี้คล้ายกันมาก (การเรียกใช้งานฟังชั่นเหมือนกันเกือบ 100%) บทความนี้จะเปรียบเทียบความเหมือน/ แตกต่างของทั้งสองโปรแกรม และอธิบายการทำงานเบื้องต้นของ R ให้กับ Excel users ได้เข้าใจ ไม่ต้องเคยเขียนโปรแกรมมาก่อน ก็อ่านรู้เรื่อง ทำตามได้เลย 😛 Getting Software สำหรับเพื่อนๆที่อยากทำตาม tutorial วันนี้ต้องติดตั้งโปรแกรมฟรีสองตัวคือ R และ RStudio Desktop ติดตั้งเสร็จแล้วเปิดโปรแกรม RStudio ขึ้นมา และเริ่มเขียนโค้ดในหน้าต่าง console ตามตัวอย่างด้านล่างได้เลย นักเรียนสามารถดาวน์โหลดไฟล์…

Read More

ไกลแค่ไหนคือใกล้กับการวัดระยะแบบ Euclidean Distance

บทความนี้มาเรียนวิธีการคำนวนระยะทาง i.e. distance ง่ายๆระหว่างสอง data points โดยตัวที่เราจะสอนวันนี้ชื่อว่า Euclidean distance สูตรการวัดระยะยอดนิยมในงาน data science – Enough talk! Let’s do it. Euclidean Distance สมมติเรามี data points 2 จุด (20, 75) และ (30, 50) จงหาระยะห่างของสองจุดนี้ ถ้ายังจำได้สมัยประถม (แอดค่อนข้างมั่นใจว่าเรียนกันตั้งแต่ ป.6 555+) วิธีการหาระยะห่างในรูปด้านล่างใช้หลักพีทาโกรัส (Pythagorean theorem): a2 + b2 = c2 Euclidean distance (d) หรือ c ในรูปขวาด้านบนสามารถคำนวณได้ง่ายๆตามหลัก Pythagoras สาเหตุที่เราต้องถอดราก (square root) เพราะตอนแรกพีทาโกรัสไปยกกำลังสองด้าน a…

Read More

อยากเขียนเป็นไวๆต้องอ่าน! สรุป 5 Concepts พื้นฐานของภาษา R

อยากเขียน R เป็นเร็วๆ ต้องเข้าใจเรื่องอะไรบ้าง? บทความนี้แอดเขียนสรุป 5 concepts สำคัญของภาษา R มาให้อ่าน พร้อมวีดีโอสอนติดตั้ง R และ RStudio Desktop ลุยเลยพี่ Getting Started Motto สำคัญของภาษา R คือ “Everything that exists in R is an object. Everything that happens in R is a function call.” – กล่าวโดย John Chambers หนึ่งในทีมผู้พัฒนา R ในยุคแรก (ตั้งแต่ยังเป็นภาษา S)ุ ทุกอย่างที่มีตัวตนอยู่ใน R คือ object และทุกสิ่งที่เกิดขึ้นใน R คือการเรียกใช้งาน…

Read More

ทำไม p-value ถึงลดลงเรื่อยๆถ้าเราเพิ่ม Sample Size?

Andrejs Dunkels (1939 – 1998) นักคณิตศาสตร์ชาวสวีเดนเคยพูดไว้ว่า “มันง่ายมากที่จะหลอกคนอื่นด้วยสถิติ แต่มันยากมากถ้าจะบอกเล่าความจริงโดยไม่ใช้สถิติมาช่วย” – This is so deep. สถิติคือเครื่องมือค้นหาความจริง และคนที่เข้าใจมันจริงๆเท่านั้นถึงมีสิทธิ์เข้าถึงความจริงเหล่านั้น บทความนี้จะเล่าความจริงเกี่ยวกับค่า p-value และการทดสอบสมมติฐานด้วยระบบ null hypothesis significance testing ก่อนจะอ่านบทความนี้ต่อ เรา assume ว่าทุกคนรู้จัก central limit theorem และการใช้ confidence interval เพื่อทดสอบสมมติฐานทางสถิติแล้ว ถ้าใครยังไม่ชัวร์ ลองอ่านบทความเก่าของเราได้เลย 😛 If you want to know the truth, let’s find the truth. Closer to The Truth สมมติว่าเราอยากทำ inference ศึกษาเกี่ยวกับคนไทยทั้งประเทศ (population)…

Read More

ทดสอบสมมติฐานทางสถิติด้วย Confidence Interval ไม่ง้อ p-value

เบื่อไหมกับการใช้ p-value ทดสอบสมมติฐาน? ถ้าเบื่อแล้ว บทความนี้มีคำตอบให้กับทุกคน ก่อนจะอ่านต่อ เรา assume ว่าทุกคนรู้แล้วว่า Central Limit Theorem คืออะไร ถ้ายังไม่ชัวร์ ลองอ่านบทความของเราได้ที่นี่ – Mind Blown! Table Of Contents Meet Confidence Interval Build One CI Explained Significance Test The Moment of Truth Implication Meet Confidence Interval Confidence interval (CI) หรือที่เรียกกันในภาษาไทยว่า “ช่วงความเชื่อมั่น” เป็นอีกหนึ่ง concept สำคัญของนักสถิติสาย frequentist โดย CI ถูกสร้างขึ้นจากทฤษฎี central limit theorem i.e. การทำ…

Read More