ทำไมนิวตันถึงไม่ใช้วิธีการอย่างกว้างขวางในการเรียนรู้ของเครื่อง?


132

นี่คือสิ่งที่ทำให้ฉันหยุดอยู่พักหนึ่งและฉันไม่พบคำตอบที่น่าพอใจทางออนไลน์ดังนั้นที่นี่จะไป:

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


24
สำหรับเครือข่ายประสาทเทียมdeeplearningbook.orgมาตรา "8.6 วิธีการสั่งซื้อลำดับที่สองโดยประมาณ" ให้ภาพรวมที่ดี ในบทสรุป "นอกเหนือจากความท้าทายที่สร้างขึ้นโดยคุณสมบัติบางอย่างของฟังก์ชันวัตถุประสงค์เช่นจุดอานการประยุกต์ใช้วิธีของนิวตันในการฝึกอบรมโครงข่ายประสาทขนาดใหญ่นั้นถูก จำกัด ด้วยภาระการคำนวณที่สำคัญ มีทางเลือกอื่นที่พยายามรับประโยชน์จากวิธีการของนิวตันในขณะที่ก้าวข้ามอุปสรรคการคำนวณ แต่พวกเขามีปัญหาของตัวเอง
Franck Dernoncourt

1
ดูคำถามและความคิดเห็นที่เกี่ยวข้อง, stats.stackexchange.com/questions/232305/…
Haitao Du

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

1
เป็นที่น่าสังเกตว่าในการเรียนรู้ด้วยเครื่องจักรนอกเหนือจากการเรียนรู้อย่างลึกซึ้ง L-BFGS (ซึ่งโดยประมาณใช้วิธีของนิวตันโดยประมาณ) เป็นอัลกอริทึมการเพิ่มประสิทธิภาพที่ใช้กันทั่วไป
Dougal

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

คำตอบ:


95

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


5
เป็นที่น่าสังเกตว่า (สิ่งต่าง ๆ ขึ้นอยู่กับ) วิธีGauss-Newtonอาจเป็นเรื่องธรรมดามากขึ้น นี่คือความเชี่ยวชาญของนิวตันถึงไม่เชิงเส้นกำลังสองน้อยที่สุด
GeoMatt22

4
ฉันจะไม่เรียกว่าเกาส์ - นิวตันเป็นความเชี่ยวชาญเฉพาะของนิวตันถึงสแควร์สไม่เชิงเส้น ฉันจะเรียกมันว่าการประมาณนิวตันของไอเดียที่ไม่ถูกต้องสำหรับสี่เหลี่ยมที่ไม่เชิงเส้นซึ่งใช้การประมาณแบบเฮสเซียนที่ไม่ถูกต้องมากขึ้น
Mark L. Stone

1
@ MarkL.Stone จุดประสงค์ฉันพยายามที่จะไม่เข้าไปในด้านเทคนิค :) มันเป็นความจริงที่วิธีการสไตล์เกาส์ - นิวตันพยายามที่จะ "ปลอม" ลำดับที่ 2 โดยมีข้อมูลการสั่งซื้อครั้งแรกเท่านั้น โดยส่วนตัวฉันไม่เคยใช้วิธีของนิวตันในการเพิ่มประสิทธิภาพเพียงแค่ Gauss-Newton (หรือ LM หรือ ~ คล้าย UKF) หรือวิธี DFO-SQP (เช่นBOBYQA ) "Optimality" เป็นคำถามที่ยุ่งยากที่ฉันจะบอกว่า ... สำหรับปัญหา ML และเปรียบเทียบกับปัญหาการเพิ่มประสิทธิภาพการออกแบบทางวิศวกรรมความน่าเชื่อถือ / ข้อมูลของ "Hessian ท้องถิ่น" นั้นอาจเป็นที่น่าสงสัย บางที DFO-SQP ที่ไม่ใช่ในพื้นที่คือ ~ "สุ่มนิวตัน" (เช่น "ออนไลน์")
GeoMatt22

1
ในความคิดที่สองวิธีการของ DFO-SQP มักจะไม่ใช่แบบโลคอลในพื้นที่พารามิเตอร์แทนที่จะเป็นชุดข้อมูล ยูเคเอฟอาจจะใกล้เคียงที่สุดในรสชาติให้ "สุ่มนิวตัน" มันเป็นออนไลน์ w / หน่วยความจำ จำกัด ... แต่มันได้อย่างมีประสิทธิภาพถือว่ารัฐบวกที่ชัดเจน (เช่น Gaussian ประมาณ.)
GeoMatt22

1
ที่จริงแล้วเป็นเหตุผลที่ทำให้เข้าใจผิดเนื่องจากมีวิธีการสั่งซื้อลำดับที่สองเช่น CG ที่ไม่ต้องการการคำนวณแบบ hessian k การทำซ้ำของ CG จะมีราคาเพียง kN มันถูกต้องที่ CG จะจับคู่ทฤษฎีกับนิวตันเท่านั้นที่ k = N แต่จริงๆแล้วคุณไม่ต้องการการทำซ้ำหลายครั้ง
user25322

40

ผู้คนจำนวนมากควรใช้วิธีของนิวตันในการเรียนรู้ของเครื่อง * ฉันพูดแบบนี้ในฐานะคนที่มีพื้นฐานในการเพิ่มประสิทธิภาพเชิงตัวเลขซึ่งได้ขลุกอยู่ในการเรียนรู้ของเครื่องในช่วงสองสามปีที่ผ่านมา

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

  • การใช้การค้นหาเส้นด้วยเงื่อนไขของวูล์ฟหรือการใช้หรือเชื่อถือได้ในภูมิภาคช่วยป้องกันการลู่เข้าหาจุดอาน การลงทางลาดที่เหมาะสมควรทำเช่นนี้ กระดาษอ้างอิงในคำตอบของ Cam.Davidson.Pilonชี้ให้เห็นปัญหาเกี่ยวกับ "วิธีการของนิวตัน" ในการปรากฏตัวของจุดอาน แต่การแก้ไขที่พวกเขาสนับสนุนยังเป็นวิธีการของนิวตัน

  • การใช้วิธีการของนิวตันไม่ต้องการการสร้างทั้งหมด (หนาแน่น) Hessian; คุณสามารถใช้ค่าผกผันของ Hessian กับเวกเตอร์ด้วยวิธีการวนซ้ำที่ใช้เฉพาะเมทริกซ์ - เวกเตอร์เท่านั้น (เช่นวิธี Krylov เช่นการไล่ระดับสีแบบคอนจูเกต) ดูตัวอย่างวิธีการ CG-Steihaug trust Region

  • คุณสามารถคำนวณผลิตภัณฑ์เมทริกซ์เวกเตอร์ของ Hessian ได้อย่างมีประสิทธิภาพโดยการแก้สมการ adjoint ลำดับที่สูงกว่าของรูปแบบเดียวกับสมการ adjoint ที่ใช้ในการคำนวณการไล่ระดับสี (เช่นการทำงานของสองขั้นตอน backpropagation ในการฝึกอบรมโครงข่ายประสาทเทียม)

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

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

สำหรับข้อมูลพื้นฐานเกี่ยวกับแนวคิดเหล่านี้ฉันแนะนำหนังสือ"การเพิ่มประสิทธิภาพเชิงตัวเลข"โดย Nocedal และ Wright

* แน่นอนว่าวิธีการของนิวตันจะไม่ช่วยคุณในการใช้ L1 หรือฟังก์ชั่นอื่น ๆ ที่คล้ายกันกับการบีบอัด / การเบาบางที่คล้ายกันเนื่องจากพวกเขาขาดความเรียบเนียนที่จำเป็น


2
ฉันคิดว่าเรากำลังตกลงกันอย่างรุนแรงไม่ใช่กับคนอื่น
Mark L. Stone

1
นั่นเหมือนกับการเปรียบเทียบว่าอังกฤษหรือสหรัฐอเมริกาผลิตนักคณิตศาสตร์วิจัยที่ดีกว่าโดยการเปรียบเทียบความสามารถทางคณิตศาสตร์ของการเลิกเรียนมัธยมปลายอายุ 26 ปีแทนที่จะเปรียบเทียบระดับสูงของนักศึกษาระดับบัณฑิตศึกษาคณิตศาสตร์ที่ออกมาจากโรงเรียนที่ดีที่สุดของแต่ละประเทศ ไม่มีการเซ็นชื่อปิดผนึกและส่งมอบและฉันหมายความว่าไม่มีใครเปลี่ยนแปลงหรือถอนออกตอนนี้ Incroyable
Mark L. Stone

3
@ MarkL.Stone ดูเหมือนว่าการสนทนาจะเกิดขึ้นที่นี่และถูกลบออกไปในขณะที่ฉันไม่อยู่ อย่างไรก็ตามฉันคิดว่าคุณพูดถูกและเห็นด้วยกันและไม่มีใครอื่น ฉันคิดว่านี่เป็นสิ่งที่คาดหวังจากพื้นฐานของเราเมื่อเทียบกับคนอื่นที่นี่ อย่างที่คุณคาดหวังฉันไม่ได้คิดถึงบทความที่เกี่ยวข้องมากนัก ในทางกลับกันฉันคิดว่าวิธีการของ Riemannian manifold ของนิวตันที่หนึ่งยิงวิถีทางภูมิศาสตร์ในทิศทางการค้นหาของนิวตันเป็นเทคนิคที่มีสัญญามากมายสำหรับปัญหาที่ยากมาก
Nick Alger

2
คุณจะจัดการกับชุดฝึกอบรมขนาดใหญ่ได้อย่างไร หากคุณมีตัวอย่างการฝึกอบรมเช่น 1 ล้านตัวอย่างเพียงแค่ประเมินวัตถุประสงค์การปรับให้เหมาะสมปัจจุบันต้องทดสอบตัวอย่าง 1 ล้านตัวอย่าง และคุณต้องทำหลายครั้งระหว่างการค้นหาบรรทัด ดังนั้นเมื่อคุณทำขั้นตอนที่ 1 ของนิวตันแล้ว Stochastic Gradient Descent จะทำการอัปเดตไม่กี่ล้านครั้ง
nikie

2
Nick และ @ MarkL.Stone: คุณกำลังพูดถึงวิธีการนี้เป็นหลักหรือไม่? นี่คือสิ่งที่ได้รับความนิยมอย่างสั้น ๆ ในการเรียนรู้อย่างลึกล้ำโดยเฉพาะอย่างยิ่งสำหรับอวนที่เกิดขึ้นอีก แต่เนื่องจากผมไม่ได้รับความนิยมผมคิดว่าเพราะมันไม่ได้ใช้งานเชิงประจักษ์ที่ดีกว่าวิธีการไล่ระดับสีแบบปรับตัว หากพวกเขากำลังทำอะไรผิดพลาดและคุณแก้ไขสิ่งที่มันเป็นและแสดงให้เห็นว่าโดยทั่วไปมีประสิทธิภาพสูงกว่าตัวแปรมาตรฐาน SGD ปัจจุบันอาดัมคุณอาจสร้างผลกระทบใหญ่โต: กระดาษของอดัมมีการอ้างถึง 1,345 รายการในสองปี ....
Dougal

33

ฉันเพิ่งเรียนรู้สิ่งนี้ด้วยตัวเอง - ปัญหาคือการแพร่กระจายของจุดอานในพื้นที่มิติสูงซึ่งวิธีการของนิวตันต้องการมาบรรจบกัน ดูบทความนี้: การระบุและการโจมตีปัญหาจุดอานในมิติสูงเพิ่มประสิทธิภาพที่ไม่นูน

อันที่จริงอัตราส่วนของจำนวนของจุดอานไปยังจุดต่ำสุดในพื้นที่เพิ่มขึ้นแบบทวีคูณด้วยมิติ

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


3
คุณสามารถเพิ่มคำอธิบายว่าทำไมจึงเป็นเช่นนั้น ในทางทฤษฎีวิธีการของนิวตันขึ้นรูปด้วยการลดลงของความลาดชันแบบถ่วงน้ำหนักด้วยน้ำหนักที่ "ดีที่สุด" สำหรับ eigenvector แต่ละตัว
nbubis

4
สิ่งที่บทความกล่าวเกี่ยวกับวิธีการของนิวตัน "ต้องการ" จุดบรรจบกันที่จุดอานม้านั้นเป็นจริงเฉพาะสำหรับการนำขยะไปใช้ในวิธีการของนิวตันเท่านั้น
Mark L. Stone

กระดาษทำการแก้ไขปัญหาในแง่ของค่าลักษณะเฉพาะและค่าลักษณะเฉพาะและใช้เพื่อแสดงให้เห็นว่าการไล่ระดับสีเคลื่อนตัวออกจากจุดอาน: มันเคลื่อนไปทางจุดอานไปในทิศทางของลบเวกเตอร์อิเล็กทรอนิกส์ แต่มันเคลื่อนที่ไปในทิศทางของ e-vector ที่เป็นบวก, ดังนั้นในที่สุดก็ออกจากจุดอาน ในทางกลับกันนิวตันไม่มีการรับประกันดังกล่าว
Elizabeth Santorella

อัลกอริทึมใหม่ที่พวกเขาสนับสนุนในบทความนี้คือ (แตกต่างจาก) วิธีการของนิวตัน มันเป็นวิธีการของนิวตันโดยทั่วไปสำหรับทิศทางของความโค้งเชิงบวกและเชิงลบวิธีของนิวตันสำหรับทิศทางของความโค้งเชิงลบ
Nick Alger

26

การรวมกันของสองเหตุผล:

  • วิธีการของนิวตันดึงดูดจุดอานม้า
  • จุดอานเป็นเรื่องธรรมดาในการเรียนรู้ของเครื่องหรือในความเป็นจริงการเพิ่มประสิทธิภาพหลายตัวแปร

ดูฟังก์ชั่น

f=x2y2
ป้อนคำอธิบายรูปภาพที่นี่

หากคุณใช้วิธีการหลายตัวแปรนิวตันคุณจะได้รับต่อไปนี้

xn+1=xn[Hf(xn)]1f(xn)

มารับHessian :

H=[2fx122fx1x22fx1xn2fx2x12fx222fx2xn2fxnx12fxnx22fxn2].

H=[2002]

กลับด้าน:

[Hf]1=[1/2001/2]

รับการไล่ระดับสี:

f=[2x2y]

รับสมการสุดท้าย:

[xy]n+1=[xy]n[1/2001/2][2xn2yn]=[xy]n[xy]n=[00]

ดังนั้นคุณจะเห็นว่าวิธีการของนิวตันนำคุณไปยังจุดอานที่อย่างไรx=0,y=0

ในทางตรงกันข้ามวิธีการไล่ระดับสีจะไม่นำไปสู่จุดอาน การไล่ระดับสีเป็นศูนย์ที่จุดอาน แต่การก้าวเล็ก ๆ ออกไปจะดึงการเพิ่มประสิทธิภาพออกไปตามที่คุณเห็นจากการไล่ระดับสีด้านบน - การไล่ระดับสีบนตัวแปร y เป็นลบ


1
ขอบคุณที่ฉันจริงเข้าใจวิธีการทำงานจาก A ถึง Z ดังนั้นขอบคุณมากสำหรับตัวอย่างที่ชัดเจนนี้!
greenoldman

อะไรคือจุดโปรดที่นี่?
เบ็น

14

คุณถามคำถามสองข้อ: ทำไมคนไม่ใช้วิธีของนิวตันมากกว่าและทำไมคนจำนวนมากจึงใช้การไล่ระดับสีแบบสุ่มสโตแคสติก? คำถามเหล่านี้มีคำตอบที่แตกต่างกันเนื่องจากมีอัลกอริทึมมากมายที่ช่วยลดภาระการคำนวณของวิธีการของนิวตัน แต่มักจะทำงานได้ดีกว่า SGD

ครั้งแรก: วิธีการของนิวตันใช้เวลานานต่อการทำซ้ำและใช้หน่วยความจำมาก ในฐานะที่เป็น jwimberley ชี้ให้เห็นวิธีการของนิวตันต้องใช้การคำนวณอนุพันธ์สองซึ่งเป็นที่คือจำนวนของคุณสมบัติในขณะที่การคำนวณการไล่ระดับสี เป็นเพียง(N) แต่ขั้นตอนต่อไปคือซึ่งเป็นในการคำนวณ ดังนั้นในขณะที่การคำนวณ Hessian มีราคาแพงการพลิกคว่ำหรือการแก้ปัญหากำลังสองน้อยที่สุดนั้นก็ยิ่งเลวร้ายลง (ถ้าคุณมีคุณสมบัติที่เบาบาง asymptotics ดูดีขึ้น แต่วิธีการอื่น ๆ นอกจากนี้ยังทำงานได้ดีขึ้นดังนั้น sparsity ไม่ได้ทำให้นิวตันที่ค่อนข้างน่าสนใจมากขึ้น.)O ( N 2 ) N g O ( N ) H - 1 g O ( N 3 )HO(N2)NgO(N)H1gO(N3)

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

  • เนื่องจากค่าใช้จ่ายในการกลับไปใช้ Hessian วิธี `` quasi-Newton 'เช่น BFGS โดยประมาณคือHessian ผกผันโดยดูว่าการไล่ระดับสีเปลี่ยนไปในช่วงสองสามขั้นตอนสุดท้ายอย่างไรH1

  • BFGS ยังคงใช้หน่วยความจำมากในการตั้งค่ามิติสูงเนื่องจากมันต้องการการจัดเก็บ ทั้งหมดโดยประมาณของ Hessian หน่วยความจำที่ จำกัด BFGS (L-BFGS) คำนวณทิศทางขั้นตอนต่อไปเนื่องจาก Hessian ผกผันโดยประมาณคูณด้วยการไล่ระดับสี มันไม่ได้เก็บค่า Hessian ผกผันโดยประมาณอย่างชัดเจนO(N2)

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

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


(+1) เป็นที่น่าสังเกตว่า L-BFGS นั้นมีลำดับความซับซ้อนเท่ากันกับการไล่ระดับสีที่เกี่ยวข้องกับจำนวนพารามิเตอร์ นี่ไม่ใช่กรณีของ BFGS ดังนั้นไม่ใช่เพียงส่วนที่ จำกัด ของ L-BFGS ที่ทำให้มันน่าสนใจ
หน้าผา AB

12

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

วิธีการของนิวตันค่อนข้างแพงเมื่อคุณต้องคำนวณ Hessian ในการคำนวณซ้ำครั้งแรก จากนั้นในการทำซ้ำแต่ละครั้งคุณสามารถคำนวณ Hessian ใหม่ทั้งหมด (เช่นเดียวกับวิธีของนิวตัน) หรือเพียงแค่ "อัพเดท" Hessian ของการทำซ้ำก่อนหน้า (ในวิธี quasi-Newton) ซึ่งมีราคาถูก แต่แข็งแกร่งน้อยกว่า

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

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

ระหว่างวิธีการไล่ระดับสีกับวิธีของนิวตันมีวิธีการเช่น Levenberg – Marquardt algorithm (LMA) แม้ว่าฉันจะเห็นชื่อสับสนอยู่บ้าง ส่วนสำคัญคือการใช้การค้นหาที่มีการไล่ระดับมากขึ้นเมื่อสิ่งต่าง ๆ วุ่นวายและสับสนจากนั้นเปลี่ยนเป็นการค้นหาที่ใช้วิธีการของนิวตันมากขึ้นเมื่อสิ่งต่าง ๆ เริ่มมีความเป็นเส้นตรงและเชื่อถือได้มากขึ้น


3
เด็กชายคุณต้องใช้การใช้งานที่แย่มากของนิวตันและควอซี - นิวตัน หากใช้อย่างใดอย่างหนึ่งกับ Hessian ไม่แน่นอนบวกแล้วใช้ภูมิภาคที่เชื่อถือได้หรือทำการค้นหาบรรทัดตามทิศทางของความโค้งเชิงลบ ถ้าเป็นเช่นนั้นพวกเขามีความน่าเชื่อถือมากกว่าโคตรลาดชัน (เช่นลาดลงทางลาดด้วยการค้นหาบรรทัดหรือภูมิภาคที่เชื่อถือได้) ในระยะสั้นเชื้อสาย gradiewnt มีความน่าเชื่อถือน้อยกว่าวิธี Quasi-Newton ที่นำไปใช้งานอย่างถูกต้อง อย่างไรก็ตามเวลาในการคำนวณและความต้องการหน่วยความจำต่อการทำซ้ำเป็นเรื่องที่แตกต่างกัน
Mark L. Stone

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

1
@ElizabethSantorella: ใช่แล้วคุณพูดถูก! ฉันอัพเดตคำตอบแล้ว
Nat

2
ข้อได้เปรียบของวิธีการของนิวตันที่ได้รับการติดตั้งและใช้งานอย่างดีและมีการป้องกันมากกว่าการสืบเชื้อสายที่ลาดชันที่สุดจะเพิ่มความน่าสนใจยิ่งขึ้นฟังก์ชั่นที่ไม่ดี หากคุณกำลังย่อฟังก์ชันกำลังสองที่ดีที่สุดให้เหลืออยู่นั้นให้มี กำลังสองคือเทอม Hessian = Identity matrix จากนั้นโคตรที่ลาดชันนั้นดีมากและก็เหมือนกับวิธีของนิวตัน 1/2xTx
Mark L. Stone

1
ฉันทำกรณีของฉัน ถ้าคุณต้องการที่จะคิดว่าโคตรลาดชันโคตรลาดเป็นสิ่งที่ยอดเยี่ยมโดยเฉพาะอย่างยิ่งในฟังก์ชั่นที่ไม่ดี เคาะตัวเองออก
Mark L. Stone

7

สำหรับขนาดใหญ่ Hessian โดยทั่วไปมีราคาแพงในการจัดเก็บและการแก้ไข สำหรับทิศทางอาจมีราคาแพง นอกจากนี้ยังยากต่อการขนานHd=g

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

บ่อยครั้งที่ต้องการการปรับปรุงมากกว่าการแก้ปัญหาที่แน่นอนซึ่งในกรณีนี้ค่าใช้จ่ายเพิ่มเติมของวิธีการแบบนิวตันหรือนิวตันไม่เป็นธรรม

มีหลายวิธีในการแก้ไขปัญหาข้างต้นเช่นตัวชี้วัดตัวแปรหรือวิธีภูมิภาคเชื่อถือได้

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


0

มีปัญหามากมายเกี่ยวกับการใช้วิธีการของ Newton สำหรับ SGD โดยเฉพาะ:

  • มันต้องการเมทริกซ์ของ Hessian - วิธีการประมาณค่าเช่นจากการไล่ระดับสีที่มีเสียงดังที่มีความแม่นยำเพียงพอในราคาที่เหมาะสม?

  • เฮสเซียนเต็มมีค่าใช้จ่ายสูงเกินไป - เราต้องการข้อ จำกัด บางอย่างเช่นไปที่สเปซ (ซึ่งเป็นสเปซย่อย),

  • H1λ=0

  • วิธีการของนิวตันดึงดูดโดยตรงไปยังจุดปิดที่มีการไล่ระดับเป็นศูนย์ ... ซึ่งมักจะเป็นอานที่นี่ วิธีขับไล่พวกเขาแทน? เช่นนิวตันที่ปราศจากอานม้ากลับด้านทิศทางโค้งเชิงลบ แต่มันต้องมีการควบคุมสัญญาณของค่าลักษณะเฉพาะ

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

เราสามารถเปลี่ยนจากลำดับที่หนึ่งไปเป็นลำดับที่ 2 ในขั้นตอนเล็ก ๆ เช่นเพิ่มการอัปเดตค่าเฉลี่ยเพียง 3 วิธีไปสู่วิธีการโมเมนตัมเราสามารถใส่พาราโบลา MSE ไปพร้อมกันในทิศทางของมันเพื่อการเลือกขนาดขั้นตอนอย่างชาญฉลาด ... ยังสามารถใช้พิกัดที่เหลือสำหรับการไล่ระดับสีพร้อมกัน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.