Title
Machine-Deep Learning
Course ID
ΜΗ0115
Course Description
Document
Semester
10
Period
Spring
Κατηγορία
Elective course (general)
Description
This course covers the following:
- Introduction to Machine Learning: Machine Learning Paradigms, Training Methods, Metrics, Forecasting, Classification.
- Regression Methods: Linear Regression, Logarithmic Regression, Ridge Regression, Static/Dynamic Autoregression, Spectal Analysis.
- Neural Networks: Models and Architectures, Feedfordward models (backpropagation and multilayer perceptron).
- Support Vector Machines: Linear, Kernel Functions, Multi-class classification
- Clustering: Definition, Algorithms, Distance metrics, Similarity Metrics, Partitional clustering, Hierarchical clustering.
- Feature selection: Filtering, Wrapper methods, Other embedded feature selection methods.
- Dimensionality reduction: Principal Component Analysis, Linear Discriminant Analysis, Low dimensional embeddings.
- Deep Neural Network Architectures: Definitions and properties
- Recurrent Neural Network Architectures: Training deep recurrent architectures, backpropagation through time
- Convolutional Neural Networks and Deep Learning: Feature Extraction with Deep Learning
- Python for Deep Learning: Machine learning tools and Deep Learning frameworks (Tensorflow and Keras)
Class schedule
Monday 12:00-15:00
Sections:
An Introduction to Machine-Deep Learning
• Artificial Intelligence Subfields
• Machine Learning (ML) – Representation Learning
• ML Types and Tasks – Big Data
• Deep Learning (DL) – Neural Network Architectures
• Backpropagation Algorithm
• Performance Evaluation – Overfitting
• Simple and Complex DL Applications
• Tensors: the Basic Data Structure in ML
• Data Tensors in Python Libraries
• Tensor Operations
The Building Blocks of Neural Networks
• Layers: The DL Structural Units
• An Introductory DL Study in the Keras Library|
Multiclass Classification of Grayscale Images of Handwritten Digits using the MNIST Database
• Tensors in the Numpy Library
• Python: An Introduction
Setting Up a Deep Learning Workstation I
• Neural Network Anatomy – Biological Neural Networks
• Multilayer Perceptron – Activation Functions
• Setting Up Tensorflow and Keras on Anaconda
• Keras Workflow
• Binary Classification using the IMDb in Keras
• Python: Objects and Operations I
Setting Up a Deep Learning Workstation II
• Gradient Descent Optimization
• Multiclass Classification using the Reuters Database in Keras
• Regression using the Boston Housing Database in Keras
• Python: Objects and Operations II
Formal Framework for Solving Deep Learning Problems
• Formal Procedures for Evaluation of ML models
• Preparation of Data for DL
• Feature Engineering
• Tackling Overfitting
• The Universal Workflow for Approaching ML Problems
• Python: Statements and Syntax Ι
Deep Learning for Computer Vision I
• Convolutional Neural Networks (Convnets)
• Study on the MNIST Database in Keras
• Study on the ‘Dogs vs. Cats’ Database in Keras
• Python: Statements and Syntax ΙI
Deep Learning for Computer Vision II
• Using a Pretrained Convnet
• Visualizing what Convnets Learn
• Data Augmentation to Mitigate Overfitting
• Python: Functions
Deep Learning for Text and Image I
• Preprocessing Text Data
• Word Embedding
• Recurrent Neural Networks
• LSTM and GRU Layers
• Study on the IMDb in Keras
• Python: Modules
Deep Learning for Text and Image II
• Study on the jena_climate Database in Keras
• Bidirectional Neural Networks
• Analysis of Sequential Data with 1D-Covnets
• Python: Classes
Advanced Deep Learning Practices
• From Sequential to Functional Keras API
• Multi-input Models
• Multi-output Models
• Inception
• Residual Connections
• Monitoring DL Models using Keras Callbacks and TensorBoard
Generative Deep Learning I
• Generating Text with LSTM
• The importance of the Sampling Strategy
• DeepDream Applications in Keras
Generative Deep Learning II
• Neural Style Transfer in Keras
• Variational Autoencoders
• Generative Adversarial Networks
Sections:
An Introduction to Machine-Deep Learning
• Artificial Intelligence Subfields
• Machine Learning (ML) – Representation Learning
• ML Types and Tasks – Big Data
• Deep Learning (DL) – Neural Network Architectures
• Backpropagation Algorithm
• Performance Evaluation – Overfitting
• Simple and Complex DL Applications
• Tensors: the Basic Data Structure in ML
• Data Tensors in Python Libraries
• Tensor Operations
The Building Blocks of Neural Networks
• Layers: The DL Structural Units
• An Introductory DL Study in the Keras Library|
Multiclass Classification of Grayscale Images of Handwritten Digits using the MNIST Database
• Tensors in the Numpy Library
• Python: An Introduction
Setting Up a Deep Learning Workstation I
• Neural Network Anatomy – Biological Neural Networks
• Multilayer Perceptron – Activation Functions
• Setting Up Tensorflow and Keras on Anaconda
• Keras Workflow
• Binary Classification using the IMDb in Keras
• Python: Objects and Operations I
Setting Up a Deep Learning Workstation II
• Gradient Descent Optimization
• Multiclass Classification using the Reuters Database in Keras
• Regression using the Boston Housing Database in Keras
• Python: Objects and Operations II
Formal Framework for Solving Deep Learning Problems
• Formal Procedures for Evaluation of ML models
• Preparation of Data for DL
• Feature Engineering
• Tackling Overfitting
• The Universal Workflow for Approaching ML Problems
• Python: Statements and Syntax Ι
Deep Learning for Computer Vision I
• Convolutional Neural Networks (Convnets)
• Study on the MNIST Database in Keras
• Study on the ‘Dogs vs. Cats’ Database in Keras
• Python: Statements and Syntax ΙI
Deep Learning for Computer Vision II
• Using a Pretrained Convnet
• Visualizing what Convnets Learn
• Data Augmentation to Mitigate Overfitting
• Python: Functions
Deep Learning for Text and Image I
• Preprocessing Text Data
• Word Embedding
• Recurrent Neural Networks
• LSTM and GRU Layers
• Study on the IMDb in Keras
• Python: Modules
Deep Learning for Text and Image II
• Study on the jena_climate Database in Keras
• Bidirectional Neural Networks
• Analysis of Sequential Data with 1D-Covnets
• Python: Classes
Advanced Deep Learning Practices
• From Sequential to Functional Keras API
• Multi-input Models
• Multi-output Models
• Inception
• Residual Connections
• Monitoring DL Models using Keras Callbacks and TensorBoard
Generative Deep Learning I
• Generating Text with LSTM
• The importance of the Sampling Strategy
• DeepDream Applications in Keras
Generative Deep Learning II
• Neural Style Transfer in Keras
• Variational Autoencoders
• Generative Adversarial Networks
Assessment methods
Mid-Semester Exam: 30% of final grade
Final Exam: 70% of final grade
Location
Neoclasical Building
Recommended Reading
• Chollet, F. Deep learning with Python Simon and Schuster (2021)
• Atienza, R. Advanced Deep Learning with TensorFlow 2 and Keras Packt Publishing Ltd. (2020)
• Raschka, S. Python machine learning Packt publishing ltd. (2015)
• Goodfellow, I., Bengio, Y. & Courville, A. Deep Learning MIT Press (2016)
• Alpaydin, E. Introduction to machine learning MIT press (2020)
• Patterson, J. & Gibson, A. Deep learning: A practitioner's approach O'Reilly Media, Inc. (2017)
• Nielsen, M.A. Neural networks and deep learning Determination Press (2015)