Насколько я знаю, как автоэнкодеры, так и t-SNE используются для нелинейного уменьшения размерности. Каковы различия между ними и почему я должен использовать одно против другого?
12
Насколько я знаю, как автоэнкодеры, так и t-SNE используются для нелинейного уменьшения размерности. Каковы различия между ними и почему я должен использовать одно против другого?
Они оба пытаются найти более низкую размерность встраивания ваших данных. Однако существуют разные проблемы минимизации. Более конкретно, автоматический кодер пытается минимизировать ошибку восстановления, в то время как t-SNE пытается найти пространство меньшего размера и в то же время пытается сохранить соседние расстояния. В результате этого атрибута t-SNE обычно предпочтительнее для графиков и визуализаций.
Из «Изучения параметрического вложения путем сохранения локальной структуры» Лорен ван дер Маатен ( https://lvdmaaten.github.io/publications/papers/AISTATS_2009.pdf )
источник
Автоэнкодер и t-SNE могут использоваться вместе для лучшей визуализации в данных большого размера, как описано в [1]:
[1] https://blog.keras.io/building-autoencoders-in-keras.html
источник
Автоэнкодер предназначен для сохранения предыдущих данных в двухнормативном смысле, что можно считать сохранением кинетической энергии данных, если данные являются скоростью.
В то время как в t-SNE используется дивергенция KL, которая не является симметричной, это приведет к тому, что t-SNE будет уделять больше внимания локальной структуре, в то время как автоэнкодер стремится сохранить общую ошибку L2 небольшой, что в глобальном смысле.
источник