Um das noch etwas auszuführen:
Eine "echte KI"(eigentlich "strong AI/starke KI") wäre kein Algorithmus, der eine EINZIGE Aufgabe leisten kann, sondern wäre ein System das den kompletten menschlichen Geist nachahmen würde. Somit also alles simulieren würde, was ein Menschen geistig leistet. Salopp gesagt wäre es also eine künstliche Version eines menschlichen Geistes und wäre zu den selben geistigen Leistungen fähig wie ein Mensch, wenn nicht sogar noch mehr.
=>
Aber sotwas gibt es (noch) nicht. Es ist auch fraglich ob es soetwas jemals geben wird darüber streiten sich die Wissenschaftler noch.
Worüber wir reden sind sog. "weak Ai"-Algorithmen. Algorithmen die EINE EINZIGE Aufgabe leisten können, dabei aber Konzepte verwenden, die den menschlichen Geist IN TEILEN nachahmen. Besonders bekannt und populär sind ja "künstliche neuronale Netze", diese sind ultra-primitiv im Vergleich zum menschlichen Gehirn. Zum Vergleich: Der Mensch hat ca. 90 Millarden Neuronen im Gehirn und diese sind massiv verbunden. Soetwas können wir mit heutiger Technik nicht mal ansatzweise nachahmen. Zwar können wir neuronale Netze mit einer ähnlich großen Anzahl von Neuronen erstellen, aber operabel sind diese meisten nicht. Einfach weil die Rechenleistung fehlt. Darum bewegen sich komplexe "künstliche neuronale Netze", die man auch praktisch eingesetzt, so zwischen ein paar hundert tausend und ein paar millionen Neuronen. Um so ein neuronales Netz zu trainieren braucht man meistens zu Beginn große Datenmengen. Das wäre bei Online-Games kein Problem. Da hätte man mehr als genug. Diese Datenmengen müsste man, bevor man den Lernalgorithmus anschmeißt, vorbereiten. Diese Datenvorbereitungen(auch Datenaufarbeitung, Data Preperation) ist der wichtigste Schritt, wenn man diesen falsch macht oder die Vorbereitung ungünstig für das gegebene Problem ist, dann wird der Algoirthmus scheitern. So eine Vorbereitung kann wie folgt aussehen:
"Fuck me, I'm stupid, my bad" -> deklariert als "keine Beleidigung"
"get a defuser, you faggot" -> deklariert als "Bleidigung"
"no, i dont say that you are an idiot, sorry if it sounds like that" -> deklariert als "keine Beleidigung"
"fuck off, nigga" -> deklariert als "Bleidigung"
Hier hab ich mal exemplarisch 4 Beispiele rausgenommen, wie so eine ganz einfache Datenaufarbeitung aussehen könnte. Normalerweise hätte man hier Datenbeispiele im Bereich 100.000 bis 1.000.000. EInfach gesagt kann man sagen, je mehr Daten desdo besser, auch wenn das nicht immer stimmt. Nun muss im nächsten Schritt diese Daten in ein lesbares Format umgewandelt werden. Der Algorithmus kann nichts mit menschlicher Sprache anfangen, also muss man sich überlegen, wie man diesen Text umwandelt. Früher hat man dafür eine Funktion namens "word2Vec", also "Wort zu Vektor" verwendet. Macht man heute immernoch, ist aber schon wieder leicht veraltet. Google hat da z.B. bessere Verfahrensweisen gefunden. Aber der EInfachheit halber sagen wir mal, wir nutzen word2Vec um all unsere Daten in Vektoren umzuwandeln:
"6542 837 523 92147 61 775"
"123 8 72392650 908 915279"
"677 4 2234 715 9123 45 435 34 5433, 34554 33 43 423567 3456 3567"
"6542 8572 8896"
Weiterhin bleibt der Zusammenhang erhalten, welcher dieser Vektoren als Beleidigung klasifiziert werden soll und welcher nicht. Nun teilt man die Datenmenge in "Trainingsdaten" und "Testdaten". Wie der Name sagt, wird mit den Trainingsdaten das neuronale Netz trainiert. Mit den "Testdaten" wird dann nach dem Training überprüft, wie gut der Alogorithmus arbeitet. Wenn er viele Sachen falsch klassifiziert, dann ist hat der Alogorithmus schlecht gelernt, die Daten waren unpassend, oder oder oder. Es ist dann Aufgabe des "Data Scientist" rauszufinden, woran das liegt. Hat der Algorithmus gute Ergebnisse geliefert, hat man einen ersten Hinweis auf einen gut funktionierenden Algorithmus. Danach muss man natürlich schauen wie dies mit komplett unbekannten Daten funktioniert.
Der Trick ist also der, dass nicht der Algorithmus "versteht" welche Aussagen als Beleidigung gelten, sondern das legt der Mensch fest, der die Daten aufbereitet. Der Algorithmus lernt einzig und allein, die vom Mensch vorgegebene Datenmenge richtig zu klasifizieren.
Nun ist der Witz, dass neuronale Netze schon ziemlich alt sind. Bereits 1943 gabs Wissenschaftler die daran arbeiteten. Aber KNNs haben in den letzten Jahren ein "Comeback" erlebt(auch wenn sie nie wirklich "weg" waren) durch 2 Faktoren: Bessere Rechnerleistung und bessere Algorithmen. Heuzutage gibt es Verfahrensweisen wie etwa "Deep Learning" welchs so gut funktioniert, dass man jetzt bei dem Punkt angelangt ist, dass man sagen kann: Der Algorithmus kann bis zu 99% Genauigkeit erreichen. Manchmal sogar mehr. Das liegt u.A. daran, dass "Deep Learning" in der Lage ist hirachische Abhängkeiten zu erkennen. Das heißt, es wäre z.B. sogar möglich Chat-Verläufe zu lernen um eben nicht nur einen Satz zu klassifizieren sondern sogar längere Chat-Verläufe die für sich gesehen vllt. nicht beleidigend sind, aber durch die Penetranz(z.B. den Chat immer mit dem selben Satz vollspammen).
Aber um das nochmal deutlich zu machen: Darum habe ich auch wenig Bedenken, was den Einsatz solcher Algorithmen angeht. Diese Algorithmen tuen letzendlich nur das, was ein Mensch ihnen vorgibt. In ihnen steckt keine "eigene Intelligenz" sondern nur die menschliche Intelligenz, welche der Algorithmus "nachahmt". Solange wir also Alogorithmen nicht zu 100% die Entscheidungsgewalt überlassen, können sie als nützliches Werkzeug gut gebrauchen und einsetzen.
So, ich hoffe ich hab das alles halbwegs verständlich erklärt. Ansonsten gerne nachfragen
MfG Ska