Documentation Index

Fetch the complete documentation index at: https://docs.darwinium.com/llms.txt

Use this file to discover all available pages before exploring further.

Journey Model Features

Prev Next

A suite of features have been developed that model how users transition through customer journeys and quantifies the probability of multi-step interactions.

The model quantifies the behaviour of the specific user journeys with respect to the global population that have traversed through the journey and also with respect to the user’s inferred distribution from their history and characteristics. These probabilities can be utilised to detect anomalous journeys and alert on the anomalies by adding rules on the output probabilities from the model themselves, allowing thresholds to be defined with respect to the distribution rather than other static values that can vary across different customer journeys.

Each feature is represented as a probability between 0 and 1. These features can then be used to build rules - like flagging unusual or unexpected transitions between steps. For all features except hitting time features, a value close to 0 means the behavior is highly unlikely, while a value close to 1 means it’s almost certain to happen. For the hitting time features probabilities near 1 indicate that the time taken to hit the step is unusually long, where probabilities near 0 indicate that the time taken is unusually quick.

Implemented Features

These features are available in

outcome['CHAMPION'].features.general

transition_probability_global - Calculates the probability of an individual transition from the previous step to the current step based on historical observations of all users.

transition_probability_user - Calculates the probability of an individual transition from the previous step to the current step based on the user’s previous behaviour.

transition_rate_global - Calculates the expected rate of transition from the previous step to the current step based on historical observations of all users.

transition_rate_user - Calculates the expected rate of transition from the previous step to the current step based on the user’s previous behaviour.

path_probability_global - Calculates the probability of a particular sequence of transitions from the originating step of the journey to the current step based on historical observations of all users.

path_probability_user - Calculates the probability of a particular sequence of transitions from the originating step of the journey to the current step based on the user’s previous behaviour.

probability_of_being_in_current_step_after_elapsed_time_global - Calculates the probability of a user being in a particular step after the elapsed time from the beginning of the journey based on historical observations of all users.

probability_of_being_in_current_step_after_elapsed_time_user - Calculates the probability of a user being in a particular step after the elapsed time from the beginning of the journey based on the user’s previous behaviour.

probability_of_being_in_current_step_after_number_of_transitions_global - Calculates the probability of a user being in a particular step after making the number of transitions from the beginning of the journey based on historical observations of all users.

probability_of_being_in_current_step_after_number_of_transitions_user - Calculates the probability of a user being in a particular step after making the number of transitions from the beginning of the journey based on the user’s previous behaviour.

probability_of_hitting_after_elapsed_time_global - Calculates the probability of a user first arriving at a particular step after the elapsed time, and considering the sequence of transitions from the beginning of the journey based on historical observations of all users.

probability_of_hitting_after_elapsed_time_user - Calculates the probability of a user first arriving at a particular step after the elapsed time, and considering the sequence of transitions from the beginning of the journey based on the user’s previous behaviour.

probability_of_hitting_after_number_of_transitions_global - Calculates the probability of a user first arriving at a particular step after the number of transitions, and considering the sequence of transitions, from the beginning of the journey based on historical observations of all users.

probability_of_hitting_after_number_of_transitions_user - Calculates the probability of a user first arriving at a particular step after the number of transitions, and considering the sequence of transitions from the beginning of the journey based on the user’s previous behaviour.

probability_of_being_in_current_step_for_this_duration_global - Calculates the probability of being in the previous step for the observed duration before transitioning to the current step, based on the historical observations of all users.

probability_of_being_in_current_step_for_this_duration_user - Calculates the probability of being in the previous step for the observed duration before transitioning to the current step, based on the user’s previous behaviour.

Using Within Rules

For features except hitting time features we can create useful rules to find unlikely events with low probability with the example rule below

outcome['CHAMPION'].features.general['transition_probability_user'] <= 0.001

For hitting time features we create rules to events that have happened unusually fast or slow using rules like below.

outcome['CHAMPION'].features.general['probability_of_hitting_after_elapsed_time_global'] <= 0.001 or outcome['CHAMPION'].features.general['probability_of_hitting_after_elapsed_time_global'] >= 0.999