Skip to main content

Table 1 Protein complex detection algorithm

From: Predicting protein complex in protein interaction network - a supervised learning based method

Input : an unweighted network, a weighted network built via GO annotation and a training set

Complex detection process:

Step 1: construct the feature vector space for the complexes in the training set from the unweighted and weighted PIN networks and train the Regression model

Step 2: find maximal cliques in the PIN by the Cliques algorithm

    -rank the clique set C={C1, C2, ..., Cn} in descending order of the scores given by the Regression model

    -for each clique Ci, check all the cliques (denoted as Cj) with lower scores, if Ci∩Cj > threshold, then remove Cj.

    -output: the updated clique set

Step 3: grow the cliques

    -for each clique Ci, the set of its neighbors is denoted as N(Ci), do update operation as follows:

        -check all the nodes in N(Ci)

        -select vi∈N(Ci), which makes vi∪Ci achieve higher score given by the Regression model

        -update Ci= vi∪Ci, N(Ci) = N(Ci) - vi

            -repeat the update operation until there is no node vj in N(Ci) that leads to score(vj∪Ci) > score(Ci)

        -output: the candidate complex set C = {C1, C2, ..., Cn}

Step 4: filter the candidate complexes

    -rank the candidate complexes in descending order of the score given by the Regression model

    -for each candidate complex Ci, check all the candidates Cj with lower scores

        -if overlap (Ci, Cj) > merg_thred

            if score(Ci∪Cj) > score(Ci) do merge operation: update Ci = Ci∪Cj

            else do remove operation: remove Cj from the candidate set

output: the predicted complex set