def cnn_model_max_and_aver_pool(self, kernel_sizes_cnn: List[int], filters_cnn: int, dense_size: int,<EOL>coef_reg_cnn: float = <NUM_LIT:0.>, coef_reg_den: float = <NUM_LIT:0.>, dropout_rate: float = <NUM_LIT:0.>,<EOL>input_projection_size: Optional[int] = None, **kwargs) -> Model:
inp = Input(shape=(self.opt['<STR_LIT>'], self.opt['<STR_LIT>']))<EOL>output = inp<EOL>if input_projection_size is not None:<EOL><INDENT>output = Dense(input_projection_size, activation='<STR_LIT:relu>')(output)<EOL><DEDENT>outputs = []<EOL>for i in range(len(kernel_sizes_cnn)):<EOL><INDENT>output_i = Conv1D(filters_cnn, kernel_size=kernel_sizes_cnn[i],<EOL>activation=None,<EOL>kernel_regularizer=l2(coef_reg_cnn),<EOL>padding='<STR_LIT>')(output)<EOL>output_i = BatchNormalization()(output_i)<EOL>output_i = Activation('<STR_LIT:relu>')(output_i)<EOL>output_i_0 = GlobalMaxPooling1D()(output_i)<EOL>output_i_1 = GlobalAveragePooling1D()(output_i)<EOL>output_i = Concatenate()([output_i_0, output_i_1])<EOL>outputs.append(output_i)<EOL><DEDENT>output = concatenate(outputs, axis=<NUM_LIT:1>)<EOL>output = Dropout(rate=dropout_rate)(output)<EOL>output = Dense(dense_size, activation=None,<EOL>kernel_regularizer=l2(coef_reg_den))(output)<EOL>output = BatchNormalization()(output)<EOL>output = Activation('<STR_LIT:relu>')(output)<EOL>output = Dropout(rate=dropout_rate)(output)<EOL>output = Dense(self.n_classes, activation=None,<EOL>kernel_regularizer=l2(coef_reg_den))(output)<EOL>output = BatchNormalization()(output)<EOL>act_output = Activation(self.opt.get("<STR_LIT>", "<STR_LIT>"))(output)<EOL>model = Model(inputs=inp, outputs=act_output)<EOL>return model<EOL>
Build un-compiled model of shallow-and-wide CNN where average pooling after convolutions is replaced with
concatenation of average and max poolings.

Args:
    kernel_sizes_cnn: list of kernel sizes of convolutions.
    filters_cnn: number of filters for convolutions.
    dense_size: number of units for dense layer.
    coef_reg_cnn: l2-regularization coefficient for convolutions. Default: ``0.0``.
    coef_reg_den: l2-regularization coefficient for dense layers. Default: ``0.0``.
    dropout_rate: dropout rate used after convolutions and between dense layers. Default: ``0.0``.
    input_projection_size: if not None, adds Dense layer (with ``relu`` activation)
                           right after input layer to the size ``input_projection_size``.
                           Useful for input dimentionaliry recuction. Default: ``None``.
    kwargs: other non-used parameters

Returns:
    keras.models.Model: uncompiled instance of Keras Model