Are there any ways to know what is wrong in the code learning neural network or mathematical model of this learning?

asked June 7th 19 at 14:24

3 answers

answered on

Solution

Let's still strictly formalize the question.

"in the code for training the neural network or mathematical model of the learning" - as it quite clearly. Suppose you had in mind

"mathematical model of learning" =="a learning algorithm of the network"

"learning code" == "a software implementation of the algorithm".

Then the task gets a strict formulation: "*We programmed some learning process. The result is not as we expected. Where is the error in the algorithm or in the code"*.

And if so, in this formulation, the problem though cannot be solved with absolute precision, but it is clear that we need to do, is to give an answer. By and large, it is now no different from the usual tasks during the testing phase in the development of any software product - from toys to websites.

Of solution two.

Analytical:

1. In-depth analysis of the algorithm (i.e. still studying what is written in that book from whence we took it, because in the books there are mistakes).

1. Traditional code review.

(Well, how can we have a joke - you can take both tasks on a teacher :-). ).

Experimental:

1. Find and clearly write the algorithm.

2. Give it to program two, three.... the more-the better... programmers. Get many implementations of the same algorithm.

3. Execute the process of training the network using each implementation. Compare the results with the expected.

4. If the implementation gave results different from expected, but coincide - look for errors in the algorithm. If the implementation gave results different from expected, but different among themselves - look for the error in the code.

But a simple "book" solution to this problem - no.

"in the code for training the neural network or mathematical model of the learning" - as it quite clearly. Suppose you had in mind

"mathematical model of learning" =="a learning algorithm of the network"

"learning code" == "a software implementation of the algorithm".

Then the task gets a strict formulation: "

And if so, in this formulation, the problem though cannot be solved with absolute precision, but it is clear that we need to do, is to give an answer. By and large, it is now no different from the usual tasks during the testing phase in the development of any software product - from toys to websites.

Of solution two.

Analytical:

1. In-depth analysis of the algorithm (i.e. still studying what is written in that book from whence we took it, because in the books there are mistakes).

1. Traditional code review.

(Well, how can we have a joke - you can take both tasks on a teacher :-). ).

Experimental:

1. Find and clearly write the algorithm.

2. Give it to program two, three.... the more-the better... programmers. Get many implementations of the same algorithm.

3. Execute the process of training the network using each implementation. Compare the results with the expected.

4. If the implementation gave results different from expected, but coincide - look for errors in the algorithm. If the implementation gave results different from expected, but different among themselves - look for the error in the code.

But a simple "book" solution to this problem - no.

answered on June 7th 19 at 14:28

- Kyleigh_Hills commented on June 7th 19 at 14:31

answered on June 7th 19 at 14:30

The error is always in that primary.

A primary Mat. model.

So, look for the cause of incorrect teaching in Mat.models (formulas).

A primary Mat. model.

So, look for the cause of incorrect teaching in Mat.models (formulas).

But if "Mat.model(formula)" to be correct, and errors in the code or the program logic?

So it is not always "is always there, what comes first". commented on June 7th 19 at 14:33

So it is not always "is always there, what comes first". commented on June 7th 19 at 14:33

I agree that not always... But usually!

But if the problem is in the encoding of the Mat. algorithm - this is a very severe case of NS then can be discussed in principle?) commented on June 7th 19 at 14:36

But if the problem is in the encoding of the Mat. algorithm - this is a very severe case of NS then can be discussed in principle?) commented on June 7th 19 at 14:36

Find more questions by tags PythonNeural networks