• Linear Discriminant Analysis (LDA) - линейный дискриминантный анализ, как и классический PCA, является методом линейного преобразования. Но PCA не контролируется, т.е. игнорирует метки классов, а LDA - это контролируемое машинное обучение, которое используется для различения двух классов или групп. LDA подходит для контролируемого уменьшения размерности путем проецирования входных данных в линейное подпространство из направлений, которые максимизируют разделение между классами. Размерность вывода обязательно меньше количества классов. В scikit-learn LDA реализуется с помощью LinearDiscriminantAnalysis, где параметр n_components указывает количество возвращаемых функций.
• Non-negative Matrix Factorization (NMF) - неотрицательная матричная факторизация, альтернативный подход к декомпозиции, который предполагает, что данные и компоненты неотрицательны. NMF - это неконтролируемый метод уменьшения линейной размерности. В NMF исходные данные (матрица признаков) разбиваются на несколько матриц (т.е. разлагаются на множители), представляющие скрытые отношения между наблюдениями и их характеристиками. NMF можно подключить вместо PCA, когда матрица данных не содержит отрицательных значений. NMF не предоставляет объясненную дисперсию, как PCA и другие методы, поэтому лучший способ найти оптимальное значение n_components - это попробовать диапазон значений.
• Truncated Singular Value Decomposition (TSVD) - усеченное разложение по сингулярным значениям похоже на PCA. Этот метод выполняет уменьшение линейной размерности с помощью усеченного сингулярного разложения. В отличие от PCA, этот оценщик не центрирует данные перед вычислением разложения по сингулярным значениям и может эффективно работать с разреженными матрицами.
https://medium.com/@deepak.engg.phd/dimensionality-reduction-with-scikit-learn-ee5d2b69225b
Post #157
393