Recommended Books
Here is a list of books which I had read and feel it was worth recommending to friends who was interested in computer Scie nCE.
Machine Learningpattern recognition and machine learning
Christopher M. Bishop
A new treatment of classic machine learning topics, such as classification, regression, and time series analysis from a Ba Yesian perspective. It is a must read for people who intends to perform in Bayesian learning and probabilistic inference.
Graphical Models, exponential families, and variational inference
Martin J. Wainwright and Michael I. Jordan
It is a comprehensive and brilliant presentation of three closely related subjects:graphical models, exponential families , and variational inference. The the best manuscript that I had ever read on this subject. Strongly recommended to everyone interested in graphical models. The connections between various inference algorithms and convex optimization is clearly explained. Note:pdf version of this book is freely available online.
Big data:a Revolution That'll Transform how do We Live, work, and Think
Viktor Mayer-schonberger, and Kenneth Cukier
A Short but insightful manuscript that'll motivate you to rethink how we should face the explosive growth of data in the New century.
Statistical Pattern Recognition (2nd/3rd Edition)
Andrew R. Webb, and Keith D. Copsey
A well written book on the pattern Recognition for beginners. It covers basic topics in this field, including discriminant analysis, decision Trees, feature selection, and clustering- -All is basic knowledge that researchers in machine learning or pattern recognition should understand.
Learning with Kernels:support Vector machines, regularization, optimization, and Beyond
Bernhard Schlkopf and Alexander J. Smola
A comprehensive and in-depth treatment of kernel methods and support vector machine. It isn't only clearly develops the mathematical foundation, namely the reproducing kernel Hilbert space, but also gives a lo T of practical guidance (e.g. how to choose or design kernels.)
Mathematicstopology (2nd Edition)
James Munkres
A Classic on topology for beginners. It provides a clear introduction of important concepts in general topology, such as continuity, connectedness, compactness , and metric spaces, which is the fundamentals that has to grasped before embarking on more advanced subjects such a s real analysis.
Introductory functional analysis with applications
Erwin Kreyszig
It's a very well written book on functional an analysis of that I-would like-to-recommend to every one who would like to study This is subject for the first time. Starting from simple notions such as metrics and norms, the book gradually unfolds the beauty of functional analysis, Expo Sing important topics including Banach spaces, Hilbert spaces, and spectral theory with a reasonable depth and breadth. Most important concepts needed on machine learning is covered by this book. The exercises is of great help to reinforce your understanding.
Real analysis and Probability (Cambridge Studies in Advanced mathematics)
R. M. Dudley
This is a dense text, combines Real analysis, and modern probability theory in the researcher pages. What do I like about it treatment that emphasizes the interplay between real analysis and probability theory. Also The exposition of measure theory based on semi-rings gives a deep insight of the algebraic structure of measures.
Convex optimization
Stephen Boyd, and Lieven Vandenberghe
A Classic on convex optimization. Everyone that I knew who had read the book liked it. The presentation style is very comfortable and inspiring, and it assumes only minimal prerequisite on linear algebra and C Alculus. Strongly recommended for any beginners on optimization. Note:the PDF of this book was freely available on the Prof. Boyd ' s website.
Nonlinear programming (2nd Edition)
Dimitri P. Bersekas
A thorough treatment of nonlinear optimization. It covers gradient-based techniques, Lagrange multiplier theory, and convex programming. Part of the book overlaps with Boyd's. Overall, it goes deeper and takes more efforts to read.
Introduction to Smooth manifolds
John M. Lee
The book, that I used to learn differential geometry and Lie group theory. It provides a detailed introduction to basics of modern differential geometry--manifolds, tangent spaces, and vector bun DLEs. The connections between manifold theory and Lie group theory is also clearly explained. It also covers De Rham cohomology and Lie algebra, where audience is invited to discover the beauty by linking geometry wi Th algebra.
Modern Graph theory
Bela Bollobas
It is a modern treatment of this classical theory, which emphasizes the connections and other mathematical subjects--fo R example, random walks and electrical networks. I found some messages conveyed by the This book was enlightening for my all in machine learning methods.
Probability theory:a Comprehensive Course (Universitext)
Achim Klenke
This was a complete coverage of modern probability theory – not only including traditional topics, such as Measure theory, Independence, and convergence theorems, but also introducing topics that is typically in textbooks on stochastic process ES, such as martingales, Markov chains, and Brownian motion, Poisson processes, and Stochastic differential equations. It is recommended as the main textbook on probability theory.
A first Course in Stochastic Processes (2nd Edition)
Samuel Karlin, and Howard M. Taylor
A Classic Textbook on stochastic process which I think is particularly suitable for beginners without much background on Measure theory. IT provides a complete coverage of many important stochastic processes on an intuitive the. Its development of Markov processes and renewal processes are enlightening.
Poisson Processes (Oxford Studies in probability)
J. F. Kingman
If you were interested in Bayesian Nonparametrics, this is the book, which you should definitely check out. This manuscript provides a unparalleled introduction to random point processes, including Poisson and Cox processes, and Their deep theoretical connections and complete randomness.
Programmingstructure and interpretation of Computer Programs (2nd Edition)
Harold Abelson, Gerald Jay Sussman, and Julie Sussman
Timeless Classic that must is read by all computer The science majors. While some topics and the use of Scheme as the teaching language seems odd at first glance, the presentation of Fundamenta L concepts such as abstraction, recursion, and modularity are so beautiful and insightful it you would never experienced Elsewhere.
Thinking in C + +: Introduction to standard C + + (2nd Edition)
Bruce Eckel
While the It is kind of the old (written in a), I still recommend this book to all beginners to learn C + +. The thoughts underlying object-oriented programming is very clearly explained. It also provides a comprehensive coverage of C + + in a well-tuned pace.
Effective C + +: specific Ways to Improve Your Programs and Designs (3rd Edition)
Scott Meyers
The effective C + + series by Scott Meyers are a must for anyone who are serious about C + + programming. The items (rules) listed in this book conveys the author's deep understanding of both C + + itself and modern software Engin Eering principles. This edition reflects latest updates in C + + development, including generic programming the use of the TR1 library.
Advanced C + + metaprogramming
Davide Di Gennaro
Like it or hate it, meta-programming have played an increasingly important role in modern C + + development. If you asked what's the key aspects that distinguishes C + + from all other languages, I would say it's the unparalleled g Eneric programming capability based on C + + templates. This book summarizes the latest advancement of Metaprogramming in the past decade. I believe it would take the place of Loki ' s "Modern C + + Design" to become the Bible for C + + meta-programming.
Introduction to Algorithms (2nd/3rd Edition)
Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein
If you know nothing on algorithms, you never understand computer science. Definitely a classic on algorithms and data structures, that's everyone who's serious about computer science Must read. This contents of the ranges from elementary topics such as classic sorting algorithms and hash table to advanced top ICS such as maximum flow, linear programming, and computational geometry. It's a book for everyone. Everytime I read it, I learned something new.
Design patterns:elements of reusable object-oriented software
Erich Gamma, Richard Helm, Ralph Johnson, and John vlissides
Textbooks on C + +, Java, or other languages typically use toy examples (animals, students, etc) to illustrate the concept O F OOP. This by, however, does not reflect the full strength of object oriented programming. This book, which have been widely acknowledged as a classic in software engineering, shows you, via compelling examples dis Tilled from real world projects, how specific OOP patterns can vastly improve your code ' s reusability and extensibility.
Structured Parallel programming:patterns for efficient computation
Michael McCool, James reinders, and Arch Robison
Recent trends of hardware advancement have switched from increasing CPUs frequencies to increasing the number of cores. A significant implication of the "is" the "free lunch had come to an end"--and you had to explicitly parallelize R codes in order to benefit from the latest progress on Cpu/gpus. This book summarizes common patterns used in parallel programming, such as mapping, reduction, and pipelining – all is V ery useful in writing parallel codes.
Introduction to high performance Computing for scientists and Engineers
Georg Hager and Gerhard Wellein
This book covers important topics the should know in developing high performance computing programs. Particularly, it introduces SIMD, memory hierarchies, OpenMP, and MPI. With these knowledges in mind, you understand what is the factors that might influence the run-time performance of your C Odes.
CUDA programming:a Developer ' s Guide to Parallel Computing with GPUs
Shane Cook
This book provides an in-depth coverages of important aspects related to CUDA programming – a programming technique that C An unleash the unparalleled power of GPU computation. With CUDA and a affordable GPU card, you can run your data analysis program in the matter of minutes which may otherwise Require multiple servers to run for hours.
Extracted from Lin Dahua
Patterns Recognition (Pattern recognition) book list