University of the Punjab Lahore Program: Python for Machine Learning Course Title: Python for Machine Learning Course Type: Technical Duration: 3 Months Prerequisites FA/FSc /ICom/ICS/DAE/A-Level or equivalent qualification and above Introduction The purpose of this course is to give the students a hand on training of implementation of machine learning models using python and its libraries. This course will enable the participants to be able to get skills to either get job related to machine learning or help in their academic projects. Machine learning is an extremely important field used in many areas of business analysis, data analysis, artificial intelligence, robotics and in several statistics related fields. This training will help trainees in kick starting their career in lucrative field of machine learning Learning Objectives After the successful course completion students will be able to: ● Learn and understand the Python language. ● Implement machine learning models. ● Load data into Python. ● Perform data analysis on a given problem. ● Fine tune models using machine learning techniques. ● Present data in understandable form to extract results. ● Learn about freelancing and different online websites for freelancing. o Fiverr o Upwork o Freelancer.com ● Be able to optimize their profile and get projects on freelancing websites. Course Contents Topic & Contents 1. Python Introduction 1.1. Introduction to Python 1.2. Setting up the python environment 1.3. Anaconda Installation 1.4. Py-Charm and Juypter Notebook 1.5. Basic syntax for Python 1.6. Variables and Data Type in python 1.7. Machine Learning Introduction 1.8. Assignment 1 Basic Data type strings and numbers 2. Data in Python 2.1. Lists and list comprehension in Python 2.2. Dictionary and Tuple in Python 2.3. Set in Python 2.4. Training and Test Set 2.5. Regression 2.6. Logistic Regression 2.7. Decision Trees 2.8. Assignment 2.9. Create Full frontend for a Website 3. Control flow in Python 3.1. Loops in Python 3.2. Conditionals in python 3.3. Lambda expression 3.4. Map Zip Enumerate 3.5. File Handling 3.6. Over-fitting Under-fitting and Generalization 3.7. KNN 3.8. Random Forest 3.9. Quiz 1 4. Numpy 4.1. Introduction to Numpy 4.2. Numpy function 4.3. Arrays in numpy 4.4. Cross Validation 4.5. K splits 4.6. Assignment 5. Data Visualization in Python 5.1. Matplotlib library 5.2. Seaborn library 5.3. Feature Engineering 5.4. Regression vs Classifiers 6. Panda Library 6.1. Introduction to Panda Library 6.2. Manipulating Data Frames 6.3. Loading Datasets 6.4. Clustering 7. SkLearn Library 7.1. Building a simple model using SkLearn 7.2. Implementing ML models 7.3. Random Forest 7.4. Hyper heuristics 8. Algorithm Chains and Pipelines 8.1. Cross Validation and its techniques 8.2. Gird Searching and Pipelines 8.3. Minimizing Error 9. Freelancing topics 9.1. Optimizing Fiverr Gigs 9.2. Introduction to Freelancer.com 9.3. Creating Profile in Freelancer.com 9.4. Creating Profile in Upwork.com 9.5. Writing a Cover letter 9.6. How to bid on projects 9.7. Different tools in Freelancing 9.8. Project Delivery and Deadlines 9.9. Art of Upselling 9.10. LinkedIn Profile optimization 9.11. How to win direct clients 9.12. Creating profile in PeoplePerHour.com Textbooks “Hands-On Machine Learning with Scikit-Learn 2019” Aurélien Géron Suggested Readings https://www.geeksforgeeks.org/machine-learning-with-python/ Teaching/Learning ● Lectures Strategies ● Class discussion on all topics ● Multimedia ● PowerPoint Slides ● Hands-on Practice Course Activities ● Quizzes ● Assignments ● Projects ● Daily Hands-on Practice Evaluation Criteria Assignment will be submitted on Google Classroom portal for assessment. Late assignments will not be accepted. Grades are weighted according to the following scale: 20%-- Quizzes (5+5) 30%-- Mid 20%-- Project 30%-- Final Evaluation 100%-- Total Training Mode Physical-Face to Face Fee Rs. 19,000/- Course Fee Rs. 1,000/- Registration Fee