Expert · Oplossingen · 41. Van data naar model: regressie StemExpert · Brecht Corbeel · schoolium.me
SE
StemExpert
E41. Van data naar model: regressie — oplossingen
EExpert · deel E9 · Data science en AI
Oplossingen · hoofdstuk 41Van data naar model: regressie
Een energievoorspelling vraagt een eerlijke toekomsttest en een verklaring voor haar fouten
Uitgewerkte oplossingen bij de 9 opdrachten van het werkboek. Voor de leerkracht, en voor wie zichzelf wil verbeteren nadat hij het eerst zelf probeerde.
Een plan gebruikt alleen informatie die bij het besluit al bekend kan zijn.
Voor de leerkrachtDeze pagina bevat de antwoorden. Druk het werkboek af zonder deze pagina.
Oefenen
Oefenen
één stap, direct toepassen
41.1
Een lijn handmatig fitten
Oefenen6Rekenen25 min
Data: (0,2), (1,3), (2,5).
a
Bereken helling en intercept, voorspellingen en residusom.
x̄=1 en ȳ=10/3. Kruissom=3, noemer=2, dus b=1,5 en a=11/6. Voorspellingen: 11/6, 10/3, 29/6. Residuen: 1/6, −1/3, 1/6. Hun som is nul en SSE=1/6.
41.2
Feature of toekomstlek?
Oefenen6Analyseren25 min
Invoer voor morgen: gisterenenergie, morgen gemeten lichtsom, weerprognose en geplande lampuren.
a
Beoordeel beschikbaarheid en welke versie je moet bewaren.
Gisterenenergie is bekend. Morgen gemeten lichtsom lekt de toekomst. De weerprognose is bruikbaar als je de bij het besluit beschikbare versie bewaart. Geplande lampuren zijn bekend, maar moeten apart van later uitgevoerde uren worden gelogd. Een achteraf verbeterde prognose kan ook lekken.
41.3
Foutmaten
Oefenen6Rekenen25 min
Residuen: 2, −2, 0 kWh.
a
Bereken MAE, RMSE en bias. Wat verbergt de bias?
MAE=4/3=1,3333 kWh; RMSE=√(8/3)=1,6330 kWh; bias=0. Tegengestelde fouten heffen elkaar in de bias op, maar blijven voor elke dag relevant.
Toepassen
Toepassen
meerdere stappen, in een context
41.4
Een matrix bouwen
Toepassen7Programmeren25 min
Koufeatures [0,2,5], lampuren [8,6,9], energie [9,10,12] kWh.
a
Schrijf designmatrix en NumPy-fit. Waarom bewijst een perfecte fit geen generalisatie?
X=np.column_stack((np.ones(3),[0,2,5],[8,6,9])); b=np.linalg.lstsq(X,[9,10,12],rcond=None)[0]. De berekende coëfficiënten zijn [8,333333; 0,583333; 0,083333]. Voorspellingen zijn [9;10;12], residuen nul op rekenafronding na. Bij volle rang treffen drie parameters drie waarnemingen exact. Er zijn geen resterende residuvrijheidsgraden en nog geen nieuwe dagen getest. Reserveer onafhankelijke data en vergelijk een basislijn.
41.5
Een scaler zonder lek
Toepassen7Analyseren25 min
Je standaardiseert alle 180 dagen en splitst daarna 110/35/35.
a
Benoem het lek en geef de juiste workflow voor folds en eindtest.
De scaler bevat informatie uit latere dagen. Splits eerst, leer scaler op training en pas hem onveranderd toe op validatie en test. In een fold wordt hij opnieuw uitsluitend op die trainingsfold geleerd. Na vastgelegde modelkeuze mag hertraining op training plus validatie, met nieuw manifest. De eindtest blijft buiten alle keuzes.
41.6
Residustructuur
Toepassen7Onderzoeken40 min
Koude dagen hebben opeenvolgende positieve residuen; warme dagen willekeurige residuen.
a
Geef twee ontbrekende factoren en een proef om ze te onderscheiden. Waarom helpt alleen λ verhogen mogelijk niet?
COP-daling en bufferontlading zijn twee kandidaten; ook defrost kan bijdragen. Log thermisch en elektrisch vermogen, buiten en buffer, en vergelijk regimes in een aparte proef. λ begrenst coëfficiënten, maar voegt geen ontbrekende fysica of toestand toe. Een zwaardere straf kan de bias juist vergroten.
Uitdagen
Uitdagen
transfer, open problemen, leerlijnen combineren
41.7
Rolling-originpipeline
Uitdagen9Programmeren60 min
De predictor gebruikt maximaal dertig dagen verleden.
a
Ontwerp folds, preprocessing, modelkeuze en basislijn zonder toekomstlek.
Lagfeatures gebruiken uitsluitend bekend verleden. Training groeit en validatie ligt later. Leer imputatie en scaler per trainingsfold en kies λ daarbinnen. Vergelijk op het volgende blok met een laatste-zeven-dagenbasislijn; rapporteer RMSE, MAE en ernstige onderschatting per koud/donker regime. Houd de eindtest apart.
b
Wanneer is een tussenruimte nodig? Welke data mogen bij actualisering worden gebruikt?
Een tussenruimte voorkomt overlap als feature- of doelvensters over grenzen heen informatie bevatten. Een causaal verledenvenster voor een validatiedag mag werkelijk bekend verleden benutten. Trainingsdoelen mogen geen toekomstige toetshorizon overlappen. Actualiseer uitsluitend met afgesloten geldige dagen.
Zo wordt dit beoordeeld
tijd
Horizon van features en doelen verklaard.
pipeline
Preprocessing en selectie per fold.
bewijs
Basislijn en regimefouten apart.
41.8
Energievoorspeller voor Habitat
Uitdagen9Habitat75 min
Om 20:00 UTC+1 reserveert het station energie voor morgen.
a
Geef doel, invoer, basislijn, validatie en acceptatiebesluit.
Voorspel dagverbruik naast onbegrensde vraag. Gebruik gearchiveerde weerprognose, lampplanning en bekende SoC, buffer en bewoning. Vergelijk het fysische model en recente vergelijkbare dagen met temporele toetsing. Stel bijvoorbeeld ≥20% RMSE-verbetering tegenover de basislijn en geen verslechtering van ernstige onderschattingen voor als proefcriteria. Lokale PID, noodstop en vermogensgrenzen blijven onafhankelijk.
b
Hoe log je beheeracties om een later verkeerd verband te voorkomen?
Bewaar voorspelling, inputversie, aangeboden en uitgevoerde setpoints, afschakeling, comfort en beschikbare en afgeknepen bronenergie. Markeer beleidswijzigingen als een nieuw regime. Test een nieuwe predictor eerst in schaduwmodus.
Zo wordt dit beoordeeld
beschikbaarheid
Invoer bekend op het planmoment.
toetsing
Tijdtest, basislijn en staartfout.
beheer
Besluit, grens en log traceerbaar.
41.9
Regularisatie tegenspreken
Uitdagen9Argumenteren25 min
Een collega zegt dat een hoge λ overfitting en extrapolatie oplost.
a
Verdedig ridge en benoem twee grenzen met een stationsvoorbeeld.
Ridge kan gevoeligheid voor ruis en collineariteit verlagen door coëfficiënten te begrenzen. Het voegt geen ontbrekende COP-afhankelijkheid toe en valideert geen koudegolf buiten het trainingsdomein. Zonder standaardisatie worden features bovendien ongelijk bestraft. Een kleiner verschil tussen training en test is slechts één aanwijzing, geen bewijs dat elke toepassing geschikt is.