Maskininlärning
Den här artikeln behöver fler eller bättre källhänvisningar för att kunna verifieras. (2018-12) Å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. |
![](http://178.128.105.246/cars-http-upload.wikimedia.org/wikipedia/commons/thumb/1/18/AI-ML-DL.png/250px-AI-ML-DL.png)
Maskininlärning (engelska: machine learning) är ett område inom artificiell intelligens, och därmed inom datavetenskapen. Det handlar om metoder för att med data "träna" datorer att upptäcka och "lära" sig regler för att lösa en uppgift, utan att datorerna har programmerats med regler för just den uppgiften. Området angränsar till statistik, datorseende och mönsterigenkänning. Datautvinning (datamining) är ett betydelsenära begrepp som avser en kombiniation av maskininlärning och statistiska metoder för att upptäcka och visualisera mönster i stora mängder data.
Maskininlärningsmetoder arbetar med data. Ofta kan datan delas in i indata (den information som datorn får tillgång till) och utdata (det svar som datorn förväntas ge efter att ha bearbetat indatan). En definition av maskininlärning har skapats av Tom M. Mitchell[1]. Han definierar de algoritmer som studeras inom maskininlärning som "ett datorprogram sägs lära av erfarenhet E givet en uppgift T och ett prestandamått P om dess prestanda på uppgiften T, mätt med P, ökar med erfarenhet E".
Maskininlärning är en viktig komponent av det bredare området artificiell intelligens som involverar skapandet av system och maskiner som kan utföra olika typer av uppgifter som normalt skulle kräva mänsklig intelligens. För att utveckla AI-system krävs maskininlärning för att träna systemen att bli mer kapabla och avancerade.[2] Maskininlärning är därför en förutsättning för utvecklandet av AI-teknik då deras förmågor grundar sig i informationen och sätten de tränas på. En vanlig missuppfattning är att artificiell intelligens och maskininlärning är samma sak. Även om dessa områden har ett nära samband kan deras relation bäst beskrivas som att maskininlärning är en del av AI.[3]
Typer av problem och uppgifter
[redigera | redigera wikitext]Problem inom maskininlärning delas ofta in i två större kategorier, beroende på situationen de används i:
- Väglett lärande (supervised learning): Innebär lärande av mappning mellan indata och annoterad utdata (eng. Labeled data) i syfte att sedan förutspå utdata av tidigare osedd indata[4]. För att exemplifiera denna typ av inlärning, föreställ dig en maskininlärningsmodell avsedd att fungera som ett skräppostfilter, det vill säga modellen är avsedd att känna igen och filtrera bort skräppost. Om denna modell tränas genom väglett lärande består träningsdatan av en mängd e-postmeddelanden, där varje e-postmeddelande är markerad som antingen "skräppost" eller "inte skräppost". Förutsatt att modellen tränas på rätt sätt med representativ data så kommer modellen lära sig att förutspå om ett tidigare osett e-postmeddelande bör markeras som "skräppost" eller inte [5] .
- Icke-väglett lärande (unsupervised learning): I detta fall finns det ingen utdata, och datorn får således lära sig underliggande strukturer endast via indatan (och inte genom någon given förväntad utdata).
Till dessa två kategorier läggs ibland en tredje kategori:
- Förstärkningsinlärning (reinforcement learning): Denna typ av inlärning bygger på att en agent som befinner sig i en miljö och kan utföra olika handlingar lär sig att agera optimalt genom att tilldelas belöningar för olika handlingar och deras konsekvenser. Agentens mål är att maximera en (viktad) summa av erhållna belöningar, vilket åstadkoms genom att denna väljer handlingar dels för att öka kunskapen om vilka handlingar som medför vilka belöningar (till kostnaden av att de direkta belöningarna kan bli små), och dels genom att utnyttja tidigare erfarenheter av vilka handlingar som ger stora belöningar. Denna avvägning i valet av agerande brukar kallas utforskande-utnyttjande-avvägningen.[6]
En alternativ kategorisering av maskininlärning får man beroende på vilket format utdatan har:
- Inom klassificering består utdatan av en eller flera klasser. Ett exempel på klassificering är spamfiltrering, där indata är e-post-meddelanden och utdatan är klasserna "spam" och "inte spam". Detta är typiskt för väglett lärande.
- Inom regression tar utdatan kontinuerliga värden. Ett exempel på regression är att förutsäga vädret, där indata kan vara dagens väder och utdata temperaturen imorgon. Detta är typiskt för icke-väglett lärande.
- Inom klustring är syftet att indata skall delas upp i flera grupper. En skillnad mot klassificering är att det inte är klart vilka grupper som finns i förväg. Detta är typiskt för icke-väglett lärande.
- Dimensionalitetsreduktion förenklar indata genom att överföra den till en rymd med lägre dimensionalitet, exempelvis genom principalkomponentanalys.
Teori
[redigera | redigera wikitext]Ett kärnmål för en elev är att generalisera från sin erfarenhet.[7] Generalisering i detta sammanhang är en inlärningsmaskins förmåga att utföra exakta nya, osynliga exempel/uppgifter efter att ha upplevt en inlärningsuppsättning. Träningsexemplen kommer från en allmänt okänd sannolikhetsfördelning (anses vara representativ för händelseutrymmet) och eleven måste bygga en allmän modell om detta utrymme som gör att den kan producera tillräckligt exakta förutsägelser i nya fall.[8]
Tillämpningar
[redigera | redigera wikitext]Maskininlärning används bland annat inom robotik, programvaruutveckling, självkörande bilar, medicinsk diagnostik och strömningstjänster på internet.
Mjukvara
[redigera | redigera wikitext]Många maskininlärningsalgoritmer finns implementerade i öppen programvara.
Öppen programvara
[redigera | redigera wikitext]- scikit-learn
- TensorFlow
- PyTorch
- Weka
- GNU Octave
Se även
[redigera | redigera wikitext]Referenser
[redigera | redigera wikitext]- ^ Mitchell, T. (1997). Machine Learning. McGraw Hill. sid. 2. ISBN 0-07-042807-7
- ^ ”Vad är Skillnaden Mellan AI och Maskininlärning?”. tolio.se. https://tolio.se/blog/vad-ar-skillnaden-mellan-ai-och-maskininlarning. Läst 19 mars 2024.
- ^ ”Artificiell intelligens kontra maskininlärning | Microsoft Azure”. azure.microsoft.com. https://azure.microsoft.com/sv-se/resources/cloud-computing-dictionary/artificial-intelligence-vs-machine-learning. Läst 19 mars 2024.
- ^ Cunningham, Pádraig (2008). Matthieu Cord, Pádraig Cunningham. red (på engelska). Supervised Learning. Springer Berlin Heidelberg. sid. 21–49. doi: . ISBN 978-3-540-75170-0. http://link.springer.com/10.1007/978-3-540-75171-7_2. Läst 23 oktober 2022
- ^ Cormen, Thomas H. (2022). Introduction to algorithms (Fourth edition). ISBN 978-0-262-04630-5. OCLC 1264174621. https://www.worldcat.org/oclc/1264174621. Läst 23 oktober 2022
- ^ ”What is Reinforcement Learning? - Reinforcement Learning Explained - AWS” (på amerikansk engelska). Amazon Web Services, Inc.. https://aws.amazon.com/what-is/reinforcement-learning/. Läst 19 mars 2024.
- ^ Bishop, C. M. (2006), Pattern Recognition and Machine Learning, Springer, ISBN 978-0-387-31073-2
- ^ Andrew Trask (2019). Grokking Deep Learning. Manning. ISBN 978-1617293702. https://python.engineering/grokking-deep-learning/ Arkiverad 14 september 2021 hämtat från the Wayback Machine.
Externa länkar
[redigera | redigera wikitext]
|