Які відмінності між автокодерами та t-SNE?


12

Наскільки мені відомо, і для автонекодерів, і для t-SNE використовують нелінійне зменшення розмірності. Які відмінності між ними і чому я повинен використовувати один проти іншого?

Відповіді:


8

Вони обидва намагаються знайти вбудовувані ваші дані меншої розмірності. Однак існують різні проблеми мінімізації. Більш конкретно, автокодер намагається мінімізувати помилку відновлення, тоді як t-SNE намагається знайти простір з меншими розмірами і в той же час намагається зберегти відстані сусідства. В результаті цього атрибуту, t-SNE зазвичай є кращим для сюжетів та візуалізацій.


Тож у цьому сенсі чи означає автоенкодер краще знайти нижчий розмір, коли нижній розмір більше, ніж 3D? (Тому що я припускаю, що якщо нижній розмір великий, t-SNE може не так добре працювати?)
RockTheStar

2
Існує багато типів автокодерів (рідкісні, варіативні, складені, згорнуті тощо) залежно від вашого завдання. Вони можуть бути дуже ефективними у виявленні вбудованих розмірів нижчого розміру, виходячи з помилки реконструкції. Тому, якщо ваше завдання - знайти оптимальний нижній розмірний простір (навіть 2D), я б запропонував вам вибрати правильний автокодер для своєї задачі. Якщо вам доведеться робити візуалізацію, то t-SNE, можливо, буде вашим вибором. оскільки збереження сусідніх відстаней може спричинити кращу візуалізацію.
Янніс Ассаель

2

[Autoencoders] в першу чергу зосереджуються на максимізації дисперсійності даних у латентному просторі, внаслідок чого автоенкодери менш успішні у збереженні локальної структури даних у латентному просторі, ніж у різноманітних учнів ...

З "Навчання параметричному вкладанню, зберігаючи локальну структуру", Laurens van der Maaten ( https://lvdmaaten.github.io/publications/papers/AISTATS_2009.pdf )


Це не "папір t-SNE". Стандартний t-SNE є непараметричним.
амеба

1
Дякую @amoeba за Ваш коментар до цього. Я редагував публікацію.
Користувач128525

1

Autoencoder та t-SNE можуть використовуватися разом для кращої візуалізації даних з високими розмірами, як описано в [1]:

Зокрема, для двовимірної візуалізації t-SNE - це, мабуть, найкращий алгоритм, але зазвичай потрібні відносно низькі розміри даних. Тож хороша стратегія візуалізації зв’язків подібності у великомірних даних - почати з використання автокодера для стиснення даних у низькомірному просторі (наприклад, 32 мірного), а потім використовувати t-SNE для відображення стислих даних у двовимірній площині .


[1] https://blog.keras.io/building-autoencoders-in-keras.html


0

Автоенкодер призначений для збереження попередніх даних у 2-нормовому сенсі, що можна вважати збереженням кінетичної енергії даних, якщо дані є швидкістю.

У той час як t-SNE використовує дивергенцію KL, яка не є симетричною, це призведе до зосередження t-SNE більше на локальній структурі, тоді як autoencoder має тенденцію залишати загальну помилку L2 невеликою, що є в глобальному розумінні.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.