%\begin{comment}
%A recent line of research has focused on applying advances in sparse recovery to
%graph analysis. A graph can be interpreted as a signal that one seeks to
%`compress' or `sketch' and then `recovered'. However, we could also consider the
%situation where the graph is unknown to us, and we dispose of few measurements
%to recover the signal. Which real-life processes allow us to `measure' the
%graph?

%A diffusion process taking place on a graph can provide valuable information
%about the existence of edges and their edge weights. By observing the sequence
%of nodes which become `infected' over time without knowledge of who has
%`infected' whom, can we recover the graph on which the process takes place? The
%spread of a particular behavior through a network is known as an {\it Influence
%Cascade}. In this context, the {\it Network Inference}\ problem is the recovery
%of the graph's edges from the observation of few influence cascades.
%{\color{red} Cite references} We propose to show how sparse recovery can be
%applied to solve this recently introduced network inference problem.

%{\color{red} Graph inference to Network inference}
%Tackling the graph inference problem means constructing a polynomial-time
%algorithm which recovers with high probability a large majority of edges
%correctly from very few observations or {\it cascades}. Prior work shown that
%the graph inference problem can be solved in ${\cal O}(poly(s) \log m)$ number
%of observed cascades, where $s$ is the maximum degree and $m$ is the number of
%nodes in the graph. Almost miraculously, the number of cascades required to
%reconstruct the graph is logarithmic in the number of nodes of the graph.
%Results in the sparse recovery literature lead us to believe that $\Omega(s \log
%m/s)$ cascade observations should be sufficient to recover the graph. In fact,
%we prove this lower bound in a very general sense: any non-adaptive graph
%inference algorithm which succeeds in recovering the graph with constant
%probability requires $\Omega(s \log m/s)$ observations. We show an almost tight
%upper-bound by applying standard sparse recovery techniques and assumptions:
%${\cal O}(s \log m)$ are sufficient to recover the graph. We show that the edge
%weights themselves can also be recovered under the same assumptions.

 %Throughout this paper, we focus on the three main discrete-time diffusion
 %processes: the independent cascade model, the voter model, and the linear
 %threshold model\dots
 %\end{comment}

Graphs have been extensively studied for their propagative abilities:
connectivity, routing, gossip algorithms, etc.
A diffusion process taking place over a graph provides valuable information
about the presence and weights of its edges. \emph{Influence cascades} are a
specific type of diffusion processes in which a particular infectious behavior
spreads over the nodes of the graph.  By only observing the ``infection times''
of the nodes in the graph, one might hope to recover the underlying graph and
the parameters of the cascade model. This problem is known in the literature as
the \emph{Network Inference problem}.

More precisely, solving the Network Inference problem involves designing an
algorithm taking as input a set of observed cascades (realisations of the
diffusion process) and recovers with high probability a large fraction of the
graph's edges. The goal is then to understand the relationship between the
number of observations, the probability of success, and the accuracy of the
reconstruction.

The Network Inference problem can be decomposed and analyzed ``node-by-node''.
Thus, we will focus on a single node of degree $s$ and discuss how to identify
its parents among the $m$ nodes of the graph. Prior work has shown that the
required number of observed cascades is $\O(poly(s)\log m)$
\cite{Netrapalli:2012, Abrahao:13}.

A more recent line of research~\cite{Daneshmand:2014} has focused on applying
advances in sparse recovery to the network inference problem. Indeed, the graph
can be interpreted as a ``sparse signal'' measured through influence cascades
and then recovered.  The challenge is that influence cascade models typically
lead to non-linear inverse problems and the measurements (the state of the
nodes at different time steps) are usually correlated. The sparse recovery
literature suggests that $\Omega(s\log\frac{m}{s})$ cascade observations should
be sufficient to recover the graph~\cite{donoho2006compressed, candes2006near}.
However, the best known upper bound to this day is $\O(s^2\log
m)$~\cite{Netrapalli:2012, Daneshmand:2014}

The contributions of this paper are the following:
\vspace{-1em}
\begin{itemize}
    \item we formulate the Graph Inference problem in the context of
        discrete-time influence cascades as a sparse recovery problem for
        a specific type of Generalized Linear Model. This formulation notably
        encompasses the well-studied Independent Cascade Model and Voter Model.
        \vspace{-0.5em}
    \item we give an algorithm which recovers the graph's edges using $\O(s\log
        m)$ cascades. Furthermore, we show that our algorithm is also able to
        efficiently recover the edge weights (the parameters of the influence
        model) up to an additive error term,
        \vspace{-0.5em}
    \item we show that our algorithm is robust in cases where the signal to
        recover is approximately $s$-sparse by proving guarantees in the
        \emph{stable recovery} setting.
        \vspace{-0.5em}
    \item we provide an almost tight lower bound of $\Omega(s\log \frac{m}{s})$
        observations required for sparse recovery.
\end{itemize}
\vspace{-0.5em}

The organization of the paper is as follows: we conclude the introduction by a
survey of the related work. In Section~\ref{sec:model} we present our model of
Generalized Linear Cascades and the associated sparse recovery formulation.  Its
theoretical guarantees are presented for various recovery settings in
Section~\ref{sec:results}. The lower bound is presented in
Section~\ref{sec:lowerbound}. Finally, we conclude with experiments in
Section~\ref{sec:experiments}.

\paragraph{Related Work}

The study of edge prediction in graphs has been an active field of research for
over a decade~\cite{Nowell08, Leskovec07, AdarA05}.~\cite{GomezRodriguez:2010}
introduced the {\scshape Netinf} algorithm, which approximates the likelihood of
cascades represented as a continuous process.  The algorithm was improved in
later work~\cite{gomezbalduzzi:2011}, but is not known to have any theoretical
guarantees beside empirical validation on synthetic networks.
\citet{Netrapalli:2012} studied the discrete-time version of the independent
cascade model and obtained the first ${\cal O}(s^2 \log m)$ recovery guarantee
on general networks. The algorithm is based on a likelihood function similar to
the one we propose, without the $\ell_1$-norm penalty. Their analysis depends on
a {\it correlation decay\/} assumption, which limits the number of new infections
at every step. In this setting, they show a lower bound of the number of
cascades needed for support recovery with constant probability of the order
$\Omega(s \log (m/s))$. They also suggest a {\scshape Greedy} algorithm, which
achieves a ${\cal O}(s \log m)$ guarantee in the case of tree graphs. The work
of~\cite{Abrahao:13} studies the same continuous-model framework as
\cite{GomezRodriguez:2010} and obtains an ${\cal O}(s^9 \log^2 s \log m)$
support recovery algorithm, without the \emph{correlation decay} assumption.
\cite{du2013uncover} propose a similar algorithm to ours for recovering the
weights of the graph under a continuous-time independent cascade model, without
proving theoretical guarantees.

Closest to this work is a recent paper by \citet{Daneshmand:2014}, wherein the
authors consider a $\ell_1$-regularized objective function. They adapt standard
results from sparse recovery to obtain a recovery bound of ${\cal O}(s^3 \log
m)$ under an irrepresentability condition~\cite{Zhao:2006}. Under stronger
assumptions, they match the~\cite{Netrapalli:2012} bound of ${\cal O}(s^2 \log
m)$, by exploiting similar properties of the convex program's KKT conditions.
In contrast, our work studies discrete-time diffusion processes including the
Independent Cascade model under weaker assumptions. Furthermore, we analyze both
the recovery of the graph's edges and the estimation of the model's parameters,
and achieve close to optimal bounds.

The work of~\cite{du2014influence} is slightly orthogonal to ours since they
suggest learning the \emph{influence} function, rather than the
parameters of the network directly.
%\begin{comment}
%Their work has the merit of studying a generalization of the discrete-time
%independent cascade model to continuous functions. Similarly to
%\cite{Abrahao:13}, they place themselves in the restrictive single-source
%context.
%\end{comment}

\begin{comment}
\paragraph{Our contributions}
Though our work follows closely the spirit of \cite{Netrapalli:2012} and
\cite{Daneshmand:2014}, we believe we provide several significant improvements
to their work. We study sparse recovery under less restrictive assumptions and
obtain the first ${\cal O}(s \log m)$ algorithm for graph inference from
cascades. We also study the seemingly overlooked problem of weight recovery as
well as the setting of the relaxed sparsity setting. Finally, we show these
results are almost tight, by proving in section~\ref{sec:lowerbound} the first
lower bound on the number of observations required to recover the edges and the
edge weights of a graph in the general case. We study the case of the two best
known diffusion processes for simplicity as outlined in \cite{Kempe:03}, but
many arguments can be extended to more general diffusion processes.
\end{comment}
