4

Machine learning seems to depend on such math fields as probability, statistics, calculus, and linear algebra.

@pranav suggested discrete math would be an important prerequisite. However, someone else a discrete math book would be on a low priority if becoming a machine learning practitioner was my top priority.

Although I also want to become a software engineer as well as machine learning practitioner/researcher, I am a professional software engineer already, and I need to learn software engineering, math, and machine learning on my free time. If I was in a 4-year university curriculum, I would definitely start with discrete math.

How should I deal with discrete math? Should I learn it after probability, statistics, calculus, and linear algebra? Do I just skip it? Or, do I need learn it first?

  • why not learn it in parallel to other subjects? – JMP May 17 '15 at 05:33
  • Related questions: http://math.stackexchange.com/q/668574/139123, http://math.stackexchange.com/q/908987/139123, http://math.stackexchange.com/q/1146143/139123, http://math.stackexchange.com/q/1239799/139123. Logic, search algorithms, and such may be touched upon by discrete math, but you may well already have picked up through experience most of what you might need of those topics, so it's hard to say to make this a priority. – David K May 18 '15 at 01:14
  • @JonMarkPerry That is indeed an option. –  May 18 '15 at 11:47

2 Answers2

1

Discrete Mathematics gives you a good background in the notions and languages of finite state machine. Most of the concepts treated in Discrete maths appear in other forms in this case. For example, directed graphs appear as state transition diagram and truth tables appear as state transition table. Other notions of Boolean algebra are also applicable.

OKPALA MMADUABUCHI
  • 1,063
  • 6
  • 16
0

In my experience when learning programming it is best to have the problem first and then learing what you need to solve it. Artificial intelligence can be achieved in various ways and sometimes this involves more discrete math, sometimes less. So I would suggest to learn the things that you really have to do yourself and this will be finding the correct probabilistic model, handling new information (Bayes theoreme) and some of the discrete math, but ideally as you go and work on a problem.