ขอต้อนรับเพื่อนๆ เข้าสู่ก้าวแรกในการเขียนโปรแกรมและสร้างระบบ AI / Deep Learning ครับ! ในขั้นแรกสุดก่อนที่เราจะทำอะไรได้ เราจำเป็นต้องมีฮาร์ดแวร์ที่รองรับการเขียนโปรแกรมที่จำเป็นก่อนใช่ไหมครับ ตัวอย่าง ฮาร์ดแวร์ที่จำเป็นต้องมีก็คือ หน่วยประมวลผล CPU คุณภาพสูง หน่วยความจำ HDD / RAM จำนวนมาก รวมทั้งที่ขาดไม่ได้ก็คือหน่วยประมวลผลคู่ขนาน GPU คุณภาพสูง ซึ่งอุปกรณ์ทั้งหมดที่ว่ามานี่มีราคาแพงมากทำให้เดิมการเขียนโปรแกรม Deep Learning อย่างจริงจังนั้นถูกจำกัดดูในคนกลุ่มเล็กๆ เท่านั้นครับ
เมื่อกลางปี 2018 นี่เอง เรื่องเหลือเชื่อก็เกิดขึ้นครับ เมื่อ Kaggle.com บริษัทลูกของ Google ได้อนุญาตให้เราใช้อุปกรณ์ดังกล่าวทั้งเซ็ตแบบฟรีๆ และเข้าถึงได้อย่างง่ายดายผ่าน browser ไม่ว่าคุณจะอยู่ที่ไหนก็ได้ในโลก! ทั้งหมดนี่มีเงื่อนไขแค่เพียงว่าจะอนุญาตให้เราทำงานต่อเนื่องได้ไม่เกิน 9 ชั่วโมงเท่านั้น ซึ่งก็เพียงพอมากสำหรับการทำ Project Deep Learning มาตรฐานสากลครับ (อนึ่ง เมื่อรันครบ 9 ชั่วโมงแล้วเราสามารถเซพการรันโปรแกรมล่าสุดไว้ได้ และสร้างการรันได้ต่อเนื่องอีก 9 ชั่วโมงไปเรื่อยๆ ครับ) UPDATEปี2021: ปัจจุบันสามารถใช้ GPU VM ได้ไม่เกิน 40 ชม.ต่อสัปดาห์ และไม่จำกัดโควต้ำสำหรับ CPU VM ทั่วไปครับ
ไม่เพียงเท่านั้น นอกจากฮาร์ดแวร์คุณภาพสูง Kaggle เองยังเตรียมไลบรารีที่จำเป็นสำหรับการเขียนโปรแกรมไว้ครบถ้วน ทำให้เราไม่ต้องเซ็ตอัพเอง ไม่ว่าจะเป็น Python, Numpy, Tensorflow, Keras รุ่นล่าสุด และยังมีไลบรารีอื่นๆ อีกมากมาย และยังไม่หมดเท่านี้ Kaggle เองอนุญาตให้เราใช้ Datasets ใดๆ ของคนทั่วโลกที่นำมาแชร์ไว้ได้เพียงแค่ 1 คลิก (รวมทั้งแนะนำ Dataset ที่ใกล้เคียง) และอนุญาตให้เราลองเอาโค้ดของเพื่อนๆ ทั่วโลกมาทดลองหรือแก้ไขได้อย่างง่ายๆ ผ่าน Editor ที่เรียกว่า Jupyter Notebook
ความสามารถทั้งหมดที่ Kaggle เตรียมให้พวกเราได้เขียนโปรแกรมระดับคุณภาพนี้ รวมแล้วมีชื่อเรียกว่า Kaggle Kernel ซึ่งใน Workshop ของเราก็จะอยู่บนพื้นฐานความสามารถเหล่านี้ของ Kaggle Kernel ครับ (ก่อนหน้านี้ทีมงาน ThAIKeras เองก็ทำงานอยู่บนระบบ Cloud ที่มีค่าใช้จ่ายค่อนข้างแพง แต่เมื่อ Kaggle เปิดโอกาสให้พวกเราได้ใช้งาน Kaggle Kernel ที่มี GPU นั้นทำให้พวกเราตื่นเต้นมาก และสามารถประหยัดค่าใช้จ่ายในการทำงานได้มากครับ)
ในบทความนี้จะพาเพื่อนๆ ที่ยังไม่เคยใช้งาน Kaggle เข้าไปใช้งานและทำความรู้จักกับสิ่งอำนวยความสะดวกต่างๆ ในการเขียนโปรแกรมที่ kaggle โดยแบ่งออกเป็นสามส่วนใหญ่ๆ ดังนี้ครับ
1. เซ็ตอัพแอคเคานท์ที่ Kaggle และคัดลอก Kernel มาไว้ที่แอคเคานท์ตนเอง 2. ทำความรู้จัก Kaggle Kernel ซึ่งก็คือ GPU Virtual Machine + Jupyter Notebook3. ทดลองทำ Workshop แรกบน Kaggle : ว่าด้วยทักษะ Python และ Numpyหลังจากเกริ่นกันมามากพอควรแล้ว เราก็เริ่มเข้าไปฝึกเขียนโปรแกรมที่ Kaggle.com กันเลยดีกว่าครับ!
ความตื่นเต้นกำลังจะเริ่มขึ้นแล้วครับ!
มาถึงขั้นตอนนี้ เพื่อนๆ ก็สามารถใช้งาน Kaggle Kernel ได้เสมือนเป็น Programming Editor บนเครื่องตนเองแล้วนะครับ ที่เหลือก็คือเพื่อนๆ ต้องเข้าไปเรียนรู้เนื้อหาใน Workshop แรกที่ทีมงานเตรียมไว้ ซึ่งเป็นบททดสอบสำคัญก่อนจะเริ่มเขียนโปรแกรม Deep Learning ครับ
Workshop จะเริ่มด้วยการสอน / ทบทวนภาษา Python เบื้องต้น และการใช้ Numpy เพื่อการคำนวนทางคณิตศาสตร์ จากนั้นก็จะเป็นการพล็อตกราฟ หรือกราฟฟิกต่างๆ ที่จำเป็นในการใช้งานครับ ถ้าเพื่อนๆ มีข้อสงสัยประการใด ด้วยความสะดวกของ Jupyter Notebook เพื่อนๆ สามารถปรับแต่ง code เพื่อทดลองเพิ่มเติมได้ตามใจชอบ หรือสามารถทิ้งโพสต์คำถามไว้ใน Notebook บน official Account ได้เลยครับ ขอให้โชคดีสำหรับ Workshop แรก และเจอกันในบทเรียนถัดไปครับ!