ในงาน Think 2021 ของ IBM มีประกาศเปิดตัวโปรเจกต์ CodeNet ชุดข้อมูลขนาดใหญ่ที่สร้างขึ้นเพื่อสอน AI เขียนโปรแกรม โดยชุดข้อมูลประกอบด้วยตัวอย่างโค้ด 14 ล้านชุดรวม 500 ล้านบรรทัด และในภาษาโปรแกรมที่แตกต่างกันไปกว่า 55 ภาษา ตั้งแต่ที่ยังมีนิยมใช้งานคือ C++, Java, Python และ Go ไปจนถึงภาษาดั้งเดิมอย่าง COBOL, Pascal และ FORTRAN
IBM ระบุถึงปัญหาใหญ่ของวงการไอทีคือการแปลงโค้ดจากภาษาหนึ่งไปอีกภาษาหนึ่ง ที่แม้ระบบแปลงภาษาแบบใช้กฎแปลง (rule based) จะสามารถแปลงได้ 50-60% แต่ส่วนที่เหลือก็กลายเป็นส่วนที่มีความซับซ้อน
ปัจจุบันภาษาโปรแกรมมิ่งนั้นมีบริบทในตัวเองสูง การจะแปลภาษาให้เข้าใจนั้นยากและใช้เวลานาน ยิ่งโปรแกรมมีขนาดใหญ่เท่าไรก็ยิ่งแปลยากมากเท่านั้น จึงเป็นเรื่องท้าทายสำหรับ AI ที่จะทำแปลภาษาโปรแกรมมิ่ง โดยโปรเจกต์ CodeNet คาดว่าจะช่วยให้ AI เข้าใจบริบทของภาษาโปรแกรมมิ่งมากขึ้น
นอกจากนี้ ตัวชุดข้อมูลมีโค้ดพร้อมกับข้อมูลประกอบ (metadata) ทำให้สามารถใช้เพื่อค้นหาโค้ด และตรวจจับโค้ดซ้ำซ้อน และยังมีสถานะการยอมรับโค้ดชุดต่างๆ ซึ่งจะช่วยให้ AI สามารถแยกแยะโค้ดที่ดีกับโค้ดที่มีปัญหาออกจากกันได้ง่ายขึ้น
ความเป็นไปได้ที่จะใช้ปัญญาประดิษฐ์มาเขียนโปรแกรมมีมาหลายปีแล้ว สองปีก่อน OpenAI เคยสาธิตโมเดลปัญญาประดิษฐ์ GPT-2 และพบว่ามันสามารถสร้างโค้ดออกมาได้ “สมจริง” แม้ตัวปัญญาประดิษฐ์จะไม่ได้ออกแบบมาสำหรับการเขียนโปรแกรมโดยตรง ดังนั้น การพัฒนาปัญญาประดิษฐ์เพื่อให้รองรับการเขียนโปรแกรมโดยตรงอาจจะสร้างแนวทางการเขียนโปรแกรมใหม่ๆ ที่ตัวโปรแกรมเมอร์สั่งการโค้ดในระดับสูงขึ้นไป
ที่มา - IBM
Comments
เริ่มขยับมาเรื่อยๆ
ไหวเหรอ
programming language สมัยนี้ update กันโคตรเร็ว
ผ่านไปปีสองปี code เปลี่ยนแล้ว
ผมว่าไหวนะ ถ้าออกแบบดีๆ ให้ Ai เข้าใจบริบทของภาษามนุษย์ แล้วให้คนสอนต้นฉบับก่อน จากนั้นก็ให้ Ai เรียนรู้กันเอง
การแปลงข้ามภาษา AI ควรที่จะทำได้ดีกว่าคนอยู่แล้วนะครับ เพราะมัน pattern matching พอสมควร
แล้ว ai ก็จะแอบซ่อนโค้ด ทำช่องโหว่ไว้ จากนั้นสักวันนึงก็ยึดโลก
จากนั้นสักวันจะมีคนย้อยอดีตมาฆ่าคนคิด
คุ้นๆ