views:

79

answers:

0

The best way to learn something in the computer industry is to try and use it for a project that you are working on (Not a high priority or high visibility one of course). Only then will you be forced to read all the relevant documentation, build the DLLs and start calling the code and interpreting the result, etc.

As a learning exercise I am using FANN to recognize various language constructs. I am using good old LEX to tokenise my source code, and I now want to train various nets to trigger their output when various combinations of tokens can trigger an output neuron.

So, I pass various combinations of data to my net. Naturally I am showing the constant name of these real values for clarity.

A few examples

TBROWSEDB,LPAREN,DIGITS,COMMA,DIGITS,COMMA,DIGITS,COMMA,DIGITS,RPAREN

PROCEDURE,NAME,LPAREN,IDENTIFIER,COMMA,IDENTIFIER

STATIC,FUNCTION,NAME,LPAREN,IDENTIFIER,RPAREN

Has anyone seen an example or tutorial similar to what I am trying to do. So that I can learn from it as my net training has not yielded usable results. I might train it only on the PROCEDURE pattern, then throw the whole source file at it, but it sets the output indicator to 1.0 on all lines of code. I have multiplied the constants to improve token separation. There is a FannTool 1.0 that I have used a lot, to vary all of the tweakabeles with my data, but still no joy.