This machine learning course is intended for students who have basic knowledge of the field, yet they find advanced machine learning topics difficult to understand. The course should help such students to get familiar with topics being in between introductory and advanced level. We will focus on machine learning topics that cover both data analysis and learning algorithms, with emphasis on the importance of rigorous evaluation. Mastering model selection undoubtedly belongs to the most ambitious goals in the field of machine learning. This is why our main motivation for selecting particular topics was to orientate students towards model selection in practice. Each topic will be addressed both theoretically and practically, and will be illustrated on natural language processing tasks using the R system. Finally, all discussed topics will be practically demonstrated on model assessment and selection. Students will gain a deeper insight into the field of machine learning and will take important steps towards becoming experts.