Releases: miicTeam/miic_R_package
v2.0.3
v2.0.3
Features
-
Release to CRAN.
-
tMIIC version for temporal causal discovery on stationary time series:
new mode ofmiic()
to reconstruct networks from temporal stationary
datasets (Simon et al., eLife 2024).
The temporal mode ofmiic()
is not activated by default and can be enabled by
setting the newly added parametermode
to"TS"
(Temporal Stationary).
A tuning of the temporal mode is possible through a set of new parameters:
max_nodes
,n_layers
,delta_t
,mov_avg
andkeep_max_data
. -
Addition of the 'is consequence' prior knowledge. Consequence variables are
excluded from the possible contributors, edges between consequences are
ignored and edges between a non consequence and a consequence are pre-oriented
toward the consequence.
Information about consequence variables can be provided tomiic()
in thestate_order
, by supplying anis_consequence
column. -
iMIIC version introducing contextual variables, genuine vs putative causes
and multiple enhancements to deal with very large datasets (Ribeiro-Dantas et al., iScience 2024).
Information on contextual variables can be provided tomiic()
in thestate_order
, by supplying anis_contextual
column and
genuine vs putative causes can be tuned by the newly added parameter
ort_consensus_ratio
. -
Enhancement of orientations using mutual information supremum principle for
finite datasets (Cabeli et al., Why21 at NeurIPS 2021).
The use of enhanced orientations is controlled by the newly added parameter
negative_info
ofmiic()
and is activated by default.
Fixes and improvements
-
Faster post-processing in R for datasets with large number of variables.
-
Fix for memory overflow on shared memory space.
-
The discretization of continuous variables has been improved when dealing
with variables having a large number of identical values.
Breaking changes
As part of this major release, consolidation of long-pending breaking changes:
-
Harmonization of exported function names using
camel case
. -
Harmonization of parameters and return values using
snake case
. -
Harmonization of abbreviations.
All the documentation has been updated accordingly, in case of issue when
upgrading to this version, please consult the help of the relevant function
for more information about its interface.
For the core miic()
function, the main breaking changes in the interface
when upgrading from the 1.5.3 release are:
in the parameters:
-
cplx
: renaming of the complexity term"mdl"
→"bic"
-
ori_proba_ratio
→ort_proba_ratio
in the miic object returned:
-
all.edges.summary
→summary
Nxy_ai
→n_xy_ai
log_confidence
→info_shifted
infOrt
→ort_inferred
trueOrt
→ort_ground_truth
isOrtOk
→is_inference_correct
isCausal
→is_causal
proba
→p_y2x
,p_x2y
consensus
→ort_consensus
-
orientations.prob
→triples
NI3
→ni3
Error
→conflict
Still compared to 1.5.3, another important change in the behavior of miic()
is that, by default, miic()
no longer propagates orientations
and allows latent variables discovery during orientation step.
Known issues
- Conditioning on a (very) large number of contributors can lead to a memory
fault.
v1.5.3
Fixes and improvements
-
Apply proper conditions to determine if a directed edge represents a causal relation
-
Fix the check error on CRAN Solaris
-
Fix some edge case bugs
v1.5.2
Fixes and improvements
-
Further refactoring of the C++ code for the computation of information
-
Fix minor bugs in the continuous computation
-
Fix incompatibility with older versions of GCC (std::align)
v1.5.1
Fixes and improvements
-
Fix various bugs in the computation of information in the presence of NA
values in the dataset. -
An overhaul of the C++ code base, better memory management, computation time
and code readability.
v1.5.1-rc1
Fixes and improvements
-
Fix various bugs in the computation of information in the presence of NA
values in the dataset. -
An overhaul of the C++ code base, better memory management, computation time
and code readability.
v1.5.0
Features
-
Add a column
consensus
to the reconstructed graph's edges summary associated
with the optionconsistent
, and a new parameterconsensus_threshold
accordingly. -
Add a parameter
ori_proba_ratio
to have more control on the orientation of
edges.
Fixes and improvements
-
Faster post processing in R
-
Rework plot functionality
-
Fix a bug in the orientation part about the log score
-
Refactor of the C++ code base (orientation).
v1.5.0 submission
Features
-
Add a column
consensus
to the reconstructed graph's edges summary associated
with the optionconsistent
, and a new parameterconsensus_threshold
accordingly. -
Add a parameter
ori_proba_ratio
to have more control on the orientation of
edges.
Fixes and improvements
-
Faster post processing in R
-
Rework plot functionality
-
Fix a bug in the orientation part about the log score
-
Refactor of the C++ code base (orientation).
v1.4.2
- Various fixes of memory leaks
- Refactoring of confidence cut code
v1.4.2
Last fixes before CRAN resubmission
v1.4.0
v1.4.0 submitted to CRAN