Давайте предположим, что у нас есть проблема с классификацией, и сначала мы хотим получить представление о данных, и мы делаем t-SNE. Результат t-SNE очень хорошо разделяет классы. Это подразумевает, что можно построить классификационную модель, которая также будет очень хорошо разделять классы (если t-SNE не разделяет хорошо, это не подразумевает много).
Зная, что t-SNE фокусируется на локальной структуре и может хорошо разделять классы: какие алгоритмы классификации должны хорошо работать для решения этой проблемы? Scikit предлагает SVM с гауссовым ядром RBF, но каковы другие?
classification
tsne
Томек Тарчинский
источник
источник
Ответы:
Сначала краткий ответ, а затем более длинный комментарий:
Ответ
Методы SNE вычисляют матрицу сходства N × N как в исходном пространстве данных, так и в низкоразмерном пространстве внедрения таким образом, что сходства образуют распределение вероятностей по парам объектов. В частности, вероятности, как правило, задаются нормализованным ядром Гаусса, вычисленным из входных данных или из вложения. С точки зрения классификации это сразу напоминает методы обучения, основанные на конкретных примерах . Вы перечислили один из них: SVM с RBF, а @amoeba перечислил kNN. Существуют также сети с радиальными базисными функциями , в которых я не эксперт.
Комментарий
Сказав это, я буду вдвойне осторожен, делая выводы на основе набора данных, просто глядя на графики t-SNE. t-SNE не обязательно фокусируется на локальной структуре. Однако вы можете настроить его для этого, настроив
perplexity
параметр, который регулирует (слабо), как сбалансировать внимание между локальными и глобальными аспектами ваших данных.В этом контексте
perplexity
само по себе является ударом в темноте относительно того, сколько близких соседей может иметь каждое наблюдение и предоставляется пользователем. В оригинальной статье говорится: «Производительность t-SNE достаточно устойчива к изменениям в недоумении, и типичные значения находятся в диапазоне от 5 до 50». Тем не менее, мой опыт показывает, что получение максимальной отдачи от t-SNE может означать анализ нескольких графиков с различными затруднениями.Другими словами, настраивая
learning rate
иperplexity
, можно получить очень разные выглядящие двумерные графики для одинакового количества тренировочных шагов и с использованием одних и тех же данных.Это отогнать бумаги Как использовать т-СНЭ Эффективно дает большую сводку распространенных ошибок анализа т-SNE. Резюме:
Эти гиперпараметры (например, скорость обучения, растерянность) действительно имеют значение
Размеры кластеров на графике t-SNE ничего не значат
Расстояния между кластерами ничего не могут значить
Случайный шум не всегда выглядит случайным.
Вы можете увидеть некоторые формы, иногда
Для топологии вам может понадобиться более одного графика
В частности, из пунктов 2, 3 и 6 выше, я бы дважды подумал о том, чтобы сделать выводы об отделимости данных, рассматривая отдельные графики t-SNE. Во многих случаях вы можете «изготовить» графики, которые показывают четкие кластеры, используя правильные параметры.
источник