0% found this document useful (0 votes)
40 views3 pages

Machine Learning II Syllabus 2020-21

This document is a syllabus for a Machine Learning II course taught at Sabanci University in Spring 2020-2021. The course will cover various machine learning techniques including association rules, clustering, classification, dimensionality reduction, and neural networks using Python. It will meet on Saturdays from 1-4pm and Wednesdays from 7-10pm. The instructor is İnanç Arın and the teaching assistant is Yalçın Can Kılıç. Students will complete take-home exams and a final exam involving both theoretical and practical concepts. References and resources will be provided on the course's SUCourse+ site.

Uploaded by

Hakan
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
40 views3 pages

Machine Learning II Syllabus 2020-21

This document is a syllabus for a Machine Learning II course taught at Sabanci University in Spring 2020-2021. The course will cover various machine learning techniques including association rules, clustering, classification, dimensionality reduction, and neural networks using Python. It will meet on Saturdays from 1-4pm and Wednesdays from 7-10pm. The instructor is İnanç Arın and the teaching assistant is Yalçın Can Kılıç. Students will complete take-home exams and a final exam involving both theoretical and practical concepts. References and resources will be provided on the course's SUCourse+ site.

Uploaded by

Hakan
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Syllabus (Spring 2020-2021)

DA517 Machine Learning II

Meeting Times
Saturday 13:00 - 16:00

Wednesday 19:00 - 22:00

Instructor
İnanç Arın e-mail: [Link]@[Link]

Teaching Assistant
Yalçın Can Kılıç email: yalcinkilic@[Link]

Course Description, Aim and Content


In the scope of this course we will cover various machine learning and data mining methods,
namely the associations, clustering and classification applied to different data types. We will look
at recommendation systems and personalization where data mining models play an important
role. Students are expected to understand the fundamental theory behind each technique, as
well as implementing them using an environment such as Python. Some machine learning
concepts will be recovered by applying them on Python. This course also aims to improve
practical programming skills of the students for implementing basic/advanced machine learning
techniques. Therefore, we will be developing lots of Python applications to reinforce our
theoretical knowledge.

1
Schedule1
1. (Stochastic) Gradient Descent
2. Some Machine Learning Concepts (Recap with Python)
a. End to end machine learning application, Imbalanced dataset
b. Overfitting/Underfitting
c. Handling missing values
3. Association Rules (maybe)
4. Clustering Algorithms
a. Partition Based Clustering Algorithms
b. Hierarchical Clustering Algorithms
c. Density Based Clustering Algorithms and Outlier Detection with DBSCAN
d. How to use unsupervised learning to improve supervised learning results
5. Text Mining
a. Text Clustering
i. Longest Common Subsequence/Substring
b. Text Classification
c. Data Structures/Indexing Methods to Improve Text Clustering (Locality Sensitive
Hashing)
6. Dimensionality Reduction
a. Linear Projection
i. PCA (Incremental & Kernel PCA)
ii. SVD
b. Manifold Learning
i. t-SNE
7. Data Mining for Recommendation Systems and Personalization
8. Artificial Neural Network with Keras
a. Sequential API
b. Functional API
c. Wide & Deep Neural Networks
d. Callbacks
9. Advanced end to end machine learning application development

1
Instructor may change the contents and the order of the topics during the semester

2
Grading
● Take-Home Exams 60% (Group & individual exercises)
● Final Exam 40% (Both theoretical and practical with Python)

References
● Data Mining Concepts and Techniques, Jiawei Han & Micheline Kamber & Jian Pei,
Morgan Kaufmann (3rd edition)
● Patel, A. A. (2019). Hands-On Unsupervised Learning Using Python: How to Build Applied
Machine Learning Solutions from Unlabeled Data. O'Reilly Media.
● Hapke, H. M., Lane, H., & Howard, C. (2019). Natural language processing in action.
● Géron, Aurélien. Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow:
Concepts, Tools, and Techniques to Build Intelligent Systems. O'Reilly Media, 2019.
● Scikit-Learn: Machine Learning in Python [Link]
● Some other additional resources will be shared in our course Google Drive folder.

Announcements and SUCourse+


Students are responsible for all announcements made during the regular class meetings.
Students should check their Sabanci University e-mail accounts ([Link]) and
follow the SUCourse+ site ([Link] for this class regularly as they
are responsible for all announcements and postings delivered through these sources.

Important Note: This document may be modified during the semester (Spring 2020-2021) due to
unforeseen reasons.

Common questions

Powered by AI

The course DA517 teaches students to handle missing data values by familiarizing them with various preprocessing techniques, such as imputation strategies. Students practice these techniques using Python, learning to implement solutions that maintain dataset integrity and improve model performance. This practical experience helps students manage real-world datasets effectively .

Callbacks in Keras enhance the training process by allowing for custom operations to be executed at certain stages of training. This can include functionalities such as early stopping to prevent overfitting, saving model checkpoints, adjusting learning rates dynamically, or logging custom metrics. These operations help optimize the training process, resulting in better-performing models .

Unsupervised learning techniques, such as clustering algorithms, are used to preprocess or organize data in a way that can enhance the accuracy and effectiveness of supervised learning models. For example, clustering can segment data into meaningful groups which can serve as input variables to supervised models, potentially leading to improved prediction results .

Dimensionality reduction methods like PCA and t-SNE are crucial in machine learning for handling large datasets with multiple features, which may cause models to overfit. PCA reduces dimensionality by projecting data onto principal components explaining the maximum variance, while t-SNE is used for visualizing high-dimensional data by mapping it into two or three dimensions, preserving distance relationships. These methods help simplify models, leading to faster computations and potentially better generalization .

Text mining is essential in recommendation systems as it involves extracting meaningful information from textual data, which can then be used to personalize content suggestions. Techniques like text clustering and classification analyze user-generated content, identify preferences, and improve the accuracy of recommendations by adapting to users' evolving interests. This personalized approach enhances user engagement with the system .

Imbalanced datasets pose challenges in machine learning as they may lead to biased model predictions favoring the majority class. Strategies to address this include resampling methods such as oversampling the minority class, undersampling the majority class, and applying algorithms like SMOTE. Cost-sensitive learning techniques and performance metrics like the F1-score are also used to ensure models are not biased towards any class .

A thorough understanding of overfitting and underfitting is crucial because it impacts the model's ability to generalize well on new, unseen data. Overfitting occurs when a model learns noise from the training data, while underfitting happens when a model is too simple to capture underlying patterns. Identifying and mitigating these issues ensures models are robust and perform well across different datasets .

DA517 aims to use Python by enabling students to implement machine learning techniques through practical programming exercises. The course focuses on developing Python applications to reinforce the theoretical knowledge taught in the class. This hands-on approach allows students to understand machine learning concepts as well as apply them in real-life scenarios .

The Sequential API in Keras allows for straightforward linear stacking of layers, making it ideal for building simple neural network architectures quickly. In contrast, the Functional API provides more flexibility, enabling the construction of complex networks with multiple inputs, outputs, and shared layers. This adaptability is crucial for developing wide and deep networks or models requiring advanced architectures not supported by the Sequential API .

Clustering algorithms have practical applications such as customer segmentation, anomaly detection, and image compression. In this course, they are applied as part of unsupervised learning techniques to group data into meaningful subsets, enhancing subsequent supervised learning processes. Algorithms like DBSCAN are also used for outlier detection, which can refine datasets used in model training .

You might also like