NMF yorumlanabilir parçaları öğrenir

Python'da Unsupervised Learning

Benjamin Wilson

Director of Research at lateral.io

Örnek: NMF yorumlanabilir parçaları öğrenir

  • Sözcük sıklığı dizi makaleleri (tf-idf)
  • 20.000 bilimsel makale (satırlar)
  • 800 sözcük (sütunlar)

Makalelerin sözcük sıklığı dizisi

Python'da Unsupervised Learning

Makalelere NMF uygulama

print(articles.shape)
(20000, 800)
from sklearn.decomposition import NMF
nmf = NMF(n_components=10)
nmf.fit(articles)
NMF(n_components=10)
print(nmf.components_.shape)
(10, 800)
Python'da Unsupervised Learning

NMF bileşenleri konulardır

 

nmf.components_

Python'da Unsupervised Learning

NMF bileşenleri konulardır

 

nmf.components_ içinden bir satır seçili ve her sözcük için çubuk grafiği; yükseklik tf-idf'yi gösterir

Python'da Unsupervised Learning

NMF bileşenleri konulardır

 

üst sözcükler ve değerleri olan kutu: species 2.95, plant 1.05, plants 0.78, vb.

Python'da Unsupervised Learning

NMF bileşenleri konulardır

 

nmf.components_ içindeki farklı satırların en üst sözcükleriyle yeni kutu: university 3.57, prof 1.19, college 0.88, vb.

Python'da Unsupervised Learning

NMF bileşenleri

  • Belgeler için:
    • NMF bileşenleri konuları gösterir
    • NMF özellikleri konuları belgelere birleştirir
  • Görseller için NMF bileşenleri, görselin parçalarıdır

 

3 şeritli kutu yaklaşık olarak 0.98 × tek şeritli kutu + 0.91 × farklı şeritli kutu + 0.95 × başka bir şeritli kutu

Python'da Unsupervised Learning

Gri tonlamalı görseller

  • "Gri tonlama" görsel = renk yok, yalnızca gri tonlar
  • Piksel parlaklığını ölçer
  • 0 ile 1 arasında değerle gösterilir (0 siyah)
  • 2B diziye dönüştürülür

Farklı beyaz/siyah/gri derecelerinde piksellerden oluşan 2'ye 3 dikdörtgen

Python'da Unsupervised Learning

Gri tonlamalı görsel örneği

  • Ayın 8x8 gri tonlamalı bir görseli, bir dizi olarak

 

Ayın pikselli çizimi; aynı boyutta, 0 ile 1 arasında sayılar içeren diziye okla işaret ediyor

Python'da Unsupervised Learning

Düz diziler olarak gri tonlamalı görseller

  • Elemanları numaralandırın
  • Satır satır
  • Soldan sağa, yukarıdan aşağıya

Sayılarla bir diziye işaret eden 2'ye 3 piksel kutu

Python'da Unsupervised Learning

Düz diziler olarak gri tonlamalı görseller

  • Elemanları numaralandırın
  • Satır satır
  • Soldan sağa, yukarıdan aşağıya

2'ye 3 piksel kutusu 2'ye 3 sayı dizisine, o da 1'e 6 sayı dizisine işaret ediyor

Python'da Unsupervised Learning

Görsel koleksiyonunu kodlama

  • Aynı boyutta görseller koleksiyonu
  • 2B dizi olarak kodlayın
  • Her satır bir görsele karşılık gelir
  • Her sütun bir piksele karşılık gelir
  • ... NMF uygulanabilir!

2x3 piksellik görseli temsil eden nmf.components_ satırı

Python'da Unsupervised Learning

Örneklerin görselleştirilmesi

print(sample)
[ 0.   1.   0.5  1.   0.   1. ]
bitmap = sample.reshape((2, 3))
print(bitmap)
[[ 0.   1.   0.5]
 [ 1.   0.   1. ]]
from matplotlib import pyplot as plt
plt.imshow(bitmap, cmap='gray', interpolation='nearest')
plt.show()
Python'da Unsupervised Learning

Haydi pratik yapalım!

Python'da Unsupervised Learning

Preparing Video For Download...