На этом шаге мы рассмотрим особенности такого применения.
В отличие от PCA, чтобы применить NMF к данным, мы должны убедиться, что они имеют положительные значения. Это означает, что для NMF расположение данных относительно начала координат (0, 0) имеет реальное значение. Поэтому извлекаемые неотрицательные компоненты можно представить в виде направлений, выходящих из начала координат (0, 0) к данным.
Следующий пример (рисунок 1) показывает результаты применения NMF к двумерным синтетическим данным:
[In 33]:
mglearn.plots.plot_nmf_illustration()
Рис.1. Компоненты, найденные в результате факторизации неотрицательных матриц с двумя компонентами (слева) и одной компонентой (справа)
Для NMF с двумя компонентами (график слева) ясно, что все точки данных можно записать в виде комбинации положительных значений этих двух компонент. Если количества компонент достаточно для того, чтобы полностью реконструировать данные (количество компонент совпадает с количеством характеристик), алгоритм будет выбирать направления, указывающие на экстремальные значения данных.
При использовании лишь одной компоненты NMF выделяет компоненту, которая указывает на среднее значение как значение, лучше всего объясняющее данные. Видно, что в отличие от PCA уменьшение числа компонент удаляет не только некоторые направления, но и создает совершенно другой набор компонент! Кроме того, компоненты NMF не упорядочены каким-либо определенным образом, поэтому здесь нет такого понятия, как "первая неотрицательная компонента": все компоненты играют одинаковую роль.
NMF использует случайную инициализацию, поэтому разные стартовые значения дают различные результаты. В относительно простых случаях (например, синтетические данные с двумя компонентами), где все данные можно прекрасно объяснить, случайность мало влияет на результат (хотя она может изменить порядок или масштаб компонент). В более сложных ситуациях использование различных случайных значении может привести к радикальным изменениям.
На следующем шаге мы рассмотрим применение NMF к изображениям лиц.