Categories
Computer Diary

#14 ดึงข้อมูลจาก Database มาโชว์ใน Dashboard

ต่อมาโปรเจคก่อนหน้าที่ทำ Data Pipeline ที่ดึงข้อมูลไฟล์ Excel จากเว็บไซต์ของกระทรวงอว. (กระทรวงการอุดมศึกษา วิทยาศาสตร์ วิจัยและนวัตกรรม) คราวนี้เรามาทำอีกโปรเจคหนึ่งที่สร้าง Data Pipeline มาดึงข้อมูลจากฐานข้อมูล (Database) เพื่อนำมาทำ Dashboard

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 Diary

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

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

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

Categories
Computer Diary

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

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

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

Categories
Computer Diary

วิธีการทำ Object Detection โดย Nanodet

Object detection คือขั้นตอนการหาตำแหน่งวัตถุจากภาพโดย AI ตามที่กำหนดไว้ ได้แก่ คน รถยนต์ จักรยาน และอื่น ๆ โดยผลลัพธ์ที่ได้จากการใช้งานเทคนิคนี้จะแสดงผลในรูปแบบกรอบสี่เหลี่ยม Bounding box พร้อมกับจำแนก Class ของภาพที่จับได้ว่าเป็นอะไร

Categories
Computer Diary

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

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

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

Categories
Computer Diary

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

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

Categories
Computer Diary

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

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

Categories
Computer Diary

วิธีเทรน Segmentation โดย mmSegmentation

ปกติเวลาที่เราต้องการแยกวัตถุออกจากวัตถุหนึ่งโดยตาของคน อันนี้ทำได้ไม่ยาก เพราะเราแยกออกจากกันได้ง่ายอยู่แล้ว แต่จะให้คอมพิวเตอร์แยกวัตถุแต่ละอย่างออกจากภาพได้ อันนี้เราจำเป็นต้องให้คอมพิวเตอร์เรียนรู้เสียก่อน

โดยเรื่องนี้อยู่ในหัวข้อ AI (Artificial Intelligence) อย่าง Computer Vision ที่อยู่ในเรื่องของ Semantic Segmentation