diff --git a/pom.xml b/pom.xml
index 92125e134d40e986a0662e2d61b5f9086e534bdb..3fa82503cdec845859ac58f9ef286943e175757f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -18,7 +18,7 @@
de.monticore.lang.monticar
cnn-train
- 0.3.11-SNAPSHOT
+ 0.3.12-SNAPSHOT
diff --git a/src/main/grammars/de/monticore/lang/monticar/CNNTrain.mc4 b/src/main/grammars/de/monticore/lang/monticar/CNNTrain.mc4
index 62d17919b9cd81bc9154568befb74e3afec23ce2..610834cafd86fde291686ffed49b1fc955d67d55 100644
--- a/src/main/grammars/de/monticore/lang/monticar/CNNTrain.mc4
+++ b/src/main/grammars/de/monticore/lang/monticar/CNNTrain.mc4
@@ -73,6 +73,7 @@ grammar CNNTrain extends de.monticore.lang.monticar.Common2, de.monticore.Number
| inv:"inv"
| poly:"poly"
| sigmoid:"sigmoid");
+
TrainContextValue implements ConfigValue = (cpu:"cpu" | gpu:"gpu");
interface OptimizerParamEntry extends Entry;
@@ -135,6 +136,8 @@ grammar CNNTrain extends de.monticore.lang.monticar.Common2, de.monticore.Number
interface AdamEntry extends OptimizerParamEntry;
AdamOptimizer implements OptimizerValue = name:"adam" ("{" params:AdamEntry* "}")?;
+ AdamWOptimizer implements OptimizerValue = name:"adamw" ("{" params:AdamEntry* "}")?;
+
interface RmsPropEntry extends OptimizerParamEntry;
RmsPropOptimizer implements OptimizerValue = name:"rmsprop" ("{" params:RmsPropEntry* "}")?;