Sdílet prostřednictvím


Trénování modelu Vowpal Wabbit verze 7-4

Důležité

Podpora studia Machine Learning (Classic) skončí 31. srpna 2024. Doporučujeme do tohoto data přejít na službu Azure Machine Learning.

Od 1. prosince 2021 nebude možné vytvářet nové prostředky studia Machine Learning (Classic). Do 31. srpna 2024 můžete pokračovat v používání stávajících prostředků studia Machine Learning (Classic).

Dokumentace ke studiu ML (Classic) se vyřazuje z provozu a v budoucnu se nemusí aktualizovat.

Trénuje model pomocí verze 7-4 systému strojového učení Vowpal Wabbit.

Kategorie: Analýza textu

Poznámka

Platí pro: Machine Learning Studio (classic)

Podobné moduly s přetahováním jsou k dispozici v Azure Machine Learning návrháři.

Přehled modulu

Tento článek popisuje, jak pomocí modulu Train Vowpal Wabbit verze 7-4 v Machine Learning Studiu (classic) vytvořit model strojového učení pomocí instance Vowpal Wabbit (verze 7-4).

Pokud chcete použít Vowpal Wabbit pro strojové učení, naformátovat vstup podle požadavků Vowpal Wabbitu a uložit data do objektu blob Azure. Pomocí tohoto modulu můžete zadat argumenty příkazového řádku Vowpal Wabbit.

Při spuštění experimentu se do experimentu načte instance Vowpal Wabbit společně se zadanými daty. Po dokončení trénování je model serializován zpět do pracovního prostoru. Model můžete okamžitě použít k hodnocení dat. Vytrénovaný model se také uchová v úložišti Azure, abyste ho mohli použít později, aniž byste museli trénovací data znovu zpracovat.

Pokud chcete přírůstkově trénovat existující model na nových datech, připojte uložený model ke vstupu Předem natrénovaný model a přidejte nová data do druhého vstupu.

Poznámka

Machine Learning Studio (classic) hostuje více verzí architektury Vowpal Wabbit. Tento modul používá Vowpal Wabbit ve verzi 7–4. Pokud vytvoříte model pomocí tohoto modulu, musíte použít odpovídající bodovací modul: Score Vowpal Wabbit 7-4 Model (Skóre modelu Vowpal Wabbit 7–4).

Nejnovější verzi můžete získat použitím nástroje Train Vowpal Wabbit verze 8 Model společně s hodnoticím modulem Score Vowpal Wabbit 8 Model.

Co je Vowpal Wabbit?

Vowpal Wabbit (VW) je rychlá paralelní rozhraní strojového učení vyvinutá pro distribuované výpočetní prostředí společností Yahoo! Výzkum. Později byl portován do Windows a adaptován Johnem Langfordem (Microsoft Research) pro vědecké výpočetní prostředí v paralelních architekturách.

Mezi funkce Vowpal Wabbit, které jsou důležité pro strojové učení, patří průběžné učení (online učení), redukce počtu dimenzí a interaktivní učení. Vowpal Wabbit je také řešením problémů, když nemůžete data modelu vmontovat do paměti.

Primárními uživateli Vowpal Wabbitu v Machine Learning jsou datoví vědci, kteří už dříve používali rozhraní pro úlohy strojového učení, jako je klasifikace, regrese, modelování témat nebo faktorizace matice. Obálka Azure pro Vowpal Wabbit má velmi podobné výkonové charakteristiky jako místní verze, což znamená, že uživatelé mohou pokračovat v sestavování modelů, přetrénování a hodnocení pomocí výkonných funkcí a nativního výkonu Vowpal Wabbitu a zároveň získat možnost snadno publikovat natrénovaný model jako zprovozněnou službu.

Modul Hashování funkcí zahrnuje také funkce poskytované Vowpal Wabbitem, které umožňují transformovat textové datové sady na binární funkce pomocí hashovací algoritmu.

Konfigurace modelu Vowpal Wabbit verze 8

Tato část popisuje, jak vytrénovat nový model a jak přidat nová data do existujícího modelu.

Na rozdíl od jiných modulů v sadě Studio (classic) tento modul určuje parametry modulu i trénuje model. Pokud máte existující model, můžete ho přidat jako volitelný vstup pro přírůstkové trénování modelu.

Použití tohoto modulu vyžaduje ověření účtu úložiště Azure.

Příprava vstupních dat

Pokud chcete vytrénovat model pomocí tohoto modulu, musí se vstupní datová sada skládat z jednoho textového sloupce v jednom ze dvou podporovaných formátů: LibSVM nebo VW. Neznamená to, že Vowpal Wabbit analyzuje jenom textová data, ale že funkce a hodnoty musí být připravené v požadovaném formátu textového souboru.

Data se musí číst z úložiště Azure. K přímému uložení vstupního souboru do Azure pro použití s Vowpal Wabbitem není možné použít export dat, protože formát vyžaduje další úpravy. Musíte zajistit, aby byla data ve správném formátu, a pak je nahrát do úložiště objektů blob v Azure.

Jako zástupce ale můžete použít modul Převést na SVMLight a vygenerovat formátový soubor SVMLight. Potom můžete formátový soubor SVMLight nahrát do úložiště objektů blob v Azure a použít ho jako vstup, nebo ho můžete mírně upravit tak, aby odpovídal požadavkům vstupního souboru Vowpal Wabbit.

Formát dat Vowpal Wabbit má výhodu, že nevyžaduje sloupcový formát, což šetří místo při zpracování zhuštěných dat. Další informace o tomto formátu najdete na wiki stránce Vowpal Wabbit.

Vytvoření a trénování modelu Vowpal Wabbit

  1. Přidejte do experimentu modul Train Vowpal Wabbit verze 7-4 .

  2. Zadejte účet, ve kterém jsou uložena trénovací data. Natrénovaný model a soubor hash se ukládají do stejného umístění.

    • Jako Název účtu úložiště Azure zadejte název účtu úložiště Azure.

    • V případě klíče úložiště Azure zkopírujte a vložte klíč, který je k dispozici pro přístup k účtu úložiště.

    Pokud nemáte klíč, podívejte se na postup opětovného vygenerování přístupových klíčů k úložišti.

  3. Jako Název kontejneru Azure zadejte název jednoho kontejneru v zadaném účtu úložiště Azure, ve kterém jsou uložená trénovací data modelu. Nezadáte název účtu ani žádnou předponu protokolu.

    Pokud je například úplná cesta ke kontejneru a název https://myaccount.blob.core.windows.net/vwmodels, měli byste zadat pouze vwmodels. Další informace o názvech kontejnerů najdete v tématu Názvy kontejnerů, objektů blob a metadat a odkazování na tyto kontejnery.

  4. Do textového pole Argumenty VW zadejte argumenty příkazového řádku pro spustitelný soubor Vowpal Wabbit.

    Můžete například přidat a zadat –l rychlost učení nebo -b určit počet bitů hash.

    Další informace najdete v části s parametry .

  5. Název vstupního souboru VW: Zadejte název souboru, který obsahuje vstupní data. Soubor musí být existující soubor ve službě Azure Blob Storage, který se nachází v dříve zadaném účtu úložiště a kontejneru. Soubor musí být připravený pomocí jednoho z podporovaných formátů.

  6. Název výstupního souboru čitelného modelu (--readable_model): Zadejte název souboru, do které se má natrénovaný model uložit. Soubor musí být uložen v rámci stejného účtu úložiště a kontejneru jako vstupní soubor.

    Tento argument odpovídá parametru --readable_model v příkazovém řádku VW.

  7. Název výstupního inverzního souboru hash (--invert_hash): Zadejte název souboru, do kterého se má invertovaná funkce hash uložit. Soubor musí být uložen v rámci stejného účtu úložiště a kontejneru jako vstupní soubor.

    Tento argument odpovídá parametru --invert_hash v příkazovém řádku VW.

  8. Zadejte typ souboru: Určete, jaký formát používají vaše trénovací data. Vowpal Wabbit podporuje tyto dva formáty vstupních souborů:

    • VW představuje interní formát používaný Vowpal Wabbitem.

    • SVMLight je formát používaný některými dalšími nástroji strojového učení.

  9. Vyberte možnost Použít výsledky uložené v mezipaměti, pokud nechcete načítat data z úložiště při každém opětovném spuštění experimentu. Za předpokladu, že se nezměnily žádné jiné parametry a není možné najít platnou mezipaměť, používá Studio (classic) verzi dat v mezipaměti.

    Pokud se tato možnost zruší, modul vždy načte data z úložiště.

  10. Spusťte experiment.

  11. Po vygenerování modelu klikněte pravým tlačítkem na výstup Train Vowpal Wabbit Version 7-4 (Trénovat Vowpal Wabbit verze 7-4 ) a vyberte Save as trained model (Uložit jako natrénovaný model), abyste ho mohli později znovu použít a znovu trénovat.

Přeutrénování existujícího modelu Vowpal Wabbit

Vowpal Wabbit podporuje přírůstkové trénování přidáním nových dat do existujícího modelu. Existují dva způsoby, jak získat existující model pro opětovné trénování:

  • Ve stejném experimentu použijte výstup jiného modulu Train Vowpal Wabbit verze 7-4 .

  • V levém navigačním podokně studia ( klasického) ve skupině Trénované modely vyhledejte uložený model a přetáhněte ho do experimentu.

  1. Přidejte do experimentu modul Train Vowpal Wabbit verze 7-4 .

  2. Připojení dříve natrénovaný model na vstupní port nástroje Train Vowpal Wabbit verze 7-4.

  3. V podokně Vlastnosti nástroje Train Vowpal Wabbit verze 7-4 zadejte umístění a formát nových trénovací dat.

  4. Zadejte název výstupního souboru modelu čitelného pro člověka a další název souboru hash přidruženého k aktualizovanému modelu.

    Poznámka

    Pokud v zadaném umístění existuje model Vowpal Wabbit nebo soubor hash, nový natrénovaný model soubory bezobslužně přepíše. Pokud chcete zachovat zprostředkující modely při přeškolení, musíte změnit umístění úložiště nebo vytvořit místní kopii souborů modelu.

  5. Spusťte experiment.

  6. klikněte pravým tlačítkem na modul a vyberte uložit jako trained model , abyste zachovali aktualizovaný model v pracovním prostoru Machine Learning. Pokud nezadáte nový název, aktualizovaný model přepíše existující uložený model.

Příklady

Příklady toho, jak se dá pro dostupné použít ve službě Machine Learning, najdete v Azure AI Gallery:

  • Ukázka pro dostupné

    Tento experiment znázorňuje prepration dat, školení a provozuschopnost modelu VW.

Podívejte se také na tyto prostředky:

Technické poznámky

Tato část obsahuje podrobné informace o implementaci, tipy a odpovědi na nejčastější dotazy.

Výhody pro dostupné

Pro dostupné poskytuje extrémně rychlé učení nad nelineárními funkcemi, jako je n-gram.

Pro dostupné využívá techniky učení online , jako je například stochastického gradient klesání (SGD), aby se vešel na jeden záznam v jednom okamžiku. Proto provádí iteraci velmi rychle nad nezpracovanými daty a může vyvíjet dobrý předpověď rychleji než většinu ostatních modelů. Tento přístup také zabraňuje nutnosti číst všechna školicí data do paměti.

Pro dostupné převádí všechna data na hodnoty hash, nikoli jenom textová data, ale i jiné proměnné kategorií. Použití hodnot hash usnadňuje vyhledávání regresních vah, což je klíčové pro efektivní klesání gradientu stochastického.

Během školení modul provede volání na Proou obálku dostupné vyvinutou pro Azure. Školicí data se stáhnou do bloků z Azure a využívají velkou šířku pásma mezi rolemi pracovních procesů, které spouštějí výpočty a úložiště, a streamují se do VWch učících. Výsledný model je obecně velmi kompaktní vzhledem k vnitřní kompresi prováděné VW. Model se zkopíruje zpátky do pracovního prostoru experimentu, kde se dá využít jako jiné modely v Machine Learning.

Podporované a nepodporované parametry

v Machine Learning studiu (classic) nemůžete použít následující argumenty příkazového řádku.

  • Možnosti vstupu a výstupu zadané v https://github.com/JohnLangford/vowpal_wabbit/wiki/Command-line-arguments

    Tyto vlastnosti jsou již modulem konfigurovány automaticky.

  • Kromě toho je zakázána jakákoli možnost, která generuje více výstupů nebo přijímá více vstupů. Mezi ně patří --cbt , --lda a --wap .

  • Podporují se jenom kontrolní algoritmy pro učení pod dohledem. Proto tyto možnosti nejsou podporovány: –active , --rank--search atd.

Všechny argumenty kromě těch, které jsou popsané výše, jsou povoleny.

Úplný seznam argumentů získáte pomocí stránky wikiwebu pro dostupné.

Omezení

Vzhledem k tomu, že cílem služby je podpora zkušených uživatelů pro dostupné, musí být vstupní data připravená předem, a to pomocí formátu pro dostupné Native text, nikoli pomocí formátu DataSet používaného jinými moduly.

místo použití dat v pracovním prostoru azure ML se školicí data přímo streamují z azure za účelem maximálního výkonu a minimálního zatížení. Z tohoto důvodu existuje jenom omezená interoperabilita mezi VW moduly a dalšími moduly v Azure ML.

Parametry modulu

Name Rozsah Typ Výchozí Description
Azure storage account name Libovolný Řetězec žádné Zadejte název účtu Azure Storage.
Klíč úložiště Azure Libovolný SecureString žádné Zadejte klíč úložiště Azure.
Název kontejneru Azure Libovolný Řetězec žádné Zadejte název kontejneru Azure.
Argumenty VW Libovolný Řetězec žádné Zadejte všechny argumenty pro dostupné.

Argument – f není podporován.
Název vstupního souboru VW Libovolný Řetězec žádné Zadejte název vstupního souboru ve formátu pro dostupné.
Název výstupního souboru čitelného modelu (--readable_model) Libovolný Řetězec Když se tato možnost zadá, vrátí do kontejneru Azure čitelný model.

Tento argument je nepovinný.
Název výstupního souboru s obráceným znakem hash (--invert_hash) Libovolný Řetězec Když se tato možnost zadá, vrátí soubor obsahující inverzní funkci hash zpátky do kontejneru Azure.

Tento argument je nepovinný.
Zadejte prosím typ souboru. VW

SVMLight
DataType VW Určete, zda typ souboru používá formát SVMLight nebo formát dostupné pro.

Výstupy

Název Typ Description
Školený model Rozhraní ILearner Školený učí

Výjimky

Výjimka Description
Chyba 0001 K výjimce dojde v případě, že se nepovedlo najít jeden nebo více zadaných sloupců datové sady.
Chyba 0003 K výjimce dojde v případě, že jeden nebo více vstupů má hodnotu null nebo je prázdné.
Chyba 0,0004 K výjimce dojde, pokud je parametr menší nebo roven konkrétní hodnotě.
Chyba 0017 K výjimce dojde v případě, že jeden nebo více zadaných sloupců má nepodporovaný typ aktuálním modulem.

seznam chyb, které jsou specifické pro moduly studia (classic), najdete v článku kódy chyb Machine Learning.

seznam výjimek rozhraní API najdete v tématu Machine Learning REST API chybové kódy.

Viz také

Analýza textu
Hashování funkcí
Rozpoznávání pojmenovaných entit
Pro model skóre dostupné 7-4
Pro dostupné – vlak
Seznam modulů a-Z