El marco de aprendizaje automático DatumBox es un marco de código abierto escrito en Java que permite el rápido desarrollo de aprendizaje automático y las aplicaciones estadísticas. El enfoque principal del marco es incluir una gran cantidad de algoritmos de aprendizaje automático y métodos estadísticos y poder manejar conjuntos de datos de gran tamaño.
Copyright (c) 2013-2020 Vasilis Vryniotis.
El código tiene licencia bajo la licencia Apache, versión 2.0.
DatumBox Framework está disponible en el repositorio central de Maven.
La última versión estable del marco es 0.8.2 (compilación 20200805). Para usarlo, agregue el siguiente fragmento en su pom.xml:
<dependency>
<groupId>com.datumbox</groupId>
<artifactId>datumbox-framework-lib</artifactId>
<version>0.8.2</version>
</dependency>
La última versión de instantánea del marco es 0.8.3-snapshot (compilación 20201014). Para probarlo, actualice su pom.xml de la siguiente manera:
<repository>
<id>sonatype-snapshots</id>
<name>sonatype snapshots repo</name>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</repository>
<dependency>
<groupId>com.datumbox</groupId>
<artifactId>datumbox-framework-lib</artifactId>
<version>0.8.3-SNAPSHOT</version>
</dependency>
La rama Develop es la rama de desarrollo (rama de GitHub predeterminada), mientras que la rama maestra contiene la última versión estable del marco. Todas las versiones estables están marcadas con etiquetas.
Las versiones del marco siguen el enfoque de versiones semánticas. Para obtener información detallada sobre las diversas versiones, consulte el ChangeLog.
Todos los métodos públicos y clases del marco están documentados con comentarios de Javadoc. Además, para cada modelo hay una prueba JUNIT que muestra claramente cómo entrenar y usar los modelos. Finalmente, para obtener más ejemplos sobre cómo usar el marco, consulte los ejemplos de código o el blog oficial.
DatumBox viene con una gran cantidad de modelos previamente capacitados que le permiten realizar un análisis de sentimientos (documento y Twitter), análisis de subjetividad, clasificación de temas, detección de spam, detección de contenido de adultos, detección de idiomas, detección comercial, detección educativa y detección de género. Para obtener los modelos binarios, consulte el zoológico del cuadro de datos.
El marco actualmente admite la realización de múltiples pruebas estadísticas paramétricas y no paramétricas, calculando estadísticas descriptivas sobre datos censurados y no censurados, realización de ANOVA, análisis de conglomerados, reducción de dimensiones, análisis de regresión, análisis de edades de tiempo, muestreo y cálculo de probabilidades de las distribuciones discretas y continuas más comunes y continúa. In addition it provides several implemented algorithms including Max Entropy, Naive Bayes, SVM, Bootstrap Aggregating, Adaboost, Kmeans, Hierarchical Clustering, Dirichlet Process Mixture Models, Softmax Regression, Ordinal Regression, Linear Regression, Stepwise Regression, PCA and several other techniques that can be used for feature selection, ensemble learning, linear programming solving and recommender systems.
A pesar del hecho de que partes del marco se han utilizado en aplicaciones comerciales, no todas las clases se usan/proban igualmente. Actualmente, el marco se encuentra en la versión alfa, por lo que debe esperar algunos cambios en las API públicas en futuras versiones. Si ve un error, envíelo como un problema en el repositorio oficial de GitHub.
El marco se puede mejorar de muchas maneras y, como resultado, cualquier contribución es bienvenida. Con mucho, la característica más importante que falta en el marco es la capacidad de usarla desde la línea de comandos o de otros idiomas como Python. Otras mejoras importantes incluyen mejorar la documentación, la cobertura de prueba y los ejemplos, mejorar la arquitectura del marco y apoyar más aprendizaje automático y modelos estadísticos. Si realiza algún cambio útil en el código, considere contribuir con ellos enviando una solicitud de extracción.
Muchas gracias a Eleftherios Bampaletakis por su invaluable aporte para mejorar la arquitectura del marco. También muchas gracias a EJ-Technologies GmbH por proporcionar una licencia para su perfilador Java y a JetBrains por proporcionar una licencia para su IDE Java.