Неотрицательная матричная факторизация
[
множители, n -by m W
,H
] = nnmf(A
,k
)матрица A
в неотрицательные факторы W
(n -by- k
) и H
(k
-by- m). Факторизация не точна; W*H
является более низкоранговым приближением к A
. Факторы W
и H
минимизируйте среднее корневое квадратное остаточное D
между A
и W*H
.
D = norm(A - W*H,'fro')/sqrt(n*m)
Факторизация использует итерационный алгоритм, начиная со случайных начальных значений для W
и H
. Потому что корневое среднее квадратное остаточное D
может иметь локальные минимумы, повторные факторизации могут привести к различным W
и H
. Иногда алгоритм сходится к решению более низкого ранга, чем k, что может указать, что результат не оптимален.
[
изменяет факторизацию с помощью одного или нескольких аргументов пары "имя-значение". Для примера можно запросить повторные факторизации путем установки W
,H
] = nnmf(A
,k
,Name,Value
)'Replicates'
в целое число значения больше 1.
[1] Берри, Майкл У., Мюррей Браун, Эми Н. Лэнгвилл, В. Пол Паука и Роберт Дж. Племмонс. «Алгоритмы и приложения для аппроксимации неотрицательной матричной факторизации». Вычислительная статистика и анализ данных 52, № 1 (сентябрь 2007 года): 155-73. https://doi.org/10.1016/j.csda.2006.11.006.