Categories
Computer Data

#21 A* Search Algorithm กับการเดินในเขาวงกต

หลังจากที่เขียนในบทความก่อนหน้าถึงโครงสร้างข้อมูลแบบ Graph และ เทคนิคการเดินทางใน Graph (Graph Traversal) เพื่อหาเส้นทาง Shortest Path โดย Dijkstra’s กับ Bellman-Ford’s Algorithms แล้ว

ในบทความนี้เราจะมาแนะนำเทคนิคอีกเทคนิคหนึ่งที่มีชื่อว่า A* (อ่านว่าเอ-สตาร์) Search Algorithm

The English version is available here.

Categories
Computer

#20 – Graph และ Shortest Path Algorithms

เทคนิคการหาเส้นทางที่สั้นที่สุด (Shortest Path Algorithms) เป็นวิธีการหาเส้นเชื่อมระหว่างโหนดเริ่มต้น และโหนดสิ้นสุดในกราฟที่ให้ผลรวมของค่าน้ำหนักของเส้น (Edge Weight) ที่ต่ำที่สุด

For English, please follow this article on Medium.

Categories
Computer Data

#13 ทำ Data Pipeline ดึง Data ต้นทุนนศ.ต่อปี

Data Pipeline คือกระบวนการลำเลียงข้อมูลจากแหล่งข้อมูล (Data Source) มายังจุดหมาย (Destination)

ข้อดีของการทำ Data Pipeline ตามกระบวนการนี้ ได้แก่ รวบรวมข้อมูลให้เป็นหนึ่งเดียว (Locality) กับไม่จำเป็นต้องต่อท่อตรงจาก Data Source ไปยัง Destination (Decoupling) และสามารถทำซ้ำได้ (Reproducible) เพื่อให้เราเก็บข้อมูลไว้สำหรับการนำข้อมูลไปประมวลผลใหม่อีกกี่รอบก็ได้ [1]

Categories
Computer

#10 – ปรับโมเดลให้แม่นขึ้นด้วย Two-Step Data Augmentation

For English, please click this link to the original article published in GitHub Gist.

Data Augmentation คือเทคนิคที่ช่วยเพิ่มปริมาณของข้อมูลในชุดข้อมูล (Dataset) จากเดิมโดยการสังเคราะห์ข้อมูลขึ้นมาใหม่

เหตุผลที่ทำแบบนี้มาจากการเทรนโมเดลสำหรับใช้งานทางด้าน Computer Vision จำเป็นต้องใช้ข้อมูลที่มีปริมาณมาก แต่ติดปัญหาอย่างหนึ่งเลยคือข้อมูลที่เรามีอยู่มีปริมาณน้อย ไม่เพียงพอต่อการนำไปใช้เทรนโมเดล ดังนั้นแล้วเราจำเป็นต้องทำ Data Augmentation เพื่อช่วยเพิ่มความแม่นยำของโมเดลที่นำมาใช้งานทางด้าน Computer Vision

Categories
Computer Data

#5 ติดตั้ง Docker เพื่อใช้งาน AI/ML

ปัญหาสำหรับงาน Machine Learning ส่วนหนึ่งเลยคือปัญหาการติดตั้ง และจัดการ Environment สำหรับการใช้งานทีประกอบไปด้วยปัญหาการติดตั้งเครื่องมือ ปัญหาการติดตั้งไลบรารี และปัญหาการตั้งค่า

ปัญหาเหล่านี้ส่งผลทำให้งานเป็นไปได้ล่าช้า หรือถึงแม้ติดตั้งเองได้แต่ก็ลืม รวมถึงถึงติดตั้งได้ แต่เครื่องมือเหล่านี้ก็เป็นเวอร์ชันเก่าแล้ว

Categories
Computer Data

#4 – วิธีโหลดไฟล์ลง Google Drive ด้วย Colab

ปกติเวลาดาวน์โหลดไฟล์จากเว็บมาลงบนคอมพิวเตอร์เราก็จะบันทึกลงคอมพิวเตอร์ของเราตามปกติโดยการกดปุ่มดาวน์โหลดในหน้าเว็บไซต์ของแต่ละเว็บไซต์

อย่างไรก็ตาม กรณีที่เราอยู่ข้างนอกที่ใช้เน็ตมือถือ หรือพักโรงแรมที่เน็ตมันไม่เร็วมาก ถ้าเราดาวน์โหลดไฟล์ตามปกติ เราก็จะใช้ Bandwidth เป็นจำนวนมาก หรือต้องรอดาวน์โหลดไฟล์กว่าจะเสร็จก็ใช้ระยะเวลานาน

Categories
Computer Diary

สรุปงาน Health Tech x Doctor Meetup #1

เมื่อเดือนก่อนที่บริษัท H LAB consulting ได้จัดงานสำหรับให้บุคลากรทางการแพทย์ที่ผันตัวไปทำงานทางด้าน Health Tech ได้มาเจอกัน เพื่อเล่าประสบการณ์ และแชร์เรื่องราวจากหลายมุมมอง ได้แก่ Health informatician, Epidemiology, Business analyst และ Software engineer

Categories
Computer Data

ปรับโมเดล ONNX ให้ไวด้วย Static Quantization

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

คำตอบที่เหมาะสมกับปัญหานี้คือ Quantization

Categories
Computer Data

วิธีการสร้างไฟล์ Excel ด้วย SheetJS

การส่งออกไฟล์ในรูปแบบ Excel เดิมถ้าจะเอาวิธีแบบง่าย ๆ เลยคือการส่งออกไฟล์ในรูปแบบ CSV ที่เป็นไฟล์ข้อความที่แบ่งข้อมูลระหว่างคอลัมภ์ด้วยการใช้ตัวอักษรคอมมา (,) เพื่อแบ่งข้อมูล โดยการส่งออกไฟล์ในลักษณะนี้เราส่งออกไฟล์ได้ด้วยการพิมพ์คำสั่ง

Categories
Computer Data

ROG Flow X13: การตั้งค่าและทดสอบกับ AI/ML

เดิมทีเรามีโน้ตบุ๊คตัวเก่าอย่าง Surface Pro X ที่ใช้อยู่แล้วครับ เพียงแต่ช่วงนี้เครื่องอืดไปหน่อยสำหรับการใช้งานทางด้าน AI/ML ด้าน Computer Vision แถมคอมตั้งโต๊ะที่มีอยู่ก็พกพาไปไหนก็ไม่สะดวก และคอมที่แล็บก็ต้องรีโมทเข้าไปใช้งานก็ไม่สะดวกเช่นกัน เลยมองหาโน้ตบุ๊คซักตัวสำหรับการพกพา