h2oai / h2o-3
H2O est une plateforme en mémoire pour l’apprentissage automatique distribué et évolutif. H2O utilise des interfaces familières comme R, Python, Scala, Java, JSON et l’interface notebook/web Flow, et fonctionne de manière transparente avec les technologies de big data comme Hadoop et Spark. H2O fournit des implémentations de nombreux algorithmes populaires tels que les modèles linéaires généralisés (GLM), les machines à boosting de gradient (y compris XGBoost), les forêts aléatoires, les réseaux neuronaux profonds, les Ensembles empilés, Naive Bayes, les modèles additifs généralisés (GAM), les risques proportionnels de Cox, K-Means, PCA, Word2Vec, ainsi qu’un algorithme d’apprentissage automatique (H2O AutoML).
H2O est extensible afin que les développeurs puissent ajouter des transformations de données et des algorithmes personnalisés de leur choix et y accéder par le biais de tous ces clients. Les modèles H2O peuvent être téléchargés et chargés dans la mémoire H2O pour le scoring, ou exportés au format POJO ou MOJO pour un scoring extrêmement rapide en production. Plus d’informations peuvent être trouvées dans le guide de l’utilisateur de H2O.
H2O-3 (ce dépôt) est la troisième incarnation de H2O, et le successeur de H2O-2.
Table des matières
- Téléchargement de H2O-3
- Ressources Open Source
- Suivi des problèmes et demandes de fonctionnalités
- Liste des ressources H2O
- Utilisation des artefacts de code H2O-3 (bibliothèques)
- Construction de H2O-.3
- Lancement de H2O après la construction
- Construction de H2O sur Hadoop
- Eau gazeuse
- Documentation
- Citation de H2O
- Roadmap
- Communauté / Conseillers / Investisseurs
1. Télécharger H2O-3
Alors que la majeure partie de ce README est écrite pour les développeurs qui font leurs propres builds, la plupart des utilisateurs de H2O se contentent de télécharger et d’utiliser une version préconstruite. Si vous êtes un utilisateur de Python ou de R, la façon la plus simple d’installer H2O est via PyPI ou Anaconda (pour Python) ou CRAN (pour R) :
Python
pip install h2o
R
install.packages("h2o")
Plus d’infos sur le téléchargement & l’installation de H2O sont disponibles dans le guide de l’utilisateur de H2O.
2. Ressources open source
La plupart des gens interagissent avec trois ou quatre ressources open source principales : GitHub (que vous avez déjà trouvé), JIRA (pour les rapports de bogues et le suivi des problèmes), Stack Overflow pour les questions spécifiques au code/logiciel H2O, et h2ostream (un groupe Google / forum de discussion par courriel) pour les questions qui ne conviennent pas à Stack Overflow. Il existe également un groupe de discussion de développeurs H2O Gitter, cependant, à des fins d’archivage & pour maximiser l’accessibilité, nous préférerions que les Q&A standard de H2O soient menées sur Stack Overflow.
2.1 Suivi des problèmes et demandes de fonctionnalités
(Remarque : il n’existe qu’un seul système de suivi des problèmes pour le projet. Les problèmes GitHub ne sont pas activés ; vous devez utiliser JIRA.)
Vous pouvez parcourir et créer de nouveaux problèmes dans notre JIRA open source : http://jira.h2o.ai
- Vous pouvez parcourir et rechercher des problèmes sans vous connecter à JIRA :
- Cliquez sur le menu
Issues
- Cliquez sur
Search for issues
- Cliquez sur le menu
- Pour créer un problème (soit un bogue ou une demande de fonctionnalité), veuillez d’abord vous créer un compte :
- Cliquez sur le bouton
Log In
en haut à droite de l’écran - Cliquez sur
Create an acccount
près du bas de la boîte de connexion - Une fois que vous avez créé un compte et que vous vous êtes connecté, utilisez le bouton
Create
du menu pour créer une question - Créer des questions H2O-3 dans le projet PUBDEV. (Remarque : les questions sur l’eau pétillante doivent être classées dans le projet SW.)
- Cliquez sur le bouton
- Vous pouvez également voter pour des demandes de fonctionnalités et/ou d’autres questions. Le vote peut aider H2O à prioriser les fonctionnalités incluses dans chaque version.
- Allez sur la page JIRA de H2O.
- Cliquez sur Log In pour vous connecter ou créer un compte si vous n’en avez pas déjà un.
- Recherchez la fonctionnalité que vous souhaitez prioriser ou créez une nouvelle fonctionnalité.
- Cliquez sur le lien Vote for this issue. Celui-ci est situé sur le côté droit du problème, sous la section Personnes.
2.2 Liste des ressources H2O
3. Utilisation des artefacts H2O-3
Chaque build nocturne publie des artefacts R, Python, Java et Scala dans un dépôt spécifique au build. En particulier, vous pouvez trouver les artefacts Java dans le répertoire maven/repo.
Voici un extrait d’exemple d’un fichier de build gradle utilisant h2o-3 comme dépendance. Remplacez x, y, z et nnnn par des nombres valides.
Référez-vous à la dernière page de construction nocturne de H2O-3 bleeding edge pour des informations sur l’installation des artefacts de construction nocturne.
Référez-vous au dépôt GitHub de h2o-droplets pour un exemple fonctionnel de l’utilisation des artefacts Java avec gradle.
Note : les artefacts stables H2O-3 sont périodiquement publiés sur Maven Central (cliquez ici pour effectuer une recherche) mais peuvent accuser un retard substantiel par rapport aux constructions nocturnes H2O-3 Bleeding Edge.
4. Construction de H2O-3
Pour commencer le développement de H2O, il faut disposer du JDK 1.7, de Node.js, de Gradle, de Python et de R. Nous utilisons le wrapper Gradle (appelé gradlew
) pour nous assurer que des versions locales à jour de Gradle et d’autres dépendances sont installées dans votre répertoire de développement.
4.1. Avant la construction
La construction de h2o
nécessite un environnement R correctement configuré avec les paquets requis et un environnement Python avec les paquets suivants :
gripcoloramafuturetabulaterequestswheel
Pour installer ces paquets, vous pouvez utiliser pip ou conda.Si vous avez des difficultés à installer ces paquets sous Windows, veuillez suivre la section Installation sous Windows de ce guide.
(Note : Il est recommandé d’utiliser un certain environnement virtuel tel que VirtualEnv, pour installer tous les paquets. )
4.2. Construction à partir de la ligne de commande (démarrage rapide)
Pour construire H2O à partir du référentiel, effectuez les étapes suivantes .
Recette 1 : Cloner frais, construire, sauter les tests et exécuter H2O
Recette 2 : Cloner frais, construire et exécuter les tests (nécessite une installation fonctionnelle de R)
git clone https://github.com/h2oai/h2o-3.gitcd h2o-3./gradlew syncSmalldata./gradlew syncRPackages./gradlew build
Notes:
- L’exécution des tests démarre cinq JVM de test qui forment un cluster H2O et nécessite au moins 8 Go de RAM (de préférence 16 Go de RAM).
- L’exécution de
./gradlew syncRPackages
est prise en charge sous Windows, OS X et Linux, et est fortement recommandée mais pas obligatoire../gradlew syncRPackages
assure un environnement complet et cohérent avec des versions pré-approuvées des paquets nécessaires aux tests et aux constructions. Les paquets peuvent être installés manuellement, mais nous recommandons de définir une variable ENV et d’utiliser./gradlew syncRPackages
. Pour définir la variable ENV, utilisez le format suivant (où `${WORKSPACE} peut être n’importe quel chemin):mkdir -p ${WORKSPACE}/Rlibraryexport R_LIBS_USER=${WORKSPACE}/Rlibrary
Recette 3 : Pull, clean, build, and run tests
git pull./gradlew syncSmalldata./gradlew syncRPackages./gradlew clean./gradlew build
Notes
-
Nous recommandons d’utiliser
./gradlew clean
après chaquegit pull
. -
Sauter les tests en ajoutant
-x test
à la fin de la ligne de commande gradle build. Les tests s’exécutent généralement pendant 7 à 10 minutes sur un ordinateur portable Macbook Pro avec 4 processeurs (8 hyperthreads) et 16 Go de RAM. -
Synchroniser smalldata n’est pas nécessaire après chaque pull, mais si les tests échouent en raison de fichiers de données manquants, alors essayez
./gradlew syncSmalldata
comme première étape de dépannage. La synchronisation de smalldata télécharge les fichiers de données depuis AWS S3 vers le répertoire smalldata de votre espace de travail. La synchronisation est incrémentielle. N’archivez pas ces fichiers. Le répertoire smalldata est dans .gitignore. Si vous n’exécutez aucun test, vous n’avez pas besoin du répertoire smalldata. -
L’exécution de
./gradlew syncRPackages
est prise en charge sur Windows, OS X et Linux, et est fortement recommandée mais pas obligatoire../gradlew syncRPackages
assure un environnement complet et cohérent avec des versions pré-approuvées des paquets nécessaires aux tests et aux constructions. Les paquets peuvent être installés manuellement, mais nous recommandons de définir une variable ENV et d’utiliser./gradlew syncRPackages
. Pour définir la variable ENV, utilisez le format suivant (où${WORKSPACE}
peut être n’importe quel chemin):mkdir -p ${WORKSPACE}/Rlibraryexport R_LIBS_USER=${WORKSPACE}/Rlibrary
Recette 4 : Construire simplement les docs
./gradlew clean && ./gradlew build -x test && (export DO_FAST=1; ./gradlew dist)open target/docs-website/h2o-docs/index.html
4.3. Installation sur Windows
Étape 1 : Télécharger et installer WinPython.
Depuis la ligne de commande, valider python
utilise le paquetage nouvellement installé en utilisant which python
(ou sudo which python
). Mettez à jour la variable d’environnement avec le chemin d’accès à WinPython.
Étape 2 : Installer les paquets Python requis:
pip install grip 'colorama>=0.3.8' future tabulate wheel
Étape 3 : Installer JDK
Installer Java 1.7 et ajouter le répertoire approprié C:\Program Files\Java\jdk1.7.0_65\bin
avec java.exe à PATH dans les variables d’environnement. Pour vous assurer que l’invite de commande détecte la bonne version de Java, exécutez :
javac -version
La variable CLASSPATH doit également être définie sur le sous-dossier lib du JDK :
CLASSPATH=/<path>/<to>/<jdk>/lib
Étape 4. Installez Node.js
Installez Node.js et ajoutez le répertoire installé C:\Program Files\nodejs
, qui doit inclure node.exe et npm.cmd à PATH s’il n’est pas déjà préinstallé.
Étape 5. Installez R, les paquets requis et Rtools:
Installez R et ajoutez le répertoire bin à votre PATH s’il n’est pas déjà inclus.
Installez les paquets R suivants :
- RCurl
- jsonlite
- statmod
- devtools
- roxygen2
- testthat
Pour installer ces paquets depuis une session R :
Notez que libcurl est nécessaire pour l’installation du paquet R RCurl.
Notez que ces paquets ne couvrent pas l’exécution des tests, ils pour la construction de H2O seulement.
Enfin, installez Rtools, qui est une collection d’outils en ligne de commande pour faciliter le développement de R sur Windows.
NOTE : Pendant l’installation de Rtools, n’installez pas Cygwin.dll.
Étape 6. Installer Cygwin
NOTE : Pendant l’installation de Cygwin, désélectionnez les paquets Python pour éviter un conflit avec le paquet Python.org.
Étape 6b. Validez Cygwin
Si Cygwin est déjà installé, supprimez les paquets Python ou assurez-vous que Native Python est avant Cygwin dans la variable PATH.
Étape 7. Mettre à jour ou valider la variable PATH de Windows pour inclure R, Java JDK, Cygwin.
Étape 8. Git Clone h2o-3
Si vous n’avez pas déjà un client Git, veuillez en installer un. Celui par défaut peut être trouvé ici http://git-scm.com/downloads. Assurez-vous que le support de l’invite de commande est activé avant l’installation.
Téléchargez et mettez à jour les codes sources de h2o-3:
git clone https://github.com/h2oai/h2o-3
Étape 9. Exécutez le gradle build de haut niveau:
cd h2o-3./gradlew.bat build
Si vous rencontrez des erreurs exécutez à nouveau avec
--stacktrace
pour plus d’instructions sur les dépendances manquantes.
4.4. Installation sur OS X
Si vous n’avez pas Homebrew, nous vous recommandons de l’installer. Il rend la gestion des paquets pour OS X facile.
Étape 1. Installez JDK
Installez Java 1.7. Pour vous assurer que l’invite de commande détecte la bonne version de Java, exécutez :
javac -version
Étape 2. Installez Node.js:
En utilisant Homebrew:
brew install node
Ou bien, installez à partir du site web de NodeJS.
Étape 3. Installez R et les paquets requis:
Installez R et ajoutez le répertoire bin à votre PATH s’il n’est pas déjà inclus.
Installez les paquets R suivants :
- RCurl
- jsonlite
- statmod
- devtools
- roxygen2
- testthat
Pour installer ces paquets depuis une session R :
Notez que libcurl est nécessaire pour l’installation du paquet R RCurl.
Notez que ces paquets ne couvrent pas l’exécution des tests, ils pour la construction de H2O seulement.
Étape 4. Installer python et les paquets requis:
Installer python:
brew install python
Installer le gestionnaire de paquets pip:
sudo easy_install pip
Installer ensuite les paquets requis:
sudo pip install wheel requests 'colorama>=0.3.8' future tabulate
Étape 5. Clone de Git h2o-3
OS X devrait déjà avoir Git installé. Pour télécharger et mettre à jour les codes sources de h2o-3:
git clone https://github.com/h2oai/h2o-3
Étape 6. Exécuter le gradle build de haut niveau:
cd h2o-3./gradlew build
Note : sur une machine ordinaire, cela peut prendre très longtemps (environ une heure) pour exécuter tous les tests.
Si vous rencontrez des erreurs, exécutez à nouveau avec
--stacktrace
pour plus d’instructions sur les dépendances manquantes.
4.5. Installation sur Ubuntu 14.04
Étape 1. Installer Node.js
curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -sudo apt-get install -y nodejs
Étape 2. Installer JDK:
Installer Java 8. Les instructions d’installation peuvent être trouvées ici Installation du JDK. Pour vous assurer que l’invite de commande détecte la bonne version de Java, exécutez :
javac -version
Étape 3. Installez R et les paquets requis:
Les instructions d’installation peuvent être trouvées ici Installation de R. Cliquez sur « Télécharger R pour Linux ». Cliquez sur « ubuntu ». Suivez les instructions données.
Pour installer les paquets requis, suivez les mêmes instructions que pour OS X ci-dessus.
Note : Si le processus ne parvient pas à installer RStudio Server sur Linux, exécutez l’un des éléments suivants :
sudo apt-get install libcurl4-openssl-dev
ou
sudo apt-get install libcurl4-gnutls-dev
Étape 4. Git Clone h2o-3
Si vous n’avez pas déjà un client Git:
sudo apt-get install git
Télécharger et mettre à jour les codes sources h2o-3:
git clone https://github.com/h2oai/h2o-3
Étape 5. Exécutez le gradle build de haut niveau:
cd h2o-3./gradlew build
Si vous rencontrez des erreurs, exécutez à nouveau en utilisant
--stacktrace
pour plus d’instructions sur les dépendances manquantes.
Assurez-vous que vous ne vous exécutez pas en tant que root, car
bower
rejettera une telle exécution.
4.6. Installation sur Ubuntu 13.10
Étape 1. Installer Node.js
curl -sL https://deb.nodesource.com/setup_10.x | sudo bash -sudo apt-get install -y nodejs
Étapes 2-4. Suivez les étapes 2-4 pour Ubuntu 14.04 (ci-dessus)
4.7. Installation sur CentOS 7
5. Lancement de H2O après la construction
Pour démarrer le cluster H2O localement, exécutez ce qui suit sur la ligne de commande :
java -jar build/h2o.jar
Une liste des options JVM de démarrage et H2O disponibles (par exemple -Xmx
, -nthreads
, -ip
), est disponible dans le guide de l’utilisateur de H2O.
6. Construction de H2O sur Hadoop
Des fichiers zip H2O-on-Hadoop préconstruits sont disponibles sur la page de téléchargement. Chaque version de distribution Hadoop a un fichier zip séparé dans h2o-3.
Pour construire vous-même H2O avec le support Hadoop, installez d’abord sphinx pour python : pip install sphinx
Puis lancez la construction en entrant ce qui suit à partir du répertoire h2o-3 de premier niveau :
(export BUILD_HADOOP=1; ./gradlew build -x test)./gradlew dist
Cela créera un répertoire appelé ‘target’ et y générera des fichiers zip. Notez que BUILD_HADOOP
est le comportement par défaut lorsque le nom d’utilisateur est jenkins
(référez-vous à settings.gradle
) ; sinon, vous devez le demander, comme indiqué ci-dessus.
Ajout du support pour une nouvelle version de Hadoop
Dans le répertoire h2o-hadoop
, chaque version de Hadoop a un répertoire de construction pour le pilote et un répertoire d’assemblage pour le fatjar.
Vous devez :
- Ajouter un nouveau répertoire de pilote et un répertoire d’assemblage (chacun avec un fichier
build.gradle
) dansh2o-hadoop
- Ajouter ces nouveaux projets à
h2o-3/settings.gradle
- Ajouter la nouvelle version de Hadoop à la liste de
HADOOP_VERSIONS
.HADOOP_VERSIONS
dansmake-dist.sh
- Ajouter la nouvelle version d’Hadoop à la liste dans
h2o-dist/buildinfo.json
Usurpation d’identité sécurisée
Hadoop supporte l’usurpation d’identité sécurisée via son API Java. Un utilisateur authentifié par kerberos peut être autorisé à se faire passer pour n’importe quel nom d’utilisateur répondant à des critères spécifiés saisis dans le fichier core-site.xml du NameNode. Cette usurpation d’identité ne s’applique qu’aux interactions avec l’API Hadoop ou les API des services liés à Hadoop qui la prennent en charge (ce n’est pas la même chose que de passer à cet utilisateur sur la machine d’origine).
Configuration de l’usurpation d’identité sécurisée (pour h2o):
- Créer ou trouver un id à utiliser comme proxy qui a un accès limité à aucun accès à HDFS ou aux services connexes ; l’utilisateur proxy doit seulement être utilisé pour usurper l’identité d’un utilisateur
- (Requis si vous n’utilisez pas le pilote h2odriver) Si vous n’utilisez pas le pilote (par ex.par exemple, vous avez écrit votre propre code contre l’API de h2o en utilisant Hadoop), apportez les modifications de code nécessaires pour usurper l’identité des utilisateurs (voir org.apache.hadoop.security.UserGroupInformation)
- Dans l’un ou l’autre de Ambari/Cloudera Manager ou directement sur le fichier core-site.xml du NameNode, ajoutez 2/3 propriétés pour l’utilisateur que nous souhaitons utiliser comme proxy (remplacez par le simple nom d’utilisateur – pas le nom principal entièrement qualifié).
-
hadoop.proxyuser.<proxyusername>.hosts
: les hôtes dont l’utilisateur proxy est autorisé à effectuer des actions d’usurpation d’identité au nom d’un utilisateur valide de -
hadoop.proxyuser.<proxyusername>.groups
: les groupes auxquels un utilisateur usurpé doit appartenir pour que l’usurpation d’identité fonctionne avec cet utilisateur proxy -
hadoop.proxyuser.<proxyusername>.users
: les utilisateurs dont un utilisateur proxy est autorisé à usurper l’identité - Exemple :
<property> <name>hadoop.proxyuser.myproxyuser.hosts</name> <value>host1,host2</value> </property> <property> <name>hadoop.proxyuser.myproxyuser.groups</name> <value>group1,group2</value> </property> <property> <name>hadoop.proxyuser.myproxyuser.users</name> <value>user1,user2</value> </property>
-
- Redémarrer les services centraux tels que HDFS & YARN pour que les changements prennent effet
Les actions HDFS impersonnalisées peuvent être visualisées dans le journal d’audit hdfs (‘auth:PROXY’ devrait apparaître dans le champ ugi=
dans les entrées où cela est applicable). De même, YARN devrait afficher ‘auth:PROXY’ quelque part dans l’interface utilisateur du gestionnaire de ressources.
Pour utiliser l’usurpation d’identité sécurisée avec le pilote Hadoop de h2o:
Avant que cela ne soit tenté, voir Risques avec l’usurpation d’identité, ci-dessous
Lorsque vous utilisez le pilote h2odriver (par ex.par exemple, lors de l’exécution avec hadoop jar ...
), spécifiez -principal <proxy user kerberos principal>
, -keytab <proxy user keytab path>
et -run_as_user <hadoop username to impersonate>
, en plus de tout autre argument nécessaire. Si la configuration a réussi, l’utilisateur du proxy se connectera et usurpera l’identité du -run_as_user
tant que cet utilisateur est autorisé par la propriété de configuration users ou groups (configurée ci-dessus) ; ceci est appliqué par HDFS & YARN, et non par le code de h2o. Le pilote définit effectivement son contexte de sécurité comme l’utilisateur usurpé, de sorte que toutes les actions Hadoop prises en charge seront exécutées en tant que cet utilisateur (par exemple, YARN, les API HDFS prennent en charge les utilisateurs usurpés de manière sécurisée, mais d’autres peuvent ne pas l’être).
Précautions à prendre lors de l’exploitation de l’usurpation d’identité sécurisée
- Le cas d’utilisation cible de l’usurpation d’identité sécurisée est constitué d’applications ou de services qui pré-authentifient un utilisateur et utilisent ensuite (dans ce cas) le pilote h2odriver au nom de cet utilisateur. Steam de H2O en est un parfait exemple : authentifier l’utilisateur dans l’application web via SSL, usurper l’identité de cet utilisateur lors de la création du conteneur YARN h2o.
- L’utilisateur proxy doit avoir des autorisations limitées dans le cluster Hadoop ; cela signifie aucune autorisation pour accéder aux données ou faire des appels API. De cette façon, s’il est compromis, il n’aurait le pouvoir d’usurper l’identité que d’un sous-ensemble spécifique des utilisateurs du cluster et seulement à partir de machines spécifiques.
- Utiliser la propriété
hadoop.proxyuser.<proxyusername>.hosts
chaque fois que cela est possible ou pratique. - Ne pas donner le mot de passe ou le keytab du proxyusername à un utilisateur que vous ne voulez pas usurper l’identité d’un autre utilisateur (il s’agit généralement de n’importe quel utilisateur). Le but de l’usurpation d’identité n’est pas de permettre aux utilisateurs de se faire passer pour d’autres. Voir le premier point pour le cas d’utilisation typique.
- Limiter la connexion de l’utilisateur à la machine à partir de laquelle le proxy se produit lorsque cela est pratique.
- S’assurer que le keytab utilisé pour connecter l’utilisateur du proxy est correctement sécurisé et que les utilisateurs ne peuvent pas se connecter en tant que cet id (via
su
, par exemple) - Ne jamais définir hadoop.proxyuser..{users,groups} à ‘*’ ou ‘hdfs’, ‘yarn’, etc. Permettre à n’importe quel utilisateur d’usurper l’identité de hdfs, yarn, ou tout autre utilisateur/groupe important devrait être fait avec une extrême prudence et fortement analysé avant d’être autorisé.
Risques avec l’usurpation d’identité sécurisée
- L’id effectuant l’usurpation d’identité peut être compromise comme tout autre id utilisateur.
- Définir toute propriété
hadoop.proxyuser.<proxyusername>.{hosts,groups,users}
à ‘*’ peut augmenter considérablement l’exposition au risque de sécurité. - Lorsque les utilisateurs ne sont pas authentifiés avant d’être utilisés avec le pilote (par exemple, comme Steam le fait via une application web/API sécurisée), l’auditabilité du processus/système est difficile.
7. Sparkling Water
Sparkling Water combine deux technologies open-source : Apache Spark et la plateforme d’apprentissage automatique H2O. Elle rend la bibliothèque d’algorithmes avancés de H2O, notamment Deep Learning, GLM, GBM, K-Means et Distributed Random Forest, accessible à partir des flux de travail Spark. Les utilisateurs de Spark peuvent sélectionner les meilleures fonctionnalités de l’une ou l’autre plateforme pour répondre à leurs besoins en matière d’apprentissage automatique. Les utilisateurs peuvent combiner l’API RDD et la MLLib de Spark avec les algorithmes d’apprentissage automatique de H2O, ou utiliser H2O indépendamment de Spark pour le processus de construction du modèle et post-traiter les résultats dans Spark.
Ressources de Sparkling Water:
- Page de téléchargement pour les paquets pré-construits
- Dépôt GitHub de Sparkling Water
- README
- Documentation du développeur
8. Documentation
Page d’accueil de la documentation
La documentation principale de H2O est le guide de l’utilisateur de H2O. Visitez http://docs.h2o.ai pour l’introduction de haut niveau à la documentation sur les projets H2O.
Générer la documentation de l’API REST
Pour générer la documentation de l’API REST, utilisez les commandes suivantes :
L’emplacement par défaut de la documentation générée est build/docs/REST
.
Si la construction échoue, essayez gradlew clean
, puis git clean -f
.
Documentation de la construction de bleeding edge
La documentation pour chaque construction nocturne de bleeding edge est disponible sur la page de construction nocturne.
9. Citation de H2O
Si vous utilisez H2O dans le cadre de votre flux de travail dans une publication, veuillez citer votre ou vos ressources H2O en utilisant l’entrée BibTex suivante :
Logiciel H2O
Exemples de citations de logiciels H2O formatés :
Livrets H2O
Les livrets d’algorithmes H2O sont disponibles sur la page d’accueil de la documentation.
@Manual{h2o_booklet_name, title = {booklet_title}, author = {list_of_authors}, year = {year}, month = {month}, url = {link_url},}
Exemples de citations de livrets formatés:
10. Feuille de route
H2O 3.34.0.1 – janvier 2021
- Algorithme de la forêt d’isolement étendue
- Arbres d’élévation
- Extraction des interactions de caractéristiques de classement & à partir des modèles GBM et XGBoost
- RuleFit MOJO, CoxPH MOJO
- Support de la notation MOJO2
- Tolérance aux pannes de la recherche en grille
- Opérateur Kubernetes
- Externalisation de XGBoost sur les clusters Kubernetes
11. Communauté
H2O a été construit par un très grand nombre de contributeurs au fil des ans, à la fois au sein de H2O.ai (la société) et de la grande communauté open source. Vous pouvez commencer à contribuer à H2O en répondant aux questions de Stack Overflow ou en déposant des rapports de bogues. Rejoignez-nous !
Équipe & Committers
SriSatish AmbatiCliff ClickTom KraljevicTomas NykodymMichal MalohlavaKevin NormoyleSpencer AielloAnqi FuNidhi MehtaArno CandelJosephine WangAmy WangMax SchloemerRay PeckPrithvi PrabhuBrandon HillJeff GamberaAriel RaoViraj ParmarKendall HarrisAnand AvatiJessica LanfordAlex TellezAllison WashburnAmy WangErik EckstrandNeeraja MadabhushiSebastian VidrioBen SabrinMatt DowleMark LandryErin LeDellAndrey SpiridonovOleg RogynskyyNick MartinNancy JordanNishant KaloniaNadine HussamiJeff CramerStacie SpreitzerVinod IyengarCharlene WindomParag SanghaviNavdeep GillLauren DiPernaAnmol BalMark ChanNick KarpovAvni WadhwaAshrith BarthurKaren HayrapetyanJo-fai ChowDmitry LarkoBranden MurrayJakub HavaWen PhanMagnus StensmoPasha StetsenkoAngela BartzMateusz DymczykMicah StubbsIvy WangTerone WardLeland WilkinsonWendy WongNikhil ShekharPavel PscheidlMichal KurkaVeronika MaurerovaJan SterbaJan JendrusakSebastien PoirierTomáš Frýda
Conseillers
Conseil consultatif scientifique
Stephen BoydRob TibshiraniTrevor Hastie
Systèmes, données, systèmes de fichiers et Hadoop
Doug LeaChris PouliotDhruba Borthakur
Investisseurs
Jishnu Bhattacharjee, Nexus Venture PartnersAnand Babu PeriasamyAnand RajaramanAsh BhardwajRakesh MathurMichael MarksEgbert BiermanRajesh Ambati
.