Tôi cần phải tạo ra các ma trận không vuông ngẫu nhiên với dòng và C cột, các yếu tố phân phối ngẫu nhiên với trung bình = 0, và hạn chế như vậy mà chiều dài (mức L2) của mỗi hàng là 1 và độ dài của mỗi cột là √ . Tương đương, tổng giá trị bình phương là 1 cho mỗi hàng vàR cho mỗi cột.
Cho đến nay tôi đã tìm thấy một cách để đạt được điều này: chỉ cần khởi tạo ngẫu nhiên các phần tử ma trận (ví dụ: từ phân phối đồng nhất, bình thường hoặc laplace với phương sai không trung bình và tùy ý), sau đó luân phiên chuẩn hóa các hàng và cột thành , kết thúc với bình thường hóa hàng. Điều này dường như hội tụ đến kết quả mong muốn khá nhanh (ví dụ: R = 40 và C = 80 , phương sai của chiều dài cột thường là ~ 0,00001 sau 2 lần lặp), nhưng tôi không chắc liệu mình có thể phụ thuộc vào tốc độ hội tụ nhanh này không chung (cho các kích thước ma trận khác nhau và phân phối phần tử ban đầu).
Câu hỏi của tôi là thế này: có cách nào để đạt được kết quả mong muốn ( , c o l u m n l đ n g t h s = √ ) trực tiếp mà không lặp lại giữa chuẩn hóa hàng / cột? Ví dụ, một cái gì đó giống như thuật toán để chuẩn hóa một vectơ ngẫu nhiên (khởi tạo ngẫu nhiên các phần tử, đo tổng các giá trị bình phương, sau đó chia tỷ lệ cho mỗi phần tử theo một vô hướng chung). Nếu không, có một đặc tính đơn giản cho tốc độ hội tụ (ví dụ: lặp num cho đến khi lỗi<ϵ) của phương pháp lặp được mô tả ở trên không?