Görselleştirme için boyutsallık azaltma, t-SNE tarafından çözülen “kapalı” bir sorun olarak mı düşünülmeli?


23

Boyutsallığın azaltılması için -sne algoritması hakkında çok şey okudum . MNIST gibi "klasik" veri kümelerindeki performanstan, rakamların net bir şekilde ayrılmasını sağladığı için çok etkilendim ( orijinal makaleye bakın ):t

t-SNE MNIST

Ayrıca, eğittiğim bir sinir ağı tarafından öğrenilen özellikleri görselleştirmek için de kullandım ve sonuçlardan çok memnun kaldım.

Yani, anladığım kadarıyla:

t -sne, çoğu veri kümesinde iyi sonuçlara sahiptir ve oldukça verimli bir uygulamaya sahiptir - Barnes-Hut yaklaşım yöntemiyle . Öyleyse, en azından iyi 2B / 3B görselleştirmeleri oluşturmak amacıyla "boyutluluk azaltma" sorununun şimdi "kapalı" bir sorun olduğunu söyleyebilir miyiz?O(ngünlükn)

Bunun oldukça cesur bir ifade olduğunu biliyorum. Bu yöntemin potansiyel "tuzaklar" ın ne olduğunu anlamakla ilgileniyorum. Yani, yararlı olmadığını bildiğimiz durumlar var mı? Dahası, bu alandaki "açık" sorunlar nelerdir?

Yanıtlar:


16

Kesinlikle hayır.

T-SNE'nin son derece iyi çalışan ve o dönemde gerçek bir atılım olduğu şaşırtıcı bir algoritma olduğuna katılıyorum. Ancak:

  • ciddi eksiklikleri var;
  • eksikliklerin bazıları çözülebilir olmalıdır ;
  • bazı durumlarda gözle görülür şekilde daha iyi performans gösteren algoritmalar var;
  • birçok t-SNE'nin özellikleri hala tam olarak anlaşılmamıştır.

Birileri t-SNE'nin bazı eksikliklerinin bu çok popüler hesabına bağlandı: https://distill.pub/2016/misread-tsne/ (+1), ancak yalnızca çok basit oyuncak veri setlerini tartıştı ve ben bunun karşılık gelmediğini fark ettim. Gerçek dünya verileri üzerinde t-SNE ve ilgili algoritmalar ile çalışırken pratikte karşılaşılan sorunlara çok iyi. Örneğin:

  1. t-SNE genellikle veri kümesinin küresel yapısını koruyamaz;
  2. N-
  3. N-

Aşağıdaki üçünü de kısaca tartışacağım.


  1. t-SNE genellikle veri kümesinin küresel yapısını koruyamaz.

    Allen Enstitüsü'nden (fare kortikal hücreleri) bu tek hücreli RNA-seq veri setini göz önünde bulundurun: http://celltypes.brain-map.org/rnaseq/mouse . ~ 23k hücrelere sahiptir. Bu veri kümesinin birçok anlamlı hiyerarşik yapıya sahip olduğunu önceden biliyoruz ve bu hiyerarşik kümeleme ile doğrulanıyor. Nöronlar ve nöral olmayan hücreler (glia, astrositler, vb.) Vardır. Nöronlar arasında, uyarıcı ve inhibe edici nöronlar vardır - iki çok farklı gruplar. Örneğin, inhibe edici nöronlar arasında birkaç ana grup vardır: Pvalb ekspresyonu, SSt ekspresyonu, VIP ekspresyonu. Bu grupların herhangi birinde, birden fazla başka küme olduğu görülmektedir. Bu hiyerarşik kümelenme ağacında yansıtılır. Ancak, yukarıdaki bağlantıdan alınan t-SNE:

    görüntü tanımını buraya girin

    Nöral olmayan hücreler gri / kahverengi / siyahtır. Uyarıcı nöronlar mavi / deniz mavisi / yeşil renktedir. İnhibitör nöronlar turuncu / kırmızı / mor renktedir. Biri bu ana grupların birbirine yapışmasını isterdi, ama bu olmadı: t-SNE bir grubu birkaç kümeye ayırdığında, keyfi bir şekilde konumlandırılabilir. Veri kümesinin hiyerarşik yapısı kaybolur.

    Bunun çözülebilir bir sorun olması gerektiğini düşünüyorum, ancak bu yöndeki son zamanlarda yapılan çalışmalara rağmen (benimkiler dahil) iyi ilkeli gelişmelerin farkında değilim.

  2. N-

    t-SNE, MNIST verileri üzerinde çok iyi çalışıyor. Ancak şunu düşünün ( bu makaleden alınmıştır ):

    görüntü tanımını buraya girin

    1 milyon veri noktasıyla, tüm kümeler bir araya toplanır (bunun kesin nedeni çok açık değildir) ve dengeyi dengelemenin bilinen tek yolu, yukarıda gösterildiği gibi bazı kirli hack'lerdir. Tecrübelerden bunun diğer benzer büyük veri setlerinde de gerçekleştiğini biliyorum.

    Tartışmalı olarak bunu MNIST'in kendisiyle görebilirsiniz (N = 70k). Bir göz at:

    görüntü tanımını buraya girin

    Sağ tarafta t-SNE var. Sol tarafta, aktif gelişimde yeni bir heyecan verici yöntem olan UMAP var , ki bu daha eski bir büyükVise çok benziyor . UMAP / largeVis kümeleri birbirinden çok daha uzaklara çeker. Bunun kesin nedeni IMHO belirsizdir; Burada hala anlaşılacak çok şey ve daha da geliştirilecek çok şey olduğunu söyleyebilirim.

  3. Barnes-Hut çalışma zamanı büyük için çok yavaşN-

    N-N-

    görüntü tanımını buraya girin

    Dolayısıyla bu artık tam olarak açık bir sorun olmayabilir, ancak çok yakın zamana kadar sürüyordu ve çalışma süresinde daha fazla gelişme için yer olduğunu sanıyorum. Böylece iş bu yönde kesinlikle devam edebilir.


7

İşte, t-SNE'yi çalıştırırken parametrelerin nasıl değiştirileceğinin çok basit bazı veri setlerini nasıl etkilediğine dair mükemmel bir analiz: http://distill.pub/2016/misread-tsne/ . Genel olarak, t-SNE, parametre ayarlamaya, özellikle de şaşkınlık değerlerine tabi olmasına rağmen, yüksek boyutlu yapıları (kümelerden daha karmaşık ilişkiler dahil) tanımakta iyi görünmektedir.


7

Diğer yorumları dinlemeyi çok isterdim ama şu an için kendi cevabımı göndereceğim. Daha "pratik" bir cevap ararken, t-sne'den bahsetmeye değer iki teorik "avantaj" vardı; İlki daha az problemli ve ikincisi kesinlikle düşünülmeli:

  1. t-sne maliyet işlevi dışbükey değildir, bu nedenle global bir optimum seviyeye ulaşmamız garanti edilmez : Diğer boyutsallık azaltma tekniklerinin (Isomap, LLE) dışbükey bir maliyet işlevi vardır. T-sne'de durum böyle değildir, bu nedenle "iyi" bir çözüme ulaşmak için etkili bir şekilde ayarlanması gereken bazı optimizasyon parametreleri vardır. Bununla birlikte, potansiyel bir teorik tuzak olmasına rağmen, pratikte bunun bir düşüş olduğunu söylemeye değmez, çünkü t-sne algoritmasının “yerel minimumunun” bile diğer yöntemlerin küresel minimumundan daha iyi bir performans sergilediğini (daha iyi görselleştirmeler yarattığını) gösteriyor. .

  2. içsel boyutluluğun laneti : t-sne kullanırken akılda tutulması gereken önemli bir şey, bunun esasen manifold bir öğrenme olduğudur.algoritması. Temel olarak, bu, t-sne (ve bu tür diğer yöntemler) orijinal yüksek boyutun sadece yapay olarak yüksek olduğu durumlarda çalışmak üzere tasarlandığı anlamına gelir: verilere içsel bir alt boyut vardır. yani, veriler daha düşük boyutlu bir manifolda "oturur". Akılda tutulması güzel bir örnek, aynı kişinin ardışık fotoğraflarıdır: Her görüntüyü piksel sayısında (yüksek boyutta) temsil etmeme rağmen, verilerin gerçek boyutsallığı aslında noktaların fiziksel dönüşümü ile sınırlandırılmıştır. bu durumda, başın 3B dönüşü). Bu gibi durumlarda t-sne iyi çalışıyor. Ancak içsel boyutluluğun yüksek olduğu veya veri noktalarının oldukça değişken bir manifolda oturduğu durumlarda, t-sne'nin kötü performans göstermesi beklenir, çünkü en temel varsayım - manifolddaki yerel doğrusallık - ihlal edilmiştir.

Pratik kullanıcı için, bunun akılda tutulması gereken iki yararlı öneri olduğunu düşünüyorum:

  1. Aslında eğer görselleştirme yöntemleri için boyut azaltma yapmadan önce, her zaman dışarı birinci şekle denemek var olan sen işlem verilerine daha düşük içsel bir boyut.

  2. 1'den (ve ayrıca genel olarak) emin değilseniz, orijinal makalenin önerdiği gibi, "çok sayıda değişken veri manifoldunu bir sayıdaki verimli bir şekilde temsil eden bir modelden elde edilen bir veri gösterimi üzerinde t-sne gerçekleştirmek yararlı olabilir otomatik kodlayıcı "gibi doğrusal olmayan katmanların". Bu nedenle, otomatik kodlayıcı + t-sne kombinasyonu bu gibi durumlarda iyi bir çözüm olabilir.


Merhaba @ galoosh33! Cevabımı gözden geçirme şansınız oldu mu merak ediyorum. Yardımcı oldu mu? Bu soruyu sorduktan sonra 1,5 yıl ile hala ilgileniyorsanız, bu konuda bazı görüşleriniz olduğunu takdir edersiniz, bu yüzden bazı görüşlerinizi memnuniyetle karşılarsınız. saat önce :)
amip

1
Mükemmel cevabınız için teşekkürler @ amoeba! Bu haftasonu gözden geçireceğim.
galoosh33
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.