Sdílet prostřednictvím


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.

  1. Přidejte do experimentu v nástroji Studio (classic) modul Support Vector Machine se dvěma třídami.

  2. 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.

  3. 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í.

  4. 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.

  5. 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.

  6. 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.

  7. 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.

  8. 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.

  9. Připojení datovou sadu s popiskem a jeden z školicích modulů:

    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.

  10. 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:

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.

Viz také

Classification
Seznam modulů a-Z