Artificial Intelligence with an introduction to Machine Learning second edition – Richar E. Neapolitan & Xia Jiang

Over the years, my view of an artificial intelligence (AI) course has changed significantly. I used to view it as a course that should discuss our efforts to develop an artificial entity that can learn and make decisions in a complex, changing environment, affect that environment, and communicate its knowledge and choices to humans; that is, an entity that can think. I would therefore cover the weak AI methods that failed to scale up. However, as strong methods that solved challenging problems in limited domains became more predominant, my course increasingly concerned these methods. I would cover backward chaining, forward chaining, planning, inference in Bayesian networks, normative decision analysis, evolutionary
computation, decision tree learning, Bayesian network learning, supervised and unsupervised learning, and reinforcement learning. I would show useful applications of these methods.

These techniques have come to be as important to a computer science student’s repertoire as techniques such as divide-and-conquer, greedy methods, branch-and-bound, etc. Yet a student would not see them unless the student took an AI course. So my AI course evolved into a course that undergraduate students would take either concurrently or following an
analysis of algorithms course, and would cover what I viewed as important problem-solving strategies that have emerged from the field of AI. I feel such a course should be a standard component of every computer science curriculum just like data structures and analysis of algorithms.

Related posts:

Deep Learning from Scratch - Building with Python form First Principles - Seth Weidman
Deep Learning for Natural Language Processing - Jason Brownlee
Coding Theory - Algorithms, Architectures and Application
Artificial Intelligence by example - Denis Rothman
Deep Learning Illustrated - A visual, Interactive Guide to Arficial Intelligence First Edition - Jon...
Hands-On Machine Learning with Scikit-Learn and TensorFlow - Aurelien Geron
Generative Deep Learning - Teaching Machines to Paint, Write, Compose and Play - David Foster
Deep Learning and Neural Networks - Jeff Heaton
Machine Learning Mastery with Python - Understand your data, create accurate models and work project...
Introduction to Machine Learning with Python - Andreas C.Muller & Sarah Guido
Machine Learning - A Probabilistic Perspective - Kevin P.Murphy
Learn Keras for Deep Neural Networks - Jojo Moolayil
The hundred-page Machine Learning Book - Andriy Burkov
Python Artificial Intelligence Project for Beginners - Joshua Eckroth
Fundamentals of Deep Learning - Nikhil Bubuma
Understanding Machine Learning from theory to algorithms - Shai Shalev-Shwartz & Shai Ben-David
Machine Learning with Python for everyone - Mark E.Fenner
Deep Learning - Ian Goodfellow & Yoshua Bengio & Aaron Courville
Data Science and Big Data Analytics - EMC Education Services
Deep Learning - A Practitioner's Approach - Josh Patterson & Adam Gibson
Python Machine Learning Third Edition - Sebastian Raschka & Vahid Mirjalili
TensorFlow for Deep Learning - Bharath Ramsundar & Reza Bosagh Zadeh
Natural Language Processing in action - Hobson Lane & Cole Howard & Hannes Max Hapke
Machine Learning Applications Using Python - Cases studies form Healthcare, Retail, and Finance - Pu...
Statistical Methods for Machine Learning - Disconver how to Transform data into Knowledge with Pytho...
Python Data Analytics with Pandas, NumPy and Matplotlib - Fabio Nelli
Neural Networks - A visual introduction for beginners - Michael Taylor
Grokking Deep Learning - MEAP v10 - Andrew W.Trask
Python 3 for Absolute Beginners - Tim Hall & J.P Stacey
Deep Learning in Python - LazyProgrammer
Deep Learning with Python - Francois Chollet
Pattern recognition and machine learning - Christopher M.Bishop