Solar Forecast ML – R² und RMSE erklärt
Was sind diese Zahlen überhaupt?
Im Dashboard und in den Logs tauchen regelmäßig zwei Kennzahlen auf:
2026-03-01 21:53:26.509 INFO Training complete: active=tiny_lstm, R²=0.731, RMSE=0.083kWh
2026-03-01 21:46:10.597 INFO TinyRidge trained: R²=0.961, RMSE=0.0389
2026-03-01 21:46:07.776 INFO Weather MLP trained: R²=0.181, RMSE=0.3298
Beide Werte sagen etwas über die Qualität des KI-Modells aus – aber aus unterschiedlichen Blickwinkeln. Keiner der beiden Werte ist für sich allein ausreichend – erst zusammen geben sie ein vollständiges Bild.
R² – Das Bestimmtheitsmaß
Was bedeutet R²?
R² (gesprochen: “R-Quadrat”) misst, wie gut das Modell die Muster in den Daten erkannt hat. Es ist eine Zahl zwischen 0 und 1 (manchmal auch negativ bei sehr schlechten Modellen).
Einfach gesagt: R² beantwortet die Frage “Wie viel von dem, was die Solaranlage produziert, kann das Modell erklären?”
| R²-Wert | Bedeutung | Analogie |
|---|---|---|
| 1,00 | Perfekt – Modell erklärt alles | Nicht realistisch in der Praxis |
| 0,90 – 0,99 | Ausgezeichnet | Modell kennt die Anlage sehr gut |
| 0,70 – 0,89 | Gut | Solide Grundlage, wächst mit Daten |
| 0,50 – 0,69 | Akzeptabel | Modell lernt noch |
| < 0,50 | Schwach | Zu wenig Daten oder zu viel Rauschen |
Ein Beispiel aus dem echten Log
Ridge: R²=0.961 → Ausgezeichnet
LSTM: R²=0.731 → Gut
Weather MLP: R²=0.181 → Schwach (noch zu wenig Daten)
Das Ridge-Modell hat einen R² von 0,961 – es erklärt 96,1% der Produktionsvarianz. Das klingt besser als das LSTM mit 0,731. Trotzdem wird das LSTM als aktives Modell gewählt:
2026-03-01 21:53:26.475 INFO Active model: LSTM (455 samples)
Warum? Ridge ist ein lineares Modell – es ist sehr gut darin, bekannte Muster zu reproduzieren, aber es kann keine komplexen zeitlichen Zusammenhänge lernen. Das LSTM hingegen versteht Sequenzen und Abhängigkeiten – zum Beispiel, dass auf drei bewölkte Morgenstunden oft eine aufklärende Mittagsstunde folgt. Diese Fähigkeit macht es in der Praxis überlegen, auch wenn R² etwas niedriger ist.
Was ist ein realistischer Ziel-R²?
Für eine Solarprognose mit echten Wetterdaten ist ein R² von 0,70 – 0,85 für das LSTM ein sehr guter, erreichbarer Zielbereich. R² > 0,90 beim LSTM wäre ideal, braucht aber viele Datenmonate. Das Ridge-Modell erreicht höhere R²-Werte schneller, weil es einfachere Muster lernt.
RMSE – Der durchschnittliche Fehler in kWh
Was bedeutet RMSE?
RMSE (Root Mean Square Error) ist der durchschnittliche Vorhersagefehler – angegeben in der gleichen Einheit wie die Prognose, also Kilowattstunden (kWh).
RMSE beantwortet die Frage: “Um wie viel kWh liegt das Modell im Schnitt daneben?”
Das macht RMSE viel greifbarer als R², weil man es direkt in die eigene Anlage übersetzen kann.
LSTM: RMSE=0.083 kWh → 83 Wh durchschnittlicher Fehler pro Stunde
Ridge: RMSE=0.039 kWh → 39 Wh durchschnittlicher Fehler pro Stunde
Weather MLP: RMSE=0.330 kWh → 330 Wh Fehler (zu ungenau für aktiven Einsatz)
Was bedeutet 0,083 kWh konkret?
Bei einer Anlage mit 2,29 kWp wie in diesem Beispiel:
- Maximale Stundenleistung: ~2,0 kWh (bei idealem Sonnentag)
- RMSE von 0,083 kWh = ~4% des maximalen Stundenertrags
- Auf einen typischen Produktionstag mit 6,0 kWh: ~1,4% Gesamtabweichung
Das ist eine sehr gute Prognosequalität für stündliche Werte.
Warum ist RMSE höher als der “gefühlte” Fehler?
RMSE bestraft große Fehler überproportional – ein einzelner sehr schlechter Stundenwert (z.B. bei unerwarteten Wolken) zieht den RMSE stärker nach oben als zehn kleine Fehler. Das ist gewollt: Für Automationen (Batterieladen, Einspeisung) sind große Ausreißer problematischer als viele kleine.
R² und RMSE zusammen lesen
Beide Werte erzählen zusammen die vollständige Geschichte:
| R² | RMSE | Bedeutung |
|---|---|---|
| Hoch | Niedrig | Idealer Zustand – Modell versteht Muster und macht kleine Fehler |
| Hoch | Hoch | Modell kennt relative Muster, macht aber große absolute Fehler |
| Niedrig | Niedrig | Fehler sind klein, aber zufällig – Modell hat keine echten Muster gelernt |
| Niedrig | Hoch | Modell funktioniert schlecht – zu wenig Daten oder falsches Modell |
Im konkreten Fall:
LSTM: R²=0.731, RMSE=0.083 kWh → Gut: lernt Muster, kleine absolute Fehler
Ridge: R²=0.961, RMSE=0.039 kWh → Ausgezeichnet: sehr stabil auf bekannten Mustern
Wie entwickeln sich R² und RMSE über die Zeit?
Das ist der entscheidende Punkt, wir hatten ja schon oft das Thema " Samples": Einfache Antwort: Beide Werte verbessern sich automatisch mit jedem weiteren Datentag.
Heute (59 Tage Daten): LSTM R²=0.731, RMSE=0.083 kWh
Nach 3 Monaten (~90 Tage): erwartet R²≈0.80, RMSE≈0.065 kWh
Nach 6 Monaten (~180 Tage): erwartet R²≈0.85, RMSE≈0.050 kWh
Nach 1 Jahr (alle Jahreszeiten): erwartet R²≈0.88+, RMSE≈0.040 kWh
Besonders wichtig: Nach dem ersten vollständigen Jahr hat das Modell alle vier Jahreszeiten kennengelernt. Dann stabilisieren sich die Werte auf einem hohen Niveau, weil für jeden Wettertyp und jede Sonnenstands-Kombination ausreichend Trainingsdaten vorhanden sind.
ABER ACHTUNG: Weather MLP ist ein Sonderfall
2026-03-01 06:10:17.790 DEBUG Weather MLP quality insufficient: R²=0.244 < 0.500, using static factors
Das Weather MLP hat aktuell R²=0,244 – zu niedrig für den aktiven Einsatz. Der Schwellenwert liegt bei R²≥0,5. Darunter verwendet das System automatisch die bewährten statischen Korrekturfaktoren. Das ist kein Problem (Nein @RobertoCravallo du hast nichts Kaputt gemacht) , sondern ein Sicherheitsmechanismus: Das Modell übernimmt erst dann Verantwortung, wenn es zuverlässig genug ist.
Was sollte mich beunruhigen?
In der Praxis gibt es nur wenige Situationen, die wirklich Aufmerksamkeit verdienen:
Kein Grund zur Sorge:
- LSTM R² zwischen 0,65 – 0,80 in den ersten 3 Monaten → normal, wächst mit Daten
- Weather MLP R² < 0,5 → System nutzt Fallback, alles korrekt
- R² schwankt von Tag zu Tag leicht → normal, Tageswetter beeinflusst das Training
Könnte auf ein Problem hinweisen:
- LSTM R² fällt über mehrere Wochen kontinuierlich unter 0,60 → Drift-Monitor sollte reagieren (bitte die Erklärung zum Drift Monitor lesen!)
- RMSE steigt auf > 0,20 kWh dauerhaft → systematische Fehler in den Wetterdaten prüfen
- Ridge R² fällt unter 0,80 → ungewöhnlich, da Ridge auf bekannten Mustern sehr stabil ist
Fazit
Beide Werte sind Momentaufnahmen – sie zeigen den Zustand nach dem heutigen Training. Morgen, nach einem weiteren Tag Trainingsdaten, werden sie sich (in der Regel) leicht verbessert haben.
Das Wichtigste: Kein Eingriff notwendig. Solar Forecast ML optimiert R² und RMSE jeden Abend automatisch – vollständig lokal, ohne dass Daten das System verlassen.