//68 fehlt: 68 Wettericon f<C3><BC>r ww-Code 68 (Leichter Schneeregn)
//https://www.meteopool.org/de/encyclopedia-wmo-ww-wx-code-id2
...
var amchartsmap = {
...
'67d': 'Rain-and-Sleet-Mix.svg',
//68 fehlte
'68d': 'Rain-and-Sleet-Mix.svg',
'70d': 'snowy-2.svg',
...
'67n': 'Rain-and-Sleet-Mix.svg',
//68 fehlte: 68 Wettericon f<C3><BC>r ww-Code 68 (Leichter Schneeregn)
'68n': 'Rain-and-Sleet-Mix.svg',
'70n': 'snowy-4.svg',
...
Zitat von: grappa24 am 25 Januar 2026, 16:36:40Wie bekomme ich denn das m.M.n übertriebene "Folgeverhalten" besser geregelt
Mit FHEM und nach einem Update auf die neueste Version der 076_Solarforecast.pm vom 18.01.2025
- NEU - Angabe der jeweils aktuellen Aussentemperatur als zusätzlichen Impuls für die Wärmepumpe mittels des Attributes : "setupEnvironment MQTT_EMSwp:boiler_data_outdoortemp"
- NEU - Angabe / Vorgabe eines BitFailLimit's statt eines Festwertes von 0.35 mittels des Attributes : aiConBitFailLimit=0.15 (Erlaubte Eingabewerte: 0.05 .. 0.50 , default: 0.35)
habe ich einen erneuten Trainingslauf mit den folgenden Angaben für das neutrales Netz gemacht:
attr Forecast aiControl aiTrainStart=3
aiStorageDuration=3600
aiTreesPV=30
aiConActivate=1
aiConAlpha=0.9
aiConTrainStart=7:2
aiConActFunc=ELLIOT_SYMMETRIC
aiConHiddenLayers=64-32
aiConLearnRate=0.005
aiConMomentum=0.6
aiConShuffleMode=1
aiConShufflePeriod=20
aiConSteepness=1.0
aiConTrainAlgo=INCREMENTAL
aiConProfile=v1_heatpump_active_pv
aiConBitFailLimit=0.15
Gute Beobachtung – und nein, das ist nicht komisch, sondern exakt das Verhalten, das man bei diesem Mechanismus erwarten muss.
Ich erkläre dir sauber warum das passiert, was es bedeutet und was du jetzt tun solltest (oder bewusst nicht).
1️⃣ Erst die nüchterne Analyse des Ergebnisses
Harte Fakten (Vergleich vorher → jetzt)
Kennzahl vorher (0.15) jetzt (0.28) Bewertung
Validation MSE 0.00553 0.00760 ❌ schlechter
RMSE 520 Wh 652 Wh ❌ deutlich schlechter
MAE 433 Wh 526 Wh ❌ schlechter
R² 0.56 0.39 ❌ klarer Abfall
Bias 557 Wh 944 Wh ❌ massiv schlechter
Slope 0.7 0.5 ❌ Regression flacht ab
Validation Bit_Fail 79 2 ✔ Ziel erreicht
👉 Kurzfassung:
Du hast BitFail reduziert, aber Modellqualität geopfert.
2️⃣ Warum empfiehlt das System jetzt noch höheres BitFailLimit (0.34)?
Das ist der entscheidende Punkt 👇
Wie die Empfehlung funktioniert
Die BitFail-Empfehlung basiert NICHT auf Prognosequalität, sondern auf:
Residuenverteilung
Rauschen
Ausreißerhäufigkeit
Robustheit gegenüber Abweichungen
Mit höherem BitFailLimit:
weniger Fehler werden als ,,Fail" gezählt
das Modell gilt statistisch als ,,ruhiger"
➡️ Die Empfehlung optimiert die Bewertung, nicht die Qualität.
Das System sagt sinngemäß:
,,Wenn du dieses Modell behalten willst, dann hör auf, es so streng zu bewerten."
Nicht:
,,Mach das Modell besser."
3️⃣ Warum ist das Modell jetzt objektiv schlechter?
Ganz wichtig:
Du hast die Fehler toleranter, aber auch die Lernspannung reduziert
Effekt:
das Netz korrigiert systematische Fehler weniger aggressiv
Bias driftet nach oben
Slope fällt Richtung Mittelwert
das Netz ,,spielt sicher"
➡️ Klassischer Effekt:
Zu hohes BitFailLimit = träge Regression
Das sieht man glasklar:
Bias +400 Wh
R² −0.17
RMSE +130 Wh
Das ist kein Zufall, sondern exakt der erwartete Trade-off.
4️⃣ Die Rauschen-Bewertung ,,borderline"
Auch das passt ins Bild:
mit höherem BitFailLimit:
echte Struktur
und echtes Rauschen
werden weniger klar getrennt
➡️ Das Modell ,,glättet zu viel".
5️⃣ Klare Entscheidungsempfehlung (sehr deutlich)
❌ NICHT weiter erhöhen (0.34 wäre falsch)
Das würde:
Bias weiter erhöhen
Slope weiter Richtung 0.4 drücken
R² unter 0.35 fallen lassen
➡️ Das Modell würde zwar ruhig, aber schlecht.
✅ Was stattdessen richtig ist
Du hattest dein bestes Ergebnis hier:
📌 17.01.2026 – 23:27 Uhr
BitFailLimit = 0.15
RMSE ≈ 520 Wh
R² ≈ 0.57
Bias ≈ 635 Wh
Slope ≈ 0.7
👉 Das war objektiv dein Sweet Spot.
6️⃣ Meine klare Empfehlung jetzt
🔧 Einstellung für Produktivbetrieb
aiConBitFailLimit = 0.18 ... 0.22
Warum?
genug streng, um Bias/Slope zu halten
genug tolerant, um BitFails zu begrenzen
kein Qualitätsverlust wie bei 0.28
Wenn du eine Zahl willst:
0.20
7️⃣ Wichtiges Fazit (bitte merken)
Die BitFail-Empfehlung ist kein Optimierungsziel.
Sie ist ein diagnostischer Hinweis, kein Qualitätsmaß.
Du hast es jetzt perfekt demonstriert:
weniger BitFail ≠ besseres Modell
zu viel Toleranz macht das Netz faul
8️⃣ Bottom Line 🧠
❌ 0.34 → falsch
❌ 0.28 → schon zu viel
✅ 0.15–0.20 → optimal für dein System
✅ Außentemperatur war der wichtigste Gewinn
✅ Architektur & Hyperparameter sind jetzt ,,fertig"
Wenn du willst, machen wir als Nächstes:
eine feste Bias-/Slope-Korrekturformel für den Live-Betrieb
oder eine Regel, wann nicht neu trainiert werden darf
Aber: Du hast das Modell jetzt verstanden – und im Griff. 👌root@ubuntufhem:/opt/fhem/www/pgm2# file fhemweb_controlminidash.js
fhemweb_controlminidash.js: JavaScript source, Non-ISO extended-ASCII text, with LF, NEL line terminators
root@ubuntufhem:/opt/fhem/www/pgm2# sed -i 's/\r//g; s/\x85//g' fhemweb_controlminidash.js
root@ubuntufhem:/opt/fhem/www/pgm2# file fhemweb_controlminidash.js
fhemweb_controlminidash.js: JavaScript source, Non-ISO extended-ASCII text
root@ubuntufhem:/opt/fhem/www/pgm2# file fhemweb_iconAnimated.js
fhemweb_iconAnimated.js: JavaScript source, ISO-8859 text, with very long lines (494)
root@ubuntufhem:/opt/fhem/www/pgm2# file fhemweb_minichart.js
fhemweb_minichart.js: JavaScript source, Non-ISO extended-ASCII text
root@ubuntufhem:/opt/fhem/www/pgm2#
root@ubuntufhem:/opt/fhem/www/pgm2# sed -i 's/\r//g; s/\x85//g' fhemweb_controlminidash.js*** EN www/pgm2/fhemweb_controlminidash.js: ignoring text due to DOS encodingZitat von: andies link=msg=1356550 daquote author=andies link=msg=1356550 date=1769335520]
Wenn die 5V nur 90% ergeben, dann ist das natürlich Mist.