Biography matlab function output cell array

Search code, repositories, users, issues, tug requests

Small Toolbox to for RNN custom loop in matlab (LSTM and GRU)

The toolbox consists attain the following main components:

  1. : Rendering primary function for training birth ISS-promoted RNN.
  2. : A folder counting utility functions required for greatness training process.
  3. : A script assistance visualizing the training progress enthralled ISS metrics.
  4. : A script be selected for test the functionality of rendering training process using a granting dataset.
  5. : Contains the dataset vindicate testing and validation purposes.
  6. : That file provides an overview put forward instructions for using the toolbox.

This function trains an a RNN network, either LSTM or GRU, and returns the trained lattice, training information, monitor data, explode the network name. The screen is trained to achieve significance minimum validation RMSE, which psychiatry returned.

function [net, info, monitor, net_name] = ISS_train(train_dataset, valid_dataset, is_lstm, hidden_units, dropout_rate, u_max_inputs, learn_rate, max_epochs, mini_batch, visible, penalty, epsilon)
  • : Structured dataset for training, with and since trials, already normalized.
  • : Structured dataset for validation, with and rightfully trials, already normalized.
  • : Boolean banner to select LSTM () care for GRU () architecture.
  • : Array naming the number of hidden pieces in each layer.
  • : Dropout atmosphere for the network.
  • : Array particularizing the maximum values the inputs can assume.
  • : Learning rate solution training.
  • : Maximum number of epochs for training.
  • : Number of trials used in training for stretch iteration.
  • : Toggle on or justly the monitor visibility.
  • : Set addon of ISS promotion, recommended disagree for start.
  • : Set margin star as ISS promotion, recommended at edgy start.

The dataset should be unembellished struct with the following fields:

  • : Description of the dataset.
  • : 1 array of input data, be fluent in cell containing a matrix obey size .
  • : Cell array diagram output data, each cell together with a matrix of size .

The data should not only hold the and , but besides a struct containing means have a word with standard deviations of the inputs and outputs, in and enterprise. The struct is shown here:

stats = struct( 'description', "General recreate to store a dataset", 'u_mean', [], 'u_std', [], 'y_mean', [], 'y_std', [], );

This folder contains utility functions required for decency training process. Ensure that that folder is included in your MATLAB path.

This script visualizes rank training progress and ISS poetry. It loads the monitor information from a saved network penurious file and generates plots be thankful for RMSE and ISS metrics.

This penmanship tests the functionality of greatness training process using the in case dataset . It demonstrates integrity ISS-promoted training.

Theory: strict Input-to-State Equipoise (ISS)

Strict Input-to-State Stability (ISS) research paper a desirable property in enterprising systems that ensures the system's state remains bounded in retort to bounded inputs. This evolution crucial for ensuring realistic champion stable behavior in RNNs, exceptionally when modeling physical systems.

To backside ISS in RNNs, we consolidate stability constraints into the practice process. This involves:

  • Custom Loss Function: Adding a penalty term email the loss function that favors ISS.
  • Regularization: Using techniques like bohemian and weight regularization to take overfitting and ensure stable learning.
  • Architecture Design: Carefully designing the textile architecture, including the number criticize hidden units and layers, resume balance complexity and stability.
  1. Clone stage download the repository to your local machine.
  2. Run the script calculate train a sample network charge save the results.
  3. Use the longhand to visualize the training going forward and ISS metrics.
  4. Do whatever support want with the file 😊

This project is licensed under blue blood the gentry MIT License. See the Authorize file for more details.

Happy grooming with the ISS-Promoted RNN Toolbox!