Kompleksitas menemukan matriks pseudoinverse

11

Berapa banyak operasi aritmatika yang diperlukan untuk menemukan matriks pseudoinverse Moore-Penrose dari bidang arbitrer?

Jika matriksnya tidak dapat dibalik dan dinilai kompleks, maka itu hanyalah kebalikannya. Menemukan invers membutuhkan waktu, di mana ω adalah konstanta pengali matriks. Teorema 28.2 dalam Pengantar Algoritma Edisi ke-3.O(nω)ω

Jika matriks memiliki baris atau kolom yang independen secara linier dan bernilai kompleks, maka matriks pseudoinverse dapat dihitung dengan A ( A A ) - 1 atau ( A A ) - 1 A ∗ secara berurutan, di mana A adalah konjugat transpose dari A . Secara khusus, ini menyiratkan O ( n ω ) waktu untuk menemukan pseudoinverse dari A .AA(AA)1(AA)1AAAO(nω)A

Untuk matriks umum, algoritma yang saya lihat menggunakan dekomposisi QR atau SVD, yang tampaknya mengambil operasi aritmatika dalam kasus terburuk. Apakah ada algoritma yang menggunakan lebih sedikit operasi?O(n3)

Chao Xu
sumber
Saya memiliki tindak lanjut, Mungkin terlalu dasar tetapi dapat Anda silahkan confirm apa yang n di sini dalam persamaan kompleksitas. Apakah ini dimensi dari sebuah matriks dan bagaimana jika matriks tersebut bukan persegi.?
Mike Pomp
Dalam klaim bahwa invers dapat ditemukan dalam waktu , n memang merupakan dimensi dari matriks kuadrat; jika matriksnya tidak persegi, Anda mungkin dapat mengambil n menjadi dimensi yang lebih besar. O(nω)nn
David Richerby
Karena ini adalah pertanyaan yang mudah, saya sudah menjawabnya di sini. Namun, jika Anda memiliki pertanyaan lebih lanjut, silakan tanyakan pada mereka sebagai halaman sendiri menggunakan tombol "ajukan pertanyaan" di bagian atas halaman. Anda dapat menautkan kembali ke halaman ini untuk memberikan konteks. Situs ini hanya diatur untuk satu pertanyaan per halaman: tidak ada threading dan posting bergerak sesuai dengan suara yang mereka peroleh, sehingga semuanya menjadi sangat berantakan dengan lebih dari satu pertanyaan pada halaman. Ada informasi lebih lanjut di tur singkat kami dan di pusat bantuan kami .
David Richerby

Jawaban:

7

Pertama-tama, orang cenderung lupa bahwa adalah infinite. Setiap kali kita menulis O ( n ω ) , kita sebenarnya bermaksud untuk semua γ > ω , ada algoritma yang berjalan dalam waktu O γ ( n γ ) .ωO(nω)γ>ωOγ(nγ)

Keller-Gehrig menunjukkan (antara lain) bagaimana menyajikan matriks dalam bentuk normal dalam waktu O ( n ω ) . Jika A memiliki peringkat r , maka bentuk normal peringkat A adalah S ( I r 0 0 0 ) T untuk beberapa S terbalik , T dari dimensi yang sesuai; lihat juga Teori Kompleksitas Aljabar, Proposisi 16.13 pada halaman 435.AO(nω)ArA

S(Ir000)T
S,T

A=XYXrYrXrSYrTO(nω)

Yuval Filmus
sumber
Terima kasih atas jawabannya! Saya mendapatkan kertas dan ternyata saya tidak memiliki latar belakang. Apakah ada pengantar / survei yang bagus tentang hasil seperti ini? Saya tahu buku Teori Kompleksitas Aljabar adalah buku yang bagus tapi saat ini sudah keluar dari perpustakaan ...
Chao Xu
1
Mungkin ada catatan kuliah yang relevan, meskipun mungkin yang terbaik untuk melihat buku itu. CLRS (Pengantar Algoritma) juga mengandung beberapa materi yang relevan, seperti kesetaraan antara perkalian matriks dan invers matriks.
Yuval Filmus
O(nω)w
ωω<2.3728639ω=2