Saya perlu membuat matriks non-kuadrat acak dengan baris dan kolom , elemen yang didistribusikan secara acak dengan mean = 0, dan dibatasi sedemikian rupa sehingga panjang (norma L2) dari setiap baris adalah dan panjang setiap kolom adalah . Secara ekuivalen, jumlah nilai kuadrat adalah 1 untuk setiap baris dan untuk setiap kolom.
Sejauh ini saya telah menemukan satu cara untuk mencapai ini: cukup inisialisasi elemen matriks secara acak (misalnya dari distribusi seragam, normal, atau laplace dengan nol mean dan varian sewenang-wenang), kemudian secara normal menormalkan baris dan kolom menjadi , diakhiri dengan normalisasi baris. Ini tampaknya menyatu dengan hasil yang diinginkan cukup cepat (misalnya untuk dan , varians panjang kolom biasanya ~ setelah iterasi), tapi saya tidak yakin apakah saya bisa bergantung pada tingkat konvergensi cepat ini. secara umum (untuk berbagai dimensi matriks dan distribusi elemen awal).
Pertanyaan saya adalah ini: apakah ada cara untuk mencapai hasil yang diinginkan ( , ) secara langsung tanpa beralih antara normalisasi baris / kolom? Misalnya sesuatu seperti algoritma untuk menormalkan vektor acak (menginisialisasi elemen secara acak, mengukur jumlah nilai kuadrat, lalu skala setiap elemen dengan skalar yang sama). Jika tidak, adakah karakterisasi sederhana untuk laju konvergensi (misal, jumlah iterasi hingga kesalahan ) dari metode iteratif yang dijelaskan di atas? <ϵ
sumber
Jawaban:
Seperti @ cardinal katakan dalam komentar:
... tampaknya algoritma berulang yang saya sarankan dalam pertanyaan asli sangat mirip dengan algoritma Sinkhorn-Knopp. Menariknya, itu juga tampak sangat mirip dengan iterative proporsional fitting (IPF), yang, seperti yang dijelaskan pada halaman wikipedia IPF, terkait dengan metode Newton dan maksimalisasi harapan (semuanya memiliki batas yang sama).
Metode berulang ini sering diterapkan pada masalah yang tidak memiliki solusi bentuk tertutup, jadi saya akan sementara menganggap bahwa jawaban untuk pertanyaan itu negatif: tidak ada cara untuk mencapai solusi yang diinginkan tanpa iterasi baris / kolom.
sumber