Принимая во внимание матрицы , неотрицательная матрица Факторизация (ФС) находит две неотрицательных матрицы и (то есть со всеми элементами ) , чтобы представить разложившуюся матрицу , как:
например, требуя , чтобы неотрицательное и свести к минимуму ошибки реконструкции
Существуют ли общепринятые практики для оценки числа в ЯМФ? Как, например, перекрестная проверка может быть использована для этой цели?
Ответы:
Чтобы выбрать оптимальное количество скрытых факторов в неотрицательной матричной факторизации, используйте перекрестную проверку.
Как вы писали, целью NMF является поиск низкоразмерныхW и H со всеми неотрицательными элементами, минимизирующими ошибку восстановления ∥V−WH∥2 . Представьте, что мы пропускаем один элемент V , например, Vab , и выполняем NMF для полученной матрицы с одной отсутствующей ячейкой. Это означает нахождение W и H минимизирующее ошибку восстановления по всем не пропущенным ячейкам: ∑ij≠ab(Vij−[WH]ij)2.
Как только это будет сделано, мы можем предсказать пропущенный элементVab , вычислив [WH]ab и вычислить ошибку прогнозирования eab=(Vab−[WH]ab)2. Можно повторить эту процедуру, пропуская все элементы Vab одному, и суммировать ошибки прогнозирования по всем a и b . Это приведет к общему значению PRESS (прогнозируемая остаточная сумма квадратов) E(k)=∑abeab которое будет зависеть отk . Надеемся, что функцияE(k) будет иметь минимум, который можно использовать как «оптимальный»k .
Обратите внимание, что это может быть вычислительно дорогостоящим, потому что NMF должен повторяться для каждого пропущенного значения, а также может быть сложным для программирования (в зависимости от того, насколько легко выполнить NMF с пропущенными значениями). В PCA можно обойти это, пропустив полные строкиV (что значительно ускоряет вычисления), см. Мой ответ в разделе Как выполнить перекрестную проверку для PCA, чтобы определить количество основных компонентов? , но это не возможно здесь.
Конечно, здесь применяются все обычные принципы перекрестной проверки, поэтому можно пропустить много ячеек за раз (вместо одной) и / или повторить процедуру только для некоторых случайных ячеек вместо того, чтобы зацикливаться на всех ячейках. Оба подхода могут помочь ускорить процесс.
Редактировать (март 2019 г.): см. Эту очень хорошую иллюстрированную статью @AlexWilliams : http://alexhwilliams.info/itsneuronalblog/2018/02/26/crossval . Алекс использует https://github.com/kimjingu/nonnegfac-python для NMF с пропущенными значениями.
источник
Насколько мне известно, есть два хороших критерия: 1) коэффициент копенетической корреляции и 2) сравнение остаточной суммы квадратов с рандомизированными данными для набора рангов (возможно, есть название для этого, но я не помню)
Коэффициент копенетической корреляции: вы повторяете NMF несколько раз на ранг и вычисляете, насколько похожи результаты. Другими словами, насколько стабильны идентифицированные кластеры, учитывая, что начальное начальное число является случайным. Выберите наибольшее значение K, прежде чем кофенетический коэффициент упадет.
RSS против рандомизированных данных При любом подходе к уменьшению размерности всегда происходит потеря информации по сравнению с вашими исходными данными (по оценкам RSS). Теперь выполните NMF для увеличения K и рассчитайте RSS с вашим исходным набором данных и рандомизированным набором данных. При сравнении RSS в зависимости от K RSS уменьшается с увеличением K в исходном наборе данных, но это менее верно для рандомизированного набора данных. Сравнивая оба склона, нужно найти букву K, где они пересекаются. Другими словами, сколько информации вы можете позволить себе потерять (= наивысший К), прежде чем оказаться в пределах шума.
Надеюсь, я был достаточно ясен.
Изменить: я нашел эти статьи.
1.Jean-П. Брюне, Пабло Тамайо, Тодд Р. Голуб и Джилл П. Месиров. Метагены и обнаружение молекулярных структур с использованием матричной факторизации. В Слушаниях Национальной академии наук США, 101 (12): 4164-4169, 2004.
2. Аттила Фригеси и Маттиас Хоглунд. Неотрицательная матричная факторизация для анализа данных экспрессии сложных генов: идентификация клинически значимых подтипов опухоли. Cancer Informatics, 6: 275-292, 2008.
источник
При факторизации NMF параметр (отмеченный r в большинстве литературных источников) является рангом аппроксимации V и выбирается таким, что k < min ( m , n ) . Выбор параметра определяет представление ваших данных V в слишком полной основе, состоящей из столбцов W ; ш I , я = 1 , 2 , ⋯ , K . В результате ряды матриц W и Hk r V k<min(m,n) V W wi , i=1,2,⋯,k W H имеют верхнюю границу и произведениеможет быть сгенерировано / составлено из вышеупомянутых базисных векторов.k - аппроксимация младшего ранга V ; также к максимум. Следовательно, выбор k < min ( m , n ) должен составлять уменьшение размерности, где VWH V k k<min(m,n) V
Дальнейшие подробности можно найти в главе 6 этой книги. S. Theodoridis и K. Koutroumbas.
После минимизации выбранной вами функции стоимости относительно и H , оптимальный выбор k ( выбранный эмпирически при работе с различными подпространствами признаков) должен дать V ∗ , приближение V , с характеристиками, представляющими вашу исходную матрицу данных В .W H k V∗ V V
Работа с различными суб-художественных пространств в том смысле , что, число столбцов в W , является число базисных векторов в NMF подпространстве. И опытная работа с различными значениями k равносильна работе с различными пространственными объектами с уменьшенной размерностью.k W k
источник