Prerequisites Needed to Read Books on Neural Networks (and understand them)

56

Solution 1

If you want a list of college courses that you'll need to understand the book, here it is:

  • Calculus (I, II and III)
  • Differential Equations
  • Linear Algebra
  • Statistics (or a good covering of Bayes)

However, I did just fine in my NN classes without Diff. Eq. and just had to look up concepts I hadn't studied yet.

You can take the black box approach as above, but if you really want to understand the math and implementation of the networks, you'll have to study. It's going to be a steep learning curve to fully grasp the more advanced networks no matter what you do. You can either take the above classes first, or you can start reading the book and look up everything you don't grasp on wikipedia, and then from those articles read whatever you have to read to understand them, etc. You will find that, either way, you'll eventually get past that initial peek and things will be easier.

It would be good if you told us why you want to learn neural networks. I've not found a single use for them in my professional career, though I'm not a game developer or telecommunications developer.

Solution 2

You can't implement "neural networks" -- you'll end up implementing a specific kind of NN (e.g. perceptron). There are many different kinds of NNs, each more suitable for some specific kind of task, and each kind uses some math (and not only math) concepts that are specifically only to that particular kind. For example, Boltzmann machines use concepts from statistical thermodynamics (founded by Boltzmann).

As for your question: without a clear goal, there is no clear (not even "semi-clear") path.

Solution 3

I second zvrba's idea that you set yourself a clear goal. A few guiding questions: a. Do you want to study NNs as a model of biological networks or as a computational tool? b. Are you interested in their learning aspect? associative memory? signal processing? c. Do you want to understand complex theory? or just enough to write simulation software?

Also, I would start small: implement a perceptron in your favorite programming language. The math is not that bad, and it will probably focus you on your next steps. Use a binary classification dataset, say UCI's tic-tac-toe endgame.

Solution 4

For basic, back-prorogation neural networks, the most important things are:

  • Calculus

  • Linear Algebra

  • Basic Stats / Probability

If you are just looking for more specific topics (you said you already took Calc, so I'll leave that out), here are some subjects that will be useful to know, if not necessarily directly applicable to building a neural network:

  • Solving Linear Systems of Equations (you'd learn this in a Linear Algebra course)

  • Least Squares Regression

  • Optimization theory

You should realize that there are several other methods that can be used to solve certain problems along with neural networks.

Often the most difficult aspect of solving a problem is determining the best method to use.

Share:
56
Sakib
Author by

Sakib

Updated on June 15, 2022

Comments

  • Sakib
    Sakib almost 2 years

    When setting up hadoop, I did not know what I was doing and I accidently ended up starting hadoop as super user.

    Is there any way to fix this or is it better I remove hadoop and re set it up?

    • Sakib
      Sakib over 8 years
      Also I am running into many issues starting up hadoop services and such because I don't own the machine, its on our lab servers.