journal.bib

@comment{{This file has been generated by bib2bib 1.92}}
@comment{{Command line: C:\alldata\data\webbib\bib2bib-1.92.exe -oc article -ob journal.bib -c '$type = "ARTICLE"' cormode.bib}}
@article{CormodeDasguptaGoyalLee18,
  author = {Graham Cormode and Anirban Dasgupta and Amit Goyal and Chi Hoon Lee},
  title = {An Evaluation of Multi-Probe Locality Sensitive Hashing for Computing Similarities over Web-Scale Query Logs},
  journal = {PLOS ONE},
  doi = {10.1371/journal.pone.0191175},
  volume = 13,
  number = 1,
  pages = {e0191175},
  year = 2018,
  url = {../papers/multiprobelsh.pdf},
  abstract = {
    Many modern applications of AI such as web search, mobile
    browsing, image processing, and natural language processing 
    rely on finding similar items from a large database of complex
    objects. 
    Due to the very large scale of data involved 
    (e.g., users' queries from commercial search engines),
    computing such near or nearest neighbors 
    is a non-trivial task, as the computational cost grows 
    significantly with the number of items.
    To address this challenge, we adopt 
    Locality Sensitive Hashing (a.k.a, LSH) methods and evaluate 
    four variants in a distributed computing environment (specifically, Hadoop). 
    We identify several optimizations which improve performance, suitable
    for deployment in very large scale settings. 
    The experimental results demonstrate our 
    variants of LSH achieve the robust performance with better
    recall compared with ``vanilla'' LSH, even
    when using the same amount of space.}
}
@article{ZhangCormodeProcopiucSrivastavaXiao17,
  author = {Jun Zhang and Graham Cormode and Magda Procopiuc and Divesh Srivastava and Xiaokui Xiao},
  title = {PrivBayes: Private Data Release via Bayesian Networks},
  journal = {{ACM} Transactions on Database Systems},
  year = 2017,
  url = {../papers/privbayes-tods.pdf},
  abstract = {
  Privacy-preserving data publishing is an important problem that has
been the focus of extensive study.
The state-of-the-art solution for this problem is differential privacy,
which offers a strong degree of privacy protection without making
restrictive assumptions about the adversary.
Existing techniques using differential privacy, however, cannot
effectively handle the publication of high-dimensional data.
In particular, when the input dataset contains a large number of
attributes, existing methods require injecting a prohibitive amount of
noise compared to the signal in the data, which renders the
published data next to useless.

To address the deficiency of the existing methods, this paper presents
PrivBayes, a differentially private method for releasing
high-dimensional data.
Given a dataset $D$, PrivBayes first constructs a Bayesian network
$\mathcal{N}$, which (i) provides a succinct model of the correlations
among the attributes in $D$ and (ii) allows us to approximate the
distribution of data in $D$ using a set $\mathcal{P}$ of
low-dimensional marginals of $D$.
After that, PrivBayes injects noise
into each marginal in $\mathcal{P}$ to ensure differential privacy,
and then uses the noisy marginals and the Bayesian network to
construct an approximation of the data distribution in $D$. Finally,
PrivBayes samples tuples from the approximate distribution to
construct a synthetic dataset, and then releases the synthetic
data. Intuitively, PrivBayes circumvents the curse of dimensionality,
as it injects noise into the low-dimensional marginals in
$\mathcal{P}$ instead of the high-dimensional dataset $D$.
Private construction of Bayesian networks turns out to be
significantly challenging, and we introduce a novel approach that uses
a surrogate function for mutual information to build the model more
accurately. We experimentally evaluate PrivBayes on real data, and demonstrate that it significantly outperforms existing solutions in terms of accuracy.
}
}
@article{Cormode17,
  author = {Graham Cormode},
  title = {Data Sketching},
  journal = {Communications of the {ACM} ({CACM})},
  volume = 60,
  number = 9,
  pages = {48--55},
  year = 2017,
  url = {../papers/cacm-sketch.pdf},
  pubsite = {http://dl.acm.org/citation.cfm?doid=3080008},
  abstract = {Do you ever feel overwhelmed by a constant stream of information?  It
can seem like there is a barrage of new email and text messages
arriving, phone calls, articles to read, and knocks on the door.
Putting these pieces together to keep track of what's important can be a real challenge. 

The same information overload is of concern in many computational settings. 
For example, telecommunications companies want to keep track of the activity on their network, to identify the overall network health, and spot anomalies or changes in behavior.  Yet, the scale of events occurring is huge: many millions of network events per hour, per network element. 
And while new technologies allow the scale and granularity of events being monitored to increase by orders of magnitude, the capacity of computing elements to make sense of these (processors, memory and disks) is barely increasing.  
Even on a small scale, the amount of information may be too large to
store in an impoverished setting (say, an embedded device),
or be too big to conveniently keep in fast storage. 


In response to this challenge, the model of streaming data processing has grown in popularity. 
In this setting, the aim is no longer to capture, store and index
every minute event, but rather to quickly process each observation to
create some summary of the current state.
Following its processing, an event is dropped, and is no longer accessible. 
The summary that is retained is often referred to as sketch of the
data. 
Coping with the vast scale of information means making a number of compromises: the description of the world is approximate, rather than exact; 
the nature of queries to be answered must be decided in advance, rather than after the fact; and some questions are now insoluble. 
However, the ability to process vast quantities of data at blinding speeds with modest resources can more than make up for these limitations. 
As a consequence, streaming methods have been adopted in a number of domains, starting with telecommunications, but spreading to search engines, social networks, finance, and time-series analysis.  
These ideas are also finding application in areas where traditional approaches are applicable, but the rough and ready sketching approach is more cost-effective.
Successful applications of sketching involve a mixture of algorithmic tricks, systems know-how, and mathematical insight, and have led to new research contributions in each of these areas. 

In this article, we introduce the ideas behind, and applications, of sketching, with a focus on the algorithmic innovations. 
That is, we describe some algorithmic developments in the abstract,
and then indicate the subsequent steps needed to put them into
practice, with examples. 
We will see four novel algorithmic ideas, and discuss some emerging areas.}
}
@article{CohenCormodeDuffieldLund16,
  author = {Edith Cohen and Graham Cormode and Nick Duffield and Carsten 
Lund},
  title = {On the Tradeoff between Stability and Fit},
  journal = {{ACM} Transactions on Algorithms},
  year = 2016,
  volume = 13,
  number = 1,
  pubsite = {http://dl.acm.org/citation.cfm?id=2963103},
  url = {../papers/stability.pdf},
  abstract = {
In computing, as in many aspects of life, changes incur cost. Many 
optimization problems are formulated as a one-time instance starting 
from scratch. However, a common case that arises is when we already have 
a set of prior assignments and must decide how to respond to a new set 
of constraints, given that each change from the current assignment comes 
at a price. That is, we would like to maximize the fitness or efficiency 
of our system, but we need to balance it with the changeout cost from 
the previous state.

We provide a precise formulation for this tradeoff and analyze the 
resulting stable extensions of some fundamental problems in measurement 
and analytics. Our main technical contribution is a stable extension of 
Probability Proportional to Size (PPS) weighted random sampling, with 
applications to monitoring and anomaly detection problems. We also 
provide a general framework that applies to top-k, minimum spanning 
tree, and assignment. In both cases, we are able to provide exact 
solutions and discuss efficient incremental algorithms that can find new 
solutions as the input changes.}
}
@article{ChakrabartiCormodeMcGregor16,
  author = {Chakrabarti, Amit and Cormode, Graham and McGregor, Andrew},
  title = {Robust Lower Bounds for Communication and Stream Computation},
  year = {2016},
  pages = {1--35},
  doi = {10.4086/toc.2016.v012a010},
  publisher = {Theory of Computing},
  journal = {Theory of Computing},
  volume = {12},
  number = {10},
  url = {../papers/rcctoc.pdf},
  link = {http://www.theoryofcomputing.org/articles/v012a010},
  abstract = {
   We study the communication complexity of evaluating functions when the
input data is randomly allocated (according to some known distribution)
amongst two or more players, possibly with information overlap.  This
naturally extends previously studied variable partition models such as
the best-case and worst-case partition models.  We aim to understand whether the
hardness of a communication problem holds for almost every allocation of
the input, as opposed to holding for perhaps just a few atypical
partitions.

A key application is to the heavily studied data stream model. There is
a strong connection between our communication lower bounds and lower
bounds in the data stream model that are ``robust'' to the ordering of
the data.  That is, we prove lower bounds for when the order of the
items in the stream is chosen not adversarially but rather uniformly (or
near-uniformly) from the set of all permutations. This random-order data
stream model has attracted recent interest, since lower bounds here give
stronger evidence for the inherent hardness of streaming problems. 

Our results include the first random-partition communication lower
bounds for problems including multi-party set disjointness and
gap-Hamming-distance. Both are tight. We also extend and improve
previous results for a form of pointer
jumping that is relevant to the problem of selection (in particular,
median finding). Collectively, these results yield lower bounds for a
variety of problems in the random-order data stream model, including
estimating the number of distinct elements, approximating frequency
moments, and quantile estimation.}
}
@article{LuoWangYiCormode16,
  author = {Ge Luo and
               Lu Wang and
               Ke Yi and
               Graham Cormode},
  title = {Quantiles over data streams: experimental comparisons, new analyses,
               and further improvements},
  journal = {The {VLDB} Journal},
  volume = {25},
  number = {4},
  pages = {449--472},
  year = {2016},
  link = {http://dx.doi.org/10.1007/s00778-016-0424-7},
  url = {../papers/nquantvldbj.pdf},
  abstract = { A fundamental problem in data management and analysis is to generate descriptions of
  the distribution of data.  It is most common to give such descriptions in terms of
  the cumulative distribution, which is characterized by the quantiles of the data.
  The design and engineering of efficient methods to find these quantiles has attracted
  much study, especially in the case where the data is given incrementally, and we must
  compute the quantiles in an online, streaming fashion.  While such algorithms have
  proved to be extremely useful in practice, there has been limited formal comparison
  of the competing methods, and no comprehensive study of their performance.  In this
  paper, we remedy this deficit by providing a taxonomy of different methods, and
  describe efficient implementations.  In doing so, we propose new variants that have
  not been studied before, yet which outperform existing methods.
  To illustrate this,
  we provide detailed experimental comparisons demonstrating the tradeoffs between
  space, time, and accuracy for quantile computation.}
}
@article{MirylenkaCormodePalpanasSrivastava,
  author = {Katsiaryna Mirylenka and
               Graham Cormode and
               Themis Palpanas and
               Divesh Srivastava},
  title = {Conditional heavy hitters: detecting interesting correlations in data
               streams},
  journal = {The {VLDB} Journal},
  volume = {24},
  number = {3},
  pages = {395--414},
  year = {2015},
  pubsite = {http://dx.doi.org/10.1007/s00778-015-0382-5},
  url = {../papers/condhh-vldbj.pdf},
  abstract = {
  The notion of {\em heavy hitters}---items that make up a large
  fraction of the population---has been successfully used in a variety
  of applications across sensor and RFID monitoring, network data
  analysis, event mining, and more. 
  Yet this notion often fails to capture the semantics we desire when we observe data in the form of
  correlated pairs. 
  Here, we are interested in items that are {\em conditionally} frequent: when a particular item is frequent within the context of its parent item. 
  In this work, we introduce and formalize the notion of Conditional Heavy Hitters to identify such
  items, with applications in network monitoring, and Markov chain modeling.
  We explore the relationship between Conditional Heavy Hitters and other related notions in the literature, and show analytically and experimentally the usefulness of our approach.
  We introduce several algorithm variations that allow us to efficiently find conditional heavy hitters for input data with very different characteristics, and provide analytical results for their performance.
  Finally, we perform experimental evaluations with several synthetic and real datasets to demonstrate the efficacy of our methods, and to study the behavior of the proposed algorithms for different types of data. 
}
}
@article{PapadopoulosCormodeDEligiannakisGarofalakis14,
  author = {Stavros Papadopoulos and
               Graham Cormode and
               Antonios Deligiannakis and
               Minos N. Garofalakis},
  title = {Lightweight Query Authentication on Streams},
  journal = {{ACM} Transactions on Database Systems},
  volume = {39},
  number = {4},
  pages = {30:1--30:45},
  year = 2015,
  pubsite = {http://doi.acm.org/10.1145/2656336},
  url = {../papers/streamauthtods.pdf},
  abstract = {
We consider a \emph{stream outsourcing} setting, where a data owner
delegates the management of a set of disjoint data streams to an
untrusted server. The owner \emph{authenticates} his streams via
signatures. The server processes continuous queries on the union of
the streams for clients trusted by the owner. Along with the results,
the server sends proofs of result correctness derived from the owner's
signatures, which are easily verifiable by the clients. We design
novel constructions for a collection of fundamental problems over streams
represented as \emph{linear algebraic} queries. In particular, our basic schemes
authenticate \emph{dynamic vector sums} and
\emph{dot products}, 
as well as \emph{dynamic matrix products}. 
These techniques can be adapted for authenticating a wide range
of important operations in streaming environments, including group by
queries, joins, in-network aggregation, similarity matching, and event processing.
All our schemes are very \emph{lightweight}, and offer strong \emph{cryptographic}
guarantees derived from formal definitions and proofs. 
We experimentally confirm the practicality of our schemes in the
performance sensitive streaming setting. 
  }
}
@article{CormodeJowhari17,
  author = {Graham Cormode and Hossein Jowhari},
  title = {A Second Look at Counting Triangles in Graph Streams (Revised)},
  year = 2017,
  journal = {Theoretical Computer Science},
  pages = {22-30},
  volume = {683},
  pubsite = {http://www.sciencedirect.com/science/article/pii/S0304397516302560},
  url = {../papers/tri9-3.pdf},
  abstract = {
In this paper we present improved results on the problem of counting triangles in edge streamed graphs. 
For graphs with $m$ edges and at least $T$ triangles, we show that an extra look over
the stream yields a two-pass streaming algorithm that uses $O(\frac{m}{\epsilon^{4.5}\sqrt{T}})$ space and
outputs a $(1+\epsilon)$ approximation of the number of triangles in the graph. This
 improves upon the two-pass streaming tester of Braverman, Ostrovsky and Vilenchik, ICALP 2013, which
 distinguishes between triangle-free graphs and graphs with at least $T$ triangle using $O(\frac{m}{T^{1/3}})$ space. Also, in terms of dependence on $T$, we show that
 more passes would not lead to a better space bound. In other words, we prove there is no constant pass streaming algorithm that distinguishes between triangle-free graphs from graphs with at least $T$ triangles using $O(\frac{m}{T^{1/2+\rho}})$ space for any constant $\rho \ge 0$.   
  }
}
@article{AgarwalCormodeHuangPhillipsWeiYi13,
  author = {Pankaj K. Agarwal and
               Graham Cormode and
               Zengfeng Huang and
               Jeff M. Phillips and
               Zhewei Wei and
               Ke Yi},
  title = {Mergeable summaries},
  journal = {{ACM} Transactions on Database Systems},
  volume = {38},
  number = {4},
  year = {2013},
  pages = {26},
  link = {http://doi.acm.org/10.1145/2500128},
  url = {../papers/mergeabletods.pdf},
  abstract = {
      We study the {\em mergeability} of data summaries.  Informally speaking,
  mergeability requires that, given two summaries on two data sets, there
  is a way to merge the two summaries into a single summary on the two data
  sets combined together, while preserving the error and size guarantees.
  This property means that the summaries can be merged in a way akin to other
  algebraic operators such as sum and max,
which is especially useful for computing summaries on massive distributed
data.  Several data summaries are trivially mergeable by construction, most
notably all the {\em sketches} that are linear functions of the data sets.
But some other fundamental
ones like those for heavy hitters and quantiles, are not (known to be)
mergeable.  In this paper, we demonstrate that these summaries are indeed
mergeable or can be made mergeable after appropriate modifications.
Specifically, we show that for $\epsilon$-approximate heavy hitters, there is a
deterministic mergeable summary of size $O(1/\epsilon)$; for $\epsilon$-approximate
quantiles, there is a deterministic summary of size $O((1/\epsilon)
\log(\epsilon n))$ that has a restricted form of mergeability, and a randomized
one of size $O((1/\epsilon) \log^{3/2}(1/\epsilon))$ with full
mergeability. We also extend our results to geometric summaries such as
$\epsilon$-approximations which permit approximate multidimensional range counting queries.  While most of the results in
this paper are theoretical in nature, some of the algorithms are actually
very simple and even perform better than the previously best known 
algorithms,
which we demonstrate through experiments in a simulated sensor network.

We also achieve two results of independent interest: 
(1) we provide the best known randomized streaming bound for $\epsilon$-approximate quantiles that depends only on $\epsilon$, of size $O((1/\epsilon) \log^{3/2}(1/\epsilon))$, and 
(2) we demonstrate that the MG and the SpaceSaving summaries for heavy hitters are isomorphic. 
}
}
@article{ChakrabartiCormodeMcGregorThaler14,
  author = {Amit Chakrabarti and Graham Cormode and Andrew McGregor and Justin Thaler},
  journal = {{ACM} Transactions on Algorithms},
  year = 2014,
  title = {Annotations in Data Streams},
  volume = 11,
  number = 1,
  url = {../papers/annotationj.pdf},
  abstract = {
  The central goal of data stream algorithms is to process massive streams
  of data using {\em sublinear} storage space. 
  Motivated by work in the database community on outsourcing database and data stream processing, we ask whether the space usage of such algorithms can be further
  reduced by enlisting a more powerful ``helper'' who can {\em annotate}
  the stream as it is read. We do not wish to blindly trust the helper, so we
  require that the algorithm be convinced of having computed a correct
  answer.   We show
  upper bounds that achieve a non-trivial tradeoff between the
  amount of annotation used and the space required to verify it.  We also
  prove lower bounds on such tradeoffs, often nearly matching the upper
  bounds, via notions related to Merlin-Arthur communication complexity.
  Our results cover the classic data stream problems of selection,
  frequency moments, and fundamental graph problems such as
  triangle-freeness and connectivity. 
    Our work is also part of a
  growing trend --- including recent studies of multi-pass streaming,
  read/write streams and randomly ordered streams --- of asking more
  complexity-theoretic questions about data stream processing. 
  It is a recognition that, in addition to practical relevance,  the
  data stream model
raises many interesting theoretical questions in its own right. }
}
@article{ChakrabartiCormodeKondapallyMcGregor13,
  author = {Amit Chakrabarti and
               Graham Cormode and
               Ranganath Kondapally and
               Andrew McGregor},
  title = {Information Cost Tradeoffs for Augmented Index and Streaming
               Language Recognition},
  journal = {{SIAM} Journal on Computing ({SICOMP})},
  volume = {42},
  number = {1},
  year = {2013},
  pages = {61-83},
  url = {../papers/pqsicomp.pdf},
  link = {http://epubs.siam.org/doi/abs/10.1137/100816481},
  abstract = {This paper makes three main contributions to the theory of communication
complexity and stream computation. First, we present new bounds on the
information complexity of \textsc{augmented-index}. In contrast to analogous results for \textsc{index}
by Jain, Radhakrishnan and Sen [\emph{J.~ACM}, 2009], we have to overcome the
significant technical challenge that protocols for \textsc{augmented-index} may violate the
``rectangle property'' due to the inherent input sharing. Second, we use these
bounds to resolve an open problem of Magniez, Mathieu and Nayak [\emph{STOC},
2010] that asked about the multi-pass complexity of recognizing Dyck
languages. This results in a natural separation between the standard
multi-pass model and the multi-pass model that permits reverse passes.  Third,
we present the first \emph{passive memory checkers} that verify the
interaction transcripts of priority queues, stacks, and double-ended queues.
We obtain tight upper and lower bounds for these problems, thereby addressing
an important sub-class of  the memory checking framework of Blum et al.
[\emph{Algorithmica}, 1994]. }
}
@article{CormodeFirmani13J,
  author = {Graham Cormode and Donatella Firmani},
  journal = {Distributed and Parallel Databases},
  note = {Special issue on Data Summarization on Big Data},
  link = {http://link.springer.com/article/10.1007/s10619-013-7131-9},
  url = {../papers/l0journal.pdf},
  year = 2014,
  volume = 32,
  number = 3,
  pages = {315-335},
  title = {A unifying framework for $l_0$-sampling algorithms},
  abstract = {
    The problem of building an $l_0$-sampler is to sample
    near-uniformly from the support set of a dynamic multiset.  
    This problem has a variety of applications within data analysis,
    computational geometry and graph algorithms. 
    In this paper, we abstract a set of steps for building an $l_0$-sampler, based on sampling, recovery and selection. 
    We analyze the implementation of an $l_0$-sampler within this
    framework, and show how prior constructions of 
    $l_0$-samplers can all be expressed in terms of these steps. 
    Our experimental contribution is to provide a first detailed study of the
accuracy and computational cost of $l_0$-samplers.}
}
@article{CormodeMaMuthukrishnanThompson13,
  title = {Socializing the h-index },
  journal = {Journal of Informetrics },
  volume = {7},
  number = {3},
  pages = {718 - 721},
  year = {2013},
  link = {http://www.sciencedirect.com/science/article/pii/S1751157713000448},
  url = {../papers/soch.pdf},
  author = {Graham Cormode and Qiang Ma and S. Muthukrishnan and Brian Thompson},
  abstract = {A variety of bibliometric measures have been proposed in order to
quantify the impact of researchers and their work. The h-index is a
notable and widely-used example which aims to improve over
simple metrics such as raw counts of papers or citations. However, a
limitation of this measure is that it considers each author in
isolation, and does not account for contributions as part of a
collaborative team. To address this, we propose a natural variant that
we dub the Social h-index. The aim of this measure is to redistribute
the h-index score to reflect an individual's impact on the research
community. In addition to describing this new measure, we provide
examples, discuss its properties, and contrast with other measures. }
}
@article{Cormode13edit,
  author = {Graham Cormode},
  journal = {SIGMOD Record},
  title = {What does an Associate Editor actually do?},
  year = 2013,
  month = jun,
  volume = 42,
  number = 2,
  pages = {52--58},
  url = {../papers/editor.pdf},
  link = {http://www.sigmod.org/publications/sigmod-record/1306/pdfs/09.forum.cormode.pdf},
  abstract = {What does a Associate Editor (AE) of a journal actually
do? The answer may be far from obvious. This article
describes the steps that one AE follows in handling a
submission. The aim is to shed light on the process, for
the benefit of authors, reviewers, and other AEs.}
}
@article{CormodeMuthukrishnanYan13,
  author = {Graham Cormode and S. Muthukrishnan and Jinyun Yan},
  title = {Studying the source code of scientific research},
  journal = {SIGKDD Explorations},
  month = dec,
  year = 2012,
  volume = 14,
  number = 2,
  pages = {59-62},
  link = {http://www.sigkdd.org/sites/default/files/issues/14-2-2012-12/V14-02-07-Cormode.pdf},
  url = {../papers/scienceographykdd.pdf},
  abstract = {
   Just as inspecting the source code of programs tells us a lot
   about the process of programming, inspecting the ``source
   code'' of scientific papers informs on the process of scientific writing. We report on our study of the source of tens
   of thousands of papers from Computer Science and Mathematics.}
}
@article{Cormode13,
  author = {Graham Cormode},
  journal = {SIGMOD Record},
  year = 2013,
  month = mar,
  volume = 42,
  number = 1,
  title = {The Continuous Distributed Monitoring Model},
  link = {TalkCormode11CD.html},
  url = {../papers/cdsurveysigmodrecord.pdf},
  link = {http://www.sigmod.org/publications/sigmod-record/1303/pdfs/03.principles.cormode.pdf},
  abstract = {
    In the model of continuous distributed monitoring, a number of
    observers each see a stream of observations.  Their goal is to work
    together to compute a function of the union of their observations.
    This can be as simple as counting the total number of observations, or
    more complex non-linear functions such as tracking the entropy of the
    induced distribution.  Assuming that it is too costly to simply
    centralize all the observations, it becomes quite challenging to
    design solutions which provide a good approximation to the current
    answer, while bounding the communication cost of the observers, and
    their other resources such as their space usage.  This survey 
    introduces this model, and describe a selection results in this
    setting, from the simple counting problem to a variety of other
    functions that have been studied.}
}
@article{CormodeMuthukrishnanYiZhang12,
  author = {Graham Cormode and S. Muthukrishnan and Ke Yi and Qin Zhang},
  title = {Continuous sampling from distributed streams},
  journal = {Journal of the ACM ({JACM})},
  volume = 59,
  number = 2,
  month = apr,
  year = 2012,
  att_authors = {gc2602},
  att_private = {false},
  url = {../papers/cdsamplejacm.pdf},
  abstract = {
     A fundamental problem in data management is to draw and maintain a sample
     of a large data set, for approximate query answering, selectivity
     estimation, and query planning.  With large, streaming data sets, this
     problem becomes particularly difficult when the data is shared across
     multiple distributed sites.  The main challenge is to ensure that a
     sample is drawn uniformly across the union of the data while minimizing
     the communication needed to run the protocol on the evolving data.  At
     the same time, it is also necessary to make the protocol lightweight, by
     keeping the space and time costs low for each participant.
   %
     In this paper, we present communication-efficient protocols for
     continuously maintaining a sample (both with and without replacement)
     from $k$ distributed streams.  These apply to the case when we want a
     sample from the full streams, and to the sliding window cases of only the
     $W$ most recent elements, or arrivals within the last $w$ time units.  We
     show that our protocols are optimal (up to logarithmic factors), not just
     in terms of the communication used, but also the time and space costs for
     each participant.

 }
}
@article{CormodeMitzenmacherThaler12Algo,
  author = {Graham Cormode and Michael Mitzenmacher and Justin Thaler},
  year = 2013,
  volume = 65,
  number = 2,
  pages = {409--442},
  att_authors = {gc2602},
  att_private = {false},
  link = {http://arxiv.org/abs/1004.2899},
  url = {../papers/graphipj.pdf},
  journal = {Algorithmica},
  title = {Streaming Graph Computations with a Helpful Advisor},
  abstract = {Motivated by the trend to outsource work to commercial cloud computing
services, we consider a variation of the streaming paradigm where a
streaming algorithm can be assisted by a powerful helper that can
provide annotations to the data stream.  We extend previous work on
such {\em annotation models} by considering a number of graph
streaming problems.  Without annotations, streaming algorithms for 
graph problems generally require significant memory;  we show that
for many standard problems, including all graph problems that can 
be expressed with totally unimodular integer programming formulations,
only constant space (measured in words) is
needed for single-pass algorithms given linear-sized annotations.
We also obtain protocols achieving essentially \textit{optimal} tradeoffs between
annotation length and memory usage for several important problems, including
integer matrix-vector multiplication, as well as
shortest $s$-$t$ path in small-diameter graphs. We also obtain non-trivial tradeoffs for minimum 
weight bipartite perfect matching and shortest $s$-$t$ path in general graphs. }
}
@article{CormodeMuthukrishnan12,
  author = {Graham Cormode and S. Muthukrishnan},
  att_authors = {gc2602},
  att_private = {false},
  journal = {IEEE Software},
  url = {../papers/cmsoft.pdf},
  title = {Approximating Data with the Count-Min Data Structure},
  year = 2012,
  abstract = {Sketch data structures have been introduced to compactly summarize massive data sets and allow key properties of the data to be approximated accurately. In this paper, we introduce a prominent example, the Count-Min sketch, and describe how it accurately solves a fundamental problem of tracking counts of items in large data sets. Applications, implementations and extensions are also discussed.}
}
@article{CormodeMuthukrishnanYi11,
  author = {Graham Cormode and S. Muthukrishnan and Ke Yi},
  title = {Algorithms for distributed functional monitoring},
  journal = {{ACM} Transactions on Algorithms},
  att_authors = {gc2602},
  att_private = {false},
  volume = 7,
  number = 2,
  year = 2011,
  pages = {1--21},
  url = {../papers/cdxj.pdf},
  link = {http://portal.acm.org/citation.cfm?doid=1921659.1921667},
  abstract = {
We study what we call {\em functional monitoring} problems.  We have $k$
players each receiving a stream of items, and communicating with a central
coordinator.  Let the multiset of items received by player $i$ up until
time $t$ be $A_i(t)$.  The coordinator's task is to monitor a given
function $f$ computed over the union of the inputs $\cup_{i} A_i(t)$, {\em
  continuously} at all times $t$.  The goal is to minimize the number of
bits communicated between the players and the coordinator.  Of interest is
the approximate version where the coordinator outputs $1$ if $f \geq \tau$
and $0$ if $f\leq (1-\epsilon)\tau$.  This defines the
$(k,f,\tau,\epsilon)$ distributed functional monitoring problem.
Functional monitoring problems are fundamental in distributed systems, in
particular sensor networks, where we must minimize communication; they also
connect to the well studied streaming model and communication complexity.
Yet few formal bounds are known for functional monitoring.

We give upper and lower bounds for the $(k,f,\tau,\epsilon)$ problem for
some of the basic $f$'s.  In particular, we study the frequency moments
$F_p$ for $p=0,1,2$.  For $F_0$ and $F_1$, we obtain monitoring algorithms
with costs almost the same as their one-shot computation algorithms.
However, for $F_2$ the monitoring problem seems much harder.  We give a
carefully constructed multi-round algorithm that uses ``sketch summaries''
at multiple levels of details and solves the $(k,F_2,\tau,\epsilon)$
problem with communication ${O}\sim(k^2/\epsilon + k^{3/2}/\epsilon^3)$.
Our algorithmic techniques are likely to be useful for other functional
monitoring problems as well.
  }
}
@article{CormodeKrishnamurthyWillinger10,
  author = {Graham Cormode and Balachander Krishnamurthy and Walter Willinger},
  title = {A Manifesto for Modeling and Measurement in Social Media},
  att_authors = {gc2602,bk1836,ww9241},
  att_private = {false},
  journal = {First Monday},
  month = sep,
  volume = 15,
  number = 9,
  year = 2010,
  url = {../papers/mmmsm.pdf},
  link = {http://firstmonday.org/htbin/cgiwrap/bin/ojs/index.php/fm/article/view/3072/2601},
  abstract = {
  Online Social Networks (OSNs) have been the subject of a great deal of study in recent years. The
  majority of this study has used simple models, such as node-and-edge graphs, to describe the data. In
  this paper, we argue that such models, which necessarily limit the structures that can be described and
  omit temporal information, are insufficient to describe and study OSNs. Instead, we propose that a richer
  class of Entity Interaction Network models should be adopted. We outline a checklist of features that
  can help build such a model, and apply it to three popular networks (Twitter, Facebook and YouTube) to
  highlight important features. We also discuss important considerations for the collection, validation and
sharing of OSN data.}
}
@article{CormodeGarofalakis10,
  author = {Graham Cormode and Minos Garofalakis},
  title = {Histograms and Wavelets on Probabilistic Data},
  att_authors = {gc2602},
  att_private = {false},
  journal = {{IEEE} Transactions on Knowledge and Data Engineering},
  volume = 22,
  number = 8,
  year = 2010,
  month = aug,
  pages = {1142-1157},
  url = {../papers/phistj.pdf},
  link = {http://www.computer.org/portal/web/csdl/doi/10.1109/TKDE.2010.66},
  abstract = {There is a growing realization that uncertain information is a first-class citizen in modern database management. As such, we need techniques to correctly and efficiently process uncertain data in database systems. In particular, data reduction techniques that can produce concise, accurate synopses of large probabilistic relations are crucial. Similar to their deterministic relation counterparts, such compact probabilistic data synopses can form the foundation for human understanding and interactive data exploration, probabilistic query planning and optimization, and fast approximate query processing in probabilistic database systems. In this paper, we introduce definitions and algorithms for building histogram- and Haar wavelet-based synopses on probabilistic data. The core problem is to choose a set of histogram bucket boundaries or wavelet coefficients to optimize the accuracy of the approximate representation of a collection of probabilistic tuples under a given error metric. For a variety of different error metrics, we devise efficient algorithms that construct optimal or near optimal size B histogram and wavelet synopses. This requires careful analysis of the structure of the probability distributions, and novel extensions of known dynamic-programming-based techniques for the deterministic domain. Our experiments show that this approach clearly outperforms simple ideas, such as building summaries for samples drawn from the data distribution, while taking equal or less time.}
}
@article{ChakrabartiCormodeMcGregor10,
  author = {Amit Chakrabarti and Graham Cormode and Andrew McGregor},
  att_authors = {gc2602},
  att_private = {false},
  title = {A Near-Optimal Algorithm for Computing the Entropy of a Stream},
  journal = {{ACM} Transactions on Algorithms},
  year = 2010,
  volume = 6,
  number = 3,
  url = {../papers/entropyj.pdf},
  abstract = {  We describe a simple algorithm for approximating the empirical entropy
  of a stream of $m$ values up to a multiplicative factor of $(1+\epsilon)$ using a single pass, $O(\epsilon^{-2} \log
  (\delta^{-1}) \log m)$ words of space, and $O(\log \epsilon^{-1} + \log
  \log \delta^{-1} + \log \log m)$ processing time per item in the
  stream.  Our algorithm is based upon a novel extension of a method
  introduced by Alon, Matias, and Szegedy.  This improves
  over previous work on this problem.
  We show a space lower bound of $\Omega({\epsilon^{-2}/ \log^2
  (\epsilon^{-1})})$, demonstrating that our algorithm is near-optimal in terms of
  its dependency on $\epsilon$.  

  We show that generalizing to multiplicative-approximation of the $k$-th order entropy requires close to
  linear space for $k\geq 1$. In contrast we show that additive-approximation is possible in a single pass using only poly-logarithmic space.  Lastly, we show how to compute a multiplicative 
  approximation to the entropy of a random walk on an undirected graph.}
}
@article{BerindeCormodeIndykStrauss10,
  author = {Radu Berinde and Graham Cormode and Piotr Indyk and Martin Strauss},
  att_authors = {gc2602},
  att_private = {false},
  title = {Space-optimal Heavy Hitters with Strong Error Bounds},
  journal = {{ACM} Transactions on Database Systems},
  year = 2010,
  volume = 35,
  number = 4,
  url = {../papers/countersj.pdf},
  abstract = {The problem of finding heavy hitters and approximating the frequencies
of items is at the heart of many problems in data stream analysis. It
has been observed that several proposed solutions to this problem can
outperform their worst-case guarantees on real data. This leads to the
question of whether some stronger bounds can be guaranteed. We answer
this in the positive by showing that a class of ``counter-based
algorithms'' (including the popular and very space-efficient Frequent
and SpaceSaving algorithms) provide much stronger approximation
guarantees than previously known. Specifically, we show that errors in
the approximation of individual elements do not depend on the
frequencies of the most frequent elements, but only on the frequency
of the remaining ``tail.''
This shows that counter-based methods are the
most space-efficient (in fact, space-optimal) algorithms having this
strong error bound. 

This tail guarantee allows these algorithms to solve the ``sparse
recovery'' problem. Here, the goal is to recover a faithful
representation of the vector of frequencies, $f$. We prove that using
space $O(k)$, the algorithms construct an approximation $f^*$ to the
frequency vector $f$ so that the $L_1$ error $||f-f^*||_1$ is close to the best
possible error $\min_{f'} ||f' - f||_1$, where $f'$ ranges over all vectors
with at most $k$ non-zero entries. This improves the previously best
known space bound of about $O(k \log n)$ for streams without element deletions
(where $n$ is the size of the domain from which stream elements are drawn). Other
consequences of the tail guarantees are results for skewed (Zipfian) data, and
guarantees for accuracy of merging multiple summarized streams.  }
}
@article{CormodeJestesLiYi11,
  author = {Graham Cormode and Jeffrey Jestes and Feifei Li and Ke Yi},
  att_authors = {gc2602},
  att_private = {false},
  title = {Semantics of Ranking Queries for Probabilistic Data },
  journal = {{IEEE} Transactions on Knowledge and Data Engineering},
  year = 2011,
  volume = 23,
  number = 12,
  pages = {1903--1917},
  url = {../papers/exprankj.pdf},
  abstract = {Recently, there have been several attempts to
propose definitions and algorithms for ranking queries on
probabilistic data.  However, these lack many intuitive
properties of a top-$k$ over deterministic data.  We define numerous
fundamental properties, including {\em exact-$k$}, {\em
  containment}, {\em unique-rank}, {\em value-invariance}, and {\em
  stability}, which are satisfied by ranking queries on certain
data.  We argue these properties should also be carefully studied
in defining ranking queries in probabilistic data, and fulfilled by
definition for ranking uncertain data for most applications.
We propose an intuitive new ranking definition based on the 
observation that the ranks of a tuple across all
possible worlds represent a well-founded rank distribution. We
studied the ranking definitions based on the expectation, the median
and other statistics of this rank distribution for a tuple and
derived the {\em expected rank, median rank and quantile rank}
correspondingly.  We are able to prove that the expected rank, median
rank and quantile rank satisfy all these properties for a ranking
query.  We provide efficient solutions to compute such rankings across
the major models of uncertain data, such as attribute-level and
tuple-level uncertainty. 
Finally, a comprehensive experimental study
confirms the effectiveness of our approach.}
}
@article{CormodeSrivastavaYuZhang09,
  author = {Graham Cormode and Divesh Srivastava and Ting Yu and Qing Zhang},
  att_authors = {gc2602,ds8961},
  att_private = {false},
  title = {Anonymizing bipartite graph data using safe groupings },
  journal = {The {VLDB} Journal},
  volume = 19,
  number = 1,
  pages = {115--139},
  year = 2010,
  pubsite = {http://www.springerlink.com/content/441t1813l0t707ut},
  url = {../papers/gprivj.pdf},
  abstract = {Private data often comes in the form of associations between entities,
such as customers and products bought from a pharmacy, which are
naturally represented in the form of a large, sparse bipartite graph.
As with  tabular data, it is desirable to be able to publish
anonymized versions of such data, to allow others to perform ad hoc
analysis of aggregate graph properties.
However, existing tabular anonymization techniques do not give useful
or meaningful results when applied to graphs: small changes or masking
of the edge structure can radically change aggregate graph properties.

We introduce a new family of anonymizations for bipartite graph
data, called $(k,l)$-groupings. These groupings preserve the
underlying graph structure perfectly, and instead anonymize the
mapping from entities to nodes of the graph. We identify a class
of ``safe'' $(k,l)$-groupings that have provable guarantees to
resist a variety of attacks, and show how to find such safe
groupings. We perform experiments on real bipartite graph data to
study the utility of the anonymized version, and the impact of
publishing alternate groupings of the same graph data. Our
experiments demonstrate that $(k,l)$-groupings offer strong
tradeoffs between privacy and utility.}
}
@article{CormodeHadjieleftheriou09b,
  title = {Methods for finding frequent items in data streams },
  author = {Graham Cormode and Marios Hadjieleftheriou},
  att_authors = {gc2602,mh6516},
  att_private = {false},
  journal = {The {VLDB} Journal},
  year = 2010,
  volume = 19,
  number = 1,
  pages = {3--20},
  pubsite = {http://www.springerlink.com/content/u5106x1223212882/},
  url = {../papers/freqvldbj.pdf},
  abstract = {
  The frequent items problem is to process a stream of items and find all items occurring more than a given fraction of the time. It is one of the most heavily studied problems in data stream mining, dating back to the 1980s. Many applications rely directly or indirectly on finding the frequent items, and implementations are in use in large scale industrial systems. However, there has not been much comparison of the different methods under uniform experimental conditions. It is common to find papers touching on this topic in which important related work is mischaracterized, overlooked, or reinvented. In this paper, we aim to present the most important algorithms for this problem in a common framework. We have created baseline implementations of the algorithms and used these to perform a thorough experimental study of their properties. We give empirical evidence that there is considerable variation in the performance of frequent items algorithms. The best methods can be implemented to find frequent items with high accuracy using only tens of kilobytes of memory, at rates of millions of items per second on cheap modern hardware.}
}
@article{CormodeTirthapuraXu09b,
  title = {Time-decaying Sketches for Robust Aggregation of Sensor Data},
  author = {Graham Cormode and Srikanta Tirthapura and Bojian Xu},
  att_authors = {gc2602},
  att_private = {false},
  journal = {{SIAM} Journal on Computing ({SICOMP})},
  volume = 39,
  number = 4,
  pages = {1309-1339},
  year = {2009},
  url = {../papers/dupdecsicomp.pdf},
  pubsite = {http://dx.doi.org/10.1137/08071795X},
  abstract = {
  We present a new sketch for summarizing network data. The sketch has
  the following properties which make it useful in
  communication-efficient aggregation in distributed streaming
  scenarios, such as sensor networks: the sketch is
  duplicate-insensitive, i.e. re-insertions of the same data will not
  affect the sketch, and hence the estimates of aggregates. Unlike
  previous duplicate-insensitive sketches for sensor data
  aggregation, it is also time-decaying, so that
  the weight of a data item in the sketch can decrease with time
  according to a user-specified decay function.  The sketch can give
  provably approximate guarantees for various aggregates of data,
  including the sum, median, quantiles, and frequent elements. The size
  of the sketch and the time taken to update it are both polylogarithmic
  in the size of the relevant data.  Further, multiple sketches computed
  over distributed data can be combined without loss of accuracy. To our
  knowledge, this is the first sketch that combines all the above
  properties.}
}
@article{CormodeTirthapuraXu09a,
  title = {Time-decayed correlated aggregates over data streams},
  author = {Graham Cormode and Srikanta Tirthapura and Bojian Xu},
  att_authors = {gc2602},
  att_private = {false},
  journal = {Statistical Analysis and Data Mining},
  volume = 2,
  number = {5-6},
  pages = {294-310},
  year = 2009,
  url = {../papers/coragsam.pdf},
  pubsite = {http://www3.interscience.wiley.com/journal/122687469/abstract},
  abstract = {Data stream analysis frequently relies on identifying correlations and posing conditional queries on the data after it has been seen. Correlated aggregates form an important example of such queries, which ask for an aggregation over one dimension of stream elements which satisfy a predicate on another dimension. Since recent events are typically more important than older ones, time decay should also be applied to downweight less significant values. We present space-efficient algorithms as well as space lower bounds for the time-decayed correlated sum, a problem at the heart of many related aggregations. By considering different fundamental classes of decay functions, we separate cases where efficient approximations with relative error or additive error guarantees are possible, from other cases where linear space is necessary to approximate. In particular, we show that no efficient algorithms with relative error guarantees are possible for the popular sliding window and exponential decay models, resolving an open problem. This negative result for the exponential decay holds even if the stream is allowed to be processed in multiple passes. The results are surprising, since efficient approximations are known for other data stream problems under these decay models. This is a step toward better understanding which sophisticated queries can be answered on massive streams using limited memory and computation.}
}
@article{YiLiCormodeHadjieleftheriouKolliosSrivastava09,
  author = {Ke Yi and
               Feifei Li and
               Graham Cormode and
               Marios Hadjieleftheriou and
               George Kollios and
               Divesh Srivastava},
  title = {Small synopses for group-by query verification on outsourced
               data streams},
  att_authors = {gc2602,ds8961,mh6516},
  att_private = {false},
  journal = {{ACM} Transactions on Database Systems},
  volume = {34},
  number = {3},
  year = {2009},
  url = {../papers/pirs.pdf},
  pubsite = {http://portal.acm.org/citation.cfm?doid=1567274.1567277},
  abstract = {
Due to the overwhelming flow of information in many data stream
applications, data outsourcing is a natural and effective paradigm
for individual businesses to address the issue of scale.  In the standard
data outsourcing model, the data owner outsources streaming data to one or
more third-party servers, which answer queries posed by a potentially
large number of clients on the data owner's behalf.  Data outsourcing
intrinsically raises issues of trust, making outsourced query assurance on
data streams a problem with important practical implications.  Existing
solutions proposed in this model all build upon cryptographic primitives
such as signatures and collision-resistant hash functions, which only work for
certain types of queries, e.g., simple selection/aggregation queries.

In this paper, we consider another common type of queries, namely, ``{\tt
  GROUP BY, SUM}'' queries, which previous techniques fail to support.
Our new solutions are not based on cryptographic primitives, but instead
use algebraic and probabilistic techniques to compute a small synopsis on
the true query result, which is then communicated to the client so as to
verify the correctness of the query result returned by the server.  The
synopsis uses a constant amount of space irrespective of the result
size, has an extremely small probability of failure, and can be maintained
using no extra space when the query result changes as elements stream by.
We then generalize our synopsis to allow some tolerance on the number of
erroneous groups, in order to support semantic load shedding on the server.
When the number of erroneous groups is indeed tolerable, the synopsis can
be strengthened so that we can locate and even correct these errors.
Finally, we implement our techniques and perform an empirical evaluation
using live network traffic.}
}
@article{CormodeHadjieleftheriou09,
  author = {Graham Cormode and
               Marios Hadjieleftheriou},
  title = {Finding the frequent items in streams of data},
  journal = {Communications of the {ACM} ({CACM})},
  volume = {52},
  number = {10},
  year = {2009},
  pages = {97-105},
  url = {../papers/freqcacm.pdf},
  pubsite = {http://portal.acm.org/citation.cfm?doid=1562764.1562789},
  abstract = {
The frequent items problem is to process a stream of items and find all
those which  occur more than a given fraction of the time.
It is one of the most heavily studied problems in mining data streams,
dating back to the 1980s.
Many other applications rely directly or indirectly on finding the frequent
items, and implementations are in use in large scale industrial systems.
In this paper, we describe the most important algorithms for
this problem in a common framework.
We place the different solutions in their historical context, and
describe the connections between them, with the aim of clarifying some
of the confusion that has surrounded their properties. 

To further illustrate the different properties of the algorithms, 
we provide baseline implementations.
This allows us to 
 give empirical evidence that there is considerable variation in the
performance of frequent item algorithms.
The best methods can be implemented to find frequent items with high
accuracy using only tens of kilobytes of memory, at rates of millions of
items per second on cheap modern hardware.}
}
@article{Cormode09,
  title = {How NOT to review a paper: The tools and techniques of the adversarial reviewer},
  author = {Graham Cormode},
  journal = {SIGMOD Record},
  att_authors = {gc2602},
  att_private = {false},
  month = dec,
  year = 2008,
  volume = 37,
  number = 4,
  pages = {100-104},
  url = {../papers/adversarial.pdf},
  pubsite = {http://portal.acm.org/citation.cfm?id=1519103.1519122},
  abstract = {
  There are several useful guides available for how to review a paper in
  Computer Science. 
  These are soberly presented, carefully reasoned and sensibly argued. 
  As a result, they are not much fun. 
  So, as a contrast, this note is a checklist of how {\em not} to review
  a paper.  
  It details techniques that are 
  unethical, unfair, or just plain nasty. 
  Since in Computer Science we often present arguments about how an
  adversary would approach a particular problem, this note 
  describes the adversary's strategy.}
}
@article{CormodeKrishnamurthy08,
  title = {Key Differences between Web 1.0 and Web 2.0},
  author = {Graham Cormode and Balachander Krishnamurthy},
  att_authors = {gc2602,bk1836},
  att_private = {false},
  journal = {First Monday},
  month = jun,
  volume = 13,
  number = 6,
  year = 2008,
  link = {http://www.uic.edu/htbin/cgiwrap/bin/ojs/index.php/fm/article/view/2125/1972},
  url = {../papers/web2.pdf},
  abstract = {
Web 2.0 is a buzzword introduced in 200304 which is commonly used to encompass various novel 
phenomena on the World Wide Web. Although largely a marketing term, some of the key attributes 
associated with Web 2.0 include the growth of social networks, bidirectional communication, 
various glue technologies, and significant diversity in content types. We are not aware of a 
technical comparison between Web 1.0 and 2.0. While most of Web 2.0 runs on the same substrate as 
1.0, there are some key differences. We capture those differences and their implications for 
technical work in this paper. Our goal is to identify the primary differences leading to the 
properties of interest in 2.0 to be characterized. We identify novel challenges due to the 
different structures of Web 2.0 sites, richer methods of user interaction, new technologies, and 
fundamentally different philosophy. Although a significant amount of past work can be reapplied, 
some critical thinking is needed for the networking community to analyze the challenges of this 
new and rapidly evolving environment.}
}
@article{CormodeGarofalakis08,
  author = {Graham Cormode and Minos Garofalakis},
  att_authors = {gc2602},
  att_private = {false},
  title = {Approximate continuous querying over distributed streams},
  journal = {{ACM} Transactions on Database Systems},
  year = 2008,
  month = jun,
  link = {http://portal.acm.org/citation.cfm?doid=1366102.1366106},
  volume = 33,
  number = 2,
  abstract = {
While traditional database systems optimize for performance 
on one-shot query processing, emerging large-scale monitoring
applications require continuous tracking of complex data-analysis
queries over collections of physically-distributed streams. 
Thus, effective solutions have to be simultaneously space/time
efficient (at each remote monitor site), communication efficient
(across the underlying communication network), and provide
continuous, guaranteed-quality approximate query answers. 
In this paper, we propose novel algorithmic solutions for the
problem of continuously tracking a broad class of complex 
aggregate queries in such a distributed-streams setting.
Our tracking schemes maintain approximate query answers with
provable error guarantees, while simultaneously optimizing the
storage space and processing time at each remote site, 
and the communication cost across the network.
In a nutshell, our algorithms rely on tracking general-purpose
randomized sketch summaries of local streams at remote sites
along with concise prediction models of local site behavior
in order to produce highly communication- and space/time-efficient 
solutions. 
The end result is a powerful approximate query tracking framework
that readily incorporates several complex analysis queries 
(including distributed join and multi-join aggregates, and
approximate wavelet representations), thus giving the first
known low-overhead tracking solution for such queries in the
distributed-streams model.
Experiments with real data validate our approach, revealing 
significant savings over naive solutions as well as our
analytical worst-case guarantees.}
}
@article{CormodeKornMuthukrishnanSrivastava08,
  author = {Graham Cormode and Flip Korn and S. Muthukrishnan and 
Divesh Srivastava},
  att_authors = {gc2602,ds8961,pk1785},
  att_private = {false},
  title = {Finding Hierarchical Heavy Hitters in Streaming Data},
  journal = {{ACM} Transactions on Knowledge Discovery from Data ({TKDD})},
  month = jan,
  year = 2008,
  volume = 1,
  number = 4,
  url = {../papers/h4.pdf},
  link = {http://doi.acm.org/10.1145/1324172.1324174},
  abstract = {
Data items that arrive online as streams
typically have attributes which take values from one or more
hierarchies (time and geographic location; source and
destination IP addresses; etc.). Providing an aggregate view of such
data is important for summarization, visualization, and analysis.
We develop an aggregate view based on certain
organized sets of large-valued regions (``heavy hitters'')
corresponding to hierarchically discounted frequency counts.
We formally define the notion of {\em Hierarchical Heavy Hitters} (HHHs).
We first consider computing (approximate) HHHs over a data stream
drawn from a single hierarchical attribute. 
We formalize the problem and give deterministic algorithms
to find them in a single pass over the input.

In order to analyze a wider range of realistic data streams
(e.g., from IP traffic monitoring applications),
we generalize this problem to multiple dimensions.
Here, the semantics of HHHs are more complex, since a ``child'' node
can have multiple ``parent'' nodes.
We present online algorithms that find approximate HHHs in one pass,
with provable accuracy guarantees.
The product of hierarchical dimensions form a 
mathematical lattice structure. 
Our algorithms exploit this structure, and so are able to 
to track approximate
HHHs using only a small, fixed number of statistics per stored item,
regardless of the number of dimensions.

We show experimentally, using real data, that our
proposed algorithms yield outputs which are very similar
(virtually identical, in many cases) to offline computations
of the exact solutions whereas straightforward heavy hitters
based approaches give significantly inferior answer quality.
Furthermore, the proposed algorithms result in an order of
magnitude savings in data structure size while performing
competitively.}
}
@article{CormodeMuthukrishnan05ToN,
  journal = {Transactions on Networking},
  title = {What's New: Finding Significant Differences 
in Network Data Streams},
  att_authors = {gc2602},
  att_private = {false},
  author = {G. Cormode and S. Muthukrishnan},
  month = {December},
  year = {2005},
  volume = {13},
  number = {6},
  pages = {1219-1232},
  url = {../papers/changes-ton.pdf},
  link = {CormodeMuthukrishnan04Infocom.html},
  pubsite = {http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?isnumber=33142&arnumber=1561219&count=17&index=1},
  note = {},
  abstract = {
  Monitoring and analyzing network traffic usage patterns is vital for
  managing IP Networks. 
  An important problem is to provide network managers with information
  about changes in traffic, informing them about ``what's new''.
  Specifically, we focus on the challenge of finding significantly large
  differences in traffic: over time, between interfaces and between
  routers. 
  We introduce the idea of a {\em deltoid}: an item that has a large
  difference,
  whether the difference is {\em absolute}, {\em relative} or
  {\em variational}. 
  
  We present novel algorithms for finding the most significant deltoids in high
  speed traffic data, and prove that they use small space, very small time per
  update, and are guaranteed to find significant deltoids with
  pre-specified accuracy.
  In experimental evaluation with real network traffic, our algorithms perform well and recover 
  almost all deltoids.
  This is the first work to provide solutions 
capable of working over the data with one pass, at network traffic speeds. }
}
@article{CormodeMuthukrishnan05TODS,
  author = {G. Cormode and S. Muthukrishnan},
  att_authors = {gc2602},
  att_private = {false},
  title = {What's Hot and What's Not: Tracking Most Frequent Items Dynamically},
  journal = {{ACM} Transactions on Database Systems},
  note = {},
  year = {2005},
  month = {March},
  volume = {30},
  number = {1},
  pages = {249--278},
  url = {../papers/whatshot-tods.pdf},
  link = {CormodeMuthukrishnan03PODS.html},
  pubsite = {http://dl.acm.org/citation.cfm?id=1061325},
  abstract = {
Most database management systems maintain statistics
on the underlying relation. One of the important statistics
is that of the 'hot items' in the relation: those
that appear many times (most frequently, or more than some threshold). 
For example, end-biased histograms keep the hot items as part 
of the histogram
and are used in selectivity estimation. 
Hot items are used as simple outliers in data mining, and 
in anomaly detection in many applications.

We present new methods for dynamically
determining the hot items at any time in a relation
which is undergoing deletion operations as well as inserts.
Our methods maintain small space data structures that 
monitor the transactions on the relation, and when required, quickly output
all hot items, without rescanning the relation in the database. 
With user-specified probability, all hot items are correctly reported.
Our methods rely on ideas from 'group testing'.
They are simple to implement, and have provable 
quality, space and time guarantees. 

Previously known algorithms for this problem that make similar quality and
performance guarantees can not handle deletions, and those that handle
deletions can not make similar guarantees without rescanning the database.  Our
experiments with real and synthetic data shows that our
algorithms are accurate in dynamically tracking the hot items
independent of the rate of insertions and deletions. }
}
@article{Cormode04AIR,
  author = {G. Cormode},
  att_authors = {gc2602},
  att_private = {false},
  title = {Representations of the Research Student in Popular Culture},
  year = {2004},
  journal = {Annals of Improbable Research},
  volume = {10},
  number = {1},
  pages = {26-27},
  url = {http://dimacs.rutgers.edu/~graham/silly/grad.html},
  link = {http://www.improbable.com/airchives/paperair/volume10/v10i1/v10i1-toc.html},
  abstract = {
Attracting new entrants to the world of research relies in part on the existence of role models in the popular media as observed by the current undergraduates. Hence, we examine the world of TV and films that get shown on cable all the time. There is no shortage of visible examples at the professorial level, from Archaeology (Indiana Jones) to Paleontology (Ross from Friends). However, it is a matter of concern that the first stage of an academic career, the research student, is less frequently portrayed. We will consider a number of examples of media portayals of young researchers based on a uniform sample of those I could think of. We analyze whether their depiction will encourage young people to follow their lead into PhD programmes, and also to successfully complete their studies.}
}
@article{CormodeMuthukrishnan04CMJalg,
  author = {G. Cormode and S. Muthukrishnan},
  att_authors = {gc2602},
  att_private = {false},
  title = {An Improved Data Stream Summary: The Count-Min Sketch 
                     and its Applications},
  year = {2005},
  journal = {Journal of Algorithms},
  note = {},
  month = {April},
  volume = {55},
  number = {1},
  pages = {58--75},
  abstract = {We introduce a new sublinear space data structure---the Count-Min Sketch--- for summarizing data streams. Our sketch allows fundamental queries in data stream summarization such as point, range, and inner product queries to be approximately answered very quickly; in addition, it can be applied to solve several important problems in data streams such as finding quantiles, frequent items, etc. The time and space bounds we show for using the CM sketch to solve these problems significantly improve those previously known --- typically from $1/epsilon^2$ to $1/\epsilon$ in factor.},
  url = {../papers/cm-full.pdf},
  link = {CormodeMuthukrishnan04CMLatin.html},
  pubsite = {http://dx.doi.org/10.1016/j.jalgor.2003.12.001}
}
@article{CormodeDatarIndykMuthukrishnan03,
  author = {G. Cormode and M. Datar and P. Indyk and 
                   S. Muthukrishnan},
  att_authors = {gc2602},
  att_private = {false},
  title = {Comparing Data Streams Using {H}amming Norms},
  year = {2003},
  pages = {529--541},
  journal = {{IEEE} Transactions on Knowledge and Data Engineering},
  volume = {15},
  number = {3},
  note = {},
  url = {../papers/cdim-hammingnormtkde.pdf},
  link = {CormodeDatarIndykMuthukrishnan02.html},
  pubsite = {http://www.computer.org/tkde/tk2003/k0529abs.htm},
  abstract = {
Massive data streams are now fundamental to many data processing
applications.  For example, Internet routers produce large scale
diagnostic data streams.  Such streams are rarely stored in
traditional databases, and instead must be processed ``on the fly'' as
they are produced.  Similarly, sensor networks produce multiple data
streams of observations from their sensors.  There is growing focus on
manipulating  data streams, and hence, there is a need to identify
basic operations of interest in managing data streams, and to support
them efficiently.
We propose computation of the Hamming norm as a basic operation of
interest.  The Hamming norm formalizes ideas
that are used throughout data processing.
When applied to a single stream, the Hamming norm gives the number of distinct 
items that are
present in that data stream, which is a statistic of great interest in
databases.  When applied to a pair of streams, the Hamming norm gives
an important measure of (dis)similarity:  the number of unequal item
counts in the two streams. Hamming norms have many uses
in comparing data streams.

We present a novel approximation technique for estimating the Hamming norm
for massive data streams; this relies on what we call the ``$l_0$
{\it sketch}''
and we prove its accuracy. We test our approximation method on a large
quantity of synthetic and real stream data, and show that the
estimation is accurate to within a few percentage points. }
}
@article{CormodeMuthukrishnan07,
  author = {G. Cormode and S. Muthukrishnan},
  att_authors = {gc2602},
  att_private = {false},
  title = {The String Edit Distance Matching Problem with Moves},
  year = {2007},
  journal = {{ACM} Transactions on Algorithms},
  volume = 3,
  number = 1,
  url = {../papers/editmovestalg.pdf},
  link = {CormodeMuthukrishnan02.html},
  pubsite = {http://dx.doi.org/10.1145/1186810.1186812},
  abstract = {
The edit distance between two strings $S$ and $R$
is defined to be the minimum number of character inserts,
deletes and changes needed to convert $R$ to $S$. 
Given a text string $t$ of length $n$, and a pattern string $p$
of length $m$, informally, the string edit distance matching problem is to 
compute the smallest edit distance between $p$ and 
substrings of $t$.

We relax the problem
so that (a) we allow an additional operation, namely, 
{\em substring moves}, and (b) we 
allow approximation of this string edit distance.
Our result is a near linear time deterministic 
algorithm to produce a factor of $O(\log n \log^* n)$
approximation to the string edit distance with moves. 
This is the first
known significantly subquadratic algorithm for a string 
edit distance problem in which the distance involves
nontrivial alignments.
Our results are obtained by embedding strings into $L_1$
vector space using a simplified parsing technique we call 
{\em Edit Sensitive Parsing} (ESP). }
}
@article{OzsoyogluCormodeBalkirOzsoyoglu04,
  author = {G. Ozsoyoglu and N. H. Balkir and
                  G. Cormode and  Z. M. Ozsoyoglu},
  att_authors = {gc2602},
  att_private = {false},
  title = {Electronic Books in Digital Libraries},
  year = {2004},
  note = {},
  journal = {{IEEE} Transactions on Knowledge and Data Engineering},
  volume = {16},
  number = {3},
  pages = {317--331},
  url = {../papers/obcotkde.pdf},
  link = {OzsoyogluCormodeBalkirOzsoyoglu00.html},
  pubsite = {http://csdl.computer.org/comp/trans/tk/2004/03/k0317abs.htm},
  abstract = {
Electronic Book is an application with a multimedia database of instructional resources, which include hyperlinked text, instructor's audio/video clips, slides, animation, still images, etc. as well as content-based infomration about these data, and metadata such as annotations, tags, and cross-referencing information. Electronic books in the Internet or on CDs today are not easy to learn from. We propose the use of a multimedia database of instructional resources in constructing and delivering multimedia lessons about topics in an electronic book.

We introduce an electronic book data model containing (a) topic objects and and (b) instructional resources, called instruction modules which are multimedia presentations possibly capturing real-life lectures of instructors. We use the notion of topic prerequisites for topics at different detail levels, to allow electronic book users to request / compose multimedia lessons about topics on the electronic book. We present automated construction of the ''best'' user-tailored lesson (as a multimedia presentation). }
}

This file was generated by bibtex2html 1.92.