Added multiple results and error analysis
This commit is contained in:
+21
-13
@@ -31,30 +31,40 @@ from prepare_data import *
|
||||
# data = Data('l', save_generated_data=False, number_of_syllables=True)
|
||||
|
||||
# syllabled letters
|
||||
data = Data('l', save_generated_data=False, accent_classification=True)
|
||||
data = Data('s', save_generated_data=False, accent_classification=True)
|
||||
data.generate_data('letters_word_accetuation_train',
|
||||
'letters_word_accetuation_test',
|
||||
'letters_word_accetuation_validate', content_name='SlovarIJS_BESEDE_utf8.lex',
|
||||
content_shuffle_vector='content_shuffle_vector', shuffle_vector='shuffle_vector',
|
||||
inputs_location='', content_location='')
|
||||
|
||||
# concatenate test and train data
|
||||
# data.x_train = np.concatenate((data.x_train, data.x_test), axis=0)
|
||||
# data.x_other_features_train = np.concatenate((data.x_other_features_train, data.x_other_features_test), axis=0)
|
||||
# data.y_train = np.concatenate((data.y_train, data.y_test), axis=0)
|
||||
|
||||
# concatenate all data
|
||||
data.x_train = np.concatenate((data.x_train, data.x_test, data.x_validate), axis=0)
|
||||
data.x_other_features_train = np.concatenate((data.x_other_features_train, data.x_other_features_test, data.x_other_features_validate), axis=0)
|
||||
data.y_train = np.concatenate((data.y_train, data.y_test, data.y_validate), axis=0)
|
||||
|
||||
num_examples = len(data.x_train) # training set size
|
||||
nn_output_dim = 13
|
||||
nn_hdim = 516
|
||||
batch_size = 16
|
||||
# actual_epoch = 1
|
||||
actual_epoch = 40
|
||||
actual_epoch = 20
|
||||
# num_fake_epoch = 2
|
||||
num_fake_epoch = 20
|
||||
|
||||
|
||||
|
||||
# letters
|
||||
conv_input_shape=(23, 36)
|
||||
# conv_input_shape=(23, 36)
|
||||
|
||||
# syllabled letters
|
||||
# conv_input_shape=(10, 5168)
|
||||
# conv_input_shape=(10, 252)
|
||||
|
||||
# syllables
|
||||
conv_input_shape=(10, 5168)
|
||||
|
||||
|
||||
# othr_input = (140, )
|
||||
@@ -62,11 +72,11 @@ othr_input = (150, )
|
||||
|
||||
conv_input = Input(shape=conv_input_shape, name='conv_input')
|
||||
# letters
|
||||
x_conv = Conv1D(115, (3), padding='same', activation='relu')(conv_input)
|
||||
x_conv = Conv1D(46, (3), padding='same', activation='relu')(x_conv)
|
||||
# x_conv = Conv1D(115, (3), padding='same', activation='relu')(conv_input)
|
||||
# x_conv = Conv1D(46, (3), padding='same', activation='relu')(x_conv)
|
||||
|
||||
# syllabled letters
|
||||
# x_conv = Conv1D(200, (2), padding='same', activation='relu')(conv_input)
|
||||
x_conv = Conv1D(200, (2), padding='same', activation='relu')(conv_input)
|
||||
x_conv = MaxPooling1D(pool_size=2)(x_conv)
|
||||
x_conv = Flatten()(x_conv)
|
||||
|
||||
@@ -76,9 +86,9 @@ x = concatenate([x_conv, othr_input])
|
||||
# x = Dense(1024, input_dim=(516 + 256), activation='relu')(x)
|
||||
x = Dense(256, activation='relu')(x)
|
||||
x = Dropout(0.3)(x)
|
||||
x = Dense(512, activation='relu')(x)
|
||||
x = Dense(256, activation='relu')(x)
|
||||
x = Dropout(0.3)(x)
|
||||
x = Dense(512, activation='relu')(x)
|
||||
x = Dense(256, activation='relu')(x)
|
||||
x = Dropout(0.3)(x)
|
||||
x = Dense(nn_output_dim, activation='sigmoid')(x)
|
||||
|
||||
@@ -94,8 +104,6 @@ model.compile(loss='binary_crossentropy', optimizer=opt, metrics=[actual_accurac
|
||||
history = model.fit_generator(data.generator('train', batch_size, content_name='SlovarIJS_BESEDE_utf8.lex', content_location=''),
|
||||
data.x_train.shape[0]/(batch_size * num_fake_epoch),
|
||||
epochs=actual_epoch*num_fake_epoch,
|
||||
validation_data=data.generator('test', batch_size, content_name='SlovarIJS_BESEDE_utf8.lex', content_location=''),
|
||||
validation_steps=data.x_test.shape[0]/(batch_size * num_fake_epoch),
|
||||
verbose=2
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user