Visualization Embedding ภายในโมเดล Deep Neural Network – Tensorboard ep.2

ใน ep นี้เราจะมาใช้ Tensorboard ทำ Visualization ให้กับ Embedding ขนาด 50 มิติ Projector ให้ออกมาเป็น 3D กราฟสวย ๆ ให้เราสามารถหมุนไปมา เลือกกรองหนังเรื่องที่เราต้องการ ดูความใกล้เคียง ของหนังที่เกี่ยวข้อง เพื่อให้เราตีความ เข้าใจได้ง่ายขึ้น

Visualization ภายในโมเดล Deep Neural Network แสดงผลการเทรน Deep Learning ด้วย Tensorboard ep.1

ตามปกติเราจะคิดว่า Deep Neural Network เป็นเหมือน Black Box หรือกล่องดำ ที่เราไม่สามารถจะเข้าใจการทำงานภายในได้ Tensorboard คือเครื่องมือที่จะช่วยให้เราส่องทะลุเข้าไปเห็นถึงการทำงานภายในของโมเดล ตั้งแต่การเทรน Deep Learning, Metrics, Gradient, Embedding, Optimization, Etc. ให้เราเห็นภาพ และเข้าใจมากขึ้น ช่วยให้การ Debug, Hyperparameter Tuning ทำได้ง่ายขึ้น

Collaborative Filtering คืออะไร โปรแกรมแนะนำหนัง แนะนำสินค้า อัตโนมัติ ด้วย Machine Learning – Recommender Systems ep.1

บริษัทที่ประสบความสำเร็จ เช่น Amazon, Netflix, Spotify ทุกบริษัทต่างใช้ ระบบที่เรียกว่า Recommender Systems ใช้เทคนิค Collaborative Filtering มาช่วยแนะนำลูกค้าในด้านต่าง ๆ ไม่ว่าจะเป็นสินค้าใหม่ สินค้าใกล้เคียง (หนัง เพลง รองเท้า แฟชั่น อิเล็กทรอนิกส์ etc.) ทั้งเป็นการสร้างประสบการณ์ที่ดีให้กับลูกค้า เพิ่มความพึงพอใจ รวมไปถึงเพิ่มยอดขายได้อย่างเห็นผลจริง

ตัวอย่างการใช้งาน Machine Learning การประยุกต์ใช้ Deep Learning กับข้อมูลแบบตาราง – Tabular Data ep.1

ใน ep ก่อน ๆ เราได้เห็นตัวอย่างการนำ Machine Learning, Deep Learning มาประยุกต์ใช้งานเกี่ยวกับวิเคราะห์รูปภาพ วิเคราะห์ข้อความ ทั้งหมดถือว่าเป็นข้อมูลแบบ Unstructure Data แต่งานประมวลผลข้อมูลส่วนใหญ่ในปัจจุบันจะเป็น ข้อมูลแบบมีโครงสร้าง Structure Data เช่น ตาราง เป็นหลัก แล้วเราจะนำ Deep Learning มาประยุกต์ใชักับงานเหล่านี้อย่างไร

Sentiment Analysis คืออะไร สอน Sentiment Analysis วิเคราะห์ความรู้สึก จากรีวิวหนัง IMDB ด้วย ULMFiT – Sentiment Analysis ep.1

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

Image Segmentation คืออะไร Image Segmentation แยกส่วนภาพ ภาพถ่ายบนท้องถนน CamVid ด้วย Deep Learning – Image Segmentation ep.1

ใน ep ก่อน ๆ เราสอนเรื่อง Image Classification คือ 1 รูป 1 หมวด แล้วต่อมาเป็น Multi-label Image Classification คือ 1 รูป หลายหมวด มาถึงใน ep นี้ เราจะมาสอนเรื่อง Image Segmentation แยกส่วนภาพ คือ 1 Pixel 1 หมวด หมายถึง ใน 1 รูป เราจะจำแนก Pixel หลายล้าน Pixel ทีละจุด ว่าแต่ละจุด คืออะไร

Multi-label Image Classification จำแนกพื้นที่ป่าไม้ ภาพถ่ายจากดาวเทียม ด้วย Deep Learning – Image Classification ep.5

ใน ep.5 นี้ เราจะมาเพิ่มความซับซ้อนขึ้นจากที่ 1 รูป 1 Label กลายเป็น 1 รูป หลาย Label จำแนกพื้นที่ป่าไม้ โดยใช้ชุดข้อมูลภาพถ่ายจากดาวเทียม ภาพถ่ายทางอากาศ ของป่าอเมซอน แห่งทวีปอเมริกาใต้ ผืนป่าที่ใหญ่ที่สุดในโลก ในการติดตามการเปลี่ยนแปลงของผืนป่า ตำแหน่งการตัดไม้ทำลายป่า รุกล้ำแนวเขตอุทยาน ไฟป่า สภาวะโลกร้อน เพื่อแจ้งเตือนแก่รัฐบาล หน่วยงานในพื้นทีในการรับมือได้อย่างทันท่วงทีต่อไป

Batch Size คืออะไร ปรับอย่างไรให้พอดี กับ GPU Memory และ ได้ Accuracy สูงสุด ในการเทรน Deep Neural Network – Hyperparameter Tuning ep.2

ในปัจจุบันการเทรน Deep Neural Network ใช้พื้นฐานอัลกอริทึมมาจาก Mini-Batch Stochastic Gradient Optimization เป็นส่วนใหญ่ และจำนวนตัวอย่างข้อมูลที่เราป้อนให้โมเดลในหนึ่งครั้ง หรือ 1 Mini-Batch คือ Hyperparameter สำคัญตัวหนึ่งที่เราต้องปรับจูน ซึ่งใน Library ต่าง ๆ จะใช้ชื่อว่า Batch Size

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 ที่น้อยที่สุด