This is resources for going from software engineer/non-software engineer to profressional in AI engineer.
I'm a Thai Software Engineer who is really passionate to become entrepreneur, investor, and AI engineer. Was found Humaan.ai to bringing the AI to everyone to do incredible ways.
Currently, I'm studying for a master's degree in Business Analytics and Data Sciences, where majoring in Artificial Intelligence and Machine Learning at National Institute of Development Administration (NIDA), Thailand.
Connect with me at Linkedin Β· Twitter Β· Facebook Β· GitHub
- What Exactly Does an AI Engineer Do
- Part I: Artificial Intelligence
- Chapter 1: Intro to Artificial Intelligence
- What is Artificial Intelligence?
- The History of Artificial Intelligence
- Chapter 1: Intro to Artificial Intelligence
- Part II: Problem-solving
- Part III: Knowledge, reasoning, and planning
- Part IV: Uncertain knowledge and reasoning
- Part V: Learning
- Part VI: Communicating, perceiving, and acting
- Appendix A: Rockstars of the AI Research and AI Engineering World
- Appendix B: Resources
- Appendix C: Online Courses
- Linear Algebra
- Scalars
- Vectors
- Matrices
- Tensors
- Probability and Information Theory
- Numerical Computation
- Hidden Markov Models
- Python Basics
- Flow Control
- Data Structures
- Functions
- Files and the Operating System
- Introduction to Computer Science and Programming in Python: Introduction to Computer Science and Programming in Python is intended for students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems and to help students, regardless of their major, feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class uses the Python 3.5 programming language.
- Introduction to Computational Thinking and Data Science: The continuation of "Introduction to Computer Science and Programming in Python" and is intended for students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems and to help students, regardless of their major, feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals.
- Introduction to Algorithms: This course provides an introduction to mathematical modeling of computational problems. It covers the common algorithms, algorithmic paradigms, and data structures used to solve these problems. The course emphasizes the relationship between algorithms and programming, and introduces basic performance measures and analysis techniques for these problems.
Topics include Vector spaces, Matrix vector operations, Rank of a matrix, Norms, Eigenvectors and values and a bit of Matrix calculus too.
- Linear algebra explained in four pages (PDF)
- Linear Algebra Review and Reference (PDF)
- Linear Algebra: This is a basic subject on matrix theory and linear algebra. Emphasis is given to topics that will be useful in other disciplines, including systems of equations, vector spaces, determinants, eigenvalues, similarity, and positive definite matrices.
- Matrix Algebra for Engineers: This course is all about matrices, and concisely covers the linear algebra that an engineer should know.
Topics include Random variables, expectation, Probability distributions and so on.
- CME 106 - Introduction to Probability and Statistics for Engineers
- Review of Probability Theory (PDF)
- Introduction to Probability and Statistics: This course provides an elementary introduction to probability and statistics with applications. Topics include: basic combinatorics, random variables, probability distributions, Bayesian inference, hypothesis testing, confidence intervals, and linear regression.
Topics include Limits, Derivatives, Implicit differentiation, Finding extrema, MVT, Newton's method and Integral calc stuff. The advanced materials are about Matrix calculus - Gradients, Directional derivatives etc.
- Convex Optimization: his course concentrates on recognizing and solving convex optimization problems that arise in applications. The syllabus includes: convex sets, functions, and optimization problems; basics of convex analysis; least-squares, linear and quadratic programs, semidefinite programming, minimax, extremal volume, and other problems; optimality conditions, duality theory, theorems of alternative, and applications; interior-point methods; applications to signal processing, statistics and machine learning, control and mechanical engineering, digital and analog circuit design, and finance.
- Mathematics of Machine Learning : Broadly speaking, Machine Learning refers to the automated identification of patterns in data. As such it has been a fertile ground for new statistical and algorithmic developments. The purpose of this course is to provide a mathematically rigorous introduction to these developments with emphasis on methods and their analysis.
- Intro to AI : Lecture and course materials for UC Berkeley CS188 Intro to AI
- Artificial Intelligence - MIT : This course introduces students to the basic knowledge representation, problem solving, and learning methods of artificial intelligence.
- Techniques in Artificial Intelligence (SMA 5504) : Topics covered include: representation and inference in first-order logic, modern deterministic and decision-theoretic planning techniques, basic supervised learning methods, and Bayesian network inference and learning.
-
Natural Language Processing β Stanford University by Dan Jurafsky
-
Natural Language Processing Specialization : Break into the NLP space. Master cutting-edge NLP techniques through four hands-on courses!
-
Stanford's Natural Language Processing with Deep Learning (CS224n) : Natural language processing (NLP) is a crucial part of artificial intelligence (AI), modeling how people share information. In recent years, deep learning approaches have obtained very high performance on many NLP tasks. In this course, students gain a thorough introduction to cutting-edge neural networks for NLP.
- Machine Learning by Andrew Ng: This course provides a broad introduction to machine learning, datamining, and statistical pattern recognition. Topics include: (i) Supervised learning (parametric/non-parametric algorithms, support vector machines, kernels, neural networks). (ii) Unsupervised learning (clustering, dimensionality reduction, recommender systems, deep learning). (iii) Best practices in machine learning (bias/variance theory; innovation process in machine learning and AI). The course will also draw from numerous case studies and applications, so that you'll also learn how to apply learning algorithms to building smart robots (perception, control), text understanding (web search, anti-spam), computer vision, medical informatics, audio, database mining, and other areas.
- Machine Learning - MIT: an introductory course on machine learning which gives an overview of many concepts, techniques, and algorithms in machine learning, beginning with topics such as classification and linear regression and ending up with more recent topics such as boosting, support vector machines, hidden Markov models, and Bayesian networks.
- Machine Learning for Healthcare: This course introduces students to machine learning in healthcare, including the nature of clinical data and the use of machine learning for risk stratification, disease progression modeling, precision medicine, diagnosis, subtype discovery, and improving clinical workflows.
- CS 329S: Machine Learning Systems Design: This course aims to provide an iterative framework for designing real-world machine learning systems. The goal of this framework is to build a system that is deployable, reliable, and scalable.
- Applied Machine Learning (Cornell Tech CS 5787, Fall 2020): Lecture videos and materials from the Applied Machine Learning course at Cornell Tech, taught in Fall 2020.
- Machine Learning with Kernel Methods, Spring 2021 | Julien Mairal and Jean-Philippe Vert Google Brian & INRIA: The goal of this course is to present the mathematical foundations of kernel methods, as well as the main approaches that have emerged so far in kernel design.
- Machine Learning with Graphs Complex data can be represented as a graph of relationships between objects. Such networks are a fundamental tool for modeling social, technological, and biological systems. This course focuses on the computational, algorithmic, and modeling challenges specific to the analysis of massive graphs. By means of studying the underlying graph structure and its features, students are introduced to machine learning techniques and data mining tools apt to reveal insights on a variety of networks.
- Practical Deep Learning for Coders: Deep Learning for Coders with fastai and PyTorch: AI Applications Without a PhD - the book and the course
- Introduction to Deep Learning: This is MIT's introductory course on deep learning methods with applications to computer vision, natural language processing, biology, and more! Students will gain foundational knowledge of deep learning algorithms and get practical experience in building neural networks in TensorFlow.
- Deep Learning Specialization by Andrew Ng: Become a Deep Learning experts. Master Deep Learning and Break into AI
- Deep Reinforcement Learning: Lectures for UC Berkeley CS 285: Deep Reinforcement Learning.
- Deep Learning for Computer Vision: Lecture for Michigan University EECS 498-007/598-005 Deep Learning for Computer Vision
- Introduction to Deep Learning-Spring 2021, Carnegie Mellon University : This course we will learn about the basics of deep neural networks, and their applications to various AI tasks.
- Full Stack Deep Learning-Spring 2021, UC Berkeley: Full Stack Deep Learning helps you bridge the gap from training machine learning models to deploying AI systems in the real world.
- NYUβs Deep Learning: This course concerns the latest techniques in deep learning and representation learning, focusing on supervised and unsupervised deep learning, embedding methods, metric learning, convolutional and recurrent nets, with applications to computer vision, natural language understanding, and speech recognition.
- The Deep Learning Lecture Series 2020 (DeepMind x UCL): In this series, DeepMind Research Scientists and Research Engineers deliver 12 lectures on a range of topics in Deep Learning.
- Deep Learning in the Life Sciences-Spring 2021, MIT: This courses introduces foundations and state-of-the-art machine learning challenges in genomics and the life sciences more broadly
- NYU Deep Learning Spring 2021 (NYU-DLSP21), NYU Center For Data Science: This course includes history, backpropagation, and gradient descent, parameter sharing: recurrent and convolutional networks, latent variable (LV) energy based models (EBMs)
- Convolutional Neural Networks: In the fourth course of the Deep Learning Specialization, you will understand how computer vision has evolved and become familiar with its exciting applications such as autonomous driving, face recognition, reading radiology images, and more.
- Become a Computer Vision Expert: Master the computer vision skills behind advances in robotics and automation. Write programs to analyze images, implement feature extraction, and recognize objects using deep learning models.
- Self-Driving Cars Specializationβ University of Toronto: Launch Your Career in Self-Driving Cars. Be at the forefront of the autonomous driving industry.
- Introduction to Computer Vision with Watson and OpenCVβ IBM: This course you will utilize Python, Pillow, and OpenCV for basic image processing and perform image classification and object detection.
- AWS Computer Vision: Getting Started with GluonCVβ AWS: This course provides an overview of Computer Vision (CV), Machine Learning (ML) with Amazon Web Services (AWS), and how to build and train a CV model using the Apache MXNet and GluonCV toolkit. The course discusses artificial neural networks and other deep learning concepts, then walks through how to combine neural network building blocks into complete computer vision models and train them efficiently.
- Python for Computer Vision with OpenCV and Deep Learningβ Udemy: Learn the latest techniques in computer vision with Python , OpenCV , and Deep Learning
- Deep Learning and Computer Vision A-Zβ’: OpenCV, SSD & GANsβ Udemy: Become a Wizard of all the latest Computer Vision tools that exist out there. Detect anything and create powerful apps.
- Image Understanding with TensorFlow on GCPβ Google Cloud Training: This is the third course of the Advanced Machine Learning on GCP specialization. In this course, We will take a look at different strategies for building an image classifier using convolutional neural networks. We'll improve the model's accuracy with augmentation, feature extraction, and fine-tuning hyperparameters while trying to avoid overfitting our data. We will also look at practical issues that arise, for example, when you donβt have enough data and how to incorporate the latest research findings into our models.
- 3D Computer Vision - National University of Singapore - 2021: an introductory course on 3D Computer Vision which was recorded for online learning at NUS due to COVID-19.
- CV3DST - Computer Vision 3: Detection, Segmentation and Tracking
- ADL4CV - Advanced Deep Learning for Computer Vision
- CS839 Modern Data Management and Machine Learning Systems Modern Data Analytics and Machine learning (ML) are enjoying rapidly increasing adoption. However, designing and implementing the systems that support modern data analytics and machine learning in real-world deployments presents a significant challenge, in large part due to the radically different development and deployment profile of modern data analysis methods, and the range of practical concerns that come with broader adoption.
- Motion Heatmap Using OpenCV in Python: This sample application is useful to see movement patterns over time. For example, it could be used to see the usage of entrances to a factory floor over time, or patterns of shoppers in a store.
- Few-Shot vid2vid by NVIDIA: Pytorch implementation for few-shot photorealistic video-to-video translation. It can be used for generating human motions from poses, synthesizing people talking from edge maps, or turning semantic label maps into photo-realistic videos. The core of video-to-video translation is image-to-image translation. Some of our work in that space can be found in pix2pixHD and SPADE.
- Gaussian YOLOv3: An Accurate and Fast Object Detector for Autonomous Driving : Gaussian YOLOv3: An Accurate and Fast Object Detector Using Localization Uncertainty for Autonomous Driving (ICCV, 2019)
- OpenPose: Real-time multi-person keypoint detection library for body, face, hands, and foot estimation
- T5: Text-To-Text Transfer Transformer : Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer
- Homemade Machine Learning: Python examples of popular machine learning algorithms with interactive Jupyter demos and math being explained
- Introduction to Applied Linear Algebra β Vectors, Matrices, and Least Squares by Stephen Boyd and Lieven Vandenberghe
- Convex Optimization by Boyd and Vandenberghe
- Mathematics for Computer Science (eBook)
- Mathematics for Machine Learning
- Machine Learning: A Probabilistic Perspective (2012)
- Probabilistic Machine Learning: An Introduction (2022)
- Probabilistic Machine Learning: Advanced Topics (2023)
- Machine Learning Refined: Foundations, Algorithms, and Applications
- Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems
- Deep Learning (Adaptive Computation and Machine Learning series)
- Deep Learning Illustrated
- Deep Learning for Coders with Fastai and PyTorch
- Dive into Deep Learning [PDF][Free]
- Machine Learning Algorithms Python and R Codes Cheatsheet by Analytics Vidhya
- The mostly complete chart of Neural Networks, explained
- PyTorch: An open source machine learning framework that accelerates the path from research prototyping to production deployment.
- CARLA: An Open Urban Driving Simulator: An open-source simulator for autonomous driving research.
- Open3D: An open-source library that supports rapid development of software that deals with 3D data.
- AI Expert Roadmap: Roadmap to becoming an Artificial Intelligence Expert in 2021
The courses below are required and/or recommended for completing the Artificial Intelligence Graduate Certificate Program
Mathematics
- Mathematics for Machine Learning series from Imperial College London [Coursera]
- Stanford CS229 Linear Algebra Review and Reference [eBook]
- Single Variable Calculus [MIT OpenCourseWare]
- Multivariable Calculus [MIT OpenCourseWare]
- MIT Linear Algebra course [MIT OpenCourseWare]
- Mathematics of Machine Learning [MIT OpenCourseWare]
- The Matrix calculus for Deep Learning [PDF]
Optimization
- Machine Learning Refined: Foundations, Algorithms, and Applications (Book)
- Linear Algebra and Optimization for Machine Learning: A Textbook (Book)
- Convex Optimization (Book)
- Numerical Optimization (Book)
Statistics and Probability
- Stanford CS229 Review of Probability Theory [PDF]
- Stanford CS229 Statistics and Probability Refresher
Python
- Introduction to Computer Science and Programming Using Python [edX]
- https://www.coursera.org/specializations/data-science-python
- Stanford CS231n Python/Numpy Tutorial
- CS221: Artificial Intelligence: Principles and Techniques
- AA228: Decision Making Under Uncertainty
- AA274A: Principles of Robot Autonomy I
- CS157: Computational Logic
- CS223A: Introduction to Robotics
- CS224N: Natural Language Processing w/ Deep Learning
- CS224U: Natural Language Understanding
- CS228: Probabilistic Graphical Models: Principles and Techniques
- CS229: Machine Learning
- CS230: Deep Learning
- CS231A: Computer Vision: From 3D Reconstruction to Recognition
- CS231N: Convolutional Neural Networks for Visual Recognition
- CS234: Reinforcement Learning
- CS236: Deep Generative Models
- CS237B: Principles of Robot Autonomy II
- CS330: Deep Multi-task and Meta Learning
- STATS214: Machine Learning Theory
- Alan Turing institute
- J.P. Morgan A.I. research lab
- Oxford Machine Learning research Group
- LIVIA(Laboratory of Imaging, Vision and Artificial Intelligence)
- Microsoft research lab-AI
- Berkeley AI Research Lab
- MIT computer science and artificial intelligence laboratory
- Stanford AI Lab
- Stanford HAL
- MIT HAN Lab
International Conferences in Artificial Intelligence, Machine Learning, Computer Vision, Data Mining, Natural Language Processing and Robotics
- CVPR: IEEE Conference on Computer Vision and Pattern Recognition
- NeurIPS: Neural Information Processing Systems
- ICML: International Conference on Machine Learning
- ICCV: International Conference on Computer Vision
- AAAI: Association for the Advancement of Artificial Intelligence
Computer Vision
- Sanja Fidler: Associate Professor at University of Toronto, and a Director of AI at NVIDIA, leading a research lab in Toronto.
- Machine Learning Toolkit: A curated list of the best machine learning tools - with simple explanations.
See CONTRIBUTING.
Our mission is to "solve intelligence" and enable AI technologies to unleash everyone capabilites and to address humanity's grand challenges.