Für Fragen, die in dieser Datei oder in der H2O-3-Dokumentation nicht beantwortet werden, verwenden Sie bitte:
H2O ist eine In-Memory-Plattform für verteiltes, skalierbares maschinelles Lernen. H2O nutzt bekannte Schnittstellen wie R, Python, Scala, Java, JSON und die Flow-Notizbuch-/Webschnittstelle und arbeitet nahtlos mit Big-Data-Technologien wie Hadoop und Spark zusammen. H2O bietet Implementierungen vieler beliebter Algorithmen wie Generalized Linear Models (GLM), Gradient Boosting Machines (einschließlich XGBoost), Random Forests, Deep Neural Networks, Stacked Ensembles, Naive Bayes, Generalized Additive Models (GAM), Cox Proportional Hazards, K- Mittel, PCA, Word2Vec, sowie ein vollautomatischer maschineller Lernalgorithmus (H2O AutoML).
H2O ist erweiterbar, sodass Entwickler Datentransformationen und benutzerdefinierte Algorithmen ihrer Wahl hinzufügen und über alle diese Clients darauf zugreifen können. H2O-Modelle können heruntergeladen und zur Bewertung in den H2O-Speicher geladen oder in das POJO- oder MOJO-Format exportiert werden, um eine extrem schnelle Bewertung in der Produktion zu ermöglichen. Weitere Informationen finden Sie im H2O-Benutzerhandbuch.
H2O-3 (dieses Endlager) ist die dritte Inkarnation von H2O und der Nachfolger von H2O-2.
Während der größte Teil dieser README-Datei für Entwickler geschrieben ist, die ihre eigenen Builds erstellen, laden die meisten H2O-Benutzer einfach eine vorgefertigte Version herunter und verwenden sie. Wenn Sie ein Python- oder R-Benutzer sind, ist die Installation von H2O am einfachsten über PyPI oder Anaconda (für Python) oder CRAN (für R):
pip install h2o
install.packages( " h2o " )
Die neuesten stabilen, nächtlichen Hadoop- (oder Spark/Sparkling Water)-Versionen oder das eigenständige H2O-Glas finden Sie unter: https://h2o.ai/download
Weitere Informationen zum Herunterladen und Installieren von H2O finden Sie im H2O-Benutzerhandbuch.
Die meisten Menschen interagieren mit drei oder vier primären Open-Source-Ressourcen: GitHub (die Sie bereits gefunden haben), GitHub Issues (für Fehlerberichte und Problemverfolgung), Stack Overflow für H2O-Code-/softwarespezifische Fragen und h2ostream (eine Google-Gruppe). / E-Mail-Diskussionsforum) für Fragen, die nicht für Stack Overflow geeignet sind. Es gibt auch eine Gitter H2O-Entwickler-Chat-Gruppe. Aus Archivierungsgründen und zur Maximierung der Zugänglichkeit würden wir es jedoch vorziehen, dass Standard-H2O-Fragen und Antworten auf Stack Overflow durchgeführt werden.
Sie können in unserem GitHub-Repository nach neuen Issues suchen und diese erstellen: https://github.com/h2oai/h2o-3
Issues
.GitHub
GitHub-Probleme – Hier können Sie Fehlerberichte einreichen bzw. Probleme verfolgen
Stack Overflow – stellen Sie hier alle Code-/Software-Fragen
Cross Validated (Stack Exchange) – stellen Sie hier Fragen zu Algorithmen und Theorien
h2ostream Google Group – stellen Sie hier Fragen, die nichts mit Code zu tun haben
Gitter H2O-Entwickler-Chat
Dokumentation
Download (vorgefertigte Pakete)
Webseite
Twitter – folgen Sie uns für Updates und H2O-Neuigkeiten!
Fantastisches H2O – teilen Sie Ihre mit H2O betriebenen Kreationen mit uns
Jeder nächtliche Build veröffentlicht R-, Python-, Java- und Scala-Artefakte in einem Build-spezifischen Repository. Insbesondere finden Sie Java-Artefakte im Verzeichnis maven/repo.
Hier ist ein Beispielausschnitt einer Gradle-Build-Datei mit h2o-3 als Abhängigkeit. Ersetzen Sie x, y, z und nnnn durch gültige Zahlen.
// h2o-3 dependency information
def h2oBranch = 'master'
def h2oBuildNumber = 'nnnn'
def h2oProjectVersion = "x.y.z.${h2oBuildNumber}"
repositories {
// h2o-3 dependencies
maven {
url "https://s3.amazonaws.com/h2o-release/h2o-3/${h2oBranch}/${h2oBuildNumber}/maven/repo/"
}
}
dependencies {
compile "ai.h2o:h2o-core:${h2oProjectVersion}"
compile "ai.h2o:h2o-algos:${h2oProjectVersion}"
compile "ai.h2o:h2o-web:${h2oProjectVersion}"
compile "ai.h2o:h2o-app:${h2oProjectVersion}"
}
Informationen zur Installation von Nightly-Build-Artefakten finden Sie auf der neuesten Seite zum neuesten Nightly-Build von H2O-3.
Ein funktionierendes Beispiel für die Verwendung von Java-Artefakten mit Gradle finden Sie im GitHub-Repository h2o-droplets.
Hinweis: Stabile H2O-3-Artefakte werden regelmäßig auf Maven Central veröffentlicht (klicken Sie hier, um zu suchen), können aber erheblich hinter den nächtlichen Builds von H2O-3 Bleeding Edge zurückbleiben.
Für den Einstieg in die H2O-Entwicklung sind JDK 1.8+, Node.js, Gradle, Python und R erforderlich. Wir verwenden den Gradle-Wrapper ( gradlew
genannt), um sicherzustellen, dass aktuelle lokale Versionen von Gradle und anderen Abhängigkeiten in Ihrem Entwicklungsverzeichnis installiert sind.
Für die Erstellung h2o
ist eine ordnungsgemäß eingerichtete R-Umgebung mit den erforderlichen Paketen und eine Python-Umgebung mit den folgenden Paketen erforderlich:
grip
tabulate
requests
wheel
Um diese Pakete zu installieren, können Sie pip oder conda verwenden. Wenn Sie Probleme bei der Installation dieser Pakete unter Windows haben, befolgen Sie bitte den Abschnitt „Setup unter Windows“ in diesem Handbuch.
(Hinweis: Es wird empfohlen, eine virtuelle Umgebung wie VirtualEnv zu verwenden, um alle Pakete zu installieren.)
Führen Sie die folgenden Schritte aus, um H2O aus dem Repository zu erstellen.
# Build H2O
git clone https://github.com/h2oai/h2o-3.git
cd h2o-3
./gradlew build -x test
You may encounter problems: e.g. npm missing. Install it:
brew install npm
# Start H2O
java -jar build/h2o.jar
# Point browser to http://localhost:54321
git clone https://github.com/h2oai/h2o-3.git
cd h2o-3
./gradlew syncSmalldata
./gradlew syncRPackages
./gradlew build
Hinweise :
- Beim Ausführen von Tests werden fünf Test-JVMs gestartet, die einen H2O-Cluster bilden und mindestens 8 GB RAM (vorzugsweise 16 GB RAM) erfordern.
- Das Ausführen von
./gradlew syncRPackages
wird unter Windows, OS X und Linux unterstützt und wird dringend empfohlen, ist aber nicht erforderlich../gradlew syncRPackages
gewährleistet eine vollständige und konsistente Umgebung mit vorab genehmigten Versionen der für Tests und Builds erforderlichen Pakete. Die Pakete können manuell installiert werden, wir empfehlen jedoch, eine ENV-Variable festzulegen und./gradlew syncRPackages
zu verwenden. Um die ENV-Variable festzulegen, verwenden Sie das folgende Format (wobei „${WORKSPACE} ein beliebiger Pfad sein kann):mkdir -p ${WORKSPACE}/Rlibrary export R_LIBS_USER=${WORKSPACE}/Rlibrary
git pull
./gradlew syncSmalldata
./gradlew syncRPackages
./gradlew clean
./gradlew build
Wir empfehlen die Verwendung ./gradlew clean
nach jedem git pull
.
Überspringen Sie Tests, indem Sie -x test
am Ende der Gradle Build-Befehlszeile hinzufügen. Tests dauern in der Regel 7–10 Minuten auf einem MacBook Pro-Laptop mit 4 CPUs (8 Hyperthreads) und 16 GB RAM.
Die Synchronisierung von SmallData ist nicht nach jedem Pull erforderlich. Wenn Tests jedoch aufgrund fehlender Datendateien fehlschlagen, versuchen Sie es mit ./gradlew syncSmalldata
als ersten Schritt zur Fehlerbehebung. Durch die Synchronisierung von SmallData werden Datendateien von AWS S3 in das SmallData-Verzeichnis in Ihrem Arbeitsbereich heruntergeladen. Die Synchronisierung erfolgt inkrementell. Checken Sie diese Dateien nicht ein. Das Smalldata-Verzeichnis befindet sich in .gitignore. Wenn Sie keine Tests ausführen, benötigen Sie das Verzeichnis smalldata nicht.
Das Ausführen von ./gradlew syncRPackages
wird unter Windows, OS X und Linux unterstützt und wird dringend empfohlen, ist aber nicht erforderlich. ./gradlew syncRPackages
gewährleistet eine vollständige und konsistente Umgebung mit vorab genehmigten Versionen der für Tests und Builds erforderlichen Pakete. Die Pakete können manuell installiert werden, wir empfehlen jedoch, eine ENV-Variable festzulegen und ./gradlew syncRPackages
zu verwenden. Um die ENV-Variable festzulegen, verwenden Sie das folgende Format (wobei ${WORKSPACE}
ein beliebiger Pfad sein kann):
mkdir -p ${WORKSPACE}/Rlibrary
export R_LIBS_USER=${WORKSPACE}/Rlibrary
./gradlew clean && ./gradlew build -x test && (export DO_FAST=1; ./gradlew dist)
open target/docs-website/h2o-docs/index.html
Das Stammverzeichnis des Git-Repositorys enthält ein Makefile mit praktischen Verknüpfungen für häufig in der Entwicklung verwendete Build-Ziele. Führen Sie Folgendes aus, um h2o.jar
zu erstellen und dabei Tests und die Erstellung alternativer Assemblys zu überspringen
make
Führen Sie Folgendes aus, um h2o.jar
mit der minimalen Assembly zu erstellen
make minimal
Die minimale Baugruppe eignet sich gut für die Entwicklung von H2O-Algorithmen für maschinelles Lernen. Einige schwergewichtige Abhängigkeiten (wie Hadoop) werden nicht gebündelt, und die Verwendung spart Buildzeit und erspart das Herunterladen großer Bibliotheken aus Maven-Repositorys.
Überprüfen Sie über die Befehlszeile, ob python
das neu installierte Paket verwendet, indem Sie which python
(oder sudo which python
) verwenden. Aktualisieren Sie die Umgebungsvariable mit dem WinPython-Pfad.
pip install grip tabulate wheel
Installieren Sie Java 1.8+ und fügen Sie das entsprechende Verzeichnis C:Program FilesJavajdk1.7.0_65bin
mit java.exe zu PATH in Umgebungsvariablen hinzu. Um sicherzustellen, dass die Eingabeaufforderung die richtige Java-Version erkennt, führen Sie Folgendes aus:
javac -version
Die CLASSPATH-Variable muss auch auf den lib-Unterordner des JDK gesetzt werden:
CLASSPATH=/<path>/<to>/<jdk>/lib
Installieren Sie Node.js und fügen Sie das installierte Verzeichnis C:Program Filesnodejs
hinzu, das node.exe und npm.cmd zum PATH enthalten muss, sofern es nicht bereits vorangestellt ist.
Installieren Sie R und fügen Sie das bin-Verzeichnis zu Ihrem PATH hinzu, falls es nicht bereits enthalten ist.
Installieren Sie die folgenden R-Pakete:
So installieren Sie diese Pakete innerhalb einer R-Sitzung:
pkgs <- c( " RCurl " , " jsonlite " , " statmod " , " devtools " , " roxygen2 " , " testthat " )
for ( pkg in pkgs ) {
if ( ! ( pkg %in% rownames(installed.packages()))) install.packages( pkg )
}
Beachten Sie, dass libcurl für die Installation des RCurl R-Pakets erforderlich ist.
Beachten Sie, dass diese Pakete keine laufenden Tests abdecken, sondern nur für die Erstellung von H2O.
Installieren Sie abschließend Rtools, eine Sammlung von Befehlszeilentools zur Erleichterung der R-Entwicklung unter Windows.
HINWEIS : Installieren Sie Cygwin.dll während der Rtools-Installation nicht .
HINWEIS : Deaktivieren Sie während der Installation von Cygwin die Python-Pakete, um einen Konflikt mit dem Python.org-Paket zu vermeiden.
Wenn Cygwin bereits installiert ist, entfernen Sie die Python-Pakete oder stellen Sie sicher, dass Native Python in der PATH-Variablen vor Cygwin steht.
Wenn Sie noch keinen Git-Client haben, installieren Sie bitte einen. Die Standardversion finden Sie hier http://git-scm.com/downloads. Stellen Sie vor der Installation sicher, dass die Eingabeaufforderungsunterstützung aktiviert ist.
Laden Sie die h2o-3-Quellcodes herunter und aktualisieren Sie sie:
git clone https://github.com/h2oai/h2o-3
cd h2o-3
./gradlew.bat build
Wenn Fehler auftreten, führen Sie
--stacktrace
erneut aus, um weitere Anweisungen zu fehlenden Abhängigkeiten zu erhalten.
Wenn Sie Homebrew nicht haben, empfehlen wir die Installation. Es vereinfacht die Paketverwaltung für OS X.
Installieren Sie Java 1.8+. Um sicherzustellen, dass die Eingabeaufforderung die richtige Java-Version erkennt, führen Sie Folgendes aus:
javac -version
Verwendung von Homebrew:
brew install node
Andernfalls installieren Sie es von der NodeJS-Website.
Installieren Sie R und fügen Sie das bin-Verzeichnis zu Ihrem PATH hinzu, falls es nicht bereits enthalten ist.
Installieren Sie die folgenden R-Pakete:
So installieren Sie diese Pakete innerhalb einer R-Sitzung:
pkgs <- c( " RCurl " , " jsonlite " , " statmod " , " devtools " , " roxygen2 " , " testthat " )
for ( pkg in pkgs ) {
if ( ! ( pkg %in% rownames(installed.packages()))) install.packages( pkg )
}
Beachten Sie, dass libcurl für die Installation des RCurl R-Pakets erforderlich ist.
Beachten Sie, dass diese Pakete keine laufenden Tests abdecken, sondern nur für die Erstellung von H2O.
Python installieren:
brew install python
Installieren Sie den Pip-Paketmanager:
sudo easy_install pip
Als nächstes installieren Sie die erforderlichen Pakete:
sudo pip install wheel requests tabulate
Auf OS X sollte Git bereits installiert sein. So laden Sie h2o-3-Quellcodes herunter und aktualisieren sie:
git clone https://github.com/h2oai/h2o-3
cd h2o-3
./gradlew build
Hinweis: Auf einem normalen Computer kann die Ausführung aller Tests sehr lange dauern (etwa eine Stunde).
Wenn Fehler auftreten, führen Sie
--stacktrace
erneut aus, um weitere Anweisungen zu fehlenden Abhängigkeiten zu erhalten.
curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -
sudo apt-get install -y nodejs
Installieren Sie Java 8. Installationsanweisungen finden Sie hier JDK-Installation. Um sicherzustellen, dass die Eingabeaufforderung die richtige Java-Version erkennt, führen Sie Folgendes aus:
javac -version
Eine Installationsanleitung finden Sie hier R-Installation. Klicken Sie auf „R für Linux herunterladen“. Klicken Sie auf „Ubuntu“. Befolgen Sie die gegebenen Anweisungen.
Um die erforderlichen Pakete zu installieren, befolgen Sie die gleichen Anweisungen wie für OS X oben.
Hinweis : Wenn die Installation von RStudio Server unter Linux fehlschlägt, führen Sie einen der folgenden Schritte aus:
sudo apt-get install libcurl4-openssl-dev
oder
sudo apt-get install libcurl4-gnutls-dev
Wenn Sie noch keinen Git-Client haben:
sudo apt-get install git
Laden Sie die h2o-3-Quellcodes herunter und aktualisieren Sie sie:
git clone https://github.com/h2oai/h2o-3
cd h2o-3
./gradlew build
Wenn Fehler auftreten, führen Sie den Vorgang erneut mit
--stacktrace
aus, um weitere Anweisungen zu fehlenden Abhängigkeiten zu erhalten.
Stellen Sie sicher, dass Sie nicht als Root ausgeführt werden, da
bower
eine solche Ausführung ablehnt.
curl -sL https://deb.nodesource.com/setup_16.x | sudo bash -
sudo apt-get install -y nodejs
cd /opt
sudo wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz"
sudo tar xzf jdk-7u79-linux-x64.tar.gz
cd jdk1.7.0_79
sudo alternatives --install /usr/bin/java java /opt/jdk1.7.0_79/bin/java 2
sudo alternatives --install /usr/bin/jar jar /opt/jdk1.7.0_79/bin/jar 2
sudo alternatives --install /usr/bin/javac javac /opt/jdk1.7.0_79/bin/javac 2
sudo alternatives --set jar /opt/jdk1.7.0_79/bin/jar
sudo alternatives --set javac /opt/jdk1.7.0_79/bin/javac
cd /opt
sudo wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
sudo rpm -ivh epel-release-7-5.noarch.rpm
sudo echo "multilib_policy=best" >> /etc/yum.conf
sudo yum -y update
sudo yum -y install R R-devel git python-pip openssl-devel libxml2-devel libcurl-devel gcc gcc-c++ make openssl-devel kernel-devel texlive texinfo texlive-latex-fonts libX11-devel mesa-libGL-devel mesa-libGL nodejs npm python-devel numpy scipy python-pandas
sudo pip install scikit-learn grip tabulate statsmodels wheel
mkdir ~/Rlibrary
export JAVA_HOME=/opt/jdk1.7.0_79
export JRE_HOME=/opt/jdk1.7.0_79/jre
export PATH=$PATH:/opt/jdk1.7.0_79/bin:/opt/jdk1.7.0_79/jre/bin
export R_LIBS_USER=~/Rlibrary
# install local R packages
R -e 'install.packages(c("RCurl","jsonlite","statmod","devtools","roxygen2","testthat"), dependencies=TRUE, repos="http://cran.rstudio.com/")'
cd
git clone https://github.com/h2oai/h2o-3.git
cd h2o-3
# Build H2O
./gradlew syncSmalldata
./gradlew syncRPackages
./gradlew build -x test
Um den H2O-Cluster lokal zu starten, führen Sie Folgendes in der Befehlszeile aus:
java -jar build/h2o.jar
Eine Liste der verfügbaren Start-JVM- und H2O-Optionen (z. B. -Xmx
, -nthreads
, -ip
) finden Sie im H2O-Benutzerhandbuch.
Vorgefertigte H2O-on-Hadoop-ZIP-Dateien sind auf der Download-Seite verfügbar. Jede Hadoop-Distributionsversion verfügt über eine separate ZIP-Datei in h2o-3.
Um H2O mit Hadoop-Unterstützung selbst zu erstellen, installieren Sie zunächst Sphinx für Python: pip install sphinx
. Starten Sie dann den Build, indem Sie im h2o-3-Verzeichnis der obersten Ebene Folgendes eingeben:
export BUILD_HADOOP=1;
./gradlew build -x test;
./gradlew dist;
Dadurch wird ein Verzeichnis namens „target“ erstellt und dort ZIP-Dateien generiert. Beachten Sie, dass BUILD_HADOOP
das Standardverhalten ist, wenn der Benutzername jenkins
ist (siehe settings.gradle
“); Andernfalls müssen Sie es wie oben gezeigt anfordern.
Um die ZIP-Dateien nur für ausgewählte Distributionen zu erstellen, verwenden Sie die Umgebungsvariable H2O_TARGET
zusammen mit BUILD_HADOOP
, zum Beispiel:
export BUILD_HADOOP=1;
export H2O_TARGET=hdp2.5,hdp2.6
./gradlew build -x test;
./gradlew dist;
Im h2o-hadoop
-Verzeichnis verfügt jede Hadoop-Version über ein Build-Verzeichnis für den Treiber und ein Assembly-Verzeichnis für das Fatjar.
Sie müssen:
h2o-hadoop
ein neues Treiberverzeichnis und ein Assemblyverzeichnis (jeweils mit einer build.gradle
Datei) hinzuh2o-3/settings.gradle
hinzuHADOOP_VERSIONS
in make-dist.sh
hinzuh2o-dist/buildinfo.json
hinzuHadoop unterstützt den sicheren Identitätswechsel von Benutzern über seine Java-API. Einem Kerberos-authentifizierten Benutzer kann gestattet werden, jeden Benutzernamen zu vertreten, der bestimmte Kriterien erfüllt, die in der core-site.xml-Datei des NameNode eingegeben wurden. Dieser Identitätswechsel gilt nur für Interaktionen mit der Hadoop-API oder den APIs von Hadoop-bezogenen Diensten, die ihn unterstützen (dies ist nicht dasselbe wie ein Wechsel zu diesem Benutzer auf dem Ursprungscomputer).
Einrichten eines sicheren Benutzeridentitätswechsels (für Wasser):
hadoop.proxyuser.<proxyusername>.hosts
: Die Hosts, auf denen der Proxy-Benutzer im Namen eines gültigen Benutzers imitierte Aktionen ausführen darfhadoop.proxyuser.<proxyusername>.groups
: Die Gruppen, denen ein imitierter Benutzer angehören muss, damit der Identitätswechsel mit diesem Proxy-Benutzer funktionierthadoop.proxyuser.<proxyusername>.users
: die Benutzer, die ein Proxy-Benutzer annehmen darf<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>
Imitierte HDFS-Aktionen können im HDFS-Überwachungsprotokoll angezeigt werden („auth:PROXY“ sollte in den Einträgen, in denen dies zutrifft, im Feld ugi=
“ erscheinen). YARN sollte ebenfalls irgendwo in der Resource Manager-Benutzeroberfläche „auth:PROXY“ anzeigen.
So verwenden Sie den sicheren Identitätswechsel mit dem Hadoop-Treiber von h2o:
Bevor dies versucht wird, lesen Sie weiter unten den Abschnitt „Risiken bei Identitätsdiebstahl“.
Wenn Sie den h2odriver verwenden (z. B. beim Ausführen mit hadoop jar ...
), geben Sie zusätzlich zu allen anderen auch -principal <proxy user kerberos principal>
, -keytab <proxy user keytab path>
und -run_as_user <hadoop username to impersonate>
an Argumente nötig. Wenn die Konfiguration erfolgreich war, meldet sich der Proxy-Benutzer an und gibt sich als -run_as_user
aus, solange dieser Benutzer durch die Konfigurationseigenschaft „users“ oder „groups“ (oben konfiguriert) zugelassen wird. Dies wird durch HDFS und YARN erzwungen, nicht durch den Code von h2o. Der Treiber legt seinen Sicherheitskontext effektiv auf den imitierten Benutzer fest, sodass alle unterstützten Hadoop-Aktionen als dieser Benutzer ausgeführt werden (z. B. unterstützen YARN und HDFS-APIs sicher imitierte Benutzer, andere jedoch möglicherweise nicht).
hadoop.proxyuser.<proxyusername>.hosts
.su
).hadoop.proxyuser.<proxyusername>.{hosts,groups,users}
auf „*“ kann das Sicherheitsrisiko erheblich erhöhen. $ git diff
diff --git a/h2o-app/build.gradle b/h2o-app/build.gradle
index af3b929..097af85 100644
--- a/h2o-app/build.gradle
+++ b/h2o-app/build.gradle
@@ -8,5 +8,6 @@ dependencies {
compile project(":h2o-algos")
compile project(":h2o-core")
compile project(":h2o-genmodel")
+ compile project(":h2o-persist-hdfs")
}
diff --git a/h2o-persist-hdfs/build.gradle b/h2o-persist-hdfs/build.gradle
index 41b96b2..6368ea9 100644
--- a/h2o-persist-hdfs/build.gradle
+++ b/h2o-persist-hdfs/build.gradle
@@ -2,5 +2,6 @@ description = "H2O Persist HDFS"
dependencies {
compile project(":h2o-core")
- compile("org.apache.hadoop:hadoop-client:2.0.0-cdh4.3.0")
+ compile("org.apache.hadoop:hadoop-client:2.4.1-mapr-1408")
+ compile("org.json:org.json:chargebee-1.0")
}
Sparkling Water kombiniert zwei Open-Source-Technologien: Apache Spark und die H2O Machine Learning-Plattform. Es macht die H2O-Bibliothek mit fortschrittlichen Algorithmen, einschließlich Deep Learning, GLM, GBM, K-Means und Distributed Random Forest, über Spark-Workflows zugänglich. Spark-Benutzer können die besten Funktionen beider Plattformen auswählen, um ihre Anforderungen an maschinelles Lernen zu erfüllen. Benutzer können die RDD-API und Spark MLLib von Spark mit den maschinellen Lernalgorithmen von H2O kombinieren oder H2O unabhängig von Spark für den Modellerstellungsprozess verwenden und die Ergebnisse in Spark nachbearbeiten.
Mineralwasserressourcen :
Die wichtigste H2O-Dokumentation ist das H2O-Benutzerhandbuch. Besuchen Sie http://docs.h2o.ai für die erstklassige Einführung in die Dokumentation von H2O-Projekten.
Verwenden Sie zum Generieren der REST-API-Dokumentation die folgenden Befehle:
cd ~/h2o-3
cd py
python ./generate_rest_api_docs.py # to generate Markdown only
python ./generate_rest_api_docs.py --generate_html --github_user GITHUB_USER --github_password GITHUB_PASSWORD # to generate Markdown and HTML
Der Standardspeicherort für die generierte Dokumentation ist build/docs/REST
.
Wenn der Build fehlschlägt, versuchen Sie es gradlew clean
und dann git clean -f
.
Die Dokumentation für jeden Bleeding-Edge-Nightly-Build ist auf der Nightly-Build-Seite verfügbar.
Wenn Sie H2O als Teil Ihres Workflows in einer Veröffentlichung verwenden, zitieren Sie bitte Ihre H2O-Ressource(n) mithilfe des folgenden BibTex-Eintrags:
@Manual{h2o_package_or_module,
title = {package_or_module_title},
author = {H2O.ai},
year = {year},
month = {month},
note = {version_information},
url = {resource_url},
}
Beispiele für formatierte H2O-Software-Zitierweise :
Broschüren zum H2O-Algorithmus sind auf der Dokumentations-Homepage verfügbar.
@Manual{h2o_booklet_name,
title = {booklet_title},
author = {list_of_authors},
year = {year},
month = {month},
url = {link_url},
}
Beispiele für formatierte Broschürenzitate :
Arora, A., Candel, A., Lanford, J., LeDell, E. und Parmar, V. (Okt. 2016). Deep Learning mit H2O . http://docs.h2o.ai/h2o/latest-stable/h2o-docs/booklets/DeepLearningBooklet.pdf.
Click, C., Lanford, J., Malohlava, M., Parmar, V. und Roark, H. (Okt. 2016). Gradientenverstärkte Modelle mit H2O . http://docs.h2o.ai/h2o/latest-stable/h2o-docs/booklets/GBMBooklet.pdf.
H2O wurde im Laufe der Jahre von einer großen Anzahl von Mitwirkenden sowohl innerhalb von H2O.ai (dem Unternehmen) als auch in der größeren Open-Source-Community entwickelt. Sie können beginnen, einen Beitrag zu H2O zu leisten, indem Sie Stack Overflow-Fragen beantworten oder Fehlerberichte einreichen. Bitte machen Sie mit!
SriSatish Ambati
Cliff Click
Tom Kraljevic
Tomas Nykodym
Michal Malohlava
Kevin Normoyle
Spencer Aiello
Anqi Fu
Nidhi Mehta
Arno Candel
Josephine Wang
Amy Wang
Max Schloemer
Ray Peck
Prithvi Prabhu
Brandon Hill
Jeff Gambera
Ariel Rao
Viraj Parmar
Kendall Harris
Anand Avati
Jessica Lanford
Alex Tellez
Allison Washburn
Amy Wang
Erik Eckstrand
Neeraja Madabhushi
Sebastian Vidrio
Ben Sabrin
Matt Dowle
Mark Landry
Erin LeDell
Andrey Spiridonov
Oleg Rogynskyy
Nick Martin
Nancy Jordan
Nishant Kalonia
Nadine Hussami
Jeff Cramer
Stacie Spreitzer
Vinod Iyengar
Charlene Windom
Parag Sanghavi
Navdeep Gill
Lauren DiPerna
Anmol Bal
Mark Chan
Nick Karpov
Avni Wadhwa
Ashrith Barthur
Karen Hayrapetyan
Jo-fai Chow
Dmitry Larko
Branden Murray
Jakub Hava
Wen Phan
Magnus Stensmo
Pasha Stetsenko
Angela Bartz
Mateusz Dymczyk
Micah Stubbs
Ivy Wang
Terone Ward
Leland Wilkinson
Wendy Wong
Nikhil Shekhar
Pavel Pscheidl
Michal Kurka
Veronika Maurerova
Jan Sterba
Jan Jendrusak
Sebastien Poirier
Tomáš Frýda
Ard Kelmendi
Yuliia Syzon
Adam Valenta
Marek Novotny
Zuzana Olajcova
Wissenschaftlicher Beirat
Stephen Boyd
Rob Tibshirani
Trevor Hastie
Systeme, Daten, Dateisysteme und Hadoop
Doug Lea
Chris Pouliot
Dhruba Borthakur
Jishnu Bhattacharjee, Nexus Venture Partners
Anand Babu Periasamy
Anand Rajaraman
Ash Bhardwaj
Rakesh Mathur
Michael Marks
Egbert Bierman
Rajesh Ambati