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


Egy-vs-one multiclass

Ez a cikk azt ismerteti, hogyan használható az Egy és egy többosztályos összetevő az Azure Machine Learning Designerben. A cél egy olyan besorolási modell létrehozása, amely több osztály előrejelzésére képes az egy-az-egyhez megközelítéssel.

Ez az összetevő olyan modellek létrehozásához hasznos, amelyek három vagy több lehetséges eredményt jeleznek előre, ha az eredmény folyamatos vagy kategorikus prediktorváltozóktól függ. Ezzel a módszerrel bináris besorolási módszereket is használhat több kimeneti osztályt igénylő problémák esetén.

További információ az egy-az-egyhez képest modellekről

Egyes besorolási algoritmusok kétnál több osztály használatát teszik lehetővé tervezés szerint. Mások a lehetséges eredményeket két érték (bináris vagy kétosztályos modell) egyikére korlátozzák. De még a bináris besorolási algoritmusok is különböző stratégiákon keresztül igazíthatók a többosztályos besorolási feladatokhoz.

Ez az összetevő az egy-az-egyhez metódust valósítja meg, amelyben osztálypáronként jön létre bináris modell. Az előrejelzési időpontban a legtöbb szavazatot kapott osztály lesz kiválasztva. Mivel az osztályozóknak el kell férnie n_classes * (n_classes - 1) / 2 , ez a módszer általában lassabb, mint az egy az egyben, az O(n_classes^2) összetettsége miatt. Ez a módszer azonban előnyös lehet olyan algoritmusok esetében, mint a kernelalgoritmusok, amelyek nem méretezhetők megfelelően a használatával n_samples. Ennek az az oka, hogy minden egyes tanulási probléma csak az adatok egy kis részhalmazát érinti, míg az egy-az-egyhez viszonyítva a teljes adathalmazt használják n_classes .

Lényegében az összetevő létrehoz egy egyedi modellekből álló együttest, majd egyesíti az eredményeket, hogy egyetlen modellt hozzon létre, amely az összes osztályt előrejelzi. Bármely bináris osztályozó használható az egy-az-egyhez képesti modell alapjaként.

Tegyük fel például, hogy egy kétosztályos támogatási vektorgép-modellt konfigurál, és ezt adja meg bemenetként az Egy és az Egy többosztályos összetevőhöz. Az összetevő kétosztályos támogatóvektor-gépmodelleket hozna létre a kimeneti osztály minden tagjához. Ezután az egy-az-az-egyhez metódust alkalmazza az összes osztály eredményeinek kombinálására.

Az összetevő a sklearn OneVsOneClassifier osztályát használja, és további részleteket itt talál.

Az egy-vs-one többosztályos osztályozó konfigurálása

Ez az összetevő bináris besorolási modellek együttesét hozza létre több osztály elemzéséhez. Az összetevő használatához először konfigurálnia és be kell tanítania egy bináris besorolási modellt.

A bináris modellt a One-vs-One multiclass összetevőhöz csatlakoztatja. Ezután betanítsa a modellek együttesét a Modell betanítása címkézett betanítási adatkészlettel.

A modellek kombinálásakor a One-vs-One Multiclass több bináris besorolási modellt hoz létre, optimalizálja az algoritmust az egyes osztályokhoz, majd egyesíti a modelleket. Az összetevő akkor is elvégzi ezeket a feladatokat, ha a betanítási adatkészlet több osztályértékkel is rendelkezhet.

  1. Adja hozzá a one-vs-one multiclass összetevőt a folyamathoz a tervezőben. Ezt az összetevőt a Gépi tanulás – Inicializálás területen, a Besorolás kategóriában találja.

    A One-vs-One többosztályos osztályozó nem rendelkezik saját konfigurálható paraméterekkel. A testreszabásokat bemenetként megadott bináris besorolási modellben kell elvégezni.

  2. Adjon hozzá egy bináris besorolási modellt a folyamathoz, és konfigurálja azt. Használhatja például a kétosztályos támogató vektorgépet vagy a kétosztályos kiemelt döntési fát.

  3. Adja hozzá a Modell betanítása összetevőt a folyamathoz. Csatlakoztassa a betanítatlan osztályozót, amely az Egy és az Egy többosztályos osztály kimenete.

  4. A Betanítási modell másik bemenetén csatlakoztassa a több osztályértékkel rendelkező, címkézett betanítási adatkészletet.

  5. Küldje el a folyamatot.

Results (Eredmények)

A betanítás befejezése után a modell használatával többosztályos előrejelzéseket készíthet.

Másik lehetőségként átadhatja a nem betanított osztályozót a Keresztellenőrzési modellnek keresztérvényesítés céljából egy címkézett érvényesítési adatkészleten.

Következő lépések

Tekintse meg az Azure Machine Learning számára elérhető összetevőket .