Python 301
Object-Oriented | Text Based | Age 10-14 | 49 Lessons
Python is a dynamic, high-level, free open source, and interpreted programming language. In Python 301, programmers will apply their programming skills into practical use, especially in Artificial Intelligence.
Unit 01
7 Lessons
53 Challenges
1.Understand artificial intelligence and its applications, learn to use the 'request' library, and study handling and converting JSON format data.
2.Grasp the basic principles of computer vision, learn about storing and processing image data, understand storage and usage of services, and study the use of the 'post()' function in the 'request' library and the 'move()' function in the 'shutil' library.
3.Understand the basic concepts of image classification, learn how computers perform image classification, and grasp the concepts of file paths and the usage of 'os.listdir()' function.
4.Learn methods to create and switch character sprites in pygame, understand the usage of image paths, and master the technique of using 'random.choice' to randomly select elements from a list.
5.Understand the rules of the game 'snake', learn to write the 'control()' function, and master methods to adjust speed and direction.
6.Understand the rules of the snake race game, learn methods to control direction and speed, and master tuning techniques.
7.Familiarize yourself with the basic concepts of CSV files, and learn to use the 'Pandas' library to read and process CSV files.
Unit 02
7 Lessons
46 Challenges
1.Learn concepts such as classification, decision trees, correlation, and accuracy. Study methods for constructing decision trees and master calculation of correlation and accuracy.
2.Study reading data from CSV files, learn to compute correlation using the 'corr()' function, and review methods for constructing decision trees.
3.Explore the construction of decision trees with numerous possibilities for feature data. Learn to sort data using the 'sort_values()' function and understand the positive and negative aspects of correlation.
4.Learn to build a two-layer decision tree, extract data that meets specific conditions, and tune parameters to improve accuracy.
5.Review methods for constructing a two-layer decision tree and understand its hierarchical structure.
6.Study the distinction between training and testing data, learn to establish decision trees using artificial intelligence methods, and understand methods for parsing JSON data.
7.Learn algorithms for detecting changes in traffic light colors, use string manipulation to generate and compare sequences of colors.
Unit 03
7 Lessons
39 Challenges
1.Learn concepts related to linear regression, differentiate between decision trees and linear regression, and master methods for linear regression prediction.
2.Study how to write equations for linear regression prediction, understand and apply parameter tuning methods.
3.Learn methods for selecting features and writing equations, master techniques for calculating errors and tuning parameters.
4.Study how to choose appropriate parameters, master methods for adjusting parameters, and understand the use of parameter tuning tools.
5.Learn automated parameter tuning methods, understand the implementation of iterative automated tuning.
6.Study relevant concepts in the sklearn library, learn steps for making predictions using sklearn.
7.Learn methods for evaluating models, master steps for predicting classification problems using the sklearn library, and understand the differences between classification and regression problems.
Unit 04
7 Lessons
51 Challenges
1.Learn methods for filling missing data, master techniques for numericalizing textual data, and understand the construction and optimization of decision tree models.
2.Understand concepts such as GUI, components, windows, labels, input boxes, buttons, etc. Learn how to create GUI programs using the tkinter library, and become familiar with using decision tree models.
3.Learn and master methods for viewing overall data situations, deleting rows with missing results, and randomly splitting data. Understand the importance of optimizing models from a data perspective.
4.Review methods for creating GUI programs using the tkinter library, master the use of dropdown boxes and sliders, and understand how to implement component functionalities.
5.Review methods for numericalizing string data and randomly splitting data. Understand the concept of the k-nearest neighbors (k-NN) algorithm.
6.Understand the storage format of image data, master the loading of the mnist dataset and training models. Review applications of decision trees and the k-nearest neighbors algorithm.
7.Learn how to create a handwriting input tool using pygame, master the implementation of handwritten digit recognition, and understand the necessity of optimizing models with new data.
Unit 05
7 Lessons
48 Challenges
1.Understand the basic concepts of web scraping and the relevant regulations regarding its legality. Learn the process of web scraping and master HTML parsing.
2.Learn methods to handle anti-scraping mechanisms, master techniques to resolve encoding issues, and study how to scrape data from multiple pages in bulk.
3.Study common HTML tags and attributes, master the basic usage of the BeautifulSoup library, and learn how to parse web content using BeautifulSoup.
4.Learn methods to store data in CSV files, master the process of data preprocessing and model training.
5.Learn how to scrape images and implement multi-level scraping. Master the techniques for encapsulating web scraping functions.
6.Study methods to convert images into training data and learn how to use the random forest model for classification predictions.
7.Learn how to scrape audio information and review methods for creating GUI programs using pygame.
Unit 06
7 Lessons
36 Challenges
1.Learn how to analyze and concatenate multiple URLs, master methods for parsing HTML tag content, and study the conversion between relative URLs and absolute URLs.
2.Study basic methods for web page analysis and POST requests, master the encapsulation of POST request functions, and learn techniques for parsing JSON data.
3.Understand the basic concepts of supervised and unsupervised learning, master the 'K-Means' clustering algorithm and its evaluation methods, and learn how to calculate the average silhouette score.
4.Understand the basic structure and working principles of neural networks, master methods for creating and debugging neural network models, and understand the impact of hidden layers and the number of neurons on model accuracy.
5.Understand the basic principles of convolutional neural networks (CNNs), master the use of portrait segmentation services, and understand the application of image processing and 'RGBA' mode.
6.Understand the basic principles of Generative Adversarial Networks (GAN), learn techniques for designing and implementing GUI interfaces, and understand methods for image processing and invoking external APIs.
7.Understand the basic workflow and applications of OCR technology, master methods for invoking OCR services, and understand the implementation process of text recognition.
Unit 07
7 Lessons
43 Challenges
1.Understand the basic concepts of reinforcement learning, including definitions of environment, agent, and action, and their relationships.
2.Learn the Q-learning algorithm, master the use of reward mechanisms and Q-tables, and understand the steps involved in training reinforcement learning models.
3.Study methods for action selection and reward adjustment, master techniques for using Q-tables to select actions, and understand the application of reinforcement learning in board games.
4.Understand the training process of reinforcement learning, master game environment initialization and action execution methods, and understand the implementation of 'reset()' and 'step()' functions.
5.Learn about the DQN algorithm, understand the differences between DQN and Q-learning algorithms, and grasp the role of replay memory.
6.Review relevant knowledge of pygame, learn how to create game environments and define characters using pygame, and understand the implementation of character interaction and state updates.
7.Summarize machine learning concepts, review the model training process, and revisit methods for data preprocessing and model evaluation.
What Students Learned
Problem-analysis and solving skills
Logical reasoning skills
Knowledge transfer skills
Scientific thinking
Data literacy
From concrete to abstract thinking skills
Abstract thinking skills
Expanded thinking skills
Inductive reasoning skills
Knowledge transfer skills
Analogical reasoning skills
Ability to apply integrated knowledge
Expanded thinking skills
Inductive reasoning skills
Cognitive thinking skills
Creativity
Project implementation skills