<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.2 20190208//EN" "https://jats.nlm.nih.gov/publishing/1.2/JATS-journalpublishing1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" article-type="brief-report" dtd-version="1.2" xml:lang="en">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">IJDWDM</journal-id>
<journal-title-group><journal-title>International Journal of Data Warehousing and Data Mining</journal-title></journal-title-group>
<publisher><publisher-name>Thomson &amp; Ryberg Publications</publisher-name></publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.62715/ijdwdm.2026.v1.i1.pp27-30</article-id>
<article-id pub-id-type="publisher-id">b363eaaf23</article-id>
<article-categories><subj-group subj-group-type="heading"><subject>Short Communication</subject></subj-group></article-categories>
<title-group><article-title>Concept Drift Detection in Clickstream Classifiers Using Lightweight Statistical Sketches</article-title></title-group>
<contrib-group>
<contrib contrib-type="author" corresp="yes"><name><surname>Andersen</surname><given-names>Andre</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref><xref ref-type="corresp" rid="cor1">*</xref></contrib>
<contrib contrib-type="author"><name><surname>Nikolic</surname><given-names>Mai</given-names></name><xref ref-type="aff" rid="aff2"><sup>2</sup></xref></contrib>
<contrib contrib-type="author"><name><surname>Assefa</surname><given-names>Arjun</given-names></name><xref ref-type="aff" rid="aff3"><sup>3</sup></xref></contrib>
<aff id="aff1"><label>1</label>Department of Computer Science, Danube Center for Computer Science, Greece</aff>
<aff id="aff2"><label>2</label>Department of Computer Science, Patagonia Research Institute of Computer Science, South Africa</aff>
<aff id="aff3"><label>3</label>Department of Computer Science, Elbe Research Institute of Computer Science, Guyana</aff>
</contrib-group>
<author-notes><corresp id="cor1">* Correspondence: <email>andre.andersen@danube.edu</email></corresp></author-notes>
<pub-date pub-type="epub" iso-8601-date="2026-07-09"><day>09</day><month>07</month><year>2026</year></pub-date>
<volume>1</volume>
<issue>1</issue>
<fpage>27</fpage>
<lpage>30</lpage>
<history>
<date date-type="received" iso-8601-date="2026-03-30"><day>30</day><month>03</month><year>2026</year></date>
<date date-type="accepted" iso-8601-date="2026-05-17"><day>17</day><month>05</month><year>2026</year></date>
</history>
<permissions><copyright-statement>© 2026 The Author(s)</copyright-statement><copyright-year>2026</copyright-year><license license-type="open-access" xlink:href="https://creativecommons.org/licenses/by/4.0/"><license-p>This is an open access article distributed under the Creative Commons Attribution 4.0 International License (CC BY 4.0).</license-p></license></permissions>
<self-uri xlink:href="https://trpub.org/article.php?id=b363eaaf23"/>
<abstract><p>Classifiers that score clickstream sessions for purchase intent, churn or bot activity degrade when the behaviour they were trained on changes, and the change is hard to observe directly because true labels arrive late or never. Detectors that track the error rate therefore react slowly, while detectors that compare full feature distributions are costly at clickstream volumes and awkward to run on partitioned streams. This communication argues that the probabilistic sketches already used for stream analytics are a practical middle course. Quantile sketches summarise numeric features and classifier scores, frequency sketches summarise categorical features such as page or referrer, and cardinality sketches track how many distinct values are in use; all occupy bounded memory, are updated in constant time per event and can be merged across partitions. The note describes how each kind of sketch yields a drift statistic by comparison with a reference window, sets out a monitoring loop that separates cheap unlabelled warnings from label-based confirmation, and discusses what the approach cannot see, in particular a change in the relation between features and label that leaves the feature distributions untouched. No experimental results are presented; the aim is to state the design and its limits clearly enough to be tested.</p></abstract>
<kwd-group kwd-group-type="author">
<kwd>Concept drift</kwd>
<kwd>Clickstream</kwd>
<kwd>Data stream sketches</kwd>
<kwd>Quantile sketch</kwd>
<kwd>Count-min sketch</kwd>
<kwd>Model monitoring</kwd>
</kwd-group>
</article-meta>
</front>
<body>
<sec id="sec1"><title>1. Introduction</title>
<p>A clickstream classifier assigns a label to a session or an event as it happens: likely to buy, likely to abandon, human or automated. The data are non-stationary by nature. Site redesigns move links, campaigns bring new audiences, seasons alter what people look for, and crawlers change their signatures. Widmer and Kubat (1996) described the resulting loss of validity of a learned model as concept drift, and the literature since has produced many methods for detecting and adapting to it (Gama et al., 2014; Lu et al., 2019).</p>
<p>Clickstream settings place two particular demands on a detector. Labels are delayed, since a purchase may follow a session by days and a bot may never be confirmed, and event rates are high, with traffic split across many stream partitions. This note considers how far compact statistical sketches, which stream processors already maintain for analytics, can serve as the detector&#x27;s input.</p>
</sec>
<sec id="sec2"><title>2. Why Standard Detectors Fit Poorly</title>
<p>The classical detectors monitor the model&#x27;s errors. The drift detection method of Gama et al. (2004) tracks the running error rate and signals when it rises significantly above its recorded minimum. ADWIN keeps a window of recent values and shrinks it whenever two sub-windows differ in mean by more than a bound derived from the Hoeffding inequality (Bifet and Gavaldà, 2007). The cumulative sum test of Page (1954) remains a common choice for the same purpose. All three need a stream of correct-or-incorrect outcomes, and in a clickstream that stream runs days behind the traffic it describes.</p>
<p>The alternative is to watch the inputs. Kifer et al. (2004) framed change detection as a two-sample test between a reference window and a current window of unlabelled data. Applied literally, this means retaining raw windows for every feature, which is expensive at high volume, and it sits uneasily with partitioned processing, where no single worker sees the whole window. What is wanted is a summary that is small, updatable one event at a time and combinable across workers.</p>
</sec>
<sec id="sec3"><title>3. Sketches as Drift Signals</title>
<p>A sketch is a compact, approximate summary of a stream with a stated error guarantee. The property that matters most here is mergeability: summaries built separately over two parts of a stream can be combined into a summary of the whole with no loss of guarantee (Agarwal et al., 2013). A reference sketch can then be assembled from many partitions and many past intervals, and a current sketch from the most recent ones. Table 1 lists the three families of sketch that suit clickstream features and the drift statistic each supports.</p>
<table-wrap id="tbl1"><label>Table 1</label><caption><p>Sketch families suited to clickstream features and the drift statistic each supports</p></caption><table frame="hsides" rules="groups"><thead><tr><th>Sketch family</th><th>Summarises</th><th>Drift statistic</th><th>Caveat</th></tr></thead><tbody><tr><td>Quantile sketch (Greenwald and Khanna, 2001; Karnin et al., 2016)</td><td>Numeric features; classifier scores</td><td>Largest gap between reference and current distribution functions</td><td>Sketch error must be well below the alarm threshold</td></tr><tr><td>Count-min sketch (Cormode and Muthukrishnan, 2005)</td><td>Frequencies of pages, referrers, agents</td><td>Divergence between estimated frequency vectors of popular values</td><td>Overestimates rare values; weak in the tail</td></tr><tr><td>HyperLogLog (Flajolet et al., 2007)</td><td>Number of distinct values</td><td>Relative change in distinct count per window</td><td>Sees new values, not shifts among old ones</td></tr><tr><td>Counters and moments</td><td>Event rate; mean and variance</td><td>Standardised difference of means</td><td>Blind to changes of shape</td></tr><tr><td>Per-class score sketches</td><td>Scores, split by predicted label</td><td>Shift in predicted class proportions</td><td>Reflects the model as well as the data</td></tr></tbody></table></table-wrap>
<p>For a numeric feature, such as dwell time or pages per session, a quantile sketch answers rank queries within a small additive error. Evaluating the reference and current sketches on a common grid of values gives two approximate distribution functions, and their largest difference is an estimate of the Kolmogorov-Smirnov statistic. The same construction applied to the classifier&#x27;s output score is especially useful, since the score compresses all features into the one direction the model cares about. For a categorical feature, a count-min sketch returns frequency estimates that never fall below the truth and exceed it by a bounded amount, which is adequate for the popular values that dominate a divergence measure. A cardinality sketch adds a different signal: a sudden rise in the number of distinct user agents or landing pages often marks a crawler or a campaign before any distribution has visibly moved.</p>
</sec>
<sec id="sec4"><title>4. A Monitoring Loop</title>
<p>These statistics can be organised into a loop of six steps, shown in Figure 1. Each stream worker updates its sketches as events pass. At the end of a tumbling window the workers&#x27; sketches are merged and compared with a reference built from a period in which the model was known to perform acceptably. A statistic that crosses a lower threshold raises a warning; one that crosses a higher threshold, or stays at warning level for several consecutive windows, raises an alarm. The two-level scheme follows the practice of the error-based detectors.</p>
<fig id="fig1"><label>Figure 1</label><caption><p>A monitoring loop in which sketch comparisons give early warnings and delayed labels confirm them</p></caption><graphic xlink:href="IJDWDM_V1I1_2026_05_Figure1.png" mimetype="image" mime-subtype="png"/></fig>
<p>An alarm from unlabelled data is a prompt and not a verdict. Feature distributions shift for reasons that leave accuracy intact, and retraining at every alarm would waste effort and could destabilise the model. The loop therefore includes confirmation: when labels for the flagged period mature, an error-based test such as ADWIN is run over them, and only a confirmed alarm triggers retraining and replacement of the reference sketches. Unconfirmed alarms are logged and used to adjust the thresholds. Because many features are tested in every window, some correction for multiple comparisons is needed, and thresholds should account for the sketches&#x27; own approximation error so that it is not mistaken for change.</p>
</sec>
<sec id="sec5"><title>5. Limits of the Approach</title>
<p>Three limits should be stated plainly. Sketches of individual features capture marginal distributions. A change in the dependence between features, with each marginal unchanged, passes unseen unless the classifier score happens to register it. More fundamentally, monitoring inputs detects a change in the distribution of the features and cannot detect a change in the conditional distribution of the label given the features, which the survey literature calls real concept drift (Gama et al., 2014). If customers with the same browsing pattern begin to buy less, only labels will show it. Sketch-based monitoring shortens the time to notice the first kind of change and does nothing for the second.</p>
<p>The third limit is practical. Window length, reference period and thresholds interact, and clickstreams have strong daily and weekly cycles that a naive comparison will report as drift every morning. Comparing a window with the same hour of earlier weeks is the obvious remedy, at the cost of keeping more reference sketches. How well any particular configuration separates harmful change from routine variation is an empirical question that this note does not answer. It should be examined on labelled clickstream data with changes of known timing before the approach is relied on.</p>
</sec>
<sec id="sec6"><title>6. Conclusion</title>
<p>Quantile, frequency and cardinality sketches give clickstream systems an inexpensive, mergeable view of how inputs and model scores are distributed, and comparing current sketches with a reference yields drift statistics long before labels arrive. Used as an early-warning layer in front of label-based confirmation, they fit the constraints of high-volume, partitioned streams. They do not replace labelled evaluation, since the form of drift that matters most to a classifier is the one unlabelled data cannot reveal.</p>
</sec>
<sec id="sec7"><title>Conflict of interest</title>
<p>To be declared by the author(s) before publication.</p>
</sec>
<sec id="sec8"><title>Funding</title>
<p>To be declared by the author(s) before publication.</p>
</sec>
</body>
<back>
<ref-list><title>References</title>
<ref id="ref1"><label>1</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name>Agarwal, P.K., Cormode, G., Huang, Z., Phillips, J.M., Wei, Z. and Yi, K.</string-name></person-group> (<year>2013</year>). <article-title>Mergeable summaries</article-title>. <source>ACM Transactions on Database Systems, 38(4): Article 26</source> <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1145/2500128">https://doi.org/10.1145/2500128</ext-link></mixed-citation></ref>
<ref id="ref2"><label>2</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name>Bifet, A. and Gavaldà, R.</string-name></person-group> (<year>2007</year>). <article-title>Learning from time-changing data with adaptive windowing</article-title>. <source>Proceedings of the 2007 SIAM International Conference on Data Mining</source>, <fpage>443-448</fpage> <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1137/1.9781611972771.42">https://doi.org/10.1137/1.9781611972771.42</ext-link></mixed-citation></ref>
<ref id="ref3"><label>3</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name>Cormode, G. and Muthukrishnan, S.</string-name></person-group> (<year>2005</year>). <article-title>An improved data stream summary: The count-min sketch and its applications</article-title>. <source>Journal of Algorithms</source>, <volume>55(1)</volume>, <fpage>58-75</fpage> <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.jalgor.2003.12.001">https://doi.org/10.1016/j.jalgor.2003.12.001</ext-link></mixed-citation></ref>
<ref id="ref4"><label>4</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name>Flajolet, P., Fusy, É., Gandouet, O. and Meunier, F.</string-name></person-group> (<year>2007</year>). <article-title>HyperLogLog: The analysis of a near-optimal cardinality estimation algorithm</article-title>. <source>Proceedings of the 2007 Conference on Analysis of Algorithms (AofA 07), Discrete Mathematics and Theoretical Computer Science Proceedings</source>, <fpage>137-156</fpage></mixed-citation></ref>
<ref id="ref5"><label>5</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name>Gama, J., Medas, P., Castillo, G. and Rodrigues, P.</string-name></person-group> (<year>2004</year>). <article-title>Learning with drift detection</article-title>. <source>Advances in Artificial Intelligence (SBIA 2004), Lecture Notes in Computer Science 3171</source>, <fpage>286-295</fpage> <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1007/978-3-540-28645-5_29">https://doi.org/10.1007/978-3-540-28645-5_29</ext-link></mixed-citation></ref>
<ref id="ref6"><label>6</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name>Gama, J., Žliobaitė, I., Bifet, A., Pechenizkiy, M. and Bouchachia, A.</string-name></person-group> (<year>2014</year>). <article-title>A survey on concept drift adaptation</article-title>. <source>ACM Computing Surveys, 46(4): Article 44</source> <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1145/2523813">https://doi.org/10.1145/2523813</ext-link></mixed-citation></ref>
<ref id="ref7"><label>7</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name>Greenwald, M. and Khanna, S.</string-name></person-group> (<year>2001</year>). <article-title>Space-efficient online computation of quantile summaries</article-title>. <source>Proceedings of the 2001 ACM SIGMOD International Conference on Management of Data</source>, <fpage>58-66</fpage> <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1145/375663.375670">https://doi.org/10.1145/375663.375670</ext-link></mixed-citation></ref>
<ref id="ref8"><label>8</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name>Karnin, Z., Lang, K. and Liberty, E.</string-name></person-group> (<year>2016</year>). <article-title>Optimal quantile approximation in streams</article-title>. <source>Proceedings of the 57th IEEE Annual Symposium on Foundations of Computer Science</source>, <fpage>71-78</fpage></mixed-citation></ref>
<ref id="ref9"><label>9</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name>Kifer, D., Ben-David, S. and Gehrke, J.</string-name></person-group> (<year>2004</year>). <article-title>Detecting change in data streams</article-title>. <source>Proceedings of the 30th International Conference on Very Large Data Bases</source>, <fpage>180-191</fpage></mixed-citation></ref>
<ref id="ref10"><label>10</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name>Lu, J., Liu, A., Dong, F., Gu, F., Gama, J. and Zhang, G.</string-name></person-group> (<year>2019</year>). <article-title>Learning under concept drift: A review</article-title>. <source>IEEE Transactions on Knowledge and Data Engineering</source>, <volume>31(12)</volume>, <fpage>2346-2363</fpage> <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1109/TKDE.2018.2876857">https://doi.org/10.1109/TKDE.2018.2876857</ext-link></mixed-citation></ref>
<ref id="ref11"><label>11</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name>Page, E.S.</string-name></person-group> (<year>1954</year>). <article-title>Continuous inspection schemes</article-title>. <source>Biometrika, 41(1/2): 100-115</source> <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1093/biomet/41.1-2.100">https://doi.org/10.1093/biomet/41.1-2.100</ext-link></mixed-citation></ref>
<ref id="ref12"><label>12</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name>Widmer, G. and Kubat, M.</string-name></person-group> (<year>1996</year>). <article-title>Learning in the presence of concept drift and hidden contexts</article-title>. <source>Machine Learning</source>, <volume>23(1)</volume>, <fpage>69-101</fpage> <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1007/BF00116900">https://doi.org/10.1007/BF00116900</ext-link></mixed-citation></ref>
</ref-list>
</back>
</article>