nachricht

wie produziert ein ki-doktorand wirkungsvolle forschung? schüler der gewinner des sloan-preises teilen ihre erfahrungen

2024-10-07

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

maschinenherz-zusammenstellung

autor: omar khattab

herausgeber: egg sauce, zenan

eine arbeit schreiben? das ist nur ein kleiner schritt.

während des graduiertenstudiums sind viele menschen oft verwirrt darüber, wie sie ihre eigene forschung strukturieren sollen. wie sollten wir forschen, um im bereits überfüllten bereich der künstlichen intelligenz etwas zu bewirken?

zu viele menschen glauben, dass langfristige projekte, ordnungsgemäße code-releases und gut durchdachte benchmarks nicht motivierend genug sind – manchmal kann es sein, dass man es schnell und schuldbewusst tut und sich dann wieder der „echten“ forschung zuwendet.

kürzlich veröffentlichte omar khattab, doktorand in der nlp-gruppe der stanford university, einen blogbeitrag, in dem er die gedanken führender ki-wissenschaftler zur durchführung wirkungsvoller forschung erörterte.

mal sehen, was er gesagt hat:

forschungswirkungen gibt es in vielen formen, und ich werde mich nur auf die messung der forschungswirkungen auf ki durch open-source-arbeit (z. b. modelle, systeme, frameworks oder benchmarks) konzentrieren. da es zu meinen zielen gehört, meine ideen zu verfeinern, konkrete vorschläge aufzuzeichnen und feedback einzuholen, werde ich die aussage prägnanter gestalten. wenn sie weitere ideen haben, diskutieren sie diese bitte im kommentarbereich.

hier zunächst die leitprinzipien:

  • konzentrieren sie sich auf projekte, nicht auf papiere.

  • sie können „ein loch graben“, indem sie ein geeignetes problem auswählen, das mehr raum für entwicklung bietet.

  • denken sie zwei schritte voraus und iterieren sie schnell.

  • machen sie ihre arbeit öffentlich und fördern sie ihre ideen.

  • finden sie möglichkeiten, sich selbst zu motivieren: hier finden sie tipps zum ausbau ihrer open-source-forschung.

  • investieren sie weiterhin in ihr projekt mit neuen papieren.

  • der fünfte punkt, „tipps für die entwicklung von open-source-forschung“, verdient einen längeren eigenen artikel. vielleicht schreibe ich darüber in meinem nächsten beitrag.

konzentrieren sie sich auf projekte

eher als ein papier

dies ist ein entscheidender denkansatz, auf dem alles andere basiert.

studienanfänger legen großen wert auf die veröffentlichung ihrer ersten arbeiten. das macht sinn: auf diese weise lernen sie, forschung zu betreiben, erste richtungen zu erkunden und frühe fortschritte zu demonstrieren. dies ist jedoch eine phase, die sie irgendwann verlassen müssen: auf lange sicht werden ihre erfolge und ihr wachstum weniger von der bloßen anzahl der aufsätze abhängen, als vielmehr von ihrer wirkung und dem gesamten forschungskontext, den sie vermitteln.

leider betrachten zu viele doktoranden das potenziell wirkungsvollste verhalten als „unmotivierend“. das verwirrte mich, bis mir klar wurde, was damit gemeint war, dass diese maßnahmen ihre fähigkeit, ihre nächste arbeit zu veröffentlichen, verlangsamen könnten. aber ihre fähigkeit, ihre nächste arbeit so schnell zu veröffentlichen, ist weniger wichtig.

ich schlage vor, dass sie ihre arbeit nicht als eine reihe isolierter arbeiten betrachten, sondern sich stattdessen fragen: was sind die größeren visionen, die sie vorantreiben werden, und was sind die teilbereiche oder paradigmen darin? welchen unterschied möchten sie mit ihrer arbeit bewirken? sie veröffentlichen also einzelne artikel, um sie zu erkunden und maßstäbe zu setzen, während die größere vision etwas sein sollte, an dem sie bewusst iterieren. es muss viel größer sein, als das papier trägt, und ist sicherlich ein problem, das noch nicht vollständig gelöst ist.

eine möglichkeit, dies zu erreichen, besteht darin, einige forschungsarbeiten um kohärente artefakte (wie modelle, systeme, frameworks oder benchmarks) herum zu strukturieren, die sie im open-source-bereich pflegen. diese strategie ist teurer als „einige experimente durchführen und ein flüchtiges, schnelles repository freigeben“, aber sie zwingt sie dazu, ein problem mit echten auswirkungen zu finden und trägt dazu bei, sicherzustellen, dass die neue forschung, die sie durchführen, tatsächlich kohärent und nützlich ist: sie geben sich keine mühe dazu verleitet, eine kleine funktion oder einen kleinen trick einzuführen, der für die von ihnen entwickelten und gepflegten artefakte nutzlos ist.

wählen sie geeignete fragen mit größerem verbesserungspotenzial

kann „ein loch graben“

nicht jede arbeit, die sie schreiben, ist es wert, auf unbestimmte zeit in sie zu investieren. bei vielen arbeiten handelt es sich um einmalige sondierungspapiere. um richtungen zu finden, die zu größeren projekten werden können, verwenden sie die folgenden kriterien.

erstens muss das problem aktuell sein. sie können es auf viele arten definieren, aber inkieine wirksame strategie in diesem bereich besteht darin, einen problembereich zu finden, der in zwei bis drei jahren „heiß“ sein wird, aber noch nicht zum mainstream geworden ist.

zweitens muss das problem ein großes potenzial haben, löcher zu graben, das heißt, es muss potenziell auswirkungen auf viele nachgelagerte probleme haben. grundsätzlich könnten die ergebnisse dieser fragen für genügend menschen von nutzen sein oder für sie von interesse sein. forschern und menschen ist es wichtig, was ihnen hilft, ihre ziele zu erreichen. ihre frage könnte also so lauten, dass sie anderen helfen, dinge zu bauen oder forschungs- oder produktionsziele zu erreichen. sie können diesen filter anwenden, um theoretische grundlagen, systeminfrastruktur, neue benchmarks, neue modelle und viele andere dinge zu studieren.

drittens muss das problem mit einem größeren spielraum belassen werden. wenn sie den leuten sagen, dass ihr system 1,5-mal schneller oder 5 % effizienter sein kann, ist das wahrscheinlich nicht interessant. mir scheint, dass man probleme finden muss, bei denen man zumindest nach jahren harter arbeit nicht die geringste hoffnung hat, etwas schneller zu machen, sagen wir 20x schneller oder 30 % effizienter. natürlich müssen sie nicht bis zum ziel vordringen, um erfolgreich zu sein, und sie sollten mit der veröffentlichung ihres ersten aufsatzes oder ihrer ersten arbeit nicht warten, bis sie das ziel erreicht haben.

ich möchte nicht zu abstrakt sein, verwenden wir colbert zur veranschaulichung. ende 2019 erfreute sich die forschung zur anwendung von bert beim retrieval großer beliebtheit, allerdings sind diese methoden sehr teuer. man fragt sich natürlich: können wir die effizienz dieses ansatzes deutlich verbessern? warum ist das eine gute frage?

erstens ist es sehr vorgefasst. wir können richtig vorhersagen, dass bis 2021 (1,5 jahre später) viele forscher nach effizienten retrieval-architekturen auf basis von bert suchen werden. zweitens bietet es viel raum für entwicklung. neue ml-paradigmen neigen dazu, so zu sein, weil die meisten dieser bemühungen zunächst die effizienz außer acht lassen. tatsächlich dauerte die beantwortung einer anfrage beim ursprünglichen ansatz möglicherweise 30 sekunden, doch jetzt können abrufe mit höherer qualität in 30 millisekunden abgeschlossen werden, was 1.000 mal schneller ist. drittens hat es einen großen fanout. skalierbares retrieval ist ein gutes „fundament“-problem: jeder muss etwas auf retrievern aufbauen, aber nur wenige wollen es bauen.

denken sie zwei schritte voraus

und schnell iterieren

nachdem sie nun ein gutes problem haben, sollten sie nicht voreilig die niedrig hängende frucht wählen, die vor ihnen liegt, als ihren ansatz! irgendwann werden zumindest viele menschen den „naheliegenden“ ansatz in betracht ziehen.

denken sie stattdessen mindestens zwei schritte voraus. identifizieren sie den weg, den die meisten menschen wahrscheinlich einschlagen werden, wenn dieses aktuelle thema endlich zum mainstream wird. identifizieren sie dann die einschränkungen des pfads selbst und arbeiten sie daran, diese einschränkungen zu verstehen und anzugehen.

wie sieht das in der praxis aus? schauen wir uns den fall colbert noch einmal an. der offensichtliche weg, mit bert einen effizienten retriever zu erstellen, besteht darin, dokumente in vektoren zu kodieren. interessanterweise war dies bis ende 2019 nur durch begrenzte ir-arbeit gelungen. beispielsweise veröffentlichte das meistzitierte werk dieser kategorie (dpr) seinen ersten vorabdruck erst im april 2020.

vor diesem hintergrund könnte man meinen, dass es das richtige im jahr 2019 ist, über bert ein großartiges einzelvektor-ir-modell zu erstellen. wenn man dagegen nur zwei schritte vorausdenkt, stellt sich die frage: früher oder später entwickelt jeder einen ein-vektor-ansatz. wo bleibt dieser ein-vektor-ansatz grundsätzlich stecken? tatsächlich führte dieses problem zu späteren interaktionsparadigmen und weit verbreiteten modellen.

als weiteres beispiel können wir dspy verwenden. im februar 2022, als hinweise immer leistungsfähiger wurden, wurde klar, dass menschen hinweise zur abrufbasierten qualitätssicherung verwenden wollten, anstatt wie zuvor für die feinabstimmung. dazu müssen wir natürlich eine methode etablieren. wir gehen zwei schritte weiter und fragen: wo bleibt ein solcher ansatz hängen? letztendlich ist der ansatz „abrufen und dann generieren“ (rag) wahrscheinlich der einfachste ansatz mit lm.

aus den gleichen gründen, aus denen menschen daran interessiert sind, werden sie offensichtlich zunehmend daran interessiert sein, (i) komplexere kombinationen von modulen auszudrücken, (ii) herauszufinden, was durch automatische eingabeaufforderung oder feinabstimmung des zugrunde liegenden lm-how-to getan werden soll überwachen oder optimieren sie die resultierende komplexe pipeline. das ist dspy.

die zweite hälfte dieser regel lautet „schnell iterieren“. dies war vielleicht der erste forschungsratschlag, den mir mein berater matei zaharia (gewinner des sloan-preises und gründer von apache spark) in der ersten woche meiner doktorarbeit gab: indem ich ein thema identifiziere, bei dem man schnell iterieren und feedback erhalten kann (z. b. verzögerung oder verifizierung). (score)-version des problems, was ihre chancen, das rätsel zu lösen, erheblich verbessern kann. dies ist besonders wichtig, wenn sie zwei schritte voraus denken, was schwierig und unsicher genug ist.

machen sie ihre arbeit öffentlich

lassen sie ihre ideen auf sich wirken

an diesem punkt haben sie ein gutes problem entdeckt und so lange iteriert, bis sie etwas cooles entdeckt und einen aufschlussreichen artikel geschrieben haben. fahren sie nicht mit der nächsten arbeit fort. konzentrieren sie sich stattdessen darauf, die ergebnisse ihrer arbeit in die welt hinauszutragen, und streben sie nach echten interaktionen mit menschen, nicht nur über ihre einzelne veröffentlichung, sondern über das gesamtbild, das sie aktiv recherchieren. oder noch besser: informieren sie die leute über ein nützliches open-source-tool, das sie erstellen und pflegen und das ihre wichtigsten ideen erfasst.

ein üblicher erster schritt besteht darin, einen vorabdruck ihres artikels auf arxiv zu veröffentlichen und dann einen „beitrag“ zu veröffentlichen, der die veröffentlichung ihres artikels ankündigt. stellen sie dabei sicher, dass sie ihren beitrag mit einer konkreten, substanziellen und verständlichen aussage beginnen. das ziel besteht nicht darin, den leuten zu erzählen, dass sie einen aufsatz veröffentlicht haben, der keinen inneren wert hat. das ziel besteht darin, ihre hauptargumente direkt und ansprechend zu vermitteln. (ja, ich weiß, es ist schwer, aber es ist notwendig).

was vielleicht noch wichtiger ist: der prozess endet nicht mit dem ersten „start“, sondern ist erst der anfang. da sie nun in projekte und nicht nur in veröffentlichungen investieren, werden ihre ideen und ihre wissenschaftliche kommunikation das ganze jahr über weitergeführt, weit über einzelne veröffentlichungen hinaus.

wenn ich doktoranden dabei helfe, über ihre arbeit zu twittern, ist es nicht ungewöhnlich, dass ihre ersten beiträge nicht die erhoffte aufmerksamkeit erhalten. studierende betrachten dies oft als bestätigung ihrer angst vor der veröffentlichung ihrer forschungsergebnisse und werten es als ein weiteres zeichen dafür, dass sie mit der nächsten arbeit fortfahren sollten. offensichtlich ist diese idee falsch.

es gibt eine fülle persönlicher erfahrungen, erfahrungen aus zweiter hand und beobachtungen, die zeigen, dass es sehr sinnvoll ist, in dieser angelegenheit beharrlich zu bleiben (was übrigens nicht viele menschen tun). das heißt, mit seltenen ausnahmen erfordert eine gute ideengewinnung, dass sie den leuten wichtige dinge mehrmals in verschiedenen kontexten erzählen und ihre idee und ihre umsetzung der idee kontinuierlich verfeinern, bis die community diese ideen mit der zeit aufnehmen kann oder bis die das fachgebiet erreicht das richtige entwicklungsstadium, in dem diese ideen leichter verständlich sind.

sammeln sie spannung

tipps zum veröffentlichen von open-source-forschung

es ist eine gute sache, menschen für ihre forschung zu begeistern, aber die umsetzung ihrer ideen in relevante nachgelagerte anwendungen durch veröffentlichung, mitarbeit und entwicklung von open-source-tools kann oft eine größere wirkung erzielen.

das ist nicht einfach: das einfache hochladen der codedateien zusammen mit der readme-datei auf github reicht nicht aus. ein gutes repository ist die „heimat“ ihres projekts und wichtiger als jede von ihnen veröffentlichte arbeit.

gute open-source-forschung erfordert zwei nahezu unabhängige qualitäten. erstens muss es sich um eine gute recherche handeln, die neuartig, aktuell, umfangreich und genau ist. zweitens muss es einen klaren nachgelagerten nutzen und geringe reibungsverluste haben.

das ist der wichtigste teil: menschen werden ihre oss-arbeit aus den „falschen“ gründen immer wieder meiden (und andere werden sie immer wieder nutzen). beispielsweise mag ihre forschung objektiv „auf dem neuesten stand“ sein, aber aller wahrscheinlichkeit nach werden die leute alternativen mit weniger reibungsverlusten den vorzug geben. andererseits verstehen doktoranden oft nicht, warum menschen ihr werkzeug verwenden, weil sie beispielsweise ihre kreativsten aspekte nicht voll ausschöpfen. es lohnt sich nicht, sich dagegen zu wehren, sondern es lohnt sich, es zu verstehen und zu verbessern.

darauf aufbauend möchte ich einige meilensteine ​​auflisten, auf die man beim open-sourcing von forschungsergebnissen achten sollte.

meilenstein 0: veröffentlichte inhalte verfügbar machen

es hat keinen sinn, code zu veröffentlichen, den niemand ausführen kann. in ihrem forschungsgebiet möchten diese personen ihre ergebnisse reproduzieren. vielleicht gehen sie über ihre arbeit hinaus und zitieren ihre forschungsergebnisse. diese menschen sind geduldiger als andere benutzertypen. dennoch werden sie große unterschiede in der akademischen wirkung feststellen, je nachdem, wie einfach sich der code patchen lässt.

meilenstein 1: veröffentlichte inhalte nützlich machen

zusätzlich zu den menschen in ihrer nische sollten sie sicherstellen, dass ihre veröffentlichung für ein publikum nützlich ist, das das projekt tatsächlich zum aufbau anderer dinge nutzen möchte. in der forschung zur künstlichen intelligenz kommt dieser meilenstein selten von selbst. sie sollten sich viel zeit nehmen, um über die probleme nachzudenken, die menschen zu lösen versuchen (forschung, produktion usw.) und darüber, wo ihre ki-bemühungen helfen können. wenn sie dies richtig machen, wird es viele vorteile haben, vom projektdesign über die offengelegte api bis hin zur präsentierten dokumentation/beispiele.

meilenstein 2: releases verständlich machen

für ki-forscher ist das schwierig, aber wir sollten uns darüber im klaren sein, dass eine nützliche version, in der alles technisch verfügbar und einigermaßen erklärbar ist, nicht bedeutet, dass die mehrheit ihrer potenziellen benutzer dies finden wird. die version ist leicht verständlich und ausreichend, um sie zu behalten beschäftigt mit dem lernen oder ausprobieren.

der bekannte ki-wissenschaftler andrej karpathy schrieb zu diesem thema einen artikel: „man baut etwas, und dann muss man rampen bauen, um dorthin zu gelangen.“ ben clavie hat ebenfalls ausführlich darüber geschrieben und hat einen großen anteil daran, die arbeit, die wir an colbert geleistet haben, zugänglicher zu machen.

meilenstein 3: finden sie heraus, warum die offensichtliche alternative fehlgeschlagen ist, und haben sie geduld

wir begannen damit, darüber zu sprechen, zwei schritte vorauszudenken. das ist meiner meinung nach entscheidend, bedeutet aber auch, dass die meisten menschen nicht verstehen, warum sie eine lösung für ein problem brauchen, das sie noch nicht klar erkennen können. ich denke, ein teil ihrer aufgabe besteht im laufe der zeit darin, einen fall aufzubauen. sammeln sie beweise und erklären sie auf leicht verständliche weise, warum offensichtliche alternativen (denken sie schritt für schritt) scheitern.

meilenstein 4: verstehen sie die art der benutzer und nutzen sie diese für wachstum

als ich colbert und dspy startete, bestand meine erste zielgruppe aus forschern und professionellen ml-ingenieuren. mit der zeit habe ich gelernt, das loszulassen und zu verstehen, dass man ein größeres publikum erreichen kann, diese aber andere dinge wollen. bevor sie etwas unternehmen, blockieren sie weder indirekt noch direkt verschiedene kategorien potenzieller benutzer. diese situation kommt viel häufiger vor, als man denkt.

zweitens müssen wir bei der suche nach benutzern ein gleichgewicht zwischen den beiden benutzertypen finden. einerseits erfordern erfahrene bauherren mit fortgeschrittenen anwendungsfällen möglicherweise eine hohe investition, tendieren aber dazu, bestimmte anwendungsfälle im sinne einer forschung voranzutreiben, was sich auszahlen kann. öffentliche bauherren hingegen sind in der regel keine ml-experten, aber sie entwickeln und teilen ihre erkenntnisse häufig in der öffentlichkeit, sind für einen größeren anteil am groß angelegten wachstum verantwortlich und regen sie dazu an, mehr über ihre anfängliche lernhypothese nachzudenken. sie brauchen beides.

meilenstein 5: aus interesse eine wachsende community machen

der wahre erfolg der oss-arbeit liegt in der präsenz einer gemeinschaft und ihrem kontinuierlichen wachstum unabhängig von ihren bemühungen. im allgemeinen sollte eine gute community organisch sein, aber sie müssen aktiv daran arbeiten, sie zu formen, indem sie beispielsweise beiträge und diskussionen willkommen heißen und nach möglichkeiten suchen, interesse in beiträge oder eine art forum (wie discord oder github) umzuwandeln.

meilenstein 6: interesse in aktive, kollaborative und modulare downstream-projekte umwandeln

die chancen stehen gut, dass ihr oss-projekt im anfangsstadium nicht alle probleme ihrer ursprünglichen vision löst. ein gut konzipiertes projekt besteht oft aus mehreren modularen teilen, die es ihnen ermöglichen, forschungskooperationen (oder andere vorhaben) zu initiieren und es neuen teammitgliedern zu ermöglichen, nicht nur das projekt voranzutreiben, sondern auch wesentliche teile des projekts zu besitzen, wodurch es schneller oder größerer einfluss genommen wird ihre ideen und verbessern gleichzeitig das projekt erheblich. beispielsweise verfügt dspy derzeit über separate teams, die forschungs- und entwicklungsbemühungen in den bereichen just-in-time-optimierung, programmierabstraktion und reinforcement learning leiten. die komponenten von colbert wie externe anwendungsprogrammierschnittstellen, die zugrunde liegende retrieval-infrastruktur und die kernmodellierung werden hauptsächlich von verschiedenen personen in verschiedenen projekten vorangetrieben.

kommen sie, fassen sie zusammen. die einführung von open-source-forschung erfordert gute forschung und gute open-source-ergebnisse. es ist schwer, dieses gleichgewicht zu finden, aber wenn man es einmal richtig hinbekommt, kann es sehr lohnend sein. ich persönlich habe lange gebraucht, um das zu begreifen und zu verinnerlichen. dies war dem wiederholten feedback meiner doktorvater chris potts und matei zaharia sowie dem wertvollen input von heather miller und jeremy howard zu verdanken.

das kriterium für die bewertung von forschung ist der „zuwachs“ gegenüber dem bisherigen wissen, doch bevor man den „zuwachs“ sinnvoll ausnutzen kann, muss die software selbst wirksam sein. damit software effektiv ist, muss auch ihre dokumentation effektiv sein: die leute werden nicht alle nachgelagerten möglichkeiten sehen, wie sie die software nutzen sollen, es sei denn, sie zeigen sie ihnen. das heißt, bis diese aufgaben von einer unabhängigen gemeinschaft entwickelt werden können.

abgesehen davon besteht die wichtigste fähigkeit in diesem abschnitt darin, zu „veröffentlichen“, wirklich zu veröffentlichen, oft zu veröffentlichen und daraus zu lernen.

veröffentlichen sie ein neues papier

investieren sie weiterhin in ihre eigenen projekte

wenn man die fünfte regel liest, stellt sich natürlich die frage: wo verbringen doktoranden so viel zeit mit open-source-software? wann kann echte forschung betrieben werden?

die praktische antwort ist, dass die meiste zeit, die für open source aufgewendet wird, für die durchführung neuer und spannender forschung genutzt werden könnte. die beiden sind nicht so getrennt, wie sie scheinen. warum sagst du das?

erstens können sie neue probleme sehr früh intuitiv erkennen, wenn sie an der spitze dieser art von open-source-software-arbeit stehen. sie werden das problem instinktiver verstehen, als sie es sonst tun würden. darüber hinaus bietet die von ihnen aufgebaute community häufig direktes feedback zu ihren eigenen methodenprototypen und ermöglicht ihnen den zugang zu talentierten mitarbeitern, die die bedeutung des problems verstehen. sie erhalten außerdem zugang zu nützlichen „vertriebskanälen“, um sicherzustellen, dass jeder neue artikel, den sie in diesem bereich veröffentlichen, ihr publikum erreicht und ihre bestehende plattform stärkt.

„colbert“ zum beispiel ist nicht nur eine veröffentlichung anfang 2020. mittlerweile gibt es wahrscheinlich etwa zehn folgepapiere, in denen in verbessertes training, geringerer speicherbedarf, schnellere abrufinfrastruktur, bessere domänenanpassungsfähigkeit und bessere anpassung an nachgelagerte nlp-aufgaben investiert wird. ebenso ist dspy kein aufsatz, sondern eine sammlung von aufsätzen zu programmierabstraktion, hinweisoptimierung und nachgelagerten programmen. viele dieser artikel wurden von verschiedenen hervorragenden autoren verfasst, und ihre arbeit hatte eine enorme wirkung, unter anderem dadurch, dass sie über open-source-softwarekanäle ein großes publikum erreicht hat.

ein gutes open-source-tool kann also modulare werke erstellen, die von neuen forschern und mitwirkenden erkundet, besessen und weiterentwickelt werden können.

referenz-originaltext: https://github.com/okhat/blog/blob/main/2024.09.impact.md