How Alpha Go Work (วิธีการทำงาน)


บทความเขียนเรียบเรียงโดยคุณ panote_saechiew
อ่านเพิ่มเติมที่ http://pantip.com/topic/34896422

https://www.facebook.com/notes/panote-saechiew/how-alpha-go-work/1340692295948067
gunhotnews ขอขอบคุณครับ

มาดูกันดีกว่าครับว่า Alpha Go ทำงานยังไงข้อมูลที่ใช้ในการเขียนแกะมาจาก Mastering the game of Go with deep neural networks and tree search ซึ่งเป็นเปเปอร์ของทีม Deep Mind ครับ ผมคงไม่ได้ลงลึกในรายละเอียดมากนัก(เพราะยากมาก ผมก็เข้าใจไม่หมด) แต่จะอธิบายภาพใหญ่ๆของการทำงานของมัน
ก็ตามชื่อบทความ นั่นคือตัว Alpha Go นั้นผสมผสานเทคนิคสองอย่างเข้าด้วยกันคือ Tree Search และ Neural Networks(NN) หรือเครือข่ายประสาทเทียม ผมคงไม่ลงรายละเอียดว่า NN ทำงานยังไง เอาสรุปง่ายๆว่า มันเป็นกล่องที่จะให้คำตอบ โดยคำตอบที่ได้ มาจากการเรียนรู้ละกันครับ
กูเกิลแบ่งขั้นตอนการสร้าง NN เป็น 3 ขั้น นั่นคือ

   1. สอน : NN ได้รับการป้อนบันทึกหมากจำนวน 30 ล้านตาเดิน แล้วให้พยายาม “เดา” หมากเม็ดถัดไปที่จะเดินลงมา NN ในขั้นนี้มี 2 ตัว คือ SL Policy และ Rollout Policy ซึ่งเหมือนกันทุกอย่างต่างกันตรงเวลาคิด(SL Policy ใช้เวลาหาคำตอบ 3 millisecond ส่วน Rollout ใช้ 2 microsecond แต่ความแม่นก็ต่างกันครึ่งต่อครึ่ง)
   2. ซ้อม : เอา SL Policy จากขั้นตอนแรก มาแข่งกับตัวมันเอง(ในเวอร์ชั่นก่อนๆ)จนได้ข้อมูลมาอีก 30 ล้านตาเดินแล้วให้คะแนนถ้าตาเดินนั้นทำให้ชนะ ผลที่ได้จากขั้นตอนนี้เรียกว่า RL Policy กูเกิลบอกว่า RL Policy ชนะ SL Policy ได้มากกว่า 80% และลำพัง RL Policy ก็เพียงพอจะชนะโปรแกรมโกะอื่นๆในโลกมากกว่า 85%
   3. สังเคราะห์ : เพื่อให้การตัดสินใจกว้างขึ้น กูเกิลตัดสินใจสร้าง NN ขึ้นอีกหนึ่งตัวที่ให้คำตอบเป็นความน่าจะเป็นที่จะชนะของการลงหมากในแต่ละ ตำแหน่ง(Probability to win) NN ตัวนี้ได้จากตำแหน่งหมากเวลาใดๆ เทียบกับผลลัพธ์สุดท้ายว่าเกมนั้นชนะหรือแพ้ ข้อมูลที่ใช้ได้จากการใช้ RL Policy แข่งกับตัวมันเอง อีก 30 ล้านตาเดิน เรียกว่า Value Policy

ภาพที่ 1 แสดงที่มาของ policy ทั้ง 4 ตัว

ถึงตรงนี้ รากฐานการประเมินของ Alpha Go พร้อมแล้ว ขั้นตอนถัดไปคือการเอามาใช้ ขอพักคอมพิวเตอร์ไว้แป๊ปนึง กลับมาลองนึกถึงเราเองว่าเวลาเราเล่นหมากรุก หรือโกะ นี่เราเล่นยังไง ผมว่าโดยรวมหลายๆคนจะเริ่มแบบนี้ครับ

    1. กวาดตากว้างๆดูกระดาน ตัดตาเดินที่ไม่เมกเซนต์ออกไปให้หมดก่อน
    2. ทดลองเดินดู(ในใจ) แล้วเดาว่าฝ่ายตรงข้ามจะเดินตอบโต้ยังไง
    3. ย้ายไปลองเดินตาอื่น แล้วประเมินการตอบโต้
    4. เลือกตาเดินที่ดีที่สุด

สิ่งที่กูเกิลทำก็ตามนั้นละครับ  เทคนิคที่ใช้ในการนี้เรียกว่า Monte carlo Tree Search

ภาพที่ 2 Monti Carlo Tree Search

    1. จากภาพโปรแกรมจะเริ่มจากการกวาดตากว้างๆ หนึ่งรอบ ประเมินตาเดินทั้งหมดที่เป็นไปได้ ขั้นตอนนี้ใช้ SL Policy (ถ้าเป็นโปรจะเดินยังไง)ให้คะแนนแต่ละทางเลือก
    2. เอาทางเลือกที่คะแนนดีๆ มาลองคิดต่อ โดยลองเดินตาถัดไปหลายๆแบบ โดยใช้ทั้ง SL Policy(โปรเดิน) RL Policy(เดินเอง)
    3. ให้คะแนนแต่ละทางเลือกโดยใช้ Value Policy(เดินแบบนี้มีโอกาสชนะเท่าไหร่)ควบกับ Rollout Policy (ลองเดินต่อให้จบแบบหยาบๆ)
    4. ทดลองเดินต่อจากข้อสอง(คือเดาหมากถัดไปอีกชั้น)

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

ภาพที่ 3 ตัวอย่างการเดินของ Alpha Go ในเกมกับ ฟานฮุ่ย
a. โปรแกรมทำการประเมินโอกาสชนะของตาเดินทั้งหมดโดยใช้ value policy ที่เป็นไปได้ สีเข้มคือน่าเดิน สีอ่อนคือไม่น่าเดิน ที่มีสีแดงวงไว้ คือตาเดินที่มีโอกาสสูงสุด
b.-d. คะแนนคำนวณแต่ละตำแหน่งจาก policy ต่างๆกัน
e. หมากที่โดนวงไว้คือ ตาเดินที่มีความน่าจะเป็นสูงสุดที่จะชนะ
f. คือรูปแบบการเดินที่พยากรณ์ไว้ทั้งหมดก่อนเดินตานี้ ซึ่ง ฟานฮุ่ย ลงหมากที่ตำแหน่ง 1 ตามที่ Alpha Go พยากรณ์ไว้
จบแล้วครับ สำหรับโครงสร้างคร่าวๆของ Alpha Go ใครจะต่อขยายภาคพิศดารก็เชิญตามสะดวก


บทความเขียนเรียบเรียงโดยคุณ panote_saechiew
อ่านเพิ่มเติมที่ http://pantip.com/topic/34896422

https://www.facebook.com/notes/panote-saechiew/how-alpha-go-work/1340692295948067
gunhotnews ขอขอบคุณครับ


ผู้โพส: gunhotnews
วันที่: 13 มี.ค. 2559 22:15
จำนวนคนเข้าชมทั้งหมด:757
หมวด: วิทยาศาสตร์

 

 

 

 

สุ่มกระทู้

  การแพร่กระจายเชื้อแบคทีเรียด้วยโทรศัพท์มือถือ  13 ก.ค. 2558 21:09

 จีนนำ เครื่องบินขับไล่ล่องหน J-20 ออกมาอวดโฉมครั้งแรกในงานแอร์โชว์ใหญ่ที่สุดของ ปท. (ชมคลิป)  02 พ.ย. 2559 15:52

 ฟันผุ กับ ลิ้นหัวใจอักเสบ  14 ส.ค. 2558 12:25

 ภาพดาวเคราะห์น้อย 2017 BQ6  21 ก.พ. 2560 12:47

 โบราณเขาว่า "แอบดูคนอื่น แล้วจะเป็น ตากุ้งยิง"... จริงหรือไม่??  13 เม.ย. 2558 19:52


1

เพิ่มเติมจากคุณ AKB-SKE เว็บไชต์พันทิป Aja (Shih-Chieh) Huang จบ Ph.D จาก มหาวิทยาลัยแห่งชาติไต้หวัน ในหัวข้อ New Heuristics for Monte Carlo Tree Search Applied to the Game of Go เป็นนักเล่นโกะ ระดับ 6 ดั้ง ทำงาน Post doc ที่ University of Alberta ก่อนจะเข้าร่วมงานที่ DeepMind ทำหน้าที่เป็นคนเดินหมากให้ AlphaGo ด้วย

ผู้โพส: gunhotnews          วันที่:13 มี.ค. 2559 22:26          

X
Loading........

2

เพิ่มเติมจากคุณ AKB-SKE เว็บไชต์พันทิป Demis Hassabis หนึ่งในผู้ก่อตั้ง DeepMind จบ computer science จาก Cambridge รุ่นเดียวกับ David Silver และเป็นคนสอน David Silver เล่นโกะด้วย เป็นอัจฉริยะ ด้านหมากรุก โดยได้ คะแนนระดับ Chess Master ตอนอายุ 14 ปี อายุน้อยเป็นอันดับ 2 ของโลก ณ เวลานั้น จบปริญญาเอกที่ University College London ก่อตั้ง DeepMind ในปี 2010 ปี 2014 Google มาเทคโอเวอร์ ด้วยเงิน 400 ล้านปอนด์ ปัจจุบัน มีตำแหน่งเป็น รองหัวหน้า ด้านวิศวกรรม AI ของ Google


แก้ไขเมื่อ 13 มี.ค. 2559 22:22

ผู้โพส: gunhotnews          วันที่:13 มี.ค. 2559 22:21          

X
Loading........

3

เพิ่มเติมจากคุณ AKB-SKE เว็บไชต์พันทิป David Silver หัวหน้าทีมพัฒนา Google DeepMind AlphaGO จบ computer science จาก Cambridge ด้วยคะแนน เป็นที่ 1 ของรุ่น แล้วออกไปตั้งบริษัท ทำเกม Elixir Studios ซึ่งได้รางวัลด้าน เทคโนโลยีมามากมาย ก่อนที่จะกลับมาทำงานด้านวิชาการ เรียนปริญญาเอกที่ University of Alberta `ในหัวข้อ reinforcement learning in computer Go กลับมาทำงานที่ University College London และเข้าร่วม deepmind ในปี 2013

ผู้โพส: gunhotnews          วันที่:13 มี.ค. 2559 22:18          

X
Loading........
1

ไปหน้าที่
 


  แสดงความคิดเห็น
 
 
 
ชื่อ
กรุณากรอกข้อความตามภาพ    *ตัวอักษรพิมพ์ใหญ่ทุกตัวและมีอักษรภาษาไทยผสม 
อัพโหลดรูปที่นี่ และนำโค๊ด HTML Code มาใส่ในข้อความที่ต้องการ