Member
Beiträge: 11.010
Themen: 47
Registriert: Jan 2008
Ich sondiere mal, ob sich überhaupt jemand dafür interessiert

.
Seit kurzen (heute

) bin ich in der Lage, Röhrenmodelle zu erstellen, die mit einem neuronalen Netzwerk arbeiten. Die Genauigkeit ist unerreicht... hier mal ein Plot der Netzwerkausgabe (bunte Linien) auf einem Datenblatt:
Einen Probelauf in LTspice gab es inzwischen auch schon, sogar mit akzeptablem Tempo. Das Programm braucht ein paar Augenblicke, um die Schaltungsmatrix zu analysieren, aber dann rennt es.
Ich mach die Tage ein komplettes Modell für die ECC82 fertig, dann schiele ich vielleicht mal zu einer Pentode

. Da hat ja noch nie jemand was ordentliches zusammengekriegt...
Ups, ich fahr in 2 Tagen in Urlaub... da mach ich was anderes

. Soll ich überhaupt hier weitermachen?
Member
Beiträge: 1.799
Themen: 25
Registriert: Jan 2010
Finde ich sehr cool. Ich bin nur noch ein wenig am hadern mit der Unterscheidung zwischen der Aproximation durch ein neuronales Netz und der durch einen Gleichungssatz...wie stehen die beiden gegeneinander? Konvergenz, Rechenleistung, Präzision? Die Gleichungsmodelle laufen irgendwo dann weg, wenn man den vorgesehenen Bereich verlässt...was machen da die Netze?
Ich hätte gut Lust drauf das auch zu probieren, aber für Transistoren....kannst du ein wenig beschreiben was du getan hast?
Member
Beiträge: 11.010
Themen: 47
Registriert: Jan 2008
Die Präzision des neuronalen Netzwerkes ist durch Gleichungen nicht zu erreichen. Zumindest nicht bei so schrecklichen Bauteilen wie Röhren. NNs brauchen aber mehr Rechenleistung. Das Verhalten ausserhalb des Trainingsbereiches ist interessant und kommt der Natur von Röhren entgegen:
Das Datenblatt deckt nur den Bereich bis 375V/25mA ab (siehe oben).
Ein erstes Modell macht eine Menge Arbeit, der Workflow ist lang (und noch nicht ganz fertig). Angefangen wird mit der Digitalisierung eines Trainingsdatensatzes. Dann wird mit Python ein neuronales Netz dimensioniert und trainiert. Das Ergebnis (die Gewichtungen der Neuronen) wird gespeichert. Dann braucht man Scripte, die das Netzwerk in Spice übersetzen. Das kann man nicht von Hand schreiben. Am Ende bleibt noch eine Menge Handarbeit, um das lauffähig zu bekommen. ChatGPT hat geholfen, aber aus den vielen Sackgassen musste ich selbst herausfinden... Spice kann es nicht gut.
Member
Beiträge: 11.010
Themen: 47
Registriert: Jan 2008
19.06.2025, 09:46 PM
(Dieser Beitrag wurde zuletzt bearbeitet: 19.06.2025, 09:58 PM von kahlo.)
Das komplette Modell der ECC82 auf Basis eines neuronalen Netzwerks. Wahrscheinlich das genaueste, was es gibt

.
ECC82_nn.lib (Größe: 175,14 KB / Downloads: 17)
Und ein Testschaltkreis:
ECC82_nn_tran.asc (Größe: 841 Bytes / Downloads: 14)
Wenn ihr euch die Library mit einem Texteditor anseht, erkennt ihr einen gewissen Aufwand. Die perfekte Nachbildung der Kennlinien lässt mich vermuten, dass das Netzwerk etwas zu gross ist und hier noch gespart werden kann.
Member
Beiträge: 11.010
Themen: 47
Registriert: Jan 2008
Da die Sache noch am Anfang der Entwicklung ist, kann es dramatische Verbesserungen geben

. Eine simple Triode braucht anscheinend nur ein simples Netzwerk. Ich konnte auf 19 Neuronen reduzieren. Das hier reicht für eine akkurate Simulation:
Das ist nun wirklich rasend schnell in der Simulation

. Die .lib wurde von 175kB auf 5kB geschrumpft, das kann man fast von Hand eintapern

.
ECC82_3x8.lib (Größe: 4,06 KB / Downloads: 14)
Member
Beiträge: 11.010
Themen: 47
Registriert: Jan 2008
20.06.2025, 11:42 AM
(Dieser Beitrag wurde zuletzt bearbeitet: 20.06.2025, 11:58 AM von kahlo.)
Im vorigen Post habe ich es mit der Reduktion übertrieben: Ausserhalb des vom Datenblatt definierten Bereiches geht es nun wild durcheinander. Ich brauche also doch ein paar mehr Neuronen. Zur Zeit ist diese Struktur mein Favorit:
Das liefert auch ausserhalb des Datenblattbereiches sehr schöne Kurven und die Simulation ist immer noch sehr schnell

.
Damit ist das Kapitel ECC82 abgeschlossen:
ECC82_nn.lib (Größe: 7,67 KB / Downloads: 16)
Die Pentoden handle ich nach meinem Urlaub im inneren Bereich ab

.