Funktionsteknik är processen att använda en datadomän för att skapa funktioner som behövs för maskininlärning . Funktionsteknik är grunden för maskininlärningsapplikationer och är både svårt och kostsamt. Behovet av manuell funktionsteknik kan undvikas genom att automatisera tillämpad funktionsinlärning .
Funktionsteknik är ett informellt område men anses väsentligt inom maskininlärning.
Det är svårt att komma på tecken, det tar mycket tid och djup kunskap. "Applied Machine Learning" är i grunden funktionsteknik.
— Andrew Eun [1]Ett tecken är en egenskap eller egenskap som är inneboende i alla oberoende objekt, vars analys eller prognos vi gör. Vilken kvalitet som helst kan vara användbar om den är användbar för modellen.
Innebörden av en egenskap och hur den skiljer sig från kvalitet skulle vara lättare att förstå i samband med problemet. Ett tecken är en egenskap som kan hjälpa till att lösa ett problem [2] .
Funktionerna i dina data är viktiga för de prediktiva modeller du använder och påverkar resultatet du kommer att få. Kvaliteten och kvantiteten av funktioner har stor inverkan på kvaliteten på modellen, om den blir bra eller inte [3] .
Vi kan säga att ju bättre tecknen är, desto bättre blir resultatet. Detta är inte helt sant, eftersom resultatet kommer att bero på modellen och data, inte bara på de valda funktionerna. Men valet av rätt egenskaper är fortfarande en mycket viktig fråga. Bättre funktioner kan ge en enklare och mer flexibel modell, och ofta ge bättre resultat [2] .
De tillämpade algoritmerna är mycket standard bland medlemmar i Kaggle- communityt . […] Vi lägger större delen av vår ansträngning på funktionsteknik. [...] Vi är också mycket noga med att kassera funktioner som kan riskera att överanpassa vår modell.
— Xavier Conort [4]…vissa maskininlärningsprojekt lyckas och andra misslyckas. Vad leder till detta? De viktigaste faktorerna är de funktioner som används.
— Pedro Domingos [5]Funktionskonstruktionsprocessen är [6]
En egenskap kan vara strikt signifikant (har information som inte finns i andra funktioner), signifikant, svagt signifikant (innehåller information som kan finnas i andra funktioner) eller obetydlig [7] . Det är viktigt att skapa många funktioner, även om några av dem är obetydliga kan du inte bara kassera dem. Då kan funktionsval användas för att förhindra övermontering [8] .
En explosion av funktioner kan orsakas av en kombination av funktioner eller mönster av funktioner, vilket leder till en snabb ökning av det totala antalet funktioner.
Det finns flera lösningar för att stoppa funktionsexplosionen, såsom regularisering , kärnmetod , funktionsval [9] .
Feature engineering automation har blivit ett nytt forskningsämne inom den akademiska världen. 2015 introducerade MIT- forskare algoritmen "Deep Feature Synthesis" och demonstrerade dess prestanda i en online datavetenskapstävling där algoritmen slog 615 av 906 mänskliga team [10] [11] . Algoritmen Deep Feature Synthesis är tillgänglig som ett bibliotek med öppen källkod som heter Featuretools . Detta arbete har fortsatt av andra forskare, inklusive IBMs OneBM [12] och Berkeleys ExploreKit [13] . IBM-forskarna säger att automatisering av funktionsteknik "hjälper forskare att minska datautforskningstiden genom att möjliggöra försök och felexperiment på kort tid. Å andra sidan gör det det möjligt, utan att vara expert, det vill säga utan att vara bekant med dataanalysmetoder, att snabbt välja ett värde från datan med liten ansträngning, tid och pengar.
Kommersiella produkter har uppstått från nya företag som fokuserar på maskininlärning, som H20.ai [14] och Feature Labs [15] .
Maskininlärning och datautvinning | |
---|---|
Uppgifter | |
Att lära sig med en lärare | |
klusteranalys | |
Dimensionalitetsreduktion | |
Strukturell prognos | |
Anomali upptäckt | |
Grafisk probabilistiska modeller | |
Neurala nätverk | |
Förstärkningsinlärning |
|
Teori | |
Tidskrifter och konferenser |
|