One-vs-All Multiclass

Tento článek popisuje, jak používat komponentu One-vs-All Multiclass v návrháři služby Azure Machine Learning. Cílem je vytvořit klasifikační model, který dokáže predikovat více tříd pomocí přístupu 1:all .

Tato komponenta je užitečná pro vytváření modelů, které predikují tři nebo více možných výsledků, když výsledek závisí na průběžných nebo kategorických proměnných vysvětlujících proměnných. Tato metoda také umožňuje použít binární metody klasifikace v případě problémů, které vyžadují více výstupních tříd.

Další informace o modelech one-versus-all

Některé klasifikační algoritmy záměrně umožňují použití více než dvou tříd. Jiné omezují možné výsledky na jednu ze dvou hodnot (binární model nebo model se dvěma třídami). Ale i binární klasifikační algoritmy lze přizpůsobit pro úlohy klasifikace s více třídami prostřednictvím různých strategií.

Tato komponenta implementuje metodu 1 proti všem, ve které je vytvořen binární model pro každou z více výstupních tříd. Komponenta vyhodnocuje každý z těchto binárních modelů pro jednotlivé třídy vzhledem k jejich doplňku (všechny ostatní třídy v modelu), jako by se jednalo o problém binární klasifikace. Kromě výpočetní efektivity (jsou potřeba pouze n_classes klasifikátory) je jednou z výhod tohoto přístupu jeho interpretovatelnost. Vzhledem k tomu, že každá třída je reprezentována pouze jedním klasifikátorem, je možné získat znalosti o třídě kontrolou odpovídajícího klasifikátoru. Toto je nejčastěji používaná strategie pro klasifikaci s více třídami a jedná se o spravedlivou výchozí volbu. Komponenta pak provede predikci spuštěním těchto binárních klasifikátorů a výběrem předpovědi s nejvyšším skóre spolehlivosti.

V podstatě komponenta vytvoří soubor jednotlivých modelů a potom sloučí výsledky, aby se vytvořil jeden model, který předpovídá všechny třídy. Jakýkoli binární klasifikátor lze použít jako základ pro model 1-proti všem.

Řekněme například, že nakonfigurujete model podpůrných vektorů se dvěma třídami a poskytnete ho jako vstup pro komponentu One-vs-All Multiclass. Komponenta vytvoří modely podpůrných vektorů se dvěma třídami pro všechny členy výstupní třídy. Pak by použil metodu 1 proti všem ke sloučení výsledků pro všechny třídy.

Komponenta používá OneVsRestClassifier sklearn a další podrobnosti najdete tady.

Jak nakonfigurovat klasifikátor Multiclass one-vs-all

Tato komponenta vytvoří soubor binárních klasifikačních modelů pro analýzu více tříd. Pokud chcete tuto komponentu použít, musíte nejprve nakonfigurovat a vytrénovat binární klasifikační model.

Binární model připojíte k komponentě One-vs-All Multiclass. Potom vytrénujete soubor modelů pomocí Trénování modelu s označenou trénovací datovou sadou.

Při kombinování modelů one-vs-all multiclass vytvoří více binárních klasifikačních modelů, optimalizuje algoritmus pro každou třídu a pak modely sloučí. Komponenta tyto úlohy provede, i když trénovací datová sada může mít více hodnot třídy.

  1. Přidejte komponentu One-vs-All Multiclass do kanálu v návrháři. Tuto komponentu najdete v kategorii Klasifikace v části Machine Learning – Initialize (Strojové učení – Inicializace).

    Klasifikátor One-vs-All s více třídami nemá vlastní konfigurovatelné parametry. Jakákoli vlastní nastavení musí být provedena v binárním klasifikačním modelu, který je poskytován jako vstup.

  2. Přidejte do kanálu binární klasifikační model a nakonfigurujte ho. Můžete například použít dvoutřídní podpůrný vektorový stroj nebo dvoutřídní zesílený rozhodovací strom.

  3. Přidejte do svého kanálu komponentu Trénování modelu . Připojte nevytrénovaný klasifikátor, který je výstupem třídy One-vs-All Multiclass.

  4. Na druhém vstupu Trénování modelu připojte označenou trénovací datovou sadu, která má více hodnot třídy.

  5. Odešlete kanál.

Výsledky

Po dokončení trénování můžete model použít k předpovědím s více třídami.

Alternativně můžete předat netrénovaný klasifikátor křížovému ověření modelu pro křížové ověření s označenou ověřovací datovou sadou.

Další kroky

Podívejte se na sadu komponent dostupných pro Azure Machine Learning.