• TiKa444@feddit.de
    link
    fedilink
    Deutsch
    arrow-up
    8
    arrow-down
    2
    ·
    edit-2
    1 year ago

    Naja. LLMs machen nichts anderes als das wahrscheinlichste nächste Wort vorherzusagen.

    Genauer gesagt bricht das Modell die Eingabe in sogenannte Tokens auf (das können einzelne Wörter sein, Teile von Wörtern oder sogar ganze Wortfolgen, je nach Modell) und ordnet jedem Token einem nunerischen Vektor zu. Diese Vektoren werden dann analysiert und mithilfe des Algorithmus werden im besten Fall Muster erkannt. Das Modell macht dann im Grunde nichts weiter als die erkannten Muster fortzusetzen.

    Letztendlich ist die Antwort eines LLMs nichts weiter als eine statistische Wahrscheinlichkeitsberechnung, wobei die Daten für die Statistik aus den Trainingsdaten stammen.

    Sofern diese Trainingsdaten dem Modell also beibringen faul zu sein, ist es das Modell auch.

    Interessanter ist hier schon die Überlegung was am Training bei ChatGPT nicht stimmt.

    Grundsätzlich gibt es verschiedene Arten des Trainings:

    Zuerst das Pre-Training: Dabei wird dem Modell anhand riesiger Datenmengen von Texten eine Grundlage gegeben, um die Grundlagen der Sprache zu lernen

    Dann die Fine-Tuning: Hierbei spezifischere Daten genutzt, um das Modell für einen oder mehrere bestimmte Zwecke zu trainieren.

    Und schließlich eventuell das Reinforcement Learning: Dabei werdem dem Modell weitere neue Daten gegeben und die Antworten analysiert. Wenn Fehler gefunden werden, werden die Korrekturen ebenfalls zum Training eingesetzt.

    Ich vermute (vorsicht hier kann ich nur Mutmaßen), dass ein großer Teil der aktuellen Trainingsdaten von ChatGPT derzeit aus von den Nutzern als schlecht bewertete Konversationen stammt. Andere Daten werden vermutlich von OpenAI spezifisch ausgewählt, um unerwünschtes Verhalten allgemein zu korrigieren (bsw. unmoralische Ratschläge, sexuelle Sprache ect. oder bestimmte Fähigkeiten zu stärken.

    Das kritische am trainieren nach dem Pre-Training ist, dass sich nicht nur der Teil des Modells ändert, auf den man es abgesehen hat, sondern die statistische Grundlage insgesamt verändert wird. Ich gehe davon aus, dass das insbesondere auf korrigierte Beispiele zutrifft, da diese ja bewusst dem vom Modell erwarteten klar widersprechen.

    Wenn man also einem Modell beibringen will, dass es im Chat keine erotischen Bemerkungen machen soll, wirkt sich das womöglich auch auf Fragen zur Anatomie aus (weil dort eben auch Begriffe verwendet werden, die in anderem Kontext anstößig sind oder zumindest mit solchen Wörtern assoziiert werden (Synonyme). Und zu einer unerwünschten Aussage gehören ja nicht nur spezifische Wörter, sondern auch Satzbausteine (die anders zusammengesetzt völlig unkritisch sind), Grammatik, usw… Das Modell weiß nicht wo der Fehler liegt. Es analysiert die angeblich falsche und die angeblich richtige Antwort, erkennt Muster und vergleicht diese miteinander. Dabei kann es auch Muster in der falschen Antwort erkennen, die nichts mit dem Grund zu tun haben, wieso es falsch ist.

    Dazu kommt, dass die Bewertung von Nutzern eine Vorauswahl der Daten darstellt. Ich gehe davon aus, dass die Daten, die für das letztendliche Training genutzt werden zumindest rudimentär gegengeprüft werden, aber OpenAI wird kaum die Manpower haben, um alle Konversationen zu prüfen und sich nicht auf Bewertungen der Nutzer zu verlassen. Jetzt ändert sich aber das Bewertungsverhalten mit den Erwartungen und hängt von der Subjektiven Wahrnehmung der Nutzer ab. Die Qualität der Vorauswahl varriert also mit der öffentlichen Wahrnehmung von KI und dem Nutzerstamm. Es kann also gut sein, dass die Schwerpunkte im Training dadurch von den tatsächlichen Problemen abweicht und sich ü erdies noch ändert.

    Kurz gesagt. Es ist relativ schwierig das Modell von bestimmten unerwünschten Aussagen abzubringen ohne die Qualität aller Antworten zu beeinflussen. Dasselbe kann natürlich auch passieren, wenn man versucht eine bestimmte Fähigkeit des Modells zu verbessern (z.B. zum codieren). Man kann eben nicht nur an einer Schraube drehen, sondern dreht immer an hunderten.

    Eine Lösung für dieses Problem besteht bsw. in spezialisierten Modellen. Bsw. eine gemeinsamme Grundlage und dann Fine-Tuning auf Codierungs-Modell, Texterstellungsmodell, moralisch einwandfreies Chat Modell, ect… Das machen viele der kleineren Modelle (wie Llama, MPT, Falcon, ect.). In der Theorie lässt sich diese Spezialisierung auch weiter aufspalten.

    ChatGPT versucht da eben eine Art eierlegende Wollmilchsau zu sein. Das bringt immer auch Nachteile mit sich.

    Vorsicht! Vermutlich lachen mich die, die wirklich Ahnung haben, gerade aus. Ich bin kein Fachmann. Das ist nur mein (Halb-)Wissensstand.

    Edit: Nur nochmal zur Klarstellung. Das ist absolut vereinfacht. Viele Aspekte von LLMs sind hier nur angeschnitten oder gar nicht berücksichtigt.

    • Kaspar Houser @feddit.deOP
      link
      fedilink
      Deutsch
      arrow-up
      4
      ·
      edit-2
      1 year ago

      LLMs können jedenfalls allein von diesem Beitrag dein Geschlecht mit einer Wahrscheinlichkeit von 100% benennen.

    • Mixel@feddit.de
      link
      fedilink
      Deutsch
      arrow-up
      1
      ·
      1 year ago

      Ich kann dies mit meinen noch schlechter Halbwissen bestätigen 😄 Bei Trainingsdaten geht fast immer Qualität vor Quantität stand zumindest auch so in llama 2 paper. Eine Sache fand ich noch interessant du sagtest das llama2 mpt Falcon usw ein MoE modell sein aber ich glaube das stimmt nicht, es gab jetzt von stability ai ein MoE modell von 7B*10 (das heißt das Modell wäre 70B groß, wenn man das bei llama2 7B hätte wäre das Modell ja viel zu winzig um irgendwas zu verstehen gefühlt) oder so, oder gibt es noch etwas anderes was ich nicht kenne? 😅

      • TiKa444@feddit.de
        link
        fedilink
        Deutsch
        arrow-up
        1
        ·
        1 year ago

        Ich glaube da habe ich mich missverständlich ausgedrückt. Von Llama 2.0 existieren seitens META je zwei Modelle. Das gewöhnliche 7b, 13b und 70b und die chat Variante in 7b, 13b, 70b (die chat variante ist auf chats feinabgestimmt). Dazu kommt dass Llama wie MPG und Falcon Open Source ist und frei zur Verfügung stehen. Das führt dazu, dass diverse Nutzer und Unternehmen ihre eigenen Modelle fein abgestimmt haben, weshalb auf Hugging Face bsw. Story-Writer, Codier, weitere Chat, ect. Versionen verfügbar sind.

        Ein MoE Modell ist, wenn ich das richtig im Kopf habe ein Modell, das von Haus aus auf verschiedene Szenarien (Experts) abgestimmt ist, die zusammen geliefert werden. Man kann mehrere oder alle Experts gleichzeitig laden und nutzen, wenn ich mich nicht täusche.

        Im Prinzip hat die Community und die Wirtschaft die Feinabstimmung zu den verschiedenen Experts bei den genannten Open Source Modellen übernommen. Nur das diese nicht als Paket kommen sondern einzeln geladen (und verwendet) werden müssen. Natürlich schwankt auch die Qualität abhängig von der Quelle.

        Ich meine allerdings, dass es speziell von MPT ein MoE Modell gäbe, sicher bin ich mir da gerade nicht.

        Kann natürlich gut sein, dass ich gerade völlig falsch damit liege was MoEs sind. Habe mich noch nicht allzu ausgiebig mit solchen beschäftigt.