Also folgendes habe mein erstes Neuronales Netz zusammen geschustert wie erwartet funktioniert es nicht
.
Dabei bin ich mir vieler Fehler bewusst doch bei zwei Sachen bin ich mir nicht sicher...
1. Der Bias wert wozu gibt es bei der Sigmoid Neurode den Bias wen ich nichts übersehen habe könnte man ihn einfach weg lassen und würde zum selben Ergebnis kommen.
2. Bei Perceptrons ist der Rückgabewert 1 oder 0 bei Sigmoid ein wert zwischen 1.0 und 0.0 wobei
mir nicht ganz ersichtlich ist ob ich den wert abfeure oder je nachdem ob der wert größer als 0.5 ist 0 oder 1 ausgebe.
(Wie bei den output Neuroden...)
Edit:
Etwas code zum besseren Verständniss.
Edit Nummer 2:
Ok es funktioniert doch zu Punkt 1 funktioniert auch ohne Bias konnte keinen unterschied feststellen. (einfaches Problem 4 * input 2 * hidden layer mit jeweils 6 Neuroden und 4 * output)
Zu Punkt zwei es scheint richtig zu sein das die Neuroden mehr zustände ausgeben als 1 und 0 wobei ich schon aus Neugier früher oder später das ganze mit einem threshold versuchen werde...
Dabei bin ich mir vieler Fehler bewusst doch bei zwei Sachen bin ich mir nicht sicher...
1. Der Bias wert wozu gibt es bei der Sigmoid Neurode den Bias wen ich nichts übersehen habe könnte man ihn einfach weg lassen und würde zum selben Ergebnis kommen.
2. Bei Perceptrons ist der Rückgabewert 1 oder 0 bei Sigmoid ein wert zwischen 1.0 und 0.0 wobei
mir nicht ganz ersichtlich ist ob ich den wert abfeure oder je nachdem ob der wert größer als 0.5 ist 0 oder 1 ausgebe.
(Wie bei den output Neuroden...)
Edit:
Etwas code zum besseren Verständniss.
Code:
public void ReciveInput(float value)//input neurode one value no bias
{
outPut = 1.0f / (1.0f + (float)Mathf.Exp(-value * weights[0]));
//if out put > 0.5f output = 1 else output = 0/ignore node ?????
}
public void ReciveInput(Neurode[] layer)
{
for (int i = 0; i < layer.Length; i++)//for each neurode in the above layer
outPut += layer[i].outPut * weights[i];//get z
outPut = 1.0f / (1.0f + (float)Mathf.Exp(-outPut + bias));// and apply the sigmoid funktion... should work the same without bias/magic number
//if out put > 0.5f output = 1 else output = 0/ignore node ?????
}
Edit Nummer 2:
Ok es funktioniert doch zu Punkt 1 funktioniert auch ohne Bias konnte keinen unterschied feststellen. (einfaches Problem 4 * input 2 * hidden layer mit jeweils 6 Neuroden und 4 * output)
Zu Punkt zwei es scheint richtig zu sein das die Neuroden mehr zustände ausgeben als 1 und 0 wobei ich schon aus Neugier früher oder später das ganze mit einem threshold versuchen werde...
Zuletzt bearbeitet: