AI 101

āļ­āļ°āđ„āļĢāļ„āļ·āļ­āļāļēāļĢāļ–āļ­āļĒāļŦāļĨāļąāļ‡āđāļšāļšāļĒāđ‰āļ­āļ™āļāļĨāļąāļš?

mm

อะไรคือการถอยหลังแบบย้อนกลับ?

ระบบการเรียนรู้ลึกสามารถเรียนรู้รูปแบบที่ซับซ้อนมาก และพวกมันทำได้โดยการปรับเปลี่ยนน้ำหนักของพวกมัน น้ำหนักของระบบการเรียนรู้ลึกถูกปรับเปลี่ยนโดยกระบวนการหนึ่งที่เรียกว่า การถอยหลังแบบย้อนกลับ หากไม่มีการถอยหลังแบบย้อนกลับ ระบบการเรียนรู้ลึกจะไม่สามารถทำงานได้ เช่น การรู้จำภาพและการตีความภาษาธรรมชาติ การเข้าใจว่าการถอยหลังแบบย้อนกลับทำงานอย่างไรเป็นสิ่งสำคัญในการเข้าใจระบบการเรียนรู้ลึกโดยทั่วไป ดังนั้น มาทำความเข้าใจเกี่ยวกับการถอยหลังแบบย้อนกลับและดูว่ากระบวนการนี้ใช้ในการปรับเปลี่ยนน้ำหนักของระบบการเรียนรู้ลึก

การถอยหลังแบบย้อนกลับอาจเป็นเรื่องที่ยากในการเข้าใจ และการคำนวณที่ใช้ในการทำการถอยหลังแบบย้อนกลับอาจซับซ้อนมาก บทความนี้จะพยายามให้ความเข้าใจที่直观เกี่ยวกับการถอยหลังแบบย้อนกลับ โดยใช้การคำนวณทางคณิตศาสตร์อย่างน้อยที่สุด อย่างไรก็ตาม การอภิปรายเกี่ยวกับ数学เบื้องหลังการถอยหลังแบบย้อนกลับเป็นสิ่งจำเป็น

เป้าหมายของการถอยหลังแบบย้อนกลับ

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

การฝึกอบรมระบบการเรียนรู้ลึก

ก่อนที่จะทำการถอยหลังแบบย้อนกลับได้ จะต้องทำการฝึกอบรมปกติหรือการฝึกอบรมไปข้างหน้าของระบบการเรียนรู้ลึกก่อน เมื่อระบบการเรียนรู้ลึกถูกสร้างขึ้น จะมีการตั้งค่าน้ำหนักเริ่มต้น ค่าน้ำหนักจะถูกเปลี่ยนแปลงเมื่อระบบการเรียนรู้ลึกถูกฝึกอบรม การฝึกอบรมไปข้างหน้าของระบบการเรียนรู้ลึกสามารถแบ่งออกเป็นสามขั้นตอนได้: การกระตุ้นของนิวรอน การถ่ายโอนของนิวรอน และการแพร่กระจายไปข้างหน้า

เมื่อฝึกอบรมระบบการเรียนรู้ลึก เราต้องใช้ฟังก์ชันคณิตศาสตร์หลายฟังก์ชัน นิวรอนในระบบการเรียนรู้ลึกประกอบด้วยข้อมูลเข้าและฟังก์ชันการกระตุ้น ซึ่งกำหนดค่าความจำเป็นในการกระตุ้มนิวรอน ค่ากระตุ้นของนิวรอนถูกคำนวณโดยใช้ส่วนประกอบหลายส่วน ซึ่งเป็นผลรวมของน้ำหนักและค่าเข้า น้ำหนักและค่าเข้าขึ้นอยู่กับดัชนีของโหนดที่ใช้ในการคำนวณค่ากระตุ้น อีกตัวเลขหนึ่งที่ต้องพิจารณาเมื่อคำนวณค่ากระตุ้นคือค่าเบียส ค่าเบียสไม่เปลี่ยนแปลง ดังนั้นจึงไม่ถูกคูณด้วยน้ำหนักและค่าเข้า แต่เพิ่มเข้าไป ค่ากระตุ้นสามารถคำนวณได้โดยใช้สมการดังต่อไปนี้:

การกระตุ้น = ผลรวม(น้ำหนัก * ค่าเข้า) + ค่าเบียส

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

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

การถอยหลังแบบย้อนกลับในระบบการเรียนรู้ลึก

กระบวนการการถอยหลังแบบย้อนกลับใช้ผลลัพธ์สุดท้ายของการฝึกอบรมระบบการเรียนรู้ลึก และจากนั้นจึงกำหนดข้อผิดพลาดในผลลัพธ์เหล่านั้น ข้อผิดพลาดจะถูกคำนวณโดยการเปรียบเทียบระหว่างค่าออก/ผลลัพธ์ของระบบการเรียนรู้ลึกและค่าที่คาดหวัง/ต้องการของระบบการเรียนรู้ลึก

หลังจากที่ข้อผิดพลาดในผลลัพธ์ของระบบการเรียนรู้ลึกถูกคำนวณ ข้อมูลนี้จะถูกส่งย้อนกลับไปในระบบการเรียนรู้ลึก และพารามิเตอร์ของระบบการเรียนรู้ลึกจะถูกปรับเปลี่ยนไปตามทาง วิธีการที่ใช้ในการปรับเปลี่ยนน้ำหนักของระบบการเรียนรู้ลึกมีฐานอยู่บนแคลคูลัส โดยเฉพาะอย่างยิ่ง มันอยู่บนกฎของเชน อย่างไรก็ตาม ความเข้าใจแคลคูลัสไม่จำเป็นต่อการเข้าใจแนวคิดเบื้องหลังการถอยหลังแบบย้อนกลับ เพียงแค่ทราบว่าเมื่อค่าออกของนิวรอนถูกกำหนด ค่าความชันของค่าออกจะถูกคำนวณโดยใช้ฟังก์ชันการถ่ายโอน เมื่อทำการถอยหลังแบบย้อนกลับ ข้อผิดพลาดสำหรับนิวรอนเฉพาะจะถูกคำนวณตามสูตรต่อไปนี้:

ข้อผิดพลาด = (ค่าที่คาดหวัง – ค่าที่แท้จริง) * ค่าความชันของค่าออกของนิวรอน

เมื่อทำงานกับนิวรอนในชั้นออก ค่าที่คาดหวังจะถูกใช้เป็นค่าคลาส เมื่อข้อผิดพลาดถูกคำนวณ ข้อผิดพลาดจะถูกใช้เป็นค่าเข้าสำหรับนิวรอนในชั้นซ่อนเร้น ซึ่งหมายความว่าข้อผิดพลาดสำหรับชั้นซ่อนเร้นนี้คือข้อผิดพลาดที่ถูกถ่วงน้ำหนักของนิวรอนในชั้นออก ข้อผิดพลาดจะเดินทางย้อนกลับไปในระบบการเรียนรู้ลึกตามน้ำหนัก

หลังจากที่ข้อผิดพลาดสำหรับระบบการเรียนรู้ลึกถูกคำนวณ น้ำหนักในระบบการเรียนรู้ลึกจะต้องถูกปรับเปลี่ยน ตามที่กล่าวไว้ การคำนวณข้อผิดพลาดเกี่ยวข้องกับการกำหนดค่าความชันของค่าออก หลังจากที่ค่าความชันถูกคำนวณ กระบวนการที่เรียกว่า การลื่นไถลลงด้านความชัน สามารถใช้ในการปรับเปลี่ยนน้ำหนักของระบบการเรียนรู้ลึกได้

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

āļ™āļąāļāļšāļĨāđ‡āļ­āļāđāļĨāļ°āđ‚āļ›āļĢāđāļāļĢāļĄāđ€āļĄāļ­āļĢāđŒāļ—āļĩāđˆāļĄāļĩāļ„āļ§āļēāļĄāđ€āļŠāļĩāđˆāļĒāļ§āļŠāļēāļāđƒāļ™ Machine Learning āđāļĨāļ° Deep Learning āļŦāļąāļ§āļ‚āđ‰āļ­ Daniel āļŦāļ§āļąāļ‡āļ—āļĩāđˆāļˆāļ°āļŠāđˆāļ§āļĒāđƒāļŦāđ‰āļœāļđāđ‰āļ­āļ·āđˆāļ™āđƒāļŠāđ‰āļžāļĨāļąāļ‡āļ‚āļ­āļ‡ AI āļŠāļģāļŦāļĢāļąāļšāļŠāļīāđˆāļ‡āļ—āļĩāđˆāļ”āļĩ