Tutorials › Multiple Imputation by Chained Equations (MICE) › Feedback Loops in Chained Updates

Fully Conditional Specification · Tutorial 143 of 497

Feedback Loops in Chained Updates

Learn to trace and calculate how one imputation changes subsequent conditional draws and feeds back through later sweeps of an FCS chain.

Intermediate 11 min read

What You'll Learn

  • Define the sweep state using distinct labels for initial and updated imputations
  • Calculate the probability of a complete sequence of chained updates
  • Trace how conditional probabilities change as updated values become predictors
  • Distinguish algorithmic feedback from causal effects and a compatible joint model
  • Identify implementation errors and practical signs that a feedback trace is unreliable
  • Compare repeated chained updates with a single pass or a joint-model approach

How an Update Becomes Feedback

In fully conditional specification (FCS), an imputed value is drawn from a conditional model, then may be used as a predictor when another variable is updated. If that later value is used as a predictor in the next sweep, the influence has travelled around a loop: a draw changes a later draw, and that later draw can change the first variable’s next draw. This is feedback in the algorithm. It describes how the chain’s state is updated, not a causal effect among the variables.

The key to tracing this process is to distinguish the state before a sweep from the values drawn during it. In the example below, \(X_t,Y_t,Z_t\) denote the values at the end of sweep \(t\), and therefore the starting state for sweep \(t+1\). The initial state is labelled with subscript 0. This convention prevents an initial value and a new draw from being assigned the same label.

Definition: A feedback loop in chained updates occurs when an updated value is used in a later conditional update and that later update, or a subsequent sweep, changes the conditional distribution for a variable already updated. The loop is a feature of the algorithm’s update dependencies; by itself, it is not evidence of a scientific causal relationship.

For clarity, we will use a deliberately small hypothetical example with three binary variables and one record for which all three values are missing. Treat the conditional probabilities below as fixed and known for this illustration. A real analysis would estimate or draw conditional-model parameters, and would update only missing cells; observed cells remain fixed. This example isolates feedback through the imputed values rather than parameter uncertainty or other parts of a fitted MICE analysis.

A Small FCS System

Use the fixed update order \(X\), then \(Y\), then \(Z\). Each update uses the most recently available values: the new \(X\) is used to update \(Y\), and the new \(X\) and new \(Y\) are used to update \(Z\). The hypothetical conditional models are Bernoulli distributions:

$$ \begin{aligned} P(X=1\mid Y=y,Z=z)&=0.10+0.40y+0.20z,\\ P(Y=1\mid X=x,Z=z)&=0.10+0.50x+0.20z,\\ P(Z=1\mid X=x,Y=y)&=0.05+0.35x+0.45y. \end{aligned} $$

Each right-hand side lies between 0 and 1 for binary predictors, so each defines a valid Bernoulli conditional distribution. A value of 0 has the complementary probability. In this toy system, each draw uses a fresh independent uniform random number, conditional on the current predictors. Those assumptions make it possible to calculate a path probability directly. They are simplifying assumptions for the example, not a claim that fitted MICE conditionals in general have fixed parameters or independent draws across the full analysis.

For example, when \(Y=0,Z=0\), the probability of drawing \(X=1\) is 0.10. If \(Y=1,Z=0\), that probability is 0.50. Thus the current values of \(Y\) and \(Z\) affect the conditional distribution used for \(X\). The same kind of dependence operates within a sweep and carries into the next one.

Worked Example: Tracing Three Complete Sweeps

Start at \((X_0,Y_0,Z_0)=(0,0,0)\). Suppose the successive uniform draws for updating \(X,Y,Z\) are \(0.08,0.42,0.90\) in sweep 1; \(0.30,0.75,0.25\) in sweep 2; and \(0.20,0.65,0.80\) in sweep 3. For a Bernoulli draw, set the value to 1 when the uniform draw is below the conditional probability of 1, and to 0 otherwise.

Sweep 1. With \(Y_0=0,Z_0=0\), \(P(X_1=1)=0.10\). Since \(0.08<0.10\), draw \(X_1=1\). Now use this new value and the still-current \(Z_0=0\) for \(Y\): \(P(Y_1=1)=0.10+0.50(1)+0.20(0)=0.60\). Since \(0.42<0.60\), draw \(Y_1=1\). Finally, \(P(Z_1=1)=0.05+0.35(1)+0.45(1)=0.85\). Since \(0.90\) is not below \(0.85\), draw \(Z_1=0\). The state after the sweep is \((1,1,0)\).

Sweep 2. The starting state is now \((X_1,Y_1,Z_1)=(1,1,0)\). For \(X_2\), \(P(X_2=1)=0.10+0.40(1)+0.20(0)=0.50\); \(0.30<0.50\), so \(X_2=1\). For \(Y_2\), use the new \(X_2=1\) and the current \(Z_1=0\): \(P(Y_2=1)=0.10+0.50(1)+0.20(0)=0.60\). Since \(0.75\) is not below \(0.60\), \(Y_2=0\). For \(Z_2\), use the new \(X_2=1,Y_2=0\): \(P(Z_2=1)=0.05+0.35(1)+0.45(0)=0.40\). Since \(0.25<0.40\), \(Z_2=1\). The state becomes \((1,0,1)\).

Sweep 3. Starting from \((1,0,1)\), the probability for \(X_3=1\) is \(0.10+0.40(0)+0.20(1)=0.30\); \(0.20<0.30\), so \(X_3=1\). Then \(P(Y_3=1)=0.10+0.50(1)+0.20(1)=0.80\); \(0.65<0.80\), so \(Y_3=1\). Finally, \(P(Z_3=1)=0.05+0.35(1)+0.45(1)=0.85\); \(0.80<0.85\), so \(Z_3=1\). The state becomes \((1,1,1)\).

The values travel around the update loop: the first sweep’s \(X_1=1\) raises the probability used for \(Y_1=1\); \(Y_1=1\) contributes to the probability used for \(Z_1\); and the resulting \(Y_1,Z_1\) become predictors in the next sweep’s update for \(X_2\). Each draw remains random. A change in a conditional probability changes a draw’s chance of being 1; it does not guarantee the draw will be 1.

Transition Probabilities and Their Justification

A sweep can be represented as a transition from an old state \(s=(x,y,z)\) to a new state \(s'=(x',y',z')\). Write \(q_X,q_Y,q_Z\) for the three Bernoulli conditional probability functions above. Under the stated fixed-model and fresh-draw assumptions, the probability of that particular transition is

$$ K(s,s')= q_X(x'\mid y,z)\, q_Y(y'\mid x',z)\, q_Z(z'\mid x',y'). $$

Here \(q_X(x'\mid y,z)\) means the probability assigned to the specific value \(x'\), not just to 1: it is the specified probability if \(x'=1\), and its complement if \(x'=0\). The second factor conditions on the newly drawn \(x'\), while the third conditions on both newly drawn values. This follows by applying the conditional probability multiplication rule in update order: first the probability of the \(X\) draw, then the probability of the \(Y\) draw given the information available at that update, then the probability of the \(Z\) draw given its available values.

The product also normalizes over all possible new states. Summing first over \(z'\) makes the last factor sum to 1 for every \(x',y'\); summing next over \(y'\) makes the middle factor sum to 1 for every \(x'\); and summing over \(x'\) makes the first factor sum to 1. Therefore \(\sum_{s'}K(s,s')=1\). The chain’s next-state distribution is determined by the current state in this fixed-parameter illustration.

Worked Example: Probability of the Observed Path

For the first sweep in the trace, the transition is \((0,0,0)\to(1,1,0)\). The three factors are \(P(X_1=1\mid Y_0=0,Z_0=0)=0.10\), \(P(Y_1=1\mid X_1=1,Z_0=0)=0.60\), and \(P(Z_1=0\mid X_1=1,Y_1=1)=1-0.85=0.15\). Thus

$$ K\bigl((0,0,0),(1,1,0)\bigr) =0.10\times0.60\times0.15 =0.009. $$

The second transition is \((1,1,0)\to(1,0,1)\). Its factors are \(0.50\) for \(X_2=1\), \(1-0.60=0.40\) for \(Y_2=0\), and \(0.40\) for \(Z_2=1\), giving \(0.50\times0.40\times0.40=0.080\). The third transition, \((1,0,1)\to(1,1,1)\), has factors \(0.30,0.80,0.85\), giving \(0.30\times0.80\times0.85=0.204\).

Under the fresh-draw assumptions, the probability of this exact three-sweep path, starting at \((0,0,0)\), is the product of its transition probabilities: \(0.009\times0.080\times0.204=0.0001469\), to four significant figures. This is the probability of that specified sequence of states under the toy transition system, not a probability that a scientific hypothesis is true.

Worked Example: Measuring a Local Feedback Link

Consider the conditional probabilities at selected states to see how the loop transmits changes. Holding \(Z=0\), changing \(Y\) from 0 to 1 changes \(P(X=1\mid Y,Z)\) from \(0.10\) to \(0.50\), an increase of \(0.40\). Holding \(Z=0\), changing the newly updated \(X\) from 0 to 1 changes \(P(Y=1\mid X,Z)\) from \(0.10\) to \(0.60\), an increase of \(0.50\). Holding \(X=1\), changing the newly updated \(Y\) from 0 to 1 changes \(P(Z=1\mid X,Y)\) from \(0.40\) to \(0.85\), an increase of \(0.45\).

These are differences between conditional probabilities with the other listed predictors held fixed. They identify links in this chosen computational system. They do not show that changing a person’s \(Y\) would cause \(X\) to change, or that the three models form a coherent joint probability distribution. The changes may affect future draws through the update sequence, while the realized path still depends on the random draws.

Reading a Feedback Trace Carefully

A useful trace records more than the final completed value. For each sweep, retain the state at its start, the conditional probability used for each update, the uniform or random draw if available, and the updated value. This makes it possible to distinguish a changed conditional probability from a changed random outcome. It also exposes whether the implementation used the correct version of each predictor.

1
Label the starting state.
Record \((X_{t-1},Y_{t-1},Z_{t-1})\) before beginning sweep \(t\). Do not reuse these labels for values drawn during that sweep.
2
Record each conditional draw in order.
For the \(X\) update, use the current \(Y,Z\); for the \(Y\) update, use the new \(X\) and current \(Z\); for the \(Z\) update, use the new \(X,Y\).
3
Carry the completed state forward.
At the end of the sweep, label the values \((X_t,Y_t,Z_t)\). These are the starting predictors for the next sweep, subject to its update order.

Several checks help locate failures. Verify that each conditional probability is between 0 and 1, that complements are used for zero-valued draws, and that every predictor is the latest value available at that update. Check that observed values remain unchanged and that the recorded end state of one sweep is the next sweep’s start state. If manually recalculated probabilities disagree with stored probabilities, suspect a stale predictor, incorrect indexing, or a coding error before attributing the discrepancy to statistical behavior.

Trace inspection can also reveal that the chosen conditional probabilities are highly sensitive to particular predictor values: small changes in one state component may produce large differences in later draw probabilities. That is a reason to scrutinize how the models and predictors are specified and to examine the chain’s behavior with appropriate diagnostics. A short path alone cannot establish whether the chain has explored its relevant state space adequately. In particular, a few consecutive feedback steps do not establish convergence or compatibility.

What Feedback Does—and Does Not—Tell You

Repeated chained updates differ from a single pass through the variables. A single pass produces one sequence of updates; repeating sweeps allows the completed values from one pass to influence the next. It therefore includes feedback through successive states, but a single traced path does not reveal the long-run distribution. The introductory material on autocorrelation between FCS iterations provides related context for dependence across iterations.

FCS specifies a collection of conditional models. If those conditionals are compatible with a joint distribution, the joint structure can provide one way to understand the target of the updates, subject to the relevant conditions. If they are incompatible, the sequence still defines update steps, but the existence of a common joint distribution cannot be assumed. A calculation such as \(K(s,s')\) describes the transition for the specified fixed conditionals; it does not prove compatibility or guarantee good exploration.

In a practical MICE run, conditional-model parameters may themselves be estimated or drawn, and the update system can be more complex than the fixed-probability illustration. Then the value state alone may not determine the next transition probabilities unless parameter state is also accounted for. The example’s product formula remains a transparent way to understand how value updates feed into one another, but its numerical path probabilities should not be transferred to a fitted analysis.

Common Mistakes and Practical Limits

  • Reusing an index for the initial and updated state. Calling the initial state \(X_1=0\) and the first sweep’s new draw \(X_1=1\) makes the trace contradictory. Label the initial state with subscript 0 and the first sweep’s draws with subscript 1.
  • Treating a probability increase as a guaranteed outcome. Raising \(P(Y=1)\) from 0.10 to 0.60 makes a draw of 1 more likely, not certain. The random draw must still be shown when tracing a realized path.
  • Calling algorithmic dependence a causal effect. A conditional update makes one value computationally relevant to another draw. Causal interpretation requires scientific design and assumptions beyond this update mechanism.
  • Assuming a loop proves a joint model exists. Chained dependencies describe the order and inputs of the updates. They do not establish compatibility among the conditional distributions.
  • Overinterpreting a short trace. One path illustrates the mechanism but cannot by itself show that long-run behavior is satisfactory or representative.

The main alternative is to specify and sample from a joint model directly, rather than update a set of conditionals in sequence. A joint model makes the joint probability structure explicit, whereas FCS offers separate conditional specifications. Neither approach is automatically preferable in every application: the choice depends on the substantive model, its assumptions, and whether the chosen conditionals are suitable. In either approach, a feedback trace is a diagnostic aid, not a substitute for assessing the model and the chain.

Check Your Understanding

Answer each question using the fixed binary system and \(X,Y,Z\) update order given above. Solutions follow the questions.

  1. Starting from \((X_0,Y_0,Z_0)=(0,0,0)\), suppose the first two uniform draws are 0.50 for \(X\) and 0.20 for \(Y\). What are \(X_1\) and \(Y_1\)?
  2. At state \((1,0,1)\), calculate the probabilities used to update \(X\), then \(Y\) if the new \(X\) is 1, then \(Z\) if the new \(Y\) is 1.
  3. For the transition \((0,0,0)\to(0,0,0)\), calculate the one-sweep transition probability.
  4. Why does an increase in \(P(Z=1\mid X,Y)\) when \(Y\) changes not establish that \(Y\) causally affects \(Z\)?

Solutions. (1) The probability for \(X_1=1\) is 0.10, and 0.50 is not below it, so \(X_1=0\). Then \(P(Y_1=1\mid X_1=0,Z_0=0)=0.10\); since 0.20 is not below 0.10, \(Y_1=0\). (2) \(P(X=1\mid Y=0,Z=1)=0.10+0+0.20=0.30\). Given new \(X=1\), \(P(Y=1\mid X=1,Z=1)=0.10+0.50+0.20=0.80\). Given new \(X=1,Y=1\), \(P(Z=1\mid X=1,Y=1)=0.05+0.35+0.45=0.85\). (3) The probabilities of drawing zero are \(0.90\) for \(X\), \(0.90\) for \(Y\) given the new \(X=0\), and \(0.95\) for \(Z\) given the new \(X=0,Y=0\). The transition probability is \(0.90\times0.90\times0.95=0.7695\). (4) The difference describes the specified conditional update rule, holding its listed predictors fixed. It is an algorithmic association within the model; causal interpretation requires additional scientific assumptions that the update rule alone does not provide.

Clinical Biostats