SBSM Model Parameters

This tutorial describes the parameters of sbsm and suggests appropriate tuning

Constructor

SBSM(
    C: float = 64.0,
    alpha: float = 1.0,
    match_score: int = 2,
    mismatch_score: int = -1,
    gap_score: int = -2,
    k_neighbors: int = 15,
    lambda_: float = 0.9,
    nu1: float = 0.001,
    nu2: float = 0.001,
    process_num: int = 30
)

Parameter Tuning Guide for SBSM

The performance of the SBSM model depends on the configuration of its hyperparameters.y:

💡 We strongly recommend tuning key parameters before using the model in practical applications.

The table below ranks the SBSM hyperparameters by how strongly they influence model performance (higher = more sensitive).

Parameter Type Default Valid Range Suggested Range Impact Description
alpha float 1.0 0 ~ ∞ 0.1 ~ 5.0 🔥🔥🔥🔥🔥 Kernel scaling factor before training. Affects decision boundary sharpness.
C float 64.0 0 ~ ∞ 0.1 ~ 100.0 🔥🔥🔥🔥🔥 Controls trade-off between margin and error.
k_neighbors int 15 0 ~ len(X_train) 5 ~ min(200, len(X_train)-1) 🔥🔥🔥🔥 Number of neighbors used in kernel weighting. Dataset-size dependent.
lambda_ float 0.9 0 ~ 1 0.1 ~ 0.99 🔥🔥🔥 Decay ratio in global kernel alignment.
nu1 float 0.001 0 ~ ∞ 1e-4 ~ 1e-1 🔥🔥 Regularization weight for Laplacian graph term.
nu2 float 0.001 0 ~ ∞ 1e-4 ~ 1e-1 🔥🔥 Regularization weight for L2 norm term.
match_score int 2 0 ~ ∞ 1 ~ 5 🔥 Score for matching characters in alignment. Biological prior-based.
mismatch_score int -1 -∞ ~ 0 -5 ~ -1 🔥 Penalty for mismatched characters. Should be negative.
gap_score int -2 -∞ ~ 0 -10 ~ -1 🔥 Penalty for insertions/deletions in alignment. Should be negative.
process_num int 30 1 ~ ∞ 1 ~ CPU cores 🧊 Number of parallel processes for kernel computation. Impacts speed only.

By following this tuning strategy, you can make SBSM adapt effectively to your dataset and maximize classification performance. For a comprehensive explanation of the parameters, please refer to the SBSM paper.