class_docstr: MultiVAE is an item-based collaborative filtering model that simultaneously ranks all items for each user.
  
  We implement the MultiVAE model with only user dataloader.
code: def mlp_layers(self, layer_dims):
      mlp_modules = []
      for i, (d_in, d_out) in enumerate(
          zip(layer_dims[:-1], layer_dims[1:])
      ):
          mlp_modules.append(nn.Linear(d_in, d_out))
          if i != len(layer_dims[:-1]) - 1:
              mlp_modules.append(nn.Tanh())
      return nn.Sequential(*mlp_modules)
  
file_path: RecBole/recbole/model/general_recommender/multivae.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.utils import InputType
label_desc: Use image node_id 2 for calling the MultiVAE obj's underlying member method code with example usage: obj.mlp_layers(layer_dims) and returns: nn