ในกรณีที่จำนวนข้อมูลตัวอย่าง ในแต่ละ Class แตกต่างกันมาก เรียกว่า Class Imbalance แทนที่เราจะใช้ Cross Entropy Loss ตามปกติที่เรามักจะใช้ในงาน Classification เราจะใช้ Cross Entropy Loss เวอร์ชันพิเศษ เรียกว่า Weighted Cross Entropy Loss เข้ามาช่วย
Tag Archives: weight
lr_find หา Learning Rate ที่ดีที่สุดในการเทรน Machine Learning โมเดล Deep Neural Network ด้วย Callback – Neural Network ep.12
จาก ep ก่อน เราได้รู้จัก Hyperparameter ที่สำคัญที่สุดในการเทรน Machine Learning ชื่อ Learning Rate แต่ปัญหาคือ ถ้าเรากำหนดค่า Learning น้อยไปก็ทำให้เทรนได้ช้า แต่ถ้ามากเกินไปก็ทำให้ไม่ Converge หรืออาจจะ Error ไปเลย แล้วเราจะมีวิธีใด ที่จะหาค่า Learning Rate ที่ดีที่สุด มาใช้เทรน Deep Neural Network ของเรา
สร้าง Training Loop แบบง่าย เริ่มต้นเทรน Neural Network ด้วย Mini-Batch SGD – Neural Network ep.4
ใน ep นี้ เราจะมาสร้าง Neural Network สำหรับงาน Classification ด้วยการประกอบชิ้นส่วนทุกอย่างใน ep ก่อน ๆ เข้าด้วยกัน ขึ้นมาเป็น 2 Layers Deep Neural Network ใช้ ReLU Activation Function พร้อม Initialize Weight และ Bias
ตัวอย่าง Linear Regression ด้วย Stochastic Gradient Descent (SGD) พื้นฐานของ Neural Network – Optimization ep.2
จาก ep ที่แล้วที่เราเล่าถึงคอนเซ็ปต์ของ SGD ไป ใน ep นี้เราจะมาดูตัวอย่างโค้ดแบบง่ายที่สุด ซับซ้อนน้อยที่สุด ซึ่งเป็นพื้นฐานสำคัญของ Machine Learning แบบ Neural Network คือ Linear Regression ด้วยอัลกอริทึม Stochastic Gradient Descent (SGD) แต่ในการหา Slope นั้นเราไม่ต้อง Diff เอง แต่เราจะใช้ความสามารถ ของ Pytorch เรียกว่า Autograd หา Gredient ของ Parameter ทุกตัวให้โดยอัตโนมัติ
Learning Rate คืออะไร ปรับยังไงให้พอดี Epoch คืออะไร สำคัญอย่างไร กับการเทรน Machine Learning – Hyperparameter Tuning ep.1
ใน ep นี้เราจะมาเรียนรู้กันว่า Learning Rate คืออะไร Learning Rate สำคัญอย่างไรกับการเทรน Machine Learning โมเดล Neural Network / Deep Learning เราจะปรับ Learning Rate อย่างไรให้เหมาะสม เราสามารถเทรนไปปรับไปได้ไหม หรือต้องใช้ค่าคงที่ตลอด และโมเดลที่ Transfer Learning กับโมเดลที่เทรนใหม่เลย ต้องการ Learning Rate, จำนวน Epoch ต่างกันอย่างไร
Gradient Descent คืออะไร อะไรคือ การเคลื่อนลงตามความชัน, Stochastic Gradient Descent (SGD) คืออะไร – Optimization ep.1
ในการเทรน Artificial Neural Network เราต้องการทราบว่าการเปลี่ยนแปลงขยับ เพิ่ม/ลด Weight หนึ่ง ๆ มีผลต่อการ เพิ่ม/ลด Loss อย่างไร โดยสมมติว่า Weight อื่น ๆ คงที่ทั้งหมด เช่นถ้าเราเพิ่ม Weight A + 0.0001 แล้ว Loss ลด เราก็ลองเพิ่ม Weight A ไป แล้วลองเทสดู ทำแบบนี้ไปทุก Weight ซ้ำไปเรื่อย ๆ จนกว่าจะได้ Loss ที่น้อยที่สุด