Mustersprache architektur

Zusätzlich zu ADLs können DSLs verwendet werden, um Softwarearchitekturen zu beschreiben. Architekturzentrierte DSLs werden in der Regel für eine bestimmte Domäne oder sogar ein bestimmtes System entwickelt und unterstützen die automatische Generierung der Systemimplementierung und bestimmte Arten der automatischen Analyse [37]. UML (Unified Modeling Language) – UML ist eine der objektorientierten Lösungen, die in der Softwaremodellierung und im Design verwendet werden. Kriterien für die Abdeckung struktureller Modelle. Ein Testkriterium, das für die abstrakte Darstellung der Softwareimplementierung definiert ist, wird als strukturelles Modellabdeckungskriterium bezeichnet. Es nutzt die Struktur des Modells, z. B. die Knoten und Bogen eines übergangsbasierten Modells, und ist spezifisch für jede Art von Modellierungsnotation. Die Hauptfamilien der Kriterien für die Abdeckung struktureller Modelle sind: kontrollflussorientierte Abdeckungskriterien, datenflussorientierte Abdeckungskriterien, übergangsbasierte Abdeckungskriterien, UML-basierte Abdeckungskriterien. Im Vergleich zu bestehenden Ansätzen (vgl. Abschnitt 7.2) kombiniert der vorgeschlagene Ansatz die Vorteile von abfragesprachbasierten Ansätzen und Reflexionsmodellierung.

Während die ersten eine große Ausdruckskraft haben, wird ihre Integration in modellbasierte Ansätze nicht durch aktuelle Werkzeugunterstützung bereitgestellt. Dies wird durch den vorgeschlagenen Ansatz verbessert, da die Definition von Architekturregeln leicht in beliebige Metamodelle integriert werden kann. Andere abfragebasierte Ansätze verfügen nach bestem Wissen und Gewissen nicht über diese Eigenschaft. Die Vortrainingsaufgabe für GPT-2 ist ausschließlich die Sprachmodellierung. Alle nachgelagerten Sprachaufgaben werden als Vorhersage bedingter Wahrscheinlichkeiten gerahmt, und es gibt keine aufgabenspezifische Feinabstimmung. Schräge dreieckige Lernraten (STLR) beziehen sich auf eine spezielle Lernrate-Planung, die zuerst linear die Lernrate erhöht und dann linear zerfällt. Die Erhöhungsstufe ist kurz, so dass das Modell schnell zu einem Parameterraum konvergieren kann, der für die Aufgabe geeignet ist, während die Zerfallsperiode lang ist und eine bessere Feinabstimmung ermöglicht. Die Systemtechnik-Community verwendet eine Architekturbeschreibungssprache als Sprache und/oder ein konzeptionelles Modell, um Systemarchitekturen zu beschreiben und darzustellen. Auf der Implementierungsebene muss der Aufwand für die Implementierung eines Dokumenten-Wrappers erreicht werden, was die Definition der konzeptionellen Transformation noch verstärkt. Obwohl die Transformation manuell und prozedural implementiert wird und der Aufwand wahrscheinlich durch den Einsatz von Modelltransformationstechniken reduziert werden könnte, ist der Aufwand für die Wrapperentwicklung relativ gering: Der implementierte UML-Wrapper benötigt etwa 800 Codezeilen.

Die Hilfsaufgaben werden nur in der ersten Schicht mit vorwärts- oder rückwärts gerichtetem LSTM-Status gespeist. Da sie nur einen partiellen Kontext beobachten, entweder links oder rechts, müssen sie wie ein Sprachmodell lernen und versuchen, das nächste Token angesichts des Kontexts vorherzusagen. Die Hilfsaufgaben fwd und bwd gehen nur in eine Richtung. Die zukünftigen und vergangenen Aufgaben gehen einen Schritt weiter in Vorwärts- bzw. Rückwärtsrichtung. Abb. 3. Das biLSTM Basismodell von ELMo. (Bildquelle: basierend auf der Figur in “Neural Networks, Types, and Functional Programming” von Christopher Olah neu erstellt.) Das substanziellste Upgrade, das OpenAI GPT vorgeschlagen hat, besteht darin, das aufgabenspezifische Modell loszuwerden und das vortrainierte Sprachmodell direkt zu verwenden! Das allmähliche Einfrieren hilft, das katastrophale Vergessen zu vermeiden, indem die Modellschichten ab der letzten allmählich enthemitiert werden.

Posted in Uncategorized.