A distance metric learning algorithm that minimizes the sum of distances between similar data, with non similar data constrained to be separated.
LSI(initial_metric = NULL, learning_rate = "adaptive", eta0 = 0.1, max_iter = 100, max_proj_iter = 5000, itproj_err = 0.001, err = 0.001, supervised = FALSE)
| initial_metric | If array or matrix, it must be a positive semidefinite matrix with the starting metric for gradient descent, where d is the number of features. |
|---|---|
| learning_rate | Type of learning rate update for gradient descent. Possible values are: - 'adaptive' : the learning rate will increase if the gradient step is succesful, else it will decrease. - 'constant' : the learning rate will be constant during all the gradient steps. |
| eta0 | The initial value for learning rate. Float. |
| max_iter | Number of iterations for gradient descent. Integer. |
| max_proj_iter | Number of iterations for iterated projections. Integer. |
| itproj_err | Convergence error criterion for iterated projections. Float. |
| err | Convergence error stop criterion for gradient descent. |
| supervised | If True, the algorithm will accept a labeled dataset (X,y). Else, it will accept the dataset and the similarity sets, (X,S,D). |
| If | None, euclidean distance will be used. If a string, the following values are allowed: - 'euclidean' : the euclidean distance. - 'scale' : a diagonal matrix that normalizes each attribute according to its range will be used. |
The LSI transformer, structured as a named list.
Eric P Xing et al. “Distance metric learning with application to clustering with side-information”. In: Advances in neural information processing systems. 2003, pages 521-528.