Dear HN, I need some insight from you.
While I have very solid foundation when it comes to algorithms, unfortunately my math skills are kind of rusty and lacking.
I have big holes in my math education, partly because of bad luck with teachers in high-school/college. And the math I learned, I'm starting to forget because of lack of practice.
My domains of interest are data-mining, NLP and AI. These are domains where knowledge of mathematics is required to understand the underlying phenomenons. I mean, I got to some level of knowledge, but it is based on experimentation, empiric conclusions and cargo-culting.
Going to a local college for lectures is not an option.
I want some recommendations on good math books on:
calculus, discrete math, probabilities, statistics
I'd also like to start from a comfortable level, so I prefer books that at least start with an introduction of the prerequisites.
- Studying is doing problems. Reading is not studying. When studying, read the minimum amount necessary to complete the problem. Do all problems CLOSED-book: no notes or reading while doing problems.
- A problem is not understood until you can do it on a blank piece of paper two days after reading the relevant material (so do problems several times to check).
- Study machine learning problems that use the math. The examples in math text books are pretty useless to you - do ML problems directly. When you don't get it, look the math up quickly in a reference book (A.E.M. by Kreyszig works), as much as needed to complete the problem, and move on.
- Implement regularly. Once you've done the problems concerning an algorithm or technique, implement it. Make sure your implementation is correct, and spend some effort making it quick. Read source code for other people's implementations.
This method is effective (for me) because I like programming and machine learning, I don't like math textbooks or the problems within, and I can't remember what I haven't solved.
Book recommendation: David MacKay's (free) book: Information Theory, Inference and Learning Algorithms (http://www.inference.phy.cam.ac.uk/mackay/itila/)
- Enjoyable: not terse or uptight, engaging reading.
- Problem-focused: the text is really explanations between interesting problems. The problems are spread throughout the text rather than bunched at the end - this is a huge advantage.
- Deep and unifying: You don't get this perspective often. Helps you think about AI/ML from a strong theoretical perspective. Will give you lots of "Aha!" moments.
- Math: Plenty of math, but not unnecessarily difficult. The practice you'll get doing these problems will serve you in other situations.