Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/metric-learn/metric-learn
Metric learning algorithms in Python
https://github.com/metric-learn/metric-learn
machine-learning metric-learning python scikit-learn
Last synced: 1 day ago
JSON representation
Metric learning algorithms in Python
- Host: GitHub
- URL: https://github.com/metric-learn/metric-learn
- Owner: scikit-learn-contrib
- License: mit
- Created: 2013-11-02T08:29:47.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2024-08-03T19:34:12.000Z (5 months ago)
- Last Synced: 2024-10-29T15:17:23.918Z (2 months ago)
- Topics: machine-learning, metric-learning, python, scikit-learn
- Language: Python
- Homepage: http://contrib.scikit-learn.org/metric-learn/
- Size: 12 MB
- Stars: 1,397
- Watchers: 46
- Forks: 234
- Open Issues: 51
-
Metadata Files:
- Readme: README.rst
- License: LICENSE.txt
Awesome Lists containing this project
- awesome-python-machine-learning - Metric learn - A ML library for learning metrics. (Uncategorized / Uncategorized)
README
|GitHub Actions Build Status| |License| |PyPI version| |Code coverage|
metric-learn: Metric Learning in Python
=======================================metric-learn contains efficient Python implementations of several popular supervised and weakly-supervised metric learning algorithms. As part of `scikit-learn-contrib `_, the API of metric-learn is compatible with `scikit-learn `_, the leading library for machine learning in Python. This allows to use all the scikit-learn routines (for pipelining, model selection, etc) with metric learning algorithms through a unified interface.
**Algorithms**
- Large Margin Nearest Neighbor (LMNN)
- Information Theoretic Metric Learning (ITML)
- Sparse Determinant Metric Learning (SDML)
- Least Squares Metric Learning (LSML)
- Sparse Compositional Metric Learning (SCML)
- Neighborhood Components Analysis (NCA)
- Local Fisher Discriminant Analysis (LFDA)
- Relative Components Analysis (RCA)
- Metric Learning for Kernel Regression (MLKR)
- Mahalanobis Metric for Clustering (MMC)**Dependencies**
- Python 3.6+ (the last version supporting Python 2 and Python 3.5 was
`v0.5.0 `_)
- numpy>= 1.11.0, scipy>= 0.17.0, scikit-learn>=0.21.3**Optional dependencies**
- For SDML, using skggm will allow the algorithm to solve problematic cases
(install from commit `a0ed406 `_).
``pip install 'git+https://github.com/skggm/skggm.git@a0ed406586c4364ea3297a658f415e13b5cbdaf8'`` to install the required version of skggm from GitHub.
- For running the examples only: matplotlib**Installation/Setup**
- If you use Anaconda: ``conda install -c conda-forge metric-learn``. See more options `here `_.
- To install from PyPI: ``pip install metric-learn``.
- For a manual install of the latest code, download the source repository and run ``python setup.py install``. You may then run ``pytest test`` to run all tests (you will need to have the ``pytest`` package installed).
**Usage**
See the `sphinx documentation`_ for full documentation about installation, API, usage, and examples.
**Citation**
If you use metric-learn in a scientific publication, we would appreciate
citations to the following paper:`metric-learn: Metric Learning Algorithms in Python
`_, de Vazelhes
*et al.*, Journal of Machine Learning Research, 21(138):1-6, 2020.Bibtex entry::
@article{metric-learn,
title = {metric-learn: {M}etric {L}earning {A}lgorithms in {P}ython},
author = {{de Vazelhes}, William and {Carey}, CJ and {Tang}, Yuan and
{Vauquier}, Nathalie and {Bellet}, Aur{\'e}lien},
journal = {Journal of Machine Learning Research},
year = {2020},
volume = {21},
number = {138},
pages = {1--6}
}.. _sphinx documentation: http://contrib.scikit-learn.org/metric-learn/
.. |GitHub Actions Build Status| image:: https://github.com/scikit-learn-contrib/metric-learn/workflows/CI/badge.svg
:target: https://github.com/scikit-learn-contrib/metric-learn/actions?query=event%3Apush+branch%3Amaster
.. |License| image:: http://img.shields.io/:license-mit-blue.svg?style=flat
:target: http://badges.mit-license.org
.. |PyPI version| image:: https://badge.fury.io/py/metric-learn.svg
:target: http://badge.fury.io/py/metric-learn
.. |Code coverage| image:: https://codecov.io/gh/scikit-learn-contrib/metric-learn/branch/master/graph/badge.svg
:target: https://codecov.io/gh/scikit-learn-contrib/metric-learn