I have a random variable X in R^{n, d}. “n” here can be interpreted as datapoints, and “d” are dimensions of interest.

Each dimension of X is independent, so X[:, i] ~ MVN(mu_i, sigma_i), however, I need to pass each datapoint in X[j, :] through a flow (of dimension d).

This throws an error:

```
import torch
import pyro.distributions as dist
n = 5; d = 2
mu = torch.ones((d, n))
sigma = torch.cat([torch.eye(n).unsqueeze(0) for i in range(d)])
mvn = dist.MultivariateNormal(mu, sigma)
flow = dist.TransformedDistribution(mvn, [dist.transforms.Planar(d)])
flow.sample() # error
```

Is there a way to achieve what I need in pyro?