PhD Research Supervision
Newcastle University, 2021 - present.

PhD Supervision.
Research Projects:
- An Analysis of Different Machine Learning and Inference Methodologies on Edge Devices
- Temporal Graph Representation and Comparison
Postgraduate Research Supervision
Newcastle University, 2020 - present.

MSc Supervision.
Machine Learning Projects:
- AI and Dermatology
- Detecting Clouds in Satellite Images
- Segmenting Marine Life Images
Undergraduate Research Supervision
Newcastle University, 2020 - present.

Dissertation Supervision.
Machine Learning Projects:
- Image Colourisation
- Deep Learning for Image Inpainting
- Diagnosing the Parkinson’s Disease
Deep Learning
Newcastle University, 2021 - present.

Lectures, Practicals, Coursework.
What is Deep Learning? Applications of Deep Learning, Loss functions and Backpropagation, training and optimisation,
Classification/Regression, Convolutional Neural Networks, Computer Vision applications, Recurrent Neural Networks,
Natural Language Processing applications, Improved training and performance of neural networks, Generative models,
Ethics and challenges of Deep Learning, Deep Reinforcement Learning, embeddings and Representation Learning.
Software Engineering
Durham University, 2015 - 2018.

Practicals.
Software development practices, requirements discovery and analysis, software Design, testing, human computer interaction, software quality and process, project management, etc.
Software Methodologies
Durham University, 2015 - 2018.

Practicals.
Artificial Intelligence Search: heuristic searches, local searches, simulated annealing, genetic algorithms, etc.
Graphics: 3D graphics construction, rendering, modelling, transformation, shading, texture mapping, OpenGL, etc.
Digital Communication: entropy, information theory, lossless compression, encryption algorithms, etc.
Image Processing: transformation functions, histograms, spatial linear and nonlinear filters, JPEG, colour spaces, etc.
Programming Paradigms
Durham University, 2015 - 2017.

Practicals.
Systems programming: C, Bash, etc.
Functional programming, Haskell.
Object oriented programming: Java, Python.
Web Programming: HTML, JavaScript, PHP.
Programming Languages
Shahid Bahonar University of Kerman, 2011 - 2015.

Lectures and Practicals.
C, C++, Java.
Management Information Systems
Shahid Bahonar University of Kerman, 2011 - 2015.

Lectures.
Concepts and principles, design, automation systems and enterprise planning.
Principles of Compiler Design
Shahid Bahonar University of Kerman, 2011 - 2015.

Lectures and Coursework.
Introduction, architecture, lexical and syntax analysis, parsing methods, error recovery, semantic analysis, run-time environments, etc.
Artificial Intelligence
Shahid Bahonar University of Kerman, 2011 - 2015.

Lectures and Coursework.
Stochastic search methods, combinatorial optimisation, soft-computing methods, principles of machine learning, neural networks, image processing and computer vision, etc.
English for Computer Science
Shahid Bahonar University of Kerman, 2011 - 2015.

Lectures.
Graduate level course for computer science students.