Wie entwickeln Sie sich in einer Fähigkeit weiter, wenn Sie der Unternehmensleiter in diesem Bereich sind?

Ich bin Mitglied in einem kleinen Startup. Als wir beschlossen, ein wenig KI in unser Produkt aufzunehmen, wurde ich gebeten, dies zu untersuchen, einfach weil ich es interessant fand und einige KI-/Maschinelles-Lernen-Kurse an der Uni (Bachelor) belegt hatte.

Heute bin ich jetzt Leiter der zentralen KI-Komponente unseres Produkts. Das einzige Problem, ich brauche (und will) mehr Erfahrung in dem Bereich.

Wenn dies eine übliche Position wäre, würde ich davon ausgehen, dass ich in eine große Abteilung eintreten und Zeit damit verbringen würde, unter erfahrenen Entwicklern mit viel Erfahrung auf diesem Gebiet zu lernen und zu wachsen. Das alte Sprichwort „Umgebe dich mit Menschen, die besser sind als du“.

So wie es heute aussieht, sind die meisten Entscheidungen, die ich aufgrund mangelnder Erfahrung treffe, Trial-and-Error, was uns ausbremst. Ohne den Zustand der Branche vollständig zu verstehen, verbrachten wir oft ziemlich viel Zeit mit der Implementierung einer Lösung, nur um einen Monat später festzustellen, dass wir das Rad neu erfanden oder etwas taten, von dem bekannt war, dass es nicht effektiv ist. Und natürlich werde ich den Leuten im Unternehmen, die unter mir KI-Arbeit leisten, nicht das beste Wachstumsumfeld bieten.

Zugegeben, ich habe seit meinem Antritt in meiner Position definitiv an Fähigkeiten zugenommen, aber ich würde immer noch zögern, mich selbst als etwas anderes als ein „mittleres“ Qualifikationsniveau auf diesem Gebiet zu bezeichnen.


Um dies zu einer wertvollen Frage für alle zu machen:

Welche praktischen Schritte könnte mein Unternehmen oder ich unternehmen, um uns in einem Bereich, in dem die Erfahrung des Unternehmens mehr oder weniger autodidaktisch ist, schnell auf den neuesten Stand zu bringen?

In unserem Fall haben wir wahrscheinlich nicht die Ressourcen, um massive Erfahrungen einzubringen, aber jeder Rat dazu wäre trotzdem willkommen.

Sie werden nicht schnell auf Touren kommen.
Sehr gute Frage. Lernen im Job ist schön und gut, aber manchmal hat man das Gefühl, dass etwas fehlt. Es ist oft schwierig, die Zeit zu finden, um Best Practices, Tricks des Handels usw. zu lernen.
Lesen, üben, programmieren, diskutieren usw.
Ohne es vorher wirklich so zuzugeben, hast du mir klar gemacht, dass ich auch in deiner Haut stecke. Tolle Frage.
Meiner Meinung nach werden Sie sich natürlich verbessern, wenn Sie diesen Trial-and-Error-Prozess durchlaufen. Im Gegensatz zu einem Bastler können Sie nicht einfach von etwas Unüberlegtem weggehen.
Sie arbeiten in der F&E-Welt der SW-Entwicklung. Es unterscheidet sich stark von der Welt der Web-/CRUD-Entwicklung. Sehr selten ist in der F&E-Welt ein „erfahrener Experte“ verfügbar. Das ist es, was Ihr Unternehmen von Ihnen erwartet. Während Versuch und Irrtum in Ordnung sind, wenn Sie anfangen, etwas zu lernen, sollten Sie irgendwann sachkundiger werden und anfangen, tatsächliche Gründe für die Richtung zu haben, die Sie einschlagen. Es sieht nicht so aus, als würden Sie auf die nächste Stufe wachsen. Sie sollten anfangen, einige der formelleren Techniken zur Problemlösung zu lernen, um zu lernen, fundiertere Entscheidungen zu treffen.
Dies ist im Grunde eine Kauf-gegen-Bau-Entscheidung. Ein Unternehmen könnte einen Experten einstellen oder seine bestehenden Mitarbeiter lernen lassen, was sie brauchen. Es gibt keine kostenlose Option.
Als ich die Zusammenfassung der Frage zum ersten Mal las, war meine innere Reaktion: „Man wächst in einer Fähigkeit, indem man darin führend ist“ :) Der Meister einer Sache sein zu müssen, treibt uns dazu, zu lernen.
Falls Sie es nicht wissen, empfehle ich das Buch "Artificial Intelligence: A Modern Approach".
Promovieren Sie in KI oder stellen Sie jemanden ein, der dies getan hat! Idealerweise möchten Sie mindestens 3 Personen, die ihre KI-Promotion an verschiedenen Universitäten durchgeführt haben.
Extrem gute Frage. Ich hoffe nur, dass die Antworten so gut sein werden wie diese.
Data Science SE ist ein guter Ort, fragen Sie mich auch gerne direkt.
In meiner früheren Firma brachten wir einen Berater mit, „der zufällig ein Freund des CEO des Eigentümers war“, und dieser Berater stellte uns Fragen, um zu erfahren, was wir getan haben, was wir tun, was unser Ziel ist. Er würde Lösungen vorschlagen und Technologien einführen, die wir nie für möglich gehalten hätten. Was mich betrifft, so stand ich jeden Monat vor neuen Problemen, und wenn ich sie nicht effizient löst, wird unser Team zu spät kommen. Daher habe ich früher online nachgefragt, z. B. bei Stackexhange und anderen sogar kostenpflichtigen Q&A-Websites, um eine Meinung von Experten einzuholen.
Es ist schwierig, es gleich beim ersten Mal richtig zu machen, daher wird es immer Trail and Error geben. Wenn jemand beim ersten Mal etwas richtig gemacht hat, hat er es entweder schon einmal gemacht oder es war Glück. Sie werden immer eine fundierte Vermutung auf der Grundlage des gesammelten Wissens treffen, das Sie im Laufe der Jahre erworben haben. Früher habe ich ungefähr 11 Stunden täglich gearbeitet, wobei ich mindestens 3 Stunden zum Lernen hatte.

Antworten (11)

Sie gehen im Wesentlichen den gleichen Weg wie alle, die in ihrer Freizeit etwas lernen möchten. Wenn es keine internen Experten gibt, suchen Sie sie woanders.

Die folgenden sind die besten Ressourcen

  • Seminare,
  • Konferenzen,
  • Kurse,
  • Online-Artikel,
  • Da es sich um eine ziemlich neue Technologie handelt, sollten Sie die wissenschaftliche Veröffentlichung auf diesem Gebiet in Betracht ziehen. Sie könnten erwägen, sich an einen Informatiker von Universitäten zu wenden, der vielleicht ein wenig Zeit hat, um Ihnen eine Anleitung zu geben, worauf Sie achten sollten.

Die Preise und die Effizienz verschiedener Methoden können unterschiedlich sein, aber es hängt davon ab, wo Sie stehen und was Ihr Arbeitgeber bereit ist, auszugeben.

Wenn Sie sich nicht sicher sind, wo Sie nach solchen Orten suchen sollen, können Sie jederzeit auf [MeetUp](meetup.com) nachsehen, ob es in Ihrer Nähe welche gibt. Eine andere Möglichkeit wäre, zurück zu Ihrer Schule (oder einer örtlichen) zu gehen und mit den Professoren/Studenten in einer geeigneten Klasse zu sprechen.
Online Kurse. Schauen Sie sich EDx oder Coursera an.
Sie haben den Stapelüberlauf vergessen.
Zu Ihrem Vorschlag, mit einem Experten auf diesem Gebiet von einer Universität zu sprechen. Haben Sie einen Tipp zur Kontaktaufnahme? (Oder ist das eine ganz neue Frage zur Wissenschaft wert?)
Auf Academia hätten Sie mehr Ansichten über die ganzen Dinge, aber wenn Sie versuchen, einige Veröffentlichungen zu finden (z. B. arXiv), könnten Sie einige Leute identifizieren, die in diesem Bereich arbeiten. Und dann sind Sie sich über einen universellen Ansatz nicht sicher, aber Sie könnten einen Anruf oder eine E-Mail versuchen. Oder wenn es nicht zu weit weg ist, geh selbst hin. Es würde wahrscheinlich helfen, wenn Sie zeigen, dass Sie ihre Arbeit gelesen haben und konkrete Fragen dazu haben.
@SCB bezüglich Ihrer Frage zur Kontaktaufnahme mit jemandem aus der Wissenschaft. Ich bin Doktorand und würde mich sehr freuen, mit jemandem bei einer Tasse Kaffee über meine Forschung zu sprechen, auch wenn die Einladung aus heiterem Himmel kommt. Allerdings bin ich "nur" ein Doktorand, wenn Sie mit einem PostDoc oder einem Professor sprechen möchten, sind Ihre Chancen ziemlich gering. Ein Doktorand kann Ihnen jedoch immer noch sehr helfen, indem er nicht nur Fragen beantwortet, sondern Sie auch auf wichtige Artikel, den Stand der Technik, gute Zeitschriften usw. hinweist.
@SCB Sie könnten versuchen herauszufinden, ob sich in Ihrer Nähe so etwas wie eine IEEE Computer Society trifft. Viele große Städte haben sie und die meisten Universitäten mit bemerkenswerten Informatikprogrammen haben Kapitel. Die Treffen würden hauptsächlich zum Netzwerken genutzt, also selbst wenn kein KI-Experte in dem Treffen vorhanden ist, finden Sie vielleicht jemanden, der jemanden kennt ...

Die Mehrheit der Bereiche, in denen ich kompetent bin, habe ich mir in meiner eigenen und meiner Arbeitszeit selbst beigebracht, wenn sich die Gelegenheit dazu bot. Keine Vorgesetzten zu haben bedeutet, dass Sie von Grund auf arbeiten, aber das ist nicht unbedingt eine schlechte Sache für Sie persönlich. Es bedeutet, dass Ihr Wissen ziemlich gründlich wird.

Suchen Sie nach Kursen usw. die Sie vielleicht in der Lage sein könnten, Ihren Arbeitgeber davon zu überzeugen, dafür zu bezahlen. Es ist wichtig, die Lücken zwischen dem, was Sie selbst lernen können, und den Best Practices der Branche zu schließen.

Ein Vorteil, den ich fand, war, dass Sie nicht nur an das gebunden sind, was gelehrt wird, und manchmal Probleme auf einzigartige Weise lösen, weil Sie zu ungebildet sind, um es besser zu wissen. In einem persönlichen Beispiel habe ich zwei Felder kombiniert, um ein Problem zu lösen, und mir nicht viel dabei gedacht, weil ich nur so herausfinden konnte, wie es geht. Aber die Lösung wird jetzt in 11 Regierungsabteilungen und den meisten Schulen in zwei kleinen Ländern verwendet und hat mir sogar eine Audienz bei einem König eingebracht.

Dies ist IMO die beste Antwort. Das einzige, was fehlt (was auch bei allen anderen Antworten weggelassen wird), ist die Idee, neues Wissen zu entwickeln, wenn Sie wirklich an der Spitze eines bestimmten Bereichs arbeiten. Nicht alles Wissen stammt aus externen Quellen. Es ist möglich, neues Wissen zu schaffen.
Diese Methode birgt das Risiko, schlechte Angewohnheiten zu erlernen, wie alles Autodidaktische.
@Wildcard Sehr guter Punkt, ich habe das tatsächlich getan, da ich ein bestimmtes Problem aus einer nicht standardmäßigen Sichtweise in zwei Feldern angegriffen und zusammengefügt habe. Ich werde versuchen, einen Weg zu finden, es der Antwort hinzuzufügen.
@WeckarE. Es gibt keine Garantie dafür, dass "Vorgesetzte" ihre eigenen schlechten Gewohnheiten nicht weitergeben - der Trick besteht in allen Fällen darin, sich so vielen Informationsquellen wie möglich auszusetzen und nie aufzuhören zu lernen
@HorusKol Deshalb empfehle ich persönlich immer, neue Themen in einem akademischen oder zumindest einem Klassenzimmer zu erkunden. Eine Gruppenanalyse liefert einen wirklich guten Müllpuffer - meistens.
@WeckarE. nicht unbedingt in der Technik. Die Idee meines Programmierdozenten zur Versionskontrolle war, Dropbox zu verwenden. Als sie sah, wie ich Mercurial benutzte, sagte sie: „Oh, das sieht interessant aus, wir sollten uns das unbedingt ansehen“. Und sie war von der Abteilung für Programmiersprachen.

So wie es heute aussieht, sind die meisten Entscheidungen, die ich aufgrund mangelnder Erfahrung treffe, Trial-and-Error, was uns ausbremst.

Warum dann nicht jemanden mit mehr Erfahrung auf diesem Gebiet einstellen?

Wenn dies eine übliche Position wäre, würde ich davon ausgehen, dass ich in eine große Abteilung eintreten und Zeit damit verbringen würde, unter erfahrenen Entwicklern mit viel Erfahrung auf diesem Gebiet zu lernen und zu wachsen. Das alte Sprichwort „Umgebe dich mit Menschen, die besser sind als du“.

Dieser Spruch gilt immer noch. Sie sind diese größere Abteilung, aber Ihnen fehlen die leitenden Entwickler mit viel Erfahrung auf diesem Gebiet . Es sieht so aus, als würde die Einstellung eines solchen Senior-Entwicklers dazu beitragen, das Expertenwissen auf diesem Gebiet für Ihr Unternehmen und das Team zu haben und aufzubauen.

Wir haben wahrscheinlich nicht die Ressourcen, um massive Erfahrung einzubringen

Es kostet, entweder indem Sie einen anderen erfahrenen Mitarbeiter einstellen oder Sie zu einem machen. Möglicherweise gibt es einen Mittelweg in Form von Beratungsunternehmen, die möglicherweise die Anzahl der von Ihnen durchgeführten Versuche und Irrtümer reduzieren können.

Dies ist eine Lösung, aber es ist nicht immer möglich, jemanden (insbesondere einen erfahrenen Entwickler) einzustellen, nur um Wissen in Ihr Unternehmen einzubringen.
Überlegen Sie, ob OP an einem Ort in Zentralafrika gelebt hat. Wäre es einfach, einen erfahrenen KI-Experten dorthin zu verlegen? Außerdem: Remote Working ist wirklich nicht einfach, wenn man es legal über Kontinente hinweg machen will.

Ich bin in einer ähnlichen Situation. Ich bin der leitende F&E-Entwickler in einem ziemlich kleinen Unternehmen (25 Mitarbeiter).

Ich lerne gerne neue Dinge, deshalb besuche ich ständig Kurse. Udacity ist super, Edx und Coursera etc. auch. Da kann man viel lernen, auch wenn man keine Kurse belegt und einfach nur stöbert, dann sieht man, welche Themen und Tools "in" sind.

In Bezug auf das Lernen von KI gibt es einen großartigen Kurs zum Thema Deep Learning auf Udacity. Es basiert auf der Google TensorFlow-Bibliothek, die noch recht neu und sehr leistungsfähig ist.

Ich habe diesen Kurs gemacht und mich dann daran gemacht, mein eigenes neuronales Netz zu bauen, um Fußballspiele vorherzusagen.

Eine andere Möglichkeit, Ihre Fähigkeiten zu entwickeln und zu sehen, wie Sie abschneiden, ist das Programmieren im Wettbewerb. Kaggle ist eine großartige Website für Herausforderungen beim maschinellen Lernen. Ich habe kürzlich an einer Anfänger-Challenge zur Blattklassifizierung teilgenommen und bin derzeit etwa 200. von 400 Teilnehmern, also weiß ich, dass ich noch viel zu tun habe, um mich zu verbessern! Es gibt dort Foren, in denen Sie Fragen stellen können, Leute teilen Python-Notebooks und so weiter, also gibt es viele Möglichkeiten, etwas zu lernen.

Außerdem ist es wichtig, mit Menschen zu sprechen (oder mit einer Person zu sprechen, die mit Menschen spricht). Ich habe einen Freund in Cambridge, der viele Meetups besucht und über die neuesten Trends und Entwicklungen auf dem Laufenden ist. Ich bleibe hauptsächlich deshalb in Kontakt, weil er ein cooler Typ ist und wir gerne Ideen austauschen, aber auch, weil er mich wissen lässt, was los ist.

Überhaupt nicht davon überzeugt, dass kompetitive Codierung sinnvoll ist. Kaggle mag anders sein, aber viele dieser Sites bevorzugen Eigenschaften, die leicht zu messen sind (wie der Speicherverbrauch), gegenüber denen, die schwer zu messen sind (wie Wartbarkeit).
Kaggle schaut sich nicht einmal den Code an, es geht darum, wie der Algorithmus bei der Kategorisierung von Dingen usw. funktioniert. Normalerweise laden Sie eine Eingabe-CSV-Datei herunter, erstellen eine Ausgabe-CSV-Datei und laden diese zur Auswertung hoch. Es spielt keine Rolle, welche Sprache, welches Framework Sie verwenden usw. Wenn Sie wissen möchten, wie gut Sie im maschinellen Lernen sind, dann denke ich, dass dies ein anständiger Benchmark ist. Ich habe nur einen Wettbewerb gemacht, aber ich denke, ich werde noch mehr machen.
Kaggle ist ein guter Ort, um Ihre Ansätze so gut wie möglich mit dem Strom zu messen - es kann Ihnen ein Gefühl für den Platz geben (über den öffentlichen Rang). Obwohl einige der Techniken, die zum Gewinnen von Wettbewerben verwendet werden – wie hochkomplexe Ensembles oder das Suchen und Verwenden von Datenlecks (wobei die beste Vorgehensweise darin besteht, dass Sie dasselbe Leck entfernen und Ihr Projekt neu starten) – sich nicht gut auf Branchenpraktiken übertragen lassen. Auch das Ranking wird durch das Kopieren von Skripten etwas verschleiert. Wenn Sie 200/400 auf Ihren eigenen Code setzen, ist Ihr echter Vergleich mit den anderen Wettbewerbern wahrscheinlich günstiger, als rohe 50 % vermuten lassen.
Eine weitere Möglichkeit, kompetitives Programmieren zu betreiben, sind interne Hackathons. Jeder bekommt die Chance, sich vor seinen Mitschülern zu zeigen und die Gruppe kann voneinander lernen.

Unterrichten. Teilen Sie Ihr Verständnis mit dem Rest des Teams.

Wenn Sie jemand anderen unterrichten müssen, müssen Sie:

  • innehalten und Dinge überdenken, um sie nachvollziehbar zu machen
  • entdecken Sie Ihre eigenen Annahmen
  • eigene Wissenslücken entdecken
  • Entdecken Sie Wissenslücken in Ihrem Team

All dies wird Sie in Ihrem eigenen Bereich verbessern, Ihr Team verbessern und Ihren Arbeitsplatz im Allgemeinen ein wenig besser machen.

Zusätzlich zu den anderen Antworten:
Sie sprechen von Wachstum für die Leute im Unternehmen, die unter mir KI-Arbeit leisten : Gibt es irgendetwas, das Sie tun können, um ihre Ressourcen zu nutzen? Sie sind vielleicht nicht so erfahren wie Sie, aber sie haben ihre einzigartigen Gedanken, Einsichten, Suchtechniken usw.

Warum lassen Sie sie nicht mehr recherchieren, um zu verhindern, dass das Rad neu erfunden wird oder etwas getan wird, von dem bekannt ist, dass es nicht effektiv ist . Nutzen Sie Ihre Kollegen als Sparringspartner, um die nächsten Schritte zu entwickeln.

Ich bin in der gleichen Position wie Sie (obwohl ein etwas anderer Bereich der Softwareentwicklung), daher kann ich mich vollständig auf Ihre Situation beziehen.

Andere Leute haben gute Antworten zum Lernen über die typischen Kanäle (Bücher usw.) gegeben, was ein guter Rat ist. Im Laufe der Zeit werden Sie besser darin sein, effektivere Ressourcen auszuwählen.

Eine Sache, die ich für Sie und andere in der gleichen Situation hinzufügen möchte, ist, ehrlich zu Ihren Kollegen und Vorgesetzten zu sein. Haben Sie keine Angst zu sagen, dass Sie es nicht wissen, geben Sie die Fehler zu, die Sie gemacht haben, weil jeder es tut. Dies ist aus Sicht der Menschen, die Sie leiten, sehr wichtig, weil Sie ihr Vertrauen brauchen.

Und natürlich werde ich den Leuten im Unternehmen, die unter mir KI-Arbeit leisten, nicht das beste Wachstumsumfeld bieten.

Sie können selbst ein gutes Beispiel für das Lernen geben, auch indem Sie Ressourcen teilen, die Sie für effektiv halten usw. Es ist also nicht so schlimm, wie Sie vielleicht denken.

Viel Glück!

„Sie können ein gutes Beispiel dafür sein, wie Sie selbst lernen …“ Wenn Sie diesen Ansatz bei Mitarbeitern anwenden, implizieren Sie, dass Sie erwarten, dass sie Fähigkeiten erlernen, die sie benötigen, um ihre Arbeit in ihrer Freizeit zu erledigen. Ihnen die (bezahlte) Zeit zum Lernen zu geben, könnte ein guter Ansatz sein, aber die Implikation, dass Sie erwarten, dass sie zusätzliche, aber unbezahlte Stunden für die Arbeit aufwenden, wird nicht gut ankommen (und das sollte es auch nicht; es wirkt extrem unaufrichtig, auch wenn es nicht so gemeint war).
Mit selbstständig meinte ich Lernen ohne große Anleitung, selbst entscheiden, was man lernt, etc. während der Arbeitszeit. Entschuldigen Sie das Missverständnis, stimmen Sie dem, was Sie gesagt haben, voll und ganz zu.

Ich würde vorschlagen, mit einer KI-Abteilung/einem Professor einer Universität zusammenzuarbeiten. Sie berechnen normalerweise viel weniger als professionelle Berater und haben die neuesten Updates auf dem Gebiet. Sie können Sie auch mit ihren ehemaligen Schülern in Verbindung bringen, die an ähnlichen Problemen gearbeitet haben. Ich war vor einigen Jahren in einer ähnlichen Situation, als wir mit einem sehr unerfahrenen Team einige fortgeschrittene Entwicklungen in der Telekommunikation durchführten. Wir arbeiteten mit einer Universität zusammen und hatten regelmäßige wöchentliche Treffen mit dem Professor. Es war ein Kurskorrekturmechanismus, und der Professor informierte uns auch über die neuesten Arbeiten auf diesem Gebiet. Es hat uns enorm geholfen.

Podcasts!

Ich höre fast täglich viele Dev & Tech-Podcasts - wann immer ich pendle, ist das eine hervorragende Gelegenheit und besser als die üblichen Radiosender.

Mein Wissen ist dadurch in vielen Bereichen gewachsen und Sie können tiefe Einblicke von erfahrenen Branchenexperten erhalten, ohne Ihre wertvolle Freizeit zu opfern.

Hören Sie im Auto, im Zug, im Bus, beim Gassigehen mit dem Hund, im Fitnessstudio, beim Fernsehen (nur eine Kopfhörerbuchse), beim Warten in der Warteschlange, zur Mittagszeit Ihres Tagesjobs, im Bett vor dem Schlafengehen oder beim Aufwachen, beim Sonnenbaden etc.

Die sehr einfache Antwort lautet, dass Ihre Arbeitsergebnisse eine neue Kategorie enthalten müssen: „Forschung“.

Wenn Sie eine agile Methodik anwenden, enthält Ihr Sprint eine Aufgabe zur Recherche des Stands der Technik auf diesem Gebiet.

Der effektivste Weg, dies bei großen technischen Herausforderungen wie dem Erlernen von ML zu tun, das ein riesiges Feld mathematischer, algorithmischer und technischer Aspekte ist, besteht darin, einer Abteilung in einem etablierten Unternehmen beizutreten. Als gestandener Routinier kehren Sie ein paar Jahre später in ein Startup zurück.

Wahrscheinlich haben Sie einige der Erfahrungen, die Sie gerade in Ihrem Startup benötigen, um sich für diese Rollen zu bewerben.