Eng yaqin qo'shnim T-SNE bilan mantiqiymi?

Bu erda berilgan javoblar T-SNE o'lchamlari beg'ubor ekanligini va ballar o'rtasidagi masofalar o'xshashlik o'lchovi .

Biroq, T-SNE makonidagi eng yaqin qo'shnilariga asoslangan bir nuqtada biror narsa aytishimiz mumkinmi? Bu javob , nima uchun bu savolga javob beradi? kümelenmiş emas, balki bir xil bo'ladi, ballar o'rtasidagi masofa nisbati past va yuqori o'lchovli vakillar orasida o'xshashligini ko'rsatadi.

Misol uchun, quyidagi rasmda mening ma'lumotlar to'plamlarimdan birida (15 sinf) t-SNE ko'rsatilgan.

cro 479 (yuqori o'ng) degani mumkinmi? fra 1353 (pastki chap) cir 375 ga o'xshash fra sinfidagi boshqa rasmlardan va hokazo. Yoki bu faqat san'at asarlar bo'lishi mumkin, masalan. fra 1353 bir necha guruhning boshqa tomoniga yopishtirilgan va boshqa fra sinfiga o'tishni majbur qila olmaganmi?

enter image description here

7
qo'shib qo'ydi muallif Aditya, manba
qo'shib qo'ydi muallif Aditya, manba

1 javoblar

Yo'q, buning shart emasligi, ammo bu T-SNEning maqsadiga aylantiriladi.

Javobning go'shtiga kirishdan oldin keling matematik va intuitiv ravishda ba'zi bir asosiy ta'riflarni ko'rib chiqaylik.

Nearest Neighbors: Consider a metric space $\mathbb{R}^d$ and a set of vectors $X_1, ..., X_n \in \mathbb{R}^d$, given a new vector $x \in \mathbb{R}^d$, we want to find the points such that $|| X_1 - x || \le ... \le ||X_n - x ||$. Intuitively, it's just the minimum of the distances using a suitable definition of norm in $\mathbb{R}^d$.

Keling, yaqin qo'shnilar o'lchamlarni qisqartirishni qo'llashda muhim ahamiyatga ega bo'ladimi? Odatda mening javoblarimda matematika, kod va sezgi bilan nimadir ratsionalizatsiya qilish niyatidaman. Avvalo narsalarning intuitiv jihatini ko'rib chiqaylik. Agar sizda boshqa nuqtadan $ d $ masofa bo'lgan nuqtaga ega bo'lsangiz, T-sne algoritmini tushunchamizdan bilib olganimizdek, bu masofa yuqori o'lchamlarga o'tishda saqlanib qoladi. Bundan tashqari, $ y $ nuqtasi $ x $ ning ba'zi bir o'lchamidagi $ x $ ning eng yaqin qo'shni ekanligiga ishora qilamiz. Taqqoslash bo'yicha, $ d $ va $ d + k $ oralig'idagi munosabatlar mavjud. Shunday qilib, bizning sezgimiz bor, ya'ni masofa turli o'lchamlarda saqlanadi, yoki hech bo'lmaganda, bu bizning maqsadimizdir. Uni matematika bilan oqlashga harakat qilaylik.

Ushbu javobda men t-sne bilan bog'liq matematika haqida gapirmayapman ( t-SNE: Nima uchun teng qiymatlar ingl. ravishda yopilmaydi? ). Bu erda matematikaning o'zi asosan, ikki nuqta prognozli joylarda yaqin bo'lish ehtimolligini maksimal darajada oshiradi, chunki ular nuqtalarning taqsimlanishi eksponent bo'lgan deb hisoblashadi. Shunday qilib, bu tenglamani ko'rib chiqish $ p_ {j | i} = \ frac {exp (\ frac {- || x_j - x_i || ^ 2} {2 \ sigma ^ 2})} {\ sum_ {k \ neq i} {exp (\ frac {- || x_j - x_i || ^ 2} {2 \ sigma ^ 2})}} $. E'tibor beringki, ehtimollik ikkala nuqta orasidagi masofaga bog'liq, shuning uchun ularni ajratib turadigan bo'laklar ham ular pastki registrlarni prognoz qilishda bo'ladilar. E'tibor bering, agar ular $ \ mathbb {R} ^ k $ dan juda uzoq bo'lsa, ular prognoz hajmida yaqin bo'lishga imkon berishmaydi. Xullas, bizda matematika asoslari bor, shuning uchun ballar "yaqin" bo'lishi kerak. Lekin, yana bir bor, bu eksponent tarqalish bo'lgani uchun, bu fikrlar juda uzoq bo'lsa, eng yaqin qo'shnilar mulkining saqlanishiga kafolat yo'q, garchi bu maqsad.

Nihoyat, bu kontseptsiyani namoyish etadigan aniq kodlash misoli.

from sklearn.manifold import TSNE
from sklearn.neighbors import KNeighborsClassifier
X = [[0],[1],[2],[3],[4],[5],[6],[7],[8],[9]]
y = [0,1,2,3,4,5,6,7,8,9]
neighs = KNeighborsClassifier(n_neighbors=3)
neighs.fit(X, y)
X_embedded = TSNE(n_components=1).fit_transform(X)
neighs_tsne = KNeighborsClassifier(n_neighbors=3)
neighs_tsne.fit(X_embedded, y)
print(neighs.predict([[1.1]]))
>>>[0]
print(neighs_tsne.predict([[1.1]]))
>>>[0]

Bu juda sodda bir misol bo'lishiga qaramasdan murakkablikni aks ettirmasa ham, ba'zi sodda misollar uchun tajriba orqali ishlaydi.

E'tiroz: Shuningdek, savolning o'zi haqida ba'zi fikrlarni qo'shib qo'ying, shuning uchun buning shart emasligi, matematikadan ratsionalizatsiya qilish sizda aniq bir natija yo'qligini isbotlashi mumkin (aniq yoki ha yo'q) .

Umid qilamanki, bu sizning ba'zi xavotirlaringizni TSNE bilan bartaraf etdi.

6
qo'shib qo'ydi
Yaxshi javob uchun rahmat. Xulosa: Yuqori o'xshashlikka ega bo'lgan ballar yaqin bo'lish ehtimoli yuqori. Tasavvur qilish mumkinki, ehtimolni hisoblash uchun qancha ball ishlatilganini tushunib etmoqchiman, shuning uchun chalkashliklar past bo'lsa, klasterlar ajralib ketishi mumkin. Erta abartma haqida sharhlab bera olasizmi? Bundan tashqari, tasodifiy boshlash bilan bir nechta TSNE dan keyin izchil bo'ladigan bo'lsak, ballar nuqson bo'lishi yoki ularning noto'g'ri tasnifi (boshqa sinfdagi barcha NNlarga ega) ning TSNE maydonidan foydalanish ehtimolini oshiradi?
qo'shib qo'ydi muallif geometrikal, manba
Ha, hayratga tushish - bu bir-biriga qanchalik yaqin bo'lganligining ta'sir etuvchi asosiy omillaridan biri. Erta shubhalanish, intuitiv ravishda asl mohiyatda qanchalik zich klasterlar va ular orasidagi bo'shliqlar orasida qancha bo'sh joy bo'ladi (shuning uchun bu ikkala shubhali fikrni va ballar o'rtasidagi masofani ta'sir qiluvchi erta abartslardan iborat bo'lgan aralashdir.) Sizning oxirgi savolingizga javobingiz Ha, bu me'yorni aks ettirishi sababli joylashtirish sohasidagi muammolarni keltirib chiqarishi mumkin, shuning uchun noto'g'ri tasniflash imkoniyati mavjud.
qo'shib qo'ydi muallif James Shade, manba