Through examples, students are introduced to the field of Artificial Intelligence. Students explore the definition of intelligence and determine if programs are capable of thinking intelligently.
Students will be able to:
In this lesson, students learn about the different subsets of Artificial Intelligence.
Students will be able to:
In this lesson, students discuss important ethical issues related to the development of Artificial Intelligence, and debate the necessity of Artificial Intelligence in modern society.
Students will be able to:
In this lesson, students research an ethical issue that currently impacts the field of Artificial Intelligence. Students will create a presentation that outlines the different arguments tied to this ethical issue, and take a stance of their own.
Students will be able to:
In this lesson, students learn how Artificial Intelligence is used to enhance gaming systems.
Students will be able to:
In this lesson, students will build a working Tic Tac Toe game. Students may also learn new concepts in Python depending on their previous skill level.
Students will be able to:
In this lesson, students will develop a random non-player character (NPC) to play against a user. Students will also evaluate the quality of their NPC, and whether it’s suitable for use in gameplay.
Students will be able to:
In this lesson, students will learn how search trees are used to improve the quality of non-player characters. Students also learn the role that recursion plays in implementing search trees, and how they can implement recursion in their own programs.
Students will be able to:
In this lesson, students will learn how to implement minimax, a search tree algorithm used to create realistic non-player characters, in their own Tic Tac Toe game.
Students will be able to:
In this lesson, students learn how to limit the depth and breadth of their minimax algorithm, making the non-player character more realistic. Students will evaluate the pros and cons of implementing these changes, and how they can be used in other searching contexts.
Students will be able to:
In this lesson, students will implement minimax from scratch without guidance. Students will take an existing game and improve it by adding the minimax function and create a game of their own.
Students will be able to:
In this lesson, students expand their understanding of the natural language processing subset of AI and learn about the different types of chatbots. Students are introduced to the Turing test and use this to evaluate the quality of popular chatbots.
Students will be able to:
In this lesson, students explore rule-based chatbots by programming their own!
Students will be able to:
In this lesson, students explore pattern-matching chatbots. Students interact with an example, and then they apply their programming skills to write a pattern-matching chatbot that helps troubleshoot common computer problems.
Students will be able to:
In this lesson, students learn how chatbots use sentiment values. Students also learn how to import files into their program and how to manipulate the data so that it can be used in their program.
Students will be able to:
In this lesson, students learn how AI-powered chatbots work. Students use the chatterbox library to create their own AI-powered chatbot programs.
Students will be able to:
In this lesson, students synthesize all they have learned about chatbots by making their own AI-powered informational chatbot. Students brainstorm their chatbot type, write their program, and go through a user-testing phase before developing their final product.
Students will be able to:
Students will get an introduction to how linear regression is used to create a predictive model, used in Machine Learning supervised learning. They will explore an example of data from which a linear regression model can be made.
Students will be able to:
Before developing a linear regression model, it must be determined that a dataset has a linear correlation. In this lesson, students examine the correlation between two variables in a dataset. After computing the correlation coefficient, students determine if the variables have positive, negative, or no correlation. To ensure that their models provide meaningful findings, students also determine the causation of the correlated data and if the relationship is non-spurious.
Students will be able to:
In this lesson, students develop a linear regression model using the LinearRegression
module from Sklearn, a Python machine learning library.
Students will be able to:
LinearRegression
moduleIn this lesson, students dig deeper into how to create a more effective linear regression model by fitting a model using training data and using the remaining data as testing data. By dividing the data into training and testing subsets, students create a model that doesn’t overfit the training data and can make correct predictions when given new data.
Students will be able to:
In this lesson, students develop a multivariable linear regression model, a linear regression model that determines the relationship between multiple independent variables. Rather than calculating the exact correlation coefficient for each variable, students use an optimizing algorithm called gradient descent to compute an approximation.
Students will be able to:
LinearRegression
moduleIn this lesson, students develop a logistic regression model, using Sklearn’s LogisticRegression
module, to solve classification problems. Machine learning classification problems identify two or more categories under which data in a data set fall.
Students will be able to:
LogisticRegression
moduleIn this lesson, students learn about unsupervised learning and clustering. More specifically, students use centroid clustering, a type of clustering that determines the similarity of data points based on their closeness to the centroid, or center, of a cluster.
Students will be able to:
KMeans
algorithmThroughout this module, students learned how to program both supervised and unsupervised learning models. In this final project, students choose from a provided list of datasets and develop a chosen machine learning model. At the end of the project, students present their findings and assess the accuracy of their model.
Students will be able to: