Vowpal Wabbit Sürüm 7-4 Modelini Eğitin

Önemli

Machine Learning Stüdyosu (klasik) desteği 31 Ağustos 2024'te sona erecektir. Bu tarihe kadar Azure Machine Learning'e geçmenizi öneririz.

1 Aralık 2021'den başlayarak artık yeni Machine Learning Stüdyosu (klasik) kaynakları oluşturamayacaksınız. 31 Ağustos 2024'e kadar mevcut Machine Learning Stüdyosu (klasik) kaynaklarını kullanmaya devam edebilirsiniz.

ML Stüdyosu (klasik) belgeleri kullanımdan kaldırılacak ve gelecekte güncelleştirilmeyecektir.

Vowpal Wabbit makine öğrenmesi sisteminin 7-4. sürümünü kullanarak model eğitiyor

Kategori: Metin Analizi

Not

Uygulama: Machine Learning Studio (yalnızca klasik)

Benzer sürükle ve bırak modülleri tasarımcıda da Azure Machine Learning kullanılabilir.

Modüle genel bakış

Bu makalede, Vowpal Wabbit örneği kullanarak bir makine öğrenmesi modeli oluşturmak için Machine Learning Studio'daki (klasik) Vowpal Wabbit Sürüm 7-4'ü Eğitin modülünün nasıl kullanımı açıklanmıştır (sürüm 7-4).

Makine öğrenmesi için Vowpal Wabbit kullanmak üzere girişlerinizi Vowpal Wabbit gereksinimlerine göre biçimlendirin ve verileri bir Azure blob'a kaydedin. Vowpal Wabbit komut satırı bağımsız değişkenlerini belirtmek için bu modülü kullanın.

Deneme çalıştır yüklendiğinde, belirtilen verilerle birlikte deneme çalışma zamanında Bir Vowpal Wabbit örneği yüklenir. Eğitim tamamlandığında model çalışma alanına geri seri hale getirilecek. Verileri puan almak için modeli hemen kullanabilirsiniz. Eğitilen model, daha sonra eğitim verilerini yeniden işlemeye gerek kalmadan kullanabileceğiniz şekilde Azure depolamada da kalıcıdır.

Mevcut bir modeli yeni verilerde artımlı olarak eğitmek için, kaydedilmiş bir modeli Önceden eğitilmiş model girişine bağlama ve yeni verileri diğer girişe ekleme.

Not

Machine Learning Studio (klasik), Vowpal Wabbit çerçevesinin birden çok sürümünü barındırr. Bu modülde Vowpal Wabbit'in 7-4 sürümü kullanılır. Bu modülü kullanarak bir model oluşturmanız gerekirse, ilgili puanlama modülünü kullansanız gerekir: Vowpal Wabbit 7-4 Modelini Puanlama.

En son sürüm için Vowpal Wabbit Sürüm 8 Modelini Eğit'i, puanlama modülü olan Score Vowpal Wabbit 8 Model'i kullanın.

Vowpal Wabbit nedir?

Vowpal Wabbit (VW), Yahoo! tarafından dağıtılmış bilgi işlem için geliştirilmiş hızlı ve paralel bir makine öğrenmesi çerçevesidir! Araştırma. Daha sonra paralel mimarilerde bilimsel bilgi Windows john Langford (Microsoft Research) tarafından uyarlandı.

Makine öğrenmesi için önemli olan Vowpal Wabbit'in özellikleri arasında sürekli öğrenme (çevrimiçi öğrenme), boyut azaltma ve etkileşimli öğrenme yer aldı. Vowpal Wabbit, model verilerini belleğe sığdırmanıza neden olan sorunların çözümüdür.

Machine Learning'de Vowpal Wabbit'in birincil kullanıcıları sınıflandırma, regresyon, konu modellemesi veya matris çarpanlarına dönüştürme gibi makine öğrenmesi görevleri için çerçeveyi kullanan veri bilimcileridir. Vowpal Wabbit için Azure sarmalayıcı, şirket içi sürüme çok benzer performans özelliklerine sahiptir. Bu da kullanıcıların, eğitilen modeli operasyonel bir hizmet olarak kolayca yayımlama becerisi elde ederken Vowpal Wabbit'in güçlü özelliklerini ve yerel performansını kullanarak modeller derlemeye, yeniden eğiterek ve puanlama yapmaya devam ettiği anlamına gelir.

Özellik Karması modülü ayrıca Vowpal Wabbit tarafından sağlanan ve bir karma algoritması kullanarak metin veri kümelerini ikili özelliklere dönüştürmenizi sağlayan işlevleri de içerir.

Vowpal Wabbit Sürüm 8 Modelini yapılandırma

Bu bölümde, yeni bir modeli eğitma ve var olan bir modele yeni veri ekleme açık açıklamalarını içerir.

Studio'daki (klasik) diğer modüllerin aksine, bu modül hem modül parametrelerini belirtir hem de modeli eğiter. Mevcut bir modeliniz varsa, modeli artımlı olarak eğitmek için isteğe bağlı bir giriş olarak ekleyin.

Bu modülün kullanımı için Azure depolama hesabında kimlik doğrulaması gerekir.

Girdi verilerini hazırlama

Bu modülü kullanarak modeli eğitmek için giriş veri kümesi, desteklenen iki biçimden biri olan LibSVM veya VW'de tek bir metin sütunundan oluşur. Bu, Vowpal Wabbit'in yalnızca metin verilerini analiz etme, yalnızca özelliklerin ve değerlerin gerekli metin dosyası biçiminde hazır olması anlamına değildir.

Verilerin Azure depolamadan okunmaları gerekir. Biçim bazı ek değişiklikler gerektirdiği için , Giriş dosyasını Vowpal Wabbit ile kullanmak üzere doğrudan Azure'a kaydetmek için Verileri Dışarı Aktar'ı kullanmak mümkün değildir. Verilerin doğru biçimde olduğundan emin olun ve sonra verileri Azure blob depolamaya yükleyin.

Ancak kısayol olarak Convert to SVMLight modülünü kullanarak bir SVMLight biçim dosyası oluşturabilirsiniz. Daha sonra SVMLight biçim dosyasını Azure blob depolamaya yükleyebilir ve giriş olarak kullanabilir veya dosyayı Vowpal Wabbit giriş dosyası gereksinimlerine uygun şekilde değiştirebilirsiniz.

Vowpal Wabbit veri biçimi, seyrek verilerle uğraşan alandan tasarruf etmek için sütunlu bir biçim gerektirmeyen bir avantaja sahiptir. Bu biçim hakkında daha fazla bilgi için Vowpal Wabbit wiki sayfasına bakın.

Vowpal Wabbit modeli oluşturma ve eğitma

  1. Train Vowpal Wabbit Version 7-4 modülünü denemenize ekleyin.

  2. Eğitim verisi depolandığı hesabı belirtin. Eğitilen model ve karma dosyası aynı konumda depolanır.

    • Azure depolama hesabı adı için Azure depolama hesabının adını yazın.

    • Azure depolama anahtarı için, depolama hesabına erişmek için sağlanan anahtarı kopyalayıp yapıştırın,

    Anahtarınız yoksa bkz. Depolama erişim anahtarlarını yeniden oluşturma

  3. Azure kapsayıcı adı için, model eğitim verisi depolandığı belirtilen Azure depolama hesabına tek bir kapsayıcının adını yazın. Hesap adını veya protokol ön eklerini yazmayın.

    Örneğin, tam kapsayıcı yolu ve adı ise, https://myaccount.blob.core.windows.net/vwmodelsyalnızca yazmalı.vwmodels Kapsayıcı adları hakkında daha fazla bilgi için bkz . Kapsayıcıları, Blobları ve Meta Verileri Adlandırma ve Başvuru.

  4. VW bağımsız değişkenleri metin kutusuna Vowpal Wabbit yürütülebilir dosyası için komut satırı bağımsız değişkenlerini yazın.

    Örneğin, öğrenme oranını –l belirtmek veya karma bit sayısını -b belirtmek için eklemesi de dahildir.

    Daha fazla bilgi için parameters bölümüne bakın.

  5. Giriş VW dosyasının adı: Giriş verilerini içeren dosyanın adını yazın. Dosya, daha önce belirtilen depolama hesabında ve kapsayıcıda bulunan, Azure blob depolamada var olan bir dosya olması gerekir. Dosya, desteklenen biçimlerden biri kullanılarak hazırlanmış olması gerekir.

  6. Çıktı okunabilir model (--readable_model) dosyasının adı: Eğitilen modelin kaydedilemediklerinin adını yazın. Dosya, giriş dosyasıyla aynı depolama hesabına ve kapsayıcıya kaydedilebilir.

    Bu bağımsız değişken VW --readable_model komut satırı parametresine karşılık gelen.

  7. Çıktı ters karma (--invert_hash) dosyasının adı: Ters karma işlevinin kaydedileci dosyanın adını yazın. Dosya, giriş dosyasıyla aynı depolama hesabına ve kapsayıcıya kaydedilebilir.

    Bu bağımsız değişken VW --invert_hash komut satırı parametresine karşılık gelen.

  8. Lütfen dosya türünü belirtin: Eğitim verilerinizin hangi biçimi kullandığını belirtin. Vowpal Wabbit şu iki giriş dosyası biçimlerini destekler:

    • VW , Vowpal Wabbit tarafından kullanılan iç biçimi temsil eder.

    • SVMLight , diğer makine öğrenmesi araçları tarafından kullanılan bir biçimdir.

  9. Deneme her yeniden başlatıldında verileri depolamadan yüklemek istemiyorsanız Önbelleğe alınmış sonuçları kullan seçeneğini belirleyin. Başka bir parametrenin değişmediğini ve geçerli bir önbelleğin buluna olduğunu varsayarak Studio (klasik) verilerin önbelleğe alınmış bir sürümünü kullanır.

    Bu seçeneğin seçimi kaldırılırsa modül verileri her zaman depolamadan okur.

  10. Denemeyi çalıştırın.

  11. Model başlatıldıktan sonra Vowpal Wabbit Sürüm 7-4'ü eğitin çıkışına sağ tıklayın ve Eğitilen model olarak kaydet'i seçerek modeli daha sonra yeniden kullanabilir ve yeniden eğitebilirsiniz.

Mevcut Bir Vowpal Wabbit modelini yeniden eğitin

Vowpal Wabbit, mevcut modele yeni veriler ekleyerek artımlı eğitimi destekler. Mevcut bir modeli yeniden eğitim için almak için iki yol vardır:

  • Aynı denemede başka bir Train Vowpal Wabbit Sürüm 7-4 modülünün çıkışını kullanın.

  • Studio'nun (klasik) sol gezinti bölmesindeki Eğitilen Modeller grubunda kayıtlı bir modeli bulun ve denemenize sürükleyin.

  1. Train Vowpal Wabbit Version 7-4 modülünü denemenize ekleyin.

  2. Bağlan eğitilmiş modeli Train Vowpal Wabbit Version 7-4 giriş bağlantı noktasına getirir.

  3. Vowpal Wabbit Sürüm 7-4'ü Eğitin'in Özellikler bölmesinde, yeni eğitim verisi konumunu ve biçimini belirtin.

  4. İnsan tarafından okunabilir model çıkış dosyası için bir ad ve güncelleştirilmiş modelle ilişkili karma dosya için başka bir ad belirtin.

    Not

    Belirtilen konumda mevcut bir Vowpal Wabbit modeli veya karma dosyası varsa, yeni eğitilen model tarafından dosyaların üzerine sessizce yazılır. Yeniden eğitilen ara modelleri korumak için depolama konumunu değiştirmeli veya model dosyalarının yerel bir kopyasını ala çalışmanız gerekir.

  5. Denemeyi çalıştırın.

  6. Güncelleştirilmiş modeli çalışma alanınıza kaydetmek için modüle sağ tıklayın ve Eğitilmiş Model Olarak Kaydet'Machine Learning seçin. Yeni bir ad belirtmezseniz, güncelleştirilmiş model mevcut kayıtlı modelin üzerine yazacak.

Örnekler

Vowpal Wabbit'in makine öğrenmesinde nasıl kullanılabuzla ilgili örnekler için bkz . Azure Yapay Zeka Galerisi:

  • Vowpal Wabbit örneği

    Bu denemede bir VW modelinin veri hazırlama, eğitim ve operasyonel hale nasıl hazır hale geldi?

Ayrıca şu kaynaklara bakın:

Teknik notlar

Bu bölümde uygulama ayrıntıları, ipuçları ve sık sorulan soruların yanıtları yer almaktadır.

Vowpal Wabbit'in avantajları

Vowpal Wabbit, n-gram gibi doğrusal olmayan özellikler üzerinde son derece hızlı öğrenme sağlar.

Vowpal Wabbit, modele aynı anda tek bir kayıt sığdırmak için stokastik gradyan indüz (SGD) gibi çevrimiçi öğrenme tekniklerini kullanır. Bu nedenle ham veriler üzerinde çok hızlı bir şekilde tekrarlar ve çoğu modele göre daha hızlı iyi bir tahmin geliştirebilir. Bu yaklaşım, tüm eğitim verilerini belleğe okumaktan da kaçınıyor.

Vowpal Wabbit, tüm verileri yalnızca metin verilerine değil, diğer kategorik değişkenlere de dönüştürür. Karmaların kullanımı regresyon ağırlıklarının aramasını daha verimli hale getirir ve bu da etkin stokastik gradyan gerileme için kritik öneme sahip olur.

Eğitim sırasında modül, Azure için geliştirilen bir Vowpal Wabbit sarmalayıcıya çağrı yapar. Eğitim verileri, hesaplamaları yürüten çalışan rolleri ile depo arasındaki yüksek bant genişliği kullanılarak Azure'dan bloklar olarak indirilir ve VW öğrenicilerine akışı ilir. Sonuçta elde edilen model, VW tarafından yapılan iç sıkıştırma nedeniyle genellikle çok küçük olur. Model, deneme çalışma alanına geri kopyalanır ve bu çalışma alanında diğer modeller gibi Machine Learning.

Desteklenen ve desteklenmeyen parametreler

Machine Learning Studio'da (klasik) aşağıdaki komut satırı bağımsız değişkenlerini kullanılamaz.

  • içinde belirtilen giriş/çıkış seçenekleri https://github.com/JohnLangford/vowpal_wabbit/wiki/Command-line-arguments

    Bu özellikler modül tarafından otomatik olarak zaten yapılandırılmıştır.

  • Ayrıca, birden çok çıkış oluşturan veya birden çok giriş alan tüm seçeneklere izin verilmiyor. Bunlar , --cbtve --lda'dır --wap.

  • Yalnızca denetimli öğrenme algoritmaları de destekler. Bu nedenle, bu seçenekler desteklenmiyor: –active, --rank, vb --search .

Yukarıda açıklananlar dışında tüm bağımsız değişkenlere izin verilir.

Bağımsız değişkenlerin tam listesi için Vowpal Wabbit wiki sayfasını kullanın.

Kısıtlamalar

Hizmetin amacı Vowpal Wabbit'in deneyimli kullanıcılarını desteklemek olduğundan, giriş verileri diğer modüller tarafından kullanılan veri kümesi biçimi yerine Vowpal Wabbit yerel metin biçimi kullanılarak önceden hazırlanır.

Eğitim verileri Azure ML çalışma alanında kullanmak yerine, en yüksek performans ve minimum ayrıştırma yükü için doğrudan Azure'dan akışa alır. Bu nedenle VW modülleriyle Azure'daki diğer modüller arasında yalnızca sınırlı birlikte çalışabilirlik ML.

Modül parametreleri

Name Aralık Tür Varsayılan Description
Azure depolama hesabı adı herhangi biri Dize yok Azure depolama hesabı adını yazın
Azure depolama anahtarı herhangi biri Securestring yok Azure depolama anahtarını sağlama
Azure kapsayıcı adı herhangi biri Dize yok Azure kapsayıcı adını yazın
VW bağımsız değişkenleri herhangi biri Dize yok Vowpal Wabbit bağımsız değişkenlerini belirtin.

f bağımsız değişkeni desteklenmiyor.
Giriş VW dosyasının adı herhangi biri Dize yok Vowpal Wabbit biçiminde bir giriş dosyasının adını belirtin
Çıktı okunabilir model (--readable_model) dosyasının adı herhangi biri Dize Belirtilirse, okunabilir bir modeli Azure kapsayıcıya geri alır.

Bu bağımsız değişken isteğe bağlıdır.
Çıktı ters karma (--invert_hash) dosyasının adı herhangi biri Dize Belirtilirse, ters karma işlevini içeren bir dosyayı Azure kapsayıcıya geri verir.

Bu bağımsız değişken isteğe bağlıdır.
Dosya türünü belirtin VW

SVMLight
DataType VW Dosya türünün SVMLight biçimini mi yoksa Vowpal Wabbit biçimini mi kullandığını gösterir.

Çıkışlar

Ad Tür Description
Eğitilen model ILearner arabirimi Eğitilen öğrenciler

Özel durumlar

Özel durum Description
Hata 0001 Belirtilen bir veya daha fazla veri kümesi sütunu bulunamasa özel durum oluşur.
Hata 0003 Bir veya daha fazla giriş null veya boşsa özel durum oluşur.
Hata 0004 Parametre belirli bir değerden küçük veya ona eşitse özel durum oluşur.
Hata 0017 Belirtilen bir veya daha fazla sütun türü geçerli modül tarafından desteklenmiyorsa özel durum oluşur.

Studio (klasik) modüllerine özgü hataların listesi için bkz. Machine Learning kodları.

API özel durumlarının listesi için bkz. Machine Learning REST API Kodları.

Ayrıca bkz.

Metin Analizi
Özellik Karma
Adlandırılmış Varlık Tanıma
Vowpal Wabbit 7-4 Modelini Puanla
Vowpal Wabbit Train
A-Z Modül Listesi