Problem with theano sparse matrix operations

Yeah this is a difficult issue. The out-of-box solution is to defined a model with theano.shared input and output, and update the value using {}.set_value() for each model. But with 30,000 model it is still a pain.
Maybe a minibatch+VI approach?