Introduction to natural language processing - Eisenstein, Jacob (Adaptive Computation and Machine Learning Series, 2019)