CENG0021 Python for machine learning

6 ECTS - 3-0 Duration (T+A)- . Semester- 3 National Credit

Information

Code CENG0021
Name Python for machine learning
Semester . Semester
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 Goal

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