Le cadre d'apprentissage automatique Datumbox est un cadre open source écrit en Java qui permet l'apprentissage automatique rapide et les applications statistiques. L'objectif principal du cadre est d'inclure un grand nombre d'algorithmes d'apprentissage automatique et de méthodes statistiques et de pouvoir gérer des ensembles de données de grande taille.
Copyright (C) 2013-2020 Vasilis Vryniotis.
Le code est concédé sous licence Apache, version 2.0.
Datumbox Framework est disponible sur Maven Central Repository.
La dernière version stable du cadre est de 0,8,2 (build 20200805). Pour l'utiliser, ajoutez l'extrait suivant dans votre pom.xml:
<dependency>
<groupId>com.datumbox</groupId>
<artifactId>datumbox-framework-lib</artifactId>
<version>0.8.2</version>
</dependency>
La dernière version instantanée du framework est de 0,8.3-Snapshot (build 20201014). Pour le tester, mettez à jour votre pom.xml comme suit:
<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 branche de développement est la branche de développement (branche GitHub par défaut), tandis que la branche maître contient la dernière version stable du cadre. Toutes les versions stables sont marquées de balises.
Les sorties du cadre suivent l'approche du versioning sémantique. Pour des informations détaillées sur les différentes versions, consultez le Changelog.
Toutes les méthodes publiques et classes du cadre sont documentées avec des commentaires Javadoc. De plus pour chaque modèle, il existe un test JUnit qui montre clairement comment former et utiliser les modèles. Enfin, pour plus d'exemples sur la façon d'utiliser le framework, découvrez les exemples de code ou le blog officiel.
Datumbox est livré avec un grand nombre de modèles pré-formés qui vous permettent d'effectuer une analyse des sentiments (document et Twitter), une analyse de subjectivité, une classification des sujets, une détection des spams, une détection de contenu des adultes, une détection de langue, une détection commerciale, une détection éducative et une détection de genre. Pour obtenir les modèles binaires, consultez le zoo de Datumbox.
Le cadre prend actuellement en charge la réalisation de tests statistiques paramétriques et non paramétriques et non paramétriques, calculant les statistiques descriptives sur les données censurées et non censurées, effectuant l'ANOVA, l'analyse des cluster, la réduction des dimensions, l'analyse de régression, l'analyse de la séquence de temps, l'échantillonnage et le calcul des probabilités à partir des distributions discrètes et continues les plus courantes. En outre, il fournit plusieurs algorithmes mis en œuvre, notamment l'entropie maximale, les Bayes naïfs, SVM, l'agrégation Bootstrap, les modèles de mélange de processus de Dirichlet, la régression de softmax, la régression ordinale, la régression linéaire, la régression passante, la régression PCA et plusieurs autres techniques qui peuvent être utilisées pour la sélection de caractéristiques, les éventualités, les éventualités, les programmes linéaires.
Malgré le fait que des parties du cadre ont été utilisées dans des applications commerciales, toutes les classes ne sont pas également utilisées / testées. Actuellement, le cadre est en version alpha, vous devez donc vous attendre à des modifications sur les API publiques sur les versions futures. Si vous repérez un bogue, veuillez le soumettre en tant que problème sur le référentiel officiel de GitHub.
Le cadre peut être amélioré à bien des égards et, par conséquent, toute contribution est la bienvenue. La fonctionnalité la plus importante manquante dans le cadre est de loin la possibilité de l'utiliser à partir de la ligne de commande ou d'autres langues telles que Python. D'autres améliorations importantes incluent l'amélioration de la documentation, la couverture des tests et les exemples, l'amélioration de l'architecture du cadre et le soutien à plus d'apprentissage automatique et de modèles statistiques. Si vous apportez des modifications utiles sur le code, veuillez envisager de les contribuer en envoyant une demande de traction.
Un grand merci à Eleftherios Bampaletakis pour sa contribution inestimable sur l'amélioration de l'architecture du cadre. Un grand merci à EJ-Technologies GmbH pour avoir fourni une licence pour leur profileur Java et à JetBrains pour avoir fourni une licence pour leur IDE Java.