lml-algorithms
v1.0.38
Published
Algoritmos de ML y para la extracción de características de LearningML
Readme
lml-algorithms
Librería de algoritmos de Machine Learning y extractores de características usada por LearningML.
Qué incluye
- Algoritmos de clasificación:
LMLSequential(red neuronal feed-forward con TensorFlow.js)KNNNaiveBayesgaussiano
- Extracción de características:
- Numérica (
numericalEncoder) - Texto tipo Bag of Words (
bowEncoder) - Audio (
audioEncoder) - Imagen con MobileNet (
getMobilenetEncoder)
- Numérica (
- Utilidades para preparación de datos, validación y matriz de confusión.
Instalación
Este repositorio usa JavaScript + TensorFlow.js y está preparado para ejecutarse con bun o npm.
bun installAlternativa:
npm installAPI principal
Exportada desde src/index.js:
- Encoders:
getMobilenetEncoder,numericalEncoder,bowEncoder,audioEncoder - Audio helpers:
collectExample,playRawAudio - Algoritmos:
LMLSequential,KNN,NaiveBayes,LMLModelFactory - Utilidades:
confusionMatrix,transformObjectToMapWithTensors,combineMapsOfTensors,extendArraysInObject
Tests
La estrategia de tests está definida en AGENTS.md y se implementa con Vitest.
Política de ejecución recomendada
npm test(vitest run) es la ejecución de referencia en CI.bun testestá soportado para desarrollo local rápido.- El test de contrato de
mobilenetse marca comoskipen el runner nativo de Bun porque su sistema de mocks no aísla módulos detfjs-coreigual que Vitest; ese contrato sí se valida ennpm test.
Ejecutar todos los tests
bun testEjecutar solo unitarios
bun run test:unitEjecutar solo integración
bun run test:integrationModo watch
bun run test:watchCon npm
npm test
npm run test:unit
npm run test:integrationEstructura de tests
tests/unit: utilidades, encoders, factoría de modelos y tests de contrato con mocks para dependencias de navegador/modelos externos.tests/integration: flujos completos de entrenamiento, clasificación y persistencia (localStorage) para los algoritmos.tests/setup/vitest.setup.js: inicialización de backend de TensorFlow para tests.
Licencia
GPL-3.0-or-later.
