BACKGROUND
prediction of functional relationships between genes, starting from actual gene expression data, is one of the primary goals of systems biology.
despite large efforts in this direction  <cit> , either based on transcription factor – promoter interaction  <cit> , or on inferring gene networks  <cit> , methods for reliable predictions of collective behavior of gene-activity are yet to be found.
some general facts about the topology of gene regulatory networks  <cit> , statistics of gene expressions  <cit>  or the dynamics of gene regulation  <cit>  are becoming to be understood.
this knowledge is far from sufficient to successfully reconstruct gene networks, but can be helpful in limiting the tremendous number of parameters involved in reconstruction.
even if the average degree of the gene regulatory network, i.e.
the number of genes regulated by some gene on average, was known, noisy and limited data will always lead to severe problems.
the degree ki of a node i in a network is defined as the number of links that emerge from -or point to- that node.
the average degree is denoted by ⟨k⟩.
there are basically two types of reverse engineering approaches depending on the experimental setup, inferring the gene network from steady-state  <cit>  or from time-series  <cit>  experiments.
by using steady-state experiments, one can not draw any conclusion about the dynamics of gene regulation.
conducting time-series experiments gives helpful insights into gene regulatory dynamics, but often with the price of getting redundant information.
further, due to costs full time-series data on gene expression are in general not available.
as described in  <cit> , one can further divide the reverse engineering methods into four categories: differential equation models  <cit> , boolean network models  <cit> , bayesian network models  <cit>  and association networks  <cit> .
the reverse engineering methods based on differential equations further may rely on linear  <cit>  or nonlinear differential equations  <cit> .
the latter models may possess potential in alleviating the effects of insufficient information fundamental in reverse engineering of genetic networks by obtaining information from combinatorial perturbations measurements on the system.
in linear systems such information would be redundant.
how can gene regulatory network reconstruction methods be validated and compared?
neither a standardized biological benchmark, nor a consensus on what class of models to use for in-silico testing exists  <cit> .
the usual way is to validate a method either by applying it on a given experimental dataset or on in-silico datasets.
in both cases one has to deal with different problems.
applying a method to an experimental dataset, poses the problem of comparing the reconstruction result with a network which is always just a consensus on how a biological network could look like, but never the exact gene regulatory network.
on the other hand, when applying a reconstruction models to in-silico data, one has a perfect reference network, however the generated timeseries data is a result of a dynamical model of gene interaction, which cannot be shown to overlap with the real gene regulation dynamics.
in this paper we introduce a novel reverse engineering algorithm and validate it against biological and in silico data.
the performance of the algorithm is compared against network identification by multiple regression   <cit>  for several reasons.
i) nir is considered a state of the art algorithm which plays a role comparable to a benchmark.
to our best knowledge nir has not been outperformed by other algorithms with respect to predicting the topology of genetic networks  correctly -on average- so far.
however, nir has two drawbacks.
a) the computation time increases quickly with the network size.
b) nir can not identify hubs in networks.
we will briefly discuss this in a little more detail further below.
recently a reconstruction algorithms has been proposed by  <cit>  which is clearly faster than nir.
yet, its predictions do not better or completely equal the ones made by nir.
another algorithm has been proposed recently  <cit> , which correctly identifies the reca-hub in the e. coli sos response network and reports a higher statistical significance of the reconstructed sos network.
yet, the algorithm is restricted to a-cyclic networks.
both cases lack a comprehensive comparison with nir and do not challenge its role as benchmark.
ii) we decided to selected an e. coli dataset  <cit>  for biological validation of our algorithm.
this choice is satisfactory since the underlying sos response network has been subject to over  <dig> years of research, which provides us with a well established consensus about the actual gene regulations going on in that particular sub-network.
moreover nir has been applied to the same sos response network of e. coli which makes it possible to compare the two algorithms.
iii) both, the proposed algorithm and nir, build on the assumption that the dynamics of rna concentrations defined by the underlying network is governed by a linear differential equation.
for generating in silico data we therefore are using a linear gene regulation model proposed by the authors  <cit> .
the only nonlinearity in the model is introduced by the condition that rna concentrations can not become negative.
this model simultaneously captures a series of experimental facts, such as the distribution of genome wide gene-expression levels, multi-stability and periodicity.
the proposed reconstruction algorithm does not rely on the detailed knowledge of the data generation model.
the generated in silico data therefore is realistic and allows for an unbiased comparison of the proposed algorithm with nir.
although the proposed algorithm and nir start from identical assumptions on rna concentration dynamics and equally have to deal with insufficient information the reconstruction approaches are in fact quite different.
the inference idea of the nir algorithm is to reconstruct the network by using a least-squares multiple regression approach assuming the same fixed number of regulatory links for every gene, i.e.
the average degree ⟨k⟩ of the network.
basically this means that promising ensembles of links are put to the test and the ensemble which gives the least squared error with the input data on basis of the underlying linear model is selected as the optimal solution which is calculated for all the () possible combinations, where n is the size of the network.
this combinatorial factor is responsible for a polynomial time characteristics of nir, i.e.
roughly t ∝ n⟨k⟩, which limits its applicability to relatively small networks with low average degree.
gene-networks are expected to have average degrees of about  <dig>  for average degree ⟨k⟩ =  <dig> this implies that computation time of nir grows quickly with at least a factor n <dig>  moreover, since nir only considers networks where all nodes have identical degree there is no way nir could detect hubs in networks.
clearly nir will perform best on networks with sharply peaked degree distributions and perform bad on networks with broad degree distributions.
the proposed algorithm however relies on the observation that for very sparse networks with no loops the information provided by experiments  is sufficient to infer the network.
the proposed approach tries to extrapolate the sparse network predictions to non sparse networks guided by the exact solutions of the linear differential equations.
in contrast to nir the number of regulatory links per gene are not fixed a priory which intuitively is much more realistic.
while large networks of even thousands of genes do not actually pose a problem for the proposed algorithm in terms of computing time there are of course limitations to the network size in terms of available independent experimental information.
basically () link weights have to be estimated from maximal n independent over expression experiments.
any reverse engineering algorithm relying on this limited information will necessarily approach the results of pure gambling with growing network size.
methods
a system of interacting genes can be seen as a complex network, where every directed link represents a functional relationship between two genes.
for simplicity, let us assume that this link will contain both transcriptional and translation levels of gene interactions.
in this oversimplified view one can assume that the gene expression level changes in time as
where g is an a priori unknown function of a time dependent vector of gene expression levels x. if there are n genes in the network under study , vector x has n components.
if we assume, as in  <cit> , that g) is a linear function  one can write equation  as
where μ is a vector of gene over-expressions and a is a constant adjacency matrix, containing the "strength" of gene-gene interaction.
the elements aij can be positive or negative real numbers, indicating activating or inhibiting interactions, respectively.
by solving equation  one formally gets
where superscript μ indicates the system was perturbed with the constant vector μ. after m over-expressions, one can write the above equation in matrix form
where  is the collection of all gene expression levels after the m over-expressions experiments, organized in a n × m matrix, where one of the m columns is a time dependent n-vector of gene expression levels for different gene being over-expressed.
in the following let us assume that we are able to perform n over-expression experiments, i.e.
m = n.  is a n × n diagonal matrix of gene over-expression levels.
is diagonal, because in every over-expression experiment just one gene is being over-expressed .
at this point we emphasize that even though we know from the way over-expression experiments are prepared that the matrix  is diagonal, one often has little to no experimental control about the exact amplitude of its entries.
this problem is mitigated for small times t ≪  <dig>  to see this we define
using this definition and abbreviating  ≡ at equation  can be rewritten into q = a-1/t and consequently into
it is easy to check that in the short time limit
holds.
for very short times t our lack of knowledge is thus basically irrelevant and estimating q reduces to estimating .
yet, for  <dig> ≫ t we have  <dig> ≫ || and equation  effectively reduces to the trivial identity  = , i.e.
for short times equation  is consistently fulfilled but provides no constraining information on .
however, when the matrix is so sparse that each node has at most only one regulatory link and no loops are present in the network the relative responses
will be one-to-one related with the network topology.
is the gene expression level of the ith gene when no perturbation has occurred  and  the gene expression level of the ith gene, where the jth gene has been over-expressed.
it is also not hard to realize that for sparse adjacency matrices  the relative response will in general provide a good first estimate, i.e.
∝ y. moreover, linearity assures that relative responses for short times will be small, |yij| ≪  <dig> and therefore q ~  ~ y.
however, for times in the order of a cell-cycle t ~ <dig> and less sparse matrices these estimates will not be sufficient, i.e.
the yij will not in general be small and q need not be close to i. the idea is to replace yij by some function f and estimate q with dij ≡ f .
the function f clearly should have the properties that  f ~yij for |yij| ≪  <dig> and  f is a monotonously increasing function.
since in practice yij can range over many decades in amplitude we also presume that  f should be a concave function.
lastly,  f has to be defined on  since - <dig> ≤ yij, but in principle could be arbitrary large for positive values and map  to .
maybe the simplest function fulfilling this requirements is the logarithm, i.e.
f ≡ ln, and d gets
this means that we effectively estimate  = ln, where i is the identity matrix.
for the matrix logarithm to provide unique solutions, i + d should not have any negative real eigenvalues.
since experimental results show that this is not the case in general we use a cleaned version  of d, denoted by d <dig> such that i + d <dig> has no negative real eigenvalues and the prediction of the adjacency matrix is given by
eigenvalue cleaning
in general, the logarithm of a matrix can have an infinite number of real and complex solutions.
in order to find a unique solution of ln, matrix d + i can not have negative real eigenvalues.
if we take a look at the eigenspectrum of matrix d from various experiments, both biological and in-silico, we notice that most of the eigenvalues are complex, however a small number of eigenvalues are real, both positive and negative.
thus, we first have to clean the matrix d + i, meaning to set all the negative eigenvalues to small positive number ϵ. this is done by first diagonalizing matrix d:
where the eigenvalues are ordered in a way that first l eigenvalues are real and less then - <dig>   = di < - <dig>  ∀i = l. these l diagonal elements are set to ϵ - 1
and are rotated to yield the cleaned matrix
matrix d <dig> + i no longer has negative real eigenvalues, and a unique prediction of an adjacency matrix a-reconstructed gene regulatory network – can be given
thresholding
our solution a will in general represent a fully connected network, with a certain distribution of link weights around zero.
the reason why we are always getting fully connected network, e.g.
network without zero entries in adjacency matrix, is because of the noisy measurements.
real gene regulatory networks are never fully connected, but are characterized by an average degree ⟨k⟩, which has been estimated to be relatively small ~ <dig> –  <dig>  <cit> .
for simplicity we assume ⟨k⟩ for the undirected unweighted case.
knowledge of ⟨k⟩ allows to define a clear thresholding scheme.
all entries in a below a threshold α are set to zero.
α is chosen such, that matrix  has the average degree ⟨k⟩, i.e.
such that
a <dig> is the first approximation of the gene regulatory network we want to reconstruct.
a note on fewer than n experiments
in the case where the number of over-expression experiments m is lower than the size of the network n, matrix d is not quadratic, thus we are unable to calculate the matrix logarithm.
information about the influence of gene j  on gene i is missing.
a way around is that one can introduce a measure of the distance between two genes in the network.
although the correlation between gene expressions in different over-expression measurements can not lead to any conclusion about the functional relations among genes, it can provide a good measure for the distance between the genes in the network, where strong correlations means low functional distance.
one can therefore simply calculate a matrix of correlation coefficients and replace the missing terms in d:
here the first index in dij, i runs in the domain m <i ≤ n, the second index,  <dig> ≤ j ≤ n.
testing the method
we have run both, the proposed algorithm and nir on a usual pc  using matlab  <dig> .
we compare our results with the nir algorithm both on an in-silico dataset, as well as on the e. coli sos response network  <cit> , in the same way as in  <cit> .
we measure performance in two ways, firstly, by counting the fraction of correctly reconstructed positive, negative and zero links, denoted by f+, f- and f <dig>  respectively.
for later use we define f ≡ f+ + f- + f <dig>  secondly, by calculating the extended matthews correlation coefficient  <cit> , a discrete version of pearson's correlation coefficient, extrapolated onto k × k confusion matrices.
matthews correlation coefficient is taking values in the interval , where  <dig> stands for no correlation between predicted and real case, and  <dig> and - <dig> stands for complete or negative correlation respectively.
the k-category correlation coefficient is defined as
where c is a k × k confusion matrix, or more precisely the element ckl is counting the number of cases where category k is predicted, but category l was present.
in our case, k =  <dig> and the categories are: positive link, negative link and no link between any two genes.
it is straight forward to see that p-values for any value of rk can be computed exactly in the same way as for the pearson correlation coefficient, provided sample size is given.
it is important to stress the difference in measuring reconstruction performance in in-silico and biological experiments.
while in biological networks, self-regulation is a part of the complete gene regulatory network, in numerically simulated gene regulation dynamics, self-regulation is often screened by negative self-degradation rates, which have to be imposed, in order to keep the dynamics sufficiently stable, see e.g.
<cit> .
to be as correct and conservative as possible, we therefore compare our reconstructed adjacency matrix only with the off-diagonal elements in the in-silico case.
in the e. coli case we of course compare with the complete adjacency matrix.
in-silico testing
we employ a recently proposed dynamical gene-gene interaction model, which is able to capture a series of experimental facts on gene-expression statistics  <cit> :  distribution of gene-expression increments over time,  multiple equilibria,  stability.
the model is defined as
with a positivity condition imposed for gene expression levels :
here, amodel is a real valued adjacency matrix of gene-gene interactions.
it is modeled as a particular random matrix, mimicking experimentally known facts  <cit> .
x is a vector of gene-expression levels in time t, constant vector x <dig> indicates steady state gene-expression levels.
ξ and η are multiplicative and additive noise terms, respectively, which are a generic feature in chemical reactions.
using the dynamics defined in equation  we generate the time series of gene expression levels x, and simulate the effects of perturbation by adding a constant perturbation vector to the equation .
for details, see  <cit> .
we measure the gene expression levels as time averages over concentrations:  and , where t <dig> <t <dig> <t <dig> <tp <t <dig> <t <dig>  t <dig> is the initial time point of the simulation , tp is the time at which the perturbation vector  is applied.
the procedure is depicted in figure  <dig>
testing on the e. coli dataset
we use the wild-type e. coli strain mg <dig> available at  <cit> .
the reason for testing our method on this particular dataset is the fact that the sos response of the e. coli is well understood, and some consensus over the topology of its gene regulatory network is reached.
moreover it is possible to compare reconstruction success with other groups  <cit> .
we test the performance by counting the fraction of the correctly reconstructed links of all three classes , and with the extended matthews correlation coefficient.
the pure-chance reconstruction threshold
a strong criterion of checking the performance of any reconstruction method we consider, is to compare it with a pure random-reconstruction.
several proposed gene network reconstruction algorithms can be shown to perform only slightly above pure-chance reconstruction.
random reconstruction can be performed in the following way.
suppose that ⟨k⟩ denotes the true average degree of the network, which may or may not be known, and kg denotes a guess on ⟨k⟩.
since we estimate that the directed network has l = nkg links we take a fully connected network and assign a random order to all n links.
then we take a random number with three outcomes: + , - , and  <dig> , and assume that there are as many positive as negative links.
the distribution of these outcomes therefore is such that both + and - occur with probability w± = kg/2n, while the  <dig> appears with probability w <dig> =  <dig> - kg/n.
the true probabilities, i.e.
the probability of +, -,  <dig> if the true average ⟨k⟩ was known, however are, p± = ⟨k⟩/2n and p <dig> =  <dig> - ⟨k⟩/n.
now we pick one link after another in the given random order, and assign a random symbol, +, - or  <dig> and repeat this until l links have been assigned either + or -.
since 'throwing the dice' is an event independent of the network topology, one can simply compute  = w± p± and  = w0p <dig>
if reconstruction is based on pure chance the expected k-category correlation will be rk =  <dig>  this can be seen by inserting the confusion matrix cij = wipj, i and j indexing +, - or  <dig>  into equation .
RESULTS
reconstruction on in-silico data
we generated networks  with three different connectivities , for purposes of in-silico testing of our reconstruction algorithm.
using the generated adjacency matrices amodel of these networks we, simulated time series of gene expression levels  according to equation , with noise levels σ =  =  <dig> , where ξi ∈ n  and ηi ∈ n .
for details, see  <cit> .
as described in the previous section, we measured the steady state gene expression levels before and after the perturbation of each gene in the network, denoted by  and , respectively.
the so generated data was taken as an input for both reconstruction methods.
in this case the exact value of the over-expression vector μ was used as an extra input parameter for the nir reconstruction.
in reality this exact value remains unknown.
results were produced for  <dig> statistically identical realizations of networks for every connectivity ⟨⟩ ∈ { <dig>   <dig>  5}.
all the networks provided very similar results, only one for every connectivity is shown in figure  <dig>  here we compare the results of our reconstruction method with the nir algorithm for in-silico experiments.
the left panel of the figure shows the fraction of correctly reconstructed links, for every link type  as well as their sum f. the colors blue and green represent the nir and the proposed method, respectively.
the pure-chance threshold is shown to emphasize the significance of the result.
the right panel shows the extended matthews correlation coefficient.
for the matthews correlation coefficient the pure-chance threshold is constant at zero.
reconstruction of the e. coli sos network
although our reconstruction method showed better results tested on in-silico networks than nir, the true value of any reconstruction potential can be shown just on the real biological data.
when testing both methods on e. coli data, as shown in figure  <dig>  our reconstruction method outperforms nir more visibly, in both performance measures.
to stress the difference in the quality of reconstruction we present p-values of given correlation coefficients between the real and reconstructed networks.
given the sample size k =  <dig>  i.e.
the number of links to be reconstructed, and a ⟨k⟩ =  <dig> , the p-value of correlation coefficient  =  <dig>  for nir is pnir =  <dig> , while the p-value of correlation coefficient r <dig> =  <dig>  for our method is p =  <dig> .
for r <dig> values see figure  <dig>  at ⟨k⟩ =  <dig>  our reconstruction leads to a network which significantly correlates better with the experimentally known biological network.
this is demonstrated in figure  <dig> where mean and standard deviation of δr <dig> =  is plotted for  <dig> realizations of networks of size n =  <dig> and connectivity ⟨k⟩ =  <dig>
the computational time needed to perform the nir algorithm on this particular  <dig> node network is of order of magnitude of  <dig> minute, while our approach takes less than a second, both performed on a standard personal computer.
the nir algorithm is unable to cope with reconstruction of significantly larger gene regulatory networks, both from the time or memory consumption, while our method can easily deal with larger network sizes.
because of typically high levels of noise and uncertainty in biological data collected throughout actual experiments, the robustness of a method is of crucial importance.
we tested both the nir and our algorithm in the following way: we took the e. coli data and added gaussian noise .
we produced  <dig> perturbed datasets, reconstructed the network with both, the proposed algorithm and nir, and counted the number of links that have changed with respect to the network reconstructed from the unperturbed data, i.e.
links where either - → +,  <dig> or + → -,  <dig> or  <dig> → ±.
while for nir  <dig>  percent of the links changed on average for the proposed algorithm only  <dig>  percent of the links were classified differently.
in absolute numbers: for nir  <dig>  links and for the proposed algorithm  <dig>  links were classified differently.
discussion
from the right panel of figure  <dig>  showing the mathews correlation coefficient for the in-silico experiments, it can clearly be seen that for the fraction of correctly reconstructed links our method performs about equally well than nir for very sparse networks  and outperforms it for more densely connected networks.
looking at the fractions of correctly reconstructed links, one notices a slightly better performance of our algorithm, while for the extended matthews correlation coefficient the difference is much more notable.
to understand this difference, one has to take a closer look at the type i and type ii errors of both methods.
while the nir algorithm makes almost the same number of reconstruction errors of all types, there is a clear distinction in errors made by our reconstruction algorithm.
the vast majority of errors are made by assuming that there is a link  between two genes, while in the real case there is none, and vice versa.
only a few mistakes are made where the real positive link is reconstructed as negative, or vice versa.
this is an additional asset of the proposed reconstruction algorithm.
in figure  <dig> one can easily notice that both reconstruction methods, the proposed one and nir, applied to in-silico data have their maxima in performance when the input average degree equals to the true one, ⟨k⟩ = ⟨k⟩model, which can be seen as an additional consistency check of the algorithm.
on the other hand, after applying both reconstruction methods on e. coli data, just the proposed reconstruction algorithm shows its performance maximum at the ⟨k⟩ = ⟨k⟩e.coli point, while the nir method shows similarities in behavior to the pure-chance reconstruction.
although the proposed algorithm is fast and can in principle handle very large networks it is of course unrealistic to assume that the algorithm in its present form can reconstruct networks of realistic genome sizes any better than pure chance.
this is due to the fact that basically () link weights have to be estimated.
theoretically n independent over-expression experiments could in principle suffice to provide a sufficient number of equations to solve the purely linear problem exactly.
however, contributions of noise and deviations of the real dynamics from a purely linear dynamics will enter the equations proportionally to the degrees of freedom and corrupt the solution.
any measure that adequately reflects the number of correctly reconstructed links, e.g.
r <dig>  therefore should not decay faster with the network size than with a power of n- <dig>  in figure  <dig> and  <dig> we demonstrate this fact for the proposed algorithm and the r <dig> correlation coefficient.
figure  <dig> also demonstrates that while the maximum of r <dig> is still pronounced for n =  <dig> and only misses the correct value of ⟨k⟩ by Δk =  <dig>  the pronounced maximum of r <dig> around the true value of ⟨k⟩ is almost lost for n =  <dig>  n =  <dig> therefore represents a rough estimate of the upper limit of the network size for the proposed algorithm performs better than pure gambling.
CONCLUSIONS
we introduced a reverse engineering procedure for gene regulatory networks, applicable on an experimental setup where all the genes belonging to a genetic network are being over-expressed one after the other, after which gene-chip measurements in the steady state are taken.
we showed the reconstruction performance on both in-silico and biological data.
the method is applicable to large networks, both from the computational memory or computational time point of view, which might be a problem for algorithms limited by combinatorial explosions.
however the increasing lack of independent experimental information with growing network size practically limits networks to sizes n ≤  <dig>  however, due to the superior time characteristics, large networks could in principle be decomposed into overlapping subnetworks.
these subnetworks can be inferred by the proposed algorithm and then merged together in an adequately chosen post processing step.
except from technical benefits, the philosophy of our reconstruction method complies perfectly with the biological goals of conducting over-expression experiments.
in contrary to the nir algorithm or similar reconstruction methods, where the final solution is a network, where every link has the same significance, our method ranks the reconstructed links by their influence, which might be a very important issue in experimental gene interaction-detection instead of randomly picking the links out of a given reconstructed topology, here one can select interaction-links with the highest weights.
this again ameliorates the consequences of not knowing the real network connectivity ⟨⟩ a priori.
while selecting a good value for ⟨k⟩ is crucial for getting reliable networks, it will not influence the ordering of the links by importance in the proposed algorithm.
in other words, no matter which ⟨k⟩ is taken, the set of ranking of reliable links will not change.
another shortcoming of the nir algorithm is the fact that the resulting network has a trivial, unrealistic degree distribution, a delta function, δ. thus, detecting genetic hubs, peripheral genes, or any other topologically important genes in the network is practically impossible.
the proposed method does not a priori restrict the topology of the reconstructed network except for the average degree ⟨k⟩ which is important for the thresholding only.
for successful reconstruction the nir algorithm needs as an external input information on external perturbation, which is in most realistic cases at best only approximately known.
in our in-silico experiments we have provided the exact information for nir; even then the nir algorithm was outperformed.
authors' contributions
the method was mainly developed by dh based on theoretical foundations and ideas provided by rh and st. all numerical was done by ds the paper was written mainly by st and rh.
all authors read and approved the final manuscript.

 prediction of functional relationships between genes, starting from actual gene expression data, is one of the primary goals of systems biology. despite large efforts in this direction, either based on transcription factor – promoter interaction, or on inferring gene networks, methods for reliable predictions of collective behavior of gene-activity are yet to be found. some general facts about the topology of gene regulatory networks, statistics of gene expressions or the dynamics of gene regulation are becoming to be understood. this knowledge is far from sufficient to successfully reconstruct gene networks, but can be helpful in limiting the tremendous number of parameters involved in reconstruction. even if the average degree of the gene regulatory network, i.e. the number of genes regulated by some gene on average, was known, noisy and limited data will always lead to severe problems. the degree ki of a node i in a network is defined as the number of links that emerge from -or point to- that node. the average degree is denoted by ⟨k⟩. there are basically two types of reverse engineering approaches depending on the experimental setup, inferring the gene network from steady-state or from time-series experiments. by using steady-state experiments, one can not draw any conclusion about the dynamics of gene regulation. conducting time-series experiments gives helpful insights into gene regulatory dynamics, but often with the price of getting redundant information. further, due to costs full time-series data on gene expression are in general not available. as described in, one can further divide the reverse engineering methods into four categories: differential equation models, boolean network models, bayesian network models and association networks. the reverse engineering methods based on differential equations further may rely on linear or nonlinear differential equations. the latter models may possess potential in alleviating the effects of insufficient information fundamental in reverse engineering of genetic networks by obtaining information from combinatorial perturbations measurements on the system. in linear systems such information would be redundant. how can gene regulatory network reconstruction methods be validated and compared? neither a standardized biological benchmark, nor a consensus on what class of models to use for in-silico testing exists. the usual way is to validate a method either by applying it on a given experimental dataset or on in-silico datasets. in both cases one has to deal with different problems. applying a method to an experimental dataset, poses the problem of comparing the reconstruction result with a network which is always just a consensus on how a biological network could look like, but never the exact gene regulatory network. on the other hand, when applying a reconstruction models to in-silico data, one has a perfect reference network, however the generated timeseries data is a result of a dynamical model of gene interaction, which cannot be shown to overlap with the real gene regulation dynamics. in this paper we introduce a novel reverse engineering algorithm and validate it against biological and in silico data. the performance of the algorithm is compared against network identification by multiple regression for several reasons. i) nir is considered a state of the art algorithm which plays a role comparable to a benchmark. to our best knowledge nir has not been outperformed by other algorithms with respect to predicting the topology of genetic networks correctly -on average- so far. however, nir has two drawbacks. a) the computation time increases quickly with the network size. b) nir can not identify hubs in networks. we will briefly discuss this in a little more detail further below. recently a reconstruction algorithms has been proposed by which is clearly faster than nir. yet, its predictions do not better or completely equal the ones made by nir. another algorithm has been proposed recently, which correctly identifies the reca-hub in the e. coli sos response network and reports a higher statistical significance of the reconstructed sos network. yet, the algorithm is restricted to a-cyclic networks. both cases lack a comprehensive comparison with nir and do not challenge its role as benchmark. ii) we decided to selected an e. coli dataset for biological validation of our algorithm. this choice is satisfactory since the underlying sos response network has been subject to over years of research, which provides us with a well established consensus about the actual gene regulations going on in that particular sub-network. moreover nir has been applied to the same sos response network of e. coli which makes it possible to compare the two algorithms. iii) both, the proposed algorithm and nir, build on the assumption that the dynamics of rna concentrations defined by the underlying network is governed by a linear differential equation. for generating in silico data we therefore are using a linear gene regulation model proposed by the authors. the only nonlinearity in the model is introduced by the condition that rna concentrations can not become negative. this model simultaneously captures a series of experimental facts, such as the distribution of genome wide gene-expression levels, multi-stability and periodicity. the proposed reconstruction algorithm does not rely on the detailed knowledge of the data generation model. the generated in silico data therefore is realistic and allows for an unbiased comparison of the proposed algorithm with nir. although the proposed algorithm and nir start from identical assumptions on rna concentration dynamics and equally have to deal with insufficient information the reconstruction approaches are in fact quite different. the inference idea of the nir algorithm is to reconstruct the network by using a least-squares multiple regression approach assuming the same fixed number of regulatory links for every gene, i.e. the average degree ⟨k⟩ of the network. basically this means that promising ensembles of links are put to the test and the ensemble which gives the least squared error with the input data on basis of the underlying linear model is selected as the optimal solution which is calculated for all the () possible combinations, where n is the size of the network. this combinatorial factor is responsible for a polynomial time characteristics of nir, i.e. roughly t ∝ n⟨k⟩, which limits its applicability to relatively small networks with low average degree. gene-networks are expected to have average degrees of about for average degree ⟨k⟩ = this implies that computation time of nir grows quickly with at least a factor n moreover, since nir only considers networks where all nodes have identical degree there is no way nir could detect hubs in networks. clearly nir will perform best on networks with sharply peaked degree distributions and perform bad on networks with broad degree distributions. the proposed algorithm however relies on the observation that for very sparse networks with no loops the information provided by experiments is sufficient to infer the network. the proposed approach tries to extrapolate the sparse network predictions to non sparse networks guided by the exact solutions of the linear differential equations. in contrast to nir the number of regulatory links per gene are not fixed a priory which intuitively is much more realistic. while large networks of even thousands of genes do not actually pose a problem for the proposed algorithm in terms of computing time there are of course limitations to the network size in terms of available independent experimental information. basically () link weights have to be estimated from maximal n independent over expression experiments. any reverse engineering algorithm relying on this limited information will necessarily approach the results of pure gambling with growing network size. methods a system of interacting genes can be seen as a complex network, where every directed link represents a functional relationship between two genes. for simplicity, let us assume that this link will contain both transcriptional and translation levels of gene interactions. in this oversimplified view one can assume that the gene expression level changes in time as where g is an a priori unknown function of a time dependent vector of gene expression levels x. if there are n genes in the network under study, vector x has n components. if we assume, as in, that g) is a linear function one can write equation as where μ is a vector of gene over-expressions and a is a constant adjacency matrix, containing the "strength" of gene-gene interaction. the elements aij can be positive or negative real numbers, indicating activating or inhibiting interactions, respectively. by solving equation one formally gets where superscript μ indicates the system was perturbed with the constant vector μ. after m over-expressions, one can write the above equation in matrix form where is the collection of all gene expression levels after the m over-expressions experiments, organized in a n × m matrix, where one of the m columns is a time dependent n-vector of gene expression levels for different gene being over-expressed. in the following let us assume that we are able to perform n over-expression experiments, i.e. m = n. is a n × n diagonal matrix of gene over-expression levels. is diagonal, because in every over-expression experiment just one gene is being over-expressed. at this point we emphasize that even though we know from the way over-expression experiments are prepared that the matrix is diagonal, one often has little to no experimental control about the exact amplitude of its entries. this problem is mitigated for small times t ≪ to see this we define using this definition and abbreviating ≡ at equation can be rewritten into q = a-1/t and consequently into it is easy to check that in the short time limit holds. for very short times t our lack of knowledge is thus basically irrelevant and estimating q reduces to estimating. yet, for ≫ t we have ≫ || and equation effectively reduces to the trivial identity =, i.e. for short times equation is consistently fulfilled but provides no constraining information on. however, when the matrix is so sparse that each node has at most only one regulatory link and no loops are present in the network the relative responses will be one-to-one related with the network topology. is the gene expression level of the ith gene when no perturbation has occurred and the gene expression level of the ith gene, where the jth gene has been over-expressed. it is also not hard to realize that for sparse adjacency matrices the relative response will in general provide a good first estimate, i.e. ∝ y. moreover, linearity assures that relative responses for short times will be small, |yij| ≪ and therefore q ~ ~ y. however, for times in the order of a cell-cycle t ~ and less sparse matrices these estimates will not be sufficient, i.e. the yij will not in general be small and q need not be close to i. the idea is to replace yij by some function f and estimate q with dij ≡ f. the function f clearly should have the properties that f ~yij for |yij| ≪ and f is a monotonously increasing function. since in practice yij can range over many decades in amplitude we also presume that f should be a concave function. lastly, f has to be defined on since - ≤ yij, but in principle could be arbitrary large for positive values and map to. maybe the simplest function fulfilling this requirements is the logarithm, i.e. f ≡ ln, and d gets this means that we effectively estimate = ln, where i is the identity matrix. for the matrix logarithm to provide unique solutions, i + d should not have any negative real eigenvalues. since experimental results show that this is not the case in general we use a cleaned version of d, denoted by d such that i + d has no negative real eigenvalues and the prediction of the adjacency matrix is given by eigenvalue cleaning in general, the logarithm of a matrix can have an infinite number of real and complex solutions. in order to find a unique solution of ln, matrix d + i can not have negative real eigenvalues. if we take a look at the eigenspectrum of matrix d from various experiments, both biological and in-silico, we notice that most of the eigenvalues are complex, however a small number of eigenvalues are real, both positive and negative. thus, we first have to clean the matrix d + i, meaning to set all the negative eigenvalues to small positive number ϵ. this is done by first diagonalizing matrix d: where the eigenvalues are ordered in a way that first l eigenvalues are real and less then - = di < - ∀i = l. these l diagonal elements are set to ϵ - 1 and are rotated to yield the cleaned matrix matrix d + i no longer has negative real eigenvalues, and a unique prediction of an adjacency matrix a-reconstructed gene regulatory network – can be given thresholding our solution a will in general represent a fully connected network, with a certain distribution of link weights around zero. the reason why we are always getting fully connected network, e.g. network without zero entries in adjacency matrix, is because of the noisy measurements. real gene regulatory networks are never fully connected, but are characterized by an average degree ⟨k⟩, which has been estimated to be relatively small ~ –. for simplicity we assume ⟨k⟩ for the undirected unweighted case. knowledge of ⟨k⟩ allows to define a clear thresholding scheme. all entries in a below a threshold α are set to zero. α is chosen such, that matrix has the average degree ⟨k⟩, i.e. such that a is the first approximation of the gene regulatory network we want to reconstruct. a note on fewer than n experiments in the case where the number of over-expression experiments m is lower than the size of the network n, matrix d is not quadratic, thus we are unable to calculate the matrix logarithm. information about the influence of gene j on gene i is missing. a way around is that one can introduce a measure of the distance between two genes in the network. although the correlation between gene expressions in different over-expression measurements can not lead to any conclusion about the functional relations among genes, it can provide a good measure for the distance between the genes in the network, where strong correlations means low functional distance. one can therefore simply calculate a matrix of correlation coefficients and replace the missing terms in d: here the first index in dij, i runs in the domain m <i ≤ n, the second index, ≤ j ≤ n. testing the method we have run both, the proposed algorithm and nir on a usual pc using matlab. we compare our results with the nir algorithm both on an in-silico dataset, as well as on the e. coli sos response network, in the same way as in. we measure performance in two ways, firstly, by counting the fraction of correctly reconstructed positive, negative and zero links, denoted by f+, f- and f respectively. for later use we define f ≡ f+ + f- + f secondly, by calculating the extended matthews correlation coefficient, a discrete version of pearson's correlation coefficient, extrapolated onto k × k confusion matrices. matthews correlation coefficient is taking values in the interval, where stands for no correlation between predicted and real case, and and - stands for complete or negative correlation respectively. the k-category correlation coefficient is defined as where c is a k × k confusion matrix, or more precisely the element ckl is counting the number of cases where category k is predicted, but category l was present. in our case, k = and the categories are: positive link, negative link and no link between any two genes. it is straight forward to see that p-values for any value of rk can be computed exactly in the same way as for the pearson correlation coefficient, provided sample size is given. it is important to stress the difference in measuring reconstruction performance in in-silico and biological experiments. while in biological networks, self-regulation is a part of the complete gene regulatory network, in numerically simulated gene regulation dynamics, self-regulation is often screened by negative self-degradation rates, which have to be imposed, in order to keep the dynamics sufficiently stable, see e.g.. to be as correct and conservative as possible, we therefore compare our reconstructed adjacency matrix only with the off-diagonal elements in the in-silico case. in the e. coli case we of course compare with the complete adjacency matrix. in-silico testing we employ a recently proposed dynamical gene-gene interaction model, which is able to capture a series of experimental facts on gene-expression statistics: distribution of gene-expression increments over time, multiple equilibria, stability. the model is defined as with a positivity condition imposed for gene expression levels: here, amodel is a real valued adjacency matrix of gene-gene interactions. it is modeled as a particular random matrix, mimicking experimentally known facts. x is a vector of gene-expression levels in time t, constant vector x indicates steady state gene-expression levels. ξ and η are multiplicative and additive noise terms, respectively, which are a generic feature in chemical reactions. using the dynamics defined in equation we generate the time series of gene expression levels x, and simulate the effects of perturbation by adding a constant perturbation vector to the equation. for details, see. we measure the gene expression levels as time averages over concentrations: and, where t <t <t <tp <t <t t is the initial time point of the simulation, tp is the time at which the perturbation vector is applied. the procedure is depicted in figure testing on the e. coli dataset we use the wild-type e. coli strain mg available at. the reason for testing our method on this particular dataset is the fact that the sos response of the e. coli is well understood, and some consensus over the topology of its gene regulatory network is reached. moreover it is possible to compare reconstruction success with other groups. we test the performance by counting the fraction of the correctly reconstructed links of all three classes, and with the extended matthews correlation coefficient. the pure-chance reconstruction threshold a strong criterion of checking the performance of any reconstruction method we consider, is to compare it with a pure random-reconstruction. several proposed gene network reconstruction algorithms can be shown to perform only slightly above pure-chance reconstruction. random reconstruction can be performed in the following way. suppose that ⟨k⟩ denotes the true average degree of the network, which may or may not be known, and kg denotes a guess on ⟨k⟩. since we estimate that the directed network has l = nkg links we take a fully connected network and assign a random order to all n links. then we take a random number with three outcomes: +, -, and, and assume that there are as many positive as negative links. the distribution of these outcomes therefore is such that both + and - occur with probability w± = kg/2n, while the appears with probability w = - kg/n. the true probabilities, i.e. the probability of +, -, if the true average ⟨k⟩ was known, however are, p± = ⟨k⟩/2n and p = - ⟨k⟩/n. now we pick one link after another in the given random order, and assign a random symbol, +, - or and repeat this until l links have been assigned either + or -. since'throwing the dice' is an event independent of the network topology, one can simply compute = w± p± and = w0p if reconstruction is based on pure chance the expected k-category correlation will be rk = this can be seen by inserting the confusion matrix cij = wipj, i and j indexing +, - or into equation.  reconstruction on in-silico data we generated networks with three different connectivities, for purposes of in-silico testing of our reconstruction algorithm. using the generated adjacency matrices amodel of these networks we, simulated time series of gene expression levels according to equation, with noise levels σ = =, where ξi ∈ n and ηi ∈ n. for details, see. as described in the previous section, we measured the steady state gene expression levels before and after the perturbation of each gene in the network, denoted by and, respectively. the so generated data was taken as an input for both reconstruction methods. in this case the exact value of the over-expression vector μ was used as an extra input parameter for the nir reconstruction. in reality this exact value remains unknown. results were produced for statistically identical realizations of networks for every connectivity ⟨⟩ ∈ { 5}. all the networks provided very similar results, only one for every connectivity is shown in figure here we compare the results of our reconstruction method with the nir algorithm for in-silico experiments. the left panel of the figure shows the fraction of correctly reconstructed links, for every link type as well as their sum f. the colors blue and green represent the nir and the proposed method, respectively. the pure-chance threshold is shown to emphasize the significance of the result. the right panel shows the extended matthews correlation coefficient. for the matthews correlation coefficient the pure-chance threshold is constant at zero. reconstruction of the e. coli sos network although our reconstruction method showed better results tested on in-silico networks than nir, the true value of any reconstruction potential can be shown just on the real biological data. when testing both methods on e. coli data, as shown in figure our reconstruction method outperforms nir more visibly, in both performance measures. to stress the difference in the quality of reconstruction we present p-values of given correlation coefficients between the real and reconstructed networks. given the sample size k = i.e. the number of links to be reconstructed, and a ⟨k⟩ =, the p-value of correlation coefficient = for nir is pnir =, while the p-value of correlation coefficient r = for our method is p =. for r values see figure at ⟨k⟩ = our reconstruction leads to a network which significantly correlates better with the experimentally known biological network. this is demonstrated in figure where mean and standard deviation of δr = is plotted for realizations of networks of size n = and connectivity ⟨k⟩ = the computational time needed to perform the nir algorithm on this particular node network is of order of magnitude of minute, while our approach takes less than a second, both performed on a standard personal computer. the nir algorithm is unable to cope with reconstruction of significantly larger gene regulatory networks, both from the time or memory consumption, while our method can easily deal with larger network sizes. because of typically high levels of noise and uncertainty in biological data collected throughout actual experiments, the robustness of a method is of crucial importance. we tested both the nir and our algorithm in the following way: we took the e. coli data and added gaussian noise. we produced perturbed datasets, reconstructed the network with both, the proposed algorithm and nir, and counted the number of links that have changed with respect to the network reconstructed from the unperturbed data, i.e. links where either - → +, or + → -, or → ±. while for nir percent of the links changed on average for the proposed algorithm only percent of the links were classified differently. in absolute numbers: for nir links and for the proposed algorithm links were classified differently. discussion from the right panel of figure showing the mathews correlation coefficient for the in-silico experiments, it can clearly be seen that for the fraction of correctly reconstructed links our method performs about equally well than nir for very sparse networks and outperforms it for more densely connected networks. looking at the fractions of correctly reconstructed links, one notices a slightly better performance of our algorithm, while for the extended matthews correlation coefficient the difference is much more notable. to understand this difference, one has to take a closer look at the type i and type ii errors of both methods. while the nir algorithm makes almost the same number of reconstruction errors of all types, there is a clear distinction in errors made by our reconstruction algorithm. the vast majority of errors are made by assuming that there is a link between two genes, while in the real case there is none, and vice versa. only a few mistakes are made where the real positive link is reconstructed as negative, or vice versa. this is an additional asset of the proposed reconstruction algorithm. in figure one can easily notice that both reconstruction methods, the proposed one and nir, applied to in-silico data have their maxima in performance when the input average degree equals to the true one, ⟨k⟩ = ⟨k⟩model, which can be seen as an additional consistency check of the algorithm. on the other hand, after applying both reconstruction methods on e. coli data, just the proposed reconstruction algorithm shows its performance maximum at the ⟨k⟩ = ⟨k⟩e.coli point, while the nir method shows similarities in behavior to the pure-chance reconstruction. although the proposed algorithm is fast and can in principle handle very large networks it is of course unrealistic to assume that the algorithm in its present form can reconstruct networks of realistic genome sizes any better than pure chance. this is due to the fact that basically () link weights have to be estimated. theoretically n independent over-expression experiments could in principle suffice to provide a sufficient number of equations to solve the purely linear problem exactly. however, contributions of noise and deviations of the real dynamics from a purely linear dynamics will enter the equations proportionally to the degrees of freedom and corrupt the solution. any measure that adequately reflects the number of correctly reconstructed links, e.g. r therefore should not decay faster with the network size than with a power of n- in figure and we demonstrate this fact for the proposed algorithm and the r correlation coefficient. figure also demonstrates that while the maximum of r is still pronounced for n = and only misses the correct value of ⟨k⟩ by Δk = the pronounced maximum of r around the true value of ⟨k⟩ is almost lost for n = n = therefore represents a rough estimate of the upper limit of the network size for the proposed algorithm performs better than pure gambling.  we introduced a reverse engineering procedure for gene regulatory networks, applicable on an experimental setup where all the genes belonging to a genetic network are being over-expressed one after the other, after which gene-chip measurements in the steady state are taken. we showed the reconstruction performance on both in-silico and biological data. the method is applicable to large networks, both from the computational memory or computational time point of view, which might be a problem for algorithms limited by combinatorial explosions. however the increasing lack of independent experimental information with growing network size practically limits networks to sizes n ≤ however, due to the superior time characteristics, large networks could in principle be decomposed into overlapping subnetworks. these subnetworks can be inferred by the proposed algorithm and then merged together in an adequately chosen post processing step. except from technical benefits, the philosophy of our reconstruction method complies perfectly with the biological goals of conducting over-expression experiments. in contrary to the nir algorithm or similar reconstruction methods, where the final solution is a network, where every link has the same significance, our method ranks the reconstructed links by their influence, which might be a very important issue in experimental gene interaction-detection instead of randomly picking the links out of a given reconstructed topology, here one can select interaction-links with the highest weights. this again ameliorates the consequences of not knowing the real network connectivity ⟨⟩ a priori. while selecting a good value for ⟨k⟩ is crucial for getting reliable networks, it will not influence the ordering of the links by importance in the proposed algorithm. in other words, no matter which ⟨k⟩ is taken, the set of ranking of reliable links will not change. another shortcoming of the nir algorithm is the fact that the resulting network has a trivial, unrealistic degree distribution, a delta function, δ. thus, detecting genetic hubs, peripheral genes, or any other topologically important genes in the network is practically impossible. the proposed method does not a priori restrict the topology of the reconstructed network except for the average degree ⟨k⟩ which is important for the thresholding only. for successful reconstruction the nir algorithm needs as an external input information on external perturbation, which is in most realistic cases at best only approximately known. in our in-silico experiments we have provided the exact information for nir; even then the nir algorithm was outperformed. authors' contributions the method was mainly developed by dh based on theoretical foundations and ideas provided by rh and st. all numerical was done by ds the paper was written mainly by st and rh. all authors read and approved the final manuscript. 
we compare the algorithm's performance with the nir algorithm, both on the well known e. coli experimental data and on in-silico experiments. reverse engineering of gene regulatory networks presents one of the big challenges in systems biology. we present a novel algorithm for gene network reconstruction on the basis of steady-state gene-chip data from over-expression experiments. we show superiority of the proposed algorithm in the number of correctly reconstructed links and discuss computational time and robustness. the proposed algorithm is not limited by combinatorial explosion problems and can be used in principle for large networks. gene regulatory networks are usually inferred from a set of single-gene over-expressions and/or knockout experiments. functional relationships between genes are retrieved either from the steady state gene expressions or from respective time series.
 reverse engineering of gene regulatory networks presents one of the big challenges in systems biology. gene regulatory networks are usually inferred from a set of single-gene over-expressions and/or knockout experiments. functional relationships between genes are retrieved either from the steady state gene expressions or from respective time series.  we present a novel algorithm for gene network reconstruction on the basis of steady-state gene-chip data from over-expression experiments. the algorithm is based on a straight forward solution of a linear gene-dynamics equation, where experimental data is fed in as a first predictor for the solution. we compare the algorithm's performance with the nir algorithm, both on the well known e. coli experimental data and on in-silico experiments.  we show superiority of the proposed algorithm in the number of correctly reconstructed links and discuss computational time and robustness. the proposed algorithm is not limited by combinatorial explosion problems and can be used in principle for large networks. 