KMeansTrainer Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
IEstimator<TTransformer> KMeans kümeleyicisini eğitme
public class KMeansTrainer : Microsoft.ML.Trainers.TrainerEstimatorBase<Microsoft.ML.Data.ClusteringPredictionTransformer<Microsoft.ML.Trainers.KMeansModelParameters>,Microsoft.ML.Trainers.KMeansModelParameters>
type KMeansTrainer = class
inherit TrainerEstimatorBase<ClusteringPredictionTransformer<KMeansModelParameters>, KMeansModelParameters>
Public Class KMeansTrainer
Inherits TrainerEstimatorBase(Of ClusteringPredictionTransformer(Of KMeansModelParameters), KMeansModelParameters)
- Devralma
Açıklamalar
Bu eğitmeni oluşturmak için KMeans veya Kmeans(Seçenekler) kullanın.
Giriş ve Çıkış Sütunları
Giriş özellikleri sütun verileri olmalıdır Single. Etiket sütunu gerekmez. Bu eğitmen aşağıdaki sütunları oluşturur:
Çıkış Sütunu Adı | Sütun Türü | Description |
---|---|---|
Score |
vektör Single | Verilen veri noktasının tüm kümelerin centroid'lerine olan uzaklıkları. |
PredictedLabel |
anahtar türü | Model tarafından tahmin edilen en yakın küme dizini. |
Eğitmen Özellikleri
Makine öğrenmesi görevi | Kümeleme |
Normalleştirme gerekli mi? | Yes |
Önbelleğe alma gerekli mi? | Yes |
Microsoft.ML ek olarak gerekli NuGet | Hiçbiri |
ONNX'e aktarılabilir | Yes |
Eğitim Algoritması Ayrıntıları
K ortalamalar popüler bir kümeleme algoritmasıdır. K ortalamaları ile veriler, küme içindeki uzaklıkların kare toplamını en aza indirmek için belirtilen sayıda kümede kümelendirilir. Bu uygulama Yinyang K-means yöntemini izler. İlk küme centeroidlerini seçmek için üç seçenekten biri kullanılabilir:
- Rastgele başlatma. Bu, en uygun kümelemenin kötü tahminlerine yol açabilir.
- K-means++ yöntemi. Bu, burada Ding ve diğer kişiler tarafından sunulan ve en uygun K ortalamalar çözümüne uygun $O(log K)$ olan bir çözüm bulmayı garanti eden geliştirilmiş bir başlatma algoritmasıdır.
- K-ortalamalar|| Yöntem. Bu yöntem burada Bahmani ve diğerleri tarafından tanıtıldı ve iyi bir başlatma elde etmek için gereken geçiş sayısını önemli ölçüde azaltan paralel bir yöntem kullanır.
K-ortalamalar|| varsayılan başlatma yöntemidir. Diğer yöntemler, KMeansTrainer(Seçenekler) kullanarak eğitmeni oluştururken seçenekler bölümünde belirtilebilir.
Puanlama İşlevi
Çıkış Puanı sütunu, her kümenin centroid'unda verilen $\textbf{x}\in \mathbb{R}^n$ giriş vektörünün $L_2$-norm uzaklığı (Öklid uzaklığı) karesini içerir. $c$-. kümesinin centriod değerinin $\textbf{m}_c \in \mathbb{R}^n$ olduğunu varsayalım. Score sütunundaki $c$-th değeri $d_c = || \textbf{x} - \textbf{m}_c || _2^2$. Tahmin edilen etiket, $[d_{0}, \dots, d_{K-1}]$ $K$ boyutlu vektöründe en küçük değere sahip dizindir ve burada $K$ küme sayısıdır.
K ortalamalar ve K-ortalamalar++ hakkında daha fazla bilgi için bkz. K-ortalamalarK-ortalamalar++
Kullanım örneklerinin bağlantıları için Ayrıca Bkz. bölümüne bakın.
Alanlar
FeatureColumn |
Eğitmenin beklediği özellik sütunu. (Devralındığı yer: TrainerEstimatorBase<TTransformer,TModel>) |
LabelColumn |
Eğitmenin beklediği etiket sütunu. etiketin eğitim için kullanılmadığını gösteren olabilir |
WeightColumn |
Eğitmenin beklediği ağırlık sütunu. olabilir |
Özellikler
Info |
IEstimator<TTransformer> KMeans kümeleyicisini eğitme |
Yöntemler
Fit(IDataView) |
Bir ITransformereğiter ve döndürür. (Devralındığı yer: TrainerEstimatorBase<TTransformer,TModel>) |
GetOutputSchema(SchemaShape) |
IEstimator<TTransformer> KMeans kümeleyicisini eğitme (Devralındığı yer: TrainerEstimatorBase<TTransformer,TModel>) |
Uzantı Metotları
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Tahmin aracı zincirine bir 'önbelleğe alma denetim noktası' ekler. Bu, aşağı akış tahmincilerinin önbelleğe alınan verilere karşı eğitilmesini sağlar. Birden çok veri geçişi alan eğitmenlerden önce bir önbelleğe alma denetim noktası olması yararlıdır. |
WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
Tahmin aracı verildiğinde, çağrıldıktan sonra Fit(IDataView) temsilci çağıracak bir sarmalama nesnesi döndürün. Tahmin aracının neyin uygun olduğu hakkında bilgi döndürmesi genellikle önemlidir. Bu nedenle Fit(IDataView) yöntem yalnızca genel ITransformerbir nesne yerine özel olarak yazılan bir nesne döndürür. Bununla birlikte, aynı zamanda, IEstimator<TTransformer> genellikle birçok nesneye sahip işlem hatları halinde oluşturulur, bu nedenle transformatör almak istediğimiz tahmin aracının EstimatorChain<TLastTransformer> bu zincirde bir yere gömülü olduğu bir tahmin aracı zinciri oluşturmamız gerekebilir. Bu senaryo için, bu yöntem aracılığıyla sığdır çağrıldıktan sonra çağrılacak bir temsilci ekleyebiliriz. |