skada.JCPOTLabelProp

skada.JCPOTLabelProp(base_estimator=None, reg=1, metric='sqeuclidean', max_iter=10, tol=1e-09, verbose=False)[source]

JCPOT Label Propagation Adapter for multi source target shift

This adapter uses the optimal transport plan to propagate labels from sources to target domain with target shift (change in proportion of classes). This was proposed in [31].

Parameters:
base_estimatorobject, default=LinearRegression()

The base estimator to be used for the classification task. This estimator should optimize a classification loss corresponding to the given metric and provide compatible predict method (decision_function of predict_proba).

regfloat, default=1

The entropic regularization parameter for the optimal transport problem.

metricstr, default='sqeuclidean'

The metric to use for the cost matrix. Can be 'sqeuclidean' for squared euclidean distance, 'euclidean' for euclidean distance,

max_iterint, default=10

Maximum number of iterations for the JCPOT solver.

tolfloat, default=1e-9

Tolerance for loss variations (OT and mse) stopping iterations.

verbosebool, default=False

Print loss along iterations if True.

Returns:
adapterJCPOTLabelPropAdapter

The optimal transport label propagation adapter.

References

[31] Redko, Ievgen, Nicolas Courty, Rémi Flamary, and Devis Tuia. "Optimal

transport for multi-source domain adaptation under target shift." In The 22nd International Conference on artificial intelligence and statistics, pp. 849-858. PMLR, 2019.