Почему t-SNE не используется как метод уменьшения размерности для кластеризации или классификации?


34

В недавнем задании нам было сказано использовать PCA для цифр MNIST, чтобы уменьшить размеры с 64 (8 x 8 изображений) до 2. Затем нам пришлось кластеризовать цифры, используя модель гауссовой смеси. PCA, использующий только 2 основных компонента, не дает отдельных кластеров, и в результате модель не может создавать полезные группировки.

Однако, используя t-SNE с 2 компонентами, кластеры намного лучше разделены. Модель гауссовой смеси создает более четкие кластеры при применении к компонентам t-SNE.

Различие в PCA с 2 компонентами и t-SNE с 2 компонентами можно увидеть на следующей паре изображений, где преобразования были применены к набору данных MNIST.

СПС на МНИСТ

T-SNE на MNIST

Я читал, что t-SNE используется только для визуализации данных больших размеров, например, в этом ответе , но учитывая различные кластеры, которые он создает, почему он не используется как метод уменьшения размерности, который затем используется для моделей классификации или как автономный метод кластеризации?


2
Вы имеете в виду классификацию или кластеризацию? Название говорит о кластеризации, но пост говорит о классификации.
usεr11852 говорит восстановить Monic

Прости за это. Я хочу знать, почему он не используется как метод кластеризации или как метод уменьшения размерности для классификации. Я отредактировал, чтобы отразить это.
Уилл

По совпадению, недавно выпущенный документ использует t-SNE и алгоритм кластеризации без контроля для маркировки процессов сгорания.
tpg2114

2
Ответ, который вы связали, демонстрирует, насколько обманчивым может быть tSNE. Вы видите кластеры на графике, которые не существуют в данных. Это вредно, если у вас нет ярлыков. И не делайте слишком много выводов из данных MNIST. Это чрезвычайно хороший набор данных ...
Anony-Mousse

1
Я нашел эту статью полезной для объяснения t-SNE и его недостатков. Он имеет множество интерактивных визуализаций, которые помогают подчеркнуть основные моменты.
Уилл

Ответы:


33

TT

TT

TT11Мы могли бы с самого начала использовать классификацию (что возвращает нас к использованию автоэнкодеров).


1
Вопрос, кажется, спрашивает больше о кластеризации, чем о классификации. По крайней мере, кластеризация есть в заголовке.
говорит амеба: восстанови Монику

@amoeba: Я думал так же и писал о возможном использовании через кластеризацию на расстоянии (например, FMM, DBSCAN), но затем я прочитал вопрос: « Почему он не используется как метод уменьшения размерности, который затем используется для классификации модели? "
говорит usεr11852 Reinstate Monic

Да, но название Q отличается. Я думаю, что OP может быть сбит с толку из-за разницы, поэтому имеет смысл обратиться к обоим в вашем A!
говорит амеба, восстанови Монику

4
Хорошо ... Хорошо ...
Ведущий

1
(+1) Мне было бы очень интересно услышать ваши мысли об этом ответе кластеризации / t- SNE stats.stackexchange.com/questions/263539, который я только что опубликовал. CC также @caseWestern - это может вас заинтересовать.
говорит амеба: восстанови Монику

3

t-SNE не сохраняет расстояния, но в основном оценивает распределения вероятностей. Теоретически, алгоритмы t-SNE отображают входные данные в пространстве карт 2 или 3 измерений. Предполагается, что входное пространство является гауссовым распределением, а пространство карт - t-распределением. Используемая функция потерь - это дивергенция KL между двумя распределениями, которая минимизируется с помощью градиентного спуска.

По словам Лоренса ван дер Маатена, который является соавтором t-SNE

t-SNE не сохраняет расстояния, но вероятности, поэтому измерение некоторой ошибки между евклидовыми расстояниями в высоком и низком D бесполезно.

Ссылка:

https://lvdmaaten.github.io/tsne/

https://www.oreilly.com/learning/an-illustrated-introduction-to-the-t-sne-algorithm


2

Как общее утверждение: при достаточно мощный (/ подходит) классификатор, или кластер-эр, один никогда не будет применять любое снижение размерности.

Уменьшение размерности теряет информацию.

Так как такой кластер-эр или классификатор (esp классификаторы, в меньшей степени кластеризаторы) уже внутренне нарушает некоторую форму проекции в значимое пространство. А уменьшение размерности также является проекцией (надеюсь) осмысленного пространства.

Но уменьшение размерности должно происходить неосведомленным образом - оно не знает, для какой задачи вы сокращаете. Это особенно верно для классификации, где у вас есть прямая контролируемая информация. Но это также относится и к кластеризации, где пространство, которое нужно проектировать для кластеризации, лучше определено (для этого алгоритма), чем просто «иметь меньше измерений». Ответ @ usεr11852 говорит об этом. Как я уже сказал, уменьшение размерности не знает, что Задача, для которой вы сокращаете - вы указываете в своем выборе, какой алгоритм уменьшения размерности вы будете использовать.

Поэтому часто вместо того, чтобы добавлять шаг уменьшения размерности в качестве предварительной обработки перед кластеризацией / классификацией, лучше использовать другой классификатор / кластер-эр, который включает полезную проекцию.

В этом есть одно сокращение размерности, которое заключается в его неконтролируемом характере в создании проекции на (мы надеемся) значимое пространство. Что полезно, если у вас мало данных на этикетке. Но часто есть другие методы, которые тесно связаны с вашим классификатором (например, для нейронных сетей, использующих авто-кодер, например, предварительная подготовка сетей глубокого убеждения), которые будут работать лучше, потому что они разработаны с учетом этой конечной задачи. Не более общая задача уменьшения размерности.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.