# fall25_algods3 **Repository Path**: seiiib/fall25_algods3 ## Basic Information - **Project Name**: fall25_algods3 - **Description**: Repository for the Algorithm & Data Structure 3 Class - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 5 - **Forks**: 0 - **Created**: 2025-10-25 - **Last Updated**: 2026-01-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Algorithm and Data Structure 3 - Introduction to Machine Learning ## Course Overview This course provides a comprehensive introduction to Machine Learning, covering fundamental algorithms and techniques for both supervised and unsupervised learning. Students will gain hands-on experience implementing and applying machine learning models to solve real-world problems. ## Prerequisites Before enrolling in this course, students must have completed: - Algorithm and Data Structure 1 & 2 - Python Object-Oriented Programming (OOP) - Linear Algebra ## Grading System Your final grade will be calculated as follows: | Work | Test type | Delivered | Percentage | | --- | --- | --- | --- | | Continuous Learning | MCQ | Individual | 40% | | Homeworks| Labs | Individual | 30% | | Final Exam | Exam Paper OR Project | Individual | 30% | **Total**: 100% ### Bonus and Malus Points | Category | Description | Points | | --- | --- | --- | | 1. Speaking out loud ***bonus*** | For those who participate in class, and share their knowledge to their comrades, keep continue | +0.5 | | 2. No dumb question ***bonus*** | For those who do not hesitate to ask questions, even with a translator app in hand, keep continue | +0.5 | | 3. Always here ***bonus*** | For those who attend EVERY class, no matter the circumstances and stomachache, keep continue | +0.5 | | 4. Never here ***malus*** | For those who are never here, without justifying why | -0.5/3 abs | | 4. Video Games ***malus*** | For those who play video games during the class session | -0.5 every time caught playing | ## Repository Organization This repository is structured as follows: ``` . fall25_algods3/ README.md labs/ # Lab assignments and exercises week_1/ lessons/ # Course slides and lecture materials week_1/ ``` - **`/labs`**: Contains all lab assignments and practical exercises - **`/lessons`**: Contains all course slides and lecture materials ### Git Workflow for Students Students are expected to follow this Git workflow: 1. **Create your own branch**: Create a personal branch with your name (e.g., `student id + english name`) ```bash git checkout -b '2023900900_seb' ``` 2. **Work on assignments**: Complete your lab work and projects on your branch 3. **Commit regularly**: Make meaningful commits as you progress ```bash git add . git commit -m "Descriptive message about your work" ``` 4. **Push before deadlines**: Push your completed work to your branch before each deadline ```bash git push origin '2023900900_seb' ``` **Important**: Always push your finished work by the expected deadline. Late submissions may not be accepted. ## Required Tools and Setup Students must install and configure the following tools: - **VSCode** - Primary development environment - **Jupyter Notebooks** - For interactive coding and documentation - **Python packages**: scikit-learn, pandas, numpy, matplotlib, and other ML libraries Detailed installation instructions will be provided in Week 1. ## Learning Objectives By the end of this course, students will be able to: - Implement and apply fundamental machine learning algorithms - Understand the theory behind supervised and unsupervised learning - Evaluate and optimize model performance - Work on real-world ML projects - Select appropriate algorithms for different problem types - Interpret and communicate machine learning results effectively ## Course Schedule ### Week 1: Introduction and Installation - Course overview and expectations - Machine learning fundamentals and concepts - Setting up the development environment (VSCode, Jupyter, Python packages) - Introduction to the ML workflow ### Week 2: Linear Regression, Logistic Regression and Gradient Descent - Linear regression theory and implementation - Logistic regression for classification - Gradient descent optimization - Cost functions and model evaluation ### Week 3: Decision Trees and Random Forest - Decision tree algorithms - Tree pruning and hyperparameters - Random forest ensemble method - Feature importance and interpretation ### Week 4: K-Means Hierarchical Clustering - Introduction to unsupervised learning - K-Means clustering algorithm - Hierarchical clustering methods - Clustering evaluation metrics ### Week 5: Regularization - Overfitting and underfitting - L1 (Lasso) and L2 (Ridge) regularization - Elastic Net - Cross-validation techniques ### Week 6: Ensemble Methods - Bagging and boosting concepts - AdaBoost algorithm - Gradient Boosting - Stacking and blending techniques ### Week 7: Ensemble Methods (Continued) - Advanced ensemble techniques - XGBoost and LightGBM - Model optimization and tuning - Practical applications and case studies ### Week 8: Final Exam Project - Individual project presentations - Final exam - Course wrap-up and next steps ## Lab Work Labs will be conducted throughout the course to reinforce theoretical concepts with practical implementation. Students are expected to: - Complete lab assignments on time - Document their code and findings - Participate actively in lab sessions - Apply best practices in code organization and documentation ## Final Project ... Incoming ## Additional Resources - Course materials and lecture notes will be provided weekly - Recommended readings and tutorials will be shared throughout the course - Office hours available for additional support