ML.NET algoritması seçme
Her ML.NET göreviiçin, seçecek birden çok eğitim algoritması vardır. Hangisini seçecek, çözmeye çalıştığınız soruna, verilerinizin özelliklerine ve mevcut işlem ve depolama kaynaklarına bağlıdır. Makine öğrenmesi modeli eğitiminin bir iterative işlem olduğunu unutmayın. En iyi şekilde çalışan algoritmayı bulmak için birden çok algoritmayı denemelisiniz.
Algoritmalar özellikleri üzerinde çalışır. Özellikler, giriş verilerinizden hesaplanan sayısal değerlerdir. Bunlar makine öğrenmesi algoritmaları için en uygun girişlerdir. Ham giriş verilerinizi bir veya daha fazla veri dönüştürmesi kullanarak özelliklere dönüştürebilirsiniz. Örneğin, metin verileri bir dizi sözcük sayısına ve sözcük birleşimi sayılarına dönüşür. Özellikler, veri dönüştürmeleri kullanılarak ham veri türünden ayıklandıktan sonra özellik kazandırma olarak adlandırılır. Örneğin, örnek olarak 1.000.000.000.000.000.000.000.000.
Eğitimci = Algoritma + Görev
Algoritma, modeli oluşturmak için yürütülen matematiktir. Farklı algoritmalar farklı özelliklere sahip modeller üretir.
ML.NET ile aynı algoritma farklı görevlere uygulanabilir. Örneğin, Stokastik İkili Koordinat Ascent İkili Sınıflandırma, Çok Sınıflı Sınıflandırma ve Regresyon için kullanılabilir. Fark, algoritmanın çıkışlarının görevle eşleşmek için yorumlanmasıdır.
her algoritma/görev birleşimi için ML.NET, eğitim algoritmasını yürüten ve yorumlamayı yapan bir bileşen sağlar. Bu bileşenlere eğitmen denir. Örneğin, SdcaRegressionTrainer Regresyon görevine uygulanan StochasticDualCoordinatedAscent algoritmasını kullanır.
Doğrusal algoritmalar
Doğrusal algoritmalar, giriş verilerinden ve bir ağırlık kümesinden doğrusal bir bileşiminden puanları hesaplıyor bir model üretir. Ağırlıklar, eğitim sırasında tahmin edilen modelin parametreleridir.
Doğrusal algoritmalar, doğrusal olarak ayrılabilir özellikler için iyi çalışır.
Doğrusal bir algoritmayla eğitmeden önce özelliklerin normalleştirilmiş olması gerekir. Bu, bir özelliğin sonuç üzerinde diğerlerine göre daha fazla etkisine sahip olması engel olur.
Doğrusal algoritmalar genel olarak ölçeklenebilir, hızlı, eğitilebilir ucuz ve tahmin için ucuzdur. Bu özellikler, özellik sayısına göre ve eğitim veri kümesi boyutuna göre ölçeklendirildi.
Doğrusal algoritmalar, eğitim verileri üzerinde birden çok geçiş sağlar. Veri kümeniz belleğe sığıyorsa, eğitimciyi eklemeden önce ML.NET işlem hattınıza bir önbellek denetim noktası eklemek eğitimin daha hızlı çalışmasına neden olur.
Ortalama perceptron
Metin sınıflandırması için en iyi.
| Eğitmen | Görev | ONNX Dışarı Aktarılabilir |
|---|---|---|
| AveragedPerceptronTrainer | İkili sınıflandırma | Yes |
Stokastik çift eşgüdümli ascent
İyi bir varsayılan performans için ayarlama gerekmez.
| Eğitmen | Görev | ONNX Dışarı Aktarılabilir |
|---|---|---|
| SdcaLogisticRegressionBinaryTrainer | İkili sınıflandırma | Yes |
| SdcaNonCalibratedBinaryTrainer | İkili sınıflandırma | Yes |
| SdcaMaximumEntropyMulticlassTrainer | Çok sınıflı sınıflandırma | Yes |
| SdcaNonCalibratedMulticlassTrainer | Çok sınıflı sınıflandırma | Yes |
| SdcaRegressionTrainer | Regresyon | Yes |
L-BFGS
Özellik sayısı büyük olduğunda kullanın. Lojistik regresyon eğitim istatistikleri üretir, ancak AveragedPerceptronTrainer kadar iyi ölçeklendirilmemiştir.
| Eğitmen | Görev | ONNX Dışarı Aktarılabilir |
|---|---|---|
| LbfgsLogisticRegressionBinaryTrainer | İkili sınıflandırma | Yes |
| LbfgsMaximumEntropyMulticlassTrainer | Çok sınıflı sınıflandırma | Yes |
| LbfgsPoissonRegressionTrainer | Regresyon | Yes |
Sembolik stokastik gradyan inişi
En hızlı ve en doğru doğrusal ikili sınıflandırma eğitmeni. İşlemci sayısıyla iyi ölçekler.
| Eğitmen | Görev | ONNX Dışarı Aktarılabilir |
|---|---|---|
| SymbolicSgdLogisticRegressionBinaryTrainer | İkili sınıflandırma | Yes |
Çevrimiçi gradyan inişi
Bir kayıp işlevi seçeneğiyle standart (toplu iş olmayan) stokastik gradyan iner ve zaman içinde görülen vektörlerin ortalamasını kullanarak ağırlık vektörü güncelleştirme seçeneği sunar.
| Eğitmen | Görev | ONNX Dışarı Aktarılabilir |
|---|---|---|
| OnlineGradientDescentTrainer | Regresyon | Yes |
Karar ağacı algoritmaları
Karar ağacı algoritmaları bir dizi karar içeren bir model oluşturun: veri değerleri aracılığıyla etkili bir akış grafiği.
Bu algoritma türünü kullanmak için özelliklerin doğrusal olarak ayrılabilir olması gerekir. Özellik vektörü değerleri karar sürecinde bağımsız olarak kullanıldıkları için özelliklerin normalleştirilmiş olması da gerek yoktur.
Karar ağacı algoritmaları genellikle çok doğrudur.
Genelleştirilmiş Eklenebilir Modeller (GAM) dışında, özellik sayısı büyük olduğunda ağaç modelleri açıklanabilirliği eksik olabilir.
Karar ağacı algoritmaları daha fazla kaynak alır ve doğrusal olanlar kadar ölçeklendirmez. Belleğe sığan veri kümelerini iyi performansla karşılarlar.
Gelişmiş karar ağaçları, her ağacın giriş verilerini puanlatır ve puanı bir sonraki ağaç üzerine aktararak daha iyi bir puan ürettiği küçük ağaç grubu ve grup içinde yer alan her ağacın bir öncekine göre gelişmesini sağlar.
Açık gradyan artırlı makine
İkili sınıflandırma ağacı eğitmenlerinin en hızlı ve en doğruları. Yüksek oranda ayarlanabilir.
| Eğitmen | Görev | ONNX Dışarı Aktarılabilir |
|---|---|---|
| LightGbmBinaryTrainer | İkili sınıflandırma | Yes |
| LightGbmMulticlassTrainer | Çok sınıflı sınıflandırma | Yes |
| LightGbmRegressionTrainer | Regresyon | Yes |
| LightGbmRankingTrainer | Sıralamasına | No |
Hızlı ağaç
Korleştirilmiş görüntü verileri için kullanın. Dengesiz verilere dayanıklı. Yüksek düzeyde tunable.
| Eğitmen | Görev | ONNX dışarı aktarılabilir |
|---|---|---|
| FastTreeBinaryTrainer | İkili sınıflandırma | Yes |
| FastTreeRegressionTrainer | Regresyon | Yes |
| FastTreeTweedieTrainer | Regresyon | Yes |
| FastTreeRankingTrainer | Sıralamasına | No |
Hızlı orman
Gürültülü verilerle iyi sonuç verir.
| Eğitmen | Görev | ONNX dışarı aktarılabilir |
|---|---|---|
| FastForestBinaryTrainer | İkili sınıflandırma | Yes |
| FastForestRegressionTrainer | Regresyon | Yes |
Genelleştirilmiş eklenebilir model (GAM)
Ağaç algoritmalarıyla iyi sonuç veren, ancak explainability bir öncelik olduğu sorunlar için idealdir.
| Eğitmen | Görev | ONNX dışarı aktarılabilir |
|---|---|---|
| GamBinaryTrainer | İkili sınıflandırma | No |
| GamRegressionTrainer | Regresyon | No |
Matris ayırma
Matris ayırma
Önerideki birlikte çalışan filtrelemesi için kullanılır.
| Eğitmen | Görev | ONNX dışarı aktarılabilir |
|---|---|---|
| MatrixFactorizationTrainer | Öneri | No |
Alan duyarlı Faks makinesi
Büyük veri kümeleriyle seyrek kategorik veriler için idealdir.
| Eğitmen | Görev | ONNX dışarı aktarılabilir |
|---|---|---|
| FieldAwareFactorizationMachineTrainer | İkili sınıflandırma | No |
Meta algoritmalar
Bu traçler, ikili bir eğitimci tarafından çok sınıflı bir değer oluşturur. ,,,,,, İle kullanın AveragedPerceptronTrainer LbfgsLogisticRegressionBinaryTrainer SymbolicSgdLogisticRegressionBinaryTrainer LightGbmBinaryTrainer FastTreeBinaryTrainer FastForestBinaryTrainer GamBinaryTrainer .
Tek ve tüm
Bu çok sınıf Sınıflandırıcısı her sınıf için bir ikili sınıflandırıcının yanı da bu sınıfı diğer tüm sınıflardan ayırt eder. Sınıflandırılacak sınıf sayısına göre ölçeğe göre sınırlandırılmıştır.
| Eğitmen | Görev | ONNX dışarı aktarılabilir |
|---|---|---|
| OneVersusAllTrainer | Birden çok Lass sınıflandırması | Yes |
İkili eşlenme
Bu çok sınıf Sınıflandırıcısı, her sınıf çiftinde ikili bir sınıflandırma algoritması oluşturur. , İki sınıfın birleşiminin eğitililmesi gerektiği için sınıfların sayısına göre ölçeklendirilmesine sınırlıdır.
| Eğitmen | Görev | ONNX dışarı aktarılabilir |
|---|---|---|
| PairwiseCouplingTrainer | Birden çok Lass sınıflandırması | No |
K-anlamı
Kümeleme için kullanılır.
| Eğitmen | Görev | ONNX dışarı aktarılabilir |
|---|---|---|
| KMeansTrainer | Kümeleme | Yes |
Sorumlu bileşen analizi
Anomali algılama için kullanılır.
| Eğitmen | Görev | ONNX dışarı aktarılabilir |
|---|---|---|
| RandomizedPcaTrainer | Anormallik algılama | No |
Sade Bayes
Özellikler bağımsız olduğunda ve eğitim veri kümesi küçük olduğunda bu çok sınıflı sınıflandırma algoritmasını kullanın.
| Eğitmen | Görev | ONNX dışarı aktarılabilir |
|---|---|---|
| NaiveBayesMulticlassTrainer | Birden çok Lass sınıflandırması | Yes |
Önceki seyahat
Diğer eğitiçilerin performansını temel almak için bu ikili sınıflandırma algoritmasını kullanın. Etkili olması için, diğer traçilerin ölçümleri önceki eğitime göre daha iyi olmalıdır.
| Eğitmen | Görev | ONNX dışarı aktarılabilir |
|---|---|---|
| PriorTrainer | İkili sınıflandırma | Yes |
Vektör makinelerini destekleme
Destek vektör makineleri (SVMs), doğrusal ve doğrusal olmayan sınıflandırma görevlerinde kullanılabilecek, denetimli bir öğrenme modellerinin son derece popüler ve iyi arandığı bir sınıftır.
Son araştırma, bu modelleri daha büyük eğitim kümelerine verimli bir şekilde ölçeklendirmek için iyileştirmek için yöntemlere odaklanmıştır.
Doğrusal SVM
Boole olarak etiketlenen veriler üzerinde eğitilen doğrusal bir ikili sınıflandırma modeli kullanarak bir hedefi tahmin eder. Stokastik gradyan adımları ve İzdüşüm adımları arasında alternatifler.
| Eğitmen | Görev | ONNX dışarı aktarılabilir |
|---|---|---|
| LinearSvmTrainer | İkili sınıflandırma | Yes |
Yerel derin SVM
Doğrusal olmayan bir ikili sınıflandırma modeli kullanarak bir hedefi tahmin eder. Tahmin süresi maliyetini azaltır; tahmin maliyeti, daha erken bir şekilde, sınıflandırma doğruluğunun toleransı kaybı ile değil, eğitim kümesinin boyutuyla logaritarak büyüyerek artar.
| Eğitmen | Görev | ONNX dışarı aktarılabilir |
|---|---|---|
| LdSvmTrainer | İkili sınıflandırma | Yes |
Normal en az kareler
Normal en az kareler (IR), doğrusal Regresyondaki en yaygın olarak kullanılan tekniklerin biridir.
Normal en az kareler, hatayı gerçek değerden tahmin edilen satıra kadar olan uzaklık karenin toplamı olarak hesaplayan kayıp işlevini ifade eder ve kare içinde hatayı en aza indirerek modele uyar. Bu yöntem, girişler ve bağımlı değişken arasında güçlü doğrusal bir ilişki olduğunu varsayar.
| Eğitmen | Görev | ONNX dışarı aktarılabilir |
|---|---|---|
| OlsTrainer | Regresyon | Yes |