Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Fourb

Treue Seele

Beiträge: 122

Beruf: Schüler

  • Private Nachricht senden

11

02.07.2013, 20:23

Was geht bei dir ab. Komm mal von deinem Trip runter.

Ich hab dich nicht als Anfänger abgestempelt. Du hast dich so ausgedrückt, dass du nicht nachvollziehen kannst, was ich meine.
Ich habe lediglich die Annahme aufgestellt, dass du noch nicht soweit bist und du ursprünglich erstmal noch bei deiner vereinfachten Variante bleiben willst.
42 / Pi = 13,37

12

02.07.2013, 20:51

Kein Plan, wieso du es dir als Einsteiger gleich so schwer machen musst.

Nagut vielleicht bin ich da etwas überempfindlich gewesen. Und mein Kommentar war nicht auf die Erklärung der Schmerzsensoren bezogen sondern auf das danach. Die Erklärung war top :thumbsup:

Was ich allerdings nicht verstehe ist was du mit deinem letzten Beitrag meinst. Vielleicht versuche ich einfach die Frage nochmal anders zu formulieren, vielleicht wird es dann klarer was ich will:

Ich habe ein Netz mit N Eingangsneuronen und 20 Ausgangsneuronen. Die 20 Ausgangsneuronen stehen für jeden vorkommenden Planeten im System. Ich frage mich nun, von welchem Planeten aus ich am geschicktesten ziehen kann (diese Frage soll mein Netz beantworten). Die Frage die noch zu klären ist, ist nun: Wie sieht mein Input aus? Wie viele Neuronen brauche ich und wofür?
Zu dem Zeitpunkt wo ich das Netz befrage weiß ich bereits auf welchen Planeten ich ziehen werde, weshalb dies in der Eingabe berücksichtigt werden soll. Klar ist das ich mit 42 Neuronen alle Spielinformationen ins Netz einbringen kann. Geht es auch in weniger?

Ein weiterer Punkt ist das Einlernen des Netzes mit Hilfe von "supervised learning" also überwachtem lernen. Die Auswahl der Trainingsdaten ist kritisch für den Erfolg des Lernprozesses allerdings findet man keine genauen Angaben wie die Daten auszuwählen sind. Frage: Wisst ihr wie die Daten auszuwählen sind? Wenn ja, wie? Und was sollte man lassen?

Ich hoffe es wird klarer was ich will und wir können endlich aufhören um den heißen Brei herumzureden. Schreib mir einfach wie du das Netz zu obigem Problem auslegen würdest das Spiel ist weiter oben gepostet. Dann können wir vielleicht schauen ob man mit weniger als 42 Neuronen auskommt.

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

13

03.07.2013, 11:16

Erst mal Willkommen im Forum. Fühl dich bitte nicht angegriffen, so wie es überall auch Individuen gibt die verschieden reagieren, so gibt es diese hier auch. Mit der Zeit gewöhnst du dich an einige Eigenheiten. Auch wenn du als Anfänger abgestempelt wirst ist das normal nicht böse gemeint. Die meisten neuen hier sind Schüler die grad anfangen zu programmieren und irgendwann gewöhnt man sich da so eine Verallgemeinerung an. Wir wissen ja jetzt bescheid und dann sollte das soweit gut sein:) Zum Thema kann ich leider nichts sagen. Habe von NN selbst nur ein wenig theoretisches Wissen welches nicht sonderlich weitreichend ist. Aber weiterhin viel Erfolg.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

Legend

Alter Hase

Beiträge: 731

Beruf: Softwareentwickler

  • Private Nachricht senden

14

03.07.2013, 11:47

RE: Neuronale Netze, Auslegung und Training

Wie sieht nun ein Trainings-Datensatz sobald ich mich für eine Lernmethode entschieden hab? Der Punkt lernen des Netzs ist der bei dem ich noch garkeine Idee habe. Gibt es irgendwelche Richtlinien um die Warscheinlichkeit zu maximieren, dass mein Netz das lernt und vor allem generalisiert, was ich will das es lernt? Oder ist es einfach nur ein "Ich werf mal ein paar Daten rein, sag ungefähr was raus kommen soll und hoffe das es passt."


Also hier weiß ich bei Neuronalen Netzen mit Hidden Layern als Faustregel um zu einer guten Generalisierung zu kommen, dass man das Netz, insbesondere den Hidden Layer so klein wie möglich halten sollte. Das Netz sollte die Trainingsdaten gerade so lernen können. Wenn das Netz gar nicht die Kapazität hat um auswendig zu lernen, muss es generalisieren. Und große Netze neigen dazu auswendig zu lernen, weil das meistens einfacher ist.

Um was den Datensatz angeht, du brauchst nicht nur einen Trainingsdatensatz, sondern auch einen zur Verifikation, den du nicht in den Lernvorgang einbeziehst. Hat das Netz nicht nur auswendig gelernt, sollte es auch auf dem Verifikationsdatensatz funktionieren. Hat es auswendig gelernt, wird es für die Verifikationsdaten wohl nur Unsinn produzieren.
"Wir müssen uns auf unsere Kernkompetenzen konzentrieren!" - "Juhu, wir machen eine Farm auf!"

Netzwerkbibliothek von mir, C#, LGPL: https://sourceforge.net/projects/statetransmitt/

15

04.07.2013, 19:56

Soweit, so gut.

Das Netz ist implementiert und nächste Woche wird es eingelernt. Das mit den Verifikationsdatensatz ist eine gute Idee. Den hätte ich eiskalt nicht erstellt und die KI auf das Spiel losgelassen und mich gewundert, dass es nicht funktioniert. :D

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

16

05.07.2013, 02:36

Hmm es gibt gute Gründe warum NNs nur sehr sehr selten verwendet werden. Für die Neuronenanzahl Frage könnte der Optimal Brain Surgeon Algorithmus eine gute Hilfe darstellen.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

Werbeanzeige