Several minibatch parameters

Usually the minibatch are synchronised, at least for vector with the same length. You can validate it with something like:

X = np.repeat(np.arange(100), 5).reshape(100, 5)
y = np.arange(100)
xm = pm.Minibatch(X)
ym = pm.Minibatch(y)
print(xm.eval(), ym.eval())

However, in your case since there are multiple dimension, you should check the minibatch by doing .eval(). I feel like since you are minibatching the mask maybe you dont need to minibatch the data (data_r_mb and data_i_mb not needed)?