tag denetimsiz-öğrenme
Hierarchical Clustering (Hiyerarşik Kümeleme)
Bu sayfada denetimsiz-öğrenme (Hierarchical Clustering (Hiyerarşik Kümeleme)) etiketi ile işaretlenmiş 6 yapay zeka kavramını bulabilirsiniz.
Hiyerarşik kümeleme (hierarchical clustering), veri noktaları arasındaki benzerlik ilişkilerini kullanarak hiyerarşik bir yapı oluşturan denetimsiz öğrenme algoritmasıdır. K-means gibi yöntemlerin aksine, küme sayısını önceden belirlemeyi gerektirmez; bunun yerine tüm veri seti tek bir kümeden başlanarak alt gruplara bölünür ya da bireysel noktalardan başlanarak büyük kümelere birleştirilir. İki temel yaklaşım bulunur. Agglomeratif (birleştirici, aşağıdan yukarı) yöntemde her veri noktası başlangıçta ayrı bir küme kabul edilir; algoritma adım adım en yakın çiftleri birleştirir ve sonunda tek bir büyük kümeye ulaşır. Bu süreç bir ağaç diyagramında — dendrogramda — görselleştirilir. Bölücü (divisive, yukarıdan aşağı) yöntemde ise tüm veri kümesi tek bir gruptan başlar ve tekrarlı bölümlerle alt kümelere ayrılır. Pratikte agglomeratif yöntem çok daha yaygın kullanılmaktadır. Kümeler arasındaki mesafeyi ölçmek için bağlantı kriteri (linkage criterion) seçilir. Tek bağlantı (single linkage) iki kümenin birbirine en yakın noktaları arasındaki mesafeyi kullanır; zincir etkisine (chaining) yatkındır. Tam bağlantı (complete linkage) en uzak noktaları; ortalama bağlantı (average linkage) tüm nokta çiftlerinin ortalama mesafesini kullanır. Ward bağlantısı ise birleştirme sonrası küme içi toplam karesel sapma artışını minimize eder ve genel amaçlı kullanımda dengeli, kompakt kümeler ürettiği için en sık tercih edilen kriterdir. Dendrogramda belirli bir yükseklikte yatay bir kesim çizgisi çekerek istenilen küme sayısına ulaşılır; bu özellik algoritmayı keşifsel veri analizinde değerli kılar. Algoritmanın hesaplama karmaşıklığı naif uygulamada O(n³), bellek kullanımı O(n²) düzeyindedir; bu durum büyük veri kümelerinde ölçeklenebilirliği kısıtlar. Yaklaşık yöntemler ve BIRCH gibi özel algoritmalar bu sorunu kısmen gidermektedir. Biyoinformatik (gen ifadesi analizi, protein sekans sınıflandırması), belge kümeleme, müşteri segmentasyonu, piyasa sepet analizi ve anomali tespiti başlıca uygulama alanları arasındadır. Python'da scipy.cluster.hierarchy ve sklearn.cluster.AgglomerativeClustering modülleriyle kolayca uygulanır; dendrogramlar matplotlib ile görselleştirilebilir. Sonuçlar, kümeleme kalitesini ölçmek için Silhouette skoru veya Cophenetic korelasyon katsayısıyla değerlendirilir.
Hierarchical Clustering (Hiyerarşik Kümeleme)
Hiyerarşik kümeleme (hierarchical clustering), veri noktaları arasındaki benzerlik ilişkilerini kullanarak hiyerarşik bir yapı oluşturan denetimsiz öğrenme algoritmasıdır. K-means gibi yöntemlerin aksine, küme sayısını önceden belirlemeyi gerektirmez; bunun yerine tüm veri seti tek bir kümeden başlanarak alt gruplara bölünür ya da bireysel noktalardan başlanarak büyük kümelere birleştirilir. İki temel yaklaşım bulunur. Agglomeratif (birleştirici, aşağıdan yukarı) yöntemde her veri noktası başlangıçta ayrı bir küme kabul edilir; algoritma adım adım en yakın çiftleri birleştirir ve sonunda tek bir büyük kümeye ulaşır. Bu süreç bir ağaç diyagramında — dendrogramda — görselleştirilir. Bölücü (divisive, yukarıdan aşağı) yöntemde ise tüm veri kümesi tek bir gruptan başlar ve tekrarlı bölümlerle alt kümelere ayrılır. Pratikte agglomeratif yöntem çok daha yaygın kullanılmaktadır. Kümeler arasındaki mesafeyi ölçmek için bağlantı kriteri (linkage criterion) seçilir. Tek bağlantı (single linkage) iki kümenin birbirine en yakın noktaları arasındaki mesafeyi kullanır; zincir etkisine (chaining) yatkındır. Tam bağlantı (complete linkage) en uzak noktaları; ortalama bağlantı (average linkage) tüm nokta çiftlerinin ortalama mesafesini kullanır. Ward bağlantısı ise birleştirme sonrası küme içi toplam karesel sapma artışını minimize eder ve genel amaçlı kullanımda dengeli, kompakt kümeler ürettiği için en sık tercih edilen kriterdir. Dendrogramda belirli bir yükseklikte yatay bir kesim çizgisi çekerek istenilen küme sayısına ulaşılır; bu özellik algoritmayı keşifsel veri analizinde değerli kılar. Algoritmanın hesaplama karmaşıklığı naif uygulamada O(n³), bellek kullanımı O(n²) düzeyindedir; bu durum büyük veri kümelerinde ölçeklenebilirliği kısıtlar. Yaklaşık yöntemler ve BIRCH gibi özel algoritmalar bu sorunu kısmen gidermektedir. Biyoinformatik (gen ifadesi analizi, protein sekans sınıflandırması), belge kümeleme, müşteri segmentasyonu, piyasa sepet analizi ve anomali tespiti başlıca uygulama alanları arasındadır. Python'da scipy.cluster.hierarchy ve sklearn.cluster.AgglomerativeClustering modülleriyle kolayca uygulanır; dendrogramlar matplotlib ile görselleştirilebilir. Sonuçlar, kümeleme kalitesini ölçmek için Silhouette skoru veya Cophenetic korelasyon katsayısıyla değerlendirilir.
K-Means Clustering (K-Ortalamalar Kümeleme)
K-Means Kümeleme (K-Ortalamalar), denetimsiz makine öğreniminin en yaygın algoritmasıdır; etiketsiz bir veri kümesini önceden belirlenen K adet gruba (kümeye), her veri noktasını en yakın merkeze (centroid) atayarak böler. Algoritma 1950'lerin sonunda Stuart Lloyd tarafından geliştirilmiş, James Mac-Queen tarafından 1967'de "K-Means" adıyla resmileştirilmiştir. Çalışma adımları dörde indirgenir. Birinci adımda K adet merkez nokta rastgele ya da K-Means++ yöntemiyle akıllıca seçilir. İkinci adımda her veri noktası, Öklidyen uzaklık hesabıyla en yakın merkeze atanır. Üçüncü adımda her kümenin merkezi, üye noktaların koordinat ortalaması alınarak güncellenir. Merkezler değişmeyene veya iterasyon limiti dolana kadar bu adımlar tekrarlanır; algoritma yerel minimumda yakınsar. K değerinin seçimi algoritmanın en kritik adımıdır. "Dirsek Yöntemi" (Elbow Method), farklı K değerleri için küme içi kareler toplamını (WCSS) hesaplar; eğrinin belirgin dirsek oluşturduğu nokta optimal K'yı işaret eder. Silüet Skoru ise her noktanın kendi kümesine ne kadar sıkı bağlı olduğunu ölçerek -1 ile +1 arasında bir kalite puanı üretir. Ayrıca Bayesian Bilgi Kriteri (BIC) ve Gap İstatistiği de sık kullanılan yöntemler arasındadır. Gerçek dünya uygulamaları geniş bir yelpazeye yayılır: e-ticarette müşteri segmentasyonu, haber platformlarında belge kümeleme, görüntü işlemede renk niceleme (pikselleri K renge indirme), biyoinformatikte gen ekspresyon analizi ve anomali tespiti bunların başında gelir. Amazon ve Netflix, kullanıcı davranışlarını analiz etmek için K-Means tabanlı segmentasyon yöntemlerinden yararlanmaktadır. Algoritmanın temel sınırlamaları şunlardır: küre dışı geometriler (hilal, iç içe geçmiş kümeler) için yetersiz kalması, aykırı değerlere duyarlılık ve K'nın önceden belirlenmesi zorunluluğu. Bu durumlar için DBSCAN (gürültü toleranslı, şekle bağımsız), GMM - Gauss Karışım Modeli (olasılıksal üyelik) veya hiyerarşik kümeleme (K gerektirmez) alternatif olarak tercih edilebilir.
Topic Modeling (Konu Modelleme)
Konu modelleme (topic modeling), büyük metin koleksiyonlarındaki gizli tematik yapıları otomatik olarak keşfeden bir doğal dil işleme tekniğidir. Etiketlenmemiş belgelerin içinde hangi konuların ne yoğunlukta geçtiği istatistiksel yöntemlerle çıkarılır; böylece binlerce hatta milyonlarca belgeyi elle incelemeye gerek kalmadan anlamsal gruplamalar elde etmek mümkün olur. Alanın en klasik algoritması Latent Dirichlet Allocation (LDA)'dır. LDA, her belgenin birden fazla konunun karışımından oluştuğunu ve her konunun belirli kelimelerin olasılıklı dağılımı olduğunu varsayar. Model bu dağılımları yinelemeli Bayes çıkarımı (Gibbs örneklemesi veya değişimsel çıkarım) yoluyla öğrenir. Çıktı olarak her konu için en olasılıklı kelimeler listesi elde edilir; araştırmacı bu listeye bakarak konuya anlamsal bir etiket atar. LDA'nın bag-of-words temsili sözcük sırası ve bağlamı yok sayar. BERTopic bu sorunu kökten çözer: cümleler önce BERT gibi bir dönüştürücü modelle bağlam duyarlı vektörlere dönüştürülür, ardından UMAP ile boyut azaltma ve HDBSCAN ile kümeleme uygulanır; son adımda c-TF-IDF ile temsil kelimeleri seçilir. Bu yaklaşım Türkçe gibi morfolojik açıdan zengin dillerde de yüksek kaliteli konular üretir. Pratik kullanım alanları son derece geniştir: müşteri destek ekipleri yüzlerce günlük şikayet e-postasını otomatik kategorilere ayırır; akademisyenler on yıllar içinde yayımlanan binlerce makaleyi tarayarak araştırma trendlerini tespit eder; hukuk firmaları e-keşif süreçlerinde milyonlarca belgeyi konulara göre gruplandırır. Konu sayısının (K hiperparametresi) doğru belirlenmesi kritiktir; coherence score metrikleri (C_v, UMass) K optimizasyonu için kullanılabilir. Durma kelimelerinin ve nadir kelimelerin ön işleme aşamasında temizlenmesi model kalitesini doğrudan etkiler. Türkçe metinler için Zemberek veya TurkishNLP tabanlı lemmatizasyon zorunlu bir adımdır. Ayrıca dinamik konu modelleme (DTM) ve zaman serisi tabanlı yaklaşımlar, konuların zaman içinde nasıl değiştiğini izlemek için kullanılmaktadır.
Clustering (Kümeleme (Clustering))
Kümeleme (clustering), bir veri setindeki örnekleri önceden tanımlanmış etiketler kullanmadan, yalnızca verinin iç yapısına dayalı benzerlik ölçütlerine göre gruplara ayıran denetimsiz öğrenme tekniğidir. Her küme, üyeleri arasındaki mesafenin (veya başka bir benzerlik metriğinin) küme dışı noktalara göre daha küçük olduğu, homojen bir veri alt kümesidir. Kümeleme algoritmaları farklı geometrik varsayımlara dayanır; bu nedenle algoritma seçimi verinin şekline ve yoğunluğuna bağlıdır. K-Means, veriyi önceden belirtilen k merkeze (centroid) yakınlığa göre böler; kümelerin yaklaşık küresel ve eşit büyüklükte olduğu varsayımıyla çalışır. Hierarchical Clustering (hiyerarşik kümeleme), dendogram adı verilen ağaç yapısı üzerinden küme sayısına önceden karar vermeye gerek duymadan farklı granülerlikte kümeler sunar. DBSCAN (Density-Based Spatial Clustering of Applications with Noise) ise yoğunluk tabanlı çalışır; keyfi şekilli kümeleri bulabilir ve gürültü noktalarını aykırı değer olarak etiketler — bu özellik K-Means'e kıyasla önemli bir avantajdır. Küme kalitesini değerlendirmek için gerçek etiketler olmadan da kullanılabilen iç metrikler mevcuttur. Silhouette skoru, her noktanın kendi kümesine ne kadar yakın, komşu kümelere ne kadar uzak olduğunu -1 ile +1 arasında ölçer; yüksek skor iyi ayrışmış kümelere işaret eder. Davies-Bouldin indeksi ve Calinski-Harabasz skoru da benzer amaçla kullanılan yaygın metriklerdir. K-Means için en uygun k değerini bulmak amacıyla "dirsek yöntemi" (elbow method) ve silhouette analizi birlikte kullanılır. Pratik uygulamaları arasında müşteri segmentasyonu, belge sınıflandırma, anomali tespiti, görüntü renk nicemleme (color quantization), gen ifadesi analizi ve sosyal ağ topluluğu tespiti sayılabilir. Makine öğrenmesinde kümeleme ayrıca özellik mühendisliği aşamasında yeni değişkenler türetmek veya yarı-denetimli öğrenme için etiketleme maliyetini düşürmek amacıyla da kullanılır. Python'da scikit-learn kütüphanesi KMeans, DBSCAN, AgglomerativeClustering gibi tüm temel algoritmaları standart arayüzle sunar.
Isolation Forest (İzolasyon Ormanı) (İzolasyon Ormanı)
Isolation Forest (İzolasyon Ormanı), aykırı değerleri (anomalileri) tespit etmek amacıyla geliştirilmiş, denetimsiz öğrenmeye dayalı bir makine öğrenimi algoritmasıdır. Fei Tony Liu, Kai Ming Ting ve Zhi-Hua Zhou tarafından 2008 yılında ICDM (IEEE Uluslararası Veri Madenciliği Konferansı) konferansında sunulan bu yöntem, geleneksel yaklaşımların aksine normal veri noktalarını modelleme yerine doğrudan aykırı değerleri izole etme ilkesine dayanır. Algoritmanın çalışma mantığı şudur: Aykırı değerler, veri dağılımının yoğun bölgelerinden uzak ve sayıca az olduğundan rastgele seçilen özellik ve bölme değerleriyle inşa edilen ikili karar ağaçlarında (izolasyon ağaçları) çok daha az bölmeyle izole edilir. Normal veri noktaları ise birbirinden ayrılmak için çok sayıda bölme gerektirdiğinden ağacın derinliklerinde kalır. Bir veri noktasının kökten yaprağa kadar olan ortalama yol uzunluğu, o noktanın anomali skoru olarak kullanılır; kısa yol uzunluğu yüksek aykırılığa işaret eder. Yüzlerce izolasyon ağacından oluşan orman oluşturulurken her ağaç, verinin rastgele bir alt örnekleminden bağımsız olarak eğitilir. Bu yaklaşım, O(n log n) zaman karmaşıklığıyla Yerel Aykırı Faktör (LOF) gibi mesafeye dayalı yöntemlerin O(n²) karmaşıklığına kıyasla çok daha verimlidir; özellikle yüksek boyutlu ve büyük veri setlerinde belirgin bir performans avantajı sunar. Başlıca hiperparametreler: n_estimators (izolasyon ağacı sayısı, varsayılan 100), max_samples (her ağaç için örneklenen veri sayısı) ve contamination (beklenen anomali oranı, 0.0-0.5 arası). Python scikit-learn kütüphanesinde sklearn.ensemble.IsolationForest sınıfı olarak kullanılabilir; fit_predict() yöntemi normal veri noktaları için +1, aykırı değerler için −1 döndürür. Uygulama alanları arasında kredi kartı dolandırıcılığı tespiti, ağ saldırısı izleme, üretim hattı kalite kontrolü, IoT sensör anormalliklerinin belirlenmesi ve tıbbi teşhiste anormal bulgu tespiti sayılabilir. 2019 yılında Hariri ve ekibinin geliştirdiği Extended Isolation Forest ise eksen-paralel bölme kısıtını kaldırarak karmaşık veri dağılımlarındaki anomali algılama doğruluğunu iyileştirmiştir. Düşük bellek tüketimi, az sayıda hiperparametre ve yüksek ölçeklenebilirlik özellikleriyle büyük veri ortamlarında da tercih edilen bir anomali tespiti çözümüdür.
t-SNE (t-SNE (T-Dağılımlı Stokastik Komşu Gömme))
t-SNE (t-Distributed Stochastic Neighbor Embedding), yuksek boyutlu veriyi iki veya uc boyutlu bir uzaya gorselleştirme amaciyla indirgemek icin kullanilan dogrusal olmayan bir boyut indirgeme yontemidir. 2008 yilinda Laurens van der Maaten ve Geoffrey Hinton tarafindan tanitilan bu algoritma, ozellikle derin ogrenme modellerinin gizli katman temsillerini (embedding) insan gozuyle kavranabilir bicimde gorselleştirme konusunda standart arac haline gelmistir. Algoritmanin calisma prensibi iki temel asamaya dayanir. Birinci asamada yuksek boyutlu uzaydaki her nokta cifti arasindaki benzerlikler Gaussian dagilimi kullanilarak kosullu olasilik degerlerine donusturulur; yakin noktalar yuksek, uzak noktalar dusuk olasilik alir. Ikinci asamada bu dagilim dusuk boyutlu uzayda Student-t dagilimiyla yeniden modellenir. Algoritma, iki dagilim arasindaki Kullback-Leibler (KL) iraksamasini minimize ederek veriyi dusuk boyutlu uzaya gomer. Student-t dağiliminin kalin kuyrugu, uzak noktalarin dusuk boyutlu temsilde daha da ayrismasini saglar ve kalabalik problemi olarak bilinen yapisal bozulmayı buyuk olcude giderir. En kritik hiperparametre perplexity degeridir; bu parametre her nokta icin efektif komsu sayisini belirler ve tipik olarak 5 ile 50 arasinda ayarlanir. Dusuk degerler yerel yapiyi on plana cikarirken yuksek degerler kuresel yapiyi daha iyi yakalar. Cikti rastsal baslangica duyarli oldugundan tekrarlanabilirlik icin random_state parametresinin sabitlenmesi zorunludur. PCA ile karsilastirildiginda t-SNE dogrusal olmayan manifold yapilarini daha iyi ortaya cikarir; ancak eksen degerlerinin dogrudan yorumu yoktur ve yeni veri noktalari icin projeksiyon uretemez. Buyuk veri kumelerinde hesaplama maliyeti yuksek oldugunde Barnes-Hut t-SNE veya GPU hizlandirmali RAPIDS cuML gibi olceklenebilir alternatiflere basvurulur. MNIST rakam gorselleştirmesi, scRNA-seq hucre populasyonu analizi ve transformer gomu uzayi arastirmalari en yaygin uygulama alanlaridir. Scikit-learn uzerinden TSNE sinifi ile hizla uygulanabilir; buyuk ol cekler icin openTSNE veya UMAP alternatif olarak degerlendirilebilir.