2025년도 1학기 데이터 과학을 위한 프로그래밍 (IMEN574-01) 강의계획서

1. 수업정보

학수번호 IMEN574 분반 01 학점 3.00
이수구분 전공선택 강좌유형 강의실 강좌 선수과목
포스테키안 핵심역량
강의시간 화, 목 / 09:30 ~ 10:45 / 제4공학관 멀티미디어 강의실 [305호] 성적취득 구분 G

2. 강의교수 정보

송민석 이름 송민석 학과(전공) 산업경영공학과
이메일 주소 mssong@postech.ac.kr Homepage https://minseoksong.github.io
연구실 HTTP://AIM.POSTECH.AC.KR 전화 054-279-2376
Office Hours

3. 강의목표

Course Description
This course provides an in-depth exploration of programming concepts and techniques essential for data science. Students will learn foundational programming skills, algorithm design, and machine learning implementation using Python. Each week, they will study a new concept and implement machine learning algorithms from scratch. The course culminates in a final project in which they reproduce and implement algorithms from a research paper.

Course Objectives
By the end of this course, students will be able to:
- Develop a strong understanding of Python programming for data science.
- Implement fundamental algorithms used in data analysis and machine learning.
- Analyze and compare different machine learning techniques.
- Apply knowledge to real-world datasets.
- Reproduce and implement research-based machine learning models.

4. 강의선수/수강필수사항

5. 성적평가

• Exams (4 total): 40%
• Weekly Implementations: 30%
• Final Project: 20%
• Participation & Assignments: 10%

6. 강의교재

도서명 저자명 출판사 출판년도 ISBN

7. 참고문헌 및 자료

• Textbooks & References:
o Goodrich, MT, Tamassia, R., and Goldwasser, MH (2013) Data Structures & Algorithms in Python. Wiley

• References
o 데이터 마이닝의 원리와 구현 (전치혁, 이혜선, 이영록, 이종석 저)
o Python Machine Learning by Sebastian Raschka, PACKT, 2015 (ISBN 978-1-78355-513-0).
o Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython, The Second Edition, by Wes McKinney, O’Reilly

8. 강의진도계획

Week No Day Contents
week1 1 2.18 Intro + Python Primer
  2 20 Object-Oriented Programming
week2 3 25 Algorithm Analysis
  4 27 Recursion
week3 5 3.4 Array-based sequences
  6 6 Maps, Hash Tables
week4 7 11 Numpy
  8 13 Exam #1
week5 9 18 Pandas
  10 20 Linear Regression
week6 11 25 Logistic Regression
  12 27 k-Nearest Neighbors (k-NN)
week7 13 4.1 Naïve Bayes Classifier
  14 3 Decision Tree (ID3 Algorithm)
week8 15 8 Random Forest (Ensemble of Decision Trees)
  16 10 Exam #2
week9 17 15 Support Vector Machine (SVM) (without kernels)
  18 17 Support Vector Machine (SVM) (with kernels)
week10 19 22 k-means clustering
  20 24 Hierarchical Clustering
week11 21 29 Principal Component Analysis (PCA)
  22 5.1 t-SNE (t-Distributed Stochastic Neighbor Embedding)
week12 23 6 Single-Layer Perceptron
  24 8 Exam #3
week13 25 13 Multi-Layer Perceptron (MLP)
  26 15 Convolutional Neural Network (CNN)
week14 27 20 Recurrent Neural Network (RNN)
  28 22 Long Short-Term Memory (LSTM)
week15 29 27 Transformer Model
  30 29 Transformer Model
week16 31 6.3 Exam #4

9. 수업운영

10. 학습법 소개 및 기타사항

Policies
• Attendance: Regular attendance is expected. Students are responsible for catching up on missed content.
• Late Submissions: Assignments submitted late will receive a penalty unless prior approval is granted.
• Collaboration & Academic Integrity: Students are encouraged to discuss concepts but must submit their own work. Plagiarism will result in disciplinary action.

Instructor’s Note: This course is designed to be hands-on and application-driven. Be prepared to write a lot of code and implement algorithms each week. If you have any questions, please feel free to reach out!

11. 장애학생에 대한 학습지원 사항

- 수강 관련: 문자 통역(청각), 교과목 보조(발달), 노트필기(전 유형) 등

- 시험 관련: 시험시간 연장(필요시 전 유형), 시험지 확대 복사(시각) 등

- 기타 추가 요청사항 발생 시 장애학생지원센터(279-2434)로 요청