Conditions Apply

Machine Learning with Python Training in Johannesburg, South Africa

Know how Statistical Modeling relates to Machine Learning

  • 50 hours of Instructor led Training
  • Comprehensive Hands-on with Python
  • Covers Unsupervised learning algorithms such as K-means clustering techniques
  • Get introduced to deep learning techniques

Online Classroom (Weekday)

Mar 30 - May 01 09:00 AM - 11:00 AM ( SAST )

USD 2199

USD 649

Online Classroom (Weekday)

Mar 30 - May 01 11:00 AM - 01:00 PM ( SAST )

USD 2199

USD 649

CITREP+ funding support is eligible for Singapore Citizens and Permanent Residents


Transformational advancements in technology in today’s world are making it possible for data scientists to develop machines that think for themselves. Based on complex algorithms that can glean information from data, today’s computers can use neural networks to mimic human brains, and make informed decisions based on the most likely scenarios. The immense possibilities that machine learning can unlock are fascinating, and with data exploding across all fields, it appears that in the near future Machine Learning will be the only viable alternative simply because there is nothing quite like it!

With so many opportunities on the horizon, a career as a Machine Learning Engineer can be both satisfying and rewarding. A good workshop, such as the one offered by KnowledgeHut, can lead you on the right path towards becoming a machine learning expert.

So what is Machine Learning? Machine learning is an application of Artificial Intelligence which trains computers and machines to predict outcomes based on examples and previous experiences, without the need of explicit programming.

Our Machine learning course will help you to master this science and understand Machine Learning algorithms, which include Supervised Learning, Unsupervised Learning, Reinforcement Learning and Semi-supervised Learning algorithms. It will help you to understand and learn:

  • The basic concepts of the Python Programming language
  • About Python libraries (Scipy, Scikit-Learn, TensorFlow, Numpy, Pandas,)
  • The data structure of Python
  • Machine Learning Techniques
  • Basic Descriptive And Inferential Statistics before advancing to serious Machine learning development.
  • Different stages of Data Exploration/Cleaning/Preparation in Python

The Machine Learning Course with Python by KnowledgeHut is a 48 hour, instructor-led live training course, with 80 hours of MCQs and assignments. It also includes 45 hours of hands-on practical session, along with 10 live projects.

Why Learn Machine Learning from KnowledgeHut?

Our Machine Learning course with Python will help you get hands-on experience of the following:

  1. Learn to implement statistical operations in Excel.
  2. Get a taste of how to start work with data in Python.
  3. Understand various optimization techniques like Batch Gradient Descent, Stochastic Gradient Descent, ADAM, RMSProp.
  4. Learn Linear and Logistic Regression with Stochastic Gradient Descent through real-life case studies.
  5. Learn about unsupervised learning technique - K-Means Clustering and Hierarchical Clustering. Real Life Case Study on K-means Clustering.
  6. Learn about Decision Trees for regression & classification problems through a real-life case study.
  7. Get knowledge on Entropy, Information Gain, Standard Deviation reduction, Gini Index, CHAID.
  8. Learn the implementation of Association Rules. You will learn to use the Apriori Algorithm to find out strong associations using key metrics like Support, Confidence and Lift. Further, you will learn what are UBCF and IBCF and how they are used in Recommender Engines.

What is Machine Learning?

Machine Learning is an application of Artificial Intelligence that allows machines and computers to learn automatically to predict outcomes from examples and experiences, without there being any need for explicit programming. As the name suggests, it gives machines and computers the ability to learn, making them similar to humans.

The concept of machine learning is quite simple. Instead of writing code, data is fed to a generic algorithm. The generic algorithm/machine will build a logic which will be based on the data provided. The provided data is termed as ‘training data’ as they are used to make decisions or predictions without any program to perform the task.

Practical Definition from Credible Sources:

1) Stanford defines Machine Learning as:

“Machine learning is the science of getting computers to act without being explicitly programmed.”

2) Nvidia defines Machine Learning as:

“Machine Learning at its most basic is the practice of using algorithms to parse data, learn from it, and then make a determination or prediction about something in the world.”

3) McKinsey & Co. defines Machine Learning as:

“Machine learning is based on algorithms that can learn from data without relying on rules-based programming.”

4) The University of Washington defines Machine Learning as:

“Machine learning algorithms can figure out how to perform important tasks by generalizing from examples.”

5) Carnegie Mellon University defines Machine Learning as:

“The field of Machine Learning seeks to answer the question “How can we build computer systems that automatically improve with experience, and what are the fundamental laws that govern all learning processes?”

Origin of Machine Learning through the years

Today, algorithms of machine learning enable computers and machines to interact with humans, write and publish sport match reports, autonomously drive cars, and find terrorist suspects as well. Let’s peek through the origins of machine learning and its recent milestones.

Alan Turing created a ‘Turing Test’ in order to determine if a computer has real intelligence. A computer should fool a human into believing that it is also a human to pass the test.

The first computer learning program was written by Arthur Samuel. The program was a game of checkers. The more that the IBM computer played the game, the more it improved at the game, as it studied the winning strategies and incorporated those moves into programs.

The first neural network for computers was designed by Frank Rosenblatt. It stimulates the thought process of the human brain.

The ‘nearest neighbour’ was written. It allowed computers to use basic pattern recognition.

Explanation-Based Learning was introduced, where a computer analyses the training data and creates a general rule which it can follow by discarding the unimportant data.

The approach towards the work on machine learning changes from a knowledge-driven approach to machine-driven approach. Programs were now created for computers to analyze a large amount of data and obtain conclusions from the results.

IBM’s Deep Blue beat the world champion in a game of chess.

Geoffrey Hinton coined the term ‘deep learning’ that explained new algorithms that let the computer distinguish objects and texts in videos and images.

The Microsoft Kinect was released, which tracked 20 human features at a rate of 30 times per second. This allowed people to interact with computers via gestures and movements.

IBM’s Watson beat its human competitors at Jeopardy.

Google Brain was developed. It discovered and categorized objects similar to the way a cat does.

Google’s X Labs developed an algorithm that browsed YouTube videos and identified those videos that contained cats.

Facebook introduced DeepFace. It is an algorithm that recognizes and verifies individuals on photos.

Microsoft launched the Distributed Machine Learning Toolkit, which distributed machine learning problems across multiple computers.

An artificial intelligence algorithm by Google, AlphaGo, beat a professional player at a Chinese board game Go.

How does Machine Learning work?

The algorithm of machine learning is trained using a training data set so that a model can be created. With the introduction of any new input data to the ML algorithm, a prediction is made based on the model.

The accuracy of the prediction is checked and if the accuracy is acceptable, the ML algorithm is deployed. For cases where accuracy is not acceptable, the Machine Learning algorithm is trained again with supplementary training data set.

There are various other factors and steps involved as well. This is just an example of the process.

Advantages of Machine Learning

  1. It is used in multifold applications such as financial and banking sectors, healthcare, publishing, retail, social media, etc.
  2. Machine learning can handle multi-variety and multi-dimensional data in an uncertain or dynamic environment.
  3. Machine learning algorithms are used by Facebook and Google to push advertisements which are based on past search patterns of a user.
  4. In large and complex process environments, Machine Learning has made tools available which provide continuous improvement in quality.
  5. Machine learning has reduced the time cycle and has led to the efficient utilization of resources.
  6. Source programs like Rapidminer have helped increase the usability of algorithms for numerous applications.    

Industries using Machine Learning

Various industries work with Machine Learning technology and have recognized its value. It has helped and continues to help organisations to work in a more effective manner, as well as gain an advantage over their competitors.

  1. Financial services:

Machine Learning technology is used in the financial industry due to two key reasons: to prevent fraud and to identify important insights in data. This helps them in deciding on investment opportunities, that is, helps the investors with the process of trading, as to identify clients with high-risk profiles.

  1. Government:

Machine learning is finding varied uses in running government initiatives. It helps in detecting fraud and minimizes identity theft. It’s also used to filter and identify citizen data.

  1. Health Care:

Machine Learning in the health care sector has introduced wearable devices and sensors that use data to assess a patient’s health in real time, which might lead to improved treatment or diagnosis.

  1. Oil and Gas:

There are numerous use cases for the oil and gas industry, and it continues to expand. A few of the use cases are: finding new energy sources, predicting refinery sensor failure, analyzing minerals in the ground, etc.

  1. Retail:

Websites use Machine Learning to recommend items that you might like to buy based on your purchase history.

What is the future of Machine Learning?

Machine learning has transformed various sectors of industries including retail, healthcare, finance, etc. and continues to do so in other fields as well. Based on the current trends in technology, the following are a few predictions that have been made related to the future of Machine Learning.

  1. Personalization algorithms of Machine Learning offer recommendations to users and attract them to complete certain actions. In future, the personalization algorithms will become more fine-tuned, which will result in more beneficial and successful experiences.
  2. With the increase in demand and usage for Machine Learning, the usage of Robots will increase as well.
  3. Improvements in unsupervised machine learning algorithms are likely to be observed in the coming years. These advancements will help you develop better algorithms, which will result in faster and more accurate machine learning predictions.
  4. Quantum machine learning algorithms hold the potential to transform the field of machine learning. If quantum computers integrate to Machine Learning, it will lead to faster processing of data. This will accelerate the ability to draw insights and synthesize information.

What You Will Learn


For Machine Learning, it is important to have sufficient knowledge of at least one coding language. Python being a minimalistic and intuitive coding language becomes a perfect choice for beginners.

Sign up for this comprehensive course and learn from industry experts who will handhold you through your learning journey, and earn an industry-recognized Machine Learning Certification from KnowledgeHut upon successful completion of the Machine Learning course.

3 Months FREE Access to all our E-learning courses when you buy any course with us

Who Should Attend?

  • If you are interested in the field of machine learning and want to learn essential machine learning algorithms and implement them in real life business problem
  • If you're a Software or Data Engineer interested in learning the fundamentals of quantitative analysis and machine learning

Knowledgehut Experience

Instructor-led Live Classroom

Interact with instructors in real-time— listen, learn, question and apply. Our instructors are industry experts and deliver hands-on learning.

Curriculum Designed by Experts

Our courseware is always current and updated with the latest tech advancements. Stay globally relevant and empower yourself with the training.

Learn through Doing

Learn theory backed by practical case studies, exercises and coding practice. Get skills and knowledge that can be effectively applied.

Mentored by Industry Leaders

Learn from the best in the field. Our mentors are all experienced professionals in the fields they teach.

Advance from the Basics

Learn concepts from scratch, and advance your learning through step-by-step guidance on tools and techniques.

Code Reviews by Professionals

Get reviews and feedback on your final projects from professional developers.


Learning Objectives:

In this module, you will visit the basics of statistics like mean (expected value), median and mode. You will understand the distribution of data in terms of variance, standard deviation and interquartile range; and explore data and measures and simple graphics analyses.Through daily life examples, you will understand the basics of probability. Going further, you will learn about marginal probability and its importance with respect to data science. You will also get a grasp on Baye's theorem and conditional probability and learn about alternate and null hypotheses.

  • Statistical analysis concepts
  • Descriptive statistics
  • Introduction to probability and Bayes theorem
  • Probability distributions
  • Hypothesis testing & scores
Hands-on :
Learn to implement statistical operations in Excel.
Learning Objectives:

In this module, you will get a taste of how to start work with data in Python. You will learn how to define variables, sets and conditional statements, the purpose of having functions and how to operate on files to read and write data in Python. Understand how to use Pandas, a must have package for anyone attempting data analysis in Python. Towards the end of the module, you will learn to visualization data using Python libraries like matplotlib, seaborn and ggplot.

  • Python Overview
  • Pandas for pre-Processing and Exploratory Data Analysis
  • Numpy for Statistical Analysis
  • Matplotlib & Seaborn for Data Visualization
  • Scikit Learn

Hands-on: No hands-on

Learning Objectives :

This module will take you through real-life examples of Machine Learning and how it affects society in multiple ways. You can explore many algorithms and models like Classification, Regression, and Clustering. You will also learn about Supervised vs Unsupervised Learning, and look into how Statistical Modeling relates to Machine Learning.

  • Machine Learning Modelling Flow
  • How to treat Data in ML
  • Types of Machine Learning
  • Performance Measures
  • Bias-Variance Trade-Off
  • Overfitting & Underfitting

Hands-on: No hands-on

Learning Objectives:

This module gives you an understanding of various optimization techniques like Batch Gradient Descent, Stochastic Gradient Descent, ADAM, RMSProp.

  • Maxima and Minima
  • Cost Function
  • Learning Rate
  • Optimization Techniques

Hands-on: No hands-on

Learning Objectives:

In this module you will learn Linear and Logistic Regression with Stochastic Gradient Descent through real-life case studies. It covers hyper-parameters tuning like learning rate, epochs, momentum and class-balance.You will be able to grasp the concepts of Linear and Logistic Regression with real-life case studies. Through a case study on KNN Classification, you will learn how KNN can be used for a classification problem. You will further explore Naive Bayesian Classifiers through another case study, and also understand how Support Vector Machines can be used for a classification problem. The module also covers hyper-parameter tuning like regularization and a case study on SVM.

  • Linear Regression
  • Case Study
  • Logistic Regression
  • Case Study
  • KNN Classification
  • Case Study
  • Naive Bayesian classifiers
  • Case Study
  • SVM - Support Vector Machines
  • Case Study
  • With attributes describing various aspect of residential homes, you are required to build a regression model to predict the property prices using optimization techniques like gradient descent.
  • This dataset classifies people described by a set of attributes as good or bad credit risks. Using logistic regression, build a model to predict good or bad customers to help the bank decide on granting loans to its customers.
  • Predict if a patient is likely to get any chronic kidney disease depending on the health metrics.
  • We receive 100s of emails & text messages everyday. Many of them are spams. We would like to classify our spam messages and send them to the spam folder. We would also not like to incorrectly classify our good messages as spam. So correctly classifying a message into spam and ham is of utmost importance. We will use Naive Bayesian technique for text classifications to predict which incoming messages are spam or ham.
  • Biodegradation is one of the major processes that determine the fate of chemicals in the environment. This Data set containing 41 attributes (molecular descriptors) to classify 1055 chemicals into 2 classes - biodegradable and non-biodegradable. Build Models to study the relationships between chemical structure and biodegradation of molecules and correctly classify if a chemical is biodegradable and non-biodegradable.
Learning Objectives:

Learn about unsupervised learning technique - K-Means Clustering and Hierarchical Clustering. Real Life Case Study on K-means Clustering

  • Clustering approaches
  • K Means clustering
  • Hierarchical clustering
  • Case Study
Hands-on :
In marketing, if you're trying to talk to everybody, you're not reaching anybody.. This dataset has social posts of teen students. Based on this data, use K-Means clustering to group teen students into segments for targeted marketing campaigns. 
Learning Objectives:

This module will teach you about Decision Trees for regression & classification problems through a real-life case study. You will get  knowledge on Entropy, Information Gain, Standard Deviation reduction, Gini Index,CHAID.The module covers basic ensemble techniques like averaging, weighted averaging & max-voting. You will learn about bootstrap sampling and its advantages followed by bagging and how to boost model performance with Boosting.
Going further, you will learn Random Forest with a real-life case study and learn how it helps avoid overfitting compared to decision trees.You will gain a deep understanding of the Dimensionality Reduction Technique with Principal Component Analysis and Factor Analysis. It covers comprehensive techniques to find the optimum number of components/factors using scree plot, one-eigenvalue criterion. Finally, you will examine a case study on PCA/Factor Analysis.

  • Decision Trees
  • Case Study
  • Introduction to Ensemble Learning
  • Different Ensemble Learning Techniques
  • Bagging
  • Boosting
  • Random Forests
  • Case Study
  • PCA (Principal Component Analysis) and Its Applications
  • Case Study
  • Wine comes in various style. With the ingredient composition known, we can build a model to predict the the Wine Quality using Decision Tree (Regression Trees).
  • In statistics and machine learning, ensemble methods use multiple learning algorithms to obtain better predictive performance than could be obtained from any of the constituent learning algorithms alone. In this case study, use AdaBoost, GBM & Random Forest on Lending Data to predict loan status. Ensemble the output and see your result perform than a single model.
  • Reduce Data Dimensionality for a House Attribute Dataset for more insights &  better modeling.
Learning Objectives: 

This module helps you to understand hands-on implementation of Association Rules. You will learn to use the Apriori Algorithm to find out strong associations using key metrics like Support, Confidence and Lift. Further, you will learn what are UBCF and IBCF and how they are used in Recommender Engines. The courseware covers concepts like cold-start problems.You will examine a real life case study on building a Recommendation Engine.

  • Introduction to Recommendation Systems
  • Types of Recommendation Techniques
  • Collaborative Filtering
  • Content based Filtering
  • Hybrid RS
  • Performance measurement
  • Case Study
You do not need a market research team to know what your customers are willing to buy.  Netflix is an example of this, having successfully used recommender system to recommend movies to its viewers. Netflix has estimated, that its recommendation engine is worth a yearly $1 billion.
An increasing number of online companies are using recommendation systems to increase user interaction and benefit from the same. Build Recommender System for a Retail Chain to recommend the right products to its users 


Predict Property Pricing using Linear Regression

With attributes describing various aspects of residential homes, you are required to build a regression model to predict the property prices using optimization techniques like gradient descent.

Classify good and bad customers for banks to decide on granting loans.

This dataset classifies people described by a set of attributes as good or bad credit risks. Using logistic regression, build a model to predict good or bad customers to help the bank decide on granting loans to its customers.

Classify chemicals into 2 classes, biodegradable and non-biodegradable using SVM.

Biodegradation is one of the major processes that determine the fate of chemicals in the environment. This Data set contains 41 attributes (molecular descriptors) to classify 1055 chemicals into 2 classes - biodegradable and non-biodegradable. Build Models to study the relationships between chemical structure and biodegradation of molecules and correctly classify if a chemical is biodegradable

Read More

Cluster teen student into groups for targeted marketing campaigns using Kmeans Clustering.

In marketing, if you’re trying to talk to everybody, you’re not reaching anybody. This dataset has social posts of teen students. Based on this data, use K-Means clustering to group teen students into segments for targeted marketing campaigns.

Read More

Predict quality of Wine

Wine comes in various types. With the ingredient composition known, we can build a model to predict the Wine Quality using Decision Tree (Regression Trees).

Note: These were the projects undertaken by students from previous batches.  

Learn Machine Learning

Learn Machine Learning in Johannesburg, South Africa

Machine Learning is the application of Artificial Intelligence concepts that makes systems automatically learn, perform and improve tasks, without the need of human input. The idea is to develop systems that can work on their own. The algorithms used in Machine Learning can be categorized into two categories:

  1. Supervised algorithms: These algorithms take the learnings from the past data and apply them to the new data made available by making use of labelled examples and help predict future events. 
  2. Unsupervised algorithms: These are the type of algorithms that are used when the information required for the training of the system and the algorithm are either not labelled or have not been classified. Such systems, while being unable to figure out the correct result, are able to explore the available data and draw inferences from the available datasets in order to describe and identify hidden structures from unlabelled data.

The concept of Machine Learning is about systems taking in a huge amount of data, analysing it and solving problems through training to obtain an outcome. It is a way for humans to be able to solve problems, without having to actually know and understand what the problem really is, as well as why a particular approach to a problem actually works.

  • It gives results

Machines work faster than human brains do and solve problems faster than we ever can. They systematically work out, resolve and simultaneously evaluate all the options in order to obtain the best possible outcome or result.

  • Used in a lot of applications today

All industries, starting from health care, nursing, transport, customer service to government and financial institutions are benefitting from Machine Learning, which is what makes it an indispensable part of our society as it stands today.

Johannesburg is the largest city in South Africa and boasts of 543 Tech startups.  It is also at the centre of the global gold and diamond trade. Some of the benefits of learning Machine Learning in Johannesburg include the following:

  • Great job opportunities: Machine Learning is estimated to be worth $20 bn by 2025. Currently, there are 130+ jobs AI jobs in Johannesburg.With a whopping 344% growth in job postings, machine learning engineer is an extremely promising position. 
  • Machine Learning engineers earn pretty: Fueled by AI, demand for machine learning skills is growing. The average salary for an Entry-Level Data Scientist with Machine Learning skills in South Africa is R323,504
  • Demand for Machine Learning skills is increasing: Artificial intelligence is becoming an imperative for businesses that want to maintain a competitive edge. All these companies are looking for skilled Machine Learning engineers. The demand as well as the pay for professionals with Machine Learning skills is only going to increase in the future.

Machine learning is a huge field which is expanding day by day due to its diverse and open culture. It has great scope in cities like Johannesburg. Below are the steps you can follow:

  • Structured Plan: Create a structured plan on the topics that you want to learn. 
  • Prerequisite: Pick a programming language that you are comfortable with and start polishing your mathematical and statistical skills as ML involves dealing with statistical data.
  • Learning: Start learning according to the plan created in step (1). Refer to various reliable sources online or from books. You can also join offline courses in  Johannesburg. Understanding the workflow of ML algorithms is a must.
  • Implementation: We can never truly learn unless we learn how to implement our skills. Try to build projects using the algorithms you learned. Take datasets from the internet and start solving problems. Take part in online competitions such as Kaggle to learn more.

You can learn ML by yourself by following the steps below:

  • Adjust your mindset: Take cognizance of what is holding you back from achieving your goals in Machine Learning. Read through all the related articles and connect with machine learning professionals to know more about the field. You can join meetups or conferences in Johannesburg to understand the scope and potential opportunities. 
  • Pick a process that suits you best: Choose a process that is best suited to your abilities and even enhances them. Do not worry if you only possess basic knowledge of it. You will learn more as you move along.
  • Pick a tool: Tools are of vital importance in ML. Pick one that goes with your capabilities. Beginners are recommended to opt for the Weka Workbench. Intermediate level learners are recommended the Python Ecosystem. Advanced level learners are recommended the R Platform.
  • Practice on Datasets: Look for data sets in books or online and solve them/work on them to brush up your skills. This will give you an idea of the problems you will be solving and helping you put your knowledge to test.
  • Build your own portfolio: Making a portfolio or the work you’ve done- however immature it may seem to you is a great way to keep track of your own work as well as make your CV strong.

In order to understand the concepts of Machine Learning, it is important to know the following:

  • Programming languages: To be able to comfortably work with programming languages such as Python, Java, Scala etc is an important prerequisite before you embark upon your Machine Learning journey. 
  • Database skills: A prior knowledge and experience of working with MySQL as well as relational databases is essential to carry out data analysis on a database.
  • Machine Learning visualization tools: A basic knowledge and understanding of some of the visualization tools will turn out to be helpful while you are applying the concepts of Machine Learning in real life. 
  • Machine learning frameworks: Several statistical, as well as mathematical algorithms, are made use of in order to design a Machine Learning model to learn from the input data and come to a prediction for a given data set.
  • Mathematical skills: It is through the mathematical algorithms and concepts that the data is processed, analyzed and used in order to form a Machine Learning model. The following is a list of some of the mathematical concepts that a student of Machine learning must know:
    • Optimization
    • Linear algebra
    • Calculus of variations
    • Probability theory
    • Calculus
    • Bayesian Modeling
    • Fitting of a distribution
    • Probability Distributions
    • Hypothesis Testing
    • Regression and Time Series
    • Mathematical statistics
    • Statistics and Probability
    • Differential equations
    • Graph theory

If you want your ML project to be executed successfully, we have compiled the steps for the same below:

  • Gathering data: The most important step is getting the correct data for your project upon which you will be performing your ML magic. The quality and quantity of your data are directly proportional to the performance of your model.
  • Cleaning and preparing data: We first carefully clean the data which means correcting the missing data that we may have and secondly preparing the data. Preparing the data means specifically feature engineering. Convert the raw data to the data our model is expecting and finally divide the data into 2 parts: training data and testing data.
  • Visualize the data: Visualization helps in understanding the kind of data that we have in our hands. This will help to make a good selection of model accordingly.
  • Choosing the correct model: After visualizing of data, we have a good knowledge about how this data can be harvested and which model or algorithm is best suited to do so. 
  • Train and test: We have our prepared data ready to be injected into our chosen model. As in earlier step we have divided our data into training and testing data, we now train our model with the training data and after it is trained, its accuracy is tested.
  • Adjust parameters: Fine tuning the model is an important step in the process. It helps provide final touches and make sure everything runs smooth. One example is changing the number of neurons in a neural network.

It is vital for learners to understand and ingrain the concepts of Machine Learning algorithms. Here’s how to do that:

  • List the various Machine Learning algorithms: While each algorithm is unique and important in its own way, it is vital for you to decide and list down some algorithms that you want to start with. This particular activity will also help you build familiarity with the various classes and types of algorithms that are available and prepare you for what lies ahead.
  • Apply the Machine Learning algorithms that you listed down: Apart from learning the basic concepts and theory of Machine Learning algorithms, it is also important to practice Applied Machine Learning. Start building up an intuition for the various Machine Learning algorithms such as Support Vector Machines, decision trees etc. 
  • Describe these Machine Learning algorithms: A thorough analysis and understanding of Machine Learning algorithms will help you create a description of these algorithms. Being able to describe and analyze every algorithm will increase your knowledge of algorithms.
  • Implement Machine Learning Algorithms: By implementing the algorithm yourself, you will be able to understand the micro decisions involved in the implementation of Machine Learning concepts.
  • Experiment on Machine Learning Algorithms: Understanding the parameters at play during the working on algorithm is a great way to be able to customize its working in order to suit your needs while working on a problem. It also enables you to better scale and adapt an algorithm to suit your needs in the future.

Machine Learning Algorithms

The K Nearest Neighbours algorithm is a simplistic and uncomplicated Machine Learning algorithm.

  • The primary requirement of the nearest neighbour classification is the definition of a pre-defined number, which will be stored as the value of ‘k’. This number, k, defines the number of training samples that are closest in distance to a new data point that is to be classified. 
  • The label that will be assigned to this new data point, will then, be one that has already been assigned to and defined by these neighbours. K-nearest neighbor classifiers possess a fixed user-defined constant for the number of neighbors which have to be determined.
  • The concept behind the radius based classification is that depending on the density of the neighbouring data points,all the samples are identified and classified under and inside a fixed radius. This fixed radius is a metric measure of the distances and is most popularly, the Euclidean distance between the points.
  • All these methods based on the classification of the neighbours are also known as the non-generalizing Machine Learning methods. This is majorly owing to the fact that these methods ‘remember’ all the training data that was fed into it, instead of acting on them.

The answer to this question depends upon what you intend to do with your Machine Learning knowledge. 

  • In case you wish to use the existing Machine Learning algorithms, you can study Machine Learning without knowing any classic algorithms. 
  • If you wish to innovate with the help of Machine Learning, having some basic knowledge of the workings and uses of algorithms is a critical prerequisite. The knowledge regarding the correctness of an algorithm, how much time an algorithm takes, its complexity, costs involved etc are all concepts that you will get familiar with, only after you have sufficient knowledge of the algorithms themselves. 

Machine Learning algorithms are basically of three types:

  • Supervised Learning: Using categorically classified historical data to learn the mapping function from the input variables (X) to the output variable (Y). Examples of such include-
    • Linear Regression 
    • Logistic Regression 
    • Classification and Regression Trees (CART)
    • Naïve Bayes 
    • K-Nearest Neighbours
  • Unsupervised Learning: In these types of problems, only the input variables are given and not the output ones. Thus, the underlying structure of the given data sets is analysed to reveal possible associations and clusters. Examples of such algorithms include-
    • Apriori 
    • K-Means 
    • Principal Component Analysis (PCA)
  • Ensemble Learning: By building on the premise that groups of learners perform better than just one, these algorithms combine the results of each learner and then analyse them as a whole to obtain a fairly accurate representation of the actual outcome. Examples of such algorithms include-
    • Bagging
    • Boosting

The simplest of machine learning algorithms solves the problems like simple recognition is k-nearest neighbor algorithm. It is a classification algorithm though can be used for regression as well. It classifies based on the similarity measure and is non-parametric. 

Below are some of the most effective ways to choose the right machine learning algorithm:

  • Understanding your data: It is very important to understand your data to find the correct algorithm. Visualize your data by plotting graphs. Try to find correlation among the data indicating strong relationships. Clean your data if you find any missing data or bad data.
  • Get the intuition about the task: Many times we don’t understand the underlying aim of the task, and that’s why ML is needed to solve the problem in the first place. Then you need to see which kind of learning will help your model complete the task. There are 4 types of learning in general:
    • Supervised learning
    • Unsupervised learning
    • Semi-supervised learning
    • Reinforcement learning
  • Understand your constraints: The best models and algorithms out there work on high-end machines and require high data storage and manipulation resources. Constraints can be in the hardware or software as well. Depending upon time constraints, whether we can allow training phase to be of long duration or not, or testing phase to be short or long is an important choice to be made.
  • Find available algorithms: This is the last step. Find an algorithm following the above-mentioned steps and finally implement the algorithm. 

The process to follow for the implementation of Machine Learning algorithm should include the following:

  • Select a programming language: This decision will influence the standard libraries as well as the APIs that you are going to make use of in your implementation.
  • Select the algorithm that you wish to implement: Decide on all of the specifics of the algorithm and be as decisive and precise as possible. This means that you should decide on everything from the type of algorithm, the classes as well as the specific implementation and the description of what you wish to implement.
  • Select the problem you wish to work upon: Next, move on to the selection of the canonical problem set that you are going to use in order to test and validate the efficiency and correctness of your algorithm implementation. 
  • Research the algorithm that you wish to implement: Taking multiple descriptions and outlooks on your algorithm is important as it helps you give a total overall perspective of the uses and implementation methodologies of your algorithm. It also helps you overcome roadblocks and any wrong assumptions that you may have made about your algorithm.

Below are some of the most important topics you must familiarize yourself with:

  • Decision Trees: Decision trees aid the system in deciding on which features are to be chosen and which conditions are to be used in order for splitting.Advantages of decision tree methods:
    • They are easy to understand, visualize and interpret.
    • Decision trees are not affected by non-linear relationships between parameters.
    • Decision trees require minimal efforts in the direction of data preparation from the user.
    • Decision trees are able to handle and analyze both categorical as well as numerical data.
  • Support Vector Machines: Support Vector Machines are classification methodologies that provide better accuracy in classification problems.Advantages of Support Vector Machines:
    • Support Vector Machines provide guaranteed optimality in the solutions that they provide, owing to the nature of convex optimizations.
    • They are useful in both, Linearly Separable (Hard margin) as well as Non-linearly separable (Soft Margin) data.
    • Feature Mapping, which used to be a huge burden on the computational complexity of an algorithm, is a reduced burden owing to the ‘Kernel Trick’ provided by Support Vector Machines, which are able to undertake the process of feature mapping by carrying out simple dot products.
  • Naive Bayes: The Naive Bayes algorithm assumes that the presence of a particular feature in a said sample of data is independent of and unrelated to the presence of any other feature in the data.Advantages of the Naive Bayes algorithm:
    • It is very simplistic technique of classification  
    • It requires less training data as compared to other techniques used for classification.
    • It is highly scalable. 
  • Random Forest algorithm: The Random Forest algorithm creates a forest of decision trees and randomizes the inputs so as to prevent the system from identifying any pattern in the input data owing to its order.
    Advantages of the Random Forest algorithm:

    • It is used for both regression and classification problems.
    • It is easy to view the relative importance that a random forest assigns to the input features
    • It is a very easy to use and handy algorithm.
    • The number of hyper parameters included in a random forest are not high and are relatively easy to understand.

Machine Learning Conference in Johannesburg, South Africa


Conference nameDateVenue
1.Machine learning and Deep Learning DayOctober 25th 2019Gallagher convention centre
2.SingularityUOctober 16-17th 2019Kyalami international convention centre
  1.  Machine learning and Deep Learning Day, Johannesburg
    1. About the conference: The conference aims to discuss the roles, future and challenges of Machine learning and Deep Learning. 
    2. Event Date: October 25th 2019
    3. Venue: Gallagher convention centre 
    4. Days of Program: 1
    5. Timings: 8:45 – 17:00
    6. How many speakers: 7
    7. With whom can you Network in this Conference:
      • Data Engineers/Developers/Scientists
      • Analytics Professionals
      • Startup Professionals
      • Scientists/Researchers
      • Professors
      • President/Vice president
      • Chairs/Directors
    8.  Registration cost:
      • Group of three or more (Early Bird): ZAR 4000
      • Group of three or more (Standard): ZAR 4500
      • Individual (Early Bird): ZAR 6000
      • Individual (Standard): ZAR 7200
    9. Who are the major sponsors:
      • Top market group
      • Tech samvad
      • Crixfeed
      • Testing Olympiad
      • 1.21GWS Insights
      • Michael crouch innovation centre
      • Aricent
      • Bitfwd
      • BOT mantra
      • Call strat
      • Makpro tech 
      • Agile testing alliance

  2. SingularityU, Johannesburg
    1. About the conference: The conference will have a discussion on the human impact and connection to machine learning and how it may affect us in the future.
    2. Event Date: 16-17th October, 2019
    3. Venue: Kyalami International Convention centre
    4. Days of Program: 2
    5. With whom can you Network in this Conference:
      • Investors 
      • C-Level suite execs
      • Government officials 
      • Innovators
      • Inventors
      • Entrepreneurs
      • Students and future leaders
    6. Registration cost: 
      • Early : 16,650
      • Standard 18,500
      • Late: 20,350
    7. Who are the major sponsors
      • Development bank of south Africa 
      • Deloitte
      • Absa
      • MTN
S.NoConference NameDateVenue
1.AI and Machine Learning Half Day HackathonOctober 18, 2017Entelect Training Centre, Melrose Arch
2.Artificial Intelligence and Predictive Analysis Conference 2018November 28 2018 - November 29 2018Indaba Hotel, Four Ways, Johannesburg
  1. AI and Machine Learning Half Day Hackathon, Johannesburg
    1. About the conference: The conference provided theories, cases and practical implementation of various concepts of Machine Learning.
    2. Event Date: October 18, 2017
    3. Venue: Entelect Training Centre, Melrose Arch
    4. Days of Program: 1
    5. Timings: 1:00 PM - 6:00 PM
    6. Purpose: The purpose of this conference was to learn about the concepts of Machine Learning and Artificial Intelligence. 
    7. Registration cost: SAMRA Members: R500 ex VAT, Non-members R1000 ex VAT
  1. Artificial Intelligence and Predictive Analysis Conference 2018, Johannesburg

    1. About the conference: The conference explored the subject of Artificial Intelligence and how to apply this knowledge in Predictive Analysis.  
    2. Event Date: November 28 2018 - November 29 2018
    3. Venue: Indaba Hotel, Four Ways, Johannesburg
    4. Days of Program: 2

Machine Learning Engineer Jobs in Johannesburg, South Africa

A Machine Learning Engineer is responsible for the following:

  • Design and develop ML systems
  • Implement the ML algorithms
  • Data Analysis
  • Build data sets
  • Troubleshoot the Machine Learning Model Testing Issues

Known as the country’s fast-growing startup space, Johannesburg is the provincial capital of Gauteng, the wealthiest province in the country. It is also home to a seasoned investor scene with players like AngelHub Ventures, Africa Angels Network, the South African Business Angel Network, Jozi Angels, etc. It is home to many leading AI startups, such as Flock, Flow,, Aajoh, etc. By the looks of the research, things are only getting bigger in Johannesburg. There are several companies in Johannesburg that are looking for Machine Learning Engineers to join their team and help gain insights from the data. 

In Johannesburg, the following companies have open positions for Machine Learning engineers:

  • Liza Van den Berg
  • Siemens PLC
  • Cisco
  • Hitachi Vantara
  • Jason Pretorius
  • Nigel Frank International

In Johannesburg, you can network with other Machine Learning Engineer through the following professional groups:

  • Johannesburg Machine Learning
  • Machine Intelligence Institute of Africa
  • Johannesburg Artificial Intelligence Meetup
  • Machine Learning Johannesburg

The following ML job roles are in demand in 2019:

  • Machine Learning Engineer
  • Cloud Architect
  • Data Scientist
  • Cyber Security Analyst
  • Data Architect
  • Data Mining Specialist

Here is how you can network with other Machine Learning Engineers in Johannesburg:

  • Conferences and tech talks
  • Meetups
  • Online platforms like LinkedIn

The average salary for a Data Scientist with Machine Learning skills in South Africa is R431,641.

Machine Learning with Python Johannesburg, South Africa

Here's how you can get started with Python for use in Machine Learning:

  1. Adjust your mindset to Machine Learning Concepts.
  2. Download and install the Python SciPy Kit for Machine learning and install all useful packages.
  3. Understand tools in order to get an idea of all the functionalities available and their uses.
  4. Load a dataset and make use of statistical summaries and data visualization.
  5. Practice datasets to gain a better understanding of the concepts.
  6. Start small and work your way to bigger and more complicated projects.
  • Scikit-learn: Used for data mining, data analysis and in data science as well.
  • Numpy: Useful with N-dimensional arrays.
  • Pandas: Used in high-level data structures as well as data extraction and preparation.
  • Matplotlib: Used for plotting of graph in 2D.
  • TensorFlow: If you are using deep learning in your project then this library, created by Google, is the go-to library as it uses multi-layered nodes which allow us to quickly train, setup and deploy artificial neural networks.

Follow the below steps to execute a successful Machine Learning project with Python (ML Project): 

  1. Collect Data: Gather data that is suitable for a specific project. The quality and quantity of data will determine the performance of your ML model.
  2. Clean data: Clean and prepare your data. This is done so that the data corresponds to the model of ML that is being used. The data is then divided into 2 parts: training data and testing data.
  3. Visualize the data and choose the right model:  This will help in understanding the data and selecting the correct model. The kind of ML model that will be ideal for data harvesting is important as it determines the performance of the algorithm.
  4. Training and testing: The training data set is passed through the model to train it with the new set of data, then the accuracy of the model is checked.
  5. Adjust parameters: After determining the accuracy of the model, the parameters are fine-tuned. 

The following are some tips to help you learn basic Python skills:

  • Code every day. Consistency is very important when you are learning a new programming language. 
  • Make good study-notes. Writing down stuff by hand helps you plan out your code on paper before you move to actually implementing it on your computer.
  • Go interactive! The interactive Python shell is one of the best learning tools, irrespective of whether you are writing code for the first time, learning about Python data structures such as dictionaries, list, strings etc or debugging an application.
  • Surround yourself with other people who are learning. Join meetups or participate in bootcamps in Johannesburg to connect with professionals.

Here is a list of Python libraries which are best for machine learning:

  • Scikit-learn: Used majorly for data mining, data analysis and in data science as well.
  • SciPy: Has packages for both Maths and engineering.
  • Numpy: free and fast vector and matrix operations, performed with efficiency.
  • Keras: When one thinks Neural network, one goes to get the help of Keras.
  • TensorFlow: It uses multi-layered nodes which allow us to quickly train, setup and deploy artificial neural networks.
  • Pandas: Provides high-level data structures. Significantly helpful while during data extraction and preparation.
  • Matplotlib: It helps in the visualization of data by plotting of graph in 2D.
  • Pytorch: If NLP is our aim, Pytorch is our go-to library. 

reviews on our popular courses

Review image

The trainer was really helpful and completed the syllabus on time and also provided live examples which helped me to remember the concepts. Now, I am in the process of completing the certification. Overall good experience.

Vito Dapice

Data Quality Manager
Attended PMP® Certification workshop in May 2018
Review image

KnowledgeHut is a great platform for beginners as well as experienced professionals who want to get into the data science field. Trainers are well experienced and participants are given detailed ideas and concepts.

Merralee Heiland

Software Developer.
Attended PMP® Certification workshop in May 2018
Review image

The skills I gained from KnowledgeHut's training session has helped me become a better manager. I learned not just technical skills but even people skills. I must say the course helped in my overall development. Thank you KnowledgeHut.

Astrid Corduas

Senior Web Administrator
Attended PMP® Certification workshop in May 2018
Review image

I would like to extend my appreciation for the support given throughout the training. My trainer was very knowledgeable and I liked his practical way of teaching. The hands-on sessions helped us understand the concepts thoroughly. Thanks to Knowledgehut.

Ike Cabilio

Web Developer.
Attended Certified ScrumMaster (CSM)® workshop in May 2018
Review image

KnowledgeHut has excellent instructors. The training session gave me a lot of exposure to test my skills and helped me grow in my career. The Trainer was very helpful and completed the syllabus covering each and every concept with examples on time.

Felicio Kettenring

Computer Systems Analyst.
Attended PMP® Certification workshop in May 2018
Review image

The course materials were designed very well with all the instructions. The training session gave me a lot of exposure to industry relevant topics and helped me grow in my career.

Kayne Stewart slavsky

Project Manager
Attended PMP® Certification workshop in May 2018
Review image

The workshop held at KnowledgeHut last week was very interesting. I have never come across such workshops in my career. The course materials were designed very well with all the instructions were precise and comprehenisve. Thanks to KnowledgeHut. Looking forward to more such workshops.

Alexandr Waldroop

Data Architect.
Attended Certified ScrumMaster (CSM)® workshop in May 2018
Review image

I was impressed by the way the trainer explained advanced concepts so well with examples. Everything was well organized. The customer support was very interactive.

Estelle Dowling

Computer Network Architect.
Attended Agile and Scrum workshop in May 2018


The Course

Machine learning came into its own in the late 1990s, when data scientists hit upon the concept of training computers to think. Machine learning gives computers the capability to automatically learn from data without being explicitly programmed, and the capability of completing tasks on their own. This means in other words that these programs change their behaviour by learning from data. Machine learning enthusiasts are today among the most sought after professionals. Learn to build incredibly smart solutions that positively impact people’s lives, and make businesses more efficient! With Payscale putting average salaries of Machine Learning engineers at $115,034, this is definitely the space you want to be in!

You will:
  • Get advanced knowledge on machine learning techniques using Python
  • Be proficient with frameworks like TensorFlow and Keras

By the end of this course, you would have gained knowledge on the use of machine learning techniques using Python and be able to build applications models. This will help you land lucrative jobs as a Data Scientist.

There are no restrictions but participants would benefit if they have elementary programming knowledge and familiarity with statistics.

On successful completion of the course you will receive a course completion certificate issued by KnowledgeHut.

Your instructors are Machine Learning experts who have years of industry experience.

Finance Related

Any registration cancelled within 48 hours of the initial registration will be refunded in FULL (please note that all cancellations will incur a 5% deduction in the refunded amount due to transactional costs applicable while refunding) Refunds will be processed within 30 days of receipt of written request for refund. Kindly go through our Refund Policy for more details.

KnowledgeHut offers a 100% money back guarantee if the candidate withdraws from the course right after the first session. To learn more about the 100% refund policy, visit our Refund Policy.

The Remote Experience

In an online classroom, students can log in at the scheduled time to a live learning environment which is led by an instructor. You can interact, communicate, view and discuss presentations, and engage with learning resources while working in groups, all in an online setting. Our instructors use an extensive set of collaboration tools and techniques which improves your online training experience.

Minimum Requirements: MAC OS or Windows with 8 GB RAM and i3 processor.

Have More Questions?

Machine Learning with Python Course in Johannesburg

Throughout the 80?s and 90?s Johannesburg went into a state of decline with poverty, crime, and racial tensions at their peak. But the city managed to put these in the past and surged ahead in the new millennium. Johannesburg today is a beautiful city with choc o bloc office and residential buildings, vibrant cultural districts with posh restaurants, museums, theatres, and a bustling night life. Among the world?s leading financial centres, Johannesburg accounts for a significant portion of South Africa?s economy. It houses the JSE which is Africa?s largest stock exchange and several manufacturing, technology, banking, insurance, trade, retail and real estate companies. A major transit point, it also has a well-connected urban transport system. The city has several museums, art galleries, and world heritage sites such as the Cradle of Humankind, Sterkfontein fossil site, and several others. Professionals who wish to thrive in their career would find that they can do well here, with certifications such as PRINCE2, PMP, PMI-ACP, CSM, CEH, CSPO, Scrum & Agile, MS courses and others. Note: Please note that the actual venue may change according to convenience, and will be communicated after the registration.