เทคนิคการเพิ่มประสิทธิภาพอื่น ๆ

เทคนิคการไล่ระดับสีแบบวนซ้ำ

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

แนวคิดการทำงานหลัก

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

  • ขั้นแรกเริ่มต้นด้วยการเดาทางแก้ปัญหาเบื้องต้น

  • จากนั้นใช้การไล่ระดับสีของฟังก์ชันที่จุดนั้น

  • จากนั้นให้ทำซ้ำขั้นตอนโดยก้าวโซลูชันไปในทิศทางลบของการไล่ระดับสี

โดยทำตามขั้นตอนข้างต้นในที่สุดอัลกอริทึมจะมาบรรจบกันโดยที่การไล่ระดับสีเป็นศูนย์

แนวคิดทางคณิตศาสตร์

สมมติว่าเรามีฟังก์ชัน f(x)และเรากำลังพยายามหาค่าต่ำสุดของฟังก์ชันนี้ ต่อไปนี้เป็นขั้นตอนในการค้นหาขั้นต่ำของf(x).

  • ขั้นแรกให้ค่าเริ่มต้น $ x_ {0} \: สำหรับ \: x $

  • ตอนนี้ใช้การไล่ระดับสี $ \ nabla f $ ⁡ของฟังก์ชันโดยสัญชาตญาณว่าการไล่ระดับสีจะให้ความชันของเส้นโค้งที่ x และทิศทางจะชี้ไปที่การเพิ่มขึ้นของฟังก์ชันเพื่อหาทิศทางที่ดีที่สุดในการย่อขนาด

  • ตอนนี้เปลี่ยน x ดังนี้ -

    $$ x_ {n \: + \: 1} \: = \: x_ {n} \: - \: \ theta \ nabla f (x_ {n}) $$

ที่นี่ θ > 0 คืออัตราการฝึก (ขนาดขั้นตอน) ที่บังคับให้อัลกอริทึมต้องกระโดดเล็กน้อย

การประมาณขนาดขั้นตอน

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

  • อย่าเลือกขนาดของขั้นตอนที่ใหญ่เกินไปมิฉะนั้นจะมีผลกระทบในทางลบกล่าวคือมันจะแตกต่างกันมากกว่าที่จะมาบรรจบกัน

  • อย่าเลือกขนาดขั้นตอนที่เล็กเกินไปมิฉะนั้นจะใช้เวลามากในการบรรจบกัน

ตัวเลือกบางอย่างเกี่ยวกับการเลือกขนาดขั้นตอน -

  • ทางเลือกหนึ่งคือเลือกขนาดขั้นตอนคงที่

  • อีกทางเลือกหนึ่งคือการเลือกขนาดขั้นตอนอื่นสำหรับการทำซ้ำทุกครั้ง

การหลอมจำลอง

แนวคิดพื้นฐานของ Simulated Annealing (SA) ได้รับแรงบันดาลใจจากการหลอมในของแข็ง ในกระบวนการหลอมโลหะหากเราให้ความร้อนโลหะเหนือจุดหลอมเหลวและทำให้โลหะเย็นลงคุณสมบัติของโครงสร้างจะขึ้นอยู่กับอัตราการหล่อเย็น เรายังสามารถพูดได้ว่า SA จำลองกระบวนการหลอมโลหะ

ใช้ใน ANN

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

อัลกอริทึม

Step 1 - สร้างโซลูชันแบบสุ่ม

Step 2 - คำนวณต้นทุนโดยใช้ฟังก์ชันต้นทุน

Step 3 - สร้างโซลูชันใกล้เคียงแบบสุ่ม

Step 4 - คำนวณต้นทุนโซลูชันใหม่โดยใช้ฟังก์ชันต้นทุนเดียวกัน

Step 5 - เปรียบเทียบต้นทุนของโซลูชันใหม่กับโซลูชันเก่าดังนี้ -

ถ้า CostNew Solution < CostOld Solution จากนั้นย้ายไปที่โซลูชันใหม่

Step 6 - ทดสอบเงื่อนไขการหยุดซึ่งอาจเป็นจำนวนครั้งสูงสุดของการทำซ้ำที่ถึงหรือได้รับโซลูชันที่ยอมรับได้