Hem Personliga finanser Maskininlärning: Skapa egna egenskaper i data - dummies

Maskininlärning: Skapa egna egenskaper i data - dummies

Innehållsförteckning:

Video: Camels, Code & Lab Coats: How AI Is Advancing Science and Medicine 2024

Video: Camels, Code & Lab Coats: How AI Is Advancing Science and Medicine 2024
Anonim

Ibland har de otillräckliga uppgifterna du erhåller från olika källor inte de funktioner som behövs för att utföra maskininlärningsuppgifter. När detta händer måste du skapa egna funktioner för att få önskat resultat. Att skapa en funktion betyder inte att man skapar data från tunn luft. Du skapar nya funktioner från befintliga data.

Förstå behovet av att skapa funktioner

En stor begränsning av maskininlärningsalgoritmer är att det inte går att gissa en formel som kan koppla ditt svar till de funktioner du använder. Ibland händer detta oförmåga att gissa eftersom du inte kan kartlägga svaret med hjälp av den information du har tillgänglig (vilket innebär att du inte har rätt information). I andra fall hjälper inte informationen du algoritmen lär dig ordentligt.

Till exempel, om du modellerar priset på fastighetsfastigheter är markytan ganska förutsägbar eftersom större fastigheter tenderar att kosta mer. Men om du istället för ytan ger din maskininlärningsalgoritm med längden på sidorna på marken (latitud och longitud koordinater av dess hörn), kan din algoritm inte räkna ut vad man ska göra med informationen du gav. Vissa algoritmer klarar av att hitta förhållandet mellan funktionerna, men de flesta algoritmer kommer inte att göra det.

Svaret på det här problemet är att skapa funktion. Funktionsskapande är den del av maskininlärning som anses vara mer en konst än en vetenskap, eftersom det innebär mänskligt ingripande vid kreativ blandning av befintliga funktioner. Du utför denna uppgift med addition, subtraktion, multiplikation och förhållande för att generera nya härledda funktioner med mer förutsägande effekt än originalet.

Att veta problemet väl och ta reda på hur ett människa skulle lösa det är en del av funktionsskapande. Så, att ansluta till föregående exempel är det faktum att markytan ansluter till fastighetspriset allmänt känt. Om en yta saknas från dina funktioner när du försöker gissa värdet på en egendom kan du återställa sådan information från befintliga data - och därmed ökar prestandan av förutsägelserna.

Oavsett om du lita på sunt förnuft, vanligt kunnande eller specialiserad expertis kan du göra mycket för din maskinalgoritm om du först räknar ut vilken information som ska fungera bäst för problemet och sedan försök att få den tillgänglig eller härleda den bland dina funktioner.

Skapa funktioner automatiskt

Du kan skapa några nya funktioner automatiskt.Ett sätt att uppnå automatisk funktionsskapande är att använda polynomial expansion. Specifika sätt är tillgängliga för att uppnå polynomial expansion så att du skapar funktioner automatiskt i både R och Python. För tillfället måste du förstå begreppen bakom polynomial expansion.

I polynomial expansion skapar du automatiskt interaktioner mellan funktioner och skapar makter (till exempel beräkning av torget för en funktion). Interaktionerna är beroende av multiplicering av funktionerna. Att skapa en ny funktion med multiplikation hjälper till att hålla reda på hur funktioner tenderar att verka som en helhet. Därför hjälper det att kartlägga komplexa relationer mellan dina funktioner som kan leda till speciella situationer.

Ett bra exempel på en interaktion är ljudet från en bil och priset på bilen. Konsumenter uppskattar inte bullriga bilar såvida de inte köper en sportbil, i vilket fall motorbullret är ett plus som påminner ägaren till bilens kraft. Det gör också medståndare märker den coola bilen, så ljud spelar en stor roll för att visa sig, eftersom brus säkert kommer att locka andras uppmärksamhet. Å andra sidan är buller när du kör en familjebil inte allt så coolt.

I en maskininlärningsapplikation försöker man förutse preferenshastigheten för en viss bil, så som egenskaper som buller och bilens pris är självprediktiva. Att multiplicera de två värdena och lägga till dem i uppsättningen funktioner kan emellertid tydligt ange en inlärningsalgoritm att målet är en sportbil (när du multiplicerar höga ljudnivåer med ett högt pris).

Stödjer hjälp genom att skapa olinjära relationer mellan svaret och funktionerna, som antyder specifika situationer.

Som ett annat exempel, tänk dig att du måste förutsäga en persons årliga utgifter. Ålder är en bra förutsägelse, för som människor blir gamla och mogna förändras också deras livs- och familjesituation. Eleverna börjar fattiga men hitta jobb och bygga en familj. Utifrån en allmän synvinkel tenderar utgifterna att växa som ålder till en viss punkt. Pensionering markerar vanligen en punkt där kostnaderna tenderar att minska. Ålder innehåller sådan information, men det är en egenskap som tenderar att växa, och kostnader som relaterar till tillväxten bidrar inte till att beskriva inversionen som uppträder vid en viss ålder.

Att lägga till kvadratfunktionen bidrar till att skapa en counter-effekt för att åldra sig själv, vilket är liten i början men växer snabbt med åldern. Den slutliga effekten är en parabol, med en initial tillväxt som kännetecknas av en topp i utgifterna vid en viss ålder och sedan en minskning.

Som tidigare nämnts kan man i förväg veta att dynamiken (ljud och sportbil, förbrukning och äldre ålder) kan hjälpa dig att skapa rätt egenskaper. Men om du inte känner till dessa dynamik i förväg, kommer polynomial expansion automatiskt att skapa dem för dig, eftersom det med en viss ordning kommer att skapa interaktioner och befogenheter i den ordningen. Ordern pekar på antalet multiplikationer och den maximala effekten som ska tillämpas på de befintliga funktionerna.

Så en polynomiell expansion av ordning 2 höjer alla funktioner till den andra kraften och multiplicerar varje enskild funktion av alla andra. (Du får multiplikationen av alla kombinationer av två funktioner.) Ju högre antal, desto fler nya funktioner kommer att skapas, men många av dem kommer att vara överflödiga och bara bidra till att din maskininlärningsalgoritm överfit data.

När du använder polynomial expansion måste du vara uppmärksam på explosionen av funktioner du skapar. Kraften ökar linjärt, så om du har fem funktioner och du behöver en expansion av ordning 2, ökar varje funktion upp till den andra effekten. Att öka ordern på en lägger bara till en ny strömfunktion för varje originalfunktion. Istället ökar interaktionen baserat på kombinationer av funktionerna upp till den ordningen.

Faktum är att med fem funktioner och en polynomial expansion av ordning 2 skapas alla tio unika kombinationer av funktionernas koppling. Att öka ordern till 3 kräver att alla unika kombinationer av två variabler skapas, plus de unika kombinationerna av tre variabler, det vill säga 20 funktioner.

Maskininlärning: Skapa egna egenskaper i data - dummies

Redaktörens val

Fastighetsprofessionens grunder för fastighetslicensexamen - dummies

Fastighetsprofessionens grunder för fastighetslicensexamen - dummies

Fastighetsexamen kommer att förvänta dig att du har ett grundläggande grepp på fastighetsbranschen. Du tror att det bara är uppenbart att veta vad de viktigaste spelarna gör i en fastighetsaffär, men på grund av den terminologi de delar, blir skillnaderna mellan spelarna lite muddlade. Här är snabba beskrivningar ...

Kostnadsmetoden för fastighetslicensexamen - dummies

Kostnadsmetoden för fastighetslicensexamen - dummies

En metod för att uppskatta Värdet på fastigheter kallas kostnaden. Du måste känna till formeln för fastighetslicensexamen. Kostnadsmetoden baseras på tanken att komponenterna i en fastighet eller marken och byggnaderna kan läggas till för att komma fram till ...

Studie för fastighetslicensexamen - dummies

Studie för fastighetslicensexamen - dummies

När var sista gången du tog en multipelvalsexamen ? Eller, för den delen, någon examen? Det är troligt att det var länge sedan. Kanske överväger du huruvida du ska bli en fastighetsmäklare, men du är lite avskräckt av tanken på att du måste göra ett test. Vad du kan ...

Redaktörens val

Följer ett basketspel på tv - dummies

Följer ett basketspel på tv - dummies

Du kommer bli mycket mer ute av att titta på ett basketspel på TV - eller till och med leva - om du gör mer än att se bollen gå in i rammen. Kolla in dessa insider tips för att fånga den verkliga åtgärden och öka din njutning av sporten. Förutse nästa pass Försök att tänka som ...

Top 5 Fantasy Basketball League Sites - Dummies

Top 5 Fantasy Basketball League Sites - Dummies

Att hitta och gå med på en fantasy basketplats kan ibland vara skrämmande uppgift eftersom så många alternativ är tillgängliga och de flesta webbplatser ser lika ut. Bara för att webbplatser ser ut som det betyder inte nödvändigtvis att de mäter i värde. Vissa webbplatser erbjuder gratis ligor, andra betalade - och vissa webbplatser tillhandahåller bara standard liga ...

Tryck på motståndarna i Basket - Dummies

Tryck på motståndarna i Basket - Dummies

Pressen är kort för tryck. Ofta kallad en fullrättspress, det här är ett anfallande försvar som används på backen, där målet är att tvinga en omsättning. Vanligtvis används efter en gjord korg, svänger pressgruppen över motståndarna i backcourt; Om motståndarna lyckas få bollen förbi halvvägs (kallad brytning ...

Redaktörens val

Hur R beräknar oändliga, odefinierade och saknade värden - dummies

Hur R beräknar oändliga, odefinierade och saknade värden - dummies

Lyckligtvis kan R hantera dataanomalier som förvirrar några andra statistiska plattformar. I vissa fall har du inte reella värden att beräkna med. I de flesta verkliga dataset saknas faktiskt åtminstone några värden. Dessutom har vissa beräkningar oändlighet som ett resultat (som att dividera med noll) eller kan inte ...

Hur man lägger till linjer i en plot i R-dummies

Hur man lägger till linjer i en plot i R-dummies

I R, lägger du till rader i en plott på ett mycket liknande sätt att lägga till poäng, förutom att du använder funktionen linjer () för att uppnå detta. Men använd först lite R magi för att skapa en trendlinje genom data, kallad en regressionsmodell. Du använder lm () -funktionen för att uppskatta en linjär ...

Hur man lägger till en andra dimension i R-dummies

Hur man lägger till en andra dimension i R-dummies

Förutom vektorer kan R representera matriser som ett objekt du arbetar och beräknar med. Faktum är att R verkligen lyser när det gäller matrisberäkningar och -operationer. Vektorer är nära relaterade till en större klass av objekt, arrays. Arrayer har två mycket viktiga egenskaper: De innehåller bara en enda typ av värde. De har ...