Learning rational stochastic languages