Wie VK Data Scientists Werbung effektiv machen

Letztes Jahr haben wir Artem Popov, den Teamleiter des VK Performance Advertising-Teams, empfangen. Wir teilen Ihnen das Protokoll der Sendung und die Aufzeichnung mit.








Mein Name ist Artem, ich bin der Leiter der Performance-Werbung bei VK. Unser Team engagiert sich für die Tatsache, dass Werbung auf VK einerseits effektiver, für Werbetreibende rentabler und für Nutzer interessanter wird. Dies ist ein großes Produktziel.



Auf der anderen Seite sind wir technisch gesehen ein Team von ML-Ingenieuren, ziemlich gewöhnlichen Entwicklern, die viel Zeit mit Aufgaben im Zusammenhang mit Data Science und ML verbringen. Heute möchte ich über diese beiden Themen sprechen, weil sie beide für mich interessant sind, ich spreche gerne darüber. Ich hoffe sehr, dass wir Live-Kommunikation haben werden; Wenn jemand die Sendung sieht, ist es interessanter, wenn Sie Fragen schreiben.



Insgesamt möchte ich unser Gespräch in zwei Blöcke unterteilen. Im ersten werde ich über verschiedene Aufgaben sprechen, die in der Werbung im Schnittpunkt mit der Datenwissenschaft auftreten. Deshalb kann Werbung für einen ML-Spezialisten, für einen Data-Science-Spezialisten ein interessanter Bereich sein. Auf der anderen Seite möchte ich meine Erfahrungen mit dem Einstieg in ein Ingenieur-ML-Projekt teilen, die ich in den vier Jahren, in denen ich ML als Teil der Ingenieurgeschichte gemacht habe, studiert habe. Und darüber sprechen, was in großen Unternehmen zu finden ist, über was aber in verschiedenen Kursen nicht gesprochen wird. Welche Fähigkeiten sind schwer zu erlernen, wenn Sie Data Science oder ML an einer Universität oder in einer Online-Ausbildung studieren? Ich werde versuchen, jedem Thema eine halbe Stunde zu widmen.



Zunächst werde ich über Werbung, Werbetechnologien und Computerwerbung als Forschungs-, Wissenschafts- und Ingenieurstätigkeit sprechen - also über ein Wissensgebiet. Welche Aufgaben gibt es und warum macht es Spaß, sie zu erledigen, wenn es NLP und andere Hype-Dinge gibt, aber über Werbung wird nicht oft gesprochen.



Die allgemeine Herausforderung lautet: Wir haben eine Reihe von Werbetreibenden. Sie können alle Benutzer sein, die das Wissen über ihr Produkt und ihr Geschäft fördern möchten. Sie alle haben ihre eigenen, unterschiedlichen Ziele. Jemand möchte seine Anzeige nur so vielen Menschen wie möglich zeigen. Zum Beispiel hat die konventionelle "Coca-Cola" die Aufgabe, alle über ihre Marke zu informieren, damit sich jeder daran erinnert, dass es ein solches Getränk gibt, dass es ein neues Jahr ist und es keine andere Alternative als dieses Getränk gibt, wenn Sie in den Laden gehen. Ein weiteres gutes Beispiel ist Fairy: Wie viele andere Waschmittel kennen Sie neben ihm? Das ist alles Markenbekanntheit; Große Werbetreibende haben sich zum Ziel gesetzt, sicherzustellen, dass jeder das Wissen hat, dass ein bestimmtes Produkt in seinem Kopf vorhanden ist.



Es gibt andere Ziele. Zum Beispiel mehr angewandte, sogenannte Leistungsziele. In diesem Fall möchte der Werbetreibende, dass Sie der Anzeige folgen und eine Aktion ausführen. Zum Beispiel gingen sie auf die Website und hinterließen einen Antrag auf einen Kredit. Oder Sie haben etwas in einem Online-Shop gekauft. Usw.

Im Allgemeinen besteht die Aufgabe der Werbung darin, neue Benutzer in ein Unternehmen zu bringen (sogenannte Leads) und diese Benutzer dazu zu bringen, etwas Nützliches für den Werbetreibenden zu tun und Gewinn für sein Unternehmen zu erzielen.



Wir haben eine Plattform - einen Ort, an dem Sie Anzeigen schalten können. Im Fall von VK ist dies ein Band; Bei einer anderen Site kann dies beispielsweise ein Banner sein. Der Zweck der Website ist es, mit Werbung Geld zu verdienen und die Aufmerksamkeit der Benutzer für Geld zu verkaufen. Dank dessen bleibt VK ein freies Projekt; Man könnte sich andere Monetarisierungsmodelle vorstellen, aber das Anzeigenmodell funktioniert gut für einen solchen Service.



Nutzer möchten normalerweise keine Anzeigen sehen. Deshalb sind sie nicht zum Dienst gekommen. Es stellt sich jedoch heraus, dass der Werbevertrag genau so funktioniert: Der Nutzer zahlt mit seiner Aufmerksamkeit für die Nutzung des Dienstes. Daher ist es unser Ziel als Werbenetzwerk, sicherzustellen, dass Benutzer nicht verrückt werden, Werbung sie nicht wegdrückt oder abschreckt.



Es wäre absolut großartig, wenn sich die Anzeigen als nützlich für den Nutzer herausstellen würden - das heißt, die beworbenen Unternehmen und Beiträge erwiesen sich für den Nutzer als ebenso interessant wie der reguläre Inhalt. Dies ist im Allgemeinen perfekt.



Wir haben drei Kräfte: den Nutzer, den Werbetreibenden und die Website. Wir müssen eine solche Interaktion zwischen ihnen herstellen, damit jeder von ihnen seine Ziele erreicht. Stellen Sie sich vor: Sie gehen zum VK-Dienst, öffnen den Feed - und sehen den Ort, an dem wir Anzeigen einfügen. Es gibt viele Werbetreibende, die sich für diese Ressource bewerben und genau ihre Anzeigen schalten möchten. Wie kann man jedoch die Anzeige auswählen, die zu einem bestimmten Zeitpunkt für jeden Nutzer geschaltet werden muss?



Die Standardmethode, die in der Werbung aktiv eingesetzt wird, ist die Online-Auktion. Möglicherweise haben Sie im realen Leben oder bei Ebay verschiedene Auktionsoptionen gesehen, zum Beispiel: Es kann eine Situation sein, in der jeder bieten kann. Ein Benutzer sagt - ich wette 10 Rubel, ein anderer kommt herein - setzt 20, der dritte - 100 und so weiter. Es ist jedoch unpraktisch, Auktionen der Art "Wer mehr bezahlt hat, hat gewonnen" in der Internetumgebung durchzuführen, daher werden geschlossene Auktionen verwendet. In diesem Fall macht jeder Teilnehmer stillschweigend eine Wette. Im übertragenen Sinne werden alle Zettel mit den Wetten in einen Topf gelegt, und dann kommt jemand, nimmt sie auseinander, findet das Zettel mit der höchsten Zahl und sagt - Sie haben gewonnen.



Angenommen, es gibt zwei Werbetreibende - zum Beispiel Nike und Coca-Cola. Einer von ihnen ist bereit, 5 Kopeken für jede Anzeige zu zahlen, der andere - 10. Der andere gewinnt und die weitere Entwicklung der Geschichte hängt von der Art der Auktion ab. In der Werbung gibt es zwei Haupttypen: erste und zweite Preisauktionen. Bei einer Erstpreisauktion zahlt der Gewinner den von ihm genannten Preis. Zum Beispiel sagt Coca-Cola: "Ich bezahle 10 Kopeken", ohne die Preise anderer Benutzer zu sehen. Die Auktion sagt - OK, 10 Kopeken. Nike sagt "5 Kopeken", Coca-Cola gewinnt und zahlt 10 Kopeken.



Es gibt jedoch auch eine zweite Preisauktion: In diesem Fall muss der Gewinner genau so viel Geld bezahlen, wie für den Gewinn aller anderen Gebote erforderlich ist. In unserem Fall kann beispielsweise ein Schritt von 1 Kopeken verwendet werden. Stellen Sie sich die Situation vor: Die gleichen Coca-Cola und Nike kommen mit. Coca-Cola sagt: "Ich bin bereit, 100 Rubel für die Show zu bezahlen", und Nike sagt: "Ich bin bereit, 1 Kopeken zu bezahlen." Und Coca-Cola wird sehr beleidigt sein zu erfahren, dass es hätte gewinnen können, wenn man 2 Kopeken statt 100 Rubel bezahlt hätte. Die zweite Preisauktion gilt für alle Teilnehmer als fairer.



Auf dieser Grundlage wird eine bestimmte Immobilie für einen Werbetreibenden als sehr wichtig angesehen: Legen Sie bei Auktionen, die Sie bereit sind, für einen Eindruck zu zahlen, immer einen ehrlichen Höchstpreis fest. Dies ist notwendig, um eine kompetente Handelsstrategie aufzubauen.



Bei der Versteigerung des ersten Preises müssen Sie eine listige Strategie entwickeln, denken Sie - hier können solche und solche Werbetreibenden so viel bieten, aber bei den Versteigerungen des zweiten Preises ist dies nicht erforderlich. Jeder legt den Tarif fest, den er bereit ist, maximal zu zahlen. Wenn Sie gewonnen haben, zahlen Sie genau den gleichen Betrag oder weniger. Wenn nicht, waren Sie nicht bereit, mehr zu bezahlen. Dies ist eine großartige Eigenschaft dieser Art von Auktion, die sich von der Theorie zur weit verbreiteten Verwendung in Werbesystemen verbreitet hat.



Dies war jedoch nicht der Fall. Aus theoretischer Sicht scheint die zweite Preisauktion sehr gut zu sein, und ihre Eigenschaften erlauben es, sehr praktisch zu sein. Wenn wir uns jedoch mit realen Systemen konfrontiert sehen, stellt sich heraus, dass es mehrere Faktoren gibt, die die Beliebtheit von Erstpreisauktionen sicherstellen - aus irgendeinem Grund bevorzugen die Leute, sie zu verwenden, anstatt Zweitpreisauktionen. Einer der beiden Hauptpunkte, zu denen ich sagen möchte, ist, dass die Versteigerung des zweiten Preises nicht transparent ist. Das heißt, wenn eine Werbeauktion von einer Plattform organisiert wird, von der Sie nichts wissen - Sie nehmen nur als Werbetreibender teil -, erfahren Sie, dass Ihr Gebot von (sagen wir) 10 Kopeken gewonnen hat und Sie den zweiten Preis zahlen müssen - lassen Sie es sein 9 Kopeken. Dieser zweite Preis ist undurchsichtig; es ist nicht klar, woher es kam. Im Allgemeinen,Die Website kann den Werbetreibenden leicht täuschen, indem sie sogenannte Fake-Wetten abschließt. Es gibt auch faire Mechanismen für zusätzliche Gebote - zum Beispiel „umgekehrter Preis“: Sie erklären, dass eine bestimmte Auktion nicht für weniger als 9 Kopeken verkauft werden kann, und ein so ehrliches Gebot wird angezeigt. Transparenz ist jedoch sehr wichtig, und mangelnde Transparenz schaltet Werbetreibende aus. Wenn Sie nicht wissen, was unter der Haube eines Werbesystems passiert, müssen Sie erneut einige Strategien entwickeln: Sie können nicht einfach nur die Preise festlegen, die Sie bereit sind zu zahlen.und seine Abwesenheit schaltet Werbetreibende aus. Wenn Sie nicht wissen, was unter der Haube eines Werbesystems passiert, müssen Sie erneut einige Strategien entwickeln: Sie können nicht einfach nur die Preise festlegen, die Sie bereit sind zu zahlen.und seine Abwesenheit schaltet Werbetreibende aus. Wenn Sie nicht wissen, was unter der Haube eines Werbesystems passiert, müssen Sie erneut einige Strategien entwickeln: Sie können nicht einfach nur die Preise festlegen, die Sie bereit sind zu zahlen.



Der zweite Punkt ist, dass die zweite Preisauktion in einem idealen Umfeld gut funktioniert, in dem jeweils nur eine Auktion stattfindet. In einem realen Werbesystem treten herkömmlicherweise Millionen von ihnen pro Sekunde auf. Unter solchen Bedingungen ist es bereits notwendig, Strategien zu entwickeln, und die Idee, dass ein Werbetreibender immer eine einfache und vorgefertigte Strategie für den perfekten Handel bei einer Auktion hat, bricht zusammen.



Ich möchte über die Momente sprechen, die vor dem Hintergrund der Aufgaben beim Entwerfen von Auktionen auftreten - wie Sie sie interessanter, nützlicher usw. gestalten können. Ich möchte zwei Punkte erwähnen. Erstens sollte bei der Auktion anscheinend alles auf der Grundlage des Maximalwerts und des maximalen Geldbetrags geschehen, den das Werbenetzwerk durch den Verkauf von Flächen verdient. In der Realität kann der Wert, der in der Auktion verkauft wird, für die Website auf unterschiedliche Weise ausgedrückt werden - nicht nur in dem Betrag, den der Werbetreibende bereit ist zu zahlen. Zum Beispiel ist es für uns sehr wichtig, dass Benutzer nicht durch unsere Werbung wütend gemacht werden - es ist wünschenswert, dass es für sie nützlich ist. Im Rahmen der Gestaltung einer Auktion müssen Sie zusätzliche Metriken für das Ranking von Anzeigen erstellen. Es stellt sich eine Reihe von Kennzahlen heraus: erwarteter Gewinn, Wahrscheinlichkeit einer negativen Benutzerreaktion usw.



Die zweite Variante des Problems ist eine „nicht gierige“ Auktion. In diesem Fall verstehen wir, dass wir als Werbenetzwerk mehr verdienen könnten, wenn wir nicht immer Werbeflächen an den Gewinner verkaufen, sondern diese unter allen Werbetreibenden so verteilen würden, dass alle Werbebudgets maximiert werden, während einige übrig bleiben dann Ehrlichkeit in der Auktion. Das heißt, wenn wir mehrere Werbetreibende haben und einer von ihnen reicher als die anderen ist und ständig Auktionen kauft, sollten wir ihm vielleicht nicht immer das Gebot des Gewinners geben. Solch ein "Rucksackproblem" - vielleicht erinnern Sie sich an jene aus den Kursen über Programmier- oder Datenstrukturalgorithmen, wenn Sie eine solche Geschichte hatten. Dies ist eine sehr coole Aufgabe, es ist sehr interessant, es zu tun, und es gibt wissenschaftliche Artikel darüber.



In VK kommen wir gerade zu dieser Aufgabe; Wir haben viele Aufgaben, und ein weiterer großer Teil der Aufgaben in der Werbung liegt bereits näher bei ML. Aufgrund der Tatsache, dass wir unterschiedliche Ziele von Werbetreibenden erfüllen müssen, müssen wir vorhersagen, mit welcher Wahrscheinlichkeit der Nutzer diese oder jene Aktion ergreifen wird, um dieses Wissen bei der Erstellung der Gebotsstrategie für die Auktion zu nutzen.



Das heißt, der Werbetreibende sagt: Ich möchte so viele Einkäufe wie möglich in meinem Geschäft tätigen, um mein Budget so gut wie möglich auszugeben. Wir als Werbeplattform überlegen, wie wir diejenigen Benutzer hervorheben können, die am wahrscheinlichsten etwas im Geschäft kaufen. Ein typisches ML-Problem tritt auf. Binäre Klassifizierung: '1' - der Benutzer hat auf die Anzeige geklickt und etwas Gutes getan (gekauft), '0' - der Benutzer hat die Anzeige ignoriert. Basierend auf dieser Aufgabe müssen wir eine binäre Klassifizierung erstellen, bei der wir am Ausgang die Wahrscheinlichkeit eines nützlichen Ereignisses als weitere Berechnung des Gebots verwenden, das wir bei der Auktion verwenden werden. Die Aufgabe klingt in ML-Begriffen sehr banal - nehmen Sie sie und erledigen Sie sie. Aber im wirklichen Leben hat eine solche Aufgabe viele Schwierigkeiten, und ich werde Ihnen einige davon erzählen. Der wichtigste istDiese Werbung ist normalerweise ein Projekt mit hoher Auslastung. Sowohl in Bezug auf Daten als auch in Bezug auf die Last. Sie müssen sehr schnell auf eine Anfrage reagieren. Das Fenster ist beispielsweise 100 Millisekunden lang - und Sie müssen Zeit haben, um zu antworten. Auf dieser Grundlage werden uns bestimmte Einschränkungen auferlegt - insbesondere, wie - in der Technik - die Modelle, mit denen wir Werbung vorhersagen, funktionieren können. Sie können sich viele coole Dinge einfallen lassen und komplexe neuronale Netze erstellen, die über mehrere Ebenen nichtlineare Interaktionen zwischen Features hervorheben. Im Leben ist es jedoch erforderlich, dass all dies sehr schnell funktioniert.mit denen wir Anzeigen vorhersagen. Sie können sich viele coole Dinge einfallen lassen und komplexe neuronale Netze erstellen, die über mehrere Ebenen nichtlineare Interaktionen zwischen Features hervorheben. Im Leben ist es jedoch erforderlich, dass all dies sehr schnell funktioniert.mit denen wir Anzeigen vorhersagen. Sie können sich viele coole Dinge einfallen lassen und komplexe neuronale Netze erstellen, die über mehrere Ebenen nichtlineare Interaktionen zwischen Features hervorheben. Im Leben ist es jedoch erforderlich, dass all dies sehr schnell funktioniert.



Es wird auf große Datenmengen trainiert. Die Aufgabe stellt sich als umfangreich mit Terabyte-Datensätzen heraus. Auf dieser Grundlage müssen Sie normalerweise Dinge wie verteiltes Rechnen und verteiltes Modelltraining ausführen und überlegen, welche Modelle überhaupt verwendet werden sollen. In der Werbung wurden traditionell lineare Modelle wie logistische Regressionen oder Gradientenverstärkungen verwendet. manchmal wechseln sie zu cooleren Dingen wie Faktorisierungsmaschinen. Das heißt, die Auswahl an Modellen ist groß, aber normalerweise werden eher einfache Modelle verwendet - aufgrund der hohen Last.



Ein weiterer Punkt in der Nähe von ML: Wir verwenden Daten, die hinsichtlich des Feedbacks äußerst unausgewogen sind. Es gibt eine 1 pro 10.000 Nullen. Wie man ML-Maschinen unter diesen Bedingungen trainiert, ist eine gute Frage. Sie müssen verschiedene Tricks anwenden; Das wichtigste ist genau die Formulierung des Problems: Versuchen Sie beispielsweise nicht vorherzusagen, ob es zu einem Klick (Kauf) kommen wird oder nicht, sondern verwenden Sie Ansätze in Bezug auf Wahrscheinlichkeiten, glätten Sie Daten mit geringer Kardinalität maximal und so weiter. Man kann an viel denken, aber die Schwierigkeit besteht darin, dass positive Ereignisse in der Aufgabe selten auftreten.



Wenn Sie durch eine Anzeige klicken und etwas kaufen, tun Sie dies nicht immer sofort. Das heißt, sehr oft passieren die von Werbetreibenden gewünschten gezielten Ereignisse mit einer langen Verzögerung. Dies kann nicht nur ein Kauf sein, sondern auch die Registrierung im Spiel und das Pumpen eines Charakters auf Stufe 10 oder die Genehmigung eines Kreditantrags. So etwas kann in ein paar Tagen passieren. Und wenn wir Modelle trainieren müssen, die laut Anzeige jetzt sagen sollten, dass der Benutzer etwas tun wird, aber tatsächlich erhalten wir nur wenige Tage, nachdem etwas passiert ist, positives Feedback, und dies schafft zusätzliche Probleme. Um diese Probleme zu lösen, gibt es verschiedene Lösungen in Wissenschaft und Praxis. So eine lustige Komplexität.



Ein weiterer Punkt: Wenn ein Benutzer Werbung für bestimmte Produkte sieht, kann er über verschiedene Marketingkanäle mit ihnen in Kontakt treten. Sie sind zum Beispiel auf die Straße gegangen - Sie haben eine Werbetafel für Taxi VKontakte gesehen; hat angefangen, durch den Feed zu blättern - es gibt auch eine Werbung für "Taxi VKontakte", ist zu einem anderen Dienst gegangen - und es gibt auch eine Werbung für "Taxi VKontakte" vom Werbedienst Yandex oder Google. Sie sagen - ja, ich verstehe schon, stellen Sie den Antrag. Und danach muss Yandex, VK, Google, die Werbetafel herausfinden, wessen Anteil an diesem Prozess - an einer für den Werbetreibenden nützlichen Aktion - wie viele Prozent beträgt.



Dieser Prozess wird als "Attribution" bezeichnet - das Problem der Zuordnung, welcher Kontakt mit dem Werbetreibenden Ihre Entscheidung, die gezielte Maßnahme zu ergreifen, so stark beeinflusst hat. Normalerweise werden einfache Modelle verwendet - zum Beispiel "Last Click-Attribution": Die letzte Anzeige, auf die Sie geklickt haben, erhält alle Preise. Aber dann stellt sich heraus, dass es unrentabel ist, sich auf den ersten "kalten Kontakt" einzulassen - Anzeigen für einen Benutzer zu schalten, der mit dem Produkt nicht vertraut ist. Auf dieser Grundlage gibt es viele verschiedene ML-Modelle (einschließlich), mit denen Sie den Gewinn aus Impressionen besser verteilen können. Sie verwenden unter anderem Aufmerksamkeits-Chips, einige interessantere Dinge aus neuronalen Netzen. Coole Aufgabe. Und sein Ziel ist es letztendlich, besser, korrekter, korrekter und so weiter bei der Auktion zu verhandeln.



Je besser Sie verstehen, wer die endgültige Kaufentscheidung beeinflusst hat, desto besser verstehen Sie, wie viel zu einem bestimmten Zeitpunkt geliefert werden muss. Infolgedessen geht die gesamte Branche zu dem Verständnis über, dass die Arbeit mit einer Vorhersage der Wahrscheinlichkeit, dass Sie etwas kaufen, weniger effektiv ist als die Arbeit mit einer Vorstellung über den Grad des Einflusses auf die Kaufentscheidung. Vielleicht waren Sie bereits bereit, das von Ihnen besuchte Brettspiel zu kaufen. Aber Online-Werbung fängt an aufzuholen. Vielleicht hätte diese Werbung nicht existiert, wenn alle anfangs beschlossen hätten, dieses Spiel trotzdem zu kaufen, und zusätzliche Werbung nicht benötigt wird - Sie haben Ihre Entscheidung bereits getroffen. Ich denke an den Begriff "Inkrementalitätstest" und er knüpft immer noch an die ML-Domäne der "kausalen Inferenz" an. Das heißt, wir wechseln von der Aufgabe, die Wahrscheinlichkeit der Durchführung einer Zielaktion vorherzusagen, zur Vorhersage der Auswirkungen - das heißt,der Unterschied in der Wahrscheinlichkeit, was Sie kaufen, nachdem Sie die Anzeige gesehen haben, abzüglich dessen, was Sie bereits gekauft haben. Dies ist auch ein sehr cooler Übergang, ein Übergang zu einer neuen Idee, wie man arbeitet und wie man einige Ereignisse vorhersagt.



Im Allgemeinen gibt es in der Werbung viele Aufgaben, und fast alle ergeben sich aus dem anfänglichen Wunsch, die Aufgabe des Werbetreibenden zu erfüllen. Das Ziel "Ich möchte so viele Einkäufe wie möglich in meinem Geschäft tätigen" wird zu einer Folge von Geboten in der Auktion, da alle Werbetreibenden in der Auktion für Impressionen gekürzt werden. Dies ist eine Strategie. Und wir müssen den coolsten Übergang vom ursprünglichen Ziel zur Reihenfolge der Wetten schaffen. Dies impliziert den Wunsch, das Nutzerverhalten zu verstehen, kommerzielle Interessen zu extrahieren, Anzeigen automatisch auszurichten, Motive zu sammeln - so sehen Anzeigen aus - und so weiter.



Wenn jemand mehr darüber erfahren möchte, habe ich einen Vortrag bei einem Treffen, in dem ich ausführlich darüber spreche, was ein Datenwissenschaftler in der Werbung tun kann und warum es interessant sein kann, daran zu arbeiten. Es stellte sich als Entdeckung für mich heraus. Als ich zum ersten Mal in die Branche kam, dachte ich: Nun, Werbung, was ist interessant? Das erste, zweite, dritte Jahr verging - und mir wurde klar, wie viele coole Aufgaben es gibt und wie interessant es ist, es aus der Sicht eines Ingenieurs zu erledigen.



Ich werde jetzt in der Produktion zu ML übergehen. Jetzt haben Sie Kurse in maschinellem Lernen belegt oder an der Universität studiert. Sie sind ein großartiger Kegel-Spezialist, sagen wir, und Sie sind großartige Klickdatenanalyse-Aufgaben in einem Wettbewerb. Sie kommen zu einem echten Unternehmen, in dem ein großes Produkt iterativ und konsequent entwickelt wird. Und hier passiert etwas Verschrottung. Es stellt sich heraus, dass Sie einfach nicht über viele Fähigkeiten verfügen, die Sie zum Zeitpunkt Ihres Einstiegs in die Branche gerne besitzen würden. Niemand hat dir das beigebracht oder erklärt, wie es in der Realität funktioniert. Was sind die Schwierigkeiten in der Branche, wie unterschiedlich ist es, Probleme mit einer klaren Formulierung zu lösen. Wenn im Bereich der Programmierung noch viel darüber geredet wird, reicht dies im Bereich der Datenwissenschaft nicht aus.



Vor welchen Herausforderungen stehen Neulinge für Produktteams, die schon lange an demselben Produkt arbeiten - zum Beispiel, um VK-Werbung effektiv zu machen? Mit "Neulingen" meine ich mich selbst, einschließlich; Ich mache das seit vier Jahren und fühle mich immer noch wie ein Noob. Dies ist eine sehr komplexe Sache und interessant zu verstehen.

Das erste, worüber ich sagen möchte, ist der Wunsch, eine bestehende Aufgabe sofort mit einer coolen progressiven Methode zu beginnen, die in der Wissenschaft zu finden ist. Wunsch, ein Raumschiff zu entwickeln, das alles auf einmal cool macht. Im realen Leben, im Bereich der Produktentwicklung, ist Data Science ein Ort, an dem wir sehr schlecht vorhersagen können, welche Methode am Ende funktionieren wird. Es ist sehr schwierig, mit den ursprünglichen Produktanforderungen zu arbeiten, da Sie nicht wissen, wie Sie das Problem lösen können.



Sie haben eine Problemstellung: Zum Beispiel, um ein automatisches Moderationssystem zu erstellen, das einige anfängliche Probleme lösen soll. Sie können einen Super-Top-Artikel finden, in dem das Problem ideal gelöst ist. Wickeln Sie die Transformatoren auf. Oder Sie können eine einfache Heuristik erstellen, in der untersucht wird, wie oft wir einen bestimmten Werbetreibenden zuvor genehmigt haben, einen Teil dieser Zahl übernehmen, beispielsweise mit 70% vergleichen und sagen: Diese wurde häufig zuvor genehmigt. So etwas kann einem Unternehmen sofort sehr helfen und nützliche Informationen bringen. Und ein komplexes System dauert lange und es ist keine Tatsache, dass es sich auszahlt. In der Datenwissenschaft müssen Sie sehr schnell zu dieser Idee kommen: Sie arbeiten ständig im Modus von Hypothesen, Sie wissen nicht, was funktionieren wird, und um Risiken zu reduzieren und dem Endbenutzer und Unternehmen so schnell wie möglich einen Mehrwert zu bieten,Sie müssen sich mit Aufgaben von einer einfachen bis zu einer komplexen Lösung befassen. Oft - um mit Heuristiken umzugehen, ohne ML - gibt es oft keine Daten dafür. Dies kann den Datenwissenschaftler erschüttern, der daran interessiert ist, neuronale Modelle zu drehen. Ohne dies können Sie jedoch nicht die anfängliche Basislinie erhalten - ein kleiner Schritt, von dem aus Sie beginnen können. Sie können sehr lange tun, was überhaupt nicht funktioniert.



Das Schwierigste und Ungewöhnlichste an der Arbeit in der Branche ist, dass, nachdem Sie ein Modell hergestellt und in die Produktion eingeführt haben, sein Leben gerade erst beginnt. Es muss aktiv unterstützt und geändert werden. Mit dem Modell gibt es während ihres Lebens eine Vielzahl von Veränderungen. Erstens gibt es so etwas wie Training, das Schrägstellung serviert.



Auf einfache Weise: Wenn ein Modell in der Produktion mit bestimmten Daten oder mit einer Reihe allgemeiner Aufgaben arbeitet, die Ihr Modell lösen muss - und mit anderen Daten trainiert wurde, die auf andere Weise erhalten wurden -, treten an dieser Stelle häufig Fehler auf, und das Modell beginnt schlecht zu funktionieren. Idealerweise müssen Sie ein System erstellen, in dem Modelle während der Analyse und während der ersten Vorbereitung auf denselben Daten trainiert werden, mit denen sie in der Produktion arbeiten.



Zweitens kann es vorkommen, dass eine Funktion oder das Modell selbst zu irgendeinem Zeitpunkt nicht richtig funktioniert. Sie haben ein Repository, in dem Merkmale gespeichert werden. etwas hat sich geändert, statt Nullen begann Null zu fließen, statt "-1" wurden andere Werte zurückgegeben; oder jemand multiplizierte diese Werte mit 100, weil er dachte, es handele sich um Prozentsätze, nicht um Brüche. Und Ihr Modell beginnt plötzlich zu versagen. Sie müssen diese Änderungen irgendwie bemerken. Die coolste Qualität des ML-Modells ist der stille Fehler; Sie wird niemals sagen, dass etwas schief gelaufen ist - sie wird immer ein Ergebnis liefern, je nachdem, was Sie ihr gegeben haben. Müll rein, Müll raus. Dies muss irgendwie überwacht werden. Auf dieser Grundlage gibt es eine Vielzahl von Dingen, die verfolgt werden müssen, während das Modell in der Produktion läuft. Sie müssen ein Überwachungssystem erstellen, überwachen,so dass sich die Verteilung der Features nicht viel ändert, und so weiter. Sie müssen verstehen, dass das Modell jederzeit das volle Spiel abgeben kann und irgendwie unter diesen Bedingungen lebt. Was ist, wenn diese Ergebnisse unseren Nutzern direkt Geld abheben - Gebote für eine Anzeigenauktion oder Handel an einer Börse oder was auch immer? Es gibt viele Möglichkeiten, dies zu tun, aber es ist wichtig, zuerst darüber nachzudenken.



Wie verändert sich auf dieser Grundlage das Leben eines Datenwissenschaftlers, der in eine Umgebung kommt, in der es notwendig ist, Modelle iterativ zu entwickeln? Es scheint mir, dass Sie zuerst ein guter Ingenieur und dann ein guter Forscher sein müssen. Da Ihr Code und Ihre Schlussfolgerungen, die Erkenntnisse, die Sie während der Forschung und Analyse erhalten, Ihre Modelle - alles, was das Produkt Ihrer Arbeit als Datenwissenschaftler ist - nicht zwei- oder zehnmal verwendet werden. Viele Leute werden sich ansehen, wie Experimente aufgebaut werden, wie die Ergebnisse erhalten werden, warum, wo, wie was funktioniert und wie es in der Produktion verwendet wird. Was Menschen, die von Grund auf in die Branche kommen - zum Beispiel von einer Universität, die vom Thema Data Science oder Analysten oder ML mitgerissen wird - am meisten fehlt, sind daher technische Fähigkeiten. Zunächst einmal ist ein Datenwissenschaftler ein Subtyp eines Entwicklers.Er arbeitet auch mit Code, er arbeitet auch mit etwas, das dann in der Produktion in einer veränderlichen Umgebung funktioniert, die Menschen benutzen. Sie werden Ihren Code lesen. Sie müssen effektive, gut unterstützte und testbare Lösungen finden. Dies ist der Teil, der vielen Kandidaten fehlt. Wenn Sie ein Anfänger in der Datenwissenschaft sind, achten Sie daher besonders auf die Fähigkeiten der Entwickler. Wie man effizienten, verständlichen und gut gepflegten Code schreibt; Engineering-Lösungen, um Datenaustauschprozesse effektiv aufzubauen. All dies wird Ihnen in Ihrer Karriere sehr helfen.was einer großen Anzahl von Kandidaten fehlt. Wenn Sie ein Anfänger in der Datenwissenschaft sind, achten Sie daher besonders auf die Fähigkeiten der Entwickler. Wie man effizienten, verständlichen und gut gepflegten Code schreibt; Engineering-Lösungen, um Datenaustauschprozesse effektiv aufzubauen. All dies wird Ihnen in Ihrer Karriere sehr helfen.was einer großen Anzahl von Kandidaten fehlt. Wenn Sie ein Anfänger in der Datenwissenschaft sind, achten Sie daher besonders auf die Fähigkeiten der Entwickler. Wie man effizienten, verständlichen und gut gepflegten Code schreibt; Engineering-Lösungen, um Datenaustauschprozesse effektiv aufzubauen. All dies wird Ihnen in Ihrer Karriere sehr helfen.



Der zweite Tipp und das zweite, was coole Datenwissenschaftler von denen unterscheidet, die hart arbeiten, ist das Eintauchen in den Produktkontext und in den technischen Teil der Umgebung Ihres Modells. Angenommen, Sie entwickeln ein Modell, und als Datenwissenschaftler können Sie leicht sagen: „Meine Aufgabe ist es, das Modell zu entwickeln, alles andere liegt außerhalb meiner Verantwortung. Ich unterrichte Models, das ist meine Sache. Das Backend wird sie einbetten, der Dateningenieur wird die Daten vorbereiten, der Tester wird sie testen, der Produktmanager wird entscheiden, wie sie verwendet werden sollen. " Eine Vielzahl von Implikationen und Möglichkeiten, das Modell kühler und wertvoller zu machen, gehen jedoch über den Entwurfsprozess des Modells selbst hinaus. Beispiel: Wenn Sie Suchergebnisse bewerten, ordnen Sie Dokumente von außerhalb. Es gibt eine Art Auswahl von Kandidaten. Wenn Sie wissen, wie diese Auswahl funktioniert, können Sie leicht verstehendass der Engpass in der Arbeit nicht darin besteht, dass das Modell nicht gut funktioniert, sondern dass falsche, uninteressante, unvollständige Dokumente an die Eingabe übermittelt werden. Wenn Sie hingegen wissen, dass Ihr Modell in Ihrem Produkt unter bestimmten Umständen anders funktioniert als gewünscht, es jedoch sehr schwierig ist, diese Funktion zu verbessern, können Sie das Produkt für das Modell ändern. Wir können sagen: Jetzt ist das Produkt anders angeordnet, jetzt ist es nicht der Benutzer, der das Modell aufruft, sondern das Modell ruft eine Art automatisches Werkzeug auf, das mehrere Parameter koordiniert, denen der Benutzer nicht folgen kann. Die Idee ist, dass Sie das Produkt für das Modell ändern können und nicht umgekehrt. Wenn Sie in diese Bereiche eintauchen, können Sie als Datenwissenschaftler und ML-Ingenieur enorme Gewinne und Vorteile für Ihr Produkt und Ihre Benutzer erzielen.dass das Modell nicht gut funktioniert, aber dass falsche, uninteressante, unvollständige Dokumente zur Eingabe eingereicht werden. Wenn Sie hingegen wissen, dass Ihr Modell in Ihrem Produkt unter bestimmten Umständen anders funktioniert als gewünscht, es jedoch sehr schwierig ist, diese Funktion zu verbessern, können Sie das Produkt für das Modell ändern. Wir können sagen: Jetzt ist das Produkt anders angeordnet, jetzt ist es nicht der Benutzer, der das Modell aufruft, sondern das Modell ruft eine Art automatisches Werkzeug auf, das mehrere Parameter koordiniert, denen der Benutzer nicht folgen kann. Die Idee ist, dass Sie das Produkt für das Modell ändern können und nicht umgekehrt. Wenn Sie in diese Bereiche eintauchen, können Sie als Datenwissenschaftler und ML-Ingenieur enorme Gewinne und Vorteile für Ihr Produkt und Ihre Benutzer erzielen.dass das Modell nicht gut funktioniert, aber dass falsche, uninteressante, unvollständige Dokumente zur Eingabe eingereicht werden. Wenn Sie andererseits wissen, dass Ihr Modell in Ihrem Produkt unter bestimmten Umständen möglicherweise nicht wie gewünscht funktioniert, es jedoch sehr schwierig ist, diese Funktion zu verbessern, können Sie das Produkt für das Modell ändern. Wir können sagen: Jetzt ist das Produkt anders angeordnet, jetzt ist es nicht der Benutzer, der das Modell aufruft, sondern das Modell ruft eine Art automatisches Werkzeug auf, das mehrere Parameter koordiniert, denen der Benutzer nicht folgen kann. Die Idee ist, dass Sie das Produkt für das Modell ändern können und nicht umgekehrt. Wenn Sie in diese Bereiche eintauchen, können Sie als Datenwissenschaftler und ML-Ingenieur enorme Gewinne und Vorteile für Ihr Produkt und Ihre Benutzer erzielen.unvollständige Dokumente. Wenn Sie andererseits wissen, dass Ihr Modell in Ihrem Produkt unter bestimmten Umständen möglicherweise nicht wie gewünscht funktioniert, es jedoch sehr schwierig ist, diese Funktion zu verbessern, können Sie das Produkt für das Modell ändern. Wir können sagen: Jetzt ist das Produkt anders angeordnet, jetzt ist es nicht der Benutzer, der das Modell aufruft, sondern das Modell ruft eine Art automatisches Werkzeug auf, das mehrere Parameter koordiniert, denen der Benutzer nicht folgen kann. Die Idee ist, dass Sie das Produkt für das Modell ändern können und nicht umgekehrt. Wenn Sie in diese Bereiche eintauchen, können Sie als Datenwissenschaftler und ML-Ingenieur enorme Gewinne und Vorteile für Ihr Produkt und Ihre Benutzer erzielen.unvollständige Dokumente. Wenn Sie andererseits wissen, dass Ihr Modell in Ihrem Produkt unter bestimmten Umständen möglicherweise nicht wie gewünscht funktioniert, es jedoch sehr schwierig ist, diese Funktion zu verbessern, können Sie das Produkt für das Modell ändern. Wir können sagen: Jetzt ist das Produkt anders angeordnet, jetzt ist es nicht der Benutzer, der das Modell aufruft, sondern das Modell ruft eine Art automatisches Werkzeug auf, das mehrere Parameter koordiniert, denen der Benutzer nicht folgen kann. Die Idee ist, dass Sie das Produkt für das Modell ändern können und nicht umgekehrt. Wenn Sie in diese Bereiche eintauchen, können Sie als Datenwissenschaftler und ML-Ingenieur enorme Gewinne und Vorteile für Ihr Produkt und Ihre Benutzer erzielen.Wie wir möchten, aber es ist sehr schwierig, diese Arbeit besser zu machen, dann können Sie das Produkt für das Modell ändern. Wir können sagen: Jetzt ist das Produkt anders angeordnet, jetzt ist es nicht der Benutzer, der das Modell aufruft, sondern das Modell ruft eine Art automatisches Werkzeug auf, das mehrere Parameter koordiniert, denen der Benutzer nicht folgen kann. Die Idee ist, dass Sie das Produkt für das Modell ändern können und nicht umgekehrt. Wenn Sie in diese Bereiche eintauchen, können Sie als Datenwissenschaftler und ML-Ingenieur enorme Gewinne und Vorteile für Ihr Produkt und Ihre Benutzer erzielen.Wie wir möchten, aber es ist sehr schwierig, diese Arbeit besser zu machen, dann können Sie das Produkt für das Modell ändern. Wir können sagen: Jetzt ist das Produkt anders angeordnet, jetzt ist es nicht der Benutzer, der das Modell aufruft, sondern das Modell ruft eine Art automatisches Werkzeug auf, das mehrere Parameter koordiniert, denen der Benutzer nicht folgen kann. Die Idee ist, dass Sie das Produkt für das Modell ändern können und nicht umgekehrt. Wenn Sie in diese Bereiche eintauchen, können Sie als Datenwissenschaftler und ML-Ingenieur enorme Gewinne und Vorteile für Ihr Produkt und Ihre Benutzer erzielen.dem der Benutzer nicht folgen kann. Die Idee ist, dass Sie das Produkt für das Modell ändern können und nicht umgekehrt. Wenn Sie in diese Bereiche eintauchen, können Sie als Datenwissenschaftler und ML-Ingenieur enorme Gewinne und Vorteile für Ihr Produkt und Ihre Benutzer erzielen.dem der Benutzer nicht folgen kann. Die Idee ist, dass Sie das Produkt für das Modell ändern können und nicht umgekehrt. Wenn Sie in diese Bereiche eintauchen, können Sie als Datenwissenschaftler und ML-Ingenieur enorme Gewinne und Vorteile für Ihr Produkt und Ihre Benutzer erzielen.



Zurück zu der Frage, dass ML das Reich der Spekulation ist. Wir wissen nie, wie wir ein großartiges Produkt entwickeln sollen, wir müssen verschiedene Wege zur endgültigen Lösung ausprobieren. Daher müssen Sie den Workflow etwas anders erstellen. Oft denken Leute, insbesondere Ingenieure in den ersten Phasen der Karriereentwicklung, dass alle Arten von Management-Chips - SCRUM, Agile - Bullshit sind und nicht funktionieren. Sie funktionieren jedoch oft nicht wirklich, weil sie im falschen Kontext verwendet werden. Wenn Sie beispielsweise jemals in ein SCRUM-Data-Science-Team eintreten, wird dies für Sie schwierig und schmerzhaft. Plötzlich stellt sich heraus, dass die Forschung schwer vorherzusagen ist und Sie nicht wissen, wie Sie zum Ergebnis kommen werden, aber hier - zweiwöchige Iterationen, etwas anderes, im Allgemeinen erzeugt das Management unnötigen Müll. Arbeits prozess,innerhalb dessen du arbeitest soll dir helfen, nicht behindern. Das heißt, wenn Data Science Methoden aus der konventionellen Softwareentwicklung übernimmt und anwendet, ist dies nicht immer effektiv.



Daher möchte ich separat sagen: Wenn Sie als Datenwissenschaftler arbeiten und mit verschiedenen Personen interagieren müssen - Kunden, Kollegen, bei der Arbeit zusammenarbeiten -, ist es gut, wenn Sie verstehen, wie Sie einen kollaborativen Prozess und eine selbstorganisierte Teamaktivität besser aufbauen können. Ein guter Weg, um zu verstehen, wie man das macht, ist, zu einer Community namens LeanDS zu gehen. Dort versammelten sich solche Leute, die daran interessiert sind, die Prozesse zur Bearbeitung von ML-Problemen in einer Produktentwicklungsumgebung besser aufzubauen. Von dort aus können Sie viele coole Dinge lernen, die sich die Leute bereits ausgedacht haben und die verschiedene Spezialisten in verschiedenen Unternehmen einsetzen. Und von dem, was ich raten würde, ist es zunächst notwendig, zu einem Ansatz zu wechseln, wenn Sie alle Aufgaben durch Produkthypothesen formulieren. Wenn du es nicht weißtDas wird Ergebnisse bringen, aber Sie finden es heraus: Ich denke, dass so und so etwas dazu beitragen wird, Benutzeraufgaben so und so zu fördern, Metriken zu pumpen, und in so und so einer Zeit kann es überprüft werden. Solche Hypothesen sind viel einfacher zu bearbeiten. Basierend auf einem solch unverständlichen Arbeitsfluss, bei dem es sehr schwierig ist vorherzusagen, wie lange Ihre Aufgabe dauern wird, wann Sie zum Ergebnis kommen und auf welche Weise Kanban meiner Meinung nach sehr gut funktioniert. Ich werde nicht lange darüber sprechen, ich empfehle nur: Schauen Sie sich die LeanDS-Community an. Überprüfen Sie ihre Materialien. Ich denke, jeder, der in der Datenwissenschaft arbeitet und mit Prozessen konfrontiert ist, die von der konventionellen Entwicklung abgewandert sind, wird daran interessiert sein zu verstehen, was anders gemacht werden kann und wie Prozesse zu ihrem Vorteil genutzt werden können.dass so und so etwas dazu beiträgt, Benutzeraufgaben zu fördern, Metriken zu pumpen, und in so und so einer Zeit kann es überprüft werden. Solche Hypothesen sind viel einfacher zu bearbeiten. Basierend auf einem solch unverständlichen Arbeitsfluss, bei dem es sehr schwierig ist vorherzusagen, wie lange Ihre Aufgabe dauern wird, wann Sie zum Ergebnis kommen und auf welche Weise Kanban meiner Meinung nach sehr gut funktioniert. Ich werde nicht lange darüber sprechen, ich empfehle nur: Schauen Sie sich die LeanDS-Community an. Überprüfen Sie ihre Materialien. Ich denke, jeder, der in der Datenwissenschaft arbeitet und mit Prozessen konfrontiert ist, die von der konventionellen Entwicklung abgewandert sind, wird daran interessiert sein zu verstehen, was anders gemacht werden kann und wie Prozesse zu ihrem Vorteil genutzt werden können.dass so und so etwas dazu beiträgt, Benutzeraufgaben zu fördern, Metriken zu pumpen, und in so und so einer Zeit kann es überprüft werden. Solche Hypothesen sind viel einfacher zu bearbeiten. Basierend auf einem solch unverständlichen Arbeitsfluss, bei dem es sehr schwierig ist vorherzusagen, wie lange Ihre Aufgabe dauern wird, wann Sie zum Ergebnis kommen und auf welche Weise Kanban meiner Meinung nach sehr gut funktioniert. Ich werde nicht lange darüber sprechen, ich empfehle nur: Schauen Sie sich die LeanDS-Community an. Überprüfen Sie ihre Materialien. Ich denke, jeder, der in der Datenwissenschaft arbeitet und mit Prozessen konfrontiert ist, die von der konventionellen Entwicklung abgewandert sind, wird daran interessiert sein zu verstehen, was anders gemacht werden kann und wie Prozesse zu ihrem Vorteil genutzt werden können.Solche Hypothesen sind viel einfacher zu bearbeiten. Basierend auf einem solch unverständlichen Arbeitsfluss, bei dem es sehr schwierig ist vorherzusagen, wie lange Ihre Aufgabe dauern wird, wann Sie zum Ergebnis kommen und auf welche Weise Kanban meiner Meinung nach sehr gut funktioniert. Ich werde nicht lange darüber sprechen, ich empfehle nur: Schauen Sie sich die LeanDS-Community an. Überprüfen Sie ihre Materialien. Ich denke, jeder, der in der Datenwissenschaft arbeitet und mit Prozessen konfrontiert ist, die von der konventionellen Entwicklung abgewandert sind, wird daran interessiert sein zu verstehen, was anders gemacht werden kann und wie Prozesse zu ihrem Vorteil genutzt werden können.Solche Hypothesen sind viel einfacher zu bearbeiten. Basierend auf einem solch unverständlichen Arbeitsfluss, bei dem es sehr schwierig ist vorherzusagen, wie lange Ihre Aufgabe dauern wird, wann Sie zum Ergebnis kommen und auf welche Weise Kanban meiner Meinung nach sehr gut funktioniert. Ich werde nicht lange darüber sprechen, ich empfehle nur: Schauen Sie sich die LeanDS-Community an. Überprüfen Sie ihre Materialien. Ich denke, jeder, der in der Datenwissenschaft arbeitet und mit Prozessen konfrontiert ist, die von der konventionellen Entwicklung abgewandert sind, wird daran interessiert sein zu verstehen, was anders gemacht werden kann und wie Prozesse zu ihrem Vorteil genutzt werden können.Nur ein Tipp: Schauen Sie sich die LeanDS-Community an. Überprüfen Sie ihre Materialien. Ich denke, jeder, der in der Datenwissenschaft arbeitet und mit Prozessen konfrontiert ist, die von der konventionellen Entwicklung abgewandert sind, wird daran interessiert sein zu verstehen, was anders gemacht werden kann und wie Prozesse zu ihrem Vorteil genutzt werden können.Nur ein Tipp: Schauen Sie sich die LeanDS-Community an. Überprüfen Sie ihre Materialien. Ich denke, jeder, der in der Datenwissenschaft arbeitet und mit Prozessen konfrontiert ist, die von der konventionellen Entwicklung abgewandert sind, wird daran interessiert sein zu verstehen, was anders gemacht werden kann und wie Prozesse zu ihrem Vorteil genutzt werden können.



Infolgedessen werde ich Ihnen sagen, was die Leute vermissen, die zu Beginn ihrer Karriere datenwissenschaftliche Aufgaben erledigen, und wie Sie als Spezialist cooler werden und die Chancen erhöhen können, einen Job an einem Ort zu bekommen, den Sie mögen.



Erstens sind, wie ich bereits sagte, technische Fähigkeiten für einen Datenwissenschaftler sehr wichtig. Nicht weniger als Fähigkeiten in Bezug auf ML, Datenanalyse, Wahrscheinlichkeitstheorie und so weiter. Erstens möchte ich, dass Sie ein cooler Ingenieur und zweitens ein Entwickler sind. Zweitens fehlt vielen Menschen die klare Fähigkeit, ein Geschäftsproblem in ein datenwissenschaftliches Problem umzuwandeln. Dies ist eine separate Fähigkeit. Dies ist eine Situation, in der Sie verstehen müssen, was genau der Kunde von Ihnen will - nennen wir es eine Person, die möchte, dass etwas cool funktioniert. Zurück zum Beispiel für die automatische Moderation: Was genau will er? Schließlich kann die Aufgabe der automatischen Moderation auf sehr unterschiedliche Weise festgelegt werden, mit verschiedenen spezifischen Dingen, die wir in unserem System besser machen möchten. Basierend auf den Aufgaben wird die datenwissenschaftliche Aufgabe auf unterschiedliche Weise formuliert. Basierend auf dem datenwissenschaftlichen Problem werden die optimierten Metriken auf unterschiedliche Weise formuliert.Eine Methode zum Auswählen eines Datensatzes, zum Bewerten der Qualität usw. Diese Fähigkeit ist für alle Datenwissenschaftler sehr wertvoll. Angenommen, ein Kunde sagt, dass seine Moderatoren den Ablauf der Verarbeitungsaufgaben nicht bewältigen können, um zu überprüfen, ob die Anzeige gut ist oder für ein bestimmtes Thema gesperrt werden muss. Dann werden Sie feststellen, dass es viele verschiedene Gründe für das Verbot gibt, und während der Moderation müssen Sie diese klar beschreiben, damit der Werbetreibende die Anzeige korrigieren kann. Auf dieser Grundlage entscheiden Sie, dass Sie eine Art Mehrklassenklassifizierung durchführen müssen, die einen Text generiert, der den Grund erklärt, und die Aufgabe wird sehr schwierig sein. Aber warten Sie - vielleicht kann das Problem anders formuliert werden. Und es stellt sich heraus, dass Sie sich nicht darauf konzentrieren können, Anzeigen abzulehnen, sondern die richtige Anzeige auszuwählen. Wenn die Anzeige gut ist, können Sie sie einfach überspringen.Wenn es schlecht ist, kann es Live-Moderatoren gegeben werden, und es muss keine Erklärung generiert werden. Auf dieser Grundlage verstehen Sie: Wenn Sie sich auf das konzentrieren müssen, was gut ist, was übersprungen werden kann, müssen Sie verstehen, wie dieses Geschäft verwaltet wird - dieser Anzeigenstrom, der durch Ihr System geleitet wird. Sie verstehen: Ja, basierend auf dieser Aufgabe kann ich ROC AUC als die für mich passende Metrik auswählen. Sie beschreibt gut die Beziehung zwischen der Genauigkeit des Modells und der Anzahl der Anzeigen, die automatisch durch unser System geschaltet werden. Usw. Das heißt, basierend auf diesem Dialog zwischen dem bedingten Kunden und Ihnen als Spezialist können Sie Ihre Aufgabe erheblich vereinfachen und ein gutes Verständnis dafür haben, wie eine Geschäftsaufgabe in eine datenwissenschaftliche Aufgabe umformuliert wird.Sie verstehen: Wenn Sie sich auf das konzentrieren müssen, was gut ist, was übersprungen werden kann, müssen Sie verstehen, wie dieses Geschäft verwaltet wird - dieser Anzeigenstrom, der durch Ihr System geleitet wird. Sie verstehen: Ja, basierend auf dieser Aufgabe kann ich ROC AUC als die für mich passende Metrik auswählen. Sie beschreibt gut die Beziehung zwischen der Genauigkeit des Modells und der Anzahl der Anzeigen, die automatisch durch unser System geschaltet werden. Usw. Das heißt, basierend auf diesem Dialog zwischen dem bedingten Kunden und Ihnen als Spezialist können Sie Ihre Aufgabe erheblich vereinfachen, indem Sie ein gutes Verständnis dafür haben, wie eine Geschäftsaufgabe in eine datenwissenschaftliche Aufgabe umformuliert wird.Sie verstehen: Wenn Sie sich auf das konzentrieren müssen, was gut ist, was übersprungen werden kann, müssen Sie verstehen, wie dieses Geschäft verwaltet wird - dieser Anzeigenstrom, der durch Ihr System geleitet wird. Sie verstehen: Ja, basierend auf dieser Aufgabe kann ich ROC AUC als die für mich passende Metrik auswählen. Sie beschreibt gut die Beziehung zwischen der Genauigkeit des Modells und der Anzahl der Anzeigen, die automatisch durch unser System geschaltet werden. Usw. Das heißt, basierend auf diesem Dialog zwischen dem bedingten Kunden und Ihnen als Spezialist können Sie Ihre Aufgabe erheblich vereinfachen und ein gutes Verständnis dafür haben, wie eine Geschäftsaufgabe in eine datenwissenschaftliche Aufgabe umformuliert wird.Sie verstehen: Ja, basierend auf diesem Problem kann ich ROC AUC als die für mich passende Metrik auswählen. Sie beschreibt gut die Beziehung zwischen der Genauigkeit des Modells und der Anzahl der Anzeigen, die automatisch durch unser System geschaltet werden. Usw. Das heißt, basierend auf diesem Dialog zwischen dem bedingten Kunden und Ihnen als Spezialist können Sie Ihre Aufgabe erheblich vereinfachen und ein gutes Verständnis dafür haben, wie eine Geschäftsaufgabe in eine datenwissenschaftliche Aufgabe umformuliert wird.Sie verstehen: Ja, basierend auf dieser Aufgabe kann ich ROC AUC als die für mich passende Metrik auswählen. Sie beschreibt gut die Beziehung zwischen der Genauigkeit des Modells und der Anzahl der Anzeigen, die automatisch durch unser System geschaltet werden. Usw. Das heißt, basierend auf diesem Dialog zwischen dem bedingten Kunden und Ihnen als Spezialist können Sie Ihre Aufgabe erheblich vereinfachen und ein gutes Verständnis dafür haben, wie eine Geschäftsaufgabe in eine datenwissenschaftliche Aufgabe umformuliert wird.wie man ein Geschäftsproblem in ein datenwissenschaftliches Problem umformuliert.wie man ein Geschäftsproblem in ein datenwissenschaftliches Problem umformuliert.



Ich möchte Ihnen noch etwas erzählen, das sehr hilfreich ist. Es geht darum zu verstehen, welche spezifischen Signale in Form von Features an das von Ihnen entwickelte Modell übergeben werden und wie es sie verarbeitet. Dies ist eine Fähigkeit, die direkt zur Kompetenz des ML-Entwicklungsteams gehört. Aus irgendeinem Grund halten sich viele Kandidaten meiner Erfahrung nach an den Ansatz "ML wird alles essen" - setzen Sie alles in einen Gradientenschub, und es wird funktionieren. Ich übertreibe, aber im Allgemeinen ist es sehr cool, wenn Sie klar verstehen, dass das Zeichen, das Sie verwenden, genau die Informationen enthält, die Sie übermittelt haben, und nicht die Informationen, die Sie übermitteln wollten.



Angenommen, Sie entscheiden, dass ein guter Indikator für die Reaktionsfähigkeit eines Nutzers auf eine Anzeige eine Klickrate ist. Das heißt, wir nehmen die Anzahl der Anzeigen, die während der gesamten Zeit gesehen wurden, und die Anzahl der Klicks auf die Anzeige, teilen eine durch die andere und erhalten die Nutzeranzeige. In einem Fall sagt er, dass der Nutzer gerne auf die Anzeige klickt, in dem anderen, dass er überhaupt nicht klickt. Und wir geben diese Zahl an unser Modell weiter - Gradientenverstärkung oder lineare Regression. Dann kann ein Gedanke auftauchen: Das Modell hat keine Möglichkeit, zwischen den Benutzern, für die wir viele Statistiken haben, und den wenigen Benutzern zu unterscheiden. Eine Metrik bedeutet möglicherweise nicht, dass ein Nutzer immer auf eine Anzeige klickt, sondern dass er nur eine Impression hatte. Es stellt sich die Frage, wie dieses Merkmal so dargestellt werden kann, dass das Modell eine große Anzahl von Statistiken von einer kleinen unterscheidet. Zuerst,Was in den Sinn kommt, ist, die Anzahl der Anzeigenimpressionen in das Modell einzufügen. Sie können nur die Anzahl der Impressionen angeben, aber die Abhängigkeit unseres Vertrauens in die Statistik von der Anzahl der Anzeigenimpressionen eines Nutzers ist nichtlinear. Es stellt sich heraus, dass Sie nicht nur Impressionen, sondern auch ein Quadrat oder einen Logarithmus von Impressionen eingeben müssen. Dann stellt sich heraus, dass wenn wir ein lineares Modell haben, diese beiden Merkmale in keiner Weise miteinander interagieren. Es wird nicht möglich sein, Schemata wie "Wenn der Benutzer über eine solche und eine solche Menge an Statistiken verfügt, dann vertrauen wir ihr für so viele, verwenden Sie eine Funktion mit diesem und jenem Gewicht" zu erstellen. Die lineare Regression kann solche Verbindungen nicht aufbauen, die Gradientenverstärkung jedoch. Oder Sie können die Funktion neu formulieren. Anstelle von Rohstatistiken können Sie diese glätten, Ansätze aus Bayes'schen Übergängen verwenden und a priori Kenntnisse darüber hinzufügen, wie Benutzer im Durchschnitt klicken.und mit einer bestimmten Formel zu mischen. Usw. Es stellt sich heraus, dass es sehr wichtig ist zu verstehen, welches spezifische Signal Sie als Zeichen senden.



Und zweitens ist es sehr wichtig zu wissen, wie diese Funktion im Modell verwendet wird. Bei der linearen Regression wird sie einzeln verwendet, um den Gradienten auf andere Weise zu verstärken. Wenn es sich um ein neuronales Netzwerk handelt, arbeitet es mit einer anderen Art von Daten und wie der Kontext dort funktioniert.

Sie müssen nicht genau wissen, wie das Modell funktioniert, aber Sie müssen intuitiv verstehen, was möglich ist und was nicht. Dies ist eine coole Fähigkeit für einen ML-Spezialisten. Wenn Sie mich fragen, wie ein bestimmter Algorithmus bei der Gradientenverstärkung funktioniert, fällt es mir schwer, dies im Detail zu erklären, aber an meinen Fingern kann ich es tun. In den meisten praktischen Situationen reicht dies aus, um das Tool effektiv zu nutzen.



Am Ende möchte ich jedem raten, einen solchen iterativen Ansatz im wirklichen Leben und in Produkten zu verwenden, wenn Sie von einfach zu komplex wechseln. Sie beginnen mit einfachen Hypothesen, die schnell getestet werden, und kommen langsam zu diesen sehr komplexen, interessanten wissenschaftlichen Artikeln. Dann ist die Baseline fertig und Sie können beispielsweise bereits einen Artikel für KDD schreiben.



Ich möchte auch sagen - vielleicht helfen sie mir; Ich habe zwei Auftritte bei Meetups. Eine befasst sich mit den datenwissenschaftlichen Aufgaben in der Werbung (und im Allgemeinen, warum sich datenwissenschaftliche Spezialisten für Werbetechnologien als Sprungbrett für die Anwendung ihrer Fähigkeiten bei interessanten technischen Herausforderungen interessieren können). Und die zweite ist eine Geschichte über die Fallen, in die wir als Team von ML-Entwicklern des Systems geraten sind, darüber, wie wir aus ihnen herausgekommen sind und wie Sie nicht in die gleichen Fallen geraten sind, in die wir aufgrund mangelnder Erfahrung geraten sind. Ich möchte diese Erfahrung teilen. Ich denke, hier gibt es viele nützliche Dinge herauszufinden.



Und doch - vorher habe ich über die LeanDS-Community gesprochen, die sich mit datenwissenschaftlichen Prozessen und datenwissenschaftlichem Projektmanagement in ML befasst. Ich rate dir auch dringend, dir ihre Materialien anzuschauen, die Jungs machen sehr coole Sachen.



Haben Sie jemals ein komplettes Verkaufstrichtermodell gebaut?



Tatsächlich haben wir das nicht getan. Aber hier ist es sehr wichtig, dass der externe Werbetreibende alles sehr gut einrichtet. Daher ist es gut, mit Verkaufstrichtern umzugehen, wenn Sie als Datenwissenschaftler auf der Seite eines Werbetreibenden stehen. Angenommen, Sie arbeiten für ein großes Unternehmen, das mit einer großen Anzahl von Marketingkanälen zusammenarbeitet, und versuchen, Analysen zu erstellen, mit denen Sie ein gutes Verständnis dafür erhalten, wie spezifisch verschiedene Marketingkanäle funktionieren, wie gut Verkaufstrichter aufgebaut sind usw. Für uns von VK als System für Werbetreibende ist es bei der Arbeit mit solchen Dingen sehr wichtig, dass der Werbetreibende alles gut konfiguriert hat. Damit Werbepixel immer die richtigen Informationen darüber liefern, wie der Benutzer die Website betreten, etwas in den Warenkorb gelegt und gekauft hat. Und dann müssen wir diese Informationen nutzen, umWerbestrategien besser und effektiver zu machen. Ich möchte das machen; Wir haben dies praktisch nicht getan, da das Einrichten solcher Systeme für einen Werbetreibenden oft schwierig ist. Dies ist wahrscheinlich einfacher, wenn Sie die vollständige Kontrolle haben.



Und eine solche Frage: Wie werden beim Erstellen eines Modells Entitäten verbunden (Attribute festgelegt)?



Zum Beispiel Site-Besucher -> Client



Es ist wahrscheinlich gut, einfach mit einer früheren Benutzeraktivität zu beginnen. Im Allgemeinen erfolgt dies auf verschiedene Arten; Ich kann Ihnen von einem erzählen, der beim Aufbau von Werbesystemen verwendet wird. Er heißt Look-Alike. Sie haben vielleicht von ihm gehört. Dies ist eine Situation, in der wir sagen: Hier sind die Benutzer, die unsere Website besucht haben, und hier sind diejenigen, die etwas gekauft haben. Werfen wir einen Blick darauf, welche Benutzer denen am ähnlichsten sind, die etwas gekauft haben, und weniger denen, die nichts getan haben. Wenn wir ein solches Modell trainieren, bei dem "1" diejenigen sind, die gekauft haben, "0" diejenigen sind, die nichts getan haben, und "0,5" diejenigen sind, die die Site besucht haben, können wir lernen, wie alle Benutzer unseres Systems eingestuft werden durch Ähnlichkeit mit einem potenziellen Kunden. Wir können dieses Wissen in unserem Modell nutzen und dem Kunden mitteilen, welche FunktionenIn Bezug auf das Modell trennen sie Kunden von normalen Besuchern.






All Articles