ปลายเดือนที่แล้ว เราได้ไปงานประชุม PyCon Taiwan 2024 ตัวงานนั้นมีจัดทั้ง Presentation กับ Workshop โดยหนึ่งใน Workshop ที่เราเข้าร่วมนั่นก็คือ All about decorators
Tag: เขียนโปรแกรม
CSDN (ที่ย่อมาจาก Chinese Software Developer Network หรือ China Software Developer Network) เป็น Community สำหรับนักพัฒนาซอฟต์แวร์ กับคนที่ทำงานทางด้าน Data และ AI ที่ใหญ่ที่สุดแห่งหนึ่งในประเทศจีน
หลังจากที่เขียนในบทความก่อนหน้าถึงโครงสร้างข้อมูลแบบ Graph และ เทคนิคการเดินทางใน Graph (Graph Traversal) เพื่อหาเส้นทาง Shortest Path โดย Dijkstra’s กับ Bellman-Ford’s Algorithms แล้ว
ในบทความนี้เราจะมาแนะนำเทคนิคอีกเทคนิคหนึ่งที่มีชื่อว่า A* (อ่านว่าเอ-สตาร์) Search Algorithm
The English version is available here.
#20 – Graph และ Shortest Path Algorithms
เทคนิคการหาเส้นทางที่สั้นที่สุด (Shortest Path Algorithms) เป็นวิธีการหาเส้นเชื่อมระหว่างโหนดเริ่มต้น และโหนดสิ้นสุดในกราฟที่ให้ผลรวมของค่าน้ำหนักของเส้น (Edge Weight) ที่ต่ำที่สุด
For English, please follow this article on Medium.
Data Pipeline คือกระบวนการลำเลียงข้อมูลจากแหล่งข้อมูล (Data Source) มายังจุดหมาย (Destination)
ข้อดีของการทำ Data Pipeline ตามกระบวนการนี้ ได้แก่ รวบรวมข้อมูลให้เป็นหนึ่งเดียว (Locality) กับไม่จำเป็นต้องต่อท่อตรงจาก Data Source ไปยัง Destination (Decoupling) และสามารถทำซ้ำได้ (Reproducible) เพื่อให้เราเก็บข้อมูลไว้สำหรับการนำข้อมูลไปประมวลผลใหม่อีกกี่รอบก็ได้ [1]
For English, please click this link to the original article published in GitHub Gist.
Data Augmentation คือเทคนิคที่ช่วยเพิ่มปริมาณของข้อมูลในชุดข้อมูล (Dataset) จากเดิมโดยการสังเคราะห์ข้อมูลขึ้นมาใหม่
เหตุผลที่ทำแบบนี้มาจากการเทรนโมเดลสำหรับใช้งานทางด้าน Computer Vision จำเป็นต้องใช้ข้อมูลที่มีปริมาณมาก แต่ติดปัญหาอย่างหนึ่งเลยคือข้อมูลที่เรามีอยู่มีปริมาณน้อย ไม่เพียงพอต่อการนำไปใช้เทรนโมเดล ดังนั้นแล้วเราจำเป็นต้องทำ Data Augmentation เพื่อช่วยเพิ่มความแม่นยำของโมเดลที่นำมาใช้งานทางด้าน Computer Vision
ปัญหาสำหรับงาน Machine Learning ส่วนหนึ่งเลยคือปัญหาการติดตั้ง และจัดการ Environment สำหรับการใช้งานทีประกอบไปด้วยปัญหาการติดตั้งเครื่องมือ ปัญหาการติดตั้งไลบรารี และปัญหาการตั้งค่า
ปัญหาเหล่านี้ส่งผลทำให้งานเป็นไปได้ล่าช้า หรือถึงแม้ติดตั้งเองได้แต่ก็ลืม รวมถึงถึงติดตั้งได้ แต่เครื่องมือเหล่านี้ก็เป็นเวอร์ชันเก่าแล้ว
ปกติเวลาดาวน์โหลดไฟล์จากเว็บมาลงบนคอมพิวเตอร์เราก็จะบันทึกลงคอมพิวเตอร์ของเราตามปกติโดยการกดปุ่มดาวน์โหลดในหน้าเว็บไซต์ของแต่ละเว็บไซต์
อย่างไรก็ตาม กรณีที่เราอยู่ข้างนอกที่ใช้เน็ตมือถือ หรือพักโรงแรมที่เน็ตมันไม่เร็วมาก ถ้าเราดาวน์โหลดไฟล์ตามปกติ เราก็จะใช้ Bandwidth เป็นจำนวนมาก หรือต้องรอดาวน์โหลดไฟล์กว่าจะเสร็จก็ใช้ระยะเวลานาน
เมื่อเดือนก่อนที่บริษัท H LAB consulting ได้จัดงานสำหรับให้บุคลากรทางการแพทย์ที่ผันตัวไปทำงานทางด้าน Health Tech ได้มาเจอกัน เพื่อเล่าประสบการณ์ และแชร์เรื่องราวจากหลายมุมมอง ได้แก่ Health informatician, Epidemiology, Business analyst และ Software engineer
ปกติเมื่อเราเทรนโมเดลที่ต้องใช้ระยะเวลาหลายชั่วโมง ไปจนถึงหลายวันเสร็จเรียบร้อยแล้ว เราจะต้องนำโมเดลไปใช้งานบนเซิร์ฟเวอร์ หรืออุปกรณ์ฝังตัวขนาดเล็กเพื่อนำไปใช้งานจริง อย่างไรก็ตามโมเดลมันมีขนาดใหญ่ ต้องใช้พลังการประมวลผลมาก แล้วเราจะต้องใช้เทคนิคอะไรมาช่วยล่ะ?
คำตอบที่เหมาะสมกับปัญหานี้คือ Quantization