You will become a data scientist in 9 months and will find a job
Strong skills in neural network writing
In 9 months you will master more than 28 real neural networks: from the simplest to the newest and most complex ones.
Apply a neural network project for your personal, or professional purposes
You will receive an unlimited number of consultations and implement your project during the course.
Portfolio and job references
We will provide you with everything you need to get a job with the field of machine learning, or more interesting tasks, and a higher salary in your current position.
A guaranteed employment
We guarantee your employment as a data scientist or relevant.
What will help you to find a job?
At the end of the course, you will become a skilled specialist, and also receive support in finding a job.
Our course is focused on making you a qualified specialist, and providing you with fresh and essential information. At the end of the course you will build the most modern and complex neural networks. You will be able to solve 99% problems that are in demand on the market. Moreover, you will be able to prove your qualification with a portfolio, showing both diploma and coursework projects, together with more than 20 neural networks that you will implement during your training.
Internship and employment with business partners
The University has a partnership with other companies, which are expecting your CV from us as soon as you finish the course. Besides, already during the studies you will be able to do an internship at some of them, and at the University of Artificial Intelligence itself. After the internship, companies will be able to offer you a permanent job placement (including the possibility to join the University development team).
Job references
We will provide you with an individual recommendation on the official letterhead with our seal and signature. This will be a significant advantage for your employment.
High-quality training and portfolio
Our HR department will fully support you in your employment
How we help you to get a job
Preparation of CV and portfolio
We will call you, ask about your experience in detail, help you to prepare your CV and portfolio.
Selection of suitable job openings
Our HR department will select several dozens of suitable positions for you. You will need to send a response cover letter to these vacancies.
Interview support
We will accompany you in your interviews, receive feedback both from you and the chosen company until you enter a new job.
From the first day of training you will write neural networks and solve real problems
Internship
After 5-6 months of training, you will be able to do an internship at our business partners, as well as in our team. Each company arranges the internship in its own way. Most companies, in case of a successful internship, will make you an offer for a permanent position.
Consultations based on real tasks
When you need advice on your project, our teachers, senior teachers and developers will be ready to assist you.
Throughout the course you will be able to ask questions to experienced tutors, and they will be able to help you with both home assignments and work projects.
9 months of working with a senior teacher
Course and diploma projects
A diploma project is your independent research, where you will have to make up a neural network task, and successfully solve it. A course project is a preliminary work on a diploma in the middle of a course.
Oral exam via Zoom
To get your diploma you will need to take an oral exam, which is a survey on all course topics. We must make sure that you have fully understood the course material.
These libraries are used all around the globe in commercial projects. They have the most powerful functionality, and these libraries have formed huge communities of developers.
We teach 3 of the best AI libraries in the world
Why Python?
Python is by far better than any other language, not only for learning neural networks, but also for functional programming
Best AI Libraries
Keras, Tensorflow and PyTorch are libraries in Python.
The easiest to learn
Python is considered the simplest language to learn.
Since 2018, Python has become the most popular language. Python developers' salaries are among the highest.
One of the most popular languages on the market
Google provides free servers for neural network training, these services work only in Python.
Google colaboratory
Apply for a course
Get specialist's advice, and learn about your individual payment terms
Experienced team of developers and teachers
Teachers and senior teachers
The University has a highly experienced team of teachers and developers
Course teacher
Nick
✓ Graduated with a BSc from Toronto's York University, Faculty of Science, Dept. of Physics in 2019 ✓ Studied anthropogenic climate change alongside tenured professors ✓ Experience working with MATLAB, Python 3, Numpy, Tensorflow, Keras, Matplotlib ✓ Developed AI to solve problems related to image classification, object detection, and logistic regression.
Hi, my name is Nick, I am starting out my career as a software engineer and I also happen to be a big machine learning enthusiast! I graduated from York University in Toronto, Canada in 2019, where I first picked up programming in MATLAB as a hobby (and for subject-related use), but I soon decided to do programming full-time. A close friend of mine then advised me to look into neural networks, which is why I am here today! I look forward to sharing thoughts and ideas with every one of you, and to help you realize your potential in programming and machine learning!
Nick
Course teacher
Huge material base
The amount of material in our database is much larger than the course size, but you can access it if necessary.
190 notebooks with code
48 presentations
68 class recordings
89 home assignments
We use unique databases
These bases are in line with our realia.
A car price database
Apartments
Aircraft base
Writers' Texts
Feedback Base
Company's share prices
Clustering online purchases
Base for face images
Base for audio genres
Contract base
What neural networks you will create
We will cover all of these neural networks in detail in our sessions
20. CV clustering
1. Recognition of handwritten digits (MNIST)
4. Voice command recognition (Smart Home)
2. Apartment valuation
6. Spacecraft landing using genetic algorithms
8. Car model classification
10. Stock price prediction
12.Neural network chat-bot
14. Internet shopping clustering
18. Segmentation of contracts
16. Segmentation of aircraft images
5. Sonar data prediction, neural network for car price prediction
3. Classification of writers' texts
7. Image classification from Cifar10, Cifar 100 bases
9. Classification of music genres
11. Human-face-based neural network
13. Detection of fraudulent transactions
15. Neural network for playing ping-pong
17. A neural network trained on random data
19. Classification of user feedback
Apply for a course
Get specialist's advice, and learn about your individual payment terms
Educational program
Below you can see a brief description of our programs
Click on the class title to see its detailed description
6 PYTHON SESSIONS
Description: Introducing participants to the Python programming language, learning the logic of writing a code in Python. Code examples. Introducing participants to the main types of data that they will encounter as they learn. Introduction of the functions, methods, and data structures, the knowledge of which would allow students to write more complex programs in the future.
Description: Introducing the Numpy library: what it is and how to work with it. Numpy is a large-scale library for working with arrays, matrices, i.e. with some volumes of data, carrying out manipulations with this data. In most cases, Numpy is used in conjunction with other libraries that provide tools for working with linear algebra. Knowledge of this library is a key point in understanding, and writing programs, working with code in neural networks. We study the concept of an array, the fundamental Python tools for working with this array.
Description: In Numpy, manipulation with arrays is performed, whereas in Pandas these large blocks are added to a large DataFrame and work with this database takes place. The lesson is aimed at showing how to work with large datasets, how to group them, how to handle these datasets, and extract information. Quick Python commands and methods for the fastest retrieval of the data category that is needed for further work.
Description: In Numpy, manipulation with arrays is performed, whereas in Pandas these large blocks are added to a large DataFrame and work with this database takes place. The lesson is aimed at showing how to work with large datasets, how to group them, how to handle these datasets, and extract information. Quick Python commands and methods for the fastest retrieval of the data category that is needed for further work.
Description: These libraries are intended for visualization. One of the most important tasks of a developer is not only to calculate his network and find the right solution. But also to be able to visualize. This lesson is aimed at deeply familiarizing yourself with data visualization in various ways of displaying it. In the form of diagrams, graphs, drawings, which will be highly informative.
Description: Prior to this, acquaintance with the main points in Python takes place: with the syntax - words that you can use to build sentences with; with options for storing the data structure - with the Numpy library, with Pandas, which will later be used for manipulating the databases, with visualization methods. In the lesson, you learn what a function is, how a function is written in Python, how it works, when you need to use it, how it can help in the optimization. Modules. Module loading.
5 MATHEMATICS SESSIONS
Description: Transition to linear algebra. Mathematics in neural networks is connected with the understanding of linear algebra and with the understanding of what a matrix is, what mathematical actions can be performed with matrices, how can these actions be performed with matrices, without printing each mathematical action, but by loading a separate library. Function in terms of mathematics. How a function is built. What are the function graphs, and what information they give.
Description: Deepening into mathematics. Combinatorics, set theory, and Boolean algebra are what you need to know for the development of abstract thinking, to broaden your horizons in terms of selecting abstractions. The study of combinatorics for a better understanding of the principle of recursion. Deepening into Boolean algebra - the basis of programming. Learning set theory for a better understanding of diagrams.
Description: Probability theory and statistics are the foundation of data science. During the lesson, we will study what probability is, what the probability density is, what the distributions are, and what the mathematical expectation is.
Description: This is a large section, divided into several subsections. It is an important section, since starting from the analysis of datasets and ending with some error functions, all of these areas are tied to the knowledge of probability theory, and mathematical statistics.
Description: Participants will have to process different types of data, including work with audio signals. The lesson will introduce you to what a signal is, how it can be analyzed, what characteristics it has, what phase and amplitude characteristics are. In general, introduction to the mathematical apparatus that underlies signal processing.
2 DATA SCIENCE SESSIONS
Description: After acquaintance with the programming language: studying how words are joined together to form sentences, how sentences are built into texts, and acquaintance with the mathematics on which all of this is based, a transition to the basics of machine learning is possible. Parsing data is an important part for the developer since any developer is given raw data that will need to be processed and allocated to separate groups. Moreover, it is necessary to highlight main features of the data, remove any noise, and achieve maximum accuracy in their grid.
Description: A symbiosis of knowledge on mathematical statistics, on working with graphs and databases, so that you can do all the work that analysts do manually in a week, just in a few hours, provided that you know the set of commands, libraries, rules, and logic that could be used to group, display, read and make meaningful conclusions. A lesson is devoted to a brief overview of the work of a data scientist.
26 sessions on neural networks
BASIC TOPICS
Description: Introduction to the course program. Acquaintance with neural networks, and the methodology for writing them on the example of the base of handwritten numbers. Work with a mathematical model. Determine architecture and layers. Explanatory comments: what different parameters and characteristics of the layers there exist. Consideration of the elements included in the neural network, training the network, testing for performance. The purpose of the lesson is to show that writing neural networks, in addition to developing a mathematical model, includes processing the database, with the help of which training will take place.
Description: Introduction to the key concepts of the theory of training neural networks. Examples of activation functions, their purpose, and features. Building neural networks with simple architectures. Consideration of the concept of neuron bias, and its purpose. Consideration of various ways of generating training and test samples using the handwritten digits set MNIST. Creation and training of a neural network for recognition of handwritten numbers, verification, and visualization of the quality of network training. Considering the issue of retraining a neural network and ways to combat retraining. Consideration of additional opportunities to increase the quality of recognition. Creating a neural network to solve a real problem: predicting machine prices from a website.
Description: The advantages of convolutional neural networks against the background of other architectures with respect to object recognition. The purpose of the lesson is to show what preprocessing of the sample may include, how to bring it to the right shape to check the convolutional neural network on it. We will study the architecture of convolutional neural networks: what elements are involved, what is used, why is it used, how is the data on these architectures checked, and the results compared. Work with standard sets - the data set of handwritten numbers, and the data set of Cifar10.
Description: Consideration of the main tasks associated with word processing that neural networks are able to solve. Introduction to the basic architecture of neural networks used for processing text data. The consideration of text vectorization methods for converting text data to numeric (discharged and dense vectors, vector representations of words). Demonstration of pretrained vector representations of words: CloVe (Global Vectors), Word2Vec, FastText. The solution of the practical task of classifying texts based on citizens' appeals: parsing the source database to create training and test samples, creating a fully connected network, and an Embedding layer network to solve the problem, comparing the results of the networks. The solution of the practical task of classifying authors: parsing the authors' database, creating training and test samples, demonstrating data transformation according to the BagOfWords principle, creating a fully connected network and an Embedding network for classifying authors, and recognizing test samples.
Description: The advantages of recurrent neural networks for solving problems of finding sequences. Consideration of how a recurrent neural network works: what constitutes an element of remembering in this network, how the architecture of recurrent networks is built, what you need to know about working with each of the types, and how they can be combined with other architectures. Work based on writers. The task of the lesson is the classification of authors using a recurrent network which, by remembering the sequence between words, will determine the style of each of the authors, as well as solve the problem of classifying authors using a one-dimensional convolutional network.
Description: Consideration of the term regression in the field of neural networks. Distinguishing differences in solving regression problems and classification problems considered earlier. Solving the practical task of determining the cost of apartments using the Boston Housing dataset. Solving a similar problem of determining the cost of apartments on our information base: parsing the database, converting available data (both numerical and text) to the required numerical representation, generating a training sample, standardizing data. Building a neural network to solve the problem and evaluate the results. Solving the practical task of salary assessment based on a HR database: parsing the database, creating a training set, creating various neural network architectures to solve the problem, and comparing the results of their work.
Description: Time series is a separate chapter in the study of the neural network. On the one hand, the task resembles regression, since it is necessary to predict a number. For example, it is necessary to predict the price of gasoline, traffic on the site, and some variable in time. On the other hand, it is necessary to consider what happened before. Consideration of which of the previously studied architectures are best suited for data sets with time series. Prediction of time series values. Work with forecasting data sets for a gas company shares, and gas prices.
Description: Consideration of the specifics of audio processing using neural networks. Introduction to popular audio processing libraries. Demonstration of working with the librosa library for parameterizing audio, extracting features from an audio signal: intersection with zero, spectral centroid, spectral frequency decay, small-frequency spectral coefficients, color frequency. The solution of a practical task for the classification of music genres: the formation of a training sample, the creation of a neural network to solve the problem, the verification of recognition of music genres based on various signs.
Description: After considering the types of layers and basic architectures, it is possible to move to higher-level architectures that perform a specific function - to autoencoders. Introduction to autocoders. Consideration of features and functions of autoencoders. Example: noise reduction of handwritten digit images. The solution to the problem of identifying fraudulent transactions.
Description: Consideration of the differences between variational and classic autoencoders. Tasks solved by variational autocoding. Description of application for solving problems by variational autoencoders. Consideration of the possibility to set parameters and generate data with given conditions.
Description: Consideration of the generation of various content using neural networks (GAN). Highlighting the main difficulties and ways to overcome them when solving generation problems. Acquaintance with a fundamentally new approach to the construction of neural network architectures: the creation of two "competing" parts of the same network (generator and discriminator). Description of the learning process of each part and the formation of the training samples. Consideration of generative adversarial networks with the condition (cGAN). The solution to the practical task of generating handwritten numbers based on the MNIST set. Creation of various discriminators and generator architectures and comparison of the quality of their work. Solving a similar problem for generating an image based on the CIFAR10 set. Creating a generator with the condition for generating handwritten numbers.
ADVANCED TOPICS
Description: Consideration of the problem of image segmentation using neural networks. Introduction to the main architectures used to solve the segmentation problem: U-Net, SegNet, Linknet, PSPNet. Identification of the features of each of the architectures, their positive and negative sides. Considering the issue of optimizing the process of image segmentation: reducing the sample, image augmentation, image splitting. Solving the practical task of marking photos from the registrar to create autopilot cars: creating training and test samples, creating various neural network architectures to solve the problem, comparing the results of various architectures, checking the results on a simplified sample (3 classes of objects instead of 12).
Description: Consideration of the issue of text generation using neural networks: areas of application, real examples. Identification of the main tasks and problems that arise when solving the task of generating text. Familiarity with popular solutions in the field of text generation: Seq2Sqe (Sequence-to-Sequence), Word2Vec (Word-to-Vector), Doc2Vec (Document-to-Vector). Detailed consideration of the Seq2Sqe model. Solving a practical problem for creating a chatbot using the Seq2Seq model: parsing data, creating a sample for training the model, creating encoder and decoder architectures (components of the Seq2Seq model), demonstrating the operation of the chatbot in the question-answer mode.
Description: Segmentation of text based on contracts. Isolation within the meaning of the necessary fragments from the text. Analysis of the text by the neural network and understanding of its content. Considering the practical application of text segmentation: you need to isolate what is needed from the text or, when issuing a task to the voice assistant, find some text, the assistant could understand and find the necessary text.
Description: Genetic algorithms were used when there was no computing power for neural networks. Their essence coincides with the name. They work on the same principles as in evolution. There is some kind of population, mutations, conditions in which the population lives. Ideal candidates are found that are suitable for a particular task, according to the principle of survival. In this lesson, applied problems will be considered. For example, a game in a maze: with the help of a genetic algorithm, the program will learn to go through the maze.
Description: The use of genetic algorithms to select the optimal architecture of the neural network. Solving a practical problem for selecting the optimal network architecture that solves the problem of recognizing handwritten numbers from the MNIST set: creating a genetic algorithm for selecting network architecture, selecting the convolutional neural network architecture with enumerating parameters: normalizing, size of the first convolutional layer, using the second convolutional layer, using MaxPooling and other.
Description: The task of clustering is one of the sought-after tasks in the market. For example, there is an online store, there are order statistics. According to customer orders, and the characteristics of the orders of this store, you can divide the customer base. Work with HR databases. Cluster the HR database.
Description: Considering the task of detecting objects using neural networks. Comparison of two approaches to the task of detecting objects: Object detection and segmentation. Introduction to the Selective Search algorithm and the first models that solve the problems of object detection (RCNN, SPP). Comparison of the performance of different approaches. Description of the idea of using anchors instead of Selective Search. Consideration of two modern architectures for solving the problems of detecting objects YOLOv3 and RetinaNet: creating models, error functions, training models based on airplanes and demonstrating the training process. Image recognition using trained models.
Description: Comparison of the main approaches to neural networks training: with a teacher, without a teacher, with reinforcement. Description of the core idea of the reinforcement learning process. Setting the main tasks to be solved in the learning process with reinforcement. Consideration of the main algorithms used in this area: Police Gradient, Q-learning (highlighting their positive and negative sides). The solution to the practical task of teaching the bot to play Ping-Pong on the gym gaming platform and using the PoliceGradient algorithm. Demonstration of the game trained bot. Consideration of limitations and problems encountered in the learning process. Consideration of ways to accelerate the learning process.
Description: Consideration of the task of converting speech into text. Describing the scope of speech recognizers. Identification of the main tasks solved in the process of creating neural networks for speech recognition. Description of the approach and used acoustic features for solving the speech recognition problem. Acoustic model construction and recognition quality assessment using the WER (word error rate) metric. Identification of the main problems of the speech recognition problem. The demonstration of speech recognition using the Google API, demonstration of recognition of a command from a microphone. Solving the practical task of recognizing voice commands in a speech stream: creating audio fragments for generating a training sample, parsing data, creating different architectures and comparing the quality of their work, demonstrating recognition of voice commands on test data.
ADDITIONAL TOPICS
Description: The integration of a neural network into Production is the final point where the neural network comes in: application, web service, etc. Consideration of various strategies to understand where neural networks can be applied, and concentration on running a neural network in a web service: what is needed to create a query, what is needed to connect to databases, how to package, what is the global structure. The data set used is the data set of handwritten numbers. Creating a web service. When you draw a handwritten figure on a page, it makes a prediction. Another giant that has gained a lot of popularity is Apache Spark, which will also be covered in the lesson.
Description: The lesson is devoted to those tools that are needed for the final output in Production. The topic of the lesson is the organization of the process. Consideration of containerization: what are containers, what to do with containers, managers controlling containers, orchestration systems, and also where the model can be placed. Consider translating models from Python to C ++.
Description: Features of PyTorch, advantages compared to Keras, how low leveled it is compared to Keras. Work on GPU, CPU. Consideration of standard architectures, such as a fully connected network, a convolutional neural network, are fully written on this framework.
Description: Consideration of which mathematical model lies under the algorithm of transferring style from one image to another and how it is associated with neural networks. How with the help of convolutional neural networks you can transfer the style to a specific image. Consideration of using a pretrained network model in PyTorch.
Description: Basic introduction to a deeper leveled (compared to Keras) TensorFlow library. Consideration of the concept of graphs as the main elements of TensorFlow. Work with basic data types (constants, variables, placeholders). Demonstration of compatibility with NumPy. Considering the possibilities of working with available devices (GPU, CPU) and performing calculations on the desired device. Consideration of ways to create datasets using TensorFlow. Describing the concept of "session" and demonstrating the process of creating and using sessions. Demonstration of using the TensorBoard Utility. Training a neuron with TensorFlow to solve a simple task. Tracking the learning process with TensorBoard.
Description: Deep immersion into TensorFlow. Writing fully connected and convolutional neural networks. Setting the selected loss function (cross entropy) using TensorFlow. Network training and visualization of the learning process using TensorBoard. The solution to the practical task of processing text using the TF Hub module. Demonstration of module application results.
Apply for a course
Get specialist's advice, and learn about your individual payment terms
All training is done remotely
We have participants from all over the world. You will need only a computer with Internet access. There is no time restriction to view lessons and perform tasks, you can study when it is convenient for you.
You can allocate the time for studies as you like during the week
How much time will you need
Preferably: 10 hours per week
This is the optimum to watch a video lesson (2 hours) and do your Pro-level homework
Minimum: 5 hours per week
That's enough time to watch a video lesson (2 hours) and do your homework at Light level
Internship: +7 hours per week
If you want to do an internship with us, or at our business partner, you have to study one more hour a day
You will receive all the necessary support from our managers and teachers
Study at TalentLMS
TalentLMS is a very convenient learning platform, where you will have a personal account with all the sessions. You can read the notes, submit assignments to your tutor, and chat with other participants.
Slack chat
We will have a common chat in Slack, where you can ask questions and get answers as quickly as possible. Our senior teachers, developers and support managers will also be there. Often, participants post a lot of useful materials in the chat.
We will try to satisfy your wishes concerning educational processes as quickly as possible. You are free to contact our support managers, who will do their best to assist you.
We adjust to the needs of the group
Regular surveys on course quality
We are interested not only in following your requests, but also in finding out how convenient it is for you to study.
A monthly survey on the course in general
A lesson quality survey after each learning session
Surveys on your diploma progress
We review the results of all surveys, and if we see a lack of quality somewhere, we launch the improvement immediately.
Google colaboratory and software/hardware requirements
Google colaboratory is a service that allows you to program in Python online and provides free Tesla graphics cards for training neural networks. It is very convenient for training. All you need is a browser and access to the Internet. Otherwise, you can train on any hardware and any operating system.
Our prices
With instant pay you can get a discount and up to 2 courses as a gift