นี่คือการค้นพบวิธีใหม่ที่เพิ่มความเร็วใน “การคูณเมทริกซ์” โดย AI

กล่าวได้ว่าในชีวิตประจำวันเรานั้นใช้ประโยชน์จากคณิตศาสตร์ต่างๆมากมาย ทั้งในสมการแบบที่ง่ายและซับซ้อนที่ได้รับการพิสูจน์ตามทฤษฎีต่างๆ แต่เมื่อไม่นานมานี้มีปัญญาประดิษฐ์ (Artificial Intelligence: AI) ที่ค้นพบวิธีที่สามารถเพิ่มความเร็วในการคำนวณเมทริกซ์

รูปที่ 1. ปัญญาประดิษฐ์ค้นพบวิธีใหม่ในการคูณตัวเลขเมทริกซ์ (อ้างอิง: Deepmind)

นี่คือปัญญาประดิษฐ์ที่สร้างขึ้นโดยดีพมายด์ (DeepMind) ได้ค้นพบวิธีใหม่ในการคูณตัวเลขเมทริกซ์ (Matrix multiplication) ที่สามารถเพิ่มความเร็วในการคำนวณได้มากถึง 20% ซึ่งเป็นความก้าวหน้าครั้งแรกที่สามารถเพิ่มความเร็วในการคำนวณในรอบกว่า 50 ปี ซึ่งเมทริกซ์นั้นมีความสำคัญมาก เนื่องจากซอฟต์แวร์ต่างๆต้องอาศัยเมทริกซ์ในการทำงาน

การคูณเมทริกซ์เป็นการคูณตัวเลขสองตารางเข้าด้วยกัน ซึ่งเป็นงานการคำนวณพื้นฐานที่ใช้ในซอฟต์แวร์เกือบทั้งหมด โดยเฉพาะอย่างยิ่งในกราฟิกปัญญาประดิษฐ์และการจำลองทางวิทยาศาสตร์ ซึ่งการปรับปรุงประสิทธิภาพของอัลกอริทึม (Algorithms) เพียงเล็กน้อยก็อาจทำให้ประสิทธิภาพเพิ่มขึ้นอย่างมากหรือประหยัดพลังงานได้มาก

เป็นเวลาหลายศตวรรษมาแล้วที่เชื่อกันว่าวิธีที่มีประสิทธิภาพที่สุดในการคูณเมทริกซ์จะเป็นสัดส่วนกับจำนวนขององค์ประกอบที่ถูกคูณ ซึ่งหมายความว่างานจะยากขึ้นเมื่อเมทริกซ์มีขนาดใหญ่ขึ้น ย้อนกลับไปในปี ค.ศ. 1969 นักคณิตศาสตร์โวลเกอร์ สตราสเซน (Volker Strassen) ได้พิสูจน์ว่าการคูณเมทริกซ์ขนาด 2×2 คูณ 2×2 นั้นไม่จำเป็นที่จะต้องคูณ 8 ครั้ง โดยเขาสามารถแก้สมการให้สามารถลดลงเหลือได้ 7 ครั้ง ซึ่งวิธีการนี้เรียกว่าอัลกอริทึมสตราสเซน (Strassen) โดยจะใช้วิธีบวกเพิ่มขึ้นในสมการ ซึ่งการบวกในคอมพิวเตอร์นั้นใช้เวลาน้อยกว่าการคูณมาก

รูปที่ 2. การคูณเมทริกซ์ขนาด 2×2 คูณ 2×2 ด้านซ้ายเป็นแบบปกติส่วนด้านขวาเป็นแบบอัลกอริทึมสตราสเซน (Strassen) (อ้างอิง: Deepmind)

อัลกอริทึมสตราสเซนถือเป็นแนวทางที่มีประสิทธิภาพมากที่สุดสำหรับการคำนวณเมทริกซ์ส่วนใหญ่มานานกว่า 50 ปี แม้ว่าจะพบการปรับปรุงเล็กน้อยที่ไม่สามารถปรับให้เข้ากับโค้ดคอมพิวเตอร์ได้อย่างง่ายดาย แต่ตอนนี้ปัญญาประดิษฐ์ของดีพมายด์ได้ค้นพบเทคนิคที่เร็วกว่าซึ่งทำงานได้อย่างสมบูรณ์บนฮาร์ดแวร์ในปัจจุบัน ปัญญาประดิษฐ์ใหม่นี้มีชื่อเรียกว่าอัลฟ่าเทนเซอร์ (AlphaTensor) ซึ่งอัลกอริทึมนี้สำหรับการคูณเมทริกซ์ 2 เมทริกซ์จาก 4 แถวของ 4 ตัวเลข โดยใช้การคูณเพียง 47 ครั้งซึ่งมีประสิทธิภาพดีกว่าอัลกอริทึมสตราสเซนที่จะต้องใช้การคูณถึง 49 ครั้ง นอกจากนี้ยังพัฒนาเทคนิคที่ปรับปรุงแล้วสำหรับการคูณเมทริกซ์ที่มีขนาดอื่นๆอีก 70 ขนาด

อัลฟ่าเทนเซอร์เป็นวิธีที่มีการบวกลบเลขเพิ่มเข้าไปในสมการและค้นพบการทำงานหลายพันแบบสำหรับเมทริกซ์แต่ละขนาด สำหรับเมทริกซ์ 4×4 เพียงอย่างเดียวมีวิธีรวมถึง 14,000 แบบ แต่มีเพียงส่วนน้อยเท่านั้นที่มีประสิทธิภาพที่ดีกว่า ดีพมายด์พบว่าอัลกอริทึมสามารถเพิ่มความเร็วในการคำนวณได้ระหว่าง 10% ถึง 20% เปอร์เซ็นต์สำหรับฮาร์ดแวร์บางตัว

ตัวอย่างเช่น หากอัลกอริทึมแบบดั้งเดิมที่สอนในโรงเรียนสำหรับคูณเมทริกซ์ขนาด 4×5 คูณ 5×5 จะใช้สมการคำนวณทั้งหมด 100 ครั้ง และจำนวนนี้ลดลงเหลือ 80 จากการคำนวณของมนุษย์ ส่วนอัลฟ่าเทนเซอร์พบอัลกอริทึมที่ทำงานแบบเดียวกันโดยใช้เพียง 76 ครั้ง

รูปที่ 3. การคูณเมทริกซ์ขนาด 4×5 คูณ 5×5 แบบอัลฟ่าเทนเซอร์ที่ใช้เพียง 76 ครั้ง (AlphaTensor) (อ้างอิง: Deepmind)

เจมส์ ไนท์ (James Knight) จากมหาวิทยาลัยซัสเซกซ์ Sussex (University of Sussex) สหราชอาณาจักรกล่าวว่าซอฟต์แวร์ต่างๆที่ทำงานบนซูเปอร์คอมพิวเตอร์และฮาร์ดแวร์ที่ทรงพลัง เช่น การวิจัยปัญญาประดิษฐ์และการจำลองสภาพอากาศ จำเป็นต้องใช้การคูณเมทริกซ์ขนาดใหญ่อย่างมีประสิทธิภาพ หากอัลกอริทึมนี้ถูกนำมาใช้จริง มันจะช่วยให้ทำงานได้เร็วขึ้น จะทำให้ปริมาณงานการเรียนรู้เชิงลึกส่วนใหญ่ลดลง

โอเดด ลาคีช (Oded Lachish) จากมหาวิทยาลัยลอนดอนเบิร์คเบ็ค (University of London,Birkbeck) กล่าวว่าอัลกอริทึมใหม่นี้สามารถเพิ่มประสิทธิภาพของซอฟต์แวร์ได้หลากหลาย เนื่องจากการคูณเมทริกซ์เป็นปัญหาทั่วไปและอัลกอริทึมมีแนวโน้มที่จะมีการติดตามมากขึ้น ในอนาคตเราจะเห็นผลลัพธ์ที่สร้างโดยปัญญาประดิษฐ์สำหรับปัญหาอื่นๆ

อ้างอิง: Newscientist, Deepmind

Leave a Reply

Your email address will not be published. Required fields are marked *