stdlib-js / stdlib-js/stdlib

RFC: add on-line k-means clustering

Abierto
#190 0 comentarios 0 reacciones 0 asignados Ver en GitHub
difficulty: 5 Feature Machine Learning RFC
Lenguaje dominante
JavaScript
Estrellas
6k
Forks
1.3k
Merge medio
1 d 3 h
PR fusionados (30 d)
611

Descripción

## 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

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.