สอนเขียน Prompt ChatGPT ยกตัวอย่างผลลัพธ์ที่อยากได้ Few-Shot Prompting – Prompt Engineering ep.4

Prompt Engineering จะตีโจทย์ว่าเป็นงานหรือปัญหาบางอย่างที่ต้องการให้โมเดล Machine Learning หรือ LLM มาช่วยหาคำตอบ โจทย์สามารถมีได้หลากหลายตั้งแต่ ตรวจคำผิด คัดแยกอีเมล์สแปม Sentiment Analysis แปลภาษา ไปจนถึงประมวลผลรูปภาพ แยกแยะวัตถุที่อยู่ในภาพ

TensorFlow Lite Converter คืออะไร สอนแปลงโมเดล MobileNet ทำ Transfer Learning สร้าง Custom Classifier Head ไปรันบนมือถือ Mobile, อุปกรณ์ IoT Device – tflite ep.3

TensorFlow Lite Converter เป็นตัวแปลงโมเดล TensorFlow ตัวเต็ม ให้ย่อลงมาเป็นโมเดลขนาดเล็ก ที่ทำงานได้รวดเร็ว สำหรับรันกับ Interpreter บนอุปกรณ์ Edge Device ที่มี Resource จำกัด ด้วยเทคนิค Quantization โดยพิจารณาจาก Hardware ปลายทาง ที่จะนำโมเดลไป Deploy เช่น อุปกรณ์ IoT Device, มือถือ Mobile, Microcontroller ต่าง ๆ

สอนสร้าง Convolutional Neural Network (ConvNet, CNN) ด้วย TensorFlow.js จำแนกรูปภาพแฟชั่น Fashion MNIST ทำ Visualization ด้วย tfvis – tfjs ep.5

ใน ep นี้เราจะสอนสร้าง Convolutional Neural Network (ConvNet, CNN) ด้วย TensorFlow.js สำหรับจำแนกรูปภาพแฟชั่น เสื้อผ้า กางเกง กระโปรง รองเท้า กระเป๋า แบบ Single Label Multiclass Classification จากชุดข้อมูล Fashion MNIST Dataset ทำ Visualization ด้วย tfvis

Fashion MNIST Dataset คืออะไร

Fashion MNIST คือ ชุดข้อมูลรูปภาพแฟชั่น เสื้อผ้า กางเกง กระโปรง รองเท้า กระเป๋า จาก Zalando ทุกรูปมีขนาด 28×28 Pixel ล้อกับชุดข้อมูลตัวเลขที่เขียนด้วยลายมือ MNIST Dataset ที่พวกเรารู้จักกันดี

Data Pipeline คืออะไร Data Block API สร้าง Data Pipeline สำหรับเทรน Machine Learning แบบ Supervised Learning – Preprocessing ep.5

ในการเทรน Machine Learning โดยเฉพาะแบบ Supervised Learning หรือข้อมูลมี Label นอกจากเรื่องการเทรน การออกแบบสถาปัตยกรรมของโมเดล ยังมีงานสำคัญอีกหลายที่ต้องทำก่อนที่เราจะเริ่มเทรนได้ หนึ่งในนั้นคือ สร้าง Data Pipeline จัดเตรียมข้อมูล

Refactor โค้ด Neural Network สร้าง DataBunch และ Learner ปรับปรุง Training Loop – Neural Network ep.9

ใน ep ที่แล้วเราได้ Neural Network และ Training Loop ที่ทำงานได้ดีพอสมควร มีการวัดผล Metrics กับข้อมูลใน Validation Set เพื่อให้แน่ใจว่าโมเดลทำงานได้ถูกต้องกับข้อมูลที่ไม่เคยเห็นมาก่อน แต่โค้ด Training Loop ของเรายังมีความซับซ้อนเกินไป ใช้ Parameter จากภายนอกถึง 6 ตัว ซึ่งมากเกินไป ทำให้ยากต่อการต่อยอดเทรนในอัลกอริทึมที่ซับซ้อนยิ่งขึ้น แล้วเราจะแก้ไขอย่างไร

MNIST คืออะไร

MNIST Database คือ ชุดข้อมูลรูปภาพของตัวเลขอารบิก 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ที่เขียนด้วยลายมือ 70,000 รูป MNIST คือ ชุดข้อมูลสำหรับไว้เทรน Artificial Intelligence (AI) เกี่ยวกับ Computer Vision / Image Processing

ทดสอบ Metrics ของ Neural Network ด้วยข้อมูลจาก Validation Set ระหว่างการเทรน Machine Learning – Neural Network ep.8

ในการเทรน Machine Learning การทดสอบว่าโมเดล Neural Network ทำงานเป็นอย่างไร ที่ถูกต้องเราไม่ควรเทสกับข้อมูล ใน Training Set ที่เราป้อนให้โมเดลในขณะเทรน เพราะจะทำให้ไม่ได้ค่าที่แท้จริง ถ้าโมเดลใช้วิธีจำข้อสอบ เรียกว่า Overfit เมื่อเทสแล้วจะได้คะแนนสูงผิดปกติ ที่ถูกคือ เราควรเทสกับข้อมูลที่โมเดลไม่เคยเห็นมาก่อน ใน Validation Set ที่เรากันเอาไว้ก่อนหน้าที่จะเริ่มต้นเทรน

สับไพ่ข้อมูล DataLoader ด้วย Random Sampler และ Collate ป้อนโมเดล เทรน Machine Learning – Neural Network ep.7

ในแต่ละ Epoch ของการเทรน Machine Learning สอนโมเดล Deep Neural Network เราไม่ควรป้อนข้อมูลที่เรียงลำดับเหมือนกันทุกครั้งให้โมเดล ใน ep นี้เราจะมาสร้าง DataLoader เวอร์ชันใหม่ ที่จะสับไพ่ข้อมูลตัวอย่างก่อนป้อนให้โมเดล เป็นการลดการจำข้อสอบของโมเดล ช่วยให้โมเดล Generalization ได้ดีขึ้น ลด Variance ของโมเดล

ใช้ Dataset, DataLoader ป้อนข้อมูลให้ Neural Network ทีละ Batch สอน Refactor Training Loop – Neural Network ep.5

ใน ep นี้เราจะมาสร้าง Dataset และ DataLoader เพื่อเป็น Abstraction ในจัดการข้อมูลตัวอย่าง x, y จาก Training Set, Validation Set ที่เราจะป้อนให้กับ Neural Network ใช้เทรน ใน Training Loop ของ Machine Learning