Multiple Kernel Learning, Conic Duality, and the SMO Algorithm
Authors: Francis R. Bach, Gert R. G. Lanckriet, Michael I. Jordan
Published: 2004
Venue: ICML
Link: PDF
Summary
This paper develops efficient algorithms for multiple kernel learning (MKL) by exploiting conic duality. It shows that the MKL problem can be reformulated as a second-order cone program (SOCP) and solved efficiently using an SMO-style algorithm.
Key Contributions
1. Conic Duality Framework
The paper reformulates MKL using conic duality, revealing the structure:
Primal problem:
2. Second-Order Cone Formulation
The constraint with is equivalent to:
This is a second-order cone constraint!
3. Dual Problem
The dual of the MKL problem is:
Key insight: The dual involves the maximum over kernels, not a sum.
4. SMO Algorithm for MKL
The paper develops an efficient SMO-style algorithm:
def mkl_smo(K_list, y, C, tol=1e-4):
"""
SMO algorithm for Multiple Kernel Learning.
"""
n = len(y)
M = len(K_list)
alpha = np.zeros(n)
# Compute kernel-weighted combination
def compute_mu(alpha):
d = np.array([np.dot(y * alpha, K @ (y * alpha))
for K in K_list])
d = np.sqrt(np.maximum(d, 0))
if d.sum() > 0:
return d / d.sum()
return np.ones(M) / M
# Main SMO loop
while True:
mu = compute_mu(alpha)
K_mu = sum(mu[m] * K_list[m] for m in range(M))
# Standard SMO iteration on combined kernel
alpha_new = smo_step(K_mu, y, alpha, C)
if converged(alpha, alpha_new, tol):
break
alpha = alpha_new
return alpha, mu
Mathematical Framework
Group Lasso Connection
MKL is equivalent to group Lasso:
The regularization induces sparsity in kernel selection.
Block Coordinate Descent
Alternating between:
- Fix : Solve standard SVM
- Fix : Closed-form update for
Convergence Analysis
The algorithm converges because:
- Each subproblem is convex
- Objective decreases monotonically
- KKT conditions satisfied at convergence
Complexity Analysis
| Method | Per-iteration | Memory |
|---|---|---|
| Interior point SDP | ||
| SMO-MKL | ||
| Decomposition |
where is working set size.
Extensions
1. Non-sparse MKL
Replace norm with norm:
For , get dense kernel combinations.
2. Localized MKL
Allow sample-dependent weights:
3. Two-Stage MKL
Learn kernels and classifier simultaneously or sequentially.
Experimental Results
The paper shows:
- Efficiency: SMO-MKL much faster than SDP
- Scalability: Handles thousands of samples
- Accuracy: Matches or exceeds fixed kernels
- Sparsity: Automatically selects relevant kernels
Impact on Machine Learning
This paper:
- Efficient algorithms: Made MKL practical for large datasets
- Theoretical foundations: Connected MKL to conic optimization
- Software: Led to development of SHOGUN, SimpleMKL
- Applications: Enabled kernel combination in many domains
Citation
@inproceedings{bach2004multiple,
title={Multiple kernel learning, conic duality, and the SMO algorithm},
author={Bach, Francis R and Lanckriet, Gert RG and Jordan, Michael I},
booktitle={International Conference on Machine Learning},
pages={6--13},
year={2004}
}
Further Reading
- Rakotomamonjy, A., et al. (2008). SimpleMKL
- Sonnenburg, S., et al. (2006). Large scale multiple kernel learning
- Kloft, M., et al. (2011). -norm multiple kernel learning