Function Callers Vs Data Scientists In our organization, there are many people who are into analytics and data science who are OK in their work with in the sense that they know what packages in R/Python etc to use, what algorithms to call for a particular type of problem etc. The problem is that they have very little knowledge of underlying mathematics and are not able to think beyond calling ready made functions i.e. they can never build a custom solution to specific problem. Let us call them as Function Callers as opposed a genuine Data Scientist who has a fair knowledge of the underlying mathematics.

We want to conduction a training course to teach the mathematical foundations of machine learning to the Function Callers and help them become Data Scientists. For this we have shortlisted some ten topics namely.

• Probability
• Various Probability distributions and data
• Maximum likelihood methods
• Linear Algebra (advanced)
• Single variable calculus, Multi variable calculus
• Vector calculus
• Graphical models
• Bayesian networks
• Optimization techniques
• Statistical models

This is going to be an 80 hour course so it is not possible to cover everything in detail like a college/university course.

Question: Assume that the course will have enough time to teach and implement only 3 or 4 things in each of the topics mentioned above. So given this background, what are the best 3 or 4 things that can be covered under each topic?

Note: The target audience have either science or college level mathematics background but they do not have deep knowledge about the mathematics that is used in machine learning.
I've done my Masters in Analytics from National University of Singapore.

The answer which I'm going to give is based on my experience.

Ofcourse all the topics are important in the above mentioned list but if you need to prioritize from the topics which you have mentioned above I think the following are very important for any person who is working in a Data Science field. :


Various Probability and Data Distribution: Here you can give basic intro on Probability. You don't need a separate Probability class. A bit more its applications.
Single variable calculus/Multi variable calculus: There are very important, when you try to forecast something this plays an important role.
Graphical Models: Yes, these are helpful in implementing all kinds of community detection algorithms, social networking and many more.
Bayesian Network: This is one of the basic techniques which is important and should be known by all statisticians.
Statistical Models: They need to be exposed to different statistical models as you know there are many models which can perform better in different scenarios, It comes only by practice. 


Rest are not so important at the start, you can conduct another session if necessary based on the outcome of the 1st session. Where you can cover all the topics like Linear Algebra (advanced),  Vector calculus, Optimization techniques, Maximum likelihood methods. As you know these techniques would come into play after getting the basic models ready and you would use these if you want to improve the accuracy of the model or tweaking the model WRT to your Business Problem.

I hope this answer may help you.