Activation Function มีไว้ทำไม

--

เคยสงสัยบ้างไหมอะไรคือหน้าที่หลักของ Activationโครงข่ายประสาทเทียมในเชิงคณิตศาสตร์? บทความนี้แหละที่จะมาให้ความกระจ่างมากขึ้น…

จำที่เคยเรียนในช่วงมัธยมได้ไหม ที่อาจารย์สอนว่า ฟังก์ชั่นคืออะไร

หา! อะไรนะ? ลืมแล้ว?

ไม่เป็นไร เดี๋ยวจะเล่าให้ฟัง

ฟังก์ชั่นคือความสัมพันธ์ระหว่างเซตของ Input และเซตของ Output โดยที่แต่ละค่าของ Input จะสัมพันธ์ได้เพียงแค่ค่าหนึ่งของ Output เท่านั้น เช่น

Image Source: https://en.wikipedia.org/wiki/Function_%28mathematics%29

เช่น
y = x+2
เรียกอีกแบบได้ว่า y คือฟังก์ชั่นของ x โดยที่มี x เป็น Input และ y เป็น Output สามารถเขียนอีกแบบได้ดังนี้
f(x) = x+2

ยกตัวอย่างเช่นเรามี Neural Network นึง สามารถแยกภาพแมวและภาพสุนัขได้ เมื่อป้อนภาพแมวเข้าไปก็บอกได้ว่าเป็นแมว ป้อนภาพสุนัขเข้าไปก็บอกได้ว่าเป็นภาพสุนัข แล้วหากลองคิดแบบนี้ได้ไหมว่า Input คือภาพดิจิตอล และ Output คือประเภทของภาพ ดังนั้น Neural Network ทั้งก้อนก็คือฟังก์ชั่นนั่นเอง!

ใช่แล้วค่ะ Neural Network ก็คือฟังก์ชั่นที่อธิบายความสัมพันธ์ระหว่างภาพและประเภทของภาพ ซึ่งมีความซับซ้อนและเราไม่รู้ว่าหน้าตาเป็นอย่างไร

สมมติว่าเรามีโมเดลที่มี 2 hidden layer ดังภาพ

ตรงนี้จะโชว์การพิสูจน์สมการ เพื่อจะได้เข้าใจอย่างเคลียร์ๆ ซึ่งอาจจะดูยาวและเยอะไปนิด แต่ถ้าค่อยๆฝึกอ่านฝึกดูรับรองว่า ต่อไปก็จะเก่งในการอ่านสมการแน่นอน แต่จะต้องใจเย็นๆและใช้เวลานะคะ

ดังนั้นจะเขียนสมการของโมเดลได้ดังนี้

แทนค่า L1, L2 ใน L3, L4 จะได้ว่า

จัดรูปใหม่ได้ดังนี้

และนำ L3, L4 ไปแทนค่าในสมการ output จะได้ว่า

จัดรูปใหม่จะได้เป็น

และเมื่อยุบทุกเทอมจะได้เป็น

เนื่องจากค่า weight สามารถปรับค่าได้จากการเทรน ฉะนั้นจึงยุบสัมประสิทธิ์หน้า input เป็น

และเช่นเดียวกับค่าคงที่ จะได้เป็น

จะได้สมการสุดท้ายเป็น

จะเห็นว่า ไม่ว่าโมเดลจะมีทั้งหมดกี่ hidden layer สมการสุดท้ายก็จะไม่ต่างกับโมเดล Linear function ที่ไม่ผ่านเลเยอร์ใดๆ

ฉะนั้น…

“โมเดลจึงต้องมี Activation function ที่มีความเป็น Non-linear เพื่อช่วยให้ Neural Network ของเราสามารถประมาณฟังก์ชั่นที่เป็น Non-linear ได้ด้วย และการที่โมเดลมี hidden layer หลายชั้นจะต้องแตกต่างกับโมเดลที่ไม่มี hidden layer ซึ่ง Activation function มีหลากหลายแบบไว้เลือกใช้ บาง Network ก็มีมากกว่าหนึ่งแบบแล้วแต่ดีไซน์ได้หมด ไม่มีข้อจำกัดใดๆ”

และนี่คือ Activation function ที่เป็นที่นิยม

และสมการของคณิตศาสตร์จะถูกปรับใหม่เป็น

สมการของ L3 และ L4 จะเขียนได้เป็น

จะเห็นว่า w3, w4, w5, w6 ไม่สามารถคูณเข้ากับ w1, b1, w2, b2 โดยตรงได้ เพราะติดที่ Activation function f(x) ค่ะ และโมเดลของเราก็ยังเป็น Non-linear function ได้ด้วยเพราะ Activation มีความเป็น Non-linear ค่ะ

และนี่ก็คือบทบาทของ Activation function ในเชิงคณิตศาสตร์ค่ะ หวังว่าคงเข้าใจในฟังก์ชันตัวนี้ได้เคลียร์มากขึ้น

จบแล้วสำหรับบทความวันนี้ เจอกันใหม่ตอนหน้าค่ะ

สามารถติดตามกันได้ที่

Facebook: AI แบบเคลียร์ ตีแผ่ทุกไอเดียเบื้องหลังสมการ

Tiktok: ai.beeying

Youtube: AI แบบเคลียร์ๆ

--

--

AI แบบเคลียร์

จากไอเดียสู่สมการ จากสมการสู่โค้ด จากโค้ดสู่โซลูชั่นการใช้งานจริง