Move activations, metrics, optimizers and regularizers (#94)

This commit is contained in:
Ben
2017-06-15 19:15:59 -04:00
committed by Michael Oliver
parent 58a0d51ae6
commit ef2daecc58
18 changed files with 30 additions and 68 deletions
-3
View File
@@ -1,3 +0,0 @@
from __future__ import absolute_import
from . import backend as K
from keras.activations import *
-2
View File
@@ -1,2 +0,0 @@
from . import backend as K
from keras.metrics import *
View File
-3
View File
@@ -1,3 +0,0 @@
from __future__ import absolute_import
from . import backend as K
from keras.optimizers import *
-3
View File
@@ -1,3 +0,0 @@
from __future__ import absolute_import
from . import backend as K
from keras.regularizers import *
View File
@@ -1,10 +1,6 @@
import pytest
import numpy as np
from numpy.testing import assert_allclose
from keras import backend as K
from keras_contrib import backend as KC
from keras_contrib import activations
def get_standard_values():
@@ -15,5 +11,5 @@ def get_standard_values():
return np.array([[0, 0.1, 0.5, 0.9, 1.0]], dtype=K.floatx())
if __name__ == '__main__':
pytest.main([__file__])
def validate_activation(activation):
activation(get_standard_values())
+13
View File
@@ -0,0 +1,13 @@
import numpy as np
from keras import backend as K
all_metrics = []
all_sparse_metrics = []
def validate_metric(metric):
y_a = K.variable(np.random.random((6, 7)))
y_b = K.variable(np.random.random((6, 7)))
output = metric(y_a, y_b)
assert K.eval(output).shape == ()
@@ -1,13 +1,12 @@
from __future__ import print_function
from keras.utils.test_utils import get_test_data
from keras.models import Sequential
from keras.layers.core import Dense, Activation
from keras.utils.np_utils import to_categorical
from keras_contrib import optimizers
import pytest
import numpy as np
np.random.seed(1337)
import numpy as np
from keras.layers.core import Dense, Activation
from keras.models import Sequential
from keras.utils.np_utils import to_categorical
from keras.utils.test_utils import get_test_data
np.random.seed(1337)
(X_train, y_train), (X_test, y_test) = get_test_data(num_train=1000,
num_test=200,
@@ -27,7 +26,7 @@ def get_model(input_dim, nb_hidden, output_dim):
return model
def _test_optimizer(optimizer, target=0.89):
def validate_optimizer(optimizer, target=0.89):
model = get_model(X_train.shape[1], 10, y_train.shape[1])
model.compile(loss='categorical_crossentropy',
optimizer=optimizer,
@@ -37,7 +36,3 @@ def _test_optimizer(optimizer, target=0.89):
config = optimizer.get_config()
assert type(config) == dict
assert history.history['val_acc'][-1] >= target
if __name__ == '__main__':
pytest.main([__file__])
@@ -1,16 +1,11 @@
from keras.models import Sequential
from keras.layers import Dense
from keras.layers import Activation
from keras.layers import Flatten
from keras.layers import ActivityRegularization
from keras.layers import Embedding
from keras.datasets import mnist
from keras.utils import np_utils
from keras_contrib import regularizers
import pytest
import numpy as np
np.random.seed(1337)
from keras.datasets import mnist
from keras.layers import Activation
from keras.layers import Dense
from keras.models import Sequential
from keras.utils import np_utils
np.random.seed(1337)
nb_classes = 10
batch_size = 128
@@ -40,7 +35,7 @@ def get_data():
return (X_train, Y_train), (X_test, Y_test), test_ids
def create_model(weight_reg=None, activity_reg=None):
def validate_regularizer(weight_reg=None, activity_reg=None):
model = Sequential()
model.add(Dense(50, input_shape=(784,)))
model.add(Activation('relu'))
@@ -48,7 +43,3 @@ def create_model(weight_reg=None, activity_reg=None):
activity_regularizer=activity_reg))
model.add(Activation('softmax'))
return model
if __name__ == '__main__':
pytest.main([__file__])
-22
View File
@@ -1,22 +0,0 @@
import pytest
import numpy as np
from keras import backend as K
from keras_contrib import backend as KC
from keras_contrib import metrics
all_metrics = []
all_sparse_metrics = []
def test_metrics():
y_a = K.variable(np.random.random((6, 7)))
y_b = K.variable(np.random.random((6, 7)))
for metric in all_metrics:
output = metric(y_a, y_b)
assert K.eval(output).shape == ()
if __name__ == '__main__':
pytest.main([__file__])