Exemplo n.º 1
0
 def test_config(self):
     r2_obj = RSquare(name="r_square")
     self.assertEqual(r2_obj.name, "r_square")
     self.assertEqual(r2_obj.dtype, tf.float32)
     # Check save and restore config
     r2_obj2 = RSquare.from_config(r2_obj.get_config())
     self.assertEqual(r2_obj2.name, "r_square")
     self.assertEqual(r2_obj2.dtype, tf.float32)
Exemplo n.º 2
0
def test_config():
    r2_obj = RSquare(name="r_square")
    assert r2_obj.name == "r_square"
    assert r2_obj.dtype == tf.float32
    # Check save and restore config
    r2_obj2 = RSquare.from_config(r2_obj.get_config())
    assert r2_obj2.name == "r_square"
    assert r2_obj2.dtype == tf.float32
Exemplo n.º 3
0
def test_config(multioutput):
    r2_obj = RSquare(multioutput=multioutput, name="r_square")
    assert r2_obj.name == "r_square"
    assert r2_obj.dtype == tf.float32
    assert r2_obj.multioutput == multioutput
    # Check save and restore config
    r2_obj2 = RSquare.from_config(r2_obj.get_config())
    assert r2_obj2.name == "r_square"
    assert r2_obj2.dtype == tf.float32
    assert r2_obj2.multioutput == multioutput
Exemplo n.º 4
0
def test_keras_fit():
    model = tf.keras.Sequential([tf.keras.layers.Dense(1)])
    model.compile(loss="mse", metrics=[RSquare(y_shape=(1, ))])
    data = tf.data.Dataset.from_tensor_slices(
        (tf.random.normal(shape=(100, 1)), tf.random.normal(shape=(100, 1))))
    data = data.batch(10)
    model.fit(x=data, validation_data=data)
Exemplo n.º 5
0
    def _build_model(self) -> Sequential:
        model = Sequential()
        for state in self.sequence:
            if isinstance(state, Input):
                model.add(layers.Input(shape=(state.units,)))
            elif isinstance(state, Hidden):
                model.add(layers.Dense(units=state.units, activation=state.activation))
            elif isinstance(state, Dropout):
                model.add(layers.Dropout(rate=state.rate))
            elif isinstance(state, Output):
                model.add(layers.Dense(units=state.units, activation=state.activation))

        optimizer = OPTIMIZER
        if optimizer == 'adam':
            optimizer = Adam(LEARNING_RATE)
        elif optimizer == 'nadam':
            optimizer = Nadam(LEARNING_RATE)
        elif optimizer == 'rmsprop':
            optimizer = RMSprop(LEARNING_RATE)

        metrics = []
        for metric in METRICS:
            if metric == 'r_square':
                metric = RSquare(name=metric, y_shape=(1,))
            elif metric == 'rmse':
                metric = RootMeanSquaredError(metric)

            metrics.append(metric)

        model.compile(
            optimizer=optimizer,
            loss=LOSS,
            metrics=metrics
        )
        return model
Exemplo n.º 6
0
def initialize_vars(
    y_shape=(),
    multioutput: str = "uniform_average",
    num_regressors: tf.int32 = 0,
):
    return RSquare(y_shape=y_shape,
                   multioutput=multioutput,
                   num_regressors=num_regressors)
Exemplo n.º 7
0
 def initialize_vars(self):
     r2_obj = RSquare()
     self.evaluate(tf.compat.v1.variables_initializer(r2_obj.variables))
     return r2_obj
Exemplo n.º 8
0
def initialize_vars(y_shape=(), multioutput: str = "uniform_average"):
    return RSquare(y_shape=y_shape, multioutput=multioutput)
Exemplo n.º 9
0
 def initialize_vars(self, y_shape=(), multioutput: str = "uniform_average"):
     r2_obj = RSquare(y_shape=y_shape, multioutput=multioutput)
     self.evaluate(tf.compat.v1.variables_initializer(r2_obj.variables))
     return r2_obj