Talk:Perceptron

From Rosetta Code
Revision as of 07:14, 16 July 2016 by rosettacode>Fwend (typo)

How long does that java implementation need?

Looking at the current java implementation, I see, in the paint event:

<lang java> train(training[count].inputs, training[count].answer);

       count = (count + 1) % training.length;

       g.setStroke(new BasicStroke(1));
       g.setColor(Color.black);
       for (int i = 0; i < count; i++) {</lang>

So, I believe count is initially zero, and it looks like each time through the paint event there's training against one element of the training set. And, it's got a timer doing a repaint every 30 milliseconds. So it's a bit over a minute to do one pass against the training set of 2000 elements, and then it will keep training indefinitely.

It would be helpful to know how long the java implementation had to "cook" before that screenshot was taken... --Rdm (talk) 04:10, 16 July 2016 (UTC)

Not very long, maybe a few minutes, I can't remember exactly, but it wasn't very long. It stabilizes after about half a minute on my system, but I almost never get a perfect split (I believe the text at natureofcode also says that), so I got a bit lucky with the screenshot. I tried making it run longer but it doesn't seem to improve. Fwend (talk) 07:13, 16 July 2016 (UTC)