Ich möchte meinen Evolutionssimulator auf Hebb lernen, wie this one. Ich möchte, dass kleine Lebewesen lernen können, wie man Nahrung findet. Das habe ich mit den grundlegenden Feedforward-Netzwerken erreicht, aber ich muss unbedingt lernen, wie man es mit Hebb-Lernen macht. Das Grundprinzip des Hebb-Lernens ist, dass wenn zwei Neuronen miteinander feuern, sie sich miteinander verbinden.Wie Hebbian lernen?
So werden die Gewichte wie folgt aktualisiert:
weight_change = learning_rate * input * output
Die Informationen, die ich gefunden habe, wie dies nützlich sein kann ziemlich knapp ist, und ich weiß es nicht.
In meiner aktuellen Version des Simulators sind die Gewichte zwischen einer Aktion und einer Eingabe (Bewegung, Augen) erhöht, wenn eine Kreatur ein Stück Nahrung isst, und ich sehe nicht, wie das in dieses neue Modell übersetzt werden kann. Es gibt einfach keinen Raum zu sagen, ob es hier etwas richtig oder falsch gemacht hat, denn die einzigen Parameter sind Eingabe und Ausgabe! Wenn ein Input die Bewegung in eine Richtung aktiviert, würde das Gewicht einfach weiter steigen, egal ob die Kreatur etwas isst oder nicht!
Bewerbe ich mich Hebb lernen falsch? Als Referenz verwende ich Python.
Ich möchte, dass die Netze nicht Vors sein, Gehirne funktionieren nicht so, und ich denke, dass Schleifen abkühlen könnte. Also, keine Rückmeldung, sagst du ... Also könntest du im Grunde erklären, wie genau das funktionieren würde? Weil es immer noch kaputt scheint, wird es Eingang A mit Ausgang B assoziieren, nur weil die Startgewichte so eingestellt wurden, und dann wird es die Verbindung zwischen dann unendlich erhöhen, so scheint es. – corazza