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:

Machine Learning with Python for everyone - Mark E.Fenner
Learn Keras for Deep Neural Networks - Jojo Moolayil
Machine Learning - A Probabilistic Perspective - Kevin P.Murphy
Deep Learning and Neural Networks - Jeff Heaton
Artificial Intelligence - A Very Short Introduction - Margaret A.Boden
Python Artificial Intelligence Project for Beginners - Joshua Eckroth
Deep Learning with Python - A Hands-on Introduction - Nikhil Ketkar
Deep Learning with Theano - Christopher Bourez
Hands-on Machine Learning with Scikit-Learn, Keras & TensorFlow - Aurelien Geron
Foundations of Machine Learning second edition - Mehryar Mohri & Afshin Rostamizadeh & Ameet Talwalk...
Pattern recognition and machine learning - Christopher M.Bishop
Machine Learning Applications Using Python - Cases studies form Healthcare, Retail, and Finance - Pu...
Machine Learning - The art and science of alhorithms that make sense of data - Peter Flach
Deep Learning with Python - Francois Cholletf
Deep Learning - Ian Goodfellow & Yoshua Bengio & Aaron Courville
Introduction to Deep Learning - Eugene Charniak
Deep Learning with Applications Using Python - Navin Kumar Manaswi
Applied Text Analysis with Python - Benjamin Benfort & Rebecca Bibro & Tony Ojeda
Machine Learning with spark and python - Michael Bowles
Python for Programmers with introductory AI case studies - Paul Deitel & Harvey Deitel
Pro Deep Learning with TensorFlow - Santunu Pattanayak
Hands-On Machine Learning with Scikit-Learn and TensorFlow - Aurelien Geron
Python Machine Learning Second Edition - Sebastian Raschka & Vahid Mirjalili
Python Deep Learning Cookbook - Indra den Bakker
Practical computer vision applications using Deep Learning with CNNs - Ahmed Fawzy Gad
Deep Learning - A Practitioner's Approach - Josh Patterson & Adam Gibson
Python Deeper Insights into Machine Learning - Sebastian Raschka & David Julian & John Hearty
Deep Learning with Hadoop - Dipayan Dev
Natural Language Processing with Python - Steven Bird & Ewan Klein & Edward Loper
Superintelligence - Paths, Danges, Strategies - Nick Bostrom
R Deep Learning Essentials - Dr. Joshua F.Wiley
Machine Learning Mastery with Python - Understand your data, create accurate models and work project...