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:

Python Deep Learning - Valentino Zocca & Gianmario Spacagna & Daniel Slater & Peter Roelants
Python for Programmers with introductory AI case studies - Paul Deitel & Harvey Deitel
Deep Learning with Keras - Antonio Gulli & Sujit Pal
Python 3 for Absolute Beginners - Tim Hall & J.P Stacey
Python Machine Learning - Sebastian Raschka
Pro Deep Learning with TensorFlow - Santunu Pattanayak
An introduction to neural networks - Kevin Gurney & University of Sheffield
Java Deep Learning Essentials - Yusuke Sugomori
Hands-on Machine Learning with Scikit-Learn, Keras & TensorFlow - Aurelien Geron
Python Data Structures and Algorithms - Benjamin Baka
Statistical Methods for Machine Learning - Disconver how to Transform data into Knowledge with Pytho...
Artificial Intelligence - A Very Short Introduction - Margaret A.Boden
Deep Learning with Python - A Hands-on Introduction - Nikhil Ketkar
Machine Learning - An Algorithmic Perspective second edition - Stephen Marsland
Data Science and Big Data Analytics - EMC Education Services
Scikit-learn Cookbook Second Edition over 80 recipes for machine learning - Julian Avila & Trent Hau...
Practical computer vision applications using Deep Learning with CNNs - Ahmed Fawzy Gad
Python Machine Learning Cookbook - Practical solutions from preprocessing to Deep Learning - Chris A...
Introduction to Deep Learning Business Application for Developers - Armando Vieira & Bernardete Ribe...
Deep Learning with PyTorch - Vishnu Subramanian
Artificial Intelligence - 101 things you must know today about our future - Lasse Rouhiainen
Machine Learning Mastery with Python - Understand your data, create accurate models and work project...
Deep Learning dummies second edition - John Paul Mueller & Luca Massaronf
Introduction to the Math of Neural Networks - Jeff Heaton
Medical Image Segmentation Using Artificial Neural Networks
Deep Learning and Neural Networks - Jeff Heaton
Python Artificial Intelligence Project for Beginners - Joshua Eckroth
Deep Learning for Natural Language Processing - Jason Brownlee
Natural Language Processing in action - Hobson Lane & Cole Howard & Hannes Max Hapke
R Deep Learning Essentials - Dr. Joshua F.Wiley
Learn Keras for Deep Neural Networks - Jojo Moolayil
Deep Learning in Python - LazyProgrammer