D20-based neural network architecture

[?]
Jul 6, 2021, 5:26 AM
6W7MFV2FWQEN2VSZILKAYIH2PJQ2YQKDAR7NMAB5NALGI3LCJLMQC

Dependencies

  • [2] TCMUFA6E Try some different hyperparameters
  • [3] EB3DTD43 Model trainer: use ground altitude instead of crust mass distribution
  • [4] 7ML3OFE7 Model trainer: initial train and visualize thread pair (total crust mass; todo: altitude instead)

Change contents

  • edit in trainmodel/src/model.py at line 5
    [3.22]
    [4.1194]
    def icosahedral(inputs):
    layer1 = keras.layers.Dense(20, activation=tf.math.asinh)(inputs)
    layer2 = keras.layers.Dense(20, activation=tf.math.asinh)(layer1)
    layer3 = keras.layers.Dense(20, activation=tf.math.asinh)(keras.layers.concatenate([layer1,layer2]))
    layer4 = keras.layers.Dense(20, activation=tf.math.asinh)(keras.layers.concatenate([layer1,layer2]))
    layer5 = keras.layers.Dense(20, activation=keras.activations.relu)(keras.layers.concatenate([layer2,layer3]))
    layer6 = keras.layers.Dense(20, activation=keras.activations.relu)(keras.layers.concatenate([layer2,layer4,layer5]))
    layer7 = keras.layers.Dense(20, activation=keras.activations.relu)(keras.layers.concatenate([layer5,layer6]))
    layer8 = keras.layers.Dense(20, activation=tf.math.asinh)(keras.layers.concatenate([layer3,layer5,layer7]))
    layer9 = keras.layers.Dense(20, activation=tf.math.asinh)(keras.layers.concatenate([layer4,layer6,layer7]))
    layer10 = keras.layers.Dense(20, activation=tf.math.asinh)(keras.layers.concatenate([layer7,layer8,layer9]))
    layer11 = keras.layers.Dense(20, activation=tf.math.asinh)(keras.layers.concatenate([layer1,layer3,layer8,layer10]))
    layer12 = keras.layers.Dense(20, activation=tf.math.asinh)(keras.layers.concatenate([layer1,layer4,layer9,layer10,layer11]))
    return keras.layers.concatenate([layer11,layer12])
  • replacement in trainmodel/src/model.py at line 23
    [4.1245][4.1245:1450](),[4.1450][2.0:138](),[2.138][4.1450:1668](),[4.1450][4.1450:1668]()
    layer = keras.layers.Dense(9, activation=tf.math.asinh)(inputs)
    layer = keras.layers.Dense(24, activation=tf.math.asinh)(layer)
    layer = keras.layers.Dense(240, activation=tf.math.asinh)(layer)
    layer = keras.layers.Dense(560, activation=tf.math.asinh)(layer)
    layer = keras.layers.Dense(560, activation=tf.math.asinh)(layer)
    layer = keras.layers.Dense(240, activation=tf.math.asinh)(layer)
    layer = keras.layers.Dense(24, activation=tf.math.asinh)(layer)
    outputs = keras.layers.Dense(1, activation=keras.activations.sigmoid)(layer)
    [4.1245]
    [4.1668]
    d1 = icosahedral(inputs)
    d2 = icosahedral(inputs)
    outputs = keras.layers.Dense(1, activation=keras.activations.sigmoid)(keras.layers.concatenate([d1,d2]))