Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Figyelmeztetés
Ez az összetevő elavult , mert függősége, a NimbusML-projekt már nem tart fenn aktívan. Ennek eredményeképpen ez az összetevő nem kapja meg a jövőbeli frissítéseket vagy biztonsági javításokat. Azt tervezzük, hogy eltávolítjuk ezt az összetevőt a következő kiadásokban. Javasoljuk, hogy a folyamatos támogatás és a biztonság biztosítása érdekében a felhasználókat alternatív megoldásokra migrálják.
Ez a cikk bemutatja, hogyan használható a PCA-alapú anomáliadetektálási összetevő az Azure Machine Learning Designerben egy anomáliadetektálási modell létrehozásához az elsődleges összetevők elemzése (PCA) alapján.
Ez az összetevő segít olyan modellek létrehozásában, amelyekben egyszerű betanítási adatokat beszerezni egy osztályból, például érvényes tranzakciókból, de nehéz elegendő mintát beszerezni a célzott anomáliákból.
Például a csalárd tranzakciók észleléséhez gyakran nem rendelkezik elegendő csalási példával a betanítása érdekében. De számos példa lehet a jó tranzakciókra. A PCA-alapú anomáliadetektálási összetevő a rendelkezésre álló funkciók elemzésével oldja meg a problémát, hogy megállapítsa, mi számít "normál" osztálynak. Az összetevő ezután távolsági metrikákat alkalmaz az anomáliákat képviselő esetek azonosítására. Ez a módszer lehetővé teszi a modell betanítását a meglévő kiegyensúlyozatlan adatok használatával.
További információ az alapvető összetevők elemzéséről
A PCA a gépi tanulás egyik bevált technikája. Ezt gyakran használják feltáró adatelemzésben, mivel feltárja az adatok belső szerkezetét, és elmagyarázza az adatok varianciáját.
A PCA több változót tartalmazó adatok elemzésével működik. A változók közötti korrelációkat keresi, és meghatározza az eredmények közötti különbségeket legjobban rögzítő értékek kombinációját. Ezek az egyesített funkcióértékek egy tömörebb funkciótér, az úgynevezett fő összetevők létrehozására szolgálnak.
Az anomáliadetektáláshoz a rendszer minden új bemenetet elemez. Az anomáliadetektálási algoritmus kiszámítja az eigenvekre vonatkozó előrejelzését, valamint egy normalizált rekonstrukciós hibát. A normalizált hibát használja a rendszer az anomáliapontként. Minél nagyobb a hiba, annál rendellenesebb a példány.
A PCA működéséről és az anomáliadetektálás megvalósításáról az alábbi dokumentumokban talál további információt:
Randomizált algoritmus az alapvető összetevők elemzéséhez Rokhlin, Szlan és Tygert szerint
Struktúra keresése véletlenszerűséggel: Probabilistic Algorithms for Constructing Approximate Matrix Decompositions (PDF download), by Halko, Martinsson, and Tropp
PCA-alapú anomáliadetektálás konfigurálása
Adja hozzá a PCA-alapú anomáliadetektálási összetevőt a folyamathoz a tervezőben. Ezt az összetevőt az Anomáliadetektálási kategóriában találja.
Az összetevő jobb oldali paneljén válassza a Betanítás mód lehetőséget. Jelezze, hogy egy adott paraméterkészlettel szeretné-e betaníteni a modellt, vagy egy paraméteres szűréssel megkeresi a legjobb paramétereket.
Ha tudja, hogyan szeretné konfigurálni a modellt, válassza az Egyetlen paraméter lehetőséget, és adjon meg egy adott értékhalmazt argumentumként.
A PCA-ban használandó összetevők számának megadásához adja meg a kívánt kimeneti funkciókat vagy összetevőket.
A PCA-t használó kísérlettervezés fontos része, hogy hány összetevőt tartalmazzon. Általános útmutató, hogy ne tartalmazzon annyi PCA-összetevőt, mint ahány változó. Ehelyett kisebb számú összetevővel kell kezdenie, és növelnie kell őket, amíg bizonyos feltételek teljesülnek.
A legjobb eredmény akkor érhető el, ha a kimeneti összetevők száma kisebb, mint az adathalmazban elérhető funkcióoszlopok száma.
Adja meg a véletlenszerű PCA-betanítás során végrehajtandó túlméretezés mennyiségét. Az anomáliadetektálási problémák esetén a kiegyensúlyozatlan adatok megnehezítik a szabványos PCA-technikák alkalmazását. Bizonyos mértékű túlbélyegzés megadásával növelheti a célpéldányok számát.
Ha 1 értéket ad meg, a rendszer nem végez túlbélyegezést. Ha 1-nél nagyobb értéket ad meg, a rendszer további mintákat hoz létre a modell betanításához.
Két lehetőség közül választhat, attól függően, hogy paraméteres takarítást használ-e:
- Véletlenszerű PCA túlméretezési paramétere: Írjon be egyetlen egész számot, amely a kisebbségi osztály túlméretezésének arányát jelöli a normál osztályhoz viszonyítva. (Ez a beállítás akkor érhető el, ha a Egyparaméteres betanítási módszer.)
Feljegyzés
Nem tekintheti meg a túlbélyegzett adatkészletet. A PCA-val való túlsampling használatáról további információt a műszaki megjegyzésekben talál.
Válassza az Enable input feature mean normalization option to normalize all input features to a mean of zero. A PCA esetében általában a nullára való normalizálás vagy skálázás ajánlott, mivel a PCA célja a változók közötti variancia maximalizálása.
A beállítás alapértelmezés szerint engedélyezett. Törölje a kijelölést, ha az értékek már normalizálva lettek egy másik módszerrel vagy méretezéssel.
Csatlakoztassa a címkézett betanítási adatkészletet és az egyik betanítási összetevőt.
Ha a Kiképző létrehozása módot egyetlen paraméterre állítja, használja a Train Anomaly Detection Model összetevőt.
Küldje el a folyamatot.
Results (Eredmények)
Ha a betanítás befejeződött, mentheti a betanított modellt. Vagy csatlakoztathatja a Score Model összetevőhöz az anomáliademikai pontszámok előrejelzéséhez.
Az anomáliadetektálási modell eredményeinek kiértékelése:
Győződjön meg arról, hogy a pontszámoszlop mindkét adatkészletben elérhető.
Ha megpróbál kiértékelni egy anomáliadetektálási modellt, és a "Nincs pontszámoszlop az összehasonlítandó pontszámot tartalmazó adatkészletben" hibaüzenet jelenik meg, akkor egy tipikus kiértékelési adatkészletet használ, amely címkeoszlopot tartalmaz, de nincs valószínűségi pontszáma. Válasszon ki egy olyan adatkészletet, amely megfelel az anomáliadetektálási modellek sémakimenetének, amely tartalmazza a pontozott címkéket és a pontozott valószínűségi oszlopokat .
Győződjön meg arról, hogy a címkeoszlopok meg vannak jelölve.
Néha a címkeoszlophoz társított metaadatok el lesznek távolítva a folyamatgráfból. Ha ez történik, a Modell kiértékelése összetevővel összehasonlítja két anomáliadetektálási modell eredményeit, a következő hibaüzenet jelenhet meg: "Nincs címkeoszlop a pontozott adathalmazban". Vagy a következő hibaüzenet jelenhet meg: "Nincs címkeoszlop a pontozott adathalmazban az összehasonlításhoz".
Ezeket a hibákat elkerülheti, ha hozzáadja a Metaadatok szerkesztése összetevőt a Modell kiértékelése összetevőhöz. Az oszlopválasztóval válassza ki az osztályoszlopot, majd a Mezők listában válassza a Címke lehetőséget.
A Python-szkript végrehajtása összetevővel 1(pozitív, normál) és 0 (negatív, rendellenes) címkeoszlop-kategóriákat állíthat be.
label_column_name = 'XXX' anomaly_label_category = YY dataframe1[label_column_name] = dataframe1[label_column_name].apply(lambda x: 0 if x == anomaly_label_category else 1)
Technikai megjegyzések
Ez az algoritmus PCA használatával közelíti meg a normál osztályt tartalmazó alteret. Az alteret az adatkvariancia-mátrix felső eigenvalueseihez társított eigenvek fedik le.
Minden új bemenethez az anomáliadetektor először kiszámítja az előrejelzését az eigenvekre, majd kiszámítja a normalizált rekonstrukciós hibát. Ez a hiba az anomália pontszáma. Minél nagyobb a hiba, annál rendellenesebb a példány. A normál tér kiszámításának részleteiért lásd a Wikipédiát: Fő összetevő elemzése.
Következő lépések
Tekintse meg az Azure Machine Learning számára elérhető összetevőket.
A tervező összetevőire vonatkozó hibák listájáért tekintse meg a tervező kivételeit és hibakódjait.