Point processes
Bar: state the Poisson process three ways, and explain Hawkes self-excitation + its stability condition from memory.
What a point process is
A model for random events in time (clicks, requests, purchases): the random object is the set of
timestamps. Summarized by the counting process
Poisson process (the baseline)
A homogeneous Poisson process with rate
- Counts: events in any interval of length
are ; - Interarrivals: gaps are i.i.d.
, mean — memoryless; - Independent increments: disjoint intervals are independent.
Worked:
Inhomogeneous Poisson: rate varies,
Hawkes process (self-excitation = burstiness)
Real clickstreams are clustered: one event makes more events imminent (a session, a viral spike). Hawkes
makes the past raise the intensity:
= baseline (exogenous) rate; each event adds a decaying bump . - Branching ratio
= expected direct offspring per event. - Stability: stationary only if
. As , clusters explode; is a runaway cascade.
Interpretation (branching/Galton–Watson view): each event independently triggers children; total events per
"immigrant"
Why this matters here
- Timing is half of a clickstream. Markov gives what page next; point processes give when. The starter generator uses a Markov chain for pages and a Hawkes process for arrival times (Generating background traffic).
- Inhomogeneous
models seasonality; Hawkes models bursty sessions and bot floods. - A change in
or at a known time = planted drift to measure detection delay (Concept drift in production).
By-hand exercise (meets the bar)
- For
/min, compute in 1 min . (Answer: .) - A Hawkes process has
. Is it stable? What's the expected cluster size per immigrant? (Answer: , stable; cluster size .)
Links
- Pairs with: Markov chains and HMMs (what) ↔ point processes (when)
- Tooling:
tickfor Hawkes simulation/fitting → Synthetic-data toolkit · Offline compute stack - Tails: bursty + heavy-tailed gaps → Heavy-tailed distributions