Support Vector Machine (SVM) se dvěma třídami
Vytvoří binární klasifikační model pomocí algoritmu Support Vector Machine.
Kategorie: Machine Learning / Inicializovat model / klasifikaci
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 Support Vector Machine se dvěma třídami v Machine Learning Studiu (klasickém) vytvořit model založený na algoritmu support vector machine.
Metoda podpůrných vektorů (SVM) je dobře prošecená třída metod učení pod dohledem. Tato konkrétní implementace je zvláště vhodné pro predikci dvou možných výsledků na základě spojitých proměnných nebo kategorických proměnných.
Po definování parametrů modelu model vytrénování pomocí jednoho z trénovací moduly a poskytnutí označené datové sady, která obsahuje sloupec popisku nebo výsledku.
Další informace o podpůrných vektorech
Podpůrné vektorové počítače patří mezi nejstarší algoritmy strojového učení a modely SVM se používají v mnoha aplikacích, od načítání informací po klasifikaci textu a obrázků. SVM lze použít pro úlohy klasifikace i regrese.
Tento model SVM je model učení pod dohledem, který vyžaduje označená data. V procesu trénování algoritmus analyzuje vstupní data a rozpoznává vzory v multidimenzionálním prostoru funkcí nazývaném nadplošna. Všechny vstupní příklady jsou reprezentovány jako body v tomto prostoru a jsou mapovány na výstupní kategorie takovým způsobem, že kategorie jsou rozděleny co nejširší a co nejjasnější mezery.
Pro předpověď algoritmus SVM přiřadí nové příklady do jedné nebo druhé kategorie a namapuje je do stejného prostoru.
Jak nakonfigurovat Two-Class support vector machine
U tohoto typu modelu se doporučuje před použitím k trénování klasifikátoru normalizovat datovou sadu.
Přidejte do experimentu v nástroji Studio (classic) modul Support Vector Machine se dvěma třídami.
Nastavením možnosti Vytvořit režim školitele určete, jak chcete model vytrénovat.
Jeden parametr: Pokud víte, jak chcete model nakonfigurovat, můžete zadat konkrétní sadu hodnot jako argumenty.
Rozsah parametrů: Pokud si nejste jistí nejlepšími parametry, můžete najít optimální parametry zadáním více hodnot a použitím modulu Tune Model Hyperparameters (Ladění hyperparametrů modelu) k vyhledání optimální konfigurace. Školitel iteruje přes několik kombinací nastavení a určuje kombinaci hodnot, které vytváří nejlepší model.
V části Počet iterací zadejte číslo, které označuje počet iterací použitých při vytváření modelu.
Tento parametr lze použít k řízení obchodu mezi rychlostí trénování a přesností.
Pro lambda zadejte hodnotu, která se použije jako váha pro regularizaci L1.
Tento koeficient regularizace lze použít k vyladění modelu. Větší hodnoty penalizují složitější modely.
Pokud chcete před trénováním normalizovat funkce, vyberte možnost Normalizovat funkce.
Pokud použijete normalizaci, před trénování se datové body vysměrí na střed střední hodnoty a škáluje se tak, aby měl jednu jednotku směrodatné odchylky.
Vyberte možnost , Project ke kouli jednotky, aby se normalizovaly koeficienty.
Promítání hodnot do prostoru jednotek znamená, že před trénováním jsou datové body zaměřovány na střed na 0 a škálovány tak, aby měl jednu jednotku směrodatné odchylky.
Do pole Náhodné číslo zadejte celočíselnou hodnotu, která se má použít jako předsítě, pokud chcete zajistit reprodukovatelnost napříč běhy. Jinak se hodnota systémových hodin použije jako přediména, což může vést k mírně odlišným výsledkům napříč běhy.
Pokud chcete vytvořit skupinu pro neznámé hodnoty v trénovací nebo ověřovací skupině, vyberte možnost Povolit neznámou kategorii. V tomto případě může být model méně přesný pro známé hodnoty, ale může poskytovat lepší předpovědi pro nové (neznámé) hodnoty.
Pokud jeho výběr zrušíte, model může přijmout pouze hodnoty, které jsou obsaženy v trénovací data.
Připojení datovou sadu s popiskem a jeden z školicích modulů:
Pokud nastavíte Vytvořit režim školitele na Jeden parametr, použijte modul Trénování modelu.
Pokud nastavíte Vytvořit režim školitelena Rozsah parametrů, použijte hyperparametry vyladění modelu.
Poznámka
Pokud předáte rozsah parametrů do trénového modelu, použije se pouze první hodnota v seznamu rozsahů parametrů.
Pokud modulu Tune Model Hyperparameters předáte jednu sadu hodnot parametrů, bude modul při očekávání rozsahu nastavení pro jednotlivé parametry ignorovat tyto hodnoty a použije výchozí hodnoty pro uživatele, který se učí.
Pokud vyberete možnost Rozsah parametrů a zadáte jednu hodnotu pro libovolný parametr, bude tato jedna hodnota, kterou jste zadali, použita během celého úklidu, i když se v rozsahu hodnot změní jiné parametry.
Spusťte experiment.
Výsledky
Po dokončení trénování:
Pokud chcete zobrazit souhrn parametrů modelu spolu s váhami vlastností naučenými při trénování, klikněte pravým tlačítkem na výstup Trénování modelu nebo Vyladit hyperparametry modelu a vyberte Vizualizovat.
Pokud chcete k předpovědí použít vytrénované modely, připojte natrénovaný model k modulu Score Model ( Skóre modelu).
Pokud chcete provést křížové ověření u označené datové sady, propojte nevytrénovaný model a datovou sadu s křížově ověřeným modelem.
Příklady
Příklady použití tohoto algoritmu učení najdete v Azure AI Gallery:
Přímý marketing: Používá model SVM ke klasifikaci zákazníků podle aplikace.
Predikce úvěrového rizika: Používá SVM k vyhodnocení úvěrového rizika.
Porovnání klasifikátorů s více třídami: Používá model SVM pro rozpoznávání rukopisu.
Technické poznámky
Tato část obsahuje podrobnosti o implementaci, tipy a odpovědi na nejčastější dotazy.
Tipy k používání
U tohoto typu modelu se doporučuje před použitím k trénování klasifikátoru normalizovat datovou sadu.
I když nedávný výzkum vyvinul algoritmy s vyšší přesností, může tento algoritmus dobře fungovat na jednoduchých datových sadách, pokud je vaším cílem vyšší přesnost. Pokud pomocí metody podpůrných vektorů se dvěma třídami nezískáte požadované výsledky, vyzkoušejte jednu z těchto metod klasifikace:
Parametry modulu
Name | Rozsah | Typ | Výchozí | Description |
---|---|---|---|---|
Počet iterací | >=1 | Integer | 1 | Počet iterací |
Lambda | >=double. Epsilon | Float | 0,001 | Váha pro regularizaci L1. Použitím nenulové hodnoty se vyhnete přeučení modelu na trénovací datovou sadu. |
Normalizace funkcí | Všechny | Logická hodnota | Ano | Pokud je true, normalizujte funkce. |
Project k unit-sphere | Všechny | Logická hodnota | Ne | Pokud je true, promítnou funkce do kruhu jednotky. |
Přediména náhodného čísla | Všechny | Integer | Přediména generátoru náhodných čísel používaného modelem. Ponechte výchozí hodnotu prázdnou. | |
Povolit neznámé úrovně kategorií | Všechny | Logická hodnota | Ano | Pokud má hodnotu true, vytvoří další úroveň pro každý sloupec kategorií. Všechny úrovně v testovací sadě, které nejsou k dispozici v datové sadě školení, jsou namapovány na tuto další úroveň. |
Výstup
Název | Typ | Description |
---|---|---|
Nevlakový model | Tabulka dat | Nevýukový binární klasifikační model. |