Как генерировать равномерно случайные ортогональные матрицы положительного определителя?

9

У меня, наверное, глупый вопрос, о котором, должен признаться, я запутался. Представьте себе повторяющуюся генерацию равномерно распределенной случайной ортогональной (ортонормированной) матрицы некоторого размера . Иногда сгенерированная матрица имеет определитель 1, а иногда - 1 . (Есть только два возможных значения. С точки зрения ортогонального вращения, det = - 1 означает, что кроме вращения есть еще одно дополнительное отражение.)p11йезнак равно-1

Мы можем изменить знак ортогональной матрицы от минус до плюс путем изменения знака любого одного (или, в более общем плане , любое нечетное число) столбец этого.йе

Мой вопрос: учитывая, что мы генерируем такие случайные матрицы многократно, введем ли мы некоторую систематическую погрешность в их равномерную случайную природу, если каждый раз мы решаем вернуть знак только определенного столбца (скажем, всегда 1-го или всегда последнего)? Или мы должны выбрать столбец случайным образом, чтобы матрицы представляли случайную равномерно распределенную коллекцию?

ttnphns
источник

Ответы:

7

Выбор столбца не имеет значения: результирующее распределение по специальным ортогональным матрицам по-прежнему равномерно.SO(n)

Я объясню это с помощью аргумента, который очевидным образом распространяется на многие связанные вопросы о равномерной генерации элементов групп. Каждый шаг этого аргумента является тривиальным, не требующим ничего, кроме ссылки на подходящие определения или простого вычисления (например, отметив, что матрица является ортогональной и самообратной).я1

Аргумент является обобщением знакомой ситуации. Рассмотрим задачу рисования положительных действительных чисел в соответствии с заданным непрерывным распределением . Это можно сделать, нарисовав любое действительное число из непрерывного распределения G и отрицая результат, если необходимо, чтобы гарантировать положительное значение (почти наверняка). Чтобы этот процесс имел распределение F , G должен обладать свойствомFгFг

г(Икс)-г(-Икс)знак равноF(Икс),

Самый простой способ для достижения этой цели , когда является симметричным вокруг 0 , так что G ( х ) - 1 / 2 = 1 /г0 , влекущиесобой F ( х ) = 2 G ( х ) - 1 : все положительные плотности вероятностей просто удваиваются, и все отрицательные результаты устраняются. Знакомая связь между полунормальным распределением ( F ) и нормальным распределением ( Gг(Икс)-1/2знак равно1/2-г(-Икс)F(Икс)знак равно2г(Икс)-1Fг) такого рода.

В дальнейшем группа играет роль ненулевых действительных чисел (рассматриваемых как мультипликативная группа) и ее подгруппы S O ( n ).О(N)SО(N) играет роль положительных действительных чисел . Мера Хаара d x / x инвариантна относительно отрицания, поэтому, когда она «свернута» из R - { 0 } в R +р+dИкс/Икср-{0}р+распределение положительных значений не меняется. (Эту меру, к сожалению, нельзя нормировать на меру вероятности, но это единственный способ, с помощью которого можно провести аналогию).

Отрицание определенного столбца ортогональной матрицы (когда его детерминант отрицательный) является аналогом отрицания действительного отрицательного числа, чтобы сложить его в положительную подгруппу. В более общем случае вы можете заранее выбрать любую ортогональную матрицу отрицательного определителя и использовать ее вместо I 1 : результаты будут такими же.Jя1


Хотя вопрос сформулирован в терминах генерации случайных величин, он действительно задает вопрос о распределении вероятностей по группам матриц и S O ( n , R ) = S O ( n ) . Связь между этими группами описывается в терминах ортогональной матрицыО(N,р)знак равноО(N)SО(N,р)знак равноSО(N)

я1знак равно(-100...0010...0...0000...1)

потому что отрицание первого столбца ортогональной матрицы означает умножение вправо X наИксИкс . Обратите внимание, чтоSO(n)O(n)иO(n)является дизъюнктным объединениемя1SО(N)О(N)О(N)

O(n)=SO(n)SO(n)I11.

Дано пространство вероятностей определенное на O ( n ) , процесс, описанный в вопросе, определяет карту(O(n),S,P)O(n)

f:O(n)SO(n)

установив

f(X)=X

когда иXSO(n)

f(X)=XI1

для .XSO(n)I11

Вопрос касается генерации случайных элементов в путем получения случайных элементов ω O ( n ) : то есть путем «толкания их вперед» через f, чтобы получить f ω = f ( ω ) S O ( н ) . Pushforward создает вероятностное пространство ( S OSO(n)ωO(n)fе*ωзнак равное(ω)SО(N) с(SО(N),S',п')

S'знак равное*Sзнак равно{е(Е)|ЕS}

а также

п'(Е)знак равно(е*п)(Е)знак равноп(е-1(Е))знак равноп(ЕЕя1)

для всех .ЕS'

я1ЕЕя1знак равноЕS'

P(E)=P(EЕя1-1)знак равноп(Е)+п(Ея1-1)знак равно2п(Е),

пО(N)я1я1п'

Whuber
источник
+1. Это очень хорошая статья, спасибо за публикацию этого ответа.
амеба
1
Потрясающий ответ. Но с самого начала The question is concerned about generatingмне было трудно проталкивать меня вперед через символику. Не могли бы вы кратко изложить аргументацию в словах , для более раннего мирянина, пожалуйста?
ttnphns