völlig richtig, ich habe mein Netz deshalb ja auch 100% skalierbar aufgebaut, mit beliebig vielen Inputs, Outputs und Neuron-Layer-Größen - die Rechnerei bleibt bei einem 3-Neuronen-Netz oder bei einem 50-Neuronen-Netz absolut dieselbe:
Code:// neural net size #define NMAXIN 108 // max number of inputs (sensors) #define NMAXHID 20 // max number hidden layer neurons #define NMAXOUT 20 // max number output layer neurons #define NMAXPAT 70 // <<< max number of traineable patterns; //------------------------------------------------------------------------------------- // neural net: neurons and patterns float WeightLIn[NMAXIN+1][NMAXHID+1]; float WeightLOut[NMAXHID+1][NMAXOUT+1]; float Input[NMAXPAT+1][NMAXIN+1]; float Target[NMAXPAT+1][NMAXOUT+1]; float Output[NMAXPAT+1][NMAXOUT+1]; //float Contxt[NMAXOUT+1]; // Jordan-net: neuron-number == output-number float currIn[NMAXIN+1], // currently polled inputs inbuf[NMAXIN+1]; // intermediate stored inputs for editing float currOut[NMAXOUT+1], // currently computed net outputs outbuf[NMAXOUT+1]; // intermediate stored outputs int16_t NumInput = NMAXIN, NumHidden = NMAXHID, NumOutput = NMAXOUT;







Zitieren

Lesezeichen