НачатьНачать бесплатно

PCA не выделяет части объектов

В отличие от NMF, метод PCA не выделяет составные части объектов. Его компоненты не соответствуют темам (в случае документов) или фрагментам изображений (при обучении на изображениях). Убедитесь в этом самостоятельно, изучив компоненты модели PCA, обученной на наборе изображений цифр на светодиодном дисплее из предыдущего упражнения. Изображения доступны в виде двумерного массива samples. Также доступна изменённая версия функции show_as_image(), которая окрашивает пиксель в красный цвет, если его значение отрицательное.

После отправки ответа обратите внимание: компоненты PCA не отражают значимых частей изображений цифр на светодиодном дисплее!

Это упражнение является частью курса

Обучение без учителя на Python

Посмотреть курс

Инструкции к упражнению

  • Импортируйте PCA из sklearn.decomposition.
  • Создайте экземпляр PCA с именем model, указав 7 компонент.
  • Примените метод .fit_transform() объекта model к samples. Результат сохраните в переменную features.
  • Для каждой компоненты модели (доступной через model.components_) вызовите функцию show_as_image(), передав эту компоненту в качестве аргумента внутри цикла.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Import PCA
____

# Create a PCA instance: model
model = ____

# Apply fit_transform to samples: features
features = ____

# Call show_as_image on each component
for component in ____:
    ____
    
Редактировать и запускать код