-         
Seite 13 von 14 ErsteErste ... 311121314 LetzteLetzte
Ergebnis 121 bis 130 von 138

Thema: GI = Guckis Intelligenz

  1. #121
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.11.2019
    Ort
    Hamburg
    Beiträge
    117
    Anzeige

    Praxistest und DIY Projekte
    Hallo oberallgeier, hallo Mitlesende,

    ich versuch jetzt aber trotzdem mal, das XOR-Problem verständlich rüberzubringen.

    Sowohl Helmuts als auch mein System besteht aus Zellen. Diese Zellen haben mehrere Eingänge. Jeder aktivierte Eingang erhöht in der Zelle einen Summenzähler. Sobald dieser Zähler eine Schwelle erreicht hat, feuert die Zelle.

    Er und ich haben unseren Eingängen Zahlenwerte zugeordnet. Eine Zelle mit zwei Eingängen A und B kann zum Beispiel für jeden Eingang den Zahlenwert "5" zugeordnet haben. Die Zelle soll beim Summenzähler "10" feuern.

    Wenn nur der Eingang A aktiv ist, wird der Summenzähler nur den Wert "5" erreichen und die Zelle feuert nicht. Auch wenn nur der Eingang B aktiv ist, bleibt der Summenzähler der Zelle auf "5". Die Zelle kann nur feuern, wenn Eingang A UND Eingang B aktiv sind, denn dann werden die beiden "5" eines jeden Eingangs zu "10" addiert. Das Neuron bildet also ein UND-Gatter mit zwei Eingängen.

    Man kann auch jedem Eingang eine "10" zuordnen. Dann wird der Summenzähler in der Zelle schon dann "10" erreichen, wenn nur ein Eingang aktiv ist. Das Neuron bildet dann ein ODER-Gatter mit zwei Eingängen.

    Rund 10 Jahre nach Erfindung dieser Art von Neuronen kamen zwei Forscher auf die Idee, dass man damit aber keine XOR-Funktion hinbekommen kann. XOR feuert dann, wenn die beiden Eingänge ungleich sind. Sie schrieben ein tolles Buch über ihre Entdeckung und demotivierten für viele Jahre reihenweise Forscher und Geldgeber.

    Irgendwann kam dann ein weiterer Knisterkopf auf die Idee, dass man ja nur mehrere Zellen in Schichten aufteilen muss, um das XOR-Problem zu lösen. Aber entdeckte dann, dass es auch nicht so einfach geht und es wurde kurzerhand ein weiterer Mechanismus benötigt, um das Problem dann doch noch per Hauruckverfahren zu lösen. KATASTROPHE!

    Mit dem Quatschkram haben sich erwachsene Männer fast zwei Jahrzehnte lang gegenseitig die Rüben eingeschlagen, Vorträge gehalten, Bücher geschrieben, Flugreisen gemacht. Forschungsgelder verballert und letztlich nur dummes Zeug geredet.

    Meine Idee geht wie folgt:

    Meine Eingänge A und B bekommen jeweils eine "7" zugeordnet. Und die invertierten Eingänge von A und B (ich nenne sie notA und notB) bekommen jeweils die Gewichte "3" zugeordnet. Und mein Neuron feuert nicht bei Erreichen von "10" sondern nur dann, wenn die Zellsumme exakt 10 ist.

    Rechnen wir mal durch:

    notA und notB = 3 + 3 = 6: Zelle feuert nicht. Das ist beim XOR korrekt.

    A und B = 7 + 7 = 14: Zelle feuert nicht. Auch das ist korrekt.

    A und notB = 7 + 3 = 10: Zelle feuert! Jippieh!

    B und notA = 7 + 3 = 10: Zelle feuert! Nochmal Jippieh!

    Und genau diese Eingangsgewichtungen entstehen dann, wenn ich in einer Lernschleife dem "Kindlein" zuerst Teddy und Kasperle zeige (sprich A und B). Das Kind freut sich. Seine beiden Freunde sind da.

    Und wenn ich mich dann kurz umdreh und ein Spielzeug wegnehme und mich dann wieder zum Kind wende, ist das Kind entsetzt. Da fehlt doch eine Figur. Nun nehm ich das Patschhändchen und zeige ihm den Feuerknopf.

    Und diese Lernanweisung wiederhole ich ein paar Mal. Mal lasse ich den Teddy verschwinden. Mal den Kasperle.

    Und wie durch Zauberhand entstehen genau die o.a. Zahlen-Zuordnungen auf den Eingängen und das ganze XOR-Problem verpufft vor unseren Augen wie ein böser Traum.

    Die Kombination der natürlichen Lernschleife mit der winzigen Änderung des Feuermechanismus führt zum Erfolg.

    Puh.... hab ich das halbwegs verständlich rüberbringen können?

    Viele Grüße

    Wolfgang
    Geändert von Rumgucker (07.12.2019 um 19:26 Uhr)

  2. #122
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    09.10.2014
    Beiträge
    4.916
    Er und ich haben unseren Eingängen Zahlenwerte zugeordnet. Eine Zelle mit zwei Eingängen A und B kann zum Beispiel für jeden Eingang den Zahlenwert "5" zugeordnet haben. Die Zelle soll beim Summenzähler "10" feuern.
    nein, habe ich nicht.

    Mit dem Quatschkram haben sich erwachsene Männer fast zwei Jahrzehnte lang gegenseitig die Rüben eingeschlagen, Vorträge gehalten, Bücher geschrieben, Flugreisen gemacht. Forschungsgelder verballert und letztlich nur dummes Zeug geredet.
    Und hör doch mal bitte auf, die bestehenden Ansätze immer mit derart abwertenden Attributen zu diskreditieren - sie funktionieren, aber bei dir sehe ich noch keinen funktionierenen Code, der per Überwachtem Lernen beliebig trainiert werden kann.

    Puh.... hab ich das halbwegs verständlich rüberbringen können?
    nein, da muss ich leider passen. Aber vlt sind ja andere hier klüger und können das nachprogrammieren.
    ·±≠≡≈³αγελΔΣΩ∞ Schachroboter:www.youtube.com/watch?v=Cv-yzuebC7E Rasenmäher-Robot:www.youtube.com/watch?v=z7mqnaU_9A8

  3. #123
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.11.2019
    Ort
    Hamburg
    Beiträge
    117
    Hallo Helmut,

    Du hast doch Deinen Eingängen doch ebenso Zahlenwerte zugeordnet. Bei Dir ist es eben "0.5" oder was auch immer. Nun verwirr die anderen doch nicht sinnlos.

    Vielleicht kannst Du das XOR-Problem besser darstellen?

    Viele Grüße

    Wolfgang

  4. #124
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    09.10.2014
    Beiträge
    4.916
    nein, ich habe überhaupt nichts "zugeordnet". Wie ein Perzeptron funktioniet, muss ich aber wirklch nicht mehr erklären, und auch nicht, wie das XOR Problem nach Papert et al. gelöst werden konnte. Das tut aber auch hier nichts zur Sache, denn ich verwende zwar Perzeptronen und BP-Netze nach Paperts Ansatz, du aber nicht. Verwirrend sind eher deine Vergleiche zwischen den BP-Netzen und deiner Konstruktion, denn die haben wirklich nicht viel gemeinsam - und ob und wie sie funktionieren sollen, kann ich noch nicht erkennen.
    ·±≠≡≈³αγελΔΣΩ∞ Schachroboter:www.youtube.com/watch?v=Cv-yzuebC7E Rasenmäher-Robot:www.youtube.com/watch?v=z7mqnaU_9A8

  5. #125
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.11.2019
    Ort
    Hamburg
    Beiträge
    117
    Hallo Helmut,

    meine Doku hast Du.

    Was sollen dieser dauernden Wiederholungen, dass Du meine Software nicht nachvollziehen kannst? Empfindest Du Dich als Ober-Gutachter meines Projektes?

    Ich hab mich gerade umentschieden. Tiny85-Code gibts nur auf Anfrage per Mail.

    Viele Grüße

    Wolfgang

  6. #126
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    09.10.2014
    Beiträge
    4.916
    Es heißt genau das, was ich schreibe, weil du fragst, ob es verständlich sei und ob ich etwas erklären könnte:
    ich sehe keinen kompilierbaren Code, den ich verstehen, selber kompilieren und auch varieren und testen kann. Solange sehe ich nur vage Diskussionen um Ideen, aber nichts Verständliches und Substanzielles leider.

    - - - Aktualisiert - - -

    PS,
    @stochri: hast DU kompilierbaren Code für ein lernfähiges Netz zum testen?
    ·±≠≡≈³αγελΔΣΩ∞ Schachroboter:www.youtube.com/watch?v=Cv-yzuebC7E Rasenmäher-Robot:www.youtube.com/watch?v=z7mqnaU_9A8

  7. #127
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.11.2019
    Ort
    Hamburg
    Beiträge
    117
    Hallo Helmut,

    wieso willst Du das GI-System testen? Du bist doch glücklich mit Deinen Systemen.

    Und wieso kannst Du den Code nicht testen?

    Gehts um FSR und INDF? Das ist ein eingebauter Pointer-Mechanismus des PICs. Dafür kannst Du schreiben:

    char *FSR;
    #define INDF (*FSR)

    Oder gehts um den FIRE_REQ-Makro

    #define FIRE_REQ (INDF.7) // zelle will feuern

    Der PIC kann einzelne Bits lesen und kippen. Das wird natürlich genutzt. Du kannst dafür schreiben:

    #define FIRE_REQ (INDF & _BV(7)) // zelle will feuern


    Dann gelten noch meine Lieblings-Defines

    #define BOOL bit // da kannst Du klein "bool" einsetzen
    #define TRUE 1
    #define FALSE 0
    #define FOREVER while(1)
    #define _BV(a) (1 << (a))

    Und statt "uns8" kannst Du schreiben "unsigned char".

    Fertig ist die Laube. Der ganze Rest ist K&R-Standard-C und der Aufruf des eeprom-Speichers.

    Wo siehst Du Schwierigkeiten in der Portierung?


    Ich habe unverändert Null Bock, Fehler in fremden Portierungen zu suchen. Das ging hier im Thread schon einmal gehörig schief. Getestete Portierungen gibts nur von mir. Und auch nur auf Anfrage ab Mitte nächster Woche, wie schon erklärt.


    Viele Grüße

    Wolfgang


    Hier die aktuelle Doku mit selbstgesteuertem Lernen:

    gi.pdf
    Geändert von Rumgucker (08.12.2019 um 07:13 Uhr)

  8. #128
    Erfahrener Benutzer Robotik Einstein Avatar von Moppi
    Registriert seit
    18.03.2018
    Beiträge
    1.717
    Blog-Einträge
    9
    Hallo,


    wieso willst Du das GI-System testen? Du bist doch glücklich mit Deinen Systemen.
    Warum will er das testen? Vermutlich um es, mindestens extern, zu verifizieren. U.U. selbst dann, wenn er es nicht "gut" findet.

    Was den Rest anbelangt, wüsste ich jetzt aus dem Stand auch nicht, ob ich der Darbietung ein "Mangelhaft" oder "Ungenügend" geben sollte.
    siehe:
    char *FSR;
    #define INDF (*FSR)

    Oder gehts um den FIRE_REQ-Makro

    #define FIRE_REQ (INDF.7) // zelle will feuern

    Der PIC kann einzelne Bits lesen und kippen.

    Wegen der Frage nach dem Warum:

    Dies ist ja ein öffentliches Thema, somit also für die Breite Masse zugänglich. Der Forumsbetreiber hatte dazu geschrieben: Denkt bitte auch an Einsteiger!
    Wenn ich es wirklich ernst meine, würde ich meine Gedanken ordnen und versuchen, alles so darzubieten, dass es jeder versteht. Je nach Hintergrundwissen versteht es der eine besser, der andere schlechter und einer gar nicht. Dazu muss ich noch nicht einmal einen Source Code darbieten, wenn zuvor allgemeinverständliche Erklärungen vorlagen, die jeder lückenlos nachvollziehen kann. Das bedeutet aber auch eine Menge Arbeit im Detail. Source Codes für Arduino-IDE, Assembler- oder PIC-Programmierung, oder auch für Pascal, Fortran, MS Visual Basic, Borland C++ Compiler Version X, Java oder ECMA-Script V5 runden die Sache sicher ab, sind aber nicht unbedingt notwendig. Dafür gibt es allgemeingültigen Pseudocode, der auch in Schulen gelehrt wird und für so etwas besser geeignet wäre. Aber es gibt auch gut verständliche PAP-Formen, die verwendet werden können. Dafür gibt es ganz brauchbare Tools, wie diesen PAP-Designer.

    Ich habe unverändert Null Bock, Fehler in fremden Portierungen zu suchen.
    Ist durchaus verständlich. Aber genau so wenig haben Leute hier unverändert Bock, sich durch fremde Programmiersprachen zu quälen und/oder stapelweise Dokus zu lesen, die in den Erklärfaden eingestreut sind, wenn die übrige Erklärung drumherum mangelhaft ist. Für solche Art der Darbietung halte ich die Blog-Seiten für geeigneter, die jeder User hier für sich anlegen kann. Dort findet die Wissensdarbeitung dann so statt, wie es jeder für notwendig hält, der seinen Blog fortführt. Dagegen gibt es nichts einzuwenden. Ich will hier niemanden reglementieren, is nur ein Vorschlag und meine Meinung.



    MfG

  9. #129
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    09.10.2014
    Beiträge
    4.916
    Zitat Zitat von Moppi
    Warum will er das testen? Vermutlich um es, mindestens extern, zu verifizieren.
    Natürlich, genau deswegen! Verschiedene Lernmuster ausprobieren, um die Lernfähigkeit durch die Lernregel(n) zu testen, und ein bisschen mit verschiedenen Training-Sets herum"spielen", indem man verschiedene Sets nacheinander präsentiert und trainiert.

    Zitat Zitat von Moppi
    Source Codes für Arduino-IDE, ... oder auch für Pascal,... MS Visual Basic, Borland C++ ... runden die Sache sicher ab, .... Dafür gibt es allgemeingültigen Pseudocode, der auch in Schulen gelehrt wird ...
    einverstanden!
    ·±≠≡≈³αγελΔΣΩ∞ Schachroboter:www.youtube.com/watch?v=Cv-yzuebC7E Rasenmäher-Robot:www.youtube.com/watch?v=z7mqnaU_9A8

  10. #130
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.11.2019
    Ort
    Hamburg
    Beiträge
    117
    Hallo,

    es muss ich hier überhaupt keiner durch irgendwas quälen.

    Ich hatte vielfach gesagt, dass es ab Mitte nächster Woche von mir auf Anfrage den auf Tiny85 konvertierten Code gibt.

    Eigenzitat aus #119

    Danach fehlt dann nur noch das autonome Lernen. Dann gibt es auch keinen Lehrer mehr, der sagt, wenn das Lernziel erreicht wurde. Dieses Detail halte ich aber für sehr trivial.

    Ich denke, bis spätestens Mitte nächster Woche bin ich mit dem gröbsten durch. Dann konvertier ich das noch kurz auf den Tiny85 und dann könnt Ihr losspielen. Source, Doku und gut getestete Anwendungsbeispiele. Das ist ne vernünftige Basis, finde ich.
    Ich finde Euer Gedrängele schlichtweg belastend.

    Viele Grüße

    Wolfgang

    - - - Aktualisiert - - -

    Hallo Moppi,

    Zitat Zitat von Moppi Beitrag anzeigen
    Was den Rest anbelangt, wüsste ich jetzt aus dem Stand auch nicht, ob ich der Darbietung ein "Mangelhaft" oder "Ungenügend" geben sollte.
    dieser Thread ist mein Arbeitsthread. Hier trage ich meine Gedanken vor und hier lade ich den jeweiligen Stand der Doku hoch.

    Versteh ich Dich richtig, dass Du meine Darbietung hier als "mangelhaft" bzw. "ungenügend" empfindest?

    Das ist starker Tobak, wenn ich das nicht missverstanden haben sollte.

    Viele Grüße

    Wolfgang

    - - - Aktualisiert - - -

    Hallo,

    neulich Manfreds Ruf nach Professionalität. Und nun das Vorhalten einer mangelhaften bis ungenügenden Darbietung meinerseits. Irgendwas hab ich hier am Forum im Kern nicht verstanden. Ich schein den Ansprüchen nicht genügen zu können.

    Ich beende daher meine weitere Arbeit hier im Thread und im Forum und wünsch Euch noch viel Spaß.

    Wie man nen Account löschen kann, hab ich nicht rausgefunden. Aber ich betrachte ihn als gelöscht.


    Viele Grüße

    Wolfgang
    Geändert von Rumgucker (08.12.2019 um 10:45 Uhr)

Seite 13 von 14 ErsteErste ... 311121314 LetzteLetzte

Ähnliche Themen

  1. Nupic: Auf dem Weg zu maschineller Intelligenz
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 05.06.2013, 09:50
  2. TV: Künstliche Intelligenz
    Von Günter49 im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 17
    Letzter Beitrag: 29.06.2009, 15:29
  3. Computersystem intelligenz
    Von runner02 im Forum PC-, Pocket PC, Tablet PC, Smartphone oder Notebook
    Antworten: 11
    Letzter Beitrag: 18.03.2009, 19:43
  4. Künstliche Intelligenz (KI)
    Von Devil im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 2
    Letzter Beitrag: 12.04.2005, 17:18
  5. Intelligenz in Werkzeugen
    Von Frank im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 03.05.2004, 20:36

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •