class_docstr: MacridVAE is an item-based collaborative filtering model that learns disentangled representations from user
  behavior and simultaneously ranks all items for each user.
  
  We implement the model following the original author.
class_docstr_tok: ["MacridVAE","is","an","item-based","collaborative","filtering","model","that","learns","disentangled","representations","from","user","behavior","and","simultaneously","ranks","all","items","for","each","user",".","We","implement","the","model","following","the","original","author","."]
code: def reparameterize(self, mu, logvar):
      if self.training:
          std = torch.exp(0.5 * logvar)
          epsilon = torch.zeros_like(std).normal_(mean=0, std=self.std)
          return mu + epsilon * std
      else:
          return mu
  
file_path: RecBole/recbole/model/general_recommender/macridvae.py
imports: import torch
  import torch.nn
  import torch.nn.functional
  from recbole.model.abstract_recommender import AutoEncoderMixin, GeneralRecommender
  from recbole.model.init import xavier_normal_initialization
  from recbole.model.loss import EmbLoss
  from recbole.utils import InputType
label_desc: Use image node_id 3 for calling the MacridVAE obj's underlying member method code with example usage: obj.reparameterize(mu, logvar) and returns: unknown, mu