Hjem Lyd Hvordan kan ingeniører evaluere træningssæt og testsæt for at få øje på eventuel overfitting i maskinlæring?

Hvordan kan ingeniører evaluere træningssæt og testsæt for at få øje på eventuel overfitting i maskinlæring?

Anonim

Q:

Hvordan kan ingeniører evaluere træningssæt og testsæt for at få øje på eventuel overfitting i maskinlæring?

EN:

For at forstå, hvordan dette gøres, er det nødvendigt at have et grundlæggende greb om roller i forskellige datasæt i et typisk maskinlæringsprojekt. Træningssættet er oprettet for at give teknologien en referenceramme - en datagrundretning, som programmet bruger til at træffe forudsigelige og sandsynlige beslutninger. Testsættet er det sted, hvor du tester maskinen ud på data.

Overfitting er et syndrom i maskinlæring, hvor modellen ikke helt passer til dataene eller formålet.

Gratis download: Machine Learning og Why It Matters

Et af de overordnede befalinger ved maskinlæring er, at træningsdata og testdata skal være separate datasæt. Der er en ret bred enighed om dette, i det mindste i mange applikationer, på grund af nogle specifikke problemer med at bruge det samme sæt, som du brugte til træning til at teste et maskinindlæringsprogram.

Når et maskinuddannelsesprogram anvender et træningssæt, som i det væsentlige kan kaldes et sæt input, arbejder det uddannelsessættet for at træffe beslutninger om forudsigelige resultater. En meget grundlæggende måde at tænke over det er, at træningssættet er "mad" til den intellektuelle computingproces.

Når det samme sæt nu bruges til test, kan maskinen ofte give fremragende resultater. Det er fordi det allerede har set disse data før. Men hele målet med maskinlæring i mange tilfælde er at give resultater om data, der ikke er set før. Almindelige maskinuddannelsesprogrammer er lavet til at fungere på forskellige datasæt. Med andre ord, princippet om maskinlæring er opdagelse, og du får normalt ikke så meget af det ved at bruge et indledende træningssæt til testformål.

Ved evaluering af træningssæt og testsæt for mulig overfitting kan ingeniører vurdere resultaterne og finde ud af, hvorfor et program måske gør det anderledes på de to sammenlignende resultats sammenligningsresultater, eller i nogle tilfælde hvordan maskinen måske klarer sig for godt på selve træningsdataene .

I en kapabel beskrivelse af nogle af disse problemer i maskinlæring i et stykke fra 2014, beskriver Jason Brownlee på Machine Learning Mastery overfitting på denne måde:

"En model, der er valgt for dens nøjagtighed på træningsdatasættet snarere end dens nøjagtighed på et uset testdatasæt, har meget sandsynligvis lavere nøjagtighed på et uset testdatasæt, " skriver Brownlee. "Årsagen er, at modellen ikke er så generaliseret. Den har specaliseret til strukturen i træningsdatasættet (kursiv tilføjet). Dette kaldes overfitting, og det er mere lumsk, end du tror."

I lægevilkår kan man sige, at programmet ved at specialisere sig til træningsdatasættet bliver for stift. Det er en anden metaforisk måde at se på, hvorfor et maskinuddannelsesprogram ikke optimalt betjenes ved at bruge træningssættet til testsættet. Det er også en god måde at nærme sig evaluering af disse to forskellige sæt, fordi resultaterne viser ingeniører meget om, hvordan programmet fungerer. Du ønsker et mindre mellemrum mellem nøjagtighed for begge modeller. Du vil sikre dig, at systemet ikke er overfyldt eller "præcisionssikret" til et bestemt datasæt, men det er mere generelt og i stand til at vokse og udvikle sig på kommando.

Hvordan kan ingeniører evaluere træningssæt og testsæt for at få øje på eventuel overfitting i maskinlæring?