Training settings
Please provide a valid training processor option
Audio training options
Neural network architecture
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Reshape, Conv1D, MaxPooling1D, Dropout, Flatten
from tensorflow.keras.optimizers.legacy import Adam
from tensorflow.keras import regularizers
# Hyperparameters
EPOCHS = args.epochs or 100
LEARNING_RATE = args.learning_rate or 0.005
ENSURE_DETERMINISM = args.ensure_determinism
BATCH_SIZE = args.batch_size or 32
# Shuffle and batch datasets
if not ENSURE_DETERMINISM:
train_dataset = train_dataset.shuffle(buffer_size=BATCH_SIZE * 4)
train_dataset = train_dataset.batch(BATCH_SIZE, drop_remainder=False)
validation_dataset = validation_dataset.batch(BATCH_SIZE, drop_remainder=False)
# Model architecture
model = Sequential()
model.add(Reshape((int(input_length / 13), 13), input_shape=(input_length, )))
# Conv1D with L2 Regularization
model.add(Conv1D(8, kernel_size=3, padding='same', activation='relu',
kernel_regularizer=regularizers.l2(0.01)))
model.add(MaxPooling1D(pool_size=2, strides=2, padding='same'))
model.add(Dropout(0.25))
# Conv1D with L1 Regularization
model.add(Conv1D(16, kernel_size=3, padding='same', activation='relu',
kernel_regularizer=regularizers.l1(0.01)))
model.add(MaxPooling1D(pool_size=2, strides=2, padding='same'))
model.add(Dropout(0.25))
# Flatten layer
model.add(Flatten())
# Dense with combined L1 and L2 Regularization
model.add(Dense(classes, name='y_pred', activation='softmax',
kernel_regularizer=regularizers.l1_l2(l1=0.01, l2=0.01)))
# Optimizer
opt = Adam(learning_rate=LEARNING_RATE, beta_1=0.9, beta_2=0.999)
# Compile model
model.compile(loss='categorical_crossentropy', optimizer=opt, metrics=['accuracy'])
# Callbacks
callbacks = []
callbacks.append(BatchLoggerCallback(BATCH_SIZE, train_sample_count, epochs=EPOCHS, ensure_determinism=ENSURE_DETERMINISM))
# Train the neural network
model.fit(train_dataset, epochs=EPOCHS, validation_data=validation_dataset, verbose=2, callbacks=callbacks)
# Optional: Disable per-channel quantization
disable_per_channel_quantization = False
Input layer (624 features)
Select a scoring function
Dense layer (20 neurons)
Dense layer (10 neurons)
Output layer (3 classes)
Model
Model version: