Programming Collective Intelligence
I read the second chapter in that book for my project on recommendation systems. It is an awesome book and it starts by addressing concepts from the basics( At least chapter 2 was like that). Book explains concepts with python. You will need a bit of knowledge on python basics . The book transits slowly from beginner to an intermediate level. Hope this answers your question. I would recommend it.