SvmLightLoader 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.
Bu, verileri SVM-light biçimine yakın bir biçimde okumaya çalışır. Hedef, SVM-light biçimli verilerin çoğunluğunun bu yükleyici tarafından yorumlanabilir olmasıdır.
public sealed class SvmLightLoader : Microsoft.ML.IDataLoader<Microsoft.ML.Data.IMultiStreamSource>
type SvmLightLoader = class
interface IDataLoader<IMultiStreamSource>
interface ICanSaveModel
Public NotInheritable Class SvmLightLoader
Implements IDataLoader(Of IMultiStreamSource)
- Devralma
-
SvmLightLoader
- Uygulamalar
Açıklamalar
Yükleyici, aşağıdaki genel yollarla SVM-light'ın ayrıştırma davranışından da farklı olabilir:
- olarak IDataView, vektörlerin mantıksal bir uzunluğa sahip olması gerekir ve pratik nedenlerden dolayı, bu yükleyicinin çıkışı sabit uzunlukta vektör türüne sahipse yararlıdır çünkü az sayıda tahmin aracı ve temel eğitmen tahmin aracı değişken uzunlukta vektör türlerinin özelliklerini kabul etmemektedir. SVM-light'ın böyle bir kavramı yoktu.
- Deyimin IDataView farklı davranış w.r.t. ayrıştırma hataları vardır.
- SVM-light, biçiminde bu yükleyici kavramını kısıtlamaya çalışmak için doğal olmayan bazı kısıtlamalara sahiptir.
- Bu biçimin yıllar içinde gerçekleşen bazı yaygın "uzantıları", mantıklı yerlerde barındırılır ve genellikle bazı seçenekler belirtilerek desteklenir.
SVM-light biçimi burada özetlenebilir. SVM-light dosyası, '#' ile başlayan herhangi bir sayıda satıra yol açabilir. Bunlar atılır. {label} {key}:{value} {key}:{value} ... {key}:{value}[#{comment}]
Satırlar, # açıklama karakteri (varsa) yoksayılmadan önce satır içinde boşluk olsa da boşluk kırpılmaz. SVM-light standart C "isspace" işlevini kullanırken biz boşluk olarak yalnızca boşluk ve sekmeye saygı gösteririz. Bu nedenle, yukarıdaki satırdaki boşluklar, örneğin sekmeler olabilir ve hatta sıralı olarak birden fazla boşluk olabilir. Örneğin, metin yükleyicisinin biçiminden farklı olarak, "boş" alanın durumu yoktur.
Özellik vektör, bir dizi anahtar/değer çifti aracılığıyla belirtilir. SVM-light, anahtarların pozitif olmasını ve üç özel anahtar dışında tamsayıları artırmasını gerektirir: maliyet (Ağırlık olarak yorumlayacağız), qid (GroupId olarak yorumlayacağız) ve sid (bunları yoksayarız, ancak gelecekte herhangi bir öğrencimiz Slack id'ye benzer bir şey uygularsa bunları sütun olarak sunabilir). 'maliyet' değeri float, 'qid' uzun ve 'sid' değeri pozitif olması gereken uzun bir değerdir. Bu anahtarlar birden çok kez belirtilirse, sonuncusu kazanır.
SVM-light değerin kuyruğu sayı olarak yorumlanamazsa kuyruğu yoksayar. Örneğin, "5:3.14hello" "5:3.14" ile aynı şekilde yorumlanır. Bu yükleyici bu söz dizimlerini desteklemiyor.
Özellik vektörlerimizi oluşturma şeklimiz nedeniyle, yükleyicimizde değerleri artırması gereken anahtarlar üzerindeki kısıtlamayı korumayız, ancak bu ilkenin hala izlenmesi durumunda en verimli yöntem olacaktır. Takip edilirse bir sıralama gerekmez.
Bu yükleyici, anahtarlar için ham metni okumak ve özellik dizinlerine dönüştürmek için özel seçeneğe sahiptir ve sonuçta elde edilen özellik vektörün özellik adları olarak metin anahtarı değerlerini korur. Bunun amacı, biçimin ortak bir çeşidi olan dize anahtarlarına izin vermektir, ancak özgün biçim tarafından açık bir şekilde buna izin verilmez.
Yöntemler
GetOutputSchema() |
Bu, verileri SVM-light biçimine yakın bir biçimde okumaya çalışır. Hedef, SVM-light biçimli verilerin çoğunluğunun bu yükleyici tarafından yorumlanabilir olmasıdır. |
Load(IMultiStreamSource) |
Bu, verileri SVM-light biçimine yakın bir biçimde okumaya çalışır. Hedef, SVM-light biçimli verilerin çoğunluğunun bu yükleyici tarafından yorumlanabilir olmasıdır. |
Belirtik Arabirim Kullanımları
ICanSaveModel.Save(ModelSaveContext) |
Bu, verileri SVM-light biçimine yakın bir biçimde okumaya çalışır. Hedef, SVM-light biçimli verilerin çoğunluğunun bu yükleyici tarafından yorumlanabilir olmasıdır. |
Uzantı Metotları
Preview<TSource>(IDataLoader<TSource>, TSource, Int32) |
öğesinin belirli bir üzerindeki etkisinin önizlemesini |
Append<TSource,TTrans>(IDataLoader<TSource>, TTrans) |
Bu veri yükleyiciye bir transformatör ekleyerek yeni bir bileşik yükleyici oluşturun. |
Append<TSource,TTrans>(IDataLoader<TSource>, IEstimator<TTrans>) |
Bu veri yükleyiciye bir tahmin aracı ekleyerek yeni bir bileşik yükleyici tahmin aracı oluşturun. |