cblearn
cblearn: Comparison-based Machine Learning in Python - Published in JOSS (2024)
Science Score: 95.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 10 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: joss.theoj.org -
✓Committers with academic emails
1 of 3 committers (33.3%) from academic institutions -
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords
Scientific Fields
Repository
Comparison-based Machine Learning in Python
Basic Info
Statistics
- Stars: 21
- Watchers: 5
- Forks: 10
- Open Issues: 15
- Releases: 5
Topics
Metadata Files
README.md
Comparison-based Machine Learning in Python
Comparison-based learning methods are machine learning algorithms using similarity comparisons ("A and B are more similar than C and D") instead of featurized data.
```python from sklearn.datasets import loadiris from sklearn.modelselection import crossvalscore
from cblearn.datasets import makerandomtriplets from cblearn.embedding import SOE
X = loadiris().data triplets = makerandomtriplets(X, resultformat="list-order", size=2000)
estimator = SOE(n_components=2)
Measure the fit with scikit-learn's cross-validation
scores = crossvalscore(estimator, triplets, cv=5) print(f"The 5-fold CV triplet error is {sum(scores) / len(scores)}.")
Estimate the scale on all triplets
embedding = estimator.fit_transform(triplets) print(f"The embedding has shape {embedding.shape}.") ```
Getting Started
Contribute
We are happy about your bug reports, questions or suggestions as Github Issues and code or documentation contributions as Github Pull Requests. Please see our Contributor Guide.
Related packages
There are more Python packages for comparison-based learning:
- metric-learn is a collection of algorithms for metric learning. The weakly supervised algorithms learn from triplets and quadruplets.
- salmon is a package for efficiently collecting triplets in crowd-sourced experiments. The package implements ordinal embedding algorithms and sampling strategies to query the most informative comparisons actively.
Authors and Acknowledgement
cblearn was initiated by current and former members of the Theory of Machine Learning group of Prof. Dr. Ulrike von Luxburg at the University of Tübingen. The leading developer is David-Elias Künstle.
We want to thank all the contributors here on GitHub. This work has been supported by the Machine Learning Cluster of Excellence, funded by EXC number 2064/1 – Project number 390727645. The authors would like to thank the International Max Planck Research School for Intelligent Systems (IMPRS-IS) for supporting David-Elias Künstle.
License
This library is free to use, share, and adapt under the MIT License conditions.
Citation
Please cite our JOSS paper if you publish work using cblearn:
Künstle et al., (2024). cblearn: Comparison-based Machine Learning in Python. Journal of Open Source Software, 9(98), 6139, https://doi.org/10.21105/joss.06139
@article{Künstle2024,
doi = {10.21105/joss.06139},
url = {https://doi.org/10.21105/joss.06139},
year = {2024},
publisher = {The Open Journal},
volume = {9}, number = {98}, pages = {6139},
author = {David-Elias Künstle and Ulrike von Luxburg},
title = {cblearn: Comparison-based Machine Learning in Python},
journal = {Journal of Open Source Software}
}
Owner
- Name: cblearn
- Login: cblearn
- Kind: organization
- Repositories: 1
- Profile: https://github.com/cblearn
JOSS Publication
cblearn: Comparison-based Machine Learning in Python
Authors
University of Tübingen, Germany, Tübingen AI Center, Germany
Tags
Machine Learning Comparison-based Learning Ordinal Embedding Triplets Behaviour Clustering Psychology Psychophysics ScalingGitHub Events
Total
- Issues event: 1
- Watch event: 2
- Fork event: 1
Last Year
- Issues event: 1
- Watch event: 2
- Fork event: 1
Committers
Last synced: 7 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| David-Elias Kuenstle | d****e@u****e | 144 |
| Conzel | 3****l | 3 |
| Vivek Anand | 3****y | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 41
- Total pull requests: 41
- Average time to close issues: 8 months
- Average time to close pull requests: 20 days
- Total issue authors: 8
- Total pull request authors: 7
- Average comments per issue: 0.54
- Average comments per pull request: 1.07
- Merged pull requests: 26
- Bot issues: 0
- Bot pull requests: 5
Past Year
- Issues: 1
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 1
- Pull request authors: 0
- Average comments per issue: 0.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- dekuenstle (29)
- sherbold (3)
- JFHoelscher (2)
- stsievert (2)
- Vivdaddy (2)
- haniyeka (1)
- Conzel (1)
- nkondapa (1)
Pull Request Authors
- dekuenstle (31)
- dependabot[bot] (5)
- Conzel (3)
- JFHoelscher (2)
- Vivdaddy (2)
- vivek2000anand (2)
- mbarzegary (2)
- mlohaus (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/checkout v2 composite
- actions/setup-python v2 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- codecov/codecov-action v1 composite
- py-actions/flake8 v2 composite
- r-lib/actions/setup-r v2 composite
