Skip to content

NetworkInference 1.2.0

Compare
Choose a tag to compare
@flinder flinder released this 05 Jun 17:36
· 24 commits to master since this release

New Features

Changes to netinf()

  • netinf() got another speed-up. After the first edge, the computation
    time for each edge is reduced by the factor number of nodes in the network
  • Number of edges can now be chosen using a Vuong style test. If this
    procedure should be used, a p-value is chosen at which the inference of new
    edges stops. This value is specified via the new p_value_cutoff argument
    to netinf().
  • This lead to the netinf output having a fourth column now, containing the
    p-value for each edge. The p-value is also available if a fixed number of edges
    is chosen.
  • If no starting values are provided via the params argument parameters
    are initialized by choosing the midpoint between the maximum possible
    parameter value and the minimum possible value. These values are derived
    using the closed form MLE of the respective parameter, derived from
    either the minimum possible diffusion times (assuming a diffusion
    'chain', i.e. a -> b -> c -> ...) or the maximum possible diffusion
    times (assuming a diffusion 'fan', i.e. a -> b, a -> c, a -> d,...).
  • n_edges can now specify either an absolute number of edges, or a p-value
    cutoff in the interval (0, 1) for the Vuong test
  • The log normal distribution is now available as a diffusion model. With this
    comes a change in the arguments for netinf. Instead of lambda,
    parameters are now specified with a vector (or scalar depending on
    distribution) params. For exponential and rayleigh distributions params
    is just the rate / alpha parameter. For the log-normal distribution params
    specifies mean and variance (in that order). See the netinf()
    documentation for details on specificaiton and parametrization (?netinf).
  • The output from netinf() now contains information on the model, parameters
    and iterations as attributes. See the documentation for details.
  • The policies dataset has been updated with over 600 new policies from the
    SPID database
    (access via data(policies)).
  • Inferred cascade trees can now be returned by setting trees = TRUE.

New functions

  • New function drop_nodes() now allows to drop nodes from all cascades in a cascade object.

Changes to simulate_cascades()

  • simulate_cascades() now supports passing of additional (isolated in the diffusion network) nodes via the nodes argument.
  • simulate_cascades() now also supports the log-normal distribution.

Bug Fixes

  • Inference of very uninformative edges (large number of edges) could lead for the software to break. Fixed now
  • In simulate_cascades() with partial cascades provided, it was possible that nodes experienced an event earlier than the last event in the partial cascade. Now, the earliest event time is the last observed event time in the partial cascade.

Other changes

  • C++ code is now modularized and headers are properly documented