The unified objective function Mostafavi et al. [15,16] first utilized Eq. (4) to determine α for the individual networks, and then applied a Gaussian Random Field classifier [33] on the composite network W to predict protein functions. However, the composite network W optimized from the target network K is not necessarily optimal for the classifier, since the optimization of the composite network and of the classifier is divided into two separate objectives. To avoid this limitation, we attempt to integrate these two objectives into a unified function as follows: (6) α = arg min α t r ( ( V K - ∑ m = 1 M α m v W m ) T ( ( V K - ∑ m = 1 M α m v W m ) ) + λ t r ( F T ( I - ∑ m = 1 M α m W m ) T ( I - ∑ m = 1 M α m W m ) F ) + λ t r ( ( F - Y ˜ ) T H ( F - Y ˜ ) ) s . t .   α m ≥ 0 , 1 ≤ m ≤ M where vWm is the m-th column vector of VW. Eq. (6) combines the objectives of network-based classification and of target network alignment. Therefore, we can enforce the composite network to be coherently optimal with respect to both objectives. The above objective function is convex with respect to F and α, respectively. Here, we introduce an EM [38] style algorithm to iteratively optimize F (or α) while keeping α (or F) constant. For a fixed α, we can obtain F directly from Eq. (2). For a fixed F, using tr(αmW) = αmtr(W) and tr(K - W) = tr(K) - tr(W), Eq. (7) can be rewritten as: (7) α = arg min α - 2 α T V W T V K + α T V W T V K α + λ ( - 2 α T μ + α T Θ α ) s . t .   α m ≥ 0 , 1 ≤ m ≤ M where Θ is an M × M matrix with Θ(m1,m2)=tr(FT(Wm1)TWm2F), μ is an M × 1 vector with μm = tr(FTWmF). The other terms in Eq. (6) are constant for a fixed F and irrelevant for α, thus they are not included in Eq. (7). Taking the partial derivatives with respect to α, we can obtain the following solution: (8) α = ( V W T V W + λ Θ ) - 1 ( V W T V K + λ μ ) It is easy to see that, if λ = 0, only the kernel target alignment criterion is used to optimize α, and MNet is similar to SW. The MNet algorithm is presented in Algorithm 1. Ft and αt are the computed values for F and α at the t-th iteration, maxIter and θ are the maximum number of iterations and the convergence threshold, respectively. Algorithm 1 MNet: Integrating Multiple Networks for Protein Function Prediction Input:    {Wm}m=1M functional association networks, Y˜, λ, maxIter, θ Output: Predicted likelihood score vectors {fj}j=l+1n 1: Initialize αm1=1(1≤m≤M), and t = 1 2: while t θ do 3:   t = t + 1 4:   Compute Ft using Eq. (3) 5:   Compute αt using Eq. (8) 6: δ = |αt - αt-1| 7: end while