Nej, selvfølgelig er jeg ikke seriøs. Der skal være en grænse for, i hvor høj grad det er muligt at forenkle et fag. Men for de første stadier, at forstå grundlæggende begreber og hurtigt "indtræde" i emnet, kan det være acceptabelt. Vi vil diskutere, hvordan man korrekt navngiver dette materiale (muligheder: "Maskinlæring til dummies", "Dataanalyse fra bleer", "Algorithmer for de små") til sidst.
Til sagen. Skrev flere applikationsprogrammer i MS Excel til visualisering og visuel repræsentation af processer, der forekommer i forskellige maskinlæringsmetoder ved analyse af data. At se er trods alt at tro, som bærerne af kulturen siger, som udviklede de fleste af disse metoder (i øvrigt ikke dem alle. Den mest kraftfulde "støtte vektormaskine", eller SVM, støtte vektormaskine er opfindelsen af vor landsmand Vladimir Vapnik, Moscow Institute of Management. 1963 i øvrigt! Nu underviser og arbejder han imidlertid i USA).
1. K-betyder klyngedannelse
Problemer af denne type refererer til "uovervåget læring", når vi skal opdele de indledende data i et bestemt antal kategorier, der er kendt på forhånd, men vi ikke har et antal "korrekte svar"; vi skal udtrække dem fra selve dataene . Det grundlæggende klassiske problem med at finde underarter af irisblomster (Ronald Fisher, 1936!), som betragtes som det første tegn på dette vidensfelt, er netop af denne art.
Metoden er ret simpel. Vi har et sæt af objekter repræsenteret som vektorer (sæt af N tal). Hos iris er disse sæt af 4 numre, der karakteriserer blomsten: længden og bredden af henholdsvis periantens ydre og indre lapper (
Dernæst vælges klyngecentre tilfældigt (eller ikke tilfældigt, se nedenfor), og afstandene fra hvert objekt til klyngecentrene beregnes. Hvert objekt ved et givet iterationstrin er markeret som tilhørende det nærmeste center. Derefter overføres midten af hver klynge til det aritmetiske middelværdi af koordinaterne for dets medlemmer (i analogi med fysik kaldes det også "massecentrum"), og proceduren gentages.
Processen konvergerer ret hurtigt. På billeder i to dimensioner ser det sådan ud:
1. Indledende tilfældig fordeling af punkter på planet og antallet af klynger
2. Angivelse af klyngecentre og tildeling af punkter til deres klynger
3. Overførsel af koordinaterne for klyngecentrene, genberegning af tilhørsforholdet af punkterne, indtil centrene stabiliserer sig. Banen for klyngecentrets bevægelse til sin endelige position er synlig.
Du kan til enhver tid indstille nye klyngecentre (uden at generere en ny fordeling af point!) og se, at partitioneringsprocessen ikke altid er entydig. Matematisk betyder det, at for den funktion, der optimeres (summen af de kvadrerede afstande fra punkter til centrene af deres klynger), finder vi ikke et globalt, men et lokalt minimum. Dette problem kan løses enten ved et ikke-tilfældigt valg af indledende klyngecentre, eller ved at opregne mulige centre (nogle gange er det fordelagtigt at placere dem nøjagtigt på et af punkterne, så er der i det mindste en garanti for, at vi ikke bliver tomme klynger). Under alle omstændigheder har en finit mængde altid et infimum.
Beskrivelse af metoden på Wikipedia -
2. Approksimation ved polynomier og dataopdeling. Omskoling
Bemærkelsesværdig videnskabsmand og popularizer af datavidenskab K.V. Vorontsov beskriver kort maskinlæringsmetoder som "videnskaben om at tegne kurver gennem punkter." I dette eksempel finder vi et mønster i dataene ved hjælp af mindste kvadraters metode.
Teknikken til at opdele kildedataene i "træning" og "kontrol" er vist, samt et sådant fænomen som genoptræning eller "gentilpasning" til dataene. Med korrekt tilnærmelse vil vi have en vis fejl på træningsdataene og en lidt større fejl på kontroldataene. Hvis det er forkert, resulterer det i præcis justering af træningsdata og en stor fejl på testdata.
(Det er et velkendt faktum, at man gennem N punkter kan tegne en enkelt kurve af N-1. grad, og denne metode giver i det generelle tilfælde ikke det ønskede resultat.
1. Indstil startfordelingen
2. Vi deler punkterne op i "træning" og "kontrol" i forholdet 70 til 30.
3. Vi tegner den tilnærmede kurve langs træningspunkterne, vi ser fejlen den giver på kontroldataene
4. Vi tegner en nøjagtig kurve gennem træningspunkterne, og vi ser en monstrøs fejl på kontroldataene (og nul på træningsdataene, men hvad er meningen?).
Vist er selvfølgelig den enkleste mulighed med en enkelt opdeling i "træning" og "kontrol" undergrupper; i det generelle tilfælde gøres dette mange gange for den bedste justering af koefficienterne.
3. Gradientnedstigning og fejldynamik
Der vil være et 4-dimensionelt tilfælde og lineær regression. Lineære regressionskoefficienter vil blive bestemt trin for trin ved hjælp af gradient descent-metoden, indledningsvis er alle koefficienter nul. En separat graf viser dynamikken i fejlreduktion, da koefficienterne justeres mere og mere præcist. Det er muligt at se alle fire 2-dimensionelle projektioner.
Hvis du indstiller gradientnedstigningstrinnet for stort, kan du se, at vi hver gang springer minimumet over og kommer frem til resultatet i et større antal trin, selvom vi i sidste ende stadig kommer frem (medmindre vi også forsinker nedstigningstrinnet meget - så vil algoritmen gå "i spar"). Og grafen for fejlen afhængigt af iterationstrinnet vil ikke være glat, men "ryk".
1. Generer data, indstil gradientnedstigningstrinnet
2. Med det korrekte valg af gradientnedstigningstrinnet når vi jævnt og hurtigt minimumet
3. Hvis gradientnedstigningstrinnet er forkert valgt, overskrider vi maksimum, fejlgrafen er "ryk", konvergens tager et større antal trin
и
4. Hvis vi vælger gradientnedstigningstrinnet helt forkert, bevæger vi os væk fra minimum
(For at gengive processen ved hjælp af gradient-nedstigningstrinværdierne vist på billederne, skal du markere boksen "referencedata").
Er en sådan forenkling og metode til at præsentere materialet acceptabel ifølge det respekterede samfund? Er det værd at oversætte artiklen til engelsk?
Kilde: www.habr.com