Wird ein statistischer Ansatz verwendet, um die Frage zu beantworten: „Wie lange wird etwas dauern?“ Dieses „etwas“ kann von der Lebensdauer eines Patienten bis zur Haltbarkeit einer Maschinenkomponente oder der Dauer eines Benutzungsabonnements reichen.

Eines der am häufigsten verwendeten Werkzeuge in diesem Bereich ist die Kaplan-Meier-Schätzer.

Kaplan-Meier wurde in der Welt der Biologie geboren und debütierte, Leben und Tod zu verfolgen. Aber wie jeder wahre Promi -Algorithmus blieb er nicht auf seiner Spur. Heutzutage taucht es in Enterprise -Dashboards, Marketingteams und Wurfanalysen überall auf.

Aber hier ist der Haken: Geschäft ist keine Biologie. Es ist chaotisch, unvorhersehbar und voller Handlungswendungen. Aus diesem Grund gibt es einige Probleme, die unser Leben schwieriger machen, wenn wir versuchen, die Überlebensanalyse in der Geschäftswelt zu verwenden.

Erstens interessieren wir uns in der Regel nicht nur daran, ob ein Kunde „überlebt“ hat (was auch immer das Überleben in diesem Zusammenhang bedeuten könnte), sondern auch in Wie viel von dem wirtschaftlichen Wert dieses Individuums hat überlebt.

Zweitens entgegen der Biologie, Es ist für Kunden sehr möglich, mehrmals „zu sterben“ und zu „wiederbeleben“ (Denken Sie daran, wann Sie einen On-line -Service abmelden/neu bezeichnen).

In diesem Artikel werden wir sehen, wie der klassische Kaplan-Meier-Ansatz so erweitert wird, dass er besser zu unseren Bedürfnissen passt: Modellierung eines kontinuierlichen (wirtschaftlichen) Wertes anstelle eines binären (Leben/Tod) und „Auferstehungen“ zuzulassen.

Eine Auffrischung am Kaplan-Meier-Schätzer

Lassen Sie uns eine Sekunde innehalten und zurückspulen. Bevor wir Kaplan-Meier an unsere geschäftlichen Anforderungen anpassen, benötigen wir eine kurze Auffrischung darüber, wie die klassische Model funktioniert.

Angenommen, Sie hatten 3 Probanden (sagen wir Labormäuse) und gaben ihnen ein Medikament, das Sie testen müssen. Das Medikament wurde zu verschiedenen Zeitpunkten in der Zeit gegeben: Betreff A erhielt es im Januar, Betreff B im April und Subjekt C im Mai.

Dann messen Sie, wie lange sie überleben. Thema A starb nach 6 Monaten, Subjekt C Nach 4 Monaten und Subjekt B ist zum Zeitpunkt der Analyse (November) noch am Leben.

Grafisch können wir die 3 Themen wie folgt darstellen:

(Bild des Autors)

Jetzt, Selbst wenn wir eine einfache Metrik messen wollten, wie durchschnittlich das Überleben, würden wir uns einem Downside stellen. In der Tat wissen wir nicht, wie lange sie ausgesetzt sind B wird überleben, da es heute noch am Leben ist.

Dies ist ein klassisches Downside in der Statistik und es heißt “Richtige Zensur“.

Die richtige Zenserung ist Statistik-Converse für „Wir wissen nicht, was nach einem bestimmten Punkt passiert ist“ und es ist eine große Sache in der Überlebensanalyse. So groß, dass es führte zur Entwicklung eines der bekanntesten Schätzer in der statistischen Geschichte: des Kaplan-Meier-Schätzersbenannt nach dem Duo, das es in den 1950er Jahren vorgestellt hat.

Wie geht Kaplan-Meier mit unserem Downside um?

Erstens richten wir die Uhren aus. Auch wenn unsere Mäuse zu unterschiedlichen Zeiten behandelt wurden, Was zählt ist Zeit seit der Behandlung. Additionally setzen wir die zurück X-Achse auf Null für alle -Tag Null ist der Tag, an dem sie das Medikament bekommen haben.

(Bild des Autors)

Jetzt, wo wir alle auf derselben Zeitachse sind, möchten wir etwas Nützliches erstellen: und ein Aggregatüberlebenskurve. Diese Kurve sagt uns die Wahrscheinlichkeit, dass a typisch Maus in unserer Gruppe wird zumindest überleben X Monate nach der Behandlung.

Folgen wir gemeinsam der Logik.

  • Bis zu Zeit 3? Jeder lebt noch. Additionally Überleben = 100%. Einfach.
  • Zum Zeitpunkt 4 Maus C stirbt. Dies bedeutet, dass von den 3 Mäusen nur 2 von ihnen nach der Zeit überlebten 4. Dies gibt uns eine Überlebensrate von 67% zum Zeitpunkt 4.
  • Dann zum Zeitpunkt 6, Maus A checkt aus. Von den 2 Mäusen, die es bis zu Zeit 6 geschafft hatten, überlebte nur 1, so dass die Überlebensrate von Zeit 5 bis 6 50percentbeträgt. Multiplizieren Sie das mit den vorherigen 67%, und wir erhalten bis zum Zeitpunkt 6 33%.
  • Nach der Zeit 7 haben wir keine anderen Probanden, die lebend beobachtet werden, daher muss die Kurve hier aufhören.

Lassen Sie uns diese Ergebnisse zeichnen:

(Bild des Autors)

Da Code oft einfacher zu verstehen ist als Wörter, übersetzen wir dies in Python. Wir haben die folgenden Variablen:

  • kaplan_meierein Array, das die Kaplan-Meier-Schätzungen für jeden Zeitpunkt enthält, z. B. die Wahrscheinlichkeit des Überlebens bis zur Zeit T.
  • obs_tein Array, das uns sagt, ob eine Individual zum Zeitpunkt beobachtet wird (z. T.
  • surv_tBoolesche Array, die uns sagt, ob jeder Einzelne zum Zeitpunkt lebt T.
  • surv_t_minus_1Boolesche Array, die uns sagt, ob jeder Einzelne zum Zeitpunkt lebt T-1.

Wir müssen nur alle Personen mitnehmen Tberechnen ihre Überlebensrate von T-1 bis T (survival_rate_t) und multiplizieren Sie es mit der Überlebensrate bis zur Zeit T-1 (km(t-1)) um die Überlebensrate bis zur Zeit zu erhalten T (km

survival_rate_t = surv_t(obs_t).sum() / surv_t_minus_1(obs_t).sum()

kaplan_meier



Wo natürlich der Ausgangspunkt ist kaplan_meier(0) = 1.

Wenn Sie dies nicht von Grund auf neu codieren möchten, ist der Kaplan-Meier-Algorithmus in der Python-Bibliothek erhältlich lifelinesund es kann wie folgt verwendet werden:

from lifelines import KaplanMeierFitter

KaplanMeierFitter().match(
    durations=(6,7,4),
    event_observed=(1,0,1),
).survival_function_("KM_estimate")

Wenn Sie diesen Code verwenden, erhalten Sie das gleiche Ergebnis, das wir mit dem vorherigen Snippet manuell erhalten haben.

Bisher haben wir im Land der Mäuse, der Medizin und der Sterblichkeit rumgehangen. Nicht genau Ihre durchschnittliche vierteljährliche KPI -Bewertung, oder? Wie ist das im Geschäft nützlich?

Umzug in eine geschäftliche Umgebung

Bisher haben wir den „Tod“ so behandelt, als ob es offensichtlich wäre. In Kaplan-Meier Land lebt oder stirbt jemand und wir können die Zeit des Todes leicht protokollieren. Aber jetzt lassen wir uns ein paar reale geschäftliche Unordnung einrühren.

Was gleichmäßig Ist "Tod" in einem geschäftlichen Kontext?

Es stellt sich heraus, dass es nicht einfach ist, diese Frage zu beantworten, zumindest aus ein paar Gründen:

  1. "Tod" ist nicht leicht zu definieren. Nehmen wir an, Sie arbeiten bei einem E-Commerce-Unternehmen. Sie möchten wissen, wann ein Benutzer „gestorben“ ist. Sollten Sie sie als tot zählen, wenn sie ihr Konto löschen? Das ist leicht zu verfolgen ... aber zu selten, um nützlich zu sein. Was ist, wenn sie einfach weniger einkaufen? Aber Wie Viel weniger ist tot? Eine Woche der Stille? Ein Monat? Zwei? Sie sehen das Downside. Die Definition von „Tod“ ist willkürlich, und je nachdem, wo Sie die Linie ziehen, könnte Ihre Analyse wesentlich unterschiedliche Geschichten erzählen.
  2. "Tod" ist nicht dauerhaft. Kaplan-Meier wurde für biologische Anwendungen konzipiert, bei denen es keine Rückkehr gibt, sobald ein Individuum tot ist. Bei Geschäftsanwendungen ist die Auferstehung jedoch nicht nur möglich, sondern auch ziemlich häufig. Stellen Sie sich einen Streaming -Service vor, für den Menschen ein monatliches Abonnement zahlen. In diesem Fall ist es einfach, den „Tod“ zu definieren: Wenn Benutzer ihre Abonnements stornieren. Es ist jedoch ziemlich häufig, dass sie, einige Zeit nach dem Abbrechen, erneut abhebt.

Wie spielt sich das alles in Daten ab?

Gehen wir durch ein Spielzeugbeispiel. Sagen Sie, wir haben einen Benutzer auf unserer E-Commerce-Plattform. In den letzten 10 Monaten haben sie hier viel ausgegeben:

(Bild des Autors)

Um dies in das Kaplan-Meier-Framework zu drücken, müssen wir uns Übersetzen Sie dieses Ausgabenverhalten in eine Lebens- oder Todentscheidung.

Deshalb treffen wir eine Regel: Wenn ein Benutzer 2 aufeinanderfolgende Monate mehr ausgibt, erklären wir sie für „inaktiv“.

Grafisch sieht diese Regel wie folgt aus:

(Bild des Autors)

Da der Benutzer für zwei Monate in Folge 0 US -Greenback ausgegeben hat (Monat 4 und 5), werden wir diesen Benutzer ab Monat 4 inaktiv betrachten. Und wir werden das tun, obwohl der Benutzer im Monat 7 wieder damit ausgegeben hat. Dies liegt daran, dass in Kaplan-Meier Auferstehungen als unmöglich angenommen werden.

Fügen wir nun zwei weitere Benutzer zu unserem Beispiel hinzu. Da wir eine Regel entschieden haben, ihre Wertkurve in eine Überlebenskurve zu verwandeln, können wir auch die Kaplan-Meier-Überlebenskurve berechnen:

(Bild des Autors)

Inzwischen haben Sie es wahrscheinlich bemerkt Wie viel Nuance (und Daten) haben wir weggeworfen, um diese Arbeit zu machen. Benutzer A kam von den Toten zurück - aber wir haben das ignoriert. Benutzer CDie Ausgaben sind erheblich gesunken-aber Kaplan-Meier kümmert sich nicht darum, denn alles ist 1s und 0s. Wir haben einen kontinuierlichen Wert (Ausgaben) in eine binäre Field (lebendig/tot) gezwungen, und auf dem Weg haben wir viele Informationen verloren.

Die Frage ist additionally: Können wir Kaplan-Meier auf eine Weise erweitern, die:

  • Hält die ursprünglichen, kontinuierlichen Daten intaktAnwesend
  • vermeidet willkürliche binäre GrenzwerteAnwesend
  • Ermöglicht Auferstehungen?

Ja, wir können. Im nächsten Abschnitt werde ich Ihnen zeigen, wie.

Einführung "Wert Kaplan-Meier"

Beginnen wir mit der einfachen Kaplan-Meier-Formel, die wir zuvor gesehen haben.

# kaplan_meier: array containing the Kaplan-Meier estimates,
#               e.g. the likelihood of survival as much as time t
# obs_t: array, whether or not a topic has been noticed at time t
# surv_t: array, whether or not a topic was alive at time t
# surv_t_minus_1: array, whether or not a topic was alive at time t−1

survival_rate_t = surv_t(obs_t).sum() / surv_t_minus_1(obs_t).sum()

kaplan_meier

Die erste Änderung, die wir vornehmen müssen, besteht darin, zu ersetzen surv_t Und surv_t_minus_1die Booleschen Arrays sind, die uns sagen, ob ein Thema lebt (1) oder tot (0) mit Arrays, die uns den (wirtschaftlichen) Wert jedes Subjekts zu einem bestimmten Zeitpunkt mitteilen. Zu diesem Zweck können wir zwei genannte Arrays verwenden val_t Und val_t_minus_1.

Aber das reicht nicht aus, denn da wir mit kontinuierlichem Wert zu tun haben, Jeder Benutzer befindet sich in einer anderen Skala und so unter der Annahme, dass wir sie gleich abwägen wollen. Aber welchen Wert sollten wir verwenden? Die vernünftigste Entscheidung ist, ihren Anfangswert zum Zeitpunkt 0 zu verwenden, bevor sie von jeder Behandlung beeinflusst wurden, die wir für sie anwenden.

Deshalb müssen wir auch einen anderen Vektor benutzen, benannt val_t_0 Das repräsentiert den Wert des Individuums zum Zeitpunkt 0.

# value_kaplan_meier: array containing the Worth Kaplan-Meier estimates
# obs_t: array, whether or not a topic has been noticed at time t
# val_t_0: array, consumer worth at time 0
# val_t: array, consumer worth at time t
# val_t_minus_1: array, consumer worth at time t−1

value_rate_t = (
(val_t(obs_t) / val_t_0(obs_t)).sum()
/ (val_t_minus_1(obs_t) / val_t_0(obs_t)).sum()
)

value_kaplan_meier

Was wir gebaut haben, ist a direkte Verallgemeinerung von Kaplan-Meier. In der Tat, wenn Sie festlegen val_t = surv_tAnwesend val_t_minus_1 = surv_t_minus_1Und val_t_0 Als eine Reihe von 1s bricht diese Formel ordentlich zu unserem ursprünglichen Überlebensschätzer zurück. Additionally ja - es ist legitim.

Und hier ist die Kurve, die wir erhalten würden, wenn wir auf diese 3 Benutzer angewendet werden.

(Bild des Autors)

Nennen wir diese neue Model die Wert Kaplan-Meier-Schätzer. Tatsächlich beantwortet es die Frage:

Wie viel Prozent des Wertes überleben noch im Durchschnitt noch danach X Zeit?

Wir haben die Theorie. Aber funktioniert es in freier Wildbahn?

Verwendung von Wert Kaplan-Meier in der Praxis

Wenn Sie den Wert des Kaplan-Meier-Schätzers für einen Spin für Daten in der realen Welt einnehmen und mit der guten alten Kaplan-Meier-Kurve vergleichen, werden Sie wahrscheinlich etwas Tröstliches bemerken- Sie haben oft die gleiche Type. Das ist ein gutes Zeichen. Es bedeutet, dass wir nichts Grundlegendes gebrochen haben, während wir von Binär auf kontinuierlich aufgerüstet wurden.

Aber hier werden die Dinge interessant: Wert Kaplan-Meier sitzt normalerweise ein bisschen über seine traditionelle Cousine. Warum? Denn in dieser neuen Welt dürfen Benutzer „wiederbeleben“. Kaplan-Meier, der die beiden der beiden warfare, hätte sie in dem Second geschrieben, in dem sie ruhig gingen.

Wie können wir das verwenden?

Stellen Sie sich vor, Sie führen ein Experiment durch. Zum Zeitpunkt Null beginnen Sie eine neue Behandlung einer Gruppe von Benutzern. Was auch immer es ist, Sie können nachverfolgen, wie viel Wert „überlebt“, sowohl in den Behandlungs- als auch in den Kontrollgruppen im Laufe der Zeit.

Und so wird Ihre Ausgabe wahrscheinlich aussehen:

(Bild des Autors)

Abschluss

Kaplan-Meier ist eine weit verbreitete und intuitive Methode zur Schätzung der Überlebensfunktionen, insbesondere wenn das Ergebnis ein binäres Ereignis wie Tod oder Misserfolg ist. Viele reale Geschäftsszenarien beinhalten jedoch mehr Komplexität-Auferstehungen sind möglich, und die Ergebnisse werden besser durch kontinuierliche Werte als ein binärer Zustand dargestellt.

In solchen Fällen bietet Wert Kaplan-Meier eine natürliche Erweiterung. Durch die Einbeziehung des wirtschaftlichen Wertes von Individuen im Laufe der Zeit ermöglicht es ein differenzierteres Verständnis der Wertbehebung und des Verfalls. Diese Methode bewahrt die Einfachheit und Interpretierbarkeit des ursprünglichen Kaplan-Meier-Schätzers gleichzeitig an, während er die Dynamik des Kundenverhaltens besser widerspiegelt.

Wert Kaplan-Meier neigt dazu, eine höhere Schätzung des zurückgehaltenen Werts im Vergleich zu Kaplan-Meier zu liefern, da die Rückgewinnung berücksichtigt wird. Dies macht es besonders nützlich, Experimente zu bewerten oder den Kundenwert im Laufe der Zeit zu verfolgen.

Von admin

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert