การถดถอยเชิงเส้น: การลดค่าของ Gradient

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

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

  1. คำนวณการสูญเสียด้วยน้ำหนักและอคติปัจจุบัน

  2. กำหนดทิศทางที่จะย้ายน้ำหนักและอคติที่ลดการสูญเสีย

  3. เลื่อนค่าถ่วงน้ำหนักและค่าอคติเล็กน้อยในทิศทางที่ลด การสูญเสีย

  4. กลับไปที่ขั้นตอนที่ 1 และทำซ้ำจนกว่าโมเดลจะลด การสูญเสียไม่ได้อีก

แผนภาพด้านล่างแสดงขั้นตอนการวนซ้ำที่การไล่ระดับความชันดำเนินการเพื่อค้นหาน้ำหนักและอคติที่สร้างโมเดลที่มีการสูญเสียต่ำที่สุด

รูปที่ 11 ภาพกระบวนการ Gradient Descent

รูปที่ 11 การไล่ระดับความชันเป็นกระบวนการแบบวนซ้ำที่ค้นหาน้ำหนัก และอคติที่สร้างโมเดลที่มี Loss ต่ำที่สุด

เส้นโค้งการบรรจบกันของโมเดลและเส้นโค้งการสูญเสีย

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

รูปที่ 12 กราฟของเส้นโค้งการสูญเสียที่แสดงการลดลงอย่างรวดเร็วและลดลงอย่างช้าๆ

รูปที่ 12 เส้นโค้งการสูญเสียแสดงให้เห็นว่าโมเดลบรรจบกันที่ประมาณการทำซ้ำครั้งที่ 1,000

คุณจะเห็นว่าการสูญเสียลดลงอย่างมากในช่วง 2-3 การทำซ้ำแรก จากนั้นจะค่อยๆ ลดลงก่อนที่จะคงที่เมื่อถึงการทำซ้ำที่ประมาณ 1,000 หลังจากทำซ้ำ 1,000 ครั้ง เราจะมั่นใจได้ว่าโมเดล บรรจบกันแล้ว

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

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

ในรูปที่ 1 เราจะเห็นว่าในรอบที่ 2 โมเดล จะคาดการณ์ได้ไม่ดีเนื่องจากค่าการสูญเสียสูง

รูปที่ 13 เส้นโค้งการสูญเสียและกราฟที่สอดคล้องกันของโมเดล ซึ่งเอียงออกจากจุดข้อมูล

รูปที่ 13 เส้นโค้งการสูญเสียและสแนปชอตของโมเดลในช่วงเริ่มต้นของ กระบวนการฝึก

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

รูปที่ 14 เส้นโค้งการสูญเสียและกราฟที่สอดคล้องกันของโมเดล ซึ่งตัดผ่านจุดข้อมูลแต่ไม่ได้ทำมุมที่เหมาะสม

รูปที่ 14 เส้นโค้งการสูญเสียและภาพรวมของโมเดลในช่วงกลางของการฝึก

และเมื่อถึงการวนซ้ำครั้งที่ประมาณ 1,000 เราจะเห็นว่าโมเดลได้บรรจบกันแล้ว ซึ่งสร้างโมเดลที่มี Loss ต่ำที่สุดเท่าที่จะเป็นไปได้

รูปที่ 15 เส้นโค้งการสูญเสียและกราฟที่สอดคล้องกันของโมเดลซึ่งเหมาะกับข้อมูลเป็นอย่างดี

รูปที่ 15 เส้นโค้งการสูญเสียและภาพรวมของโมเดลในช่วงท้ายของกระบวนการฝึก

แบบฝึกหัด: ทดสอบความเข้าใจ

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

ฟังก์ชันการบรรจบกันและฟังก์ชันนูน

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

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

รูปที่ 16 กราฟ 3 มิติของพื้นผิวการสูญเสีย

รูปที่ 16 พื้นผิวการสูญเสียที่แสดงรูปร่างนูน

ในตัวอย่างนี้ น้ำหนัก -5.44 และอคติ 35.94 ทำให้เกิดการสูญเสียต่ำสุด ที่ 5.54 ดังนี้

รูปที่ 17 กราฟ 3 มิติของพื้นผิวการสูญเสีย โดยมี (-5.44, 35.94, 5.54) อยู่ด้านล่าง

รูปที่ 17 พื้นผิวการสูญเสียที่แสดงค่าถ่วงน้ำหนักและค่าอคติที่ทำให้เกิดการสูญเสียต่ำสุด

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

รูปที่ 18 พื้นผิวการสูญเสีย 3 มิติแบบนูนที่มีจุดการไล่ระดับสีลงมาเคลื่อนไปยังจุดต่ำสุด

รูปที่ 18 กราฟการสูญเสียที่แสดงจุดการไล่ระดับสีหยุดที่จุดต่ำสุด บนกราฟ

โปรดสังเกตว่าจุดการสูญเสียสีดำสร้างรูปร่างที่แน่นอนของเส้นโค้งการสูญเสีย ซึ่งก็คือการลดลงอย่างรวดเร็วก่อนที่จะค่อยๆ ลดลงจนถึงจุดต่ำสุดบนพื้นผิวการสูญเสีย

การใช้น้ำหนักและค่าอคติที่ทำให้เกิดการสูญเสียต่ำที่สุด ในกรณีนี้คือน้ำหนัก -5.44 และอคติ 35.94 เราสามารถสร้างกราฟโมเดลเพื่อดูว่าโมเดลเหมาะกับข้อมูลมากน้อยเพียงใด

รูปที่ 19 กราฟของน้ำหนักเป็นพันปอนด์เทียบกับไมล์ต่อแกลลอน โดยมีโมเดลที่ปรับให้เข้ากับข้อมูล

รูปที่ 19 โมเดลที่สร้างกราฟโดยใช้น้ำหนักและค่าอคติที่ทำให้เกิด การสูญเสียต่ำที่สุด

นี่จะเป็นโมเดลที่ดีที่สุดสําหรับชุดข้อมูลนี้ เนื่องจากค่าถ่วงน้ำหนักและความเอนเอียงอื่นๆ ไม่ได้สร้างโมเดลที่มีการสูญเสียต่ำกว่า