Inference algorithms and learning theory for Bayesian sparse factor analysis