A Vowpal Wabbit 7-4-es verziójának betanítási modellje

Fontos

A (klasszikus) Machine Learning Studio támogatása 2024. augusztus 31-én megszűnik. Javasoljuk, hogy addig térjen át az Azure Machine Learning használatára.

2021. december 1-től kezdve nem fog tudni létrehozni új (klasszikus) Machine Learning Studio-erőforrásokat. 2024. augusztus 31-ig továbbra is használhatja a meglévő (klasszikus) Machine Learning Studio-erőforrásokat.

A (klasszikus) ML Studio dokumentációjának kivezetése folyamatban van, és a jövőben nem várható a frissítése.

Modell tanítása a Vowpal Wabbit gépi tanulási rendszer 7-4-es verziójával

Kategória: Text Analytics

Megjegyzés

A következőkre vonatkozik: Machine Learning Studio (klasszikus)

Hasonló húzással használható modulok érhetők el Azure Machine Learning tervezőben.

A modul áttekintése

Ez a cikk azt ismerteti, hogyan használható a Vowpal Wabbit 7-4-es verziójú betanítási modul a Machine Learning Studióban (klasszikus) gépi tanulási modell létrehozásához a Vowpal Wabbit (7-4-es verzió) egy példányával.

Ha a Vowpal Wabbitet gépi tanuláshoz használja, formázza a bemenetet a Vowpal Wabbit követelményeinek megfelelően, és mentse az adatokat egy Azure-blobba. Ezzel a modullal adhatja meg a Vowpal Wabbit parancssori argumentumokat.

A kísérlet futtatásakor a Vowpal Wabbit egy példánya lesz betöltve a kísérlet futási időbe a megadott adatokkal együtt. Ha a betanítás befejeződött, a modell újra szerializálva lesz a munkaterületre. A modell azonnal használható az adatok pontozására. A betanított modell az Azure Storage-ban is megmarad, így később a betanítás adatainak újrafeldolgozása nélkül is használhatja.

Egy meglévő modell új adatokon való növekményes betanítása érdekében csatlakoztassa a mentett modellt az Előre betanított modell bemenetéhez, és adja hozzá az új adatokat a másik bemenethez.

Megjegyzés

Machine Learning Studio (klasszikus) a Vowpal Wabbit keretrendszer több verzióját is elérhető. Ez a modul a Vowpal Wabbit 7-4-es verzióját használja. Ha ezzel a modullal hoz létre modellt, a megfelelő pontozási modult kell használnia: Score Vowpal Wabbit 7-4 Model.

A legújabb verzióhoz használja a Vowpal Wabbit 8-as verziójú modell betanítására és pontozási moduljára, a Vowpal Wabbit 8 modell pontozási moduljára.

Mi az a Vowpal Wabbit?

A Vowpal Wabbit (VW) egy gyors, párhuzamos gépi tanulási keretrendszer, amelyet a Yahoo! fejlesztett ki elosztott számítástechnikához. Kutatás. Később portolt a Windows John Langford (Microsoft Research) által a párhuzamos architektúrákban végzett tudományos számítástechnikához.

A Vowpal Wabbit gépi tanuláshoz fontos funkciói közé tartozik a folyamatos tanulás (online tanulás), a dimenziócsökkentés és az interaktív tanulás. A Vowpal Wabbit olyan problémákra is megoldást kínál, amelyek nem illesztik a modelladatokat a memóriába.

A Vowpal Wabbit elsődleges felhasználói a Machine Learning-ban olyan adattudósok, akik korábban már használták a gépi tanulási feladatok keretrendszerét, például a besorolást, a regressziót, a témakörmodellezést vagy a mátrix-factorizationt. A Vowpal Wabbit Azure-burkolója nagyon hasonló teljesítményjellemzővel rendelkezik, mint a helyi verzió, ami azt jelenti, hogy a felhasználók továbbra is építhetik a modelleket, újra betanítást és pontozást végezhetnek a Vowpal Wabbit hatékony funkcióival és natív teljesítményével, miközben a betanított modellt egyszerűen közzétehetik működőképes szolgáltatásként.

A Funkció-kivonatolás modul a Vowpal Wabbit által biztosított funkciókat is tartalmazza, amely lehetővé teszi szöveges adatkészletek bináris jellemzőkké való átalakítását egy kivonatolási algoritmus használatával.

A Vowpal Wabbit 8-as verziójának konfigurálása

Ez a szakasz egy új modell betanítását és új adatok meglévő modellhez való hozzáadását ismerteti.

A (klasszikus) Studio más moduljaitól eltérően ez a modul is meghatározza a modul paramétereit, és beállítja a modellt. Ha már létezik modell, opcionális bemenetként is hozzáadhatja a modell növekményes betanításhoz.

A modul használatához hitelesítés szükséges egy Azure Storage-fiókhoz.

A bemeneti adatok előkészítése

Ha ezzel a modullal betanít egy modellt, a bemeneti adatkészletnek egyetlen szöveges oszlopból kell állnia a két támogatott formátum egyikében: LibSVM vagy VW. Ez nem jelenti azt, hogy a Vowpal Wabbit csak szöveges adatokat elemez, csak azt, hogy a jellemzőket és értékeket a szükséges szövegfájlformátumban kell előkészni.

Az adatokat az Azure Storage-ból kell beolvasni. Az Adatok exportálása nem használható a bemeneti fájl azure-ba való közvetlen mentéséhez a Vowpal Wabbittel való használathoz, mert a formátum további módosítást igényel. Győződjön meg arról, hogy az adatok formátuma megfelelő, majd fel kell töltenie az adatokat az Azure Blob Storage-ba.

Parancsikonként azonban a Convert to SVMLight (Átalakítás SVMLightká ) modullal létrehozhat egy SVMLight formátumú fájlt. Ezután feltöltheti az SVMLight formátumfájlt az Azure Blob Storage-ba, és használhatja bemenetként, vagy módosíthatja a fájlt úgy, hogy az megfeleljenek a Vowpal Wabbit bemeneti fájl követelményeinek.

A Vowpal Wabbit adatformátum előnye, hogy nem igényel oszlopos formátumot, amely helyet takarít meg a ritka adatok kezelésekor. Erről a formátumról a Vowpal Wabbit wikioldalon található további információ.

Vowpal Wabbit-modell létrehozása és betanítás

  1. Adja hozzá a Vowpal Wabbit 7-4-es verziójának betanítási modulját a kísérlethez.

  2. Adja meg a fiókot, ahol a betanítás adatai tárolva vannak. A betanított modell és a kivonatfájl ugyanazon a helyen van tárolva.

    • Az Azure Storage-fiók neve mezőbe írja be az Azure Storage-fiók nevét.

    • Az Azure Storage-kulcshoz másolja és illessze be a tárfiók eléréséhez megadott kulcsot.

    Ha nem rendelkezik kulccsal, tekintse meg a tárelérési kulcsok újragenerálását

  3. Az Azure-tároló neve mezőbe írja be egyetlen tároló nevét abban a megadott Azure Storage-fiókban, ahol a modell betanítása adatait tárolja. Ne írja be a fióknevet vagy a protokollelőtagokat.

    Ha például a tároló teljes elérési útja és neve https://myaccount.blob.core.windows.net/vwmodels, csak a következőt kell begépelni: vwmodels. A tárolók nevével kapcsolatos további információkért lásd: Naming and Referencing Containers, Blobs, and Metadata (Tárolók, blobok és metaadatok elnevezése és hivatkozása).

  4. A VW-argumentumok szövegmezőbe írja be a Vowpal Wabbit végrehajtható fájl parancssori argumentumát.

    Hozzáadhatja például a –l értéket a tanulási sebesség megadásához, -b vagy a kivonatolási bitek számának jelzésére.

    További információkért lásd a paraméterek szakaszt .

  5. A bemeneti VW-fájl neve: Írja be a bemeneti adatokat tartalmazó fájl nevét. A fájlnak egy meglévő fájlnak kell lennie az Azure Blob Storage-ban, amely a korábban megadott tárfiókban és tárolóban található. A fájlt elő kell készíteni a támogatott formátumok egyikének használatával.

  6. A kimeneti olvasható modell (--readable_model) fájl neve: Írja be annak a fájlnak a nevét, ahová a betanított modellt menteni kell. A fájlt ugyanabban a tárfiókban és tárolóban kell menteni, mint a bemeneti fájlt.

    Ez az argumentum a --readable_model VW parancssori paraméterének felel meg.

  7. A kimeneti invertált kivonatfájl (--invert_hash) neve: Írja be annak a fájlnak a nevét, amelybe a fordított kivonatolási függvényt menteni kell. A fájlt ugyanabban a tárfiókban és tárolóban kell menteni, mint a bemeneti fájlt.

    Ez az argumentum a --invert_hash VW parancssori paraméterének felel meg.

  8. Adja meg a fájltípust: Adja meg, hogy a betanítás adatai milyen formátumot használjanak. A Vowpal Wabbit a következő két bemeneti fájlformátumot támogatja:

    • A VW a Vowpal Wabbit által használt belső formátumot jelöli.

    • Az SVMLight formátumot más gépi tanulási eszközök is használják.

  9. Válassza a Gyorsítótárazott eredmények használata lehetőséget, ha nem szeretné minden alkalommal betölteni az adatokat a tárolóból, amikor a kísérlet újra meg van unva. Feltéve, hogy más paraméterek nem módosultak, és érvényes gyorsítótár található, a Studio (klasszikus) az adatok gyorsítótárazott verzióját használja.

    Ha ez a beállítás nincs bejelölve, a modul mindig beolvassa az adatokat a tárolóból.

  10. Futtassa a kísérletet.

  11. A modell létrehozása után kattintson a jobb gombbal a Vowpal Wabbit 7-4-es verziójának betanítása kimenetére, és válassza a Mentés betanított modellként lehetőséget, hogy később újra fel tudja használni és újra betanítsa a modellt.

Meglévő Vowpal Wabbit modell újraképzése

A Vowpal Wabbit úgy támogatja a növekményes betanításokat, hogy új adatokat ad hozzá egy meglévő modellhez. A meglévő modelleket kétféleképpen lehet újraképezésre kiképezésre kihozni:

  • Használja egy másik , A Vowpal Wabbit 7-4-es verziójának betanítására használt modul kimenetét ugyanabban a kísérletben.

  • Keresse meg a mentett modellt a Studio (klasszikus) Betanított modellek csoportjában a bal oldali navigációs panelen, és húzza a kísérletbe.

  1. Adja hozzá a Vowpal Wabbit 7-4-es verziójának betanítási modulját a kísérlethez.

  2. Csatlakozás korábban betanított modellt a Vowpal Wabbit 7-4-es verziójának bemeneti portjára telepítette.

  3. A Vowpal Wabbit 7-4-es verziójának betanítása Tulajdonságok panelén adja meg az új betanítási adatok helyét és formátumát.

  4. Adjon meg egy nevet az ember által olvasható modellkimeneti fájlnak, valamint egy másik nevet a frissített modellhez társított kivonatfájlnak.

    Megjegyzés

    Ha van meglévő Vowpal Wabbit-modell vagy -kivonatfájl a megadott helyen, az új betanított modell csendesen felülírja a fájlokat. Ha meg kell őriznie a köztes modelleket az újraképezés során, módosítania kell a tárolási helyet, vagy helyileg kell másolnia a modellfájlokat.

  5. Futtassa a kísérletet.

  6. Kattintson a jobb gombbal a modulra, és válassza a Mentés betanított modellként lehetőséget a frissített modell megőrzéséhez a Machine Learning munkaterületen. Ha nem ad meg új nevet, a frissített modell felülírja a meglévő mentett modellt.

Példák

A Vowpal Wabbit gépi tanulásban való használatára vonatkozó példákért lásd a Azure AI Gallery:

  • Vowpal Wabbit minta

    Ez a kísérlet egy VW-modell adat-előprálását, betanítást és működőképesítését mutatja be.

Tekintse meg ezeket az erőforrásokat is:

Technikai megjegyzések

Ez a szakasz az implementáció részleteit, tippeket és válaszokat tartalmazza a gyakori kérdésekre.

A Vowpal Wabbit előnyei

A Vowpal Wabbit rendkívül gyors tanulást biztosít az olyan nem lineáris jellemzőkről, mint az n-gramm.

A Vowpal Wabbit olyan online tanulási technikákat használ, mint a sztochasztikus gradiens módszer (SGD) a modell rekordos illesztése egyszerre. Így nagyon gyorsan iterál a nyers adatokon, és a többi modellnél gyorsabban képes jó előrejelzőt fejleszteni. Ezzel a megközelítéssel elkerülheti, hogy az összes betanításadatot beolvassa a memóriába.

A Vowpal Wabbit minden adatot hashekké alakít, nem csak szöveges adatokat, hanem más kategorikus változókat is. A hashek használata hatékonyabbá teszi a regressziós súlyok keresését, ami kritikus fontosságú a hatékony sztochasztikus gradiens módszerhez.

A betanítás során a modul egy, az Azure-hoz fejlesztett Vowpal Wabbit-burkolóba kezdeményez hívásokat. A rendszer blokkokban letölti a betanítás adatait az Azure-ból, kihasználva a számításokat végrehajtó feldolgozói szerepkörök és az áruház közötti nagy sávszélességet, és továbbítja őket a VW-tanulóknak. Az eredményül kapott modell általában nagyon tömör a VW belső tömörítése miatt. A rendszer visszamásolód a kísérlet munkaterületére, ahol a modell a többi modellhez Machine Learning.

Támogatott és nem támogatott paraméterek

A következő parancssori argumentumok nem használhatók a Machine Learning Studióban (klasszikus).

  • A következőben megadott bemeneti/kimeneti beállítások: https://github.com/JohnLangford/vowpal_wabbit/wiki/Command-line-arguments

    Ezeket a tulajdonságokat a modul már automatikusan konfigurálja.

  • Emellett nem engedélyezett minden olyan beállítás, amely több kimenetet hoz létre, vagy több bemenetet vesz fel. Ezek közé tartozik a --cbt, --ldaa és --wapa .

  • Csak a felügyelt tanulási algoritmusok támogatottak. Ezért ezek a lehetőségek nem támogatottak: –active, --rank, --search stb.

A fent leírtakon kívül minden argumentum engedélyezett.

Az argumentumok teljes listájához használja a Vowpal Wabbit wikioldalt.

Korlátozások

Mivel a szolgáltatás célja a Vowpal Wabbit tapasztalt felhasználóinak támogatása, a bemeneti adatokat előre elő kell készíteni a Vowpal Wabbit natív szövegformátum használatával, nem pedig a más modulok által használt adatkészlet-formátummal.

Ahelyett, hogy adatokat használnál az Azure ML-munkaterületen, a betanítás adatai közvetlenül streamelve lesznek az Azure-ból a maximális teljesítmény és a minimális többletterhelés érdekében. Ezért csak korlátozott az együttműködés a VW-modulok és az Azure-beli ML.

Modulparaméterek

Name Tartomány Típus Alapértelmezett Description
Azure Storage-tárfiók neve bármelyik Sztring Nincs Írja be az Azure Storage-fiók nevét
Azure Storage-kulcs bármelyik SecureString Nincs Adja meg az Azure Storage-kulcsot
Azure-tároló neve bármelyik Sztring Nincs Írja be az Azure-tároló nevét
VW argumentumok bármelyik Sztring Nincs Adja meg a Vowpal Wabbit argumentumokat.

Az –f argumentum nem támogatott.
A bemeneti VW-fájl neve bármelyik Sztring Nincs Adja meg egy bemeneti fájl nevét Vowpal Wabbit formátumban
A kimeneti olvasható modellfájl (--readable_model) neve bármelyik Sztring Ha meg van adva, az olvasható modellt ad vissza az Azure-tárolóba.

Ez az argumentum nem kötelező.
A kimeneti invertált kivonatfájl (--invert_hash) neve bármelyik Sztring Ha meg van adva, egy fájlt ad vissza az Azure-tárolóba, amely a fordított kivonatolási függvényt tartalmazza.

Ez az argumentum nem kötelező.
Adja meg a fájl típusát VW

SVMLight
DataType VW Jelezze, hogy a fájltípus SVMLight vagy Vowpal Wabbit formátumot használ-e.

Kimenetek

Név Típus Description
Betanított modell ILearner interfész Betanított tanuló

Kivételek

Kivétel Description
0001-es hiba Kivétel történik, ha az adatkészlet egy vagy több megadott oszlopa nem található.
0003-as hiba Kivétel történik, ha egy vagy több bemenet null vagy üres.
0004-es hiba Kivétel akkor fordul elő, ha a paraméter kisebb vagy egyenlő egy adott értékkel.
0017-es hiba Kivétel akkor fordul elő, ha egy vagy több megadott oszlop típusa az aktuális modul által nem támogatott.

A Studio (klasszikus) moduljaival kapcsolatos hibák listájáért tekintse meg a Machine Learning hibakódokat.

Az API-kivételek listájáért tekintse meg a Machine Learning REST API hibakódokat.

Lásd még

Text Analytics
Funkciókivonatolás
Megnevezett entitások felismerése
Vowpal Wabbit 7-4 modell pontozása
Vowpal Wabbit Train
A–Z modullista