stdlib-js / stdlib-js/stdlib

RFC: add on-line k-means clustering

Ouverte
#190 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
difficulty: 5 Feature Machine Learning RFC
Langage dominant
JavaScript
Étoiles
6k
Forks
1.3k
Merge moyen
1 j 3 h
PR mergées (30 j)
611

Description

## Checklist

> Please ensure the following tasks are completed before submitting a feature request.

- [x] Read and understood the [Code of Conduct][code-of-conduct].
- [x] Searched for existing issues and pull requests.
- [x] The issue name begins with `RFC:`.

## Description

> Description of the feature request.

This RFC proposes to add an implementation for on-line k-means clustering with automatic determination of `k`. This stands in contrast to traditional k-means clustering implementations which require the number of clusters `k` to be known _a priori_.

## Related Issues

> Does this feature request have any related issues?

No.

## Questions

> Any questions for reviewers?

- What should the package name be and where should the package reside in the project? The implementation performs incremental updates and, thus, fits within the realm of `ml/incr`; however, `ml/incr/kmeans` is currently allotted to an implementation requiring a fixed number of `k` clusters. This implementation is adaptive. So possibly the name should be `ml/incr/adaptive-kmeans` or `ml/incr/akmeans`?

## Other

> Any other information relevant to this feature request? This may include screenshots, references, sample output, and/or implementation notes.

Reference literature:

- [_An algorithm for online k-means clustering_](https://epubs.siam.org/doi/pdf/10.1137/1.9781611974317.7)
- [presentation](http://www.cs.yale.edu/homes/el327/papers/OnlineKMeansAlenexEdoLiberty.pdf)

[code-of-conduct]: https://github.com/stdlib-js/stdlib/blob/develop/CODE_OF_CONDUCT.md

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.