Delen via


Ordinale regressie

Belangrijk

De ondersteuning voor Azure Machine Learning-studio (klassiek) eindigt op 31 augustus 2024. U wordt aangeraden om vóór die datum over te stappen naar Azure Machine Learning.

Vanaf 1 december 2021 kunt u geen nieuwe resources voor Azure Machine Learning-studio (klassiek) meer maken. Tot en met 31 augustus 2024 kunt u de bestaande resources van Azure Machine Learning-studio (klassiek) blijven gebruiken.

De documentatie van ML-studio (klassiek) wordt buiten gebruik gesteld en wordt in de toekomst mogelijk niet meer bijgewerkt.

Hiermee maakt u een ordinale regressiemodel

Categorie: Machine Learning/ Model initialiseren/regressie

Notitie

Van toepassing op: Machine Learning Studio (klassiek)

Vergelijkbare modules voor slepen en neerzetten zijn beschikbaar in Azure Machine Learning designer.

Moduleoverzicht

In dit artikel wordt beschreven hoe u de ordinale regressiemodule in Machine Learning Studio (klassiek) gebruikt om een regressiemodel te maken dat kan worden gebruikt om gerangschikte waarden te voorspellen.

Enkele voorbeelden van gerangschikte waarden:

  • Enquêtereacties die de voorkeursmerken van gebruikers vastleggen op een schaal van 1 tot 5
  • De volgorde van de finishers in een race
  • URL's in gerangschikte zoekresultaten

Meer informatie over ordinale regressie

Ordinale regressie wordt gebruikt wanneer het label of de doelkolom getallen bevat, maar de getallen een rangschikking of volgorde vertegenwoordigen in plaats van een numerieke meting.

Voor het voorspellen van ordinale getallen is een ander algoritme vereist dan het voorspellen van de waarden van getallen op een continue schaal, omdat de getallen die zijn toegewezen om de rangschikkingsorde te vertegenwoordigen, geen intrinsieke schaal hebben.

Als u bijvoorbeeld de testscores van studenten wilt voorspellen, gebruikt u een standaard regressiemodel, omdat de testscores van studenten variëren op continue schaal en kunnen worden gemeten. Als u echter hun klasserangschikking wilt voorspellen, moet u een ordinale regressiemodel gebruiken.

Zie dit artikel (downloadbaar PDF) voor meer informatie over het onderzoek achter dit algoritme: https://papers.nips.cc/paper/3125-ordinal-regression-by-extended-binary-classification.pdf

Ordinale regressie configureren

In deze module wordt een classificatieprobleem opgelost als een reeks gerelateerde classificatieproblemen. Daarom maakt het algoritme een reeks uitgebreide trainingsvoorbeelden met behulp van een binair model voor elke rangschikking en traint het op basis van die uitgebreide set. Deze bewerking kan rekenkracht kosten.

  1. Voeg de module Ordinal Regression Model toe aan uw experiment in Studio (klassiek). U vindt deze module onder Machine Learning - Initialiseren in de categorie Regressie.

  2. Voeg een module toe die binaire classificatie ondersteunt en configureer het model. Er zijn verschillende modules van twee klassen in de classificatiecategorie .

  3. Verbinding maken binaire classificatiemodel als invoer voor de module Ordinale regressiemodel.

  4. Aanvullende parameters zijn niet vereist voor het ordinale regressiemodel; het algoritme is vooraf geconfigureerd met de meest effectieve parameters voor het oplossen van een rangschikkingsprobleem.

  5. Verbinding maken een trainingsset en de module Train Model.

  6. Selecteer in de module Train Model de kolom die de rangschikkingswaarden bevat.

    De rangschikkingswaarden moeten numerieke waarden zijn, maar ze hoeven geen gehele getallen of positieve getallen te zijn, zolang ze een reeks vertegenwoordigen.

    Voor verwerkingsdoeleinden wordt ervan uitgegaan dat de rangschikkingen de volgorde 1 tot K hebben, waarbij 1 de laagste rang is en K de hoogste rang. De module Train Model kan echter werken, zelfs als de semantiek van uw schaal wordt omgekeerd.

    Als in uw oorspronkelijke enquête bijvoorbeeld 1 de hoogste score was en 5 de laagste, heeft dit geen invloed op de verwerking van het model.

  7. Voer het experiment uit.

Resultaten

Nadat de training is voltooid:

  • Als u voorspellingen wilt doen, koppelt u het getrainde model, samen met nieuwe gegevens, aan de module Score Model .

  • Als u kruisvalidatie wilt uitvoeren voor een gelabelde gegevensset, verbindt u het ongetrainde model met Kruisvalidatiemodel.

Voorbeelden

Zie de Azure AI Gallery voor voorbeelden van hoe ordinale regressie wordt gebruikt in machine learning.

  • Predictief onderhoud - stap C: in dit voorbeeld wordt ordinale regressie gebruikt om waarden te rangschikken die worden uitgevoerd door een classificatiemodel, op basis van de veronderstelling dat de waarde de ernst van de foutclassificatie weerspiegelt.

Technische opmerkingen

Het ordinale regressiealgoritme dat in deze learner wordt gebruikt, wordt geïmplementeerd door uitgebreide binaire classificatie, zoals wordt beschreven in het document Ordinal Regression by Extended Binary Classification, door Ling Li en Hsuan-Tien Lin, in NIPS 2006.

Beperkingen voor invoergegevens

U kunt elke numerieke kolom gebruiken als het doel van een ordinale regressiemodel, maar in de praktijk moet u alleen gegevens gebruiken die een bepaalde volgorde of rangschikking vertegenwoordigen.

Er wordt van uitgegaan dat de intervallen tussen rangen onbekend zijn en de grootte van het interval is niet van belang voor het model; Het model gaat er echter van uit dat de volgorde van rangschikken de natuurlijke volgorde van getallen volgt.

Het model zelf wijst geen betekenis toe aan een bepaalde schaal. Met andere woorden, u kunt één model maken waarin 1 een goede rangschikking is en 10 de slechtste is, en in een ander model ervan uitgaan dat 10 de gewenste rangschikking is en 1 de slechtste is.

Classificatiealgoritme

De trainingsset (X,Y) bestaat uit invoervectoren x en labels y. De labels vertegenwoordigen sequentie variërend van 1 tot k opeenvolgend: 1,2, ... , K. Er wordt van uitgegaan dat de rangschikkingen zodanig worden geordend dat 1 de laagste of de slechtste rangschikking is en dat K de beste of hoogste rang is.

De crux van het algoritme ligt in het wijzigen van de opgegeven invoerfuncties X en labels Y om uitgebreide voorbeelden te gebruiken en vervolgens een binaire classificatie te gebruiken om het ordinale regressieprobleem op te lossen. De binaire classificatie is getraind om een ja/nee-antwoord te geven op de vraag' Is de rangschikking groter dan r?

Voor elk geval in de trainingsset zijn er bijvoorbeeld uitgebreide K-1-voorbeelden en is de maximale waargenomen rangschikking K. De uitgebreide functies worden gevormd door het toevoegen van de eerste rij van een K-1 x K-1-identiteitsmatrix aan de invoerfuncties voor alle i. De labels krijgen +1 voor de eerste r-1-rijen als de rangschikking r en -1 voor de rest is.

Voorbeeldberekeningen

Om te laten zien hoe het werkt, laat u x1 de trainingsfunctie zijn waarvan de rangschikking 3 is, waarbij de maximale waargenomen rangschikking 5 is. De uitgebreide voorbeelden die overeenkomen met deze functie zijn als volgt:

Case Testen Resulterend label
X11000 Is rangschikking groter dan 1? Ja; daarom +1
X10100 Is rangschikking groter dan 2? Ja; daarom +1
X10010 Is rangschikking groter dan 3? Nee; daarom geen extra functie
X10001 Is rangschikking groter dan 4? Nee; daarom geen extra functie

Verwachte invoer

Naam Type Description
Niet-getraind binair classificatiemodel ILearner-interface Een ongetraind binair classificatiemodel

Uitvoerwaarden

Naam Type Description
Niet-getraind model ILearner-interface Een ongetraind ordinale regressiemodel

Zie ook

Regressie