ลดขนาด Neural Network ด้วยเทคนิค Targeted Dropout


Share this article

งานวิจัยต่อจาก Lottery ticket hypothesis ที่น่าสนใจตัวหนึ่งเลย คืองานวิจัยที่มีชื่อว่า Targeted Dropout ที่พัฒนาโดย Google Brain และ FOR.ai โดยมี Geoffrey E. Hinton หนึ่งในผู้คิดค้น Dropout ขึ้นมา

หากใครสนใจเรื่อง Lottery ticket hypothesis สามารถอ่านได้จากบทความ หรือจาก Paper เกริ่นก่อนเลยว่าในการพัฒนา neural network สำหรับทำงานใด ๆ ก็ตาม ส่วนใหญ่แล้ว โมเดลที่ทำงานได้ดีจะมีขนาดใหญ่ ซึ่งบางครั้ง ใหญ่เกินกว่าที่จะนำไปใช้งานได้ เช่นการพัฒนาโมเดลสำหรับใช้บน mobile app หรือตามเว็บที่มีพื้นที่จำกัด

ทั้งนี้ จากการศึกษาที่ผ่าน ๆ มา ค้นพบว่า neural network นั้นมีลักษณะที่เรียกว่า overparameterized หมายความว่ามันมี parameter ที่เยอะเกินความจำเป็นในการใช้งานจริง โดยการเกิดขึ้นของ overparameterization เกิดขึ้นระหว่างการ train ของ network โดย parameter ที่สำคัญต่อการทำนายผลนั้นจะมี magnitude ที่มากกว่า parameter ที่ไม่มีผลหรือมีผลน้อยมาก ๆ ต่อการทำนาย ซึ่งจากตรงนี้เอง ทำให้ neural network’s parameter หรือ neural node ที่จำเป็นกับการทำงานของ neural network จริง ๆ แล้วมีบางส่วนที่สามารถตัดออกไปได้ ซึ่งทำให้โมเดลนั้นมีขนาดเล็กลง

ทั้งนี้ การลดขนาดของ neural network มีหลากหลายเทคนิค แต่ส่วนใหญ่แล้วมีลักษณะที่เป็น post-hoc method หมายความว่า เป็นการลดขนาดของ network หลังจาก training ไปแล้ว ทั้งนี้ ข้อเสียของ post-hoc method คือความซับซ้อนที่เพิ่มขึ้นในการนำไปใช้จริง เช่นการปรับเปรียบโครงสร้าง network หลังจากการ pruning แล้วอีกทั้งยังเพิ่มระยะในการพัฒนาที่นานขึ้น เนื่องจากต้องเพิ่มรอบการ training ที่มากขึ้น อีกทั้งการหาวิธีที่มีประสิทธิภาพในการวัดผลว่า node ไหนที่ควรตัดออก

การที่เราไม่สามารถตัด neural’s node ออกได้เลย เนื่องจากการตัด parameter ออก มีผลกระทบกับผลของ neural network อย่างแน่นอน เพราะเกิด dependency ของ weight ขึ้นระหว่างการ training นั่นเอง

coadaptation matrix ของ weight ใน neural network โดยเรียงจาก magnitude เยอะ (ซ้ายไปขวา และบนไปล่าง) แถบสีแสดงขึ้น dependency ระหว่าง weightฃ

จากรูปจะเห็นว่า แม้ว่า weight ที่มี magnitude ที่น้อยแต่ ก็ยังมี dependency กับ weight ที่มี magnitude มาก ทำให้ถ้าหากเรา prune node ที่มี weight นั้น ๆ ออกแล้ว จะมีผลกระทบกับ weight ที่มี magnitude ที่สูง ทำให้เกิดผลกับ performance ของ neural network แน่นอน

หนึ่งในเทคนิคสำหรับการลด dependency ระหว่าง weight นั้นคือ dropout regularization นั้นเอง โดยการลดจำนวน node ในแต่ละ layer ของ neural network ออกแบบสุ่ม ทำให้แต่ละ node ต้องพึ่งตัวเองในการทำนายผล ส่งผลให้มีความเป็น dependency ลดลง

จากจุดนี้เอง นักวิจัยได้นำ lottery ticket hypothesis มารวมกับ dropout และได้ตั้ง hypothesis ที่ว่า

“If we plan to do explicit post hoc sparsification, then we can do better by specifically applying dropout to the set of units that we a priori believe are the least useful.”

หมายความว่า หากเราจะทำ dropout เพื่อลด dependency ลง (โดยการบังคับให้ neural network ปรับตัวกับความเป็น sparsificity ที่เกิดจากการทำ dropout) แล้วนั้น เราก็น่าจะทำการ drop weight หรือ node ที่ไม่มีผลต่อการทำนายออก (ตัวที่เป็น lossing ticket) แทนที่จะเป็นการทำแบบสุ่ม

READ  Visualize your data on Thailand Map with Tableau

นักวิจัยตั้งชื่อวิธีการนี้ว่า Targeted Dropout ซึ่งก็ตรงตามชื่อ หมายถึงการเลือก target ที่จะทำการ dropout ออกไปให้เหลือแต่ winning ticket นั่นเอง

การทำ target dropout นั้นมีได้ทั้งแบบตัด weight ออก หรือตัด unit ออก ซึ่งจากผลการทดลอง พบว่าความเป็น dependency ของ weight/node ที่มี magnitude ต่ำนั้น ได้หายไป ซึ่งสามารถตัดส่วนนั้นออกได้เลย

จากตัวอย่างด้านบนนั้น นักวิจัยได้ตั้งค่า target ไว้เป็น 75% และใช้ 25% สำหรับการนำไปใช้จริง นักวิจัยยังได้ทดลองต่อ โดยทดลองกับ deep neural network architecture ที่หลากหลาย ได้แก่ LeNet-5, VGG-16 กับชุดข้อมูล CIFAR-100 และ ResNet-32 กับชุดข้อมูล CIFAR-10 อีกทั้งยังสามารถใช้ได้กับ Transformer สำหรับงาน translation ได้อีกด้วย ทั้งนี้ เขาอ้างว่าสามารถทำให้ได้ผลเป็น 99.95% sparsity (weight 99.95% มีค่า magnitude ที่ต่ำ) โดยมีผลลัพธ์ที่ลดลงไป 3 ถึง 4% ในแต่ละ task performance โดยเหลือแค่ winning ticket ไว้อย่างเดียว

ถือว่าเป็นก้าวที่น่าสนใจสำหรับหัวข้อเกี่ยวกับการลดขนาด neural network หรือ Sparsity in Deep Neural Networks และในอนาคต คิดว่าจะมีการนำมาใช้กับ architecture ใหม่ ๆ มากขึ้นอย่าง Transformer สำหรับการทำ language model อีกด้วย

ขอบคุณที่ติดตามครับ หากมี comment แลกเปลี่ยนความเห็นหรือมีข้อผิดพลาดใด ๆ สามารถเข้ามาพูดคุยกันได้เลยครับ ขอบคุณครับ 😀

References:


ลงทะเบียนรับข่าวสาร

ไม่พลาดทุกการอัพเดทจาก Big Data Experience Center

Big Data Experience Center (BX)

ชั้น 14 อาคาร Knowledge Exchange Center (KX)
110/1 ถนนกรุงธนบุรี, แขวงบางลำภูล่าง เขตคลองสาน กรุงเทพฯ 10600
อีเมล์: [email protected]

ABOUT

SERVICES