ทำไมค่าเริ่มต้นของเมทริกซ์เชิงบรรทัดคือค่าสเปกตรัมของสเปกตรัมไม่ใช่ค่ามาตรฐานของ Frobenius


17

สำหรับเวกเตอร์นอร์มค่า L2 norm หรือ "Euclidean distance" เป็นคำจำกัดความที่ใช้กันอย่างแพร่หลายและเป็นธรรมชาติ แต่ทำไมนิยาม "บรรทัดฐาน" ที่ใช้มากที่สุด "หรือ" เริ่มต้น "สำหรับเมทริกซ์จึงเป็นบรรทัดฐานสเปกตรัมแต่ไม่ใช่มาตรฐาน Frobenius (ซึ่งคล้ายกับบรรทัดฐาน L2 สำหรับเวกเตอร์)

นั่นมีบางอย่างเกี่ยวข้องกับอัลกอริทึมซ้ำ / พลังเมทริกซ์ (ถ้ารัศมีสเปกตรัมน้อยกว่า 1 ดังนั้นอัลกอริทึมจะมาบรรจบกัน)?


  1. มันมักจะโต้แย้งสำหรับคำเช่น "ใช้มากที่สุด", "เริ่มต้น" คำว่า "เริ่มต้น" ดังกล่าวข้างต้นจะมาจากชนิดกลับเริ่มต้นในฟังก์ชั่นMatlab normในRบรรทัดฐานเริ่มต้นสำหรับเมทริกซ์คือ L1 norm ทั้งสองเป็น "ผิดธรรมชาติ" เพื่อฉัน (สำหรับเมทริกซ์ก็ดูเหมือนว่า "ธรรมชาติ" ที่จะทำi,jai,j2ชอบในเวกเตอร์) (ขอบคุณสำหรับ @ usεr11852และความคิดเห็นของ @ whuber และขออภัยในความสับสน)

  2. อาจจะขยายการใช้งานของเมทริกซ์บรรทัดฐานจะช่วยให้ฉันเข้าใจเพิ่มเติมหรือไม่


4
ฉันไม่แน่ใจว่าบรรทัดฐานของสเปกตรัมถูกใช้อย่างกว้างขวางที่สุด ตัวอย่างเช่น Frobenius norm ใช้สำหรับ NNMF และโดยปกติเมื่อประมาณวิธีแก้ปัญหาเมทริกซ์ corr / covariance ที่ไม่ใช่ Pos.Def และถูกทำให้เป็นสถานะปกติ Def โดยทั่วไป Forbenius norm เป็นบรรทัดฐาน "องค์ประกอบที่ชาญฉลาด" ต่อ se ในขณะที่บรรทัดฐานสเปกตรัมขึ้นอยู่กับค่าลักษณะเฉพาะดังนั้นมันจึงค่อนข้าง "สากล" แต่นี่เป็นเรื่องของความเห็น ตัวอย่างเช่น " เมทริกซ์พีชคณิต " ของ Gentle มีตัวอักษรชื่อ: " The Frobenius Norm -" ปกติ "Norm " ชัดเจนดังนั้นบรรทัดฐานของสเปกตรัมไม่ใช่บรรทัดฐานเริ่มต้นสำหรับทุกคน
usεr11852พูดว่า Reinstate Monic

2
@ hxd1011: ใน MATLAB เป็นอย่างน้อยสิ่งนี้ทำเพราะบรรทัดฐานสเปกตรัมเป็นจริงเมทริกซ์L 2เมทริกซ์บรรทัดฐานเป็นบรรทัดฐานยุคลิดชนิดตั้งแต่มันถูกชักนำโดยบรรทัดฐานเวกเตอร์ยูคลิดที่| | A | | 2 = สูงสุด| | x | | 2 = 1 | | A x | | 2 . นั่นคือการจับเกี่ยวกับการมีบรรทัดฐานที่เหนี่ยวนำสำหรับเมทริกซ์พวกเขาถูกเหนี่ยวนำโดยเวกเตอร์นอร์มL2L2||A||2=max||x||2=1||Ax||2. ฉันคิดว่าความคิดนี้อยู่เบื้องหลัง R ด้วย มันสมเหตุสมผลสำหรับnormคำสั่ง"default" ที่จะคืนค่าบรรทัดฐานเดิมเสมอ
usεr11852พูดว่า Reinstate Monic

3
ฉันไม่เห็นด้วยว่าค่าเริ่มต้นคือ Euclidian และที่ใช้กันมากที่สุดคือ Spectral
Aksakal

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

5
@ usεr11852ขอบคุณที่ชี้ให้เห็น มันเป็นสิ่งสำคัญที่ข้อความของคำถามรวมถึงข้อมูลดังกล่าวทั้งหมด อย่าพึ่งพาคนที่อ่านความคิดเห็นโดยเฉพาะเมื่อมีคนมากมาย บังเอิญหน้าช่วยเหลือสำหรับ "norm {base}" ในสำเนาของฉันRแสดงบรรทัดฐานL1เป็นค่าเริ่มต้นไม่ใช่บรรทัดฐานสเปกตรัม
whuber

คำตอบ:


13

โดยทั่วไปฉันไม่แน่ใจว่าบรรทัดฐานของสเปกตรัมถูกใช้อย่างกว้างขวางที่สุด ยกตัวอย่างเช่นบรรทัดฐาน Frobenius จะใช้สำหรับการแก้ปัญหาโดยประมาณfactorisation เมทริกซ์ที่ไม่ใช่เชิงลบหรือความสัมพันธ์ / ความแปรปรวนเมทริกซ์เรกู ผมคิดว่าส่วนหนึ่งของคำถามนี้ว่าเกิดจากความผิดทางอาญาคำศัพท์บางคน (รวมตัวเอง) เมื่อพูดถึงบรรทัดฐาน Frobeniusเป็นบรรทัดฐานเมทริกซ์แบบยุคลิด เราไม่ควรเพราะจริง ๆ แล้วเมทริกซ์L2เมทริกซ์ (เช่น. สเปกตรัมของสเปกตรัม) คือสิ่งที่เหนี่ยวนำให้เกิดเมทริกซ์เมื่อใช้เวกเตอร์L2เวกเตอร์ บรรทัดฐาน Frobenius นั้นเป็นองค์ประกอบที่ชาญฉลาด: , ในขณะที่L2matrix norm (||A||2=||A||F=i,jai,j2L2) ขึ้นอยู่กับค่าเอกพจน์ดังนั้นมันจึงมากกว่า "univeral" (สำหรับโชคของคำที่ดีกว่าหรือไม่)บรรทัดฐานL2เมทริกซ์เป็นบรรทัดฐานแบบยุคลิดเนื่องจากมันถูกเหนี่ยวนำโดยเวกเตอร์แบบยุคลิดที่ซึ่ง| | A| | 2=สูงสุด | | x | | 2 = 1 | | Ax| | 2. มันจึงเป็นบรรทัดฐานที่เหนี่ยวนำสำหรับเมทริกซ์เพราะมันถูกเหนี่ยวนำโดย||A||2=λmax(ATA))L2||A||2=max||x||2=1||Ax||2vector norm , vector norm ในกรณีนี้L2

น่าจะเป็นจุดมุ่งหมาย MATLAB เพื่อให้บรรทัดฐานโดยค่าเริ่มต้นเมื่อใช้คำสั่ง; ผลที่ตามมาก็คือมันให้เวกเตอร์แบบยุคลิดแต่มันก็มีเมทริกซ์เมทริกซ์L 2เช่นกัน บรรทัดฐานสเปกตรัมเมทริกซ์ (มากกว่าที่ยกมาผิด " Frobenius / ยุคลิดเมทริกซ์บรรทัดฐาน ") สุดท้ายให้ฉันทราบว่าสิ่งที่เป็นบรรทัดฐานเริ่มต้นเป็นเรื่องของความคิดเห็นที่จะขยาย: ตัวอย่างเช่น " พีชคณิตเมทริกซ์ - ทฤษฎีการคำนวณและการประยุกต์ใช้ในสถิติ " ของ JE Gentle คือการตั้งชื่อ: " The Frobenius " เรื่องของเรื่องคือนอร์ม - เรื่องปกติ“ ปกติ”L2normL2"; ดังนั้นเห็นได้ชัดว่าบรรทัดฐานสเปกตรัมไม่ได้เป็นบรรทัดฐานเริ่มต้นสำหรับทุกฝ่ายพิจารณา! :) ตามความเห็นโดย @amoeba ชุมชนที่แตกต่างกันอาจมีการประชุมคำศัพท์ที่แตกต่างกันมันไปโดยไม่บอกว่าฉันคิดว่าหนังสือของ Gentle เป็นทรัพยากรอันมีค่าในเรื่อง Lin. แอปพลิเคชั่นพีชคณิตในสถิติและฉันจะให้คุณดูมันต่อไป!


1
คำตอบที่ดี !! ช่วยฉันได้มาก! A2=maxx2=1Ax2
Haitao Du

ฉันดีใจที่ฉันสามารถช่วย โปรดจดคำตอบอื่น ๆ ไว้เช่นกัน พวกเขาค่อนข้างลึกซึ้ง
usεr11852กล่าวว่า Reinstate Monic

8

ส่วนหนึ่งของคำตอบอาจเกี่ยวข้องกับการคำนวณเชิงตัวเลข

เมื่อคุณแก้ระบบ

Ax=b
ด้วยความแม่นยำ จำกัด คุณจะไม่ได้รับคำตอบที่ถูกต้องสำหรับปัญหานั้น คุณได้รับการประมาณx~เนื่องจากข้อ จำกัด ของจำนวนคณิตศาสตร์ที่ จำกัด ดังนั้นAx~bในแง่ที่เหมาะสมบางอย่าง โซลูชันของคุณเป็นอย่างไร มันอาจเป็นคำตอบที่แน่นอนสำหรับระบบอื่น ๆ เช่น
A~x~=b~
ดังนั้นสำหรับx~จะมียูทิลิตี้ tilde-system จะต้องใกล้เคียงกับระบบดั้งเดิม:
A~A,b~b
หากขั้นตอนวิธีการของคุณในการแก้ระบบการตอบสนองความเดิมว่าทรัพย์สินแล้วมันจะเรียกว่ามีเสถียรภาพย้อนหลัง ตอนนี้วิเคราะห์ที่ถูกต้องของวิธีการที่แตกต่างใหญ่A~A,b~bเป็นที่สุดก็นำไปสู่ข้อผิดพลาดในขอบเขตที่จะแสดงเป็นA~A,b~b สำหรับการวิเคราะห์บางตัวl1norm (ผลรวมคอลัมน์สูงสุด) เป็นวิธีที่ง่ายที่สุดในการผลักดันสำหรับlอื่น ๆl norm (ผลรวมแถวสูงสุด) เป็นวิธีที่ง่ายที่สุดในการผลักดัน (สำหรับส่วนประกอบของการแก้ปัญหาในกรณีของระบบเชิงเส้นเป็นต้น) และสำหรับคนอื่น ๆl2สเปกตรัมเชิงบรรทัดฐานนั้นเหมาะสมที่สุด (ชักนำโดยl2ดั้งเดิม2 vector norm, ดังที่ได้อธิบายไว้ในคำตอบอื่น ) สำหรับงานม้าของการคำนวณทางสถิติในการผกผันเมทริกซ์ psd เมทริกซ์การสลายตัว Cholesky (เรื่องไม่สำคัญ: เสียงแรกคือ [x] ในอักษรกรีก "chi" ไม่ใช่ [tʃ] เหมือนกับ "การไล่ล่า") ซึ่งเป็นวิธีที่สะดวกที่สุด ติดตามขอบเขตข้อผิดพลาดคือบรรทัดฐานl2 ... แม้ว่าบรรทัดฐาน Frobenius ก็ปรากฏขึ้นในผลลัพธ์บางอย่างเช่นในการผกผันเมทริกซ์ที่แบ่งพาร์ติชัน


3
+1 โดยเฉพาะอย่างยิ่งสำหรับเรื่องไม่สำคัญ ฉันคิดเสมอว่ามันเริ่มต้นด้วย [k] ตอนนี้ฉันมองมันและเห็นได้ชัดว่าAndré-Louis Choleskyเป็นคนดีในโปแลนด์ (เกิดในฝรั่งเศส) ไม่ควรจะเป็นเสียง "ด" เช่นเดียวกับในโชแปง? อย่างไรก็ตามในภาษารัสเซีย Cholesky เขียนตามประเพณีดั้งเดิมว่าasолецкий
อะมีบาพูดว่า Reinstate Monica

3
χ

ใช่ ... ฉันคิดว่าในฐานะรัสเซียที่มีชื่อโปแลนด์และเป็นครั้งแรกที่อ่านว่ารัสเซียสะกดทศวรรษหรือดังนั้นก่อนที่จะเห็นครั้งแรกที่สะกดเป็นตัวอักษรละตินฉันมีความคิดวิธีการออกเสียง;)
StasK

2
ใครสนใจว่าจะออกเสียงอย่างไรให้ใช้สิ่งที่น่ารังเกียจ
Mark L. Stone

7

The answer to this depends on the field you're in. If you're a mathematician, then all norms in finite dimensions are equivalent: for any two norms a and b, there exist constants C1,C2, which depend only on dimension (and a,b) such that:

C1xbxaC2xb.

This implies that norms in finite dimensions are quite boring and there is essentially no difference between them except in how they scale. This usually means that you can choose the most convenient norm for the problem you're trying to solve. Usually you want to answer questions like "is this operator or procedure bounded" or "does this numerical process converge." With boundedness, you only usually care that something is finite. With convergence, by sacrificing the rate at which you have convergence, you can opt to use a more convenient norm.

For example, in numerical linear algebra, the Frobenius norm is sometimes preferred because it's a lot easier to calculate than the euclidean norm, and also that it naturally connects with a wider class of Hilbert Schmidt operators. Also, like the Euclidean norm, it's submultiplictive: ABFAFBF, unlike say, the max norm, so it allows you to easily talk about operator multiplication in whatever space you're working in. People tend to really like both the p=2 norm and the Frobenius norm because they have natural relations to both the eigenvalues and singular values of matrices, along with being submultiplictive.

For practical purposes, the differences between norms become more pronounced because we live in a world of dimensions and it usually matters how big a certain quantity is, and how it's measured. Those constants C1,C2 above are not exactly tight, so it becomes important just how much more or less a certain norm xa is compared to xb.


7
Unfortunately, the term "equivalence", as in norms, can and has been misinterpreted, including by people with Ph.D.s in Computer Science. I needed to implement a certain non-trivial calculation using a 2-norm, and this guy produced a solution using a 1-norm, because that was much easier, and after all, he had heard that all norms are equivalent. Well, being off by a factor of (up to) n was not adequate for me. In that application, I could only afford to be off by a factor of 1.
Mark L. Stone

@MarkL.Stone: Right, hence the distinction between theoretical (really: topological) and practical.
Alex R.

@MarkL.Stone: +1 Clearly he was not unit-testing his code. :) (Nice anecdote! I will definitely use it when talking about miscommunications in technical computing!)
usεr11852 says Reinstate Monic

@usεr11852 ha ha, no, it's worse than that. He did "unit-test" the code as correctly implementing the calculation based on the 1-norm. It failed my system-level examination because it used the wrong norm.
Mark L. Stone

@MarkL.Stone: Oh... that's a pity! Having said that, I don't know if you were using an particular hardware configuration or something but to begin with coding a norm calculation from scratch is no-no; there are mathematics libraries one should use to avoid such issues altogether.
usεr11852 says Reinstate Monic
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.