Genetic Networks from Pairwise Mutual Information Scores

Dirk Husmeier, August 2003


Task 1: Mutual information

Write a MATLAB program to compute the mutual information between two sequences X and Y as a function of the time lag dt between the sequences: I(X(t),Y(t+dt)). Apply the program to the following sequences:

X= [0 -1 1 0 -1 1 0 0 0 1 0 -1 -1 1 1 0 0 1]
Y= [1 1 -1 -1 0 0 -1 0 0 0 -1 1 0 -1 1 0 0 0]

Which time lag maximizes the mutual information?

Solution


Task 2: Optimal time lag

Take the synthetic data generated with the MATLAB function SyntheticTimeSeriesFriedYeast.m. Compute the mutual information I(Xi(t),Xj(t+dt)) for all pairs of genes (i,j) and for different time lags dt. Use this score array to find the correct time lag dt.

Solution


Task 3: ROC curve

Take the data from task 2. You get the correct network with the following MATLAB function: DrawSyntheticModel.m. Compute the matrix of all pairwise mutual information scores for a time lag of dt=1. Can you get a ROC curve from it? What does it look like? Obtain ROC curves for different training set sizes and compare the results with those you have obtained with dynamic Bayesian networks.

Solution