Erklärung SFML: Drift-Monitor Sensor - was ist das?

Ich kann dir nicht sagen ob sich der Wert hier bei mir ändert oder nicht, ich speichere mir dieses Attribut nicht ab. Wenn ich mit Mean Absolute Error anschauen will, dann sehe ich in der Datenbank unter dem MAE nach, der mich gerade interessiert. Was willst DU aber mit einem Globalem MAE anfangen? Warum willst du den wirklich haben? Warum ist er dir so WICHTIG das du ihn nicht einfach überlesen kannst?

Funktioniert deine Vorhersage nicht? Dann beschreibe uns was bei dir nicht funktioniert. Funktioniert bei dir die Vorhersage? Dann ist es doch gut so und du kannst zufrieden sein. Warum muss man jedes klitzekleine Haar in einer Suppe suchen?

Du müßtest doch mittlerweile gemerkt haben, das es dir keiner sicher beantworten kann und für Zara nicht wichtig genug ist.

Das einzige was du erreichst ist, das Zara diese Dinge einfach wieder heraus nimmt - und zwar alles was mit der KI zu tuen hat.

Nachtrag:

Ja, er ist im richtigen Thread, es geht beim MAE um einen Kennwert der KI!

2 „Gefällt mir“

Zuerst: MAE ist ein Begriff aus der Statistik und hat per se erstmal nichts mit KI zu tun.

Nun zu meinem Hintergrund:

Meine Prognosenqualität stagniert obwohl ich seit Oktober-November (reset im Jan oder Feb) dabei bin. Sie ist nicht wirklich besser als dumme Vorhersagen wir Open Meteo Solar Forecast, obwohl hier sehr viel KI-Einsatz und Rechenleistung reingesteckt wird. Deshalb frage ich mich immer wieder, warum die Prognosen nicht besser werden, oder ist das Ende der Fahnenstange erreicht und er bleibt auf dem Niveau dummer Vorhersagen?

Dies kann ich mir bei dem Aufwand nicht vorstellen!

Eine Vermutung ist der Drift welcher seit sehr langer Zeit auf Kritisch war und ich verstehen wollte warum!

Wie ich oben schon schrieb habe ich hier nur Termperatureinflüsse, degradation, meteologische einflüsse und evtl Verschmutzung (Panele liegen auf dem dach bei 45° die sollten sich bei Regen relativ gut säubern).

Andere Driftfaktoren habe ich meiner Meinung nach nicht, und die die ich habe, sollte jeder von uns haben. Deshalb müsste es meiner Meinung nach dann bei jedem auf “kritisch” oder mindestens “warnung” stehen, es sei denn etwas ist evtl in meinem speziellen Fall faul und das versuche ich einfach zu Ergründen.

Ich hoffe das könnt ihr soweit nachvollziehen.

Deshalb habe ich halt die Driftbewertung hinterfragt und das komische Verhalten der MAE Anzeige bemerkt. Dies habe ich mir erlaubt zu hinterfragen! Die Antworten waren leider nur:

  • Lies die Einleitung (Antwort steht da leider nicht)
  • Läuft doch alles, Tage werden halt länger (stimmt, beantwortet nur leider auch nicht die Frage, sind eure Werte auch seit Monaten auf Kritisch und der MAE unverändert, eure Tage werden doch auch länger?)
  • das Thema ist zu komplex für mich und googlen kann ich auch nicht. Deshalb wird die Anzeige nun entfernt

(alles etwas überspitzt dargestellt).

Mir geht es hier nicht darum “Ein Haar in der Suppe zu finden”, oder die immense Arbeit von Zara in irgend einer Wiese schlecht machen zu wollen!

Sonder einfach darum zu verstehen wie was Zusammenspielt und wo evtl bei mir etwas nicht so läuft wie es soll. Dies halte ich nicht für verwerflich.

1 „Gefällt mir“

Also dann gehen wir doch mal deine Ungenauigkeit an.!

Aber bitte in einen extra Thread. :+1:

1 „Gefällt mir“

Okay…

Ich habe hier mal ein Thema gestartet:

und so gut es geht schon mit Infos versorgt.

PS: Mich interessiert zwar immernoch warum der 7d MAE sich nicht ändert aber ich weiß auch, dass einige Dinge immer ein Geheimnis bleiben…

1 „Gefällt mir“

Dann frag das doch einfach :grinning_face:
Bei mir steht der Wert auch seit Anfang an auf kritisch, und solange er mir nicht tiefer als Warnung läuft ist für mich alles in Ordnung und ich mache mir keine weiteren Gedanken.

Auch bei mir steht die von dir genannten Genauigkeitsanzeige auf ca. 75%. Was ich mir anschaue ist: Wieviel wurde Vorhergesagt, was habe ich erzeugt und bilde mir darüber ein Bild wie die Genauigkeit ist.


Wie man hier sieht würde mir OpenMeteo hier immer wieder mal zu viel anzeigen. Da bin ich mit SFML zufriedener.
Auch Stats zeigt mir für die Woche zumeist eine gute Güte an, aber eben nicht immer - das aber liegt eher daran das Petrus plötzlich eine andere Laune hat.

Wie man hier sieht, war die Vorhersage für letzten Sonntag total daneben. Aber ein + von 48% kann ich verschmerzen.

Wir sehen uns im neuen Thread.

1 „Gefällt mir“

Kritisch ist aber ein Wert unter Warnung :wink: und der tiefste wert…

Schreib dir Mal bitte den 7d MAE auf und schau ob sich dieser in 1-2 Wochen verändert hat.

Open Meteo kann man über Dämpfungsfaktoren und DC Efficency (z.b. 0,96) ebenfalls sinnvoll anpassen damit die Werte besser passen. V.a. wenn diese im Mittel immer etwas zu hoch sind.

Ich hab in der Regel, das die anderen zu niedrig an setzten.

Aber ich glaube in meiner Region ists bzgl. deutschen Wetterdienstes eher schwierig.

Ich glaube ganz Deutschland ist diese schwierige Region…:rofl:

Machst du dir jetzt noch deine eigene Mathematik?
OK = 0
Info = 1
Warning = 2
Critical = 3

Aber 3 ist niedriger als 2?

Ja ist klar!

:rofl:

der war gut…

Ich mach mir die Welt wie sie mir gefällt… nur weil du da zahlen hinter schreibst…

hättest ja auch 0, -1, -2, -3 schreiben können. Ich war aber vom Ursprungspost ausgegangen:

und da steht einfach Critical unter Warning - zumindest bei der Orientierung meines Monitors…

Ist mir aber auch egal, scheinbar ist dann ja keine Verwechslung was die Kritikalität angeht bei dir aufgetreten, darauf kam es mir eigentlich nur an.

Critical = höchster Wert - steht ja auch da “Starker Drift" - mehr Trainingsdaten notwendig” - da hat @alteMade vollkommen Recht, dass Critical höher ist als Warning :man_shrugging: nur weil es in einer Auflistung ganz unten steht, heißt es doch nicht das es der niedrigste Wert ist.

Lebendig
Verletzt
Tod

was ist schlimmer? Lebendig weil es oben steht?

@Heatseeker
Ohne es abwertend oder negativ zu meinen, aber was genau ist Dein Problem, was meinst Du funktioinert nicht und woran machst Du es fest.. Ich habe wirklich versucht dem zu Folgen, aber das ist so ein hin und her das ich ehrlich gesagt den Überblick verloren haben. Kannst Du bitte mal in kurzen und knappen Sätzen zusammenfügen worum es Dir eigentlich geht / was Du denkst funktioinert nicht?

Hi Tom,

ich glaube leider auch, dass das Wesentliche hier immer untergeht, deshalb kein Problem wenn du nachfragst!

Also der Hauptgrund für meine basiert darauf, dass meine Vorhersagen nicht besser werden (siehe anderen Thread der leider auch schon gekapert wird).

Deshalb hatte ich anfangs die Drift Erkennung im Verdacht, dass da was schief läuft, einfach aufgrund der Tatsache, dass die im Sensor hinterlegten MAEs sich überhaupt nicht mit der Zeit ändern.

Mathematisch halte ich es für ziemlich ausgeschlossen, dass sich der 7d MAE sich innerhalb von ~60 Tagen, nicht mal in der letzten Nachkommastelle ändert. Wenn dies ein einfaches Anzeigeproblem im Sensor (z.B. Werte werden nicht mehr aktualisiert) ist, kein Problem, damit kann ich leben, man muss es nur wissen.

Deshalb habe ich hier einfach nachfragen wollen, leider driftet das Thema immer wieder ab…

Grüße

Heatseeker

@Heatseeker

Da Du ja offensichtlich etwas von der Materie verstehst, hier eine etwas technische Erklärung, warum Du einen BUG gefunden hast - der unwahrscheinlich aber nicht ausgeschlossen ist ( sehr sehr selten auftreten kann)

In SQLite sind NULL-Werte in Unique-Constraints nicht gleich, dadurch greift das ON CONFLICT für season IS NULL nicht immer zuverlässig bei Fehlern im Sensor-Input.

Ergebnis:
Es werden immer neue globale 7d/30d-Zeilen geschrieben, aber der Sensor liest ohne ORDER BY irgendeine alte Zeile. Das passiert, wenn es zum Beispiel Sensor-Probleme oder unrealistische Werte gibt / gab.

Das ist leider einer der Einschränkungen bei Home Assistant, einen echten Sanity-Check gibt es nativ nicht. Das habe ich an anderen kritischen Stellen durch eine Zwischenschicht abgefangen, aber ich muss damit sehr behutsam umgehen.

Ich habe mir die Stelle im Code noch einmal angesehen und werde sie im kommenden Update stabilisieren.. aber ein solches Verhalten ist damit nicht zu 100% augeschlossen. Die Sensoren holen jetzt deterministisch die neueste Zeile mit ORDER BY calculated_at DESC, id DESC LIMIT 1. Das ist aber nur eine “Notlösung” da das Problem an andere Stelle Steckt, die nichts mit dem Code zu tun hat

Wirklich vermeiden lässt es sich nur durch zwei Dinge:

  1. Sauber Konfiguration
  2. Home Assistant führt endlich einen eigenen nativen Sanity-Check ein (wie schon seit Jahren gefordert) der unrealistische Werte / starke Veränderungen / unrealiste Werte nicht zulässt oder zumindest warnt.

Ist deine (richtige) Beobachtung damit erklärt.. oder brauchst du noch tiefere mathematische und code-seitige Erläuterungen?

1 „Gefällt mir“

Moin @Tom-HA ,

vielen Dank für deine Mühe eine sachliche Erklärung und Einordnung des “Problems” zu liefern!

Ich nehme mit:

  • dass die MAEs korrekt berechnet und geschrieben werden (und damit die Drift Bewertung dahinter funktioniert).

  • Aufgrund der genutzten SQL-Queries in Kombination mit unsauberen Daten (und HA) ein reines Leseproblem und Anzeigeproblem des Sensors besteht.

Da es sich so ließt, dass sich dieses Problem nur schwer oder mit einem unverhältnismäßig hohem Aufwand lösen lässt ist es auch für mich absolut in Ordnung auf diese Attribute zu verzichten, da ich es besser finde etwas gar nciht erst angezeigt zu bekommen, als Werte zu haben denen man nicht oder nur eingeschränkt trauen kann.

Vielen Dank
Heatseeker

Hallo @Heatseeker

Kein Problem.. gern! Allerdings eine kleine Korrektur, die aber wichtig ist!

Die MAE und DRIFT Berechnungen sind fehlerfrei und fließen korrekt in die KI. Wo es, wie Du schon korrekt sagtest, hakt ist Home Assiant selbst beim Lesen und somit der damit verbundenen durch die Sensor-Plattform fließenden Ströme.
Ich werde im kommenden Update Home Assistant zwingen, den korrekten Wert zu nehmen. → So wie er vom Php-Connector gelesen und an die KI übergeben wird.
Dazu hänge ich den Senor um, dass er nicht mehr direkt aus der DB ließ sondern seinen Wert direkt aus dem Code “forced” bekommt. Ich muss mal schauen was der einfachste Weg sein wird.. vermutlich über die coordinator.php oder direkt aus dem KI-Pfad.

Ja, genau.
Das meinte ich mit meinem ersten Punkt. Die Berechnung und die Bewertung funktionieren!

Okay :wink: Dann mache ich da nun ersteinmal einen Haken hinter..

@Heatseeker Kannst du dann bitte den korrespondierenden Thread hierzu als „Lösung“ markieren (hierher verweisen), damit es nicht verwirrt und die Infos hier gebündelt zu finden sind? Danke!

1 „Gefällt mir“