--- Model Summary (model.summary()) ---
Model: "sequential"
_________________________________________________________________
 Layer (type)                Output Shape              Param #   
=================================================================
 conv1d (Conv1D)             (None, 3000, 16)          96        
                                                                 
 max_pooling1d (MaxPooling1D  (None, 750, 16)          0         
 )                                                               
                                                                 
 conv1d_1 (Conv1D)           (None, 750, 32)           2592      
                                                                 
 max_pooling1d_1 (MaxPooling  (None, 187, 32)          0         
 1D)                                                             
                                                                 
 last_conv (Conv1D)          (None, 187, 64)           10304     
                                                                 
 max_pooling1d_2 (MaxPooling  (None, 46, 64)           0         
 1D)                                                             
                                                                 
 flatten (Flatten)           (None, 2944)              0         
                                                                 
 dense (Dense)               (None, 64)                188480    
                                                                 
 dropout (Dropout)           (None, 64)                0         
                                                                 
 dense_1 (Dense)             (None, 3)                 195       
                                                                 
=================================================================
Total params: 201,667
Trainable params: 201,667
Non-trainable params: 0
_________________________________________________________________

==================================================

--- Detailed Layer Information (model.layers) ---
Layer 0: conv1d (Type: Conv1D)
  Config: {'name': 'conv1d', 'trainable': True, 'dtype': 'float32', 'batch_input_shape': (None, 3000, 1), 'filters': 16, 'kernel_size': (5,), 'strides': (1,), 'padding': 'same', 'data_format': 'channels_last', 'dilation_rate': (1,), 'groups': 1, 'activation': 'relu', 'use_bias': True, 'kernel_initializer': {'class_name': 'GlorotUniform', 'config': {'seed': None}}, 'bias_initializer': {'class_name': 'Zeros', 'config': {}}, 'kernel_regularizer': None, 'bias_regularizer': None, 'activity_regularizer': None, 'kernel_constraint': None, 'bias_constraint': None}
  Input shape: (None, 3000, 1)
  Output shape: (None, 3000, 16)
  Conv1D - Filters: 16
  Conv1D - Kernel Size: 5
  Conv1D - Strides: 1
  Conv1D - Padding: same
  Conv1D - Activation: relu
  Conv1D - Data Format: channels_last
  Conv1D - Bias is used.
------------------------------
Layer 1: max_pooling1d (Type: MaxPooling1D)
  Config: {'name': 'max_pooling1d', 'trainable': True, 'dtype': 'float32', 'strides': (4,), 'pool_size': (4,), 'padding': 'valid', 'data_format': 'channels_last'}
  Input shape: (None, 3000, 16)
  Output shape: (None, 750, 16)
  Pooling1D - Pool Size: 4
  Pooling1D - Strides: 4
  Pooling1D - Padding: valid
  Pooling1D - Data Format: channels_last
------------------------------
Layer 2: conv1d_1 (Type: Conv1D)
  Config: {'name': 'conv1d_1', 'trainable': True, 'dtype': 'float32', 'filters': 32, 'kernel_size': (5,), 'strides': (1,), 'padding': 'same', 'data_format': 'channels_last', 'dilation_rate': (1,), 'groups': 1, 'activation': 'relu', 'use_bias': True, 'kernel_initializer': {'class_name': 'GlorotUniform', 'config': {'seed': None}}, 'bias_initializer': {'class_name': 'Zeros', 'config': {}}, 'kernel_regularizer': None, 'bias_regularizer': None, 'activity_regularizer': None, 'kernel_constraint': None, 'bias_constraint': None}
  Input shape: (None, 750, 16)
  Output shape: (None, 750, 32)
  Conv1D - Filters: 32
  Conv1D - Kernel Size: 5
  Conv1D - Strides: 1
  Conv1D - Padding: same
  Conv1D - Activation: relu
  Conv1D - Data Format: channels_last
  Conv1D - Bias is used.
------------------------------
Layer 3: max_pooling1d_1 (Type: MaxPooling1D)
  Config: {'name': 'max_pooling1d_1', 'trainable': True, 'dtype': 'float32', 'strides': (4,), 'pool_size': (4,), 'padding': 'valid', 'data_format': 'channels_last'}
  Input shape: (None, 750, 32)
  Output shape: (None, 187, 32)
  Pooling1D - Pool Size: 4
  Pooling1D - Strides: 4
  Pooling1D - Padding: valid
  Pooling1D - Data Format: channels_last
------------------------------
Layer 4: last_conv (Type: Conv1D)
  Config: {'name': 'last_conv', 'trainable': True, 'dtype': 'float32', 'filters': 64, 'kernel_size': (5,), 'strides': (1,), 'padding': 'same', 'data_format': 'channels_last', 'dilation_rate': (1,), 'groups': 1, 'activation': 'relu', 'use_bias': True, 'kernel_initializer': {'class_name': 'GlorotUniform', 'config': {'seed': None}}, 'bias_initializer': {'class_name': 'Zeros', 'config': {}}, 'kernel_regularizer': None, 'bias_regularizer': None, 'activity_regularizer': None, 'kernel_constraint': None, 'bias_constraint': None}
  Input shape: (None, 187, 32)
  Output shape: (None, 187, 64)
  Conv1D - Filters: 64
  Conv1D - Kernel Size: 5
  Conv1D - Strides: 1
  Conv1D - Padding: same
  Conv1D - Activation: relu
  Conv1D - Data Format: channels_last
  Conv1D - Bias is used.
------------------------------
Layer 5: max_pooling1d_2 (Type: MaxPooling1D)
  Config: {'name': 'max_pooling1d_2', 'trainable': True, 'dtype': 'float32', 'strides': (4,), 'pool_size': (4,), 'padding': 'valid', 'data_format': 'channels_last'}
  Input shape: (None, 187, 64)
  Output shape: (None, 46, 64)
  Pooling1D - Pool Size: 4
  Pooling1D - Strides: 4
  Pooling1D - Padding: valid
  Pooling1D - Data Format: channels_last
------------------------------
Layer 6: flatten (Type: Flatten)
  Config: {'name': 'flatten', 'trainable': True, 'dtype': 'float32', 'data_format': 'channels_last'}
  Input shape: (None, 46, 64)
  Output shape: (None, 2944)
  Flatten - Data Format: channels_last
------------------------------
Layer 7: dense (Type: Dense)
  Config: {'name': 'dense', 'trainable': True, 'dtype': 'float32', 'units': 64, 'activation': 'relu', 'use_bias': True, 'kernel_initializer': {'class_name': 'GlorotUniform', 'config': {'seed': None}}, 'bias_initializer': {'class_name': 'Zeros', 'config': {}}, 'kernel_regularizer': None, 'bias_regularizer': None, 'activity_regularizer': None, 'kernel_constraint': None, 'bias_constraint': None}
  Input shape: (None, 2944)
  Output shape: (None, 64)
  Dense - Units: 64
  Dense - Activation: relu
  Dense - Bias is used.
------------------------------
Layer 8: dropout (Type: Dropout)
  Config: {'name': 'dropout', 'trainable': True, 'dtype': 'float32', 'rate': 0.2, 'noise_shape': None, 'seed': None}
  Input shape: (None, 64)
  Output shape: (None, 64)
  Dropout - Rate: 0.2
------------------------------
Layer 9: dense_1 (Type: Dense)
  Config: {'name': 'dense_1', 'trainable': True, 'dtype': 'float32', 'units': 3, 'activation': 'linear', 'use_bias': True, 'kernel_initializer': {'class_name': 'GlorotUniform', 'config': {'seed': None}}, 'bias_initializer': {'class_name': 'Zeros', 'config': {}}, 'kernel_regularizer': None, 'bias_regularizer': None, 'activity_regularizer': None, 'kernel_constraint': None, 'bias_constraint': None}
  Input shape: (None, 64)
  Output shape: (None, 3)
  Dense - Units: 3
  Dense - Activation: linear
  Dense - Bias is used.
------------------------------

==================================================

--- Overall Model Input/Output ---
Model Inputs: [<KerasTensor: shape=(None, 3000, 1) dtype=float32 (created by layer 'conv1d_input')>]
Model Outputs: [<KerasTensor: shape=(None, 3) dtype=float32 (created by layer 'dense_1')>]
