CSI Feedback with Autoencoders

In MATLAB documentation for CSI Feedback with Autoencoders. The target standard deviation is 0.0212. How is it calculated

Answers (1)

Hi Anusaya,
In the context of the CSI Feedback with Autoencoders example in the MATLAB documentation, the target standard deviation value of 0.0212 is used to scale the input data to ensure that the neural network is able to learn effectively from the data while keeping the same order of magnitude as the weights.
The target standard deviation calculation used in this example is based on the following steps:
  1. Calculate the standard deviation of the input data: This involves computing the standard deviation of the input data matrix (X) along the feature dimension using the 'std' function.
  2. Calculate the scaling factor: The target standard deviation value is calculated by dividing the desired target standard deviation by the standard deviation of the input data matrix. In the example, the target standard deviation is set to 0.0212, so the scaling factor is calculated as follows:
target_std = 0.0212;
input_std = std(X, [], 1);
scaling_factor = target_std ./ input_std;
3. Scale the input data: The input data matrix can then be scaled by multiplying it by the scaling factor to obtain the scaled input data matrix (X_scaled). In the example, the scaling is performed using the following code:
X_scaled = X .* scaling_factor;
By scaling the input data using this approach, the neural network is expected to be able to learn from the data more effectively, and enable better convergence of the training process.
Hope it helps!

3 Comments

yes i understood the steps. But my question is the value 0.0212 is selected randomly after some trial and error or there is some procedure to obtain that target standard deviation =0.0212
The target standard deviation value is calculated by dividing the desired target standard deviation by the standard deviation of the input data matrix. What is desired target standard deviation?
stdVal = std(HtruncReal,[],'all'). HtruncReal is the dataset which is generated. Its standard deviation is coming to be 16.0984. So what is the meaning of desired target standard deviation?

Sign in to comment.

Products

Release

R2022b

Asked:

on 25 Mar 2023

Commented:

on 17 Aug 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!