Course Description
This course provides an introduction to machine learning, covering fundamental concepts, techniques, and applications. Students will learn about data preprocessing, supervised and unsupervised learning, model evaluation, and basic neural networks. The course includes hands-on projects using Python and scikit-learn. The course will prepare students for advanced topics in deep learning, which will be covered in a subsequent course.
Prerequisites
- Basic knowledge of Python programming
- Basic understanding of linear algebra, probability, and statistics
Textbook
- Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow by Aurélien Géron
- Introduction to Machine Learning, 3rd edition, by Alpaydin Ethem
Course Objectives
- To understand the fundamental concepts of machine learning and its applications.
- To learn how to preprocess data for machine learning models.
- To explore various supervised and unsupervised learning algorithms.
- To evaluate and select appropriate models for different types of data and tasks.
- To implement machine learning algorithms using Python and scikit-learn.
- To gain an introductory understanding of neural networks and their training.
Course Outcomes
- Explain the basic concepts and types of machine learning.
- Preprocess and prepare data for machine learning tasks.
- Implement and apply various supervised learning algorithms.
- Implement and apply various unsupervised learning algorithms.
- Evaluate and tune machine learning models using appropriate metrics and techniques.
- Develop basic neural network models and understand their training processes.
- Apply machine learning techniques to real-world problems through a comprehensive final project.
Course Structure
- Week 1: Introduction to Machine Learning
- Week 2: Python for Machine Learning
- Week 3: Data Preprocessing
- Week 4: Supervised Learning: Regression
- Week 5: Supervised Learning: Classification
- Week 6: Model Evaluation and Selection
- Week 7: Supervised Learning: Support Vector Machines
- Week 8: Supervised Learning: Decision Trees and Ensemble Methods
- Week 9: Midterm Exam and Project Proposal
- Week 10: Unsupervised Learning: Clustering
- Week 11: Unsupervised Learning: Dimensionality Reduction
- Week 12: Unsupervised Learning: Association Rule Learning
- Week 13: Anomaly Detection and Recommendation Systems
- Week 14: Introduction to Neural Networks
- Week 15: Neural Network Training and Optimization
- Week 16: Final Project Presentations
Evaluation
- Quiz and Assignments: 20%
- Final Project: 25%
- Midterm Exam: 20%
- Final Exam: 30%
- Participation and Attendance: 5%