Die Open Source Initiative stellt die offizielle Definition von quelloffener künstlicher Intelligenz vor und fordert Tech-Konzerne heraus.
Damit ein KI-System als quelloffen gilt, müssen demnach Details zu den Trainingsdaten so offengelegt werden, damit sie von Dritten verstanden und nachgebildet werden können. Zudem muss der vollständige Code, der für die Erstellung und Ausführung der KI verwendet wurde, öffentlich sein und die Gewichtung der Trainingsdaten, auf deren Grundlage die KI ihre Ergebnisse erzielt, müssen einsehbar sein.
Links:
Gefühlt und aus persönlicher Erfahrung in der täglichen Arbeit würde ich dafür plädieren, dass KI nur Open Source sein kann wenn auch die Trainingsdaten offen verfügbar sind.
Warum?
Reproduzierbarkeit, wie kann etwas OpenSource sein das man nicht nachbauen kann? Das wäre wie “OpenSource” Code den man nicht kompilieren kann oder wo proprietäre Abhängigkeiten fehlen.
Eigentlich bin ich eher neugierig wegen deiner persönlichen Erfahrung. Wo wird das so gehandhabt, dass immer Trainingsdaten mit verteilt werden?
Ich habe ein paar Jahre an der Uni als Wimi gearbeitet, die Wissenschaft (die du unten schon genannt hattest) wäre also ein Beispiel wo ich persönliche Erfahrung sammeln durfte.
Aber auch mit Erfahrung in der freien Wirtschaft kann man argumentieren: die Beobachtung ist das die Daten wesentlich das Verhalten des Systems beeinflussen und damit kommt ihnen eine ähnliche Rolle zu wie Code in traditioneller SW.
Daher geht man z.B. dazu über für Daten ähnliche Qualitätsstandards zu definieren. Z.B. hat man für Code Spezifikationen und Unittests die das Prüfen. Es ist in der Wirtschaft, je nach Bereich und Qualitätsanforderungen, mittlerweile Standard sowas auch für Datensätze zu machen. Man prüft also automatisch und bei jeder Änderung bestimmte statistische Eigenschaften der Daten wie Klassenverteilung, Balanciertheit, auch über Einflussgrößen die nicht explizit trainiert werden. Also z.B. für eine Gesichtserkennung prüft man die Verteilung von Geschlecht, Ethnizität, Alter, … in den Trainingsdaten.
Auch werden Datensätze genau wie Code in versionierten Repositories vorgehalten.
De facto hat man also auch in der Wirtschaft die sehr ähnliche Bedeutung und damit auch Handhabung von Daten und Code in KI Systemen erkannt und umgesetzt. Sollten dann nicht die OSS Regeln auch genauso auf Daten übertragbar sein?
De facto hat man also auch in der Wirtschaft die sehr ähnliche Bedeutung und damit auch Handhabung von Daten und Code in KI Systemen erkannt und umgesetzt. Sollten dann nicht die OSS Regeln auch genauso auf Daten übertragbar sein?
OSS ist aber kein Wunschzettel der Wirtschaft. Klar, dass die sich freuen, wenn sie was umsonst kriegen. Geht mir auch so. Aber Unittests oder das Einhalten von irgendwelchen Spezifikationen sind keine Bedingung, dass Code als Open Source gilt.
What? Hab ich das denn irgendwo behauptet?
Das man beides umsetzt sowohl für Code als auch für Daten sind aber Zeichen dafür, dass Code und Daten im KI Kontext eine ähnliche Funktion haben. Dann ist es doch nur konsequent auch die gleichen Maßstäbe in Hinsicht auf OSS anzulegen?
Mit den “Ähnlichkeiten” wäre ich vorsichtig. Es gibt da so viele Missverständnisse.
Qualitätssichernde Maßnahmen oder bestimmte, wünschenswerte Eigenschaften sind nicht Teil des traditionellen Verständnisses von Open Source. Insofern es da Ähnlichkeiten gibt, spricht das gegen die Forderung.
Ich kenns so aus den Bereichen computational cognition research und ein wenig (weil nicht mein Gebiet) computational sociology. Da sind es halt oft einfach nur “die Daten”.
Reproduzierbarkeit als Kriterium kenne ich nur aus der Wissenschaft. Open-Source-Code ist ja nicht als Tutorial gedacht. Du kannst ihn benutzen, für dich anpassen, oder darauf aufbauen, aber er muss dich nicht in die Lage versetzen selber so ein Programm zu schreiben. Es wäre mir auch neu, dass proprietäre Abhängigkeiten ein Problem sind. ZB wenn ein Programm nur auf einem iPhone läuft.
Bei OSS für iPhones gibt es diese Abhängigkeiten aber sie fehlen nicht, das ist also nicht was ich beschrieben habe.
OpenSource Code muss dich aber sehr wohl in die Lage versetzen selber aus dem Quellcode zu kompilieren und die ausführbare Binärdatei zu reproduzieren. In der Analogie wäre das trainierte Modell sowas wie die fertig kompilierte .exe . SW die nur kompiliert verteilt wird gilt auch nicht als OpenSource. Und die Wissenschaft ist doch immer schon wichtig für die ganze OSS Welt, sicherlich sollten wir die Definition nicht Vertretern “der Industrie” wie Google oder Microsoft usw. überlassen.
OpenSource Code muss dich aber sehr wohl in die Lage versetzen selber aus dem Quellcode zu kompilieren und die ausführbare Binärdatei zu reproduzieren.
Stimmt eigentlich nicht. Und nicht nur wegen interpretierten Sprachen wie Javascript oder Python.
Wenn jemand Code unter einer Open-Source-Lizenz veröffentlicht, dann ist das Open Source, auch wenn der Code unfertig oder fehlerhaft ist. Vielleicht ist das Projekt ja in einem Zustand, dass irgendjemand was damit anfangen kann.
Aber das ist nur eine Spitzfindigkeit, ohne näheren Themenbezug.
In der Analogie wäre das trainierte Modell sowas wie die fertig kompilierte .exe . SW die nur kompiliert verteilt wird gilt auch nicht als OpenSource.
Leider funktioniert die Analogie technisch auf keiner Ebene. Computer verarbeiten Daten. Daten gehen rein und andere Daten - Ergebnisse - kommen raus. Kompilierung ist ein Beispiel dafür, aber deswegen ist nicht jede Datenverarbeitung analog zur Kompilierung.
Von der Informatik her fängt das schon damit an, dass man nicht für alle Zwecke Trainingsdaten braucht
Was die Sache aber heikel macht, sind die rechtlichen Aspekte. Gerade in Europa wird man nur selten das Recht haben, die Daten zu teilen. Ähnliche Erfolgsgeschichten wie Linux wird es - auch wegen des AI Acts - sicher nicht geben. Aber auch in Ländern mit besseren Gesetzen wird es oft Probleme mit der Weitergabe von Trainingsdaten geben.
Und die Wissenschaft ist doch immer schon wichtig für die ganze OSS Welt,
Open source kommt aber nicht aus der Wissenschaft und hat damit direkt nichts zu tun. Code neu zu kompilieren oder laufen zu lassen ist sicher keine Replikation. Es zeigt ja nur, dass der Code existiert und funktioniert. Die Ergebnisse also nicht frei erfunden sind. Im schlimmsten Fall kann auch ein sorgfältiges Lesen des Quellcodes entscheidende Fehler übersehen. Idealerweise kommt eine andere, unabhängige Implementation zum gleichen Ergebnis.
Ich weiß nicht wie es jetzt läuft, aber auch als Open Source schon etabliert war, haben sich manche Wissenschaftler geweigert ihren Code zu teilen, eben auch mit diesem Argument.
In jedem Fall ist das ein Thema für Publication Guidelines von Journalen und keine allgemeine Frage von Open Source.
sicherlich sollten wir die Definition nicht Vertretern “der Industrie” wie Google oder Microsoft usw. überlassen.
Im AI Act steht das so:
- (102) Software and data, including models, released under a free and open-source licence that allows them to be openly shared and where users can freely access, use, modify and redistribute them or modified versions thereof, can contribute to research and innovation in the market and can provide significant growth opportunities for the Union economy. General-purpose AI models released under free and open-source licences should be considered to ensure high levels of transparency and openness if their parameters, including the weights, the information on the model architecture, and the information on model usage are made publicly available. The licence should be considered to be free and open-source also when it allows users to run, copy, distribute, study, change and improve software and data, including models under the condition that the original provider of the model is credited, the identical or comparable terms of distribution are respected.*
(102) https://eur-lex.europa.eu/legal-content/EN/TXT/HTML/?uri=OJ:L_202401689
Ich denke schon dass man kompilieren können muss. Sonst landet man bei so fake OSS compliance wie bei Android wo die Hersteller ihre Modifikationen am Linux Kernel nur auf die minimalste und kryptischste Art und Weise veröffentlichen mit der keiner was anfangen kann. Das entspricht doch nicht dem Open Source Gedanken und kann doch niemanden zufrieden stellen.
Ich habe auch nicht behauptet dass überall Trainingsdaten benötigt werden oder jede Datenverarbeitung analog zum Kompilieren ist. Aber das Training von AI Modellen kann man denke ich schon vergleichen. Was das Verhalten (mit) bestimmt steht am Anfang, nämlich der Code bzw die Daten. Es folgt ein Prozess der das ganze umwandelt in etwas was im wesentlichen eine Blackbox ist und nur sehr eingeschränkt und unter großem Aufwand noch sinnvoll analysiert werden kann. In diesem Punkt sind die Vorgänge sehr analog und vergleichbar aus meiner Sicht.
Und das Recht zu teilen hängt vom Datensatz bzw. vom Code ab, Quellcode der persönliche Daten o.ä. im Klartext enthält darf ich sicherlich auch nicht einfach Open Source publizieren. Das Problem ist also nicht inhärent eines das nur auf Daten zutrifft. Und Datensätze können durchaus so angelegt werden dass sie auch geteilt werden dürfen, siehe gängige Praxis in der Wissenschaft selbst für Aufgaben wie Gesichtserkennung, Köperposen, …
Und der Status Quo an Gesetzen und Lizenzen definiert hier evtl. anders, aber hat denn die EU mit dem AI Act hier die Deutungshoheit? Mir geht es darum wie es eigentlich und aus dem intuitiven Verständnis von Open Source her sein sollte, nicht was AI Act oder GPL usw. derzeit abdecken.
Es ist ja auch letzten Endes nichts schlimmes daran wenn man Daten nicht publiziert. Es ist dann halt bloß einfach kein Open Source, weil man die Funktionsweise nicht wirklich nachvollziehen kann und das Trainingsergebnis auch nicht selbst erzeugen kann.
Ich habe auch nicht behauptet dass überall Trainingsdaten benötigt werden
Es sollte zeigen, dass die Analogie nicht funktioniert.
Aber das Training von AI Modellen kann man denke ich schon vergleichen. Was das Verhalten (mit) bestimmt steht am Anfang, nämlich der Code bzw die Daten.
Ich kann verstehen, was die Analogie verführerisch macht, aber auf der technischen Ebene funktioniert sie schlicht nicht.
Ein typischer Satz Trainingsdaten könnte aus Bild/Text-Paaren bestehen. ZB Bild und Schlagworte zum Motiv. Damit könnte man ein KI-Modell trainieren, das Bilder in Kategorien einteilt, oder zu einem Bild Schlagworte generiert. Man könnte das auch für einen Bildgenerator benutzen, der Bilder zu einer Worteingabe generiert. Der Code macht das Programm. Der Code steht am Anfang, wie du so schön sagst.
Wenn du die Daten austauscht, wird die fertige KI immer noch dasselbe machen. Aber was genau die KI macht, kannst du aus den Daten nicht vorhersagen. Deswegen spricht man von einer Black Box. Man kann nicht exakt vorhersagen, ZB was für Schlagworte einem neuen Bild zugeordnet werden, oder erklären warum.
Ein anderer Unterschied ist der, dass Kompilierung einen definitiven Abschluss hat. Wann ein KI-Modell austrainiert ist, ist wenig klar. Und natürlich auch die enormen Kosten.
Und das Recht zu teilen hängt vom Datensatz bzw. vom Code ab, Quellcode der persönliche Daten o.ä. im Klartext enthält darf ich sicherlich auch nicht einfach Open Source publizieren.
Erstmal ist das Problem das Urheberrecht. Kein Problem bei Code, aber bei Trainingsdaten. Wie die Sache dann schlussendlich wegen DSGVO aussieht, ist unklar. Dann hat man noch Sachen wie den Data Act.
Mir geht es darum wie es eigentlich und aus dem intuitiven Verständnis von Open Source her sein sollte, nicht was AI Act oder GPL usw. derzeit abdecken.
Tja. Ich habe nicht den Eindruck, dass die Open-Source-KI-Community dein Verständnis teilt. Deswegen die Frage nach der Erfahrung und wo das so gemacht wird. Anscheinend nur in Teilen der Wissenschaft. Dem Kommentator, der dir zustimmt, geht es offensichtlich nicht um Open Source, sondern um Schützenhilfe für die Copyright-Industrie.
DeepAI meint dazu:
Das ist ein interessanter Standpunkt und hat in der Debatte um Künstliche Intelligenz (KI) und deren Transparenz und Nachvollziehbarkeit große Relevanz. Hier sind einige Überlegungen zu deinem Argument:
- Transparenz: Wenn KI-Modelle als Open Source bereitgestellt werden, ist es wichtig, auch die Trainingsdaten offenzulegen, um nachzuvollziehen, wie das Modell zu seinen Entscheidungen kommt. Dies fördert das Vertrauen in die Technologie.
- Bias und Fairness: Die Art und Qualität der Trainingsdaten hat einen erheblichen Einfluss auf das Verhalten von KI-Modellen. Offene Daten könnten es ermöglichen, Verzerrungen zu erkennen und zu korrigieren, sodass fairere und ausgewogenere Ergebnisse erzielt werden können.
- Reproduzierbarkeit: In der Wissenschaft ist Reproduzierbarkeit ein zentraler Aspekt. Wenn sowohl Modelle als auch ihre Trainingsdaten offen verfügbar sind, können Forscher die Ergebnisse nachvollziehen und neue Einsichten gewinnen.
- Zugänglichkeit: Offene Trainingsdaten könnten dazu beitragen, dass mehr Entwickler und Forscher Zugang zu leistungsfähigen KI-Tools erhalten, was Innovation und Fortschritt in der KI-Forschung fördern könnte.
- Datenschutz und Ethik: Es gibt jedoch auch Bedenken hinsichtlich Datenschutz und ethischen Implikationen, wenn es darum geht, persönliche oder sensible Daten zu veröffentlichen. Hier muss ein Gleichgewicht gefunden werden, um die Privatsphäre der Individuen zu schützen.
- Vielfalt und Inklusion: Offene Trainingsdaten könnten dazu beitragen, eine breitere Vielfalt an Perspektiven und Anwendungsfällen zu integrieren, was zu besser angepassten Modellen für verschiedene Anwendungsfälle führen könnte.
Insgesamt ist es eine komplexe Diskussion, die sowohl technische als auch ethische Überlegungen umfasst. Deine Forderung nach offenen Trainingsdaten kann als Schritt in Richtung größerer Verantwortung und Nachvollziehbarkeit in der KI-Entwicklung gesehen werden.
Eigene Antwort meinerseits: Du hast völlig recht. Aber die Offenheit der Trainingsdaten zu gewährleisten wird definitiv eine Herkulesaufgabe.
Ok aber wir machen wir es Leuten dann noch so schwer wie moeglich, nachzuweisen, dass ihre persoenlichen Daten in den Autoplagiatschredder geworfen wurden?
Autoplagiatschredder
Wann verstehen die Leute endlich mal, dass LLMs ein Teil von KI sind, aber KI noch so unglaublich viel facettenreicher ist als LLMs und so viel mehr an Algorithmen und Modellen zu bieten hat als das?