Spike-based Expectation Maximization