# sksurv.svm.MinlipSurvivalAnalysis¶

class sksurv.svm.MinlipSurvivalAnalysis(solver='cvxpy', alpha=1.0, kernel='linear', gamma=None, degree=3, coef0=1, kernel_params=None, pairs='nearest', verbose=False, timeit=None, max_iter=None)

Survival model related to survival SVM, using a minimal Lipschitz smoothness strategy instead of a maximal margin strategy.

\begin{align}\begin{aligned}\begin{split}\min_{\mathbf{w}}\quad \frac{1}{2} \lVert \mathbf{w} \rVert_2^2 + \gamma \sum_{i = 1}^n \xi_i \\ \text{subject to}\quad \mathbf{w}^\top \mathbf{x}_i - \mathbf{w}^\top \mathbf{x}_j \geq y_i - y_j - \xi_i,\quad \forall (i, j) \in \mathcal{P}_\text{1-NN}, \\ \xi_i \geq 0,\quad \forall i = 1,\dots,n.\end{split}\\\mathcal{P}_\text{1-NN} = \{ (i, j) \mid y_i > y_j \land \delta_j = 1 \land \nexists k : y_i > y_k > y_j \land \delta_k = 1 \}_{i,j=1}^n.\end{aligned}\end{align}

See  for further description.

Parameters: solver ("cvxpy" | "cvxopt" | "osqp", optional, default: cvxpy) – Which quadratic program solver to use. alpha (float, positive, default: 1) – Weight of penalizing the hinge loss in the objective function. kernel ("linear" | "poly" | "rbf" | "sigmoid" | "cosine" | "precomputed") – Kernel. Default: “linear” gamma (float, optional) – Kernel coefficient for rbf and poly kernels. Default: 1/n_features. Ignored by other kernels. degree (int, default: 3) – Degree for poly kernels. Ignored by other kernels. coef0 (float, optional) – Independent term in poly and sigmoid kernels. Ignored by other kernels. kernel_params (mapping of string to any, optional) – Parameters (keyword arguments) and values for kernel passed as call pairs ("all" | "nearest" | "next", optional, default: "nearest") – Which constraints to use in the optimization problem. all: Use all comparable pairs. Scales quadratic in number of samples (cf. sksurv.svm.HingeLossSurvivalSVM). nearest: Only considers comparable pairs $$(i, j)$$ where $$j$$ is the uncensored sample with highest survival time smaller than $$y_i$$. Scales linear in number of samples. next: Only compare against direct nearest neighbor according to observed time, disregarding its censoring status. Scales linear in number of samples. verbose (bool, default: False) – Enable verbose output of solver timeit (False or int) – If non-zero value is provided the time it takes for optimization is measured. The given number of repetitions are performed. Results can be accessed from the timings_ attribute. max_iter (int, optional) – Maximum number of iterations to perform. By default use solver’s default value.
X_fit_

Training data.

Type: ndarray
coef_

Coefficients of the features in the decision function.

Type: ndarray, shape = (n_samples,)

References

  Van Belle, V., Pelckmans, K., Suykens, J. A. K., and Van Huffel, S. Learning transformation models for ranking and survival analysis. The Journal of Machine Learning Research, 12, 819-862. 2011
__init__(solver='cvxpy', alpha=1.0, kernel='linear', gamma=None, degree=3, coef0=1, kernel_params=None, pairs='nearest', verbose=False, timeit=None, max_iter=None)

Initialize self. See help(type(self)) for accurate signature.

Methods

 __init__([solver, alpha, kernel, gamma, …]) Initialize self. fit(X, y) Build a MINLIP survival model from training data. predict(X) Predict risk score of experiencing an event. score(X, y) Returns the concordance index of the prediction.
fit(X, y)

Build a MINLIP survival model from training data.

Parameters: X (array-like, shape = (n_samples, n_features)) – Data matrix. y (structured array, shape = (n_samples,)) – A structured array containing the binary event indicator as first field, and time of event or time of censoring as second field. self
predict(X)

Predict risk score of experiencing an event.

Higher scores indicate shorter survival (high risk), lower scores longer survival (low risk).

Parameters: X (array-like, shape = (n_samples, n_features)) – The input samples. y – Predicted risk. ndarray, shape = (n_samples,)
score(X, y)

Returns the concordance index of the prediction.

Parameters: X (array-like, shape = (n_samples, n_features)) – Test samples. y (structured array, shape = (n_samples,)) – A structured array containing the binary event indicator as first field, and time of event or time of censoring as second field. cindex – Estimated concordance index. float