Instructional Material
The 2023 Machine Learning Engineer RoadMap
Learning this fabulous programming language is not just mandatory to start your journey in machine learning. Still, it is an investment in yourself that you may need all your life because you can even shift your career to another one and still use python in that new industry. This is almost the most popular course among python developers which will help you learn the basics of this language and use the Python built-in data structure, accessing the web, which will be very useful when you are trying to get the data from the web, and using python with the database. The course has more than a million students with a 4.8 rating score which is an excellent resource. Alternatively, you can start your Machine Learning Career with R programming language.
GitHub - girafe-ai/ml-course: Open Machine Learning course
Warning, repository has been renamed to represent its current status. This course aims to introduce students to modern state of Machine Learning and Artificial Intelligence. It is designed to take one full year - approximately 2 * 15 lectures and seminars. All learning materials are available here, full list of topics considered in the course are listed in program_*.pdf Although if you don't have any of this, you could substitude it with your diligence because the course provides additional materials to study requirements yourself.
AI Security Threats against Pervasive Robotic Systems: A Course for Next Generation Cybersecurity Workforce
Robotics, automation, and related Artificial Intelligence (AI) systems have become pervasive bringing in concerns related to security, safety, accuracy, and trust. With growing dependency on physical robots that work in close proximity to humans, the security of these systems is becoming increasingly important to prevent cyber-attacks that could lead to privacy invasion, critical operations sabotage, and bodily harm. The current shortfall of professionals who can defend such systems demands development and integration of such a curriculum. This course description includes details about seven self-contained and adaptive modules on "AI security threats against pervasive robotic systems". Topics include: 1) Introduction, examples of attacks, and motivation; 2) - Robotic AI attack surfaces and penetration testing; 3) - Attack patterns and security strategies for input sensors; 4) - Training attacks and associated security strategies; 5) - Inference attacks and associated security strategies; 6) - Actuator attacks and associated security strategies; and 7) - Ethics of AI, robotics, and cybersecurity.
Unsupervised classification to improve the quality of a bird song recording dataset
Michaud, Félix, Sueur, Jérôme, Cesne, Maxime Le, Haupert, Sylvain
Open audio databases such as Xeno-Canto are widely used to build datasets to explore bird song repertoire or to train models for automatic bird sound classification by deep learning algorithms. However, such databases suffer from the fact that bird sounds are weakly labelled: a species name is attributed to each audio recording without timestamps that provide the temporal localization of the bird song of interest. Manual annotations can solve this issue, but they are time consuming, expert-dependent, and cannot run on large datasets. Another solution consists in using a labelling function that automatically segments audio recordings before assigning a label to each segmented audio sample. Although labelling functions were introduced to expedite strong label assignment, their classification performance remains mostly unknown. To address this issue and reduce label noise (wrong label assignment) in large bird song datasets, we introduce a data-centric novel labelling function composed of three successive steps: 1) time-frequency sound unit segmentation, 2) feature computation for each sound unit, and 3) classification of each sound unit as bird song or noise with either an unsupervised DBSCAN algorithm or the supervised BirdNET neural network. The labelling function was optimized, validated, and tested on the songs of 44 West-Palearctic common bird species. We first showed that the segmentation of bird songs alone aggregated from 10% to 83% of label noise depending on the species. We also demonstrated that our labelling function was able to significantly reduce the initial label noise present in the dataset by up to a factor of three. Finally, we discuss different opportunities to design suitable labelling functions to build high-quality animal vocalizations with minimum expert annotation effort.
Platform-Independent and Curriculum-Oriented Intelligent Assistant for Higher Education
Sajja, Ramteja, Sermet, Yusuf, Cwiertny, David, Demir, Ibrahim
Miscommunication and communication challenges between instructors and students represents one of the primary barriers to post-secondary learning. Students often avoid or miss opportunities to ask questions during office hours due to insecurities or scheduling conflicts. Moreover, students need to work at their own pace to have the freedom and time for the self-contemplation needed to build conceptual understanding and develop creative thinking skills. To eliminate barriers to student engagement, academic institutions need to redefine their fundamental approach to education by proposing flexible educational pathways that recognize continuous learning. To this end, we developed an AI-augmented intelligent educational assistance framework based on a power language model (i.e., GPT-3) that automatically generates course-specific intelligent assistants regardless of discipline or academic level. The virtual intelligent teaching assistant (TA) system will serve as a voice-enabled helper capable of answering course-specific questions concerning curriculum, logistics and course policies. It is envisioned to improve access to course-related information for the students and reduce logistical workload for the instructors and TAs. Its GPT-3-based knowledge discovery component as well as the generalized system architecture is presented accompanied by a methodical evaluation of the system accuracy and performance.
GitHub - DeepAI-School/Semantic-Image-Segmentation-with-Python-Pytorch
Semantic segmentation is a computer vision task that involves classifying every pixel in an image into predefined classes or categories. For example, in an image with multiple objects, we want to know which pixel belongs to which object. The goal of semantic segmentation is to assign a semantic label to each object in the image. This is a challenging task because it requires a high level of detail and accuracy, as well as the ability to handle variations in scale, orientation, and appearance. Here is the course Deep Learning for Image Segmentation with Python & Pytorch that provides a comprehensive, hands-on experience in applying Deep Learning techniques to Semantic Image Segmentation problems and applications.
Using AI to write elearning scripts - Open eLMS
AI models such as Open AI's ChatGPT and Google's Bard are powerful language models that have been trained on a vast corpus of text, which makes it well-suited for writing e-learning scripts. Sophisticated machine learning algorithms allow AI to'understand' language and structure used in educational content, making it capable of generating clear, concise, and informative e-learning scripts. In layman's terms, what AI does is predict your next word (similar to autocorrect on your word processor) but it does it very, VERY, well. So well in fact, that the output it gives is often flawless. To learn, to grow, to spread their minds' great height.
Intro to PyTorch 2: Convolutional Neural Networks
The model we developed for classifying images in the CIFAR-10 dataset was only able to achieve a 53% accuracy on the validation set, and really struggled to correctly classify images of some classes, like birds and cats ( 33–35%). This was expected, since we would normally use Convolutional Neural Networks for image classification. In this part of the tutorial series, we will focus on CNN's and improving the performance of image classification on CIFAR-10. Before we dive into the code, let's discuss the basics of convolutional neural networks so we can have a better understanding of what our code is doing. If you're comfortable with how CNN's work, feel free to skip this section. In comparison to feed-forward networks, like the one we developed in the previous part of the series, CNN's have different architecture, and are composed of different types of layers. In the figure below, we can see the general architecture of a typical CNN, including the different types of layers it can contain.
Task-Aware Information Routing from Common Representation Space in Lifelong Learning
Bhat, Prashant, Zonooz, Bahram, Arani, Elahe
Intelligent systems deployed in the real world suffer from catastrophic forgetting when exposed to a sequence of tasks. Humans, on the other hand, acquire, consolidate, and transfer knowledge between tasks that rarely interfere with the consolidated knowledge. Accompanied by self-regulated neurogenesis, continual learning in the brain is governed by a rich set of neurophysiological processes that harbor different types of knowledge, which are then integrated by conscious processing. Thus, inspired by the Global Workspace Theory of conscious information access in the brain, we propose TAMiL, a continual learning method that entails task-attention modules to capture task-specific information from the common representation space. We employ simple, undercomplete autoencoders to create a communication bottleneck between the common representation space and the global workspace, allowing only the task-relevant information to the global workspace, thus greatly reducing task interference. Experimental results show that our method outperforms state-of-the-art rehearsal-based and dynamic sparse approaches and bridges the gap between fixed capacity and parameter isolation approaches while being scalable. Deep neural networks (DNNs) deployed in the real world are normally required to learn multiple tasks sequentially and are exposed to non-stationary data distributions. Throughout their lifespan, such systems must acquire new skills without compromising previously learned knowledge. However, continual learning (CL) over multiple tasks violates the i.i.d. The menace of catastrophic forgetting occurs due to the stability-plasticity dilemma: the extent to which the system must be stable to retain consolidated knowledge and be plastic to assimilate new information (Mermillod et al., 2013). As a consequence of catastrophic forgetting, performance on previous tasks often drops significantly; in the worst case, previously learned information is completely overwritten by the new one (Parisi et al., 2019). Humans, however, excel at CL by incrementally acquiring, consolidating, and transferring knowledge across tasks (Bremner et al., 2012). Although there is gracious forgetting in humans, learning new information rarely causes catastrophic forgetting of consolidated knowledge (French, 1999).
Building a Multiclass Classification Model in PyTorch - MachineLearningMastery.com Building a Multiclass Classification Model in PyTorch - MachineLearningMastery.com
PyTorch library is for deep learning. Some applications of deep learning models are to solve regression or classification problems. In this tutorial, you will discover how to use PyTorch to develop and evaluate neural network models for multi-class classification problems. In this tutorial, you will use a standard machine learning dataset called the iris flowers dataset. It is a well-studied dataset and good for practicing machine learning.