Linjär klassificerare
Den här artikeln behöver källhänvisningar för att kunna verifieras. (2019-10) Åtgärda genom att lägga till pålitliga källor (gärna som fotnoter). Uppgifter utan källhänvisning kan ifrågasättas och tas bort utan att det behöver diskuteras på diskussionssidan. |
Linjär klassificerare är en enkel form av klassificerare.
Enkel linjär klassificerare
Den enkla linjära klassificeraren har följande form:
, där är en attributvektor (ett exempel) som ska klassificeras, en mängd av konstanter, en mängd av andra attributvektorer (som typiskt kommer från en mängd av träningsexempel), samt den vanliga skalärprodukten. är en stegfunktion som är 1 för positiva tal och -1 för negativa tal, så klassificeraren kan alltså skilja mellan två klasser.
Begränsning
Den enkla linjära klassificeraren kan inte beskriva funktioner som inte är linjärt separabla, till exempel en XOR-funktion.
Exempel på metoder att skapa linjära klassificerare
- Perceptron
- Stödvektormaskin med linjär kärna.
Generaliserad linjär klassificerare
Man kan ersätta skalärprodukten i formeln ovan med en mer generell funktion, en kärna. Vi får då en generaliserad linjär klassificerare som har följande form:
Motivering för den generaliserade linjära klassificeraren
Som nämndes ovan så kan den enkla linjära klassificeraren inte representera vissa funktioner, till exempel en vanlig XOR-funktion av två logiska variabler och . Detta kan kringgås genom att vi inför en hjälpvariabel .
För att generellt lösa den typen av problem kan vi göra en olinjär avbildning av vektorerna i attributrummet till ett rum av högre dimension. I exemplet ovan har vi alltså avbildat en tvådimensionell vektor på en tredimensionell , och i det tredimensionella rummet kan vi använda en vanlig linjär klassificerare för att beskriva funktionen.
Eftersom attributvektorerna i formeln för den linjära klassificeraren enbart förekommer i skalärprodukter så behöver vi inte explicit beskriva avbildningen från attributrummet till rummet av högre dimension, utan det räcker med att vi anger hur skalärprodukten av de avbildade vektorerna ser ut, dvs vi anger , en så kallad kärna. Detta brukar kallas kärntricket (kernel trick), och är praktiskt eftersom det ofta är betydligt enklare att beräkna värdet för kärnan än att explicit utföra avbildningen.
Exempel på olinjära kärnor
- Polynomiell (oftast kvadratisk eller kubisk, dvs d är 2 eller 3): eller
- Gaussisk:
Exempel på metoder att skapa generaliserade linjära klassificerare
- Stödvektormaskin med olinjär kärna.
- Relevansvektormaskin
Icke-binär klassificering
Den linjära klassificeraren (inklusive den generaliserade) kan bara skilja mellan två klasser. För att kringgå detta problem använder man två metoder:
- En-mot-alla
- Alla-mot-alla
Antag till exempel att vi har fyra klasser A, B, C och D. Vid en-mot-alla-klassificering skapar man en klassificerare per klass, dvs fyra stycken. Klassificeraren för A kan då skilja mellan A och icke-A. För att klassificera kör man alla fyra klassificerarna och väljer den klass som ger störst positivt utslag.
Vid alla-mot-alla-klassificering skapar man i stället klassificerare för alla par av klasser, till exempel A-mot-B, A-mot-C, osv. Metoden påminner om seriespel i till exempel fotboll. För denna metod får vi alltså sex stycken klassificerare för detta exempel. För att utföra klassificeringen kör man alla klassificerarna och räknar vilken klass som får flest antal vinster (och eventuellt också "målskillnad" om det skulle bli samma antal vinster).
Media som används på denna webbplats
Författare/Upphovsman: Tkgd2007, Licens: CC BY-SA 3.0
A new incarnation of Image:Question_book-3.svg, which was uploaded by user AzaToth. This file is available on the English version of Wikipedia under the filename en:Image:Question book-new.svg