Information
Code | CENG0021 |
Name | Python for machine learning |
Term | 2024-2025 Academic Year |
Term | Fall |
Duration (T+A) | 3-0 (T-A) (17 Week) |
ECTS | 6 ECTS |
National Credit | 3 National Credit |
Teaching Language | İngilizce |
Level | Yüksek Lisans Dersi |
Type | Normal |
Mode of study | Yüz Yüze Öğretim |
Catalog Information Coordinator | |
Course Instructor |
Dr. Öğr. Üyesi SERKAN KARTAL
(A Group)
(Ins. in Charge)
|
Course Goal / Objective
This course teaches students how to develop machine learning applications with the python programming language.
Course Content
In this course, students will learn the basics of python programming and machine learning libraries, and sample applications will be developed.
Course Precondition
Basic programming, statistics, linear algebra
Resources
Python Machine Learning, Sebastian Raschka, 2019
Notes
Python Data Science Handbook, Jake VanderPlas, 2017
Course Learning Outcomes
Order | Course Learning Outcomes |
---|---|
LO01 | Learns how to develop machine learning applications with Python. |
LO02 | Gain the Python Object-Oriented Programming (OOP) skills. |
LO03 | Acquire the required Python skills to move into specific branches - Machine Learning, Data Science, etc. |
LO04 | Learns Python language features and how to use them in relevant problems. |
Relation with Program Learning Outcome
Order | Type | Program Learning Outcomes | Level |
---|---|---|---|
PLO01 | Bilgi - Kuramsal, Olgusal | On the basis of the competencies gained at the undergraduate level, it has an advanced level of knowledge and understanding that provides the basis for original studies in the field of Computer Engineering. | 4 |
PLO02 | Bilgi - Kuramsal, Olgusal | By reaching scientific knowledge in the field of engineering, he/she reaches the knowledge in depth and depth, evaluates, interprets and applies the information. | 2 |
PLO03 | Yetkinlikler - Öğrenme Yetkinliği | Being aware of the new and developing practices of his / her profession and examining and learning when necessary. | 3 |
PLO04 | Yetkinlikler - Öğrenme Yetkinliği | Constructs engineering problems, develops methods to solve them and applies innovative methods in solutions. | 4 |
PLO05 | Yetkinlikler - Öğrenme Yetkinliği | Designs and applies analytical, modeling and experimental based researches, analyzes and interprets complex situations encountered in this process. | 4 |
PLO06 | Yetkinlikler - Öğrenme Yetkinliği | Develops new and / or original ideas and methods, develops innovative solutions in system, part or process design. | 4 |
PLO07 | Beceriler - Bilişsel, Uygulamalı | Has the skills of learning. | |
PLO08 | Beceriler - Bilişsel, Uygulamalı | Being aware of new and emerging applications of Computer Engineering examines and learns them if necessary. | 3 |
PLO09 | Beceriler - Bilişsel, Uygulamalı | Transmits the processes and results of their studies in written or oral form in the national and international environments outside or outside the field of Computer Engineering. | |
PLO10 | Beceriler - Bilişsel, Uygulamalı | Has comprehensive knowledge about current techniques and methods and their limitations in Computer Engineering. | 3 |
PLO11 | Beceriler - Bilişsel, Uygulamalı | Uses information and communication technologies at an advanced level interactively with computer software required by Computer Engineering. | |
PLO12 | Bilgi - Kuramsal, Olgusal | Observes social, scientific and ethical values in all professional activities. |
Week Plan
Week | Topic | Preparation | Methods |
---|---|---|---|
1 | The Basics of Python | Reading of course notes | Öğretim Yöntemleri: Anlatım, Gösteri, Beyin Fırtınası |
2 | Abstractions and Functions | Reading of course notes | Öğretim Yöntemleri: Soru-Cevap, Gösteri |
3 | Reading and writing data from a file | Reading of course notes | Öğretim Yöntemleri: Anlatım, Gösteri |
4 | Lists, Ranges, Tuples and Dictionaries | Reading of course notes | Öğretim Yöntemleri: Anlatım, Gösteri |
5 | Sets,Testing, Debugging, Exceptions, | Reading of course notes | Öğretim Yöntemleri: Anlatım, Gösteri |
6 | Object Oriented Programming in Python, Classes and Inheritance | Reading of course notes | Öğretim Yöntemleri: Anlatım, Gösteri |
7 | Numpy | Reading of course notes | Öğretim Yöntemleri: Anlatım, Gösteri |
8 | Mid-Term Exam | Reading of course notes | Ölçme Yöntemleri: Yazılı Sınav, Proje / Tasarım |
9 | Matplotlib | Reading of course notes | Öğretim Yöntemleri: Anlatım, Gösteri |
10 | Basic Pandas, cleaning data | Reading of course notes | Öğretim Yöntemleri: Anlatım, Gösteri |
11 | Pandas: Analyzing Data & Time Series | Reading of course notes | Öğretim Yöntemleri: Anlatım, Gösteri |
12 | Debugging in Pycharm | Reading of course notes | Öğretim Yöntemleri: Anlatım, Gösteri |
13 | Data Visualization | Reading of course notes | Öğretim Yöntemleri: Anlatım, Gösteri |
14 | Statistical Modeling (statsmodels) | Reading of course notes | Öğretim Yöntemleri: Anlatım, Gösteri |
15 | Scikit-Learn, Parallelism | Reading of course notes | Öğretim Yöntemleri: Anlatım, Gösteri |
16 | Term Exams | Reading of course notes | Ölçme Yöntemleri: Yazılı Sınav |
17 | Term Exams | Reading of course notes | Ölçme Yöntemleri: Yazılı Sınav |
Student Workload - ECTS
Works | Number | Time (Hour) | Workload (Hour) |
---|---|---|---|
Course Related Works | |||
Class Time (Exam weeks are excluded) | 14 | 3 | 42 |
Out of Class Study (Preliminary Work, Practice) | 14 | 5 | 70 |
Assesment Related Works | |||
Homeworks, Projects, Others | 0 | 0 | 0 |
Mid-term Exams (Written, Oral, etc.) | 1 | 15 | 15 |
Final Exam | 1 | 30 | 30 |
Total Workload (Hour) | 157 | ||
Total Workload / 25 (h) | 6,28 | ||
ECTS | 6 ECTS |