To compute the random transformations on the embeddings \(\mathbf {z}\) , we followed two techniques. We used Gaussian random projections with output dimension \(d\) , and transformed the embeddings \(\mathbf {z}\)  to the new space with dimension \(d\) . In Gaussian random projections, the projection matrix is generated by picking rows from a Gaussian distribution such that they are orthogonal. We also used diagonal transformation [1]} where we multiply \(\mathbf {z}\)  with a randomly generated diagonal matrix of the same dimension as \(\mathbf {z}\) . We initialized \(M\)  random transformations at the beginning and are kept fixed throughout the training.
