Zuckerberg เผยข้อมูลเบื้องหลัง Jarvis ระบบ AI ควบคุมบ้านที่เขาสร้างขึ้นด้วยตัวเอง

by mk
20 December 2016 - 04:55

เป็นที่ทราบกันดีว่า Mark Zuckerberg กำลังสร้างระบบ AI ควบคุมบ้านของตัวเองที่เขาเรียกว่า Jarvis (เหมือนใน Iron Man) ล่าสุดเขาออกมาเผยความคืบหน้าและเบื้องหลังโครงสร้างของ Jarvis ให้ทราบกันแล้ว

Zuckerberg บอกว่าเป้าหมายของเขาในการสร้าง Jarvis คือเรียนรู้ว่าโลกของ AI ตอนนี้ไปถึงไหนบ้างแล้ว ระบบของเขาแบ่งออกได้เป็น 4 ส่วนใหญ่ๆ คือ

  • Jarvis Server ระบบเซิร์ฟเวอร์กลาง
  • Home Systems ส่วนติดต่อกับเครื่องใช้ไฟฟ้าภายในบ้าน
  • User Interfaces ส่วนติดต่อกับมนุษย์ เช่น แอพ กล้อง บ็อต
  • AI Systems ส่วนประมวลผล AI เช่น ทำความเข้าใจภาษามนุษย์ เสียงพูด ใบหน้า

ลำดับการสร้าง Jarvis ของ Zuckerberg มีดังนี้

ส่วนติดต่อเครื่องใช้ไฟฟ้าภายในบ้าน

Zuckerberg เริ่มจากสร้างระบบควบคุมเครื่องใช้ไฟฟ้าภายในบ้าน ซึ่งมีอุปกรณ์และยี่ห้อที่หลากหลาย เช่น ระบบเครื่องเสียง Sonos, ทีวี Samsung, กล้อง Nest Cam, ระบบหลอดไฟและควบคุมประตูจาก Creston

เขาบอกว่าบางครั้งต้อง reverse engineer API ของอุปกรณ์บางตัวให้สามารถควบคุมมันได้อย่างที่ต้องการ อุปกรณ์บางอย่างต่อเน็ตไม่ได้ ก็ต้องซื้อสวิตช์ไฟแบบต่อเน็ตได้มาเสียบเพิ่ม

ปัญหาสำคัญที่เขาพบคือหาซื้อเครื่องใช้ไฟฟ้าแบบที่ต้องการไม่ได้ เช่น เครื่องปิ้งขนมปังที่อนุญาตให้กดขนมปังลงไปก่อนแต่ยังไม่ต้องปิ้ง เพื่อให้ควบคุมสวิตช์เปิดทำงานเฉพาะส่วนความร้อนได้จากระยะไกล สุดท้ายเขาต้องซื้อเครื่องปิ้งขนมปังรุ่นเก่ามาก (ยุค 50s) มาดัดแปลงเอง

ประมวลผลภาษาธรรมชาติ

เมื่อเขาสามารถควบคุมบ้านผ่านคอมพิวเตอร์ได้แล้ว ขั้นต่อไปคือหาวิธีควบคุมมันด้วยภาษาธรรมชาติ (Natural Language) โดยเขาแบ่งงานเป็นขั้นแรกคือควบคุมด้วยข้อความ (text message) และขั้นถัดไปคือควบคุมด้วยเสียงพูด

แรกสุดเขาใช้วิธีเขียนโปรแกรมให้ตรวจหาคีย์เวิร์ด เช่น bedroom, lights, on เพื่อแปลความหมาย จากนั้นก็พัฒนาให้โปรแกรมมีความสามารถมากขึ้น เข้าใจคำที่มีความหมายเหมือนกัน (เช่น family room กับ living room) และเข้าใจบริบทของคนพูด เช่น ถ้าเขาพูดคำว่า my office ก็จะหมายถึงคนละห้องกับภรรยาที่พูดคำเดียวกัน จากนั้นระบบก็ต้องแยกแยะได้ว่าคนพูดอยู่ในห้องไหน เพื่อรองรับคำสั่งที่พูดขึ้นมาลอยๆ โดยไม่ระบุห้อง

Zuckerberg บอกว่าการสั่งให้เปิดเพลงมีความยากเป็นพิเศษ เพราะมีชื่อศิลปิน ชื่อเพลง ชื่ออัลบั้ม เพิ่มเข้ามาอีกมาก และมีความกำกวมของคำสั่งอยู่เยอะ ประโยคที่ดูคล้ายๆ กันกลับมีความหมายแตกต่างกันมาก เช่น

  • play someone like you
  • play someone like adele
  • play some adele

ตอนนี้ระบบของเขาสามารถรองรับคำสั่ง play me some music แล้วกลับไปดูประวัติการฟังเพลงของเขา เพื่อเลือกเพลงมาให้ฟังได้แล้ว เขาสามารถปรับอารมณ์ของเพลงที่เล่นได้ เช่น พูดว่า play something light ระบบก็จะไปเลือกเพลงที่อยู่ในหมวดเบาๆ ฟังง่ายมาให้แทน

ประมวลผลภาพและแยกแยะใบหน้า

บ้านของ Zuckerberg ยังติดกล้องหลายตัวไว้ที่หน้าตาประตู เพื่อตรวจจับใบหน้าของแขกที่มายืนอยู่หน้าบ้าน เขาบอกว่าต้องติดกล้องหลายตัวเพื่อให้ครอบคลุมใบหน้าทุกมุม การประมวลผลแบ่งเป็น 2 ขั้นตอน อย่างแรกคือตรวจจับว่ามีใบหน้าอยู่ในกล้องหรือไม่ (face detection) และขั้นที่สองคือรันระบบแยกแยะว่าเป็นใบหน้าของใคร (face recognition) โดยใช้ระบบแยกแยะใบหน้าของ Facebook เข้าช่วย

เมื่อแยกแยะได้ว่าเป็นใบหน้าของใครแล้ว Jarvis จะตรวจสอบกับรายชื่อแขกที่จะมาที่บ้านในวันนั้น ถ้าตรงกัน Jarvis จะเปิดประตูให้บุคคลนั้นเข้ามาในบ้าน พร้อมแจ้ง Zuckerberg ว่าแขกมาแล้ว

Messenger Bot

ตอนแรก ระบบ Jarvis ควบคุมผ่านคอมพิวเตอร์ แต่ Zuckerberg ต้องการควบคุมมันได้จากทุกที่ เขาจึงสร้าง Messenger Bot สำหรับคุยกับ Jarvis ได้ ซึ่งเขาก็ใช้แพลตฟอร์ม Messenger แบบเดียวกับที่นักพัฒนาคนอื่นๆ ใช้งาน (โครงการนี้เป็นโครงการส่วนตัวของ Zuckerberg ไม่เกี่ยวอะไรกับบริษัท) ซึ่งเขาพบว่าการสื่อสารลักษณะนี้ สร้างบ็อตบนแพลตฟอร์มที่มีอยู่แล้วอย่าง Messenger ง่ายกว่าสร้างแอพขึ้นมาใหม่ทั้งตัว

บ็อต Jarvis บน Messenger สามารถรับได้ทั้งคำสั่งเป็นข้อความ คำสั่งเสียง และบ็อตสามารถส่งภาพแขกที่มาที่บ้านในช่วงกลางวัน กลับมายัง Zuckerberg ที่อยู่ที่ทำงานได้ด้วย

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

ระบบแยกแยะเสียงพูด

แต่ในกรณีที่เป็นการสื่อสารด้วยเสียงพูด Zuckerberg เลือกสร้างแอพ Jarvis ขึ้นมาใหม่ทั้งตัว เพื่อคอยฟังสิ่งที่เขาพูดอยู่ตลอดเวลา (Messenger ไม่เหมาะสำหรับงานนี้) เขาสามารถวางมือถือไว้บนโต๊ะ แล้วพูดกับ Jarvis เมื่อไรก็ได้ที่ต้องการ ซึ่งเขาบอกว่าแนวคิดไม่ต่างอะไรกับ Amazon Echo แต่เขาสร้างเป็นแอพมือถือ เพื่อให้คุยกับ Jarvis เวลาอยู่นอกบ้านได้ด้วย

ตอนนี้แอพ Jarvis มีบน iOS แล้ว และเขากำลังจะสร้างเวอร์ชัน Android ตามมา ปัญหาที่เขาพบคือระบบแยกแยะเสียงพูด (speech recognition) ในปัจจุบันทำงานได้ค่อนข้างดี แต่ระบบ AI ที่ตีความหมายของคำพูดยังมีข้อจำกัดอยู่มาก

Zuckerberg พบว่าระบบตีความเสียงพูดในปัจจุบัน ถูกออกแบบมาสำหรับงานเฉพาะทางมากกว่าเป็นระบบเดียวครอบจักรวาล แต่ในความเป็นจริง คนที่พูดกับบ็อต Google มีวิธีการพูดที่ต่างออกไปจากบ็อต Facebook หรือ Echo ส่งผลให้ระบบหนึ่งๆ ไม่สามารถทำงานได้ดีในทุกสถานการณ์เสมอไป บทเรียนของเขาคือเทคโนโลยีด้านนี้ยังสามารถพัฒนาต่อได้อีกมาก

เครื่องมือที่ใช้เขียนโปรแกรม

Zuckerberg เล่าว่าด้วยตำแหน่งการงานในปัจจุบัน เขาแทบไม่ได้ลงมือโค้ดผลิตภัณฑ์ของ Facebook เองแล้ว แต่เขายังเขียนโปรแกรมใช้ส่วนตัวอยู่เสมอ โครงการสร้าง Jarvis จึงถือเป็นโอกาสดีที่เขาจะกลับมาสำรวจเครื่องมือสำหรับนักพัฒนาของ Facebook ว่าเป็นอย่างไรบ้าง เครื่องมือที่เขาใช้มีทั้งระบบแยกแยะใบหน้า, ระบบแยกแยะเสียง, Messenger Bot Framework, Nuclide IDE ของ Facebook เอง, Buck ระบบ build ซอฟต์แวร์ขนาดใหญ่, FastText ตัวแยกแยะข้อความ เป็นต้น

ส่วนภาษาโปรแกรมที่ใช้งานมีทั้ง Python, PHP, Objective C

ขั้นต่อไป Zuckerberg จะสร้างแอพบน Android และเพิ่มจำนวนอุปกรณ์ที่ใช้ฟังเสียงพูดให้มากขึ้น เชื่อมต่อกับเครื่องใช้ไฟฟ้าให้มากขึ้น ส่วนในระยะยาว เขาต้องการให้ Jarvis มีวิธีเรียนรู้ทักษะใหม่ๆ ได้ง่ายกว่าการที่เขาไปเขียนโปรแกรมสอนมันเอง ถ้าปีหน้าเขายังตั้งเป้าทำระบบ Jarvis ต่อก็จะเน้นเรื่องการเรียนรู้ของ Jarvis เป็นหลัก

เขาสรุปว่าปีนี้ใช้เวลาประมาณ 100 ชั่วโมงสร้าง Jarvis ให้ทำงานพื้นฐานได้ แต่มนุษย์ก็ยังติดข้อจำกัดเรื่องพัฒนาการของ AI ในขั้นต่อไป ถึงแม้ว่าเขาจะให้เวลาอีก 1,000 ชั่วโมงสร้าง Jarvis ก็คงไม่สามารถสร้างระบบที่เรียนรู้เองได้ จนกว่าเขาจะค้นพบความก้าวหน้าทางด้าน AI แบบก้าวกระโดด ซึ่งโลกเรายังไปไม่ถึงจุดนั้น

ที่มา - Mark Zuckerberg, Fast Company

Blognone Jobs Premium