Category Archives: Blog 101
แบบจำลองการแพร่กระจาย (Diffusion Model)
เรียบเรียงโดย นพพณ เลิศชูวงศา แบบจำลองนี้เป็นหนึ่งในแบบจำลองที่ได้รับความสนใจเนื่องจากความสามารถในการสร้างข้อมูลสังเคราะห์คุณภาพสูง ทำให้เป็นพื้นฐานในด้านต่างๆ เช่น การสร้างภาพ การสังเคราะห์เสียง และการเพิ่มพูนข้อมูล การแตกต่างระหว่าง GANs และแบบจำลองการแพร่กระจาย การฝึกอบรม: GANs อาศัยกรอบการทำงานแบบตัวสร้าง-ตัวแยกแยะ (generator-discriminator framework) โดยที่ตัวสร้างจะสร้างข้อมูลและตัวแยกแยะจะประเมินความถูกต้องของข้อมูล การตั้งค่าแบบปฏิปักษ์นี้อาจจะนำไปสู่ความไม่เสถียร ในทางตรงกันข้ามแบบจำลองการแพร่กระจายใช้กรอบความน่าจะเป็นและหลีกเลี่ยงการฝึกอบรมแบบปฏิปักษ์ ทำให้มีความเสถียรมากกว่าแต่จำเป็นต้องใช้ทรัพยากรและเวลาในการคำนวณมากกว่า หลักการสำคัญของแบบจำลองการแพร่กระจาย หลักการสำคัญของแบบจำลองการแพร่กระจายคือ การแพร่กระจายไปข้างหน้า (forward diffusion) และการแพร่กระจายย้อนกลับ (reverse diffusion) กระบวนการไปข้างหน้าจะค่อยๆ เพิ่มสัญญาณรบกวน (noise) ให้กับข้อมูล แปลงข้อมูลให้เป็นการกระจายแบบแฝง (latent distribution) ในทางกลับกัน กระบวนการย้อนกลับจะสร้างข้อมูลต้นฉบับขึ้นใหม่โดยการลดสัญญาณรบกวนจากการกระจายนี้ วิธีการสองทิศทางนี้ช่วยให้แบบจำลองการแพร่กระจายเรียนรู้การกระจายข้อมูลที่ซับซ้อนได้อย่างมีประสิทธิภาพ … Continue reading
GAN ทำงานอย่างไร [2]
เรียบเรียงโดย นพพณ เลิศชูวงศา รูปที่ 1 กระบวนการฝึกอบรม GAN GANs ทำงานผ่านความสมดุลที่ละเอียดอ่อนระหว่างเครือข่ายการสร้าง generator และเครือข่ายการแยกแยะ discriminator กระบวนการฝึกอบรมสามารถสรุปได้ดังขั้นตอนต่อไปนี้: กระบวนการนี้สามารถมองเห็นได้ว่าเป็นการแข่งขันระหว่าง 2 เครือข่าย โดยนักปลอมแปลง (เครือข่าย generator) และตำรวจ (เครือข่าย discriminator) นักปลอมแปลงพัฒนาทักษะเพื่อผลิตเงินปลอมที่ไม่สามารถแยกแยะได้ ในขณะที่ตำรวจปรับปรุงวิธีการตรวจจับ ในรูปที่ 1การแข่งขันแบบปฏิปักษ์นี้ส่งเสริมการปรับปรุงร่วมกัน นำไปสู่ผลลัพธ์ที่สมจริงจากพารามิเตอร์ในเครือข่าย generator(สีม่วง) และการตรวจสอบที่แม่นยำจากเครือข่าย discriminator (สีส้ม) GAN Architectures (สถาปัตยกรรมของ GANs)
Generative Adversarial Networks (GANs): บทนำ [1]
เรียบเรียงโดย นพพณ เลิศชูวงศา Generative Adversarial Networks (GANs) เป็นโครงข่ายด้านการเรียนรู้เชิงลึกอย่างหนึ่งที่สร้างการเปลี่ยนแปลงในสังคม นำเสนอโดย Ian Goodfellow และคณะในปี 2014 การสร้างแบบจำลองแบบกำเนิด GANs ประกอบด้วยเครือข่ายประสาทเทียมสองเครือข่าย ได้แก่ เครือข่ายการสร้าง generator และเครือข่ายการแยกแยะ discriminator ซึ่งแข่งขันกันในเกมหรือสภาพแวดล้อมที่กำหนดขึ้นมา เครือข่าย generator มีเป้าหมายเพื่อสร้างข้อมูลที่สมจริงที่ไม่มีใครสามารถแยกแยะได้ ในทางตรงกันข้ามเครือข่าย discriminator ก็พยายามแยกความแตกต่างระหว่างข้อมูลจริงและข้อมูลที่สร้างขึ้นมาจากเครือข่าย generator กระบวนการเรียนรู้แบบปฏิปักษ์นี้ขับเคลื่อนให้ทั้งสองเครือข่ายพัฒนาขึ้นพร้อมกันและสร้างผลลัพธ์คุณภาพสูงในงานต่างๆ เช่น การสังเคราะห์ภาพ การสร้างวิดีโอ และการเพิ่มพูนข้อมูล สาระสำคัญของ GANs อยู่ที่ความสามารถในการเรียนรู้การกระจายข้อมูลที่ซับซ้อน เครือข่าย generator เริ่มต้นจากการป้อนสัญญาณรบกวนแบบสุ่มและค่อยๆ … Continue reading
Convolution on Coding Metamaterials การคอนโวลูชั่นสำหรับวัสดุเมตาแบบใช้รหัสดิจิทัล
แนวคิดการเข้ารหัสวัสดุเมตา (metamaterial) ทำให้เกิดการเชื่อมโยงระหว่างอนุภาคของวัสดุเมตาทางกายภาพกับรหัสดิจิทัล ดังนั้นจึงสามารถประมวลผลสัญญาณดิจิทัลบนวัสดุเมตาที่เข้ารหัสเพื่อรับรู้ปรากฏการณ์ทางกายภาพแบบพิเศษได้ การพัฒนานี้แสดงการดำเนินการฟูเรียร์บนวัสดุเมตาที่เข้ารหัสและเสนอหลักการที่เรียกว่าการเปลี่ยนรูปแบบการกระเจิงโดยใช้ทฤษฎีบทการคอนโวลูชั่นซึ่งช่วยให้สามารถบังคับรูปแบบการกระเจิงไปยังทิศทางที่ออกแบบไว้ล่วงหน้าเนื่องจากแอมพลิจูดการสะท้อนของอนุภาคที่เข้ารหัส จึงสามารถบรรลุรูปแบบการเข้ารหัสที่ต้องการได้ง่าย โดยใช้โมดูลัสของเมทริกซ์การเข้ารหัสสองตัว การศึกษานี้แสดงให้เห็นว่ารูปแบบการกระเจิงที่คำนวณโดยตรงจากรูปแบบการเข้ารหัสโดยใช้การแปลงฟูเรียร์มีความสอดคล้องกันกับการจำลองเชิงตัวเลขตามโครงสร้างการเข้ารหัส ซึ่งเป็นวิธีที่มีประสิทธิภาพในการปรับรูปแบบการเข้ารหัสให้เหมาะสมเพื่อให้ได้ลำคลื่นการกระเจิงที่ออกแบบไว้ ข้อได้เปรียบที่สำคัญของแนวทางนี้เมื่อเทียบกับรูปแบบก่อนหน้านี้ในการผลิตการกระเจิงลำคลื่นเดี่ยวที่พิเศษคือการควบคุมที่ยืดหยุ่นและต่อเนื่องในทิศทางใดก็ได้ โดยเป็นแนวทางใหม่ในการศึกษาวัสดุเมตาจากมุมมองวิทยการดิจิทัล โดยทำนายความเป็นไปได้ในการรวมทฤษฎีบททั่วไปในการประมวลผลสัญญาณดิจิทัลกับวัสดุเมตาการเข้ารหัสเพื่อให้เกิดการจัดการคลื่นแม่เหล็กไฟฟ้าที่มีประสิทธิภาพมากขึ้น ที่มา https://doi.org/10.1002/advs.201600156
Evolution of Coding Metamaterials วิวัฒนาการวัสดุเมตาแบบใช้รหัสดิจิทัลสำหรับจัดการคลื่นวิทยุเชิงไดนามิก
วัสดุเมตาอัจริยะมีความสามารถและความยืดหยุ่นที่โดดเด่นในการควบคุมคลื่นแม่เหล็กไฟฟ้า (EM) หรือคลื่นวิทยุ เนื่องจากเมตาอะตอมที่มีความยาวคลื่นย่อยสามารถออกแบบและปรับแต่งได้ในลักษณะตามที่ต้องการ ความต้องการสร้างวัสดุเมตาอัจริยะถูกต่อยอดโครงสร้างวัสดุเมตาแบบพาสซีฟ (แบบตั่งเดิม) สำหรับฟังชั่นเฉพาะเจาะจง ฟังก์ชันของวัสดุเมตาอัจริยะได้รับการพัฒนา เพื่อควบคุมคลื่นแม่เหล็กไฟฟ้าแบบไดนามิก อุปกรณ์ที่ใช้งานจะถูกรวมเข้ากับเมตาอะตอมหรือเซลล์ (unit cell) ทำให้เกิดวัสดุเมตาอัจริยะที่ใช้งานอยู่ตามลักษณะและปัจจัยที่ตอบสนอง เช่น การเพิ่มอัตราขยายและการควบคุมทิศทาง โดยวัสดุเมตาที่พัฒนาเป็นวัสดุเมตาอัจริยะแบบจูนได้และวัสดุเมตาที่กำหนดค่าใหม่ได้ ซึ่งมีความสามารถในการปรับแต่งการทำงานหรือการกำหนดค่าใหม่ได้ มีการนำเสนอวัสดุเมตาอัจริยะชนิดพิเศษที่ใช้งานอยู่ การเข้ารหัสดิจิทัลและวัสดุเมตาอัจริยะที่ตั้งโปรแกรมได้ ซึ่งสามารถรับรู้ฟังก์ชันการทำงานที่แตกต่างกันที่หลากหลายและทำงานแบบเรียลไทม์ด้วยความสามารถของอุปกรณ์ field programmable gate array (FPGA) สิ่งสำคัญคือการแสดงการเข้ารหัสดิจิทัลของวัสดุเมตาอัจริยะทำให้สามารถเชื่อมโยงโลกดิจิทัลและโลกทางกายภาพของออปเจ็คได้ การใช้แพลตฟอร์มวัสดุเมตาอัจริยะและทำให้วัสดุเมตาอัจริยะประมวลผลข้อมูลดิจิทัลโดยตรง ซึ่งส่งผลให้เกิดวัสดุเมตาอัจริยะแบบสารสนเทศ ในส่วนนี้แนะนำวิวัฒนาการของวัสดุเมตาอัจริยะและแนวคิดและหลักการพื้นฐานของวัสดุเมตาอัจริยะแบบการเข้ารหัสดิจิทัลและวัสดุเมตาแบบสารสนเทศ วิวัฒนาการของวัสดุเมตาสำหรับการจัดการคลื่น EM แบบไดนามิก ที่มา : https://doi.org/10.1016/j.isci.2020.101403
การพัฒนาหุ่นยนต์เคลื่อนที่ด้วย ROS2 ตอนที่ 3
ตัวอย่างนี้จะเป็นการสร้างหุ่นยนต์เคลื่อนที่ที่สามารถควบคุมผ่าน wifi ได้ ซึ่งจะเป็นระบบพื้นฐานของหุ่นยนต์เคลื่อนที่แบบอัตโนมัติในพื้นที่ปิด (indoor) ซึ่งมีความสามารถในการสร้างแผนที่และเคลื่อนที่ไปยังตำแหน่งที่ต้องการพร้อมหลบหลีกสิ่งกีดขวางได้โดยอัตโนมัติ การทำงานจะแยกเป็น 2 ส่วนคือ จากบทความก่อนหน้า ซึ่งทำการทดลองสร้าง command_node บน PC และ drive_node drive_node บน Raspberry Pi เพื่อให้หุ่นยนต์สามารถรับคำสั่งจากการกด Keyboard บน PC ได้ ในขั้นตอนถัดไป จะทำการสร้างเชื่อมต่อ Rpi กับบอร์ด Arduino เพื่อรับคำสั่งและควบคุมการเคลื่อนที่ของหุ่นยนต์ 2. เพิ่มเติม code ในไฟล์ drive_node.py import rclpyfrom rclpy.node import … Continue reading
การพัฒนาหุ่นยนต์เคลื่อนที่ด้วย ROS2 ตอนที่ 2
ตัวอย่างนี้จะเป็นการสร้างหุ่นยนต์เคลื่อนที่ ที่สามารถควบคุมผ่าน wifi ได้ ซึ่งจะเป็นระบบพื้นฐานของหุ่นยนต์เคลื่อนที่แบบอัตโนมัติในพื้นที่ปิด (indoor) ที่มีความสามารถในการสร้างแผนที่และเคลื่อนที่ไปยังตำแหน่งที่ต้องการพร้อมหลบหลีกสิ่งกีดขวางได้โดยอัตโนมัติ การทำงานจะแยกเป็น 2 ส่วนคือ จากบทความก่อนหน้า ซึ่งทำการทดลองสร้าง command_node และ drive_node เพื่อรับส่งข้อมูลระหว่างกันในขั้นตอนถัดไป จะทำการสร้าง drive_node บน Raspberry Pi เพื่อให้หุ่นยนต์สามารถรับคำสั่งจากการกด Keyboard บน PC ได้ ขั้นตอนที่ 1: การตั้งค่า ROS2 Workspace ใน Rpi เปิด terminal และสร้าง Workspace Directory ด้วยคำสั่งดังนี้ mkdir … Continue reading
การพัฒนาหุ่นยนต์เคลื่อนที่ด้วย ROS2 ตอนที่ 1.1
รายละเอียดของ code ในไฟล์ command_node.py และ drive_node.py อธิบายโค้ดโดยละเอียด Command_node.py 1. การนำเข้าไลบรารีที่ใช้ import rclpyfrom rclpy.node import Nodefrom std_msgs.msg import Stringfrom pynput import keyboardimport threading 2. การสร้างคลาส CommandNode class CommandNode(Node): def __init__(self): super().__init__(‘command_node’) 3. สร้าง Publisher self.publisher_ = self.create_publisher(String, ‘/drive_commands’, 10) 4. แสดงข้อความใน … Continue reading
การพัฒนาหุ่นยนต์เคลื่อนที่ด้วย ROS2 ตอนที่ 1
ตัวอย่างนี้จะเป็นการสร้างหุ่นยนต์เคลื่อนที่ ที่สามารถควบคุมผ่าน wifi ได้ ซึ่งจะเป็นระบบพื้นฐานของหุ่นยนต์เคลื่อนที่แบบอัตโนมัติในพื้นที่ปิด (indoor) ที่มีความสามารถในการสร้างแผนที่และเคลื่อนที่ไปยังตำแหน่งที่ต้องการพร้อมหลบหลีกสิ่งกีดขวางได้โดยอัตโนมัติ การทำงานจะแยกเป็น 2 ส่วนคือ เราจะเริ่มจากการสร้าง Node อย่างง่าย 2 node บน PC เพื่อทดสอบการรับส่งข้อมูลระหว่าง node คือ Command_node และ Drive_node ขั้นตอนที่ 1: การตั้งค่า ROS2 Workspace mkdir -p ~/ros2_ws/srccd ~/ros2_ws เริ่มต้น Workspace ด้วยคำสั่ง colcon build ขั้นตอนที่ 2: … Continue reading
Machine Learning in 6G Wireless Networks
ระบบไร้สายยุคที่หก (6G) คาดหวังการเปลี่ยนกระบวนทัศน์จากสิ่งที่เชื่อมต่อกันไปสู่อัจฉริยะที่เชื่อมต่อกันโดยมีจุดเด่นคือความหนาแน่นสูงเป็นพิเศษ ขนาดใหญ่ ความแตกต่างแบบไดนามิก ความต้องการด้านการทำงานที่หลากหลาย และความสามารถในการเรียนรู้ของเครื่องจักร (machine learning: ML) ซึ่งนำไปสู่ ไปสู่ความต้องการอัลกอริธึมอัจฉริยะที่มีประสิทธิภาพสูงเพิ่มมากขึ้น โดยอัลกอริธึมที่ใช้ optimization แบบคลาสสิกต้องการแบบจำลองทางคณิตศาสตร์ที่มีความแม่นยำสูงของการเชื่อมโยงข้อมูล และประสบปัญหาประสิทธิภาพต่ำและมีต้นทุนการคำนวณสูงในแอปพลิเคชัน 6G จากความรู้ในโดเมน เช่น โมเดล optimization และเครื่องมือทางทฤษฎี ML มีความโดดเด่นในวิธีการที่มีแนวโน้มและใช้งานได้จริงสำหรับปัญหา optimization ขนาดใหญ่ที่ซับซ้อนจำนวนมากใน 6G เนื่องจากประสิทธิภาพที่เหนือกว่า ประสิทธิภาพในการคำนวณ ความสามารถในการปรับขนาด และ ลักษณะทั่วไป การเรียนรู้เพื่อเพิ่มประสิทธิภาพเป็นระบบในโดเมนที่หลากหลายของเครือข่ายไร้สาย 6G โดยการระบุคุณลักษณะโดยธรรมชาติของปัญหา optimizationที่ซ่อนอยู่ และตรวจสอบกรอบงาน ML ที่ออกแบบมาโดยเฉพาะจากมุมมองของ optimizationโดยเฉพาะการครอบคลุมถึงอัลกอริทึม … Continue reading