TiRex - ein Foundation Model für Zeitreihen

Shownotes

Huggingface: https://huggingface.co/NX-AI/TiRex

Leaderboard: https://huggingface.co/spaces/Salesforce/GIFT-Eval

Wenn Sie Fragen haben, dann wenden Sie sich gerne an: vertrieb@boschrexroth.de

Produziert von Bosch Rexroth AG, Vertrieb Europa Mitte [Susanne Noll] (https://www.linkedin.com/in/susanne-noll-518b9162/)

Transkript anzeigen

00:00:00: Hallo liebe Zuhörerinnen und Zuhörer, willkommen zu einer neuen Folge unseres Podcastes "Industrie

00:00:08: Neu Gedacht".

00:00:09: Mein Name ist Robert Weber und mir in Linz zugeschaltet ist Professor Dr.

00:00:12: Sepp Hochreiter.

00:00:13: Hallo, willkommen im Podcast.

00:00:14: Hallo.

00:00:15: Wir wollen heute über Zeitreihen sprechen und über das Thema KI, Machine Learning und

00:00:23: Zeitreihen.

00:00:24: Was sind denn eigentlich Zeitreihen und warum sind die so wichtig für die Industrie?

00:00:29: Ja, Zeitreihen, wie du schon sagst, sind für die Industrie extrem wichtig.

00:00:36: Zeitreihen sind Daten, die in der Zeit gemessen werden, sprich, jeder Datenpunkt hat einen

00:00:46: Zeitpunkt zugeordnet, Beispiel sind z.B. Aktienkurse, wo man die Aktienkurse zu jedem Zeitpunkt

00:00:53: hat, vielleicht zu jedem Tag und in der Zukunft vielleicht vorher sagen möchte.

00:00:58: Odas das Wetter, man hat viele Wetterdaten zu jedem Zeitpunkt, zu jedem Tag oder zu jeder

00:01:02: Stunde hat man ein Datum und man möchte das auch oft in die Zukunft vorhersagen, wie

00:01:09: wird das Wetter morgen, wie wird das Wetter nächste Woche.

00:01:12: Aber von was wir reden, sind die Zeitreihen in der Industrie und da gibt es en masse, da

00:01:19: gibt es so viele in der Logistik.

00:01:21: Ich möchte wissen, wie viele Produkte verkauft werden, wie viel ich auf Lager halten muss,

00:01:27: wie viele Glühbirnen ich an irgendeinen Automobilhersteller liefern muss, wie viel der verkauft.

00:01:34: Ich muss wissen, auf Maschinen, wann ist mein Werkzeug, wann ist mein Fräser kaputt

00:01:42: oder hält er noch durch bei diesem Werkstück, dann muss ich, wenn ich die Vorhersage richtig

00:01:48: mache und weiß, wann der Fräser abgenutzt ist, muss ich vielleicht mit geringer Drehzahl

00:01:53: fahren, damit ich die Qualität beibehalte.

00:01:57: Bei Qualität sind wir schon, ich muss vorhersagen, bei meiner jetzigen Einstellung

00:02:01: ist die Qualität des Produkts, das ich herstelle, noch in Ordnung.

00:02:06: Also Zeitreihen gibt es überall, weil ich wissen möchte, wenn ich was mach, ist in Zukunft

00:02:13: das alles in Ordnung.

00:02:15: Das heißt also, Zeitreihen sind im Prinzip Daten, die mit einem Zeitstempel versehen

00:02:19: sind?

00:02:20: Genau, jeder Datenpunkt, das kann auch ein Vektor sein, das kann aber auch eine einzelne

00:02:26: Zahl sein, sind mit einer Zeit versehen.

00:02:29: Und das heißt, alle Sensordaten in der Industrie, die wir kennen, die zeichnen auf und sind

00:02:33: mit einem Zeitpunkt versehen, korrekt?

00:02:35: Genau, weil alles in unserer Welt läuft in der Zeit, jeder Sensordatenpunkt ist mit

00:02:40: einer Zeit versehen, aber auch bei der Gesundheit, EEG-Daten, EKG-Daten, Blutdruckdaten, weil

00:02:48: man Blutdruck ja zu einem bestimmten Zeitpunkt misst.

00:02:51: Alles, was wir messen, messen wir zu einem bestimmten Zeitpunkt, das heißt, wenn wir über

00:02:54: die Zeit messen, haben wir schon sofort eine Zeitreihe, also Zeitreihen gibt es überall

00:02:59: und immer.

00:03:00: Jetzt ist ja das große Thema, wenn wir über KI in der Industrie sprechen oder wenn wir

00:03:05: über KI einmal allgemein sprechen, das große Thema Large Language Modelle.

00:03:10: Da spricht es ja schon, heißt ja schon Language, also Sprache, warum können denn Large Language

00:03:16: Modelle keine Zeitreihen verarbeiten?

00:03:19: Theoretisch können sie Zeitreihen verarbeiten, weil diese Large Language Models ja eine Sequenz

00:03:29: von Wörtern oder Sequenz von Buchstaben verarbeitet, aber die wurden halt auf Wörterbuchstaben

00:03:34: trainiert und es sind abstrakte Sachen, das ist unsere Sprache und deswegen kann ich

00:03:39: es jetzt nicht auf Daten, auf Sensordaten anwenden, das funktioniert nicht, die haben nie Sensordaten

00:03:44: gesehen, die haben Wörter gesehen, die haben Buchstaben gesehen, die kennen nichts anders

00:03:47: in ihrer Welt, wie Buchstaben oder Wörter, das heißt, ich müsste sie extra von vorne

00:03:54: nur auf Sensordaten trainieren, was auch gemacht wurde und dann geht das zu einem bestimmten

00:04:00: Grade.

00:04:01: Was heißt zu einem bestimmten Grade, die Ergebnisse sind nicht super gut?

00:04:05: Genau, die Large Language Models sind super bei Text, Texterzeugung, aber sie schauen

00:04:13: nicht so gut aus, dass sie entsprechend nicht in Erwartungen, die man in sie hatte, bei eben

00:04:19: solchen Zeitreihen, bei Datenpunkten in der Zeit.

00:04:23: Hier sind klassische Modelle, ich spreche jetzt vom LSTM, das LSTM erfunden und es wurde

00:04:31: immer für Zeitreihen verwendet, das war immer gut, wenn nicht besser als alles was mit Transformer

00:04:37: gemacht wurde. Transformer haben zwei riesige Nachteile bei Zeitreihen, zwei Nachteile, die

00:04:45: sie eigentlich nicht so sinnvoll für Zeitreihen machen. Das erste ist, sie sind sehr langsam,

00:04:52: sie sind quadratisch in der Zeit, also wenn ich eine sehr lange Zeitreihe habe und ich

00:04:56: möchte was vorher sagen, ich möchte was machen, muss ich auf alles zurückschauen, was ich

00:05:00: schon gesehen habe, was ich gemacht habe. Also sie sind quadratisch in der Zeit, immer

00:05:05: wenn wir eine Vorhersage machen müssen wird über alles zurückgehen. Das ist bei LSTM

00:05:11: anders oder bei dem neuen X-LSTM auch anders. Der zweite Nachteil von Transformern ist,

00:05:18: sie haben kein Memory, sie haben kein Speicher, sie können sich nicht merken, was sie schon

00:05:23: gesehen haben und dadurch können sie den Zustand des Systems nicht verfolgen. Sie verlieren

00:05:29: den Zustand des Systems. Bei Zeitreihen geht es oft um Systeme, das kann jetzt eine Maschine

00:05:36: sein, es könnte aber auch ein Prozess wie Verkehr oder Energie sein oder beim Klimawechsel.

00:05:43: Das sind natürliche, oder künstliche Prozesse, nehmen wir mal Maschinen her, die Maschine

00:05:48: hat einen Zustand, da gibt es sowas wie Temperatur, die Temperatur des Öls oder des Werkzeugs,

00:05:55: die aktuelle Drehzahl. Lauter solche Sachen, der aktuelle Vorschub, vielleicht das aktuelle

00:06:01: Material, das bearbeitet wird. Das sind alles Zustände der Maschine. Sowas wie LSTM oder

00:06:08: recurrente Netze, die einen Speicher haben, können sich das merken. Ich verarbeite gerade

00:06:13: Aluminium bei der Drehzahl von 1200 oder so. Okay, und wenn Sie dann zurückschauen, dann

00:06:18: können Sie sagen, jetzt ist es 1201 Grad und sagen bei 1200 Grad war es so. Genau,

00:06:24: ich meine jetzt mit 1200 die Drehzahl, aber nehmen wir jetzt Grad her, es hat, man sieht

00:06:31: wie die Temperatur des Bohrers oder des Fräsers nach oben geht und jetzt kann ich in die Zukunft

00:06:37: schauen, weil ich die Vergangenheit weiß, es ist jetzt in jeder Sekunde um 1 Grad heißer

00:06:41: geworden. Dann kann ich vielleicht in der Zukunft sagen, naja, es wird auch jede Sekunde

00:06:46: 1 Grad heißer, dann ist der Bohrer so heiß und wird kaputt. Er funktioniert nicht mehr,

00:06:51: macht das Werkstück kaputt und der Bohrer selber geht auch kaputt. Also ich kann es vorher

00:06:55: sagen, es ist ein einfaches Beispiel. Oft ist es viel komplizierter, weil der wird

00:06:59: ja dann mit Öl gekühlt und manchmal ist mehr oder weniger Druck drauf. Also es ist dann viel

00:07:04: kompliziert, aber ich kann dann vorher sagen, wann das nicht mehr funktioniert, also die

00:07:08: Qualität nicht funktioniert oder das Tool, sprich das Werkzeug kaputt wird.

00:07:15: Aber wie machen so KI-Modelle voraussagen? Wie funktioniert das technisch? Was brauche

00:07:22: ich dafür?

00:07:23: Na ja, ich brauche irgendeinen Input und sag dann vorher, bei Zeitreihen ist typischerweise

00:07:30: der Input alle vergangenen Zeitpunkte. Also ich schalte die Maschine an, dann messe ich,

00:07:38: die Temperatur, die Drehzahl in der ersten Sekunde, in der zweiten Sekunde, in

00:07:42: der dritten Sekunde und so weiter und dann bin ich vielleicht bei der fünfhundertsten

00:07:46: Sekunde. Jetzt nehme ich die erste Sekunde bis zur fünfhundertsten Sekunde, all die Zahlen,

00:07:53: die ich dort habe und sehe wie die Temperatur nach oben, und nach unten geht und mache

00:07:57: dann eine Vorhersage vielleicht für 30 Sekunden im Voraus. Was ist da die Temperatur? Funktioniert

00:08:04: es noch? Wenn ich dann sehe, es wird zu heiß, könnte ich vielleicht die Drehzahlen nach

00:08:09: unten stellen oder mehr mit Öl kühlen damit der Bohrer die Temperatur nicht hat. Der Input ist die Vergangenheit,

00:08:16: die ganze vergangenen Zeitpunkte und vorhersagen, tue ich oft die Zukunft.

00:08:21: Okay. Und jetzt gibt es von NXAI und von dem Team ein Modell, das vorgestellt wurde, das

00:08:32: sozusagen nicht mehr so viel Inputs braucht oder das Zero Shot, nennt sich das, dass man

00:08:38: nur mit ohne das zu trainieren sofort laufen kann. Wie funktioniert das?

00:08:42: Ja, ich gehe jetzt noch einen Schritt zurück, weil du sagst, diese neuen Technologien, wir

00:08:50: haben hier unsere neue Methode in NXAI, dieses x-LSTM, also das Extended, das neue x-LSTM

00:08:57: angesetzt. Ich habe vorher von diesen Nachteilen vom Transformer gesprochen, das Gute bei

00:09:02: diesem x-LSTM, wie auch beim alten LSTM, das halt nur noch besser ist, dass es nur

00:09:08: aufs Memory zurück schaut und nicht über alle vergangenen Datenpunkte. Das ist wie wenn

00:09:13: ich am Buch lese und wenn ich ein neues Wort lese, fange ich wieder bei der ersten Seite

00:09:17: an und lese das ganze Buch durch, bevor ich wieder das nächste Wort lese. LSTM und rekurrente Netze

00:09:23: haben alles im Speicher, was sie schon gelesen haben. Das heißt, wenn ich am Buch lese, vergleiche

00:09:28: ich das neue Wort oder mit dem, was ich mir gemerkt habe. Das ist viel effizienter, wenn

00:09:33: ich jedes mal das Buch vor vorne lese. Also das ist eine Sache. Die zweite

00:09:37: Sache, die x-LSTM besser kann, ist State Tracking, was ich vorher gesagt habe, den Zustand des

00:09:43: Systems abspeichern. Also ich habe einen Speicher und den Speicher kann ich auch nutzen, zu

00:09:47: sagen, in welchem Zustand ist das System gerade? Ist es sehr heiß? Ist es gerade in der Abkühlphase?

00:09:57: Ist die Ölwanne noch voll oder wird die leer? Ist der Bohrer so rum oder so rum eingespannt?

00:10:04: Da gibt es ganz viele Zustände vielleicht vom System, die ich mir merken kann. Und

00:10:09: das nutzt was für die Vorhersage wenn ich weiß, in welchem Zustand das System ist,

00:10:13: vielleicht beim Systemzustand möchte ich ein Beispiel mal zeigen. In der Hydrologie war

00:10:17: das so erfolgreich. In der Hydrologie haben wir die Wasserstände von Flüssen vorher

00:10:22: gesagt, und da gibt es versteckte Zustände. Und zwar, Wasser ist im Boden gespeichert,

00:10:27: Wasser ist als Schnee gespeichert, der dann schmilzt und auch in den Fluss geht. Oder es gibt so

00:10:32: unterirdische Becken, wo auch Wasser gespeichert wird. Also es gibt sehr, sehr, sehr viele

00:10:37: Zustände vom System. Das war jetzt in der Natur. Aber genauso hat die Maschine verschiedene Zustände.

00:10:45: Jedes Auto, wie der Motor auf der Autobahn gefahren wird oder im Stadtverkehr. Und LSTM kann

00:10:55: diese Zustände sich im Memory oder im Gedächtnis merken. Und dieser Memory kann man größer

00:11:01: und kleiner machen? Oder wie groß ist der? Oder ist das flexibel? Genau, dieser Memory

00:11:06: kann man auf die Aufgabe anpassen. Und das Gute ist halt auch im Gegensatz zum Transformer,

00:11:12: die Memory-Size, also die Größe des Gedächtnisses, ist fix. Die ändert sich nicht. Egal, ob ich jetzt

00:11:19: eine sehr lange Sequenz, eine Million Datenpunkte, scanne, oder ob ich nur zehn Datenpunkte

00:11:25: scanne. Im Gegensatz zum Transformer, der eine Million Datenpunkte scannt, muss ich eine

00:11:30: Million Datenpunkte abspeichern, weil er wieder auf alle jedes Mal zurückgreifen muss.

00:11:35: Er muss immer wieder auf die zurückgehen. Das heißt, er muss das alles speichern. Das heißt,

00:11:39: da kann man das Memory nicht a priori im vorhinein festlegen, wie groß das ist. Aber Robert, ich

00:11:46: komme zu dem, was du gefragt hast, mit dem Lernen. Das Modell, das vorgestellt wurde. Genau. Jetzt sage

00:11:54: ich erstmal, was in Deep Learning, in Zeitreihenmodellen, das Neue ist. Das Neue sind diese Foundation

00:11:59: Models, wo ich ein Context-Learning mache, sprich, eigentlich Zero-Shot-Learning. Aber was heißt das?

00:12:07: Bis jetzt kennen wir diese Zeitreihenmodelle. Da habe ich viele Zeitreihen von einer Art,

00:12:13: was ich für die Aktienkurse oder viele Zeitreihen von einer Maschine und lerne dann. Ich habe dann

00:12:20: ein Modell, das genau für diese Zeitreihe sehr gut ist und was vorhersagen kann. Die neuen Techniken

00:12:26: sind, dass ich alle Zeitreihen zusammenstelle, die ich kriegen kann, die es irgendwo gibt,

00:12:33: und ein großes Modell auf alle Zeitreihen lerne. Und das ist abgeschaut natürlich von den large

00:12:40: Language Models, die mal einen Text den es gibt auf der Welt nehmen, versuchen an allen Texten, den es gibt,

00:12:46: zu lernen. Hier nimmt man alle Zeitreihen an, die ich kriegen kann und lerne ein Modell über alle

00:12:52: Zeitreihen, das alle Zeitreihen gut vorhersagbar sind. Aber kurze Frage. Logistik-Zeitreihen sind anders

00:12:59: als Maschinen-Sensor-Daten-Zeitreihen. Wie geht das? Genau. Ich sage erstmal, wie noch das funktioniert.

00:13:05: Ich lerne auf alle Zeitreihen. Wie lerne ich? Ich stelle eine neue Zeitreihe in einen Kontext, so wie

00:13:12: wie beim large language Modell, wie ein prompt. Da ist der prompt, so eine Serie von Datenpunkte,

00:13:19: die sind da geordnet, weil sie einen Zeitstempel haben, weil sie Zeit haben. Ich tu die praktisch rein schreiben,

00:13:25: wie einen prompt, wie einen text und sage dann auch analog zu large language Models. Jetzt

00:13:31: sagt das nächste Wort vorher. Aber da ist nicht das nächste Wort, das ist der nächste Zeitpunkt. Sie

00:13:34: ist abgeschaut von diesem large language Modell. Ich schreibe aus dem Kontext eine neue Zeitreihe,

00:13:40: die es noch nie gesehen hat und es soll dann vorhersagen, wie geht diese Zeitreihe weiter.

00:13:46: Jetzt hast du richtig gesagt, wie kann das sein? Also es gibt eine Zeitreihe, die für Aktien

00:13:54: ist, eine für Energie, Strom, Autos, Verkehr, alles möglich. Wie kann es sein, dass ich was vorher

00:14:04: sagen kann, obwohl die Zeitreihen so unterschiedlich sind. Die Sache ist die, es gibt Muster. Es gibt zum

00:14:11: Beispiel, wenn man so sieht, eine Schwingung, was oft vorkommt. Zeitreihe geht nach oben und dann

00:14:17: später wieder nach unten. Oder geht nach oben, hat zwei Hügel oder drei Hügel. Es gibt so typische

00:14:23: Muster, die immer wieder bei Zeitreihen vorkommen. Wenn ich ganz, ganz viele Zeitreihen sehe,

00:14:28: sehe ich sehr viele Muster. Also vielleicht so linear nach oben gehen, flacher oder weniger flacher.

00:14:33: Jetzt gibt es aber viele Muster und jetzt kommt, das ins Spiel, dass ich was im Kontext geschrieben habe,

00:14:39: dass ich schon Zeitreihen reingeschrieben habe. Jetzt schaue ich auf die Zeitreihen, die in

00:14:43: Kontext stehen, die ich dem System gezeigt habe. Das weiter man sagt. Und jetzt kannst du reinschauen,

00:14:49: ach, da gibt es immer diese Muster mit einem Doppelhügel. Da gibt es eine Sinus-Schwingung. Ach,

00:14:55: da gibt es eine Dreieckskurve. Ah, da geht es linear rauf und dann wieder linear runter. Oder es geht

00:15:01: linear rauf und dann geht es ganz flach. Also ich sehe all diese Muster. In das, was ich im Kontext

00:15:06: geschrieben habe. Aber diese Muster habe ich ja vorher schon gelernt. Die Muster habe ich bei

00:15:11: ganz vielen anderen Zeitreihen schon gelernt und kann dadurch die Muster erkennen, extrahieren und

00:15:16: mit diesen Muster die Zeitreihe vorhersagen. Weil wenn ich weiß, das Muster war, dann nehme ich an,

00:15:21: es kommt wieder. Wenn es so ein Sehrgezahn ist, wird es so ein Sehrgezahn-Muster sein. Wenn es so ein

00:15:26: Rechtecksmuster ist, wird das Rechtecksmuster weitergehen. Das heißt, ich sehe im Kontext,

00:15:31: welche Muster kommen und kann dadurch die Zeitreihe fortsetzen, weil ich schon ganz viele andere

00:15:36: Zeitreihen gesehen habe, mit ganz vielen Mustern und sage jetzt, diese Zeitreihe hat diese Muster und

00:15:41: ich kann die fortsetzen, weil ich einfach das Muster vervollständige, das am Ende kommt. Das

00:15:46: heißt, ich kann wirklich das Modell nehmen und einfach meine Zeitreihen drauf werfen und es macht

00:15:51: mir eine Vorhersage. Ohne, dass ich vorher das trainiert haben muss. Ich muss es nicht um 

00:15:55: irgendeine neue Zeitreihe. Ich weiß nicht was, vielleicht, wieviel Taschengeld man hat oder

00:16:00: Energie oder irgendwas. Ich sage irgendwas vorher und ich muss nur im Kontext,

00:16:08: ich muss nix machen und das sagt vorher. Und jetzt kommt noch das Überraschende, das absolut

00:16:12: fantastische. Das ist oft besser, als wenn ich es auf die Daten trainiere. Weil ich habe oft

00:16:19: Fälle, wo ich zu wenig Daten habe. Das heißt, ich kann kein Modell eigentlich lernen, es sind

00:16:24: eigentlich zu wenig Lerndaten da. Aber für dieses im Kontext lernen oder Zero-shot lernen,

00:16:29: brauche ich gar nicht so viel Daten, weil ich stelle es einmal rein, weil ich aus vielen

00:16:33: anderen Zeitreihen die Muster erkannt habe. Also das ist das Gute, auch wenn ganz wenig Daten da sind,

00:16:39: kann ich es verwenden. Und ich bin besser als wenn ich wirklich ein statistisches Modell,

00:16:43: wie Arima und so weiter, das ist eine ganz berühmte, alte statistische Modelle, bin besser als die,

00:16:49: weil ich einfach gelernt habe, wie Zeitreihen funktionieren, welche Muster da vorkommen. Und ich

00:16:54: als Privatmann kann da sogar meine Zeitreihen reinstellen, habe keine Ahnung von Zeitreihen,

00:16:58: habe die noch nie angefasst, weiß nicht was das ist. Und es macht Vorhersagen für mich.

00:17:03: Das ist gut. Der Vergleich war ja gerade da auch, dass man

00:17:09: sagt, das ist wie ein LLM, sozusagen, über ein Prompt. Ist das das Thema, dass man Zeitreihen

00:17:14: so einfach zugänglich macht, jetzt wie ein ChatGPT? Genau, das wäre die Idee. Jeder

00:17:21: kann beim ChatGPT ein Prompt reintun und irgendwas fragen und jeder kann jetzt

00:17:27: Privatnutzer oder Firmen in dieses, das Modell heißt übrigens, TiRex hier in NXAI publiziert haben,

00:17:38: also für König der Zeitreihen, TiRex, Time-Series und Rex, eben der König Tirex. Jeder kann

00:17:47: unseren Tirex verwenden, indem er einfach eine Zahlen-Serie, muss nach der Zeit geordnet

00:17:54: sein, reinschreibt, wie wenn man Wörter reinschreiben würde, wenn er eine Frage stellen würde und dann

00:18:00: kommt die Vorhersage und sagt, ja, so geht es weiter, so geht die Zeit-Serie weiter und das

00:18:06: ist ganz einfach zu nutzen. Da braucht man kein Experte sein und der Experte muss das nutzen,

00:18:11: sollte es nutzen, kriegt bessere Ergebnisse, wenn er wenig Daten hat, was ganz oft vorkommt,

00:18:16: dass man einfach zu wenig Daten hat, weil eine neue Maschine reinkommt, weil ein neues Produkt

00:18:19: reinkommt, weil ich noch nicht so viel gemessen habe und trotzdem kann ich vielleicht sogar ohne

00:18:24: eine Messung, das ist die erste Messung in meiner Produktion und schon kann ich was vorhersagen.

00:18:29: Da gibt es eine Demo oder das kann man ausprobieren auf Huggingface, da kann man seine Daten hochladen

00:18:36: und das Modell Tirex ausprobieren. Jetzt würde mich noch mal interessieren, angenommen, ich habe

00:18:41: aber Daten, macht und das war ja gerade Thema, macht es dann Sinn überhaupt, noch diese Daten zu

00:18:47: nutzen und fein zu tunen oder braucht es das wirklich gar nicht dann mehr? Vielleicht noch mal, weil

00:18:54: Huggingface erwähnt hast, das ist die Demo, aber noch toller ist auch, oder wo wir so stolz sind auf

00:18:59: Huggingface, da gibt es zwei so Leaderboards, das sind so Foundation-Zeitreihen, Foundation-Modelle,

00:19:05: da gibt es auch ganz berühmte von Amazon und von Salesforce und von Alibaba und da gibt es

00:19:12: Leaderboard, GIF Eval und ein anderen Benchmark der von Amazon kommt ZF. In beiden Leaderboards ist

00:19:21: unser Tirex vorne in Führung mit einem deutlichen Abstand und da sind wir so stolz drauf, weil wir

00:19:27: sind vor Amazon, vor Google, vor Salesforce, vor Datadoc, da sind die Amerikaner auch vor Alibaba,

00:19:34: und den Chinesen und in beiden Leaderboards und noch dazu sind wir die schnellsten, also es ist unglaublich,

00:19:40: was wir da für ein Stich gesetzt haben, was wir da für einen Erfolg haben, also wir sind so super,

00:19:46: super stolz, dass wir nicht nur die besten sind, sondern die besten und die schnellsten und noch

00:19:51: das kleinste Modell, das auf jeden embedded Chip passt, also auf Huggingface was du erwähnt hast,

00:19:56: kann man diese Leaderboards auch sich ansehen und sich überzeugen, wie super cool das ist. Deine

00:20:05: Frage war aber, man nimmt das Modell her, wenn man ganz wenig Daten hat, wenn man ein bisschen mehr

00:20:11: Daten hat, kann man in der Tat noch bessere Ergebnisse kriegen, und zwar indem man das Modell

00:20:17: feint, also es ist auf ganz, ganz viele Zeitreihen gelernt worden, wenn ich jetzt aber spezielle

00:20:23: Zeitreihen habe, also aus dem Energiesektor, aus dem Healthsektor oder von meinem Maschinenpark,

00:20:29: ich habe vielleicht Drehmaschinen, Fräsmaschinen und jetzt tue ich genau solche Daten von meinen

00:20:34: Maschinen nochmal nach trainieren, das Modell Feintunen, also ich tue jetzt ein bisschen mehr diese Muster,

00:20:42: die da vorkommen, rausstreichen, dann wird es natürlich noch besser, oft auch deutlich besser,

00:20:47: wenn man es ohne Feintunen, ohne auf eine spezielle Domäne, ohne auf eine Anwendung

00:20:54: es anpasst. Also Anpassung auf eine Anwendung bringt nochmal ein Schritt mehr. Hängt davon ab,

00:21:00: wie viele Daten das man hat, wenn man sehr viele Daten hat, kann man es sehr gut anpassen und

00:21:05: kriegt nochmal bessere Ergebnisse. Wenn man ganz wenig Daten hat, ist es vielleicht das Originalmodell

00:21:10: schon das Beste, oder man kriegt keine Verbesserung. Aber die typische Anwendung für die Industrie

00:21:17: wird natürlich sein, man nimmt das Modell und passt es dann auf die Daten an die man in der Industrie hat,

00:21:23: weil da speziell die Muster vorkommen, dann kann ich nicht genau auf diese Muster fokussieren,

00:21:26: die genau in diese Anwendung kommen und da holt man nochmal einiges raus. 35 Millionen Parameter

00:21:33: groß ist das Modell, andere sind viel größer. Warum schlägt dann so ein Modell, das weniger

00:21:39: gesehen hat, ein Modell wie von Salesforce, von Amazon, von Alibaba? Was ist die Secret Source?

00:21:48: Was ist so das, was es ausmacht? Das ist genau das, was ich vorhin schon erwähnt habe, auch diese

00:21:58: Konkurrenzmethoden, die basieren in der Tat auf der Transformer-Technologie. Die Transformer-Technologie

00:22:04: hat keinen Speicher, dieses x-LSTM, ist ein recurrentes Netz, das ist ein Netz, ein neuronales Netz

00:22:10: ein Gedächtnis, die Transformer-basierte Methode. Klar, es wurde ja auch von Large Language Models

00:22:18: wo alle, die ja auch alle auf der Transformer-Technologie laufen, ja abgeschaut und man hat auch die

00:22:23: gleiche Architektur verwendet. Ist aber ungeeignet für Zeitreihen, die ist einfach

00:22:27: ungeeignet für Zeitreihen und diese recurrenten Netze sind viel besser. Weil was mache ich? Also

00:22:33: ich versuche den jetzigen Zustand vom System abzuspeichern und mit dem jetzigen Zustand und

00:22:38: vielleicht zusätzlichen Inputs, zusätzlichen Messdaten sage ich den zukünftigen Zustand

00:22:43: vorher. Es ist wichtig den Zustand abzuspeichern, das kann ein Transformer nicht und das kann

00:22:47: eben dieses x-LSTM. Das ist ein riesen Vorteil, das ist bei jeder Zeitreihe, bei jeder Differenzialgleichungen

00:22:52: bei alles, was wir in der Welt erleben. Was ist der Zustand des Systems? Wie wird

00:22:58: das System beeinflusst von außen und dadurch erreiche ich den nächsten Zustand. Das ist die

00:23:03: Sense von jeder Differenzialgleichung, die alle unsere Systeme, sei es natürliche oder

00:23:10: menschengemachte, beschreibt und genau das repräsentiert dieses x-LSTM, genau so ist

00:23:17: die Architektur gemacht. Ich würde einfach sagen, Transformer sind nicht für Zeitreihen ungeeignet.

00:23:23: Sie sind super gut für Text, wo ich mal ein altes Wort merken muss, aber ich muss mir

00:23:28: nichts altes merken, wenn ich den aktuellen Zustand des Systems gut beschreiben kann. Muss

00:23:32: ich mir nichts merken, weil ich eh alle Informationen habe.

00:23:34: Warum hat es denn bis jetzt keiner mit rekurrenten Netzen probiert? Warum seid ihr die Ersten?

00:23:42: Gute Frage, aber klar, es kommt aus der Geschichte sozusagen. Ich habe diese Large Language Modelle,

00:23:51: ein riesen Erfolg. Dann gibt es Leute, die im Zeitreihenbereich arbeiten und sagen, ja, kann ich das nicht

00:23:56: auch machen, dann überlege ich mir, kann ich so Token, kann ich so viel Wörter machen,

00:24:01: indem ich ein paar Datenpunkte in der Zeit zusammenfasse, kann ich das wie ein Prompt

00:24:06: machen, kann ich nicht in Kontext, kann ich das nicht rein tun und ich frage das Ding was,

00:24:10: ich gebe Zeitreihe und wie wenn es den Satz vervollständigen muss, muss jetzt die Zeitreihe

00:24:14: vervollständigen. Wir haben es abgeschaut und die Dinger, von denen man sich es abschaut,

00:24:19: laufen alle als Transformer, sind alle die Transformer-Architektur und da ist es natürlich,

00:24:25: warum sollte ich mir die Idee abschauen, aber die Architektur ändern. Also es war ganz klar,

00:24:30: dass die Leute die Transformer hergenommen haben und man muss auch sagen, der ist halt

00:24:34: auch so populär, auch wenn er für manche Sachen wie für Zeitreihen ungeeignet ist, aber

00:24:39: der ist so populär, dass jetzt in der KI-Welt fast überall diese Architektur verwendet wird.

00:24:45: Auch wenn sie nicht überall die Beste ist. Okay. Was steht jetzt auf der Agenda? Jetzt

00:24:51: gibt es das Modell, arbeitet man daran noch weiter, wird das noch ausgebaut? Was steht

00:24:56: in, woran forschen sie? Nachdem wir jetzt so erfolgreich sind mit dem

00:25:01: Tirex-Modell, wollen wir das natürlich weiterentwickeln. Was wir jetzt schon haben, also es ist schon

00:25:07: implementiert, Multivariate-Version, wo nicht nur eine Zeitreihe als Input reingeht, sondern

00:25:13: mehrere Zeitreihen. Wir haben das zum Beispiel auch in der Hydrologie, wo es so erfolgreich

00:25:17: ist, gehabt. Da gibt es die alten Wasserstände der Flüsse, aber auch das Wetter, der Regen,

00:25:23: der Niederschlag, beide Zeitreihen oder sogar noch mehrere Zeitreihen, weil Luftdruck und

00:25:29: soweit auch noch gemessen wurde, gehen rein und ich sage dann den Wasserstand des Flusses

00:25:34: vorher. Das ist multivariat. Das ist für die Industrie auch wichtig, weil da haben

00:25:38: wir auch Multivariate Zeitreihen. Genau, da gibt es oft mehrere Sensoren oder genau dieses

00:25:44: Multivariate, da haben wir ja schon ein System implementiert, aber wir versuchen das gerade

00:25:49: zu optimieren, zu verbessern. Da gibt es so Multivariate. Das ist eine Richtung. Dann

00:25:54: eine andere Richtung ist auch Klassifikation und Outlier Detection. Nachdem wir so ein

00:25:58: gutes Modell haben, möchte man ja oft nicht die Zukunft vorhersagen, sondern man möchte

00:26:02: von der Zeitreihe sagen, ist alles in Ordnung. Wie gut ist die Qualität des Produkts,

00:26:10: ist die Maschine noch in Ordnung, ist alles im grünen Bereich. Also da geht es um Klassifikation,

00:26:14: ich hab eine Zeitreihe oder in der Gesundheit., ich hab eine Zeitreihe.. ist der Mensch gesund oder

00:26:20: hat er was, oder gibt es da irgendwelche Probleme. Das ist wie die Klassifikation, dann Outlier

00:26:26: Detection ist, hey, hier läuft was aus dem Ruder. Hier passiert was Ungewöhnliches,

00:26:30: bitte nachschauen. Die Zeitreihe hat ungewöhnliches Verhalten, deshalb gibt es ein rotes Flag,

00:26:38: das sagt hey bitte nachschauen. Also wir gehen in Klassifikation, wir gehen Richtung Outlier Detection, das

00:26:44: sind zwei Richtungen, wir gehen in Richtung multivariat. Und derzeit haben wir noch eine

00:26:49: Sache, wo wir gerade weiterforschen, was jetzt auch schon fast steht, ist man kann zusätzliche

00:26:56: Daten reingeben. Wie z.B. bei Sales, also wenn man was verkauft, möchte man oft wissen,

00:27:02: an dem ich die Vorhersage mache, ist das gerade ein Feiertag, ist das gerade ein Wochenende,

00:27:06: ist es gerade vielleicht der Vatertag oder kommt der Vatertag bald oder der Muttertag,

00:27:13: wo ich da vielleicht, was mache, ist es Valentinstag, wo vielleicht mehr Blumen

00:27:16: verkauft werden. Also das sind ja keine Zeitreihen, das sind ja Konstanten oder?

00:27:20: Die Konstanten und das war auch immer schwierig, ich habe mich mit der Thematik schon seit 30

00:27:25: Jahren beschäftigt, weil ich ja mit LSTM schon immer gearbeitet habe, wie kann ich solche

00:27:30: Konstanten oder langsamere Zeitreihen, die sich ganz langsam verändern, das gibt es

00:27:36: oft auch bei Aktienkursen, dass Auftragseingänge oder solche Sachen, die nur einmal im Halbjahr

00:27:43: oder einmal im Vierteljahr gemessen werden, wie bringe ich die rein? Und das ist nicht

00:27:49: einfach, weil die andere Dynamiken haben, die haben andere Verteidigung, die ändern sich nicht

00:27:52: und die anderen Sachen ändern sich. Aber wie kann ich das gut zusammenfügen, ist nicht

00:27:55: trivial, man kann es leicht machen, man kann es sehr leicht falsch machen. Und da sind wir

00:28:00: gerade dran, haben wir schon ne sehr gute Idee, die gerade implementiert wird, wie man solche

00:28:06: konstante Sachen oder zusätzliche Informationen, also typischerweise ist es bei der Maschine,

00:28:12: vielleicht muss ich bei der Maschine auch beschreiben, wie lange ist die, wie viel maximale

00:28:17: Drehzahl hat die Maschine, Koordinaten, Beschreibungen, einfach zu sehen, ist es jetzt

00:28:22: die große Drehmaschine oder ist es die kleine Drehmaschine? Oder ist es die Art von Bearbeitung

00:28:30: oder ist es die Art von Bearbeitung? Oder ist es die Zeichnung vom Kunden oder das

00:28:34: Kundenprojekt? Genau, es kann auch sein, ich gebe ein, ich bearbeite gerade Metall oder

00:28:39: ich bearbeite gerade Aluminium oder so, oder vielleicht Holz, vielleicht geht es auch,

00:28:44: also das sind konstanten, weil während ich das bearbeite ändert sich das Material nicht,

00:28:49: da bleibt das Holz, bleibt das Aluminium oder bleibt das Metall. Und das ist natürlich

00:28:54: ein großer Unterschied, ob ich jetzt Holz oder Metall bearbeite, da kann alles mit Drehzahl

00:28:58: sich ändern und das muss das System natürlich wissen. Und wie gebe ich das rein? Weil das

00:29:05: immer Konstant ist, wenn man es nämlich jetzt zu jedem Zeitpunkt reinfüttern würde,

00:29:09: wäre diese Information komplett überrepräsentiert. Das System wird sich nur noch auf dieses Ding,

00:29:14: weil das Ausreißer provoziert, oder? Nein, weil es zu starkes Signal provoziert,

00:29:20: also wenn ich da den Kredienten mache, dann ich hab eine Zeitreihe von tausend,

00:29:25: kommt tausendmal dieses Material rein, während die andere Zeitreihe hin und her wackelt. So

00:29:32: funktioniert das nicht, das haben wir schon ausprobiert, aber wir haben andere Ideen,

00:29:35: wie wir es reinbringen, wir haben es auch schon gemacht, in unseren Hydrologie-Experimenten,

00:29:41: wo es für den Flussstand auch wichtig war, was ist die Vegetation außen rum, sind Berge

00:29:50: außen rum, haben die Berge Schnee, wie steil sind die Berge, wie schnell läuft das Wasser runter,

00:29:55: was ist die Bodenbeschaffenheit, ist es so felsig, sind viele unterirdische Höhlen und so weiter.

00:30:01: Und was ist das durchschnittliche Klima, ist es in Spanien, ist es in Österreich,

00:30:05: Deutschland? Das sind Konstanten. Und das haben wir gesehen bei diesem Projekt,

00:30:10: bei dem Hydrologie Projekt, wo wir wirklich das beste Modell haben mit LSTM, das beste Zeitreihenmodell,

00:30:15: war das sehr wichtig, diese Konstanten einzufüttern. Also da hat es schon funktioniert,

00:30:19: da haben wir schon ein paar Lösungen, aber für das Tirex werden wir das noch mal optimieren.

00:30:24: Genau für die Industrie, dass sie nicht nur die Zeitreihen reinfüttert, sondern auch so Beschreibungen

00:30:29: von dem Werkstück, von der Produktion oder von der Maschine. Das heißt aber dann auch im

00:30:35: Umkehrschluss, das verliert dann so ein bisschen dieses, diesen LLM-Charakter, oder? Wenn ich dann am

00:30:40: Anfang erstmal reingeben muss, okay, ich bearbeite jetzt hier an der Maschine Holz oder Metall, das

00:30:47: muss dann, löst dann dieses Zero-Shot-Thema so ein bisschen ab, oder? Genau. Also ich kann zwar noch

00:30:53: die Zeitreihen mit Zero-Shot-Methoden vielleicht bearbeiten, aber zum Schluss kommt dann das System

00:30:59: rein, das aber genau für diese Domäne wichtig ist, weil diese Konstanten natürlich je nach Anwendung

00:31:04: komplett anders sind. Auch bei der Hydrologie ist es die Bodenbeschaffenheit und wie steil die

00:31:10: Berge außenrum sind. Aber das ist ganz was anderes, wie steil die Berge sind oder die

00:31:14: Bodenbeschaffenheit, wie die höchste Drehzahl oder der größte Meisel von der Maschine oder

00:31:22: der größte Vorschub, wo die stärkste Kraft die ich anwenden kann. Also das sind einfach komplett

00:31:27: andere Charakteristika und deswegen muss diese Sachen, diese Konstanten, müssen dann für die

00:31:33: Domäne und für die Anwendung gemacht werden. Es kann das Gleiche sein über verschiedene Drehmaschinen

00:31:40: hinweg, wie wir das hier auch gemacht über ganz viele Flüsse hinweg gemacht,

00:31:43: weil über die vielen Flüsse hinweg immer Boden da ist, über Berge oder auch keine Berge, da wäre

00:31:49: null die Steigung der Berge dann oder kein Schnee oder Schnee, ich kann es immer beschreiben,

00:31:55: weil es immer um Flüsse geht und es immer relevant ist. Aber für eine spezielle Anwendung

00:32:00: geht man zwar über die Maschinen hinweg oder über die Produkte hinweg oder über die Kunden

00:32:04: hinweg und lernt trotzdem so ein Foundation Model, aber jetzt nicht mehr über alle wirklichen

00:32:10: Zeitreihen, wie wir es jetzt haben mit Tirex, sondern ist Tirex eingedampft auf eine bestimmte Anwendung.

00:32:15: Und das gibt halt ein riesen Sprung nochmal, weil das eine Information ist, die ich sonst aus der

00:32:22: Zeitreihe selber hätte extrahieren müssen irgendwie. Es ist viel schwieriger, als wenn ich es explizit

00:32:27: reingebe. Und da sehen wir nochmal ein Riesenpotenzial und es ist auch extrem wichtig für die Industrie.

00:32:35: Und da braucht es ja auch wieder Domänexperten, die dann sagen können, ja, das Teil war schlecht,

00:32:43: weil hier ist die Temperatur in der Halle viel zu hoch gewesen oder da war das Fenster auf, da hat

00:32:48: sich die Temperatur verändert an der Maschine. Das ist ja entscheidend, dass man dann das auch

00:32:53: weiß oder, dass man das mit abfragt. Ja, also diese Konstanten müssen gemessen haben, wenn ich nicht

00:33:00: weiß ob das Fenster auf oder zu war, dann nützt mir nichts. Aber ich muss wissen, was ich messe,

00:33:05: wo ich Sensoren noch hintue oder ich habe Maschinenbeschreibung, zumindest je kann ich

00:33:11: reinfüttern. Wenn ich weiß, dass ich für jede Maschine die gleiche Beschreibung habe,

00:33:15: dann kann ich ... Aber es kann auch sein, dass z.B. ein Feuchtigkeitssensor ist. Jetzt

00:33:20: kann aber der Feuchtigkeitssensor zwei Sachen machen, der kann auch eine Zeitreihe sein. Das heißt,

00:33:24: ich habe diese Maschinenzeitreihe, aber ich habe jetzt noch ein Feuchtigkeitssensor,

00:33:28: vielleicht noch ein Fibrationssensor. Das heißt, es wäre wieder dieses Multivariate plus diese

00:33:34: Konstanten. Das kann auch sein, welche Jahreszeit es ist, ist es eher Sommer, ist eher Winter oder

00:33:40: vielleicht Konstanten, die Maschinenkoordinaten, die ich reinfüttern kann. Und das alles zusammen

00:33:46: wird dann nochmal das Ergebnis stark verbessern. Also das Multivariate, das ich andere Zeitreihen

00:33:52: mit dazu nehme, plus diese Konstanten, die Beschreibung der Umgebungen, in der ich mich gerade

00:33:57: befinde. Sehr, sehr spannend. Wir drücken die Daumen für die nächsten Releases. Alles Gute und

00:34:03: vielen Dank und schöne Grüße nach Linz. Dankeschön, Grüße zurück.

Neuer Kommentar

Dein Name oder Pseudonym (wird öffentlich angezeigt)
Mindestens 10 Zeichen
Durch das Abschicken des Formulars stimmst du zu, dass der Wert unter "Name oder Pseudonym" gespeichert wird und öffentlich angezeigt werden kann. Wir speichern keine IP-Adressen oder andere personenbezogene Daten. Die Nutzung deines echten Namens ist freiwillig.