ค่า Null-space ของเมทริกซ์หนาแน่นแบบสี่เหลี่ยมผืนผ้า


16

ได้รับเมทริกซ์หนาแน่นR เมตร× n , > > n ; ม. x ( เมตร) 100000สิ่งที่เป็นวิธีที่ดีที่สุดที่จะหาพื้นฐาน null พื้นที่ภายในบางอดทนε ?

ARm×n,m>>n;max(m)100000
ϵ

จากพื้นฐานนั้นฉันสามารถพูดได้หรือไม่ว่า cols บางอันนั้นขึ้นอยู่กับเส้นตรงภายในϵ ? กล่าวอีกนัยหนึ่งว่ามีการคำนวณพื้นฐานของช่องว่าง null คอลัมน์ใดของAต้องถูกลบออกเพื่อให้ได้เมทริกซ์ที่ไม่อยู่ในตำแหน่ง?

การอ้างอิงได้รับการชื่นชม

คำตอบ:


12

วิธีมาตรฐานสำหรับการกำหนดพื้นที่ว่างของเมทริกซ์คือการใช้การสลายตัว QR หรือ SVD หากความแม่นยำเป็นสิ่งสำคัญยิ่ง SVD นั้นเป็นที่ต้องการ การสลายตัว QR เร็วขึ้น

A=UΣVHVΣmax(m,n)εε

การใช้ QR สลายถ้าและยศเป็นแล้วสุดท้ายคอลัมน์ของทำขึ้น nullspace ของสมมติว่า QR สลายเป็นอันดับที่เปิดเผย ในการกำหนดให้คำนวณจำนวนของรายการในแนวทแยงมุมหลักของที่ขนาดเกินกว่าเกณฑ์ความคลาดเคลื่อน (คล้ายกับที่ใช้ในแนวทาง SVD)AT=QRArnrQArR

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

วิกิพีเดียครอบคลุมหัวข้อเหล่านี้ที่นี่


Geoff พูดถึงในแง่ของ QR สมมติว่าฉันมีการสลายตัวฉันจะเชื่อมโยงพื้นฐานของพื้นที่ว่างและคอลัมน์ในเมทริกซ์ดั้งเดิมได้อย่างไร กล่าวอีกนัยหนึ่งฉันควรลบคอลัมน์ใดออกจากเพื่อกำจัดพื้นที่ว่าง? จุดนี่คือการทำงานร่วมกับตัวเองและไม่ได้มีการสลายตัว AA
Alexander

รูทีนที่คำนวณการแยกย่อย QR ปกติจะมีตัวเลือกในการคืนค่าการเปลี่ยนแปลงเวกเตอร์ที่ระบุว่าคอลัมน์นั้นได้รับอนุญาตให้รับการแยกตัว QR ได้อย่างไร รายการสุดท้ายของเวกเตอร์การเปลี่ยนแปลงนั้นจะสอดคล้องกับแถวของA (คอลัมน์ของA T ) ที่อยู่ใน nullspace รายการrแรกของเวกเตอร์นั้นสอดคล้องกับคอลัมน์ของA Tที่เป็นอิสระเชิงเส้น ฉันไม่แน่ใจว่าคุณหมายถึงอะไรโดย "กำจัดพื้นที่ว่าง" คุณหมายถึงคุณต้องการลบคอลัมน์ของAเพื่อรับเมทริกซ์ที่ไม่อยู่ในรูป nrAATrATA
Geoff Oxberry

ใช่ฉันหมายถึงอย่างนั้น ฉันจะดูการเรียงสับเปลี่ยนขอบคุณ
Alexander

นั่นเป็นคำถามที่แตกต่าง สิ่งที่คุณก็จะทำแทนคือคำนวณ QR สลาย (หรือ SVD) ของ หากคุณคำนวณการสลายตัว QR ของAคุณสามารถคำนวณอันดับของAตามคำตอบข้างต้น (ไม่จำเป็นต้องเปลี่ยนเมทริกซ์) จากนั้นรายการrแรก(โดยที่rคืออันดับของA ) ของเวกเตอร์การเปลี่ยนแปลงที่สอดคล้องกัน กับคอลัมน์ที่เป็นอิสระจาก อัลกอริทึมแบบเดียวกันนี้ใช้กับ SVD ถ้าคุณสามารถคืนค่าเวกเตอร์การเปลี่ยนแปลงพร้อมกับการสลายตัวนั่นควรให้ข้อมูลที่จำเป็น AAArrAA
Geoff Oxberry

8

ถ้าเป็นคำถามของคุณบ่งชี้ว่าคุณสามารถบันทึกการทำงานบางอย่างเป็นครั้งแรกโดยการเลือกดัชนีตั้งผมของP 5 n (พูด) แถวสุ่มและใช้ฉากตัวประกอบT ฉัน: = Q R (QR-factorization คือหนึ่งที่Qคือ sqare และRเป็นรูปสี่เหลี่ยมของอันดับrและคอลัมน์n - rที่เหลืออยู่ของRเป็นศูนย์การใช้ตัวประกอบ QR แบบเปลี่ยนแปลงจะช่วยเพิ่มความมั่นคงแล้วการเปลี่ยนแปลงจะต้องถูกพิจารณาใน สูตรละเอียดเพิ่มเติม)mnIp5nAI:T=QRQRrnrR

โดยปกติแล้วจะทำให้คุณมีสเปซมากต่ำมิติทอดคอลัมน์ของสุดท้ายn - Rคอลัมน์ของQ สเปซนี้มีพื้นที่ว่างของ ตอนนี้รับอีกชุดดัชนีเคลื่อนสุ่มและคำนวณตัวประกอบ QR ของ( ฉัน: N ) T คูณพื้นที่ว่างที่เป็นผลลัพธ์ทางด้านซ้ายด้วยNเพื่อรับN ที่ปรับปรุงแล้วอาจมีขนาดที่ต่ำกว่า ทำซ้ำจนกว่าขนาดของN จะไม่ลดลงอีกต่อไป จากนั้นคุณอาจมีพื้นที่ว่างที่ถูกต้องและสามารถตรวจสอบได้โดยการคำนวณA NNnrQA(AI:N)TNNNAN. หากสิ่งนี้ยังไม่สามารถทำได้ให้ทำซ้ำอีกครั้งด้วยแถวที่สำคัญที่สุด

แก้ไข: เมื่อคุณมีคุณสามารถหาชุดJสูงสุดของคอลัมน์อิสระเชิงเส้นของAโดยการแยกตัวประกอบแบบมุมฉากของN T = Q Rด้วยการหมุน อันที่จริงดัชนีJ ที่ไม่ได้ถูกเลือกให้เป็น pivots จะมีคุณสมบัตินี้NJANT=QRJ


+1 สำหรับวิธีที่มีประสิทธิภาพในการกำหนด nullspace ของเมทริกซ์ขนาดใหญ่ ฉันจะต้องจำไว้เพื่อปรึกษาคำตอบนี้ในภายหลังเมื่อฉันต้องการมัน
Geoff Oxberry

แน่นอนว่าฟังดูสมเหตุสมผล แต่การฝึกอบรมของฉันพอดีกับ RAM ขนาด 16 GB ดังนั้นฉันจะอยู่กับมาตรฐาน matlab qr
Alexander

ศ. Neumaier ฉันตัดสินใจทดสอบอัลกอริทึมนั้น แต่ฉันไม่เข้าใจว่าคืออะไรและ "คำนวณตัวประกอบการ QR ของ( A I : N ) T " หมายความว่าอย่างไร คุณช่วยอธิบายเพิ่มเติมอีกหน่อยได้ไหม N(AI:N)T
Alexander

ฉันแก้ไขคำตอบของฉันเล็กน้อย คำนวณโดยสูตรของ Geoff Oxberry N
อาร์โนลด์ Neumaier

ขอขอบคุณ. ฉันใช้มัน แต่เท่าที่ผมเห็นขั้นตอนวิธีการนี้ไม่อนุญาตให้มีการกำหนดฉันชุดคอลัมน์ linearly อิสระของ(เนื่องจากเราย่อยสลายT ฉัน:มากกว่าฉัน: ) แต่เพียงจะช่วยให้การประเมินพื้นฐาน nullspace ตัวเอง? AAI:TAI:
Alexander
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.