Categories
Data

#27 Web Scraping ดึง20 ข่าวล่าสุดจากเว็บข่าวด้วย Selenium

ปกติการดึงข่าวล่าสุด อันนี้เราใช้ RSS (Really Simple Syndication) หรือ Feedly ได้เลย อย่างไรก็ดี ไม่ใช่ทุกเว็บไซต์ที่จะรองรับวิธีนี้ได้ อาจจะเป็นเพราะทางนั้นไม่ได้ให้ลิ้งค์สำหรับ RSS ไว้ครับ

เมื่อเจอปัญหานี้แล้ว ในบทความนี้เราแนะนำวิธีหนึ่งที่คนใช้กัน วิธีนี้เรียกว่า Web Scraping

Categories
Computer Data

#22 MapReduce ที่มา การทำงาน และการเอาไปใช้

หลังจากที่เขียนเรื่องที่เกี่ยวกับ Data Structures & Algorithms ไปในบทความก่อนหน้าที่เขียนถึง Big-O Notation, Searching กับ Sorting Algorithms กับ Shortest Path อย่าง Dijkstra’s กับ Bellman-Ford’s Algorithm รวมถึง A* Search Algorithm

คราวนี้มาเข้าเรื่องที่เกี่ยวข้องกับ Data ที่เป็นพื้นฐานหนึ่งเลยคือ MapReduce

Categories
English Articles

A* Search Algorithm and the maze traversal

After introducing graphs and shortest path techniques like Dijkstra’s and Bellman-Ford’s algorithms, this article will introduce the following method: A* Search Algorithm.

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

#19 Big-O, Search & Sort ที่ใช้ในงาน Data

The English version of this blog related to the first part: Big-O notation, is available here.

เมื่อวันก่อนเข้าไปอ่านในหน้าเว็บ Medium ที่กล่าวถึง Data Structures & Algorithms (ย่อเป็น DSA) ที่จำเป็นสำหรับทาง Data Engineer ว่าต้องรู้เทคนิคไหนบ้าง แถมตอนเรียนในคอร์สจากเว็บ DataTH (รวมถึงที่อื่น) ก็มีกล่าวถึงไว้นิดหน่อยว่าจำเป็นต้องรู้เรื่องนี้ต่อยอดจากที่เรียนในคอร์ส

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

Categories
Computer Data

#18 ใช้ Databricks ดึงอัตราแลกเปลี่ยนลงตาราง

ช่วงสองสามสัปดาห์ที่ผ่านมาเราได้เข้าไปดู Special Classes เรื่อง Intro to Databricks ในคอร์ส Road to Data Engineer 2.0 ของ DataTH School จากนั้นเราเลยทดลองทำโปรเจคด้วย Databricks และแชร์ลงบทความนี้

แต่ก่อนอื่น เราไม่เสียเวลาเกริ่นนาน เรามาเริ่มพูดถึง Databricks กันก่อนดีกว่าครับ

The English version is available here.

Categories
Computer Data

#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