Boyut indirgemesinin ML iş akışlarını nasıl optimize ettiğini öğrenin. Ultralytics performansını ve veri görselleştirmeyi iyileştirmek için PCA ve t-SNE gibi teknikleri keşfedin.
Boyutsallık azaltma, makine öğrenimi (ML) ve veri biliminde, veri kümesindeki girdi değişkenlerinin (genellikle özellikler veya boyutlar olarak adlandırılır) sayısını azaltırken en kritik bilgileri korumak için kullanılan dönüştürücü bir tekniktir. Büyük veri çağında, veri kümeleri genellikle binlerce değişken içerir ve bu da boyutsallığın laneti olarak bilinen bir fenomene yol açar. Bu fenomen, model eğitiminin hesaplama açısından pahalı hale gelmesine, aşırı uyumlanmaya eğilimli olmasına ve yorumlanmasının zorlaşmasına neden olabilir. Yüksek boyutlu verileri daha düşük boyutlu bir alana yansıtarak, uygulayıcılar verimliliği, görselleştirmeyi ve tahmin performansını iyileştirebilirler.
Verilerin karmaşıklığını azaltmak, veri ön işleme süreçlerinde temel bir adımdır. Bu, sağlam yapay zeka (AI) sistemleri oluşturmak için birçok somut avantaj sunar:
Boyutları azaltma yöntemleri genellikle, verilerin küresel doğrusal yapısını veya yerel doğrusal olmayan manifoldunu koruyup korumadıklarına göre sınıflandırılır.
En köklü doğrusal teknik, Temel Bileşen Analizi (PCA)dır. PCA, verilerdeki maksimum varyansı yakalayan "temel bileşenleri" (ortogonal eksenler) belirleyerek çalışır. Orijinal verileri bu yeni eksenlere yansıtır ve çok az bilgi sağlayan boyutları etkili bir şekilde atar. Bu, denetimsiz öğrenme iş akışlarında temel bir unsurdur.
Görüntüler veya metin gömmeleri gibi karmaşık veri yapıları için genellikle doğrusal olmayan yöntemler gerekir. t-Distributed Stochastic Neighbor Embedding (t-SNE) ve UMAP (Uniform Manifold Approximation and Projection) gibi teknikler yerel komşulukları korumada mükemmeldir ve bu da onları yüksek boyutlu kümeleri görselleştirmek için ideal hale getirir. Ek olarak, otomatik kodlayıcılar, girdileri gizli uzay temsiline sıkıştırmak ve bunları yeniden yapılandırmak için eğitilmiş sinir ağlarıdır ve verilerin kompakt kodlamasını etkili bir şekilde öğrenirler.
Boyut indirgeme, derin öğrenmenin (DL) çeşitli alanlarında kritik öneme sahiptir :
Bu kavramı özellik seçiminden ayırmak önemlidir, çünkü bunlar farklı mekanizmalarla benzer hedeflere ulaşır:
Aşağıdaki örnek, yüksek boyutlu çıktıyı (bir görüntü gömme vektörünü simüle eden) nasıl alıp PCA kullanarak nasıl azaltabileceğinizi göstermektedir. Bu, YOLO26 gibi bir modelin benzer sınıfları nasıl gruplandırdığını görselleştirirken sıkça kullanılan bir iş akışıdır.
import numpy as np
from sklearn.decomposition import PCA
# Simulate high-dimensional embeddings (e.g., 10 images, 512 features each)
# In a real workflow, these would come from a model like YOLO26n
embeddings = np.random.rand(10, 512)
# Initialize PCA to reduce from 512 dimensions to 2
pca = PCA(n_components=2)
reduced_data = pca.fit_transform(embeddings)
# Output shape is now (10, 2), ready for 2D plotting
print(f"Original shape: {embeddings.shape}") # (10, 512)
print(f"Reduced shape: {reduced_data.shape}") # (10, 2)