โครงข่ายปฏิปักษ์ก่อกำเนิด
ส่วนหนึ่งของเนื้อหา |
การเรียนรู้ของเครื่อง และ การทำเหมืองข้อมูล |
---|
โครงข่ายปฏิปักษ์ก่อกำเนิด (generative adversarial network, นิยมเรียกย่อว่า GAN) เป็นขั้นตอนวิธีปัญญาประดิษฐ์ประเภทหนึ่งที่ใช้การเรียนรู้แบบไม่มีผู้สอน เผยแพร่โดยเอียน กูดเฟลโลว์และคณะ ในปี 2014[1] โดยที่ภายในโครงข่ายนี้จะประกอบไปด้วยโครงข่ายประสาทเทียม 2 โครงข่ายซึ่งเป็นปฏิปักษ์ต่อกันเอง[2]
แม้ว่าเดิมที GAN จะถูกเสนอขึ้นในรูปแบบของแบบจำลองก่อกำเนิดสำหรับการเรียนรู้แบบไม่มีผู้สอน แต่ก็ยังสามารถนำไปใช้ในการเรียนรู้แบบกึ่งมีผู้สอน[2] การเรียนรู้แบบมีผู้สอนเต็มรูปแบบ[3] รวมถึงการเรียนรู้เสริมกำลัง[4] ได้อย่างมีประสิทธิภาพด้วย
ภาพรวม
[แก้]GAN ประกอบขึ้นจากโครงข่ายประสาทเทียม 2 โครงข่าย คือ ตัวก่อกำเนิด (generator) และตัวจำแนก (discriminator) ตัวอย่างการทำงาน เช่น หากจุดประสงค์คือเพื่อสร้างรูปภาพ ฝั่งตัวก่อกำเนิดจะทำการสร้างรูปภาพออกมา และฝั่งตัวจำแนกจะทำการพิจารณาว่าภาพนั้นถูกต้องหรือไม่ ตัวก่อกำเนิดจะทำการเรียนรู้ที่จะสร้างภาพให้เก่งเพื่อหลอกตัวจำแนก และตัวจำแนกจะพยายามเรียนรู้ที่จะแยกแยะภาพที่ตัวก่อกำเนิดสร้างขึ้นให้แม่นยำยิ่งขึ้น การที่โครงข่ายทั้ง 2 ทำการเรียนรู้เพื่อวัตถุประสงค์ที่ขัดแย้งกันเองจึงทำให้ได้รับการเรียกว่าเป็นปฏิปักษ์
อียาน เลอเกิง ได้กล่าวถึง GAN ไว้ว่า "ผมคิดว่านี่เป็นไอเดียที่น่าสนใจที่สุดในวงการการเรียนรู้ของเครื่องในช่วง 10 ปีที่ผ่านมานี้เลย"[5]
การขยายข้อมูล
[แก้]การฝึกอบรม GAN เป็นอะไรที่ไม่เสถียรและต้องใช้ข้อมูลจำนวนมาก การเพิ่มขยายข้อมูลจึงยังเป็นสิ่งจำเป็นสำหรับการทำให้ GAN เพื่อเพิ่มความเสถียร ชดเชยปริมาณข้อมูล และปรับปรุงประสิทธิภาพการทำงานทั่วไป
อย่างไรก็ตาม เป็นที่ทราบกันดีว่าการขยายข้อมูลแค่เฉพาะฝั่งตัวจำแนกจะทำให้ประสิทธิภาพลดลง[6] ซึ่งอาจเป็นเพราะตัวจำแนกใช้การมีหรือไม่มีการขยายข้อมูลเพื่อพิจารณา และเพื่อที่จะหลอกตัวจำแนก ตัวก่อกำเนิดจะพยายามสร้างผลลัพธ์ที่เลียนแบบข้อมูลส่วนที่ขยายขึ้นมา เพื่อหลีกเลี่ยงปัญหานี้ การขยายข้อมูลที่มีประสิทธิภาพจึงต้องมีการขยายข้อมูลขาออกของตัวก่อกำเนิดด้วย
ตัวอย่างการใช้งาน
[แก้]- การสร้างแอนิเมชันและภาพประกอบโดยอัตโนมัติ [7]
- การเข้าร่วมการประชุมโดยดูเรียบร้อยดี แม้ว่าจะไม่ได้แต่งตัวเป็นทางการก็ตาม[8]
- การไม่เปิดเผยข้อมูลเพื่อปรับปรุงความปลอดภัยทางไซเบอร์[9]
อ้างอิง
[แก้]- ↑ Goodfellow, Ian; Pouget-Abadie, Jean; Mirza, Mehdi; Xu, Bing; Warde-Farley, David; Ozair, Sherjil; Courville, Aaron; Bengio, Yoshua (2014). Generative Adversarial Nets (PDF). Proceedings of the International Conference on Neural Information Processing Systems (NIPS 2014). pp. 2672–2680.
- ↑ 2.0 2.1 Salimans, Tim; Goodfellow, Ian. "Improved Techniques for Training GANs". arXiv:1606.03498 [cs.LG].
- ↑ Isola, Phillip; Zhu, Jun-Yan; Zhou, Tinghui; Efros, Alexei (2017). "Image-to-Image Translation with Conditional Adversarial Nets". Computer Vision and Pattern Recognition.
- ↑ Ho, Jonathon; Ermon, Stefano (2016). "Generative Adversarial Imitation Learning". Advances in Neural Information Processing Systems. 29: 4565–4573. arXiv:1606.03476.
- ↑ "Quora". สืบค้นเมื่อ 2020-05-19.
- ↑ Zhengli Zhao, Zizhao Zhang, Ting Chen, Sameer Singh, Han Zhang: “Image Augmentations for GAN Training”, 2020; arXiv:2006.02595.
- ↑ Setiadi, Iskandar (2019-05-24). "Demystifying Machine Learning with Anime Characters Recognition". henngeblog (ภาษาอังกฤษ). สืบค้นเมื่อ 2023-08-02.
- ↑ "An AI App Allows Users to Dress in Digital Costumes". An AI App Allows Users to Dress in Digital Costumes (ภาษาอังกฤษ). 2020-12-02. สืบค้นเมื่อ 2023-12-09.
- ↑ "Generative Adversarial Networks (GANs)". Coursera (ภาษาญี่ปุ่น). สืบค้นเมื่อ 2024-01-23.