Likhetsinlärning
Likhetsinlärning är ett område för övervakad maskininlärning inom artificiell intelligens . Det är nära relaterat till regression och klassificering , men målet är att lära sig en likhetsfunktion som mäter hur lika eller relaterade två objekt är. Den har applikationer i rankning , i rekommendationssystem , visuell identitetsspårning, ansiktsverifiering och högtalarverifiering.
Inlärningsupplägg
Det finns fyra vanliga inställningar för likhet och metriskt distansundervisning.
- Regressionslikhetsinlärning tillsammans
- I denna uppsättning ges objektpar med ett mått på deras likhet . Målet är att lära sig en funktion som approximerar för varje nytt märkt triplettexempel . Detta uppnås vanligtvis genom att minimera en reglerad förlust .
- Klassificering likhetsinlärning
- Givet är par av liknande objekt och icke liknande objekt . En ekvivalent formulering är att varje par ges tillsammans med en binär etikett som avgör om de två objekten är lika eller inte. Målet är återigen att lära sig en klassificerare som kan avgöra om ett nytt par objekt är lika eller inte.
- Ranking likhetsinlärning
- Givet är tripletter av objekt vars relativa likhet följer en fördefinierad ordning: är känt för att vara mer lik än . Målet är att lära sig en funktion så att för varje ny triplett av objekt , den lyder ( kontrastiv inlärning ). Denna uppställning förutsätter en svagare form av övervakning än i regression, eftersom istället för att ge ett exakt mått på likhet , behöver man bara ange den relativa likhetsordningen. Av denna anledning är rankningsbaserad likhetsinlärning lättare att tillämpa i verkliga storskaliga applikationer.
- Locality sensitive hashing (LSH)
- Hashes indataobjekt så att liknande objekt mappas till samma "buckets" i minnet med hög sannolikhet (antalet hinkar är mycket mindre än universum av möjliga indataobjekt). Det används ofta i närmaste grannsökning på storskalig högdimensionell data, t.ex. bilddatabaser, dokumentsamlingar, tidsseriedatabaser och genomdatabaser.
Ett vanligt tillvägagångssätt för inlärningslikhet är att modellera likhetsfunktionen som en bilinjär form . Till exempel, vid rangordning av likhetsinlärning, strävar man efter att lära sig en matris W som parametriserar likhetsfunktionen . När data finns i överflöd är ett vanligt tillvägagångssätt att lära sig ett siamesiskt nätverk - En djup nätverksmodell med parameterdelning.
Metrisk inlärning
Likhetsinlärning är nära relaterat till distansinlärning . Metrisk inlärning är uppgiften att lära sig en distansfunktion över objekt. En metrisk funktion eller avståndsfunktion måste lyda fyra axiom: icke-negativitet , identitet av oskiljaktiga , symmetri och subadditivitet (eller triangelolikheten). I praktiken ignorerar metriska inlärningsalgoritmer villkoret för identitet för oskiljbara och lär sig en pseudometrik.
När objekten är vektorer i , då valfri matris i den symmetriska positiva halvdefinita konen definierar en pseudometrisk avstånd för rummet av x genom formen . När är en symmetrisk positiv definitiv matris, är ett mått. Dessutom, eftersom varje symmetrisk positiv semidefinitiv matris kan dekomponeras som där och , avståndsfunktionen kan skrivas om på motsvarande sätt . Avståndet motsvarar det euklidiska avståndet mellan de transformerade egenskapsvektorerna och .
Många formuleringar för metriskt lärande har föreslagits. Några välkända tillvägagångssätt för metrisk inlärning inkluderar Lärande från relativa jämförelser som är baserad på triplettförlusten, Stor marginal närmaste granne , Informationsteoretisk metrisk inlärning (ITML).
I statistiken används kovariansmatrisen för data ibland för att definiera ett avståndsmått som kallas Mahalanobis- avstånd .
Ansökningar
Likhetsinlärning används i informationssökning för att lära sig rangordna , i ansiktsverifiering eller ansiktsidentifiering och i rekommendationssystem . Många tillvägagångssätt för maskininlärning förlitar sig också på vissa mätvärden. Detta inkluderar oövervakat lärande som klustring , som grupperar nära eller liknande objekt. Det inkluderar också övervakade tillvägagångssätt som K-närmaste granne-algoritm som förlitar sig på etiketter för närliggande objekt för att bestämma etiketten för ett nytt objekt. Metriskt lärande har föreslagits som ett förbearbetningssteg för många av dessa tillvägagångssätt.
Skalbarhet
Metrisk och likhetsinlärning skalas naivt kvadratiskt med dimensionen av inmatningsutrymmet, vilket lätt kan ses när det inlärda måttet har en bilinjär form . Skalning till högre dimensioner kan uppnås genom att upprätthålla en gleshetsstruktur över matrismodellen, som gjort med HDSL och med COMET.
programvara
- metric-learn är ett gratis Python- bibliotek som erbjuder effektiva implementeringar av flera övervakade och svagt övervakade likhets- och metriska inlärningsalgoritmer. API:et för metric-learn är kompatibelt med scikit-learn .
- OpenMetricLearning är ett Python- ramverk för att träna och validera modellerna som producerar högkvalitativa inbäddningar.
Se även
Vidare läsning
För ytterligare information om detta ämne, se undersökningarna om metriskt och likhetsinlärning av Bellet et al. och Kulis.