Megosztás a következőn keresztül:


One-Class támogatóvektor-gép

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.

Létrehoz egy egyosztályos támogatóvektor-gépmodellt az anomáliadetektáláshoz

Kategória: Anomáliadetektálás

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 Machine Learning Studio (klasszikus) egyosztályos támogatóvektor-modell modulja egy anomáliadetektálási modell létrehozásához.

Ez a modul különösen hasznos olyan forgatókönyvekben, ahol sok "normál" adat áll rendelkezésre, és nem sok olyan anomáliadetektálási eset, amit észlelni próbál. Ha például csalárd tranzakciókat kell észlelnie, lehet, hogy nem sok csalási példával fogta fel egy tipikus besorolási modell betanítására, de számos jó tranzakcióval is lehet példái.

Az egyosztályos támogatási vektormodell modullal létrehozhatja a modellt, majd betanítja a modellt az Anomáliadetektálási modell betanítására. A betanításhoz használt adatkészlet az összes vagy többnyire normál esetet tartalmazhatja.

Ezután különböző metrikákat alkalmazhat a lehetséges anomáliák azonosításához. Előfordulhat például, hogy egy nagy méretű, jó tranzakciókat ábrázoló adatkészletet használ a csalárd tranzakciókat ábrázoló esetek azonosítására.

További információ az egyosztályos SVM-ről

A támogatóvektor-gépek (SVM-gépek) felügyelt tanulási modellek, amelyek elemzik az adatokat és felismerik a mintákat, és besorolási és regressziós feladatokhoz is használhatók.

Az SVM-algoritmus általában két osztály egyikébe tartozó betanításpéma-készletet kap. Az SVM-modellek a betanítás mintapontokat a lehető legszélesebb eltéréssel osztjuk fel külön kategóriákba, és a hézag nem megfelelő oldalára eső betanításmintákat vonjuk be. Az SVM-modell ezután előrejelzéseket tesz úgy, hogy a pontokat a hézag vagy a másik oldalhoz rendeli.

A meglévő minták olykor túlminta-mintavételezést használnak egy kétosztályos modell létrehozásához, de a csalások vagy rendszerhibák összes új mintáit nem lehet előrejelezni korlátozott példákból. Emellett még a korlátozott példák gyűjteménye is költséges lehet.

Ezért az egyosztályos SVM-ben a támogatóvektor-modell olyan adatokkal van betanítva, amelyek csak egy osztályt tartalmaznak, amely a "normál" osztály. A normál esetek tulajdonságait is kiveszi, és ezek alapján előrejelezni tudja, hogy mely példák eltérnek a szokásos példáktól. Ez azért hasznos az anomáliadetektáláshoz, mert a betanítási példák alacsony száma határozza meg az anomáliákat: vagyis általában kevés példa van a hálózati behatolásra, csalásra vagy más rendellenes viselkedésre.

További információkért, beleértve az alapszintű kutatásokra mutató hivatkozásokat, tekintse meg a Műszaki megjegyzések szakaszt .

Megjegyzés

Az egyosztályos támogatóvektor-modell modul egy kernel-SVM modellt hoz létre, ami azt jelenti, hogy nem túl skálázható. Ha a betanítás korlátozott, vagy ha túl sok adata van, más módszereket is használhat az anomáliadetektorhoz, például a PCA-alapú anomáliadetektálást.

Az SVM One-Class konfigurálása

  1. Adja hozzá az egyosztályos támogatási vektormodell modult a kísérlethez a Studióban (klasszikus). A modul az Anomáliadetektálás Machine Learning inicializálásaalatt található.

  2. Kattintson duplán a One-Class Support Vector Model (Egyosztályos támogató vektormodell ) modulra a Tulajdonságok panel megnyitásához .

  3. Az Oktatói mód létrehozása beállításnál válassza ki azt a lehetőséget, amely a modell betanításának módját jelzi:

    • Egyetlen paraméter: Akkor használja ezt a lehetőséget, ha tudja, hogyan szeretné konfigurálni a modellt, és argumentumként adjon meg egy adott értékkészletet.

    • Paramétertartomány: Akkor használja ezt a lehetőséget, ha nem biztos a legjobb paraméterekben, és paraméteres keresésen szeretné megtalálni az optimális konfigurációt.

  4. η: Írjon be egy értéket, amely a kilőknek a törtrészének felső határát jelöli. Ez a paraméter a jelen tanulmányban leírt nu-tulajdonságnak felel meg. A nu-tulajdonság lehetővé teszi a ki- és normál esetek közötti egyensúly szabályozását.

  5. ε (epsilon): Írjon be egy értéket, amely leállítási tűréshatárként használható. A leállítási tűréshatár befolyásolja a modell optimalizálása során használt iterációk számát, és a leállítási feltétel értékétől függ. Az érték túllépése esetén az edző leállítja a megoldáson való iteálást.

  6. Csatlakozás adatkészletet és az egyik betanító modult:

    Megjegyzés

    Ha az Anomáliadetektálási modell betanítása paramétertartományt ad át, az csak az első értéket használja a paramétertartományok listájában.

    Ha egyetlen paraméterérték-készletet ad át a Modell hiperparaméterek hangolása modulnak, és az egyes paraméterekhez egy beállítástartományt vár, az figyelmen kívül hagyja az értékeket, és az alapértelmezett értékeket használja a tanuló számára.

    Ha a Paramétertartomány lehetőséget választja, és egyetlen értéket ad meg bármely paraméterhez, akkor a rendszer ezt az értéket használja a teljes tartományban, még akkor is, ha más paraméterek változnak egy értéktartományban.

  7. Futtassa a kísérletet.

Results (Eredmények)

A modul egy betanított anomáliadetektálási modellt ad vissza. Mentheti a modellt a munkaterületen, vagy csatlakoztathatja a Modell pontozása modult, és a betanított modell használatával észlelheti a lehetséges rendellenességeket.

Ha paraméteres sikolás használatával tanítja be a modellt, jegyezze fel a modell éles környezetben való használatra való konfigurálásakor használt optimális paraméterbeállításokat.

Példák

A modul anomáliadetektálásban való használatára vonatkozó példákért lásd a Azure AI Gallery:

  • Anomáliadetektálás: Hitelkockázat: Ez a minta bemutatja, hogyan lehet megtalálni a kiadatokat egy paraméteres kereséssel az optimális modell megkeresése érdekében. Ezután alkalmazza ezt a modellt az új adatokra, hogy azonosítsa a csalást ábrázoló kockázatos tranzakciókat két különböző anomáliadetektálási modell összehasonlításával.

Technikai megjegyzések

Az egyosztályos SVM előrejelzései olyan nem skálázatlan pontszámok, amelyek esetleg nem korlátozottak lehetnek. A Cortana Intelligence Gallery példájában látható, hogy ha különböző algoritmusok alapján hasonlítja össze a modelleket, mindenképpen normalizálja a pontszámokat.

Kutatás

Ez az implementáció becsomagolja a kódtárat a libsvm nevű támogatóvektor-gépekhez. Az alapelméletet libsvm és az egyosztályos támogatóvektor-gépek megközelítését ezekben a tanulmányokban B. Schӧlkopf et al.

Modulparaméterek

Név Típus Tartomány Választható Description Alapértelmezett
Oktatói mód létrehozása Oktatói mód létrehozása Lista:Egy paraméter| Paramétertartomány Kötelező Egyetlen paraméter Adja meg a tanulói beállításokat.

Az Egyparaméter lehetőséggel manuálisan adhatja meg az összes értéket.

A ParameterRange beállítással átfésülheti az állítható paramétereket.
Nu Float >=double. Epsilon mode:Egyparaméter 0.1 Ez a paraméter (amelyet a görög nu betű képvisel) a ki- és támogató vektorok számának különbségét határozza meg.
Epsilon Float >=double. Epsilon mode:Egyparaméter 0,001 A leállítási tűréshatárt határozza meg.
psnu ParameterRangeSettings [0.001;1.0] mode:Paramétertartomány 0.001; 0.01; 0.1 A ki- és támogató vektorok számának különbségi tartományát adja meg.
psEpsilon (psEpsilon) ParameterRangeSettings [1e-6;1.0] mode:Paramétertartomány 0.001; 0.01; 0.1 Megadja a tűréshatár leállításának tartományát.

Kimenetek

Név Típus Description
Nem képezett modell ILearner interfész Egy nem képezett anomáliadetektálási modell

Lásd még

Osztályozás
Rendellenesség-észlelési modell betanítása