EmbeddedMontiArc issueshttps://git.rwth-aachen.de/groups/monticore/EmbeddedMontiArc/-/issues2023-03-04T09:53:26+01:00https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/64MontiAnna Meta-Model2023-03-04T09:53:26+01:00Evgeny KusmenkoMontiAnna Meta-Model- [x] Please create a meta-model of a MontiAnna neural architecture as a class diagram
- [x] Please define the AdaNet model transformation performed on the metal model , e.g. using pseudo-code
- [x] Please define the EfficientNet model t...- [x] Please create a meta-model of a MontiAnna neural architecture as a class diagram
- [x] Please define the AdaNet model transformation performed on the metal model , e.g. using pseudo-code
- [x] Please define the EfficientNet model transformation performed on the neural architeture metal model , e.g. using pseudo-code
- [x] Please create object diagrams conforming to the meta-model for several steps of AdaNet / EfficientNet, cf. [OD ticket](https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/62)
- [x] Make set of slides available for the thesis (Create pictures or emadl descriptions for the object diagramm slides)Tobias HörnschemeyerNazish QamarTobias Hörnschemeyer2023-02-28https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/63Object diagrams for model transformations Configuration2023-03-04T11:01:11+01:00Evgeny KusmenkoObject diagrams for model transformations ConfigurationPlease create object diagrams representing the AST/symbol table of the configuration for several steps of each hyperparameter search algorithm you implementPlease create object diagrams representing the AST/symbol table of the configuration for several steps of each hyperparameter search algorithm you implementHiroshi HamanoAkashKumarDSHiroshi Hamano2023-02-28https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/62Object diagrams for model transformations Architecture2023-01-07T12:43:09+01:00Evgeny KusmenkoObject diagrams for model transformations ArchitecturePlease create object diagrams representing the AST/symbol table of a network architecture for several steps of each architecture search algorithm you implementPlease create object diagrams representing the AST/symbol table of a network architecture for several steps of each architecture search algorithm you implementTobias HörnschemeyerNazish QamarTobias Hörnschemeyer2022-12-13https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/61Ranges syntax2023-01-07T11:41:08+01:00Evgeny KusmenkoRanges syntaxMake sure you are using the range syntax of EmbeddedMontiArc languagescommons
use Commons2 grammar in ConfLang for thisMake sure you are using the range syntax of EmbeddedMontiArc languagescommons
use Commons2 grammar in ConfLang for thisHiroshi HamanoAkashKumarDSHiroshi Hamano2022-11-30https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/60Model for Hyperparameter Optimization2023-03-04T11:02:43+01:00Evgeny KusmenkoModel for Hyperparameter Optimization- please create an experiment in the mnistcalculator project to show which files are needed, how the project should be organized and where the hyperparam space is defined- please create an experiment in the mnistcalculator project to show which files are needed, how the project should be organized and where the hyperparam space is definedHiroshi HamanoAkashKumarDSHiroshi Hamano2023-02-28https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/59Fix ONNX pipeline2023-03-09T19:35:22+01:00Evgeny KusmenkoFix ONNX pipelineHi Lukas, it seems that one of your merges has broken the [ONNX pipeline](https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/pipelines/841093), could you please look into it.Hi Lukas, it seems that one of your merges has broken the [ONNX pipeline](https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/pipelines/841093), could you please look into it.Evgeny KusmenkoLukas BramEvgeny Kusmenko2023-03-10https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/58PrettyPrinter for ArchitectureSymbol2022-11-18T11:55:15+01:00Evgeny KusmenkoPrettyPrinter for ArchitectureSymbolplease create a prettyprinter for architecture symbols, so that we can get textual MontiAnna models for given Architecture symbolsplease create a prettyprinter for architecture symbols, so that we can get textual MontiAnna models for given Architecture symbolsTobias HörnschemeyerNazish QamarTobias Hörnschemeyer2022-11-21https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/57Input of hyperparameter configuration optimization2023-02-11T11:51:00+01:00Evgeny KusmenkoInput of hyperparameter configuration optimizationInput and output of hyperparameter configuration optimization should be the Configuration object (get in touch with @feras.m94.4 to find out which class he uses)Input and output of hyperparameter configuration optimization should be the Configuration object (get in touch with @feras.m94.4 to find out which class he uses)Hiroshi HamanoAkashKumarDSHiroshi Hamano2022-11-30https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/56Input output of architecture search should be ArchitectureSymbol2022-11-25T12:44:31+01:00Evgeny KusmenkoInput output of architecture search should be ArchitectureSymbolMake sure an architecture optimizer takes ArchitetureSymbol as input and has an ArchitectureSymbol as output.
The output AS is then given to the pipeline / code generator , evaluated and the AutoML algoirthm gets the new AS and the eval ...Make sure an architecture optimizer takes ArchitetureSymbol as input and has an ArchitectureSymbol as output.
The output AS is then given to the pipeline / code generator , evaluated and the AutoML algoirthm gets the new AS and the eval metric as input for the next iterationTobias HörnschemeyerNazish QamarTobias Hörnschemeyer2022-11-23https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/cnnarch2x/-/issues/4Generation of python training configuration2023-01-19T13:41:39+01:00Feras MulhemGeneration of python training configurationGenerate a Python class encapsulating a training configuration. The generation is broken down into mappings from ConfLang to Python.Generate a Python class encapsulating a training configuration. The generation is broken down into mappings from ConfLang to Python.Feras MulhemFeras Mulhem2022-11-30https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/54CustomLayerPyTorchTest2022-11-09T09:36:16+01:00Evgeny KusmenkoCustomLayerPyTorchTest- currently does not throw the expected exception although the output seems to be correct. Please analyse what the reason is and fix test- currently does not throw the expected exception although the output seems to be correct. Please analyse what the reason is and fix testTobias HörnschemeyerHiroshi HamanoTobias Hörnschemeyer2022-11-09https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/53Adanet: create different component search strategies2023-04-24T14:28:05+02:00Tobias HörnschemeyerAdanet: create different component search strategiesCurrently, the candidate search only focuses on components with the same depth or with depth + 1, while depth is the depth of the best component in the last iteration.
There might be other strategies to find components.Currently, the candidate search only focuses on components with the same depth or with depth + 1, while depth is the depth of the best component in the last iteration.
There might be other strategies to find components.Tobias HörnschemeyerNazish QamarTobias Hörnschemeyer2023-03-31https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/CNNArch2Gluon/-/issues/10Fix imports for reinforcement learning2022-11-11T19:35:43+01:00Evgeny KusmenkoFix imports for reinforcement learningLukas BramThilo MetzlaffLukas Bram2022-11-01https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/52Create parser for MontiAnna languages2022-11-27T11:35:22+01:00Feras MulhemCreate parser for MontiAnna languagesDifferent ways can be observed that are used to parse EMADL models and their related models. The goal of this issue is to modularise und unify the parsing interface.
**Included languages**
- ConfLang
- SchemaLang
- EmbeddedMontiArc (EMA...Different ways can be observed that are used to parse EMADL models and their related models. The goal of this issue is to modularise und unify the parsing interface.
**Included languages**
- ConfLang
- SchemaLang
- EmbeddedMontiArc (EMA)
**Tasks**
- [x] create parsing classes
- [x] parse a ConfLang configuration and return symbol-augmented AST
- [x] parse a SchemaLang schema and return symbol-augmented AST
- [x] parse an EMA model and return symbol-augmented AST
- [x] parse EMADL model with CNN architecture into symbol-augmented AST
- [x] test it on [LeNetNetwork](https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/blob/master/src/test/resources/models/mnist/LeNetNetwork.emadl)
**Notes**
- The lenet network is crucial for the [evaluation ](https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/applications/mnistpredictor) part and has priorityTobias HörnschemeyerFeras MulhemTobias Hörnschemeyer2022-11-28https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/51Create EfficientNet algorithm2022-11-25T12:44:31+01:00Evgeny KusmenkoCreate EfficientNet algorithmTobias HörnschemeyerNazish QamarTobias Hörnschemeyer2022-11-21https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/50Create AdaNet algorithm2022-11-16T16:07:55+01:00Evgeny KusmenkoCreate AdaNet algorithmTobias HörnschemeyerNazish QamarTobias Hörnschemeyer2022-11-21https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/49Create Workflow for Autonomous Pipeline Execution2023-01-28T22:17:41+01:00Evgeny KusmenkoCreate Workflow for Autonomous Pipeline ExecutionIn montipipes#1 a python script was generated to execute a python pipeline. In this issue **minimal** workflow shall be created to test functionality integration into the framework
**Tasks**
- [x] dedicated classes to execute the follow...In montipipes#1 a python script was generated to execute a python pipeline. In this issue **minimal** workflow shall be created to test functionality integration into the framework
**Tasks**
- [x] dedicated classes to execute the following steps
- [x] parsing
- [x] parse appropriate pipeline model
- [x] parse pipeline configuration
- [x] parse training configuration
- [x] symbol table for EMA pipeline
- [x] symbol table for training and pipeline configurations
- [x] check CoCos
- [x] inter-model validations (schemas / configurations):
- [x] generate backend-related artefacts
- [x] wrap EMADLGenerator with new main generator (MontiAnnaGenerator)
- [x] refactor MontiAnnaGenerator using EMADLGenerator functionality
- [x] provide python training configuration
- [x] use default if not generated
- [x] generate the configuration
- [x] choose the appropriate schema API
- [x] calculate execution semantic
- [x] generate pipeline script
- [x] execute pipeline
- [x] read results
- [x] Discuss TODOS
**Issues**
- [x] Problem with parsing LeNet model with generic parameters
**Notes**
- EMADLGenerator for inspiration
- Defaults are to be used to create quick demonstration
- Only PyTorch is supported as backend for nowTobias HörnschemeyerFeras MulhemNazish QamarTobias Hörnschemeyer2022-12-30https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/48Extend Conf Schema for Network Optimizers2022-11-07T10:24:57+01:00Evgeny KusmenkoExtend Conf Schema for Network Optimizerssimilarly to `optimizer:sgd {...}` we want to allow the definition of `network_optimizer` parameters. Since depending on the concrete optimizer it might have varying parameters, e.g. alpha, beta in the case of efficient net, it should be...similarly to `optimizer:sgd {...}` we want to allow the definition of `network_optimizer` parameters. Since depending on the concrete optimizer it might have varying parameters, e.g. alpha, beta in the case of efficient net, it should be written in a nested way similarly to the optimizer example as `network_optimizer:efficientnet {efficientnet specific params come here}` or `network_optimizer:adanet{adanetspecific params come here}`Hiroshi HamanoAkashKumarDSHiroshi Hamano2022-10-18https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/47Merge the branch ma_sc to new emadl2cpp2022-11-16T15:56:28+01:00Sonam Raju ChughMerge the branch ma_sc to new emadl2cppOnce new emadl2cpp is created-
Merge the test cases (GenerationTest.java, CustomLayerTest.java)(test cases for mnist, loadnetwork, custom layer)
Merge the Backend.java (which has new backend pytorch)
related branch: [ma_sc](https://git....Once new emadl2cpp is created-
Merge the test cases (GenerationTest.java, CustomLayerTest.java)(test cases for mnist, loadnetwork, custom layer)
Merge the Backend.java (which has new backend pytorch)
related branch: [ma_sc](https://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/tree/ma_sc)
**Tasks**
- [ ] perform a health check on the testsTobias HörnschemeyerFeras MulhemTobias Hörnschemeyerhttps://git.rwth-aachen.de/monticore/EmbeddedMontiArc/generators/EMADL2CPP/-/issues/46Please create a PyTorch docker image2022-11-09T09:25:16+01:00Evgeny KusmenkoPlease create a PyTorch docker image- under test/resources/pytorch
- create a CI pipeline building and pushing the image to the registry- under test/resources/pytorch
- create a CI pipeline building and pushing the image to the registrySonam Raju ChughSonam Raju Chugh