มีอัลกอริทึม SVD ที่ถูกตัดทอนที่คำนวณค่าเอกพจน์ทีละหนึ่งหรือไม่
ปัญหาของฉัน: ผมอยากจะคำนวณแรกค่าเอกพจน์ (และเวกเตอร์เอกพจน์) ของขนาดใหญ่ที่หนาแน่นเมทริกซ์แต่ผมไม่ทราบว่าสิ่งที่มีค่าที่เหมาะสมของจะเป็น มีขนาดใหญ่ดังนั้นด้วยเหตุผลด้านประสิทธิภาพฉันไม่อยากประเมิน SVD แบบเต็มเพียงเพื่อตัดทอน SV ที่เล็กที่สุดหลังจากนั้นM k M
เป็นการดีที่จะมีวิธีคำนวณค่าเอกพจน์ลำดับจากมากที่สุด ( ) ถึงน้อยที่สุด ( ) ด้วยวิธีนี้ฉันสามารถหยุดการคำนวณหลังจากคำนวณค่าเอกพจน์ th หากต่ำกว่าเกณฑ์σ 1 σ n k σ k / σ 1
มีอัลกอริทึมดังกล่าวอยู่หรือไม่ (โดยเฉพาะอย่างยิ่งเมื่อใช้ Python) ใน googling ของฉันฉันพบเฉพาะฟังก์ชัน SVD ที่ถูกตัดทอนซึ่งใช้ k เป็นพารามิเตอร์ดังนั้นบังคับให้คุณคาดเดาว่าเป็นนิรนัย