Pluralsight Course on Introduction to Machine Learning with ENCOG

Hello everyone, My First course on machine learning is available now on

If you are new to machine learning, and are scared of too much mathematics behind the scenes, this course is for you. This course will help you in not only understanding the basics of machine learning & neural networks, but also applying these concepts easily in your projects. The course uses C# and visual studio along with the open source machine learning framework ENCOG.

Concepts learned in this course will be applicable even if you are writing custom codes for your machine learning projects.

About the Course

This course focuses on the implementation and applications of various machine learning methods. As machine learning is a very vast area, we will target specifically the neural networks’ aspect of machine learning. The course will first build the foundations by explaining machine learning through some real world applications and various associated components. We’ll take a look at ENCOG, one of the open source machine learning framework for .NET. We will also learn to create various neural network components using ENCOG and how we can combine these components for real world scenarios. We will discuss data preparation for neural networks using normalization process as well as how to implement tasks of classification & regression.

Course Outline

Introduction to Machine Learning

  • Introduction
  • Why Machine Learning ?
  • Why This Course ?
  • Key Concepts
  • Spam Filtering
  • Course Structure

Applications of Machine Learning

  • Introduction
  • Internet
  • Financial Sector
  • e-Commerce
  • Process Industry
  • Others
  • Summary

Machine Learning Tasks

  • Introduction
  • Classification
  • Regression
  • Clustering
  • Summary

Introduction to Neural Networks

  • Introduction
  • Outline
  • Human Neuron vs Artificial Neuron
  • Neuron Computation
  • Neural Network Component : Neuron Types
  • Neural Network Component : Weights
  • Neural Network Component : Activation Function
  • Neural Network Component : Layers
  • Neural Network Computation
  • Model Creation
  • Model Training
  • Model Validation
  • Summary

Introduction to ENCOG 3

  • Introduction
  • Outline
  • About ENCOG
  • Why ENCOG ?
  • ENCOG Coverage
  • ENCOG Resources
  • Summary

Neural Network Components in ENCOG for .NET

  • Introduction
  • Outline
  • Data
  • Network
  • Training
  • Evaluation
  • XOR Problem
  • Demo : XOR problem with ENCOG 3 in C#

Propagation Training

  • Introduction
  • Outline
  • Propagation Training
  • Basic Concepts
  • Back Propagation Algorithm
  • Manhattan Update Rule
  • Quick Propagation Algorithm
  • Resilient Propagation Algorithm
  • Scaled Conjugate Gradient
  • Levenberg Marquardt Algorithm
  • Demo
  • Summary

Data Normalization

  • Introduction
  • Outline
  • Field Types
  • Need Of Normalization
  • Normalization and De-Normalization
  • Numeric Data Field Normalization
  • Numeric Data Field Normalization in ENCOG
  • Nominal Data Field Normalization
  • ENCOG Analyst
  • Summary

Case Studies (Classification and Regression Task)

  • Introduction
  • Outline
  • Case Study 1: Classification Task
  • Flow Chart 1
  • Demo : Case Study 1 : Shuffle 1
  • Demo : Case Study 1 : Segregate
  • Demo : Case Study 1 : Normalize
  • Demo : Case Study 1 : Create Network
  • Demo : Case Study 1 : Train Network
  • Demo : Case Study 1 : Evaluate Network
  • Case Study 2: Regression Task
  • Flow Chart 2
  • Demo : Case Study 1 : Shuffle 2
  • Demo : Case Study 2 : Segregate
  • Demo : Case Study 2 : Normalize
  • Demo : Case Study 2 : Create Network
  • Demo : Case Study 2 : Train Network
  • Demo : Case Study 2 : Evaluate Network
  • Summary

Link to the pluralsight course :

Introduction to Machine Learning With ENCOG


Abhishek is a software architect, developer and Pluralsight author. He is very passionate about working with data especially in the field of machine learning. He has authored several courses on machine learning which are available on Pluralsight. He has been involved in several software development projects, which involves various machine learning techniques. His work focuses on architecting and developing applications especially in the area of monitoring, optimization, pattern recognition, and fault detection. His professional interests include software design patterns, agile practices, and various technologies such as WCF, WF, WPF, Silverlight, SQL Server, Entity Framework and ASP.NET MVC. He is also a Microsoft Certified Professional (HTML5, Javascript, CSS3).

Tagged with: , , ,
Posted in Machine Learning, Technical
11 comments on “Pluralsight Course on Introduction to Machine Learning with ENCOG
  1. Vineeth says:

    hi Abhishek,
    I just finished your lecture on machine learning and it was really great, I can see the real world applications of this.

    One question I had regarding your MPG example you had given in your lecture, If machine learning is used for predicting the MPG, then do we need to provide the initial MPG ( in your data set ) as an input ? can’t we just ignore it and let the network find what would be the MPG for the set of inputs ?

    • Hi Vineeth,

      I am glad that you liked the course.
      Regarding, MPG problem, that I discussed in the course is an example of supervised learning, where you provide inputs as well as ideal output during training time and at run time you only provide inputs and the trained model will try to predict the output.

      Think like this, you can manually get the mileage of a automobile by running it for standard distance and then find out the fuel used. But this is a time consuming activity. That’s why you cannot do it for every scenario. Therefore, what you do is to manually do this mileage estimation process for some case studies. Then feed that information (input and output) to the model, and once the model is trained, use it for other cases for which you have not manually computed the mileage.

      So, if for some problem, computation of output is a time consuming (may be not straight forward too) process, and you do not want to do it all the time, then such supervised learning algorithms could be very handy, where you do the computation for some cases, and let the model predict for other cases.

      However, there are other supervised learning methodology also, where you do not provide ideal output values, rather you provide a mechanism to score of the predicted output (means how well the model has predicted the output), such type of methodology are widely used in optimization problems.

      I will discuss more such examples along with more advance techniques of machine learning in my upcoming course, which will be available on pluralsight soon. So stay tuned for that.

  2. Devon Kyle says:

    One of the best Pluralsight courses I have watched. Great job – thank you for both of the Encog courses. Very helpful!

  3. Rafat Sarosh says:

    Indeed it is a good course, very practical ….thanks for not covering the academics as there are too many courses on web which go in equations and maths of this ML. I needed a course like this. Good job!

  4. Arkantous says:

    Mr kumar thank you so much for your corse about Machine Learning.
    unfortunately you didn’t say essential way for evaluation data, for example calculate Auto MPG problem without evaluate and only Trained data, please help me because I need know about evaluate data I will use Encog 3 For Precipitation Rainfall Runoff. I could train my Network by using your sample code and your teach but in the end of my project I don’t know how can create Validation result file.
    Thank’ you

    • Hi, thanks for watching the course. I have covered training, crossvalidation and evaluation dataset and its use in detail in network tuning module of first advanced level course. This course is already available on pluralsight. So you can go through it.


      • Arkantous says:

        Thank you so much for your answer to my request and question. I watched your course completely for at least 3 time I should say I really enjoyed that it was awesome but I remember you described until training data with different method or techniques such as pruning and you said in that part of video evaluation is not our discuss in this course my mean of evaluation was (output result). by the way I solved my problem by ENCOG3 Workbench and I used PNN method ( you said in beginning of course is not Covered in this course) However I’ll ask you please continous to producing more course about machine learning because personally I believe you are very good teacher.

      • Thanks for your words of appreciation,only viewer’s feedback provide morale boost to produce quality courses. Yes, I am working on other courses on machine learning. Second part of advanced level course is already in completion phase and it will be live very soon.
        Hope you will like that course also.
        Looking forward to your feedback.

  5. Ahad Ahmad Khan says:

    Hi Abhishek,

    I am watching your Machine Learning course on Pluralsight. It’s simple and amazing. Thanks for making a practical course on such a complex topic.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

About Me

Software Architect, Developer & Pluralsight Author

Software Architect, Developer & Pluralsight Author, Twitter Handle :

Enter your email address to follow this blog and receive notifications of new posts by email.

Join 116 other followers

The opinions expressed herein are my own personal opinions and do not represent my current or previous employer's view in anyway.
Live Feed
%d bloggers like this: