On this page I decided to list several books about topics which I have interest in. I think these books are really really very good. Some of them I have already read in full, others I've just looked at, others I am planning to look at in the future.
*** Algorithms ***
10) "Introduction to Algorithms" - Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein
A classical book on algorithms. I've read only parts from it and I've been doing it on demand i.e. whenever I've needed a certain type of algorithm.
*** AI ***
20) "Artificial Intelligence: A Modern Approach (3rd Edition)" - Stuart Russel, Peter Norvig
A classical book in AI. Really huge though as it covers a very broad range of topics. I've read only a very very small piece of it (unfortunately).
*** Data Science, Machine Learning ***
30) "Machine Learning - an Algorithmic Perspective" - Stephen Marsland
This one seems somewhat too advanced for me (at least as of 2020) but nevertheless it covers a pretty good range of ML topics, and it puts emphasis on algorithms. Some decent knowledge of math is required. In any case it is good to have a look at this book if only to get an idea about the main topics/areas within the field of ML.
40) "Mathematics for Machine Learning" - Marc Peter Deisenroth, A. Aldo Faisal, and Cheng Soon Ong
This is a great overview book of the main mathematical topics necessary to be able to dive into the field of machine learning. I also find it perfect for people who studied lots of math in university courses, but which have forgotten most of the details. This book seems like a great refresher. Another good thing about it is that it is free for download.
50) "Python Data Science Handbook" - Jake VanderPlas
I only glimpsed at this one a few weeks ago. Looks a great book. It was published in 2016 but doesn't seem outdated at all. I should read it in full.
60) "Hands-on Machine Learning with Scikit-Learn, Keras & TensorFlow (2nd. Edition)" - Aurélien Géron
This book seems too advanced for me. I first need to cover a lot of other concepts and topics in DS/ML before I start reading this book. But OK... it is about the best/leading Python frameworks for ML.
70) "Neural Networks from Scratch" - Harrison Kinsley, Daniel Kukiela
This is very good book if you really want to learn how to build neural networks from scratch. The programming language used is Python. The only library used is numpy. Everything else is coded from scratch.
*** Python ***
80) "Think Python" - Allen Downey
This one I already completed reading (and also I went through and solved all the programming exercises). I find this book perfect for people who have experience with programming languages but are new to Python. It's not heavy at all and it introduces all the major concepts nicely. If you can solve all the exercises, you can be certain already that you know the Python language pretty well.
90) "Fluent Python" - Luciano Ramalho
This one seems like a great book for people who already have some basic knowledge of Python but want to get a deeper understanding of the Python language (deeper than an introductory Python book can provide).
*** Java ***
100) "Java Concurrency in Practice" - Brian Goetz
The most fundamental book on Java concurrency programming written by probably the most influential person in that domain. I've never had the time to read it in full and try out the examples. But I guess one can use it as a handbook too.
*** SQL ***
110) "MS SQL Server 2012 - T-SQL Fundamentals" - Itzik Ben-Gan
I completed this one around 2014 or 2015. This one is a great book for SQL. It is for people who know how to write some basic SQL statements like SELECT, INSERT, UPDATE, DELETE but want to dive into SQL somewhat deeper than that. The author is really a master of explaining complex concepts nicely and interestingly while not sacrificing rigor. If you want to be become better than 95% of the developers writing in SQL, just read this book and make sure you understand every single example.
120) "Linear Algebra" - Friedberg et. al. (5th Edition)
130) "Linear Algebra" - Fraleigh et. al. (3rd Edition)
140) "Introduction to linear and matrix algebra" - Nathaniel Johnston
150) "Advanced linear and matrix algebra" - Nathaniel Johnston
160) "Interactive Linear Algebra" - Dan Margalit, Joseph Rabinoff
Check out the book website
I haven't read this one (I have enough linear algebra books in my native language). I found this book only recently, and I read a few pages only. But it looks like quite a good book if you want to refresh your linear algebra knowledge (e.g. in order to pursue some data science or machine learning type of role). It contains lots of illustrations too to aid the learning process.
170) "Introduction to Probability" - Bertsekas, Tsitsiklis
I've read some parts of this book. It's not too rigorous but it's rigorous enough. Also, I've watched the MIT course video lectures in great detail and I've been taking detailed notes while watching them.
MIT Applied Probability course - video lectures
180) "Lectures on Probability Theory and Mathematical Statistics" - Marco Taboga
This book is great in several ways. 1) It takes a practical approach, not much attention is given to technicalities, and still it's very rigorous; 2) It does not require too much from its readers i.e. the author is very diligent about proofs and basically no major proof is left to the reader; 3) It's available for reading online, and one can use it as a handbook in probability theory and statistics.
185) Measure Theory, Probability, and Stochastic Processes - Jean-François Le Gall
A great rigorous book on measure theory, probability theory and stochastic processes. The first part of the book is about measure theory which is good as it lays out solid foundations for the theory ahead. The second and third parts of the book are about probability theory and stochastic processes.
190) "Mathematical statistics with applications" - Wackerly et. al.
This one seems like a great book on statistics. This one here is the book's 7th edition.
200) "Introduction to mathematical statistics" - Hogg et. al.
This one also seems like a great book on statistics. This one here is the book's 8th edition.
310) "Introduction to Statistical Learning" - Gareth James et. al.
Check out the book website
This is a really fundamental introductory book on statistical learning which (in computer science terms) pretty much translates to machine learning. Note (2022): the only inconvenience (for me at least) is that it has coding exercises in the R programming language (and not in Python for example). Note (2024): now there is also a version of this book where Python is used for the exercises and the applications. The theory covered seems really really fundamental. I haven't read it yet. This book is also known as ISL.
320) "The Elements of Statistical Learning" - Trevor Hastie et. al.
Check out the book website
This book is also known as ESL. It is deeper and more theoretical in comparison to the ISL book (see above). It provides deeper mathematical explanations (than ISL) of the methods used in machine learning. It is a heavy book to read, with lots of theory.
*** Mathematics - General ***
410) "Handbook of Mathematics for Engineers and Scientists" - A. D. Polyanin, A. V. Manzhirov
This is a big handbook with a lot of formulas, methods, and theorems from various areas of mathematics.
*** Mathematics - Vector Calculus ***
510) "Vector Calculus" - Baxandall, Liebeck
This is a great book on vector calculus. It is an old-style book packed with really condensed yet very rigorous math knowledge. The explanations and proofs are short and to-the-point, it's just an old-school great book. The exercises expand and build upon previous exercises in a really fantastic way. It's kind of a hard read but I really like it a lot. I usually work slowly through it in my free time (whenever I am not too tired from my work).
No comments:
Post a Comment