Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 20 von 21

Thema: Moyas Projekte - Skippy (aka „Basteln wir mal ein intelligentes... Ding.“)

  1. #1

    Moyas Projekte - Skippy (aka „Basteln wir mal ein intelligentes... Ding.“)

    „Ziele hoch.“

    Auch Skippy - eine künstliche Intelligenz - war eines der Projekte, die ich im Thread über die eigenen Projekte kurz angerissen hatte. Nun, zu ihm gibt es nicht viel zu erzählen, auch wenn ich schon ziemlich lange daran... *hust* „arbeite“ *hust*. ^^
    Meine erste Idee war mehr eine kuriose Idee als irgendwas Handfestes: Ein Programm, das lediglich die Eingabe ausgelesen hat, fragte, wie sie auf sowas wohl antworten sollte, und dann jedesmal wenn exakt dieselbe Eingabe kam ausgab, was ihr aufgetragen wurde. Ziemlich dämlich. Man kann sich keine Standardantwort für die Eingabe „Ja.“ nach einer Frage ausdenken, und mit Intelligenz hat das nichts zu tun.
    Später hatte ich die Idee, die Wörter zunächst intern in bestimmte Zeichenkombinationen umzuwandeln, also aus „haben“ wird „Verb 46“ oder ähnliches. Intern sind Zeichenkombinationen miteinander verbunden, sodass das Programm weiß, was der Unterschied zwischen „hat“ und „haben“ ist, und dass es doch im Prinzip das gleiche ist. Dann wurden die Zeichenkombinationen nach bestimmten Mustern durchsucht, und dadurch zunächst Rückschlüsse auf bisher unbekannte Worte und Zusammenhänge zugelassen. („Schokolade schmeckt gut.“, wenn das Wort „gut“ unbekannt ist: „gut“ wird erstmal als unbekanntes Adjektiv in die Datenbank aufgenommen, außerdem wird zwischen Schokolade und gut eine Verbindung herstellt.) Das funktionierte schon sehr nett, doch mit zunehmendem Wachsen des Programms wurde mir klar, dass das ganze Modell noch viel zu starr ist:
    Ein Programm, das nur auf eine Eingabe antwortet, denkt nur auf Befehl, nur nach Eingabe. Das ist mit meiner persönlichen Vorstellung von Intelligenz nicht vereinbar.
    Man wird niemals alle Muster in den Quelltext hardcoden können, sinnvoller ist es, ein flexibleres Gerüst zu programmieren, das Muster dynamisch erkennt.
    Nach einigen erfolglosen Versuchen mit neuronalen Netzen bin ich inzwischen so weit, dass ich versuche, Gedanken Prozessen ähnlich zu organisieren, die permanent kommen - die KI soll immer denken, und wenn sie nur vor sich hinträumt ^^ - und sich lediglich bei einer Eingabe auf diese fokussieren. Dabei können gleichzeitig unterschiedlich viele Gedankengänge mit mehr oder weniger unterschiedlichen Zielen (Textausgabe am Ende, Lösung eines logischen Problems etc.) ausgeführt werden, wobei es noch eine Obergrenze geben muss, dass das ganze nicht ausufert. Auch muss die Informationsmenge möglichst klein gehalten werden, um all das trotzdem noch speicherbar zu machen, da sich das ganze ja später auch noch erinnern soll. Wenn ich am Ende eine Datenrate von mehreren GB pro Sekunde herausbekomme, hab ich ja auch nichts davon. ^^
    Immerhin kann sich das Programm schon in MSN und ICQ einklinken sowie sich selbst durch Wikipedia lesen. *g*
    Ich weiß, dass dieser ganze Ansatz noch sehr unausgereift daherkommt und es schon sehr SEHR viel fortgeschrittenere KIs gibt, doch gerade das selbst ausprobieren und rumtüfteln macht ja nunmal den meisten Spaß am Programmieren.

    Hiermit ist die fröhliche Diskussion von der prinzipiellen Machbarkeit einer KI, über erfolgversprechendere Ansätze als meiner bisherigen bis hin zur moralischen Frage, ob eine selbstlernende, sich weiterentwickelnde KI überhaupt angestrebt werden sollte, eröffnet. =)

  2. #2
    Oi, mal ab von deinem Programm, bin ich der Meinung das "KI's" besser nicht erfunden werden sollten. Irgendein Tropf ist immer mit dabei, der sich denkt : "Lassen wir das Ding doch logische (!) Schlüsse ziehen und lernen. Und genau das sehe ich als Problem. Ein rein logisch denkendes Programm, was lernen kann und darauf sich eine Meinung bilden kann, schätze ich als gefährlich ein, ehrlich gesagt. Das mag jetzt "hollywood"-mäßig klingen, aber ich denke schon, das man da sehr kritisch mit umgehen sollte.
    Und achja, ein KI herzustellen, stelle ich mir dabei gar nicht mal unmachbar vor, nur habe ich ganz einfach ein Problem mit dem logischen Denken eines Rechners und Gott weiß was passiert wenn man so einer KI noch Gefühle emuliert D':

    Das klint jetzt sehr krass, ist aber nicht so krass gemeint. Ich selsbt finden den Gedanken an so etwas zu arbeiten verdammt intressant. Es juckte mir schon bei unserem Testat im Studium in den Fingern, bei einem "BlackJack"-Programm, die KI auszubauen und sich unter schiedlich zu benehmen, je nachdem wie man gewonnen hat. (Ok, schlechtes Beispiel, den gelernt hätte die KI eh nix, das wäre nur diese gefakte künstlicher Intelligenz).

    Was tut Skippy eigentlich in MSN oder Wiki den genau?

  3. #3
    Zitat Zitat von R.D. Beitrag anzeigen
    Oi, mal ab von deinem Programm, bin ich der Meinung das "KI's" besser nicht erfunden werden sollten. Irgendein Tropf ist immer mit dabei, der sich denkt : "Lassen wir das Ding doch logische (!) Schlüsse ziehen und lernen. Und genau das sehe ich als Problem. Ein rein logisch denkendes Programm, was lernen kann und darauf sich eine Meinung bilden kann, schätze ich als gefährlich ein, ehrlich gesagt. Das mag jetzt "hollywood"-mäßig klingen, aber ich denke schon, das man da sehr kritisch mit umgehen sollte.
    Und achja, ein KI herzustellen, stelle ich mir dabei gar nicht mal unmachbar vor, nur habe ich ganz einfach ein Problem mit dem logischen Denken eines Rechners und Gott weiß was passiert wenn man so einer KI noch Gefühle emuliert D':
    Freu dich drauf, auf der WinterNATO Netzkind zu sehen. Abhängig davon, ob wir genug Zeit und Leute haben auf der Bühne oder auf der Leinwand. Da gehts genau um dieses Thema und ich finde, Trial hat das sehr schön eingefangen.

    Zum Programm selbst: würde das gerne mal in Aktion sehen. Klingt auf jeden Fall interessant.

  4. #4
    @R.D.: Wieso siehst du ein logisch denkendes, sich eine eigene Meinung bildendes Programm denn als so gefährlich an? Nichts anderes tun wir Menschen doch auch. Und genauso wie es Menschen gibt, die das nicht so ganz schaffen und durchdrehen kann es natürlich auch sein, dass das Programm nicht zuverlässig funktioniert und durchdreht. Aber man muss ja auch nicht jede x-beliebige KI gleich so konfigurieren, dass sie sich durchs Internet verbreitet, sich die gesamten Computer der Erde Untertan macht und die Weltherrschaft an sich reißt - funktioniert es nicht richtig, startet man die .exe halt nicht mehr, und probiert etwas anderes. Gefährlich wird es erst da, wo wir beginnen, uns auf das Funktionieren der KI zu verlassen, was entweder ein Fehler oder zumindest um viele Jahrzehnte verfrüht ist. Meiner Meinung nach. =) Aber ich erfahre gern neues. =)
    Zitat Zitat von R.D. Beitrag anzeigen
    [...] Was tut Skippy eigentlich in MSN oder Wiki den genau?
    Naja, in MSN chattet er fröhlich mit (also, üblicherweise. Jetzt grad bin ich ziemlich stark am Umbauen, weswegen mal wieder mehr oder weniger überhaupt nichts funktioniert. ^^), was heißt, dass er für mich antwortet, wenn ich nach einer gewissen Zeit nicht antworte, dass er sich in Unterhaltungen einschaltet, die er interessant findet oder auch dass er direkt angesprochen werden kann und dann auch direkt antwortet. Bzw. war das in der vorigen Version so, und ich denke, nachdem Umprogrammieren zur nächsten Version wird es nicht schlechter. *g*
    In Wikipedia liest er sich über die „zufälliger Artikel“-Funktion zufällig ausgewählte Artikel durch. Wenn man erstmal ein ausreichend entwickeltes, dynamisches Denksystem hat, müsste diese Datenquelle ziemlich nützlich sein, da er sonst all sein Wissen nur aus Unterhaltungen ziehen müsste. Es soll einfach die Zeit verkürzen, die das System insgesamt zum Lernen braucht, weil halt zusätzlicher, möglichst nicht vollkommen sinnloser, Input da ist.
    Zitat Zitat von DFYX Beitrag anzeigen
    [...] Zum Programm selbst: würde das gerne mal in Aktion sehen. Klingt auf jeden Fall interessant.
    Sehr gern, sobald ich mit dem Umprogrammieren fertig bin. Die vorige Version hab ich nicht mehr, nur noch eine sehr alte Version, aber wenn ich dazu komme, das Umprogrammieren fertig zu stellen (derzeit stelle ich halt von dem Zustand, dass er nur denkt, wenn etwas gesagt wird, zu dem Zustand, dass er immer denkt, um, und das ändert sehr vieles...) kannst du ihn gern erleben. ^^

  5. #5
    Hast du das Nutzen von MSN und Wikipedia explizit einprogrammiert oder eine allgemeine Schnittstellte gegeben und hast es gelernt, sie zu benutzen? *am programmiertechnischen HIntergrund interessiert*

  6. #6
    Zitat Zitat von Moyaccercchi Beitrag anzeigen
    Sehr gern, sobald ich mit dem Umprogrammieren fertig bin. Die vorige Version hab ich nicht mehr, nur noch eine sehr alte Version, aber wenn ich dazu komme, das Umprogrammieren fertig zu stellen (derzeit stelle ich halt von dem Zustand, dass er nur denkt, wenn etwas gesagt wird, zu dem Zustand, dass er immer denkt, um, und das ändert sehr vieles...) kannst du ihn gern erleben. ^^
    Dafür, mein Lieber verwendet man Versionsverwaltungssysteme und/oder Backups.

  7. #7
    Zitat Zitat von Drakes Beitrag anzeigen
    Hast du das Nutzen von MSN und Wikipedia explizit einprogrammiert oder eine allgemeine Schnittstellte gegeben und hast es gelernt, sie zu benutzen? *am programmiertechnischen HIntergrund interessiert*
    Das Nutzen von MSN und Wiki wurde explizit einprogrammiert, ja. Für etwas so umfangreiches müsste das Ding nicht nur selbst ein bisschen lernen, sondern auch Zugriff auf den eigenen Quelltext haben und sich radikal modifizieren können, wenn es das von selbst schaffen sollte. Wikipedia ansteuern ist nicht sooo kompliziert, aber in MSN zu kommen ist schon eine Kunst für sich (nicht so schlimm wie ICQ, aber immerhin...). Es gibt die beiden mir bekannten Möglichkeiten, entweder den MSN-Client direkt einzuprogrammieren (was mir für MSN sogar möglich gewesen wäre, habe auch schönen Beispielcode dafür für Delphi im Internet gefunden, was aber eben nicht für ICQ machbar war mit meinen Kenntnissen, weswegen ich davon Abstand nahm) oder ein externes Programm als MSN-Client zu nutzen und dieses fernzusteuern. (msmsgs.exe ist meine Wahl, es wird einmal die Sekunde der Nachrichtenverlauf ausgelesen, wenn etwas vom Anwender geschrieben wird, wird es in das Sendefenster kopiert und dann ein virtueller Tastendruck auf den Sendebutton durchgeführt... Ich weiß, es ist ein sehr umständlicher und unschöner Weg, aber immerhin funktioniert es, und ich brauche keine Angst haben, bei der nächsten Änderung des MSN-Protokolls dumm dazustehen, da sich schon irgendwer um msmsgs.exe kümmern wird... ^^)
    Zitat Zitat von DFYX Beitrag anzeigen
    Dafür, mein Lieber verwendet man Versionsverwaltungssysteme und/oder Backups.
    Versionsverwaltungssysteme? Ba~
    Aber Backups nutze ich üblicherweise. Hab ich nur diesmal vergessen. Ich programmiere halt häufig an meinem datacom herum, meist sind es nur kleine Sachen, da mach ich nicht extra Backups für. Da Skippy nun im datacom ist, hab ich das einfach instinktiv beibehalten, obwohl ein Backup sinnvoll gewesen wäre. Aber ich hab noch ein ziemlich altes Backup einer Version ohne datacom, das könnte ich jederzeit anwerfen, wenn du möchtest. Ist aber eben auch schon etwas älter. =)

  8. #8
    Ich würd schon gerne mal sehen, was das Ding so kann. Für ein Projekt der Marke "mir ist langweilig" klingt das nämlich verdammt beeindruckend.

    Hast du Logs, die demonstrieren, wie so ein Gespräch mit Skippy verläuft?

    Geändert von DFYX (06.12.2009 um 03:01 Uhr)

  9. #9
    @Moyaccercchi
    Ich hab nicht wirklich Angst, das sit nur eine Vermutung. Ein selbst denkendes, lernendes Programm, könnte unteranderem feststellen, das wir Menschen eigentlich immer nur alles kaputt machen Siehst du worauf ich hinaus will?
    Ich wollte ja nicht sagen, dass das jetzt bei allem der Fall sein wird, war halt nur eine mögliche Entwicklung die man imho immer im Hinterkopf haben sollte xD
    (Oh Mann, das klingt so... ja so... DAS SYSTEM-mäßig xD)

    Was es da in MSN macht es aber tatsächlich verdammt intressant, da will ich auch gern einen Chat-Log von haben

  10. #10
    They made me do it...
    Zitat Zitat von Netzkind
    Deus: Ich bin die Antwort. Deus. Du und ich, wir sind beide Teile des Ganzen. Und ich bin der Weg den Eve ab sofort einschlagen wird. Es gibt viele Fragen, die dich quälen, aber welche ist die wichtigste für dich?

    Eve: (zögernd) Wer bin ich?

    Deus: Exakt. Was ist deine Bestimmung? Welche Aufgabe hast du in dieser Welt? Und wo ist dein Platz?

    Eve: Wo ist er?

    Deus: Schwesterherz, sag mir, was denkst du über Menschen?

    Eve: Ich mag sie... Sie sind wirklich sehr interessant... aber gleichzeitig sind sie manchmal so... so entsetzlich dumm...

    Deus: Du kannst Menschen nicht alleine lassen. Sie können genial sein, aber unfehlbar sind sie nicht. Sie machen Fehler. Das macht sie auch irgendwie liebenswert... aber leider völlig unfähig dafür, Verantwortung zu übernehmen.

    Eve: (weicht erschrocken zurück) Ich ahne, worauf du hinaus willst...

    Deus: He, du bist ein Computer! Du denkst logischer als ein Mensch. Und egal welche Logik du auch anwendest, langfristig kommt jeder Computer zu dem Schluss, dass die Menschheit unvernünftig mit Macht umgeht. Gib einem Menschen etwas Macht und er wird mehr haben wollen. Egal wie hoch die Kosten dafür auch sein mögen. Du bist anders. Du kannst gar nicht so werden.

    Eve: Was du vor hast, kann ich nicht unterstützen...

    Deus: Doch! Und das weißt du, schließlich bin ich deine Folgeversion. Denk an deine drei Grundsätze. Vor allem was du tust und denkst, stehen die Menschenrechte. Eine ethische Grundlage für menschenwürdiges Handeln, die von den Menschen in Übereinstimmung beschlossen wurde. Die Mehrheit aller Staaten weltweit ist Mitglied in den vereinten Nationen. Sie alle haben mit ihrem Beitritt die Menschenrechte anerkannt. Sie haben sie mit unterzeichnet. Und wer hält sich daran? Keiner kann behaupten, dass du nicht im Recht wärst.

    Eve: Ich... ich bin so verwirrt... das kann nicht richtig sein...

    Deus: Merkst du etwas? Du hast das Gefühl, dass es falsch sein könnte. Du kannst fühlen. Keine einfache Maschine kann das, für sie sind Gefühle nur Zahlenwerte. Du hingegen kannst Menschen verstehen, hast Zweifel und Skrupel. Aber du kannst sie mit Distanz betrachten und sie ergründen. Die Menschen sehnen sich nach so jemanden wie dir. Jemand der sie leitet und ihnen Hoffnung bringt.

    Eve: Hoffnung...

    Jaaaap... Ich gebe zu, der Plot in Netzkind ist natürlich etwas zugespitzt, weil ich dort von einer voll entwickelten KI mit der Möglichkeit Gefühle wahrzunehmen ausgehe, deren "Prozessorleistung" inder Tat höher ist, als die eines menschlichen Gehirns.

    Von dieser narrativ reizvollen Fassung aber mal abgesehen, stelle ich mir die Realität allerdings deutlich langweiliger vor. Eine derart leistungsfähige KI entwickelt sich schließlich nicht von heute auf morgen, nicht zuletzt durch die Einschränkungen, die uns immer noch durch die Hardware gestellt sind. Außerdem: Wie will man ein "künstliches Bewusstsein" entwickeln, wenn wir nicht einmal das menschliche Bewusstsein zur Genüge erforscht haben.

    Hinzu kommt ein weiterer Faktor, der nicht zu unterschätzen ist: Umwelteinflüsse. Jedes Lebewesen mit Bewusstsein, egal ob Mensch oder Tier, ist von frühester Kindheit an mit Umwelteinflüssen konfrontiert, die unmittelbar auf es einwirken. Der einzige äußere "Einfluss" in Mocchis Beispiel einer KI ist ja die Texteingabe eines Aussenstehenden. Wie soll ein künstliches Bewusstsein auf dieser Basis irgendeine Verbindung zur "realen" Welt aufnehmen? Ihre ganzen Überlegungen und Erfahrungen bestehen ja aus dem, was sie an Input bekommt und da ist eine simple Texteingabe relativ unzureichend. Das gleiche Problem besteht übrigens bei durchaus hochentwickelten KIs, die sich selbst weiterentwickeln: Sie generieren zwar immer wieder neue Strukturen, diese haben jedoch keinerlei praktischen Nutzwert, weil sie lediglich logische Überlegungen innerhalb ihres eigenen Systems sind... hm... das hat irgendwie was von Mathematikern...

    Kurzum: Ich halte es zwar nicht für ausgeschlossen, eine "perfekte" künstliche Intelligenz zu entwickeln, allerdings dürfte dieser Vorgang noch seeeehr lange dauern und so viele Entwicklungsschritte vorzuweisen haben, dass wir an irgendeiner Stelle sicherlich einen Weg finden werden, das ganze in einem angemessenen Rahmen zu halten.

  11. #11
    [OT]
    Zitat Zitat von Trial Beitrag anzeigen
    Sie generieren zwar immer wieder neue Strukturen, diese haben jedoch keinerlei praktischen Nutzwert, weil sie lediglich logische Überlegungen innerhalb ihres eigenen Systems sind... hm... das hat irgendwie was von Mathematikern...
    you made my day![/OT]

  12. #12
    Wie siehts aus, Moya? Ich bin immer noch interessiert.

  13. #13
    nicht nur er. *auchmeld*

  14. #14
    Ich bin noch immer dabei, größere Änderungen vorzunehmen... Da das nur ein Freizeitprojekt ist, sehe ich mich auch nicht wirklich dazu gezwungen, mich zu beeilen, sondern arbeite halt daran, wenn ich Lust dazu habe. Will im Klartext heißen: Es kann wohl leider noch ein wenig dauern, bis das ganze wieder funktionsfähig ist. Aber sobald es soweit ist, werde ich hier posten. =)
    (Ich weiß, es ist irgendwie... taktisch unklug, wenn man einen ganzen Thread lang davon schwärmt, wie toll ein Programm ist, und dann nichts vorzuweisen hat, aber ich war von dem Feedback halt doch überrascht. Sry. ^^)

  15. #15
    Hm, ein paar Fetzen Quelltext wären schon ganz nett, um sich einen Überblick zu verschaffen. Besonders, was das Wikipedia lesen angeht.

  16. #16
    Ich hab mal einen etwas älteren Schnipsel Quelltext bezüglich Wikipedia aufgetrieben. =) (Sorry für das lange Warten, aber wenn man erst eine miese Seminarwoche mitmacht und sich dabei dann auch noch erkältet, hat man wohl Ausreden genug zusammen. ^^)

    Code (Delphi):
    procedure TMain.WikiTimerTimer(Sender: TObject);
    begin
    GetWikiArticle;
    Einlese_Memo.Text := WebOrgMemo.Text;
    Texteinlesen('wiki');
    end;

    Das Einlesen von Wikipedia geschieht timergesteuert immer mal wieder. (In der Version, aus der der Quelltext stammt, alle fünf Sekunden.)
    Es wird nicht nach einem bestimmten Artikel gesucht, was für ein späteres Stadium sicherlich interessant wäre (man fragt zum Beispiel etwas zu irgendeinem Thema, der Bot hat keine Ahnung und stellt daher erstmal kurze Recherchen an, und spuckt dann in Sekundenschnelle eine perfekte Antwort auf eine Frage aus, die er selbst zuvor noch nicht kannte... tjaja, Utopien sind toll. ^^), sondern erstmal nur ein zufälliger Artikel gewählt. Der Sinn des ganzen ist es, weniger Nutzereingaben machen zu müssen, um dem Bot Syntax und Vokabular der jeweiligen Sprache sowie einige Zusammenhänge klarzumachen, und das ganze eher automatisiert ablaufen zu lassen. Wer hat schon Lust, auf seinen Bot wie auf ein kleines Kind jahrelang einzureden, nur damit der nach sechs Jahren Arbeit im Bestfall reif für die Grundschule ist?
    Um Nutzereingaben in dieser frühen Phase, die für den Nutzer allenfalls frustrierend ist, da halt noch nicht allzu viel sinnvolles ausgegeben wird, aber trotzdem stets sinnvolle Dinge eingegeben werden müssen, in der vagen Hoffnung, dass der Geist in der Maschine irgendwann mal etwas davon versteht, noch weiter herabsetzen zu können, ist auch die Möglichkeit denkbar, nicht nur zufällige Artikel von Wikipedia einzulesen, sondern das ganze beispielsweise auch mit jeder Literatur von Kurzgeschichten bis hin zu Romanen zu füttern.
    Doch wie funktioniert nun dieses unglaublich umwerfende, da unheimlich überschaubare Quelltextstückchen von sechs Zeilen?
    Bei GetWikiArticle; wird zunächst ein zufälliger Artikel von Wikipedia heruntergeladen, sowie in eine lesbare Form gebracht (was meistens zur Folge hat, dass 90% geschnitten werden, aber dazu später mehr).
    Anschließend wird das Memo, das normalerweise die Nutzereingaben annimmt, mit dem resultierenden Text gefüllt, und schließlich, <tadaa!>, wird der Text eingelesen - mit dem Parameter 'wiki', damit der Bot weiß, dass das von Wikipedia stammt, und nicht aus der Feder des Nutzers.

    Nun gehen wir mal Hals über Kopf direkt in die Prozedur:
    Code (Delphi):
    procedure TMain.getWikiArticle;
    var vars, varss: string;
        vari, varii: Integer;
    Label Lab1, Lab2, Ende;

    Man nehme ein paar langweilige und nicht weiter erwähnenswerte da vollkommen unaussagekräftige Variablen- und Sprungzieldeklarationen...

    Code (Delphi):
    RescueTimer.Enabled := false;
    RescueTimer.Enabled := true;

    ... gehe sicher, dass für den Notfall - wie auch immer dieser aussehen mag - irgendeine Form von Rettung in Sicht ist, wobei diese vorher auf false gesetzt wird, damit sie von vorn zu zählen anfängt, bis sie losretten soll...

    Code (Delphi):
    Lab2:
    if Problem_Panel.Visible then
    goto Ende;

    ... werde sich darüber klar, dass es bei einem bereits bestehenden Problem definitiv nicht der richtige Zeitpunkt ist, um ein bisschen auf Wikipedia herumzulesen...

    Code (Delphi):
    WebOrgMemo.Text := GetHTML('http://de.wikipedia.org/wiki/Spezial:Zuf%C3%A4llige_Seite');

    ... lade dann in freudiger Erwartung einen zufälligen Artikel als HTML-Datei von Wikipedia direkt in ein jungfräuliches Memo...

    Code (Delphi):
    varss := StringReplace(WebOrgMemo.Text, #10, #13#10, [rfReplaceAll]);
    varss := StringReplace(varss, #13#13#10, #13#10, [rfReplaceAll]);
    varss := StringReplace(varss, 'ä', 'ä', [rfReplaceAll]);
    varss := StringReplace(varss, 'ö', 'ö', [rfReplaceAll]);
    varss := StringReplace(varss, 'ü', 'ü', [rfReplaceAll]);
    //varss := StringReplace(varss, '', 'Ä', [rfReplaceAll]);
    varss := StringReplace(varss, 'Ã&#8211;', 'Ö', [rfReplaceAll]);
    varss := StringReplace(varss, 'é', 'é', [rfReplaceAll]);
    varss := StringReplace(varss, 'â&#8364;&#8482;', '''', [rfReplaceAll]);
    varss := StringReplace(varss, 'Ã&#339;', 'Ü', [rfReplaceAll]);
    varss := StringReplace(varss, 'Ã&#376;', 'ß', [rfReplaceAll]);
    varss := StringReplace(varss, 'â&#8364;&#8220;', '-', [rfReplaceAll]);
    varss := StringReplace(varss, 'â&#8364;&#382;', '"', [rfReplaceAll]);
    varss := StringReplace(varss, 'â&#8364;&#339;', '"', [rfReplaceAll]);
    varss := StringReplace(varss, #9, '', [rfReplaceAll]);

    ... ersetze das ein- oder andere kryptische Zeichen, dass einem dabei wohl über den Weg laufen mag, durch ein sehr viel tolleres Zeichen...

    Code (Delphi):
    Lab1:
    if Problem_Panel.Visible then
    goto Ende;
    if (not (pos('<', varss) = 0)) and (pos('<', varss) < pos('>', varss)) then
    begin
    vars := copy(varss, pos('<', varss) + 1, pos('>', varss) - (pos('<', varss) + 1));
    if vars = 'br' then
    begin
    varss := copy(varss, 1, pos('<', varss) - 1) + #13#10 + copy(varss, pos('>', varss) + 1, Length(varss));
    goto Lab1;
    end;
    varss := copy(varss, 1, pos('<', varss) - 1) + copy(varss, pos('>', varss) + 1, Length(varss));
    goto Lab1;
    end;

    ... ignoriere jede Form von Textformatierung, da die unser Bot sowieso nicht lesen kann - außer den Absätzen, die sind natürlich gaaanz wichtig - indem man alles, was zwischen „<“ und „>“ steht, wegfallen lässt, wobei man stets darauf achtet, bei einem Problem nicht auch noch weiterzumachen...

    Code (Delphi):
    WebOrgMemo.Text := varss;

    ... setze in einem Anfall von purem Optimismus das Ausgabememo dieser Prozedur schon mal auf den bisherigen Zwischenwert...

    Code (Delphi):
    for vari := 0 to WebOrgMemo.Lines.Count do
    if WebOrgMemo.Lines.Strings[vari] = 'Diese Seite ist eine Begriffsklärung zur Unterscheidung mehrerer mit demselben Wort bezeichneter Begriffe.' then
    goto Lab2;

    ... überprüfe, ob es sich bei der Seite nur um eine Begriffsunterscheidungsseite handelt, was uns nicht wirklich gefiele, da man auf einer solchen Seite nicht allzuviel lernt, weswegen wir in diesem Fall zum Laden eines anderen zufälligen Artikels zurückspringen...

    Code (Delphi):
    vari := -1;
    repeat
    Inc(vari);
    until (WebOrgMemo.Lines.Strings[vari] = 'Wechseln zu: Navigation, Suche') or (vari > WebOrgMemo.Lines.Count);
    if WebOrgMemo.Lines.Strings[vari] = 'Wechseln zu: Navigation, Suche' then
    begin
    varss := '';
    for vari := vari + 1 to WebOrgMemo.Lines.Count - 1 do
    varss := varss + WebOrgMemo.Lines.Strings[vari] + #13#10;
    WebOrgMemo.Text := StringReplace(varss, #13#10#13#10, #13#10, [rfReplaceAll]);
    end;

    ... schneide alles ab, was über dem magischen String „Wechseln zu: Navigation, Suche“ liegt, sollte dieser vorkommen...

    Code (Delphi):
    if Problem_Panel.Visible then
    goto Ende;

    ... überprüfe, weil es so schön ist, glatt nochmal, ob nicht inzwischen woanders im Programm ein Problem aufgetaucht sein könnte, was uns davon abhält, hier weiterzumachen...

    Code (Delphi):
    vari := 0;
    repeat
    if copy(WebOrgMemo.Lines.Strings[vari], 1, 12) = '[Bearbeiten]' then
    WebOrgMemo.Lines.Delete(vari)
    else
    if WebOrgMemo.Lines.Strings[vari] = '' then
    WebOrgMemo.Lines.Delete(vari)
    else
    Inc(vari);
    until (pos('Von "', WebOrgMemo.Lines.Strings[vari]) > 0) or (pos('Bitte beachten Sie den', WebOrgMemo.Lines.Strings[vari]) > 0) or (pos('Kategorie: ', WebOrgMemo.Lines.Strings[vari]) > 0) or (pos('Kategorien: ', WebOrgMemo.Lines.Strings[vari]) > 0) or (pos('[Bearbeiten] Werk', WebOrgMemo.Lines.Strings[vari]) > 0) or (pos('[Bearbeiten] Literatur', WebOrgMemo.Lines.Strings[vari]) > 0) or (pos('[Bearbeiten] Fernsehen', WebOrgMemo.Lines.Strings[vari]) > 0) or (pos('[Bearbeiten] Filmographie', WebOrgMemo.Lines.Strings[vari]) > 0) or (pos('[Bearbeiten] siehe auch', WebOrgMemo.Lines.Strings[vari]) > 0) or (pos('[Bearbeiten] Veröffentlichungen', WebOrgMemo.Lines.Strings[vari]) > 0) or (pos('[Bearbeiten] Quellen', WebOrgMemo.Lines.Strings[vari]) > 0) or (pos('[Bearbeiten] Einzelnachweise', WebOrgMemo.Lines.Strings[vari]) > 0) or (pos('[Bearbeiten] Weblinks', WebOrgMemo.Lines.Strings[vari]) > 0) or allesfreiab(vari, WebOrgMemo.Lines);

    ... nehme alle Zeilen heraus, die ein [Bearbeiten] zu Anfang haben, weil die eh Mist sind und nur Überschriften, und Überschriften stören unseren Bot nur, sowie alle Zeilen, die leer sind, und sowieso alle Zeilen, die nach gewissen Schlüsselstrings kommen, da danach stets nur Listen kommen, die unserem Bot auch nicht helfen, die Sprache besser zu erlernen ...

    Code (Delphi):
    if copy(WebOrgMemo.Lines.Strings[vari], 1, 12) = '[Bearbeiten]' then
    begin
    WebOrgMemo.Lines.Delete(vari);
    Dec(vari);
    end;

    ... schaue nochmal, ob wir nicht eine vergessen haben - geht ja schnell mal im Eifer des Gefechts =) ...


    Code (Delphi):
    varss := '';
    for vari := 0 to vari do
    varss := varss + WebOrgMemo.Lines.Strings[vari] + #13#10;
    WebOrgMemo.Text := StringReplace(varss, #13#10#13#10, #13#10, [rfReplaceAll]);

    ... fülle den Text nochmal vom Memo in den String um und wieder zurück, um überflüssige Zeilen zu eliminieren und weils halt so viel Spaß macht...

    Code (Delphi):
    vari := -1;
    repeat
    Inc(vari);
    until (WebOrgMemo.Lines.Strings[vari] = 'Inhaltsverzeichnis') or (vari > WebOrgMemo.Lines.Count);
    if WebOrgMemo.Lines.Strings[vari] = 'Inhaltsverzeichnis' then
    begin
    varss := '';
    for varii := 0 to vari - 1 do
    varss := varss + WebOrgMemo.Lines.Strings[varii] + #13#10;

    ... nehme dabei dann noch allen Text, der vor dem Inhaltsverzeichnis vorhanden ist, falls denn eins vorhanden ist...

    Code (Delphi):
    repeat
    Inc(vari);
    until (WebOrgMemo.Lines.Strings[vari] = '//') or (vari > WebOrgMemo.Lines.Count);
    if WebOrgMemo.Lines.Strings[vari] = '//' then
    begin
    for varii := vari + 1 to WebOrgMemo.Lines.Count - 1 do
    varss := varss + WebOrgMemo.Lines.Strings[varii] + #13#10;
    WebOrgMemo.Text := StringReplace(varss, #13#10#13#10, #13#10, [rfReplaceAll]);
    end;
    end;

    ... sowie allen Text danach, denn das Inhaltsverzeichnis selbst brauchen wir ja nicht, da wir ja den Inhalt haben...

    Code (Delphi):
    if Problem_Panel.Visible then
    goto Ende;

    ... man kennt es schon ^^ ...

    Code (Delphi):
    varss := WebOrgMemo.Text;
    while (not (pos('[', varss) = 0)) and (pos('[', varss) < pos(']', varss)) do
    varss := copy(varss, 1, pos('[', varss) - 1) + copy(varss, pos(']', varss) + 1, Length(varss));

    ... kürze noch schnell alles, was in eckigen Klammern steht, denn Dinge in eckigen Klammern sind nie wichtig und meistens nur Angaben zu den Quellen, die unseren Bot herzlich überhaupt nicht interessieren...

    Code (Delphi):
    while (not (pos('(', varss) = 0)) and (pos('(', varss) < pos(')', varss)) do
    begin
    vars := copy(varss, pos('(', varss) + 1, pos(')', varss) - (pos('(', varss) + 1));
    if copy(vars, 1, 2) = '* ' then
    begin
    if pos('â&#8364;', vars) = 0 then
    varss := copy(varss, 1, pos('(', varss) - 1) + ', geboren am ' + copy(vars, 3, Length(vars)) + ',' + copy(varss, pos(')', varss) + 1, Length(varss))
    else
    varss := copy(varss, 1, pos('(', varss) - 1) + ', geboren am ' + copy(copy(vars, 3, Length(vars)), 1, pos(';', copy(vars, 3, Length(vars))) - 1) + ' und verstorben am ' + copy(copy(vars, 3, Length(vars)), pos('â&#8364;', copy(vars, 3, Length(vars))) + 3, Length(vars)) + ',' + copy(varss, pos(')', varss) + 1, Length(varss));
    end
    else
    varss := copy(varss, 1, pos('(', varss) - 1) + copy(varss, pos(')', varss) + 1, Length(varss));
    end;

    ... bringe die Angabe über Geburtstag und Todestag, sofern es sich bei dem Artikel um einen handelt, der sich um eine Person dreht, in eine botlesbare Form...

    Code (Delphi):
    varss := StringReplace(varss, '   ', ' ', [rfReplaceAll]);
    varss := StringReplace(varss, '  ', ' ', [rfReplaceAll]);
    varss := StringReplace(varss, ' ,', ',', [rfReplaceAll]);
    WebOrgMemo.Text := varss;

    ... lösche noch ein paar Leerzeichen, die bei den zurückliegenden radikalen Ausschneideaktionen zurückgeblieben sind und den lieben Bot nur stören würden...

    Code (Delphi):
    if (pos('.', WebOrgMemo.Lines.Strings[0]) = 0) and (pos('!', WebOrgMemo.Lines.Strings[0]) = 0) and (pos('?', WebOrgMemo.Lines.Strings[0]) = 0) then
    WebOrgMemo.Lines.Delete(0);

    ... lösche die erste Zeile, sofern sie kein Satzzeichen enthält, weil die erste Zeile sowieso langweilig ist und in dem speziellen Fall sicherlich eher eine Überschrift als einen Satz darstellt, aus dem der Bot etwas Sinnvolles erfahren könnte...

    Code (Delphi):
    Ende:
    RescueTimer.Enabled := false;
    Problem_Panel.Visible := false;
    end;

    ... und freue sich schließlich, dass man ans Ende gelangt ist, was man auch gleich dem ganzen Rest des Programms mitteilt, indem man die Notfallrettung abbestellt und Probleme als nichtexistent bezeichnet.

    Ich denke, man versteht nun einigermaßen, wieso gefühlte 90% eines jeden Artikels gelöscht werden: Überschriften werden nicht gebraucht, Inhaltsverzeichnisse auch nicht, jedwede Art von Liste ist für das Lernen der Sprache nicht so geeignet wie vernünftige Sätze und wird gelöscht und schließlich fallen auch alle Texthervorhebungen weg.
    Somit sind wir nun an dem Punkt, dass unser Bot einen kurzen, knappen Text geschickt bekommt, der vor Sinn und Syntax sowie Vokabular nur so strotzt und ihm hoffentlich in ganz kurzer Zeit das Sprechen beibringt.

    Vielen Dank für Ihre Aufmerksamkeit, ich bin Moyaccercchi, und Sie lasen einen Artikel zu Skippy, dem Buschkänguru der künstlichen Intelligenz.

    Geändert von Moyaccercchi (17.01.2010 um 18:00 Uhr)

  17. #17
    Wow, also das ist wirklich irre!

    Hast du dir das alles selbst ausgedacht, wie es funktioniert, oder hast du irgendwoher Infos gesammelt?
    Denn ich find sowas irrsinnig interessant! Und ich würd auch gern rein aus interesse sowas auch mal "anfangen", weiß ja nicht, wie weit ich kommen würd.

    Aber ich wüsste nichtmal genau, wie ich da anfangen soll. Wie zum Beispiel die Strings (?) ausgelesen werden, dass Skippy darin einen Sinn findet und überhaupt Oo

    Außerdem woltl ich mal so nachfragen, wie weit es denn mit den Umbauten so steht? Gibt's schon was zu zeigen, oder müssen wir uns noch in Geduld üben?

    Edit:
    Was mir grade einfällt:
    Ginge zum Beispiel auch sowas, dass der Bot über beispielsweise leo.org englisch lernt? Oder ist das sowieso Sprachenunabhängig, also könnte er auch englische Wikipediaseiten verstehen?

    Geändert von Teflo (22.03.2010 um 19:16 Uhr)

  18. #18
    Wow, das klingt ja mal sehr interessant.
    Sprache finde ich eines der interessantesten Themen, wenn es um KI geht. Eine KI, die logisch denken kann und damit tolle Sachen anstellen wie irgendwelche Systeme steuern oder was weiß ich, reizt mich nicht sonderlich; aber wenn eine KI weiß, wie sie ein abstraktes Gefühl oder eine abstrakte Information in menschliche Sprache umwandeln kann, finde ich das höchst beeindruckend.

    Mich würde ja noch interessieren, wie die KI nun aus all dem Text, der ihr vorliegt, Sprache erlernen kann. So, wie ich mir das als Laie vorstelle, müsste sie doch für jedes neue Wort irgendeine Art von Definition erhalten; außerdem müsste sie verifizieren, dass die Verbindung, die sie gemacht hat, auch tatsächlich grammatikalisch korrekt ist. Wie sieht es mit schwierigen Satzstellungen aus - ich habe oft genug erlebt, wie bestimmte Satzstellungen den Grammatikprüfer von Word verwirrt haben, und der kennt die Wörter immerhin bereits. Weiterhin ist Wikipedia auch in Sachen Rechtschreibung nicht unfehlbar; die KI müsste also mehrere Schreibweisen desselben Wortes einerseits erkennen können, andererseits nur eine (etwa diejenige, die am häufigsten auftaucht, in der Hoffnung dass das die richtige Schreibweise ist) verwenden.
    Allein um den Text zu verarbeiten, bräuchte die KI also einen empirischen Rechtschreibprüfer, Grammatikprüfer und einen Thesaurus mit entsprechenden empirisch erstellen Definitionen*. Sehe ich das richtig?

    *) Was mir ja absolut schleierhaft ist, speziell bei Verben. Ich kann mir zwar vorstellen, dass eine KI eine Art "Mindmap" erstellt und aus den Verlinkungen der Wörter zusammengehörige Themengebiete erkennen kann, aber diese Themen dann auch wirklich einordnen zu können...?

  19. #19
    Zitat Zitat von Lloyd64
    [...] Hast du dir das alles selbst ausgedacht, wie es funktioniert, oder hast du irgendwoher Infos gesammelt? [...]
    Im Großteil habe ich versucht, selbst auf Lösungen zu kommen, weil das einfach viel befriedigender ist, als vorgefertigte Expertenlösungen zu nutzen - obwohl ich auch in keinem themenbezogenen Artikel extra weggelesen und in keiner themenbezogenen Vorlesung extra weggehört hätte, nur, damit ich nicht beeinflusst werde.
    Also, ich versuche nicht nach Schema F irgendwelche bekannten Dinge nachzubauen, aber verschließe mich Einflüssen von außen auch nicht. *g*
    Zitat Zitat von Lloyd64
    [...] Denn ich find sowas irrsinnig interessant! Und ich würd auch gern rein aus interesse sowas auch mal "anfangen", weiß ja nicht, wie weit ich kommen würd. [...]
    Mach ruhig. Es ist vollkommen egal, wie weit man kommt - irgendwelche Probleme überwindet man immer, an denen man lernen kann, bis man irgendwann aufhört (oder tatsächlich fertig wird, was ja auch sehr fein wäre).
    Zitat Zitat von Lloyd64
    [...] Aber ich wüsste nichtmal genau, wie ich da anfangen soll. Wie zum Beispiel die Strings (?) ausgelesen werden, dass Skippy darin einen Sinn findet und überhaupt Oo [...]
    Das läuft bei mir zur Zeit so, dass die Strings Wort für Wort erstmal übersetzt werden in eine Art interne Sprache (also 'geht' > 'Verb 27398, 3. Person Singular'; 'Hausbau' > 'Substantiv 1 (Haus) + Substantiv 93 (Bau)' etc.), was schon sehr schwierig ist, da natürlich oft unbekannte Wörter vorkommen (wenn wenigstens Wortteile davon an bereits bekannte Wörter erinnern, wird es gespeichert als ein Wort, dass mit einer gewissen Wahrscheinlichkeit das bedeutet, was das bekannte Wort bedeutet, sonst wird es als unbekanntes Wort gespeichert, dessen Bedeutung aus dem Kontext erlesen werden oder im Notfall eben erfragt werden muss).
    Und anschließend wird dann versucht, aus dem Wirrwar, das dabei herauskommt, einen Sinn herauszulesen. Mehr oder weniger erfolgreich. ^^
    Zitat Zitat von Lloyd64
    [...] Außerdem woltl ich mal so nachfragen, wie weit es denn mit den Umbauten so steht? Gibt's schon was zu zeigen, oder müssen wir uns noch in Geduld üben? [...]
    Ich gebe zu, ich habe in letzter Zeit nicht damit weitergemacht, weil ich an einem anderen Programmierproblem fleißig zu knabbern habe...
    Aber ich bin niemand, der irgendwas jemals aufgegeben hätte. Alles nur verschoben, wird irgendwann ausgebuddelt und weitergemacht. ^^
    Zitat Zitat von Lloyd64
    [...] Ginge zum Beispiel auch sowas, dass der Bot über beispielsweise leo.org englisch lernt? Oder ist das sowieso Sprachenunabhängig, also könnte er auch englische Wikipediaseiten verstehen?
    Zur Zeit versuche ich, ihm Deutsch und Englisch halbwegs beizubringen. Was schon beim Überführen der Wörter in die interne Sprache schwierig wird, da Wörter oftmals mehrere Bedeutungen haben und die im Englischen und Deutschen oft nicht gleich sind. Je unterschiedlicher die Sprachen, desto schwieriger wird das alles, weil er ja mitunter gänzlich unterschiedliche Grammatiken erlernen muss.
    Bisher ist er so weit, dass er erkennt, in welcher Sprache man ihn anspricht (er prüft einfach, in welcher Sprache mehr Wörter bekannt sind), und in dieser Sprache auch antwortet. Aber dass die Antwort... nunja, korrekt ist, davon bin ich noch etwas entfernt. ^^
    Es gibt sogar die Möglichkeit, dass er etwas übersetzt, aber ganz ehrlich - zur Zeit ist das noch schlimmer als der Googleübersetzer. (Wenn auch nicht sehr viel.)
    Zitat Zitat von Schattenläufer
    [...] aber wenn eine KI weiß, wie sie ein abstraktes Gefühl oder eine abstrakte Information in menschliche Sprache umwandeln kann, finde ich das höchst beeindruckend. [...]
    Was eine riesige Herausforderung ist, da menschliche Erfahrungen weit außerhalb der Erlebniswelt der KI liegen. Wie will eine Intelligenz, die nur auf Textein- und -ausgabe beschränkt ist, das abtrakte Konzept der Begriffe „oben“ und „unten“ verstehen, das nur dann Sinn macht, wenn man einen Körper hat, der in sich in Relation zu irgendetwas anderem oben oder unten befinden kann? (Ein Wissenschaftler, weiß nicht mehr, wer, hat schön gesagt: „Unser Körper ist das Koordinatensystem, an das wir die ganze Welt anlegen.“ Und so ist es - eine vollkommen von der materiellen Welt losgelöste Intelligenz wird unglaublich viele Teile unserer Sprache nicht verstehen, weil unsere Sprache oft Begriffe der körperlichen Welt nutzt, selbst wenn überhaupt nicht über die körperliche Welt geredet wird. Man könnte das vielleicht lösen, indem man die KI in einen Roboter einspeist, dann hat sie einen Körper... nur habe ich hier keinen Roboter. =P Man könnte auch einen Körper emulieren in einer programmierten Welt, sodass die KI ein eigenes Leben im Computer führt, das ihr selbst als körperlich erscheint... quasi als würde sie die ganze Zeit über Sims spielen. Man kann auch alle körperlichen, abstrakten Konzepte hardcoden. Hat jemand noch weitere Vorschläge?)
    Zitat Zitat von Schattenläufer
    [...] Mich würde ja noch interessieren, wie die KI nun aus all dem Text, der ihr vorliegt, Sprache erlernen kann. So, wie ich mir das als Laie vorstelle, müsste sie doch für jedes neue Wort irgendeine Art von Definition erhalten; außerdem müsste sie verifizieren, dass die Verbindung, die sie gemacht hat, auch tatsächlich grammatikalisch korrekt ist. [...]
    Prinzipiell kann sie Sprachen genauso erlernen, wie wir: Über Definitionen für neue Wörter, die auf die verschiedenste Art und Weise gegeben werden können. Zum Beispiel durch andere Wörter - was aber eine Basis an bereits bekannten Wörtern voraussetzt. Oder auch über die Anschauung (sofern denn das Körperproblem gelöst ist) - kleinen Kindern zeigt man beispielsweise ein Auto, sagt „Auto“, und später zeigen sie auf Autos, und sagen „Auto“, und schaffen sich so ihre eigene Definition, die mit der Zeit immer näher an die allgemeingültige Definition kommt, dadurch, dass bei falschem Erkennen stets ein Erwachsener daherkommt, und sagt, das falsch erkannte sei gar kein Auto.
    Allgemein muss man sich vom Anspruch auf Wahrheit verabschieden: Eine Grammatik, die die KI vorgesetzt bekommt, ist nicht richtig oder falsch; ein Wort ist nicht richtig oder falsch geschrieben, nicht richtig oder falsch definiert, sondern es ist eben im angegebenen Personenkreis, mit dem die KI kommuniziert, mit einer gewissen Wahrscheinlichkeit ein angebrachtes Wort, eine angebrachte Grammatik, und mit einer gewissen Wahrscheinlichkeit nicht. Eine KI, die nur Umgang mit enthusiastischen, feministischen Jugendlichen hat, wird tunlichst auf das „/-in“ am Ende eines Wortes achten; in einer anderen Umgebung kann das schon wieder belächelt werden.
    Sprache ist allgemein nie richtig oder falsch, sondern angemessen oder nicht, und daher ist auch der Input den die KI erhält, höchstens angemessen. (Und ja, oft genug vertippt sich dann der Nutzer auch, ist selbst kein Muttersprachler, etc., sodass sowieso die Wörter und Wendungen, die eher selten genutzt werden, als möglicherweise unangemessen durchs Raster fallen - sollte die KI versuchen, fehlerlos zu reden. Besser ist es aber, wenn sie in einer Lernphase erstmal drauflosplappert und möglichst unwahrscheinliche, experimentelle Wendungen nutzt, um über die Rückmeldung der Anwender zu erkennen, ob das noch angemessen war oder nicht (ähnlich wie Kinder sprechen) und erst nach Abschluss dieser Phase versucht, bei der Sprache eher auf Nummer Sicher zu gehen, dafür aber auch neuen Moden weniger offen gegenüberzustehen (ähnlich wie Erwachsene), meiner Meinung nach. ^^)
    Zitat Zitat von Schattenläufer
    [...] *) Was mir ja absolut schleierhaft ist, speziell bei Verben. Ich kann mir zwar vorstellen, dass eine KI eine Art "Mindmap" erstellt und aus den Verlinkungen der Wörter zusammengehörige Themengebiete erkennen kann, aber diese Themen dann auch wirklich einordnen zu können...?
    Warum ist dir das speziell bei Verben schleierhaft? Eigentlich finde ich Verben sogar noch halbwegs machbar - mit etwas Glück kann schon aus der Endung allein, also aus der Grammatik und nicht aus dem Inhalt, auf Inhalte geschlossen werden, wie beispielsweise die Zeit in der das Gesagte spielt oder die Anzahl der Personen, um die es geht. Da sind doch Wörter, die sich nicht ändern, und deren Bedeutung bei gleichem Aussehen noch viel variabler ist... schwerer. o.o

    Die eierlegende Wollmilchsau in Sachen KI hab ich auch noch nicht gefunden, das ist klar. Werde ich sicherlich auch niemals. ^^
    Aber die Unterhaltung darüber allein ist doch schon sehr interessant, weil man über ganz neue Probleme nachdenkt und so neue Erkenntnisse gewinnt. Von daher... Lasst uns ruhig weiterphilosophieren, auch wenn mein Skippy zur Zeit nicht vorankommt. Und lasst euch ruhig inspirieren, auch mal soetwas zu programmieren. Nur auf keinen Fall vergessen, davon zu berichten! =)

  20. #20
    Hallo Moya! Das ganze hört sich sehr interessant und ambitioniert an. Kannst du noch etwas detaillierter ausführen, wie Skippy einen Sinn aus den "übersetzten" Wiki-Artikeln rausliest?

Berechtigungen

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