Edge Impulse Experts / Latte Panda IOTA Punch Card Public

Training settings

Please provide a valid number of training cycles (numeric only)
Please provide a valid number for the learning rate (between 0 and 1)
Please provide a valid training processor option

Augmentation settings

Advanced training settings

Neural network architecture

import tensorflow as tf from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense, InputLayer, Dropout, Conv1D, Conv2D, Flatten, Reshape, MaxPooling1D, MaxPooling2D, AveragePooling2D, BatchNormalization, Permute, ReLU, Softmax, Activation from tensorflow.keras.optimizers.legacy import Adam from ei_tensorflow.velo import train_keras_model_with_velo EPOCHS = args.epochs or 50 # If True, non-deterministic functions (e.g. shuffling batches) are not used. # This is False by default. ENSURE_DETERMINISM = args.ensure_determinism # this controls the batch size, or you can manipulate the tf.data.Dataset objects yourself BATCH_SIZE = args.batch_size or 32 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(Conv2D(16, kernel_size=3, kernel_constraint=tf.keras.constraints.MaxNorm(1), padding='same', activation='relu')) model.add(MaxPooling2D(pool_size=2, strides=2, padding='same')) model.add(Conv2D(32, kernel_size=3, kernel_constraint=tf.keras.constraints.MaxNorm(1), padding='same', activation='relu')) model.add(MaxPooling2D(pool_size=2, strides=2, padding='same')) model.add(Flatten()) model.add(Dropout(0.25)) model.add(Dense(classes, name='y_pred', activation='softmax')) callbacks.append(BatchLoggerCallback(BATCH_SIZE, train_sample_count, epochs=EPOCHS, ensure_determinism=ENSURE_DETERMINISM)) # train the neural network train_keras_model_with_velo( keras_model=model, training_data=train_dataset, validation_data=validation_dataset, loss_fn=tf.keras.metrics.categorical_crossentropy, num_epochs=EPOCHS, callbacks=callbacks ) # Use this flag to disable per-channel quantization for a model. # This can reduce RAM usage for convolutional models, but may have # an impact on accuracy. disable_per_channel_quantization = False
Input layer (9,216 features)
2D conv / pool layer (16 filters, 3 kernel size, 1 layer)
2D conv / pool layer (32 filters, 3 kernel size, 1 layer)
Flatten layer
Dropout (rate 0.25)
Output layer (7 classes)

Model

Model version: