0

I'm looking for a way to Build a deep neural network that produces output that is distributed as multivariate Standard normal distribution ~N(0,1).

I can use Pytorch or TensorFlow, whichever is easier for this task.

I actually have some input X, which in terms of this question can be assumed to be just a matrix of values ​​from the uniform distribution. I put the input into the network, whose architecture can currently change.

And I want to get output, so in addition to other requirements I will have from it. I want that if we represent the values ​​obtained by all the possible x's, we get that it looks like a multivariate standard normal distribution ~N(0,1).

What I think needs to be done for this to happen is to choose the right loss function. To do this, I thought of two ways:

  1. Use of statistical tests.
  2. A loss that tests a large number of properties (mean, standard deviation, ..).

Realizing 2 sounds complicated, so I started with 1.

I was looking for statistical tests already implemented in one of the packages ​​as a loss function, and I did not find anything like that. I implemented statistical tests by myself to obtain output that is univariate standard normal distribution - and it seemed to work relatively well. With the realization of multidimensional tests I became more entangled.

Do you know of any understandable tensorflow\pythorch functions that do something similar to what I'm trying to do? Do you have another idea for the operation? Do you have any comments regarding the methods I try to work with?

Thanks

Eko Shon
  • 11
  • 2

1 Answers1

0

Using pytorch functions can help you a lot. Considering that I don't know exactly what you will want with these results, I can refer you to pytorch with this link here.
In this link you will have all the pytorch loss functions and the calculations used in each one of them! just click on one and check how it works and see if it’s what you’re looking for.
For the second topic you can look at this same link I sent the BCEWithLogitcLoss function because it may be what you are looking for.

  • actually this is no what I look for. I know how to use pytorch and tensorflow. but both of them don't provide statistical tests, something like 'Mardia's test' for example, or 'shapiro wilk' for one dimentional data. – Eko Shon Nov 09 '20 at 15:39