qmlcourse
qmlcourse copied to clipboard
разрешить вопрос по псевдообратной матрице в «QUBO-формулировки трех задач ML»
начало обсуждения тут
Еще раз посмотрел свежим взглядом. Действительно, в контексте линейной регрессии довольно часто решение формулируют с помощью явной формулы
x=(A^TA)^(-1) A^T b
так как у нас обычно данных гораздо больше чем фичей то обратное обычно существует. Тем не менее, более верная формула это
x=A^+ b
она верна даже в случае если A^TA
необратима. В этом смысле вести речь о вычисление псевдообратной (A^TA)^+
довольно странно, ведь реально нам надо вычислить A^+
.
Тем не менее, если мы предполагаем что (A^TA)^(-1)
скорее всего обратима, то вычислять A^+
через, например, SVD будет медленнее чем просто вычислить (A^TA)^(-1) A^T
(и, возможно даже медленнее чем вычислить (A^TA)^+ A^T
), так как SVD значительно медленнее перемножения матриц, хотя асимптотика одинаковая.
Мне кажется что стоит заменить часть про x=(A^TA)^(-1) A^T b
на x=A^+ b
и добавить объяснение о его вычислении в стиле этого коммента