HTTP Adaptive Streaming has become a popular solution for multimedia delivery nowadays. However, due to network bandwidth fluctuations, video quality strongly varies during streaming. Therefore, a key challenge in HTTP Adaptive Streaming is how to evaluate the overall quality of a streaming session. In this article, a machine learning approach is proposed for overall quality prediction, where each segment in a streaming session is represented by a set of features. Two options of the feature set are investigated. In the first option, we use four features, namely segment quality, content characteristics, stalling duration, and padding. The second option consists of three features, namely bitstream-level parameters, stalling duration, and padding. The features are fed into a Long Short Term Memory (LSTM) network that is capable of exploring temporal relations between impairment events of quality variations and stalling events. The overall quality is predicted from the outputs of the LSTM network using a linear regression module. Through experimental results, it is shown that the proposed approach achieves a high prediction performance and outperforms seven existing approaches. Especially, the second option is found to be both efficient and effective. The source code of the proposed approach has been made available to the public.