h2oai / h2o-3

cze 10, 2021
admin

H2O jest platformą in-memory dla rozproszonego, skalowalnego uczenia maszynowego. H2O wykorzystuje znane interfejsy, takie jak R, Python, Scala, Java, JSON i interfejs Flow notebook/web, i działa bezproblemowo z technologiami big data, takimi jak Hadoop i Spark. H2O udostępnia implementacje wielu popularnych algorytmów, takich jak uogólnione modele liniowe (GLM), maszyny Gradient Boosting (w tym XGBoost), lasy losowe, głębokie sieci neuronowe, układane zespoły, Naive Bayes, uogólnione modele addytywne (GAM), proporcjonalne zagrożenia Coxa, K-Means, PCA, Word2Vec, a także w pełni automatyczny algorytm uczenia maszynowego (H2O AutoML).

H2O jest rozszerzalny, dzięki czemu programiści mogą dodawać transformacje danych i niestandardowe algorytmy według własnego uznania i uzyskiwać do nich dostęp za pośrednictwem wszystkich tych klientów. Modele H2O mogą być pobierane i ładowane do pamięci H2O w celu oceny punktowej lub eksportowane do formatu POJO lub MOJO w celu uzyskania bardzo szybkiej oceny punktowej w produkcji. Więcej informacji można znaleźć w Podręczniku użytkownika H2O.

H2O-3 (to repozytorium) jest trzecim wcieleniem H2O i następcą H2O-2.

Spis treści

  • Downloading H2O-3
  • Zasoby open source
    • Issue Tracking and Feature Requests
    • Lista zasobów H2O
  • Używanie artefaktów kodu H2O-3 (bibliotek)
  • Building H2O-3
  • Launching H2O after Building
  • Building H2O on Hadoop
  • Sparkling Water
  • Documentation
  • Citing H2O
  • Roadmap
  • Community / Advisors / Investors

1. Pobieranie H2O-3

Podczas gdy większość tego README jest napisana dla deweloperów, którzy robią własne kompilacje, większość użytkowników H2O po prostu pobiera i używa wstępnie zbudowanej wersji. Jeśli jesteś użytkownikiem Pythona lub R, najłatwiejszym sposobem zainstalowania H2O jest skorzystanie z PyPI lub Anacondy (dla Pythona) lub CRAN (dla R):

Python

pip install h2o

R

install.packages("h2o")

Więcej informacji na temat pobierania &instalowania H2O jest dostępnych w Przewodniku użytkownika H2O.

2. Zasoby open source

Większość ludzi współdziała z trzema lub czterema głównymi zasobami open source: GitHub (który już znalazłeś), JIRA (do zgłaszania błędów i śledzenia problemów), Stack Overflow dla pytań związanych z kodem/oprogramowaniem H2O oraz h2ostream (grupa Google / forum dyskusyjne e-mail) dla pytań nieodpowiednich dla Stack Overflow. Istnieje również grupa czatu deweloperskiego Gitter H2O, jednak dla celów archiwalnych & aby zmaksymalizować dostępność, wolelibyśmy, aby standardowe pytania H2O Q&A były prowadzone na Stack Overflow.

2.1 Śledzenie błędów i prośby o funkcje

(Uwaga: Istnieje tylko jeden system śledzenia problemów dla projektu. Problemy z GitHuba nie są włączone; musisz użyć JIRA.)

Możesz przeglądać i tworzyć nowe sprawy w naszym open source JIRA: http://jira.h2o.ai

  • Możesz przeglądać i wyszukiwać sprawy bez logowania się do JIRA:
    1. Kliknij Issues menu
    2. Kliknij Search for issues
  • Aby utworzyć sprawę (albo błąd, albo prośbę o dodanie funkcji), należy najpierw utworzyć sobie konto:
    1. Kliknij przycisk Log In w prawym górnym rogu ekranu
    2. Kliknij Create an acccount w pobliżu dolnej części okna logowania
    3. Jak już utworzysz konto i zalogujesz się, użyj przycisku Create w menu, aby utworzyć zgłoszenie
    4. Utwórz zgłoszenia H2O-3 w projekcie PUBDEV. (Uwaga: Pytania dotyczące wody gazowanej powinny być zgłaszane w ramach projektu SW.)
  • Możesz także głosować na prośby o dodanie funkcji i/lub inne problemy. Głosowanie może pomóc H2O w ustaleniu priorytetów funkcji, które są uwzględniane w każdym wydaniu.
    1. Przejdź na stronę H2O JIRA.
    2. Kliknij przycisk Zaloguj się, aby się zalogować lub utworzyć konto, jeśli jeszcze go nie posiadasz.
    3. Wyszukaj funkcję, której chcesz nadać priorytet lub utwórz nową.
    4. Kliknij link Głosuj na tę sprawę. Znajduje się on po prawej stronie sprawy w sekcji Ludzie.

2.2 Lista zasobów H2O

3. Używanie artefaktów H2O-3

Każda nocna kompilacja publikuje artefakty R, Pythona, Javy i Scali w repozytorium specyficznym dla kompilacji. W szczególności, artefakty Javy można znaleźć w katalogu maven/repo.

Tutaj znajduje się przykładowy wycinek pliku budowania gradle używający h2o-3 jako zależności. Zastąp x, y, z i nnnn poprawnymi liczbami.

Odnieś się do najnowszej strony budowania nocnego H2O-3 bleeding edge, aby uzyskać informacje na temat instalowania artefaktów budowania nocnego.

Odnieś się do repozytorium h2o-droplets GitHub, aby uzyskać działający przykład, jak używać artefaktów Java z gradle.

Uwaga: Stabilne artefakty H2O-3 są okresowo publikowane w Maven Central (kliknij tutaj, aby wyszukać), ale mogą znacznie opóźniać się w stosunku do nocnych buildów H2O-3 Bleeding Edge.

4. Budowanie H2O-3

Rozpoczęcie pracy nad H2O wymaga JDK 1.7, Node.js, Gradle, Pythona i R. Używamy wrappera Gradle (o nazwie gradlew), aby zapewnić, że w katalogu deweloperskim są zainstalowane aktualne lokalne wersje Gradle i innych zależności.

4.1. Przed budową

Budowanie h2o wymaga prawidłowo skonfigurowanego środowiska R z wymaganymi pakietami oraz środowiska Pythona z następującymi pakietami:

gripcoloramafuturetabulaterequestswheel

Aby zainstalować te pakiety, można użyć pip lub conda.Jeśli masz problemy z instalacją tych pakietów w systemie Windows, postępuj zgodnie z sekcją Konfiguracja w systemie Windows tego przewodnika.

(Uwaga: Zaleca się użycie jakiegoś wirtualnego środowiska, takiego jak VirtualEnv, do zainstalowania wszystkich pakietów. )

4.2. Budowanie z wiersza poleceń (Szybki start)

Aby zbudować H2O z repozytorium, należy wykonać następujące czynności.

Przepis 1: Sklonuj świeże, zbuduj, pomiń testy i uruchom H2O

Przepis 2: Sklonuj świeże, zbuduj i uruchom testy (wymaga działającej instalacji R)

git clone https://github.com/h2oai/h2o-3.gitcd h2o-3./gradlew syncSmalldata./gradlew syncRPackages./gradlew build

Uwagi:

  • Uruchomienie testów uruchamia pięć testowych maszyn JVM, które tworzą klaster H2O i wymaga co najmniej 8 GB RAM (najlepiej 16 GB RAM).
  • Uruchamianie ./gradlew syncRPackages jest obsługiwane w systemach Windows, OS X i Linux i jest zdecydowanie zalecane, ale nie wymagane. ./gradlew syncRPackages zapewnia kompletne i spójne środowisko z wstępnie zatwierdzonymi wersjami pakietów wymaganych do testów i kompilacji. Pakiety mogą być zainstalowane ręcznie, ale zalecamy ustawienie zmiennej ENV i użycie ./gradlew syncRPackages. Aby ustawić zmienną ENV, należy użyć następującego formatu (gdzie `${WORKSPACE} może być dowolną ścieżką):
mkdir -p ${WORKSPACE}/Rlibraryexport R_LIBS_USER=${WORKSPACE}/Rlibrary

Przepis 3: Wyciąganie, czyszczenie, budowanie i uruchamianie testów

git pull./gradlew syncSmalldata./gradlew syncRPackages./gradlew clean./gradlew build

Uwagi

  • Zalecamy używanie ./gradlew clean po każdym git pull.

  • Opuszczanie testów przez dodanie -x test na końcu linii poleceń gradle build. Testy zazwyczaj trwają 7-10 minut na laptopie Macbook Pro z 4 procesorami (8 hiperwątków) i 16 GB pamięci RAM.

  • Synchronizacja smalldata nie jest wymagana po każdym ściągnięciu, ale jeśli testy zawiodą z powodu brakujących plików danych, spróbuj ./gradlew syncSmalldata jako pierwszego kroku rozwiązywania problemów. Synchronizacja smalldata pobiera pliki danych z AWS S3 do katalogu smalldata w twojej przestrzeni roboczej. Synchronizacja jest inkrementalna. Nie sprawdzaj tych plików. Katalog smalldata znajduje się w .gitignore. Jeśli nie uruchamiasz żadnych testów, nie potrzebujesz katalogu smalldata.

  • Uruchamianie ./gradlew syncRPackages jest obsługiwane w systemach Windows, OS X i Linux i jest zdecydowanie zalecane, ale nie wymagane. ./gradlew syncRPackages zapewnia kompletne i spójne środowisko z wstępnie zatwierdzonymi wersjami pakietów wymaganych do testów i kompilacji. Pakiety mogą być zainstalowane ręcznie, ale zalecamy ustawienie zmiennej ENV i użycie ./gradlew syncRPackages. Aby ustawić zmienną ENV, należy użyć następującego formatu (gdzie ${WORKSPACE} może być dowolną ścieżką):

    mkdir -p ${WORKSPACE}/Rlibraryexport R_LIBS_USER=${WORKSPACE}/Rlibrary

Przepis 4: Po prostu buduj dokumenty

./gradlew clean && ./gradlew build -x test && (export DO_FAST=1; ./gradlew dist)open target/docs-website/h2o-docs/index.html

4.3. Konfiguracja w systemie Windows

Krok 1: Pobierz i zainstaluj WinPython.

Z wiersza poleceń sprawdź, czy python korzysta z nowo zainstalowanego pakietu za pomocą which python (lub sudo which python). Zaktualizuj zmienną środowiskową o ścieżkę WinPython.

Krok 2: Zainstaluj wymagane pakiety Pythona:
pip install grip 'colorama>=0.3.8' future tabulate wheel
Krok 3: Zainstaluj JDK

Zainstaluj Javę 1.7 i dodaj odpowiedni katalog C:\Program Files\Java\jdk1.7.0_65\bin z java.exe do PATH w zmiennych środowiskowych. Aby upewnić się, że wiersz poleceń wykrywa poprawną wersję Javy, uruchom:

javac -version

Zmienna CLASSPATH musi być również ustawiona na podfolder lib w JDK:

CLASSPATH=/<path>/<to>/<jdk>/lib
Krok 4. Zainstaluj Node.js

Zainstaluj Node.js i dodaj zainstalowany katalog C:\Program Files\nodejs, który musi zawierać node.exe i npm.cmd do PATH, jeśli nie został jeszcze dodany.

Krok 5. Zainstaluj R, wymagane pakiety i Rtools:

Zainstaluj R i dodaj katalog bin do PATH, jeśli nie jest już zawarty.

Zainstaluj następujące pakiety R:

  • RCurl
  • jsonlite
  • statmod
  • devtools
  • roxygen2
  • testthat

Aby zainstalować te pakiety z poziomu sesji R:

Zauważ, że libcurl jest wymagany do instalacji pakietu RCurl R.

Zauważ, że te pakiety nie obejmują uruchamiania testów, tylko budowanie H2O.

Na koniec, zainstaluj Rtools, który jest zbiorem narzędzi wiersza poleceń, aby ułatwić rozwój R w systemie Windows.

UWAGA: Podczas instalacji Rtools, nie instaluj Cygwin.dll.

Krok 6. Zainstaluj Cygwin

UWAGA: Podczas instalacji Cygwin odznacz pakiety Python, aby uniknąć konfliktu z pakietem Python.org.

Krok 6b. Sprawdź poprawność Cygwin

Jeśli Cygwin jest już zainstalowany, usuń pakiety Pythona lub upewnij się, że Native Python jest przed Cygwin w zmiennej PATH.

Krok 7. Zaktualizuj lub sprawdź poprawność zmiennej PATH systemu Windows, aby uwzględnić R, Java JDK, Cygwin.
Krok 8. Git Clone h2o-3

Jeśli nie masz jeszcze klienta Git, zainstaluj go. Domyślny można znaleźć tutaj http://git-scm.com/downloads. Upewnij się, że obsługa wiersza poleceń jest włączona przed instalacją.

Pobierz i zaktualizuj kody źródłowe h2o-3:

git clone https://github.com/h2oai/h2o-3
Krok 9. Uruchom górny poziom gradle build:
cd h2o-3./gradlew.bat build

Jeśli napotkasz błędy uruchom ponownie z --stacktrace, aby uzyskać więcej instrukcji na temat brakujących zależności.

4.4. Konfiguracja na OS X

Jeśli nie masz Homebrew, zalecamy jego instalację. Ułatwia on zarządzanie pakietami dla OS X.

Krok 1. Zainstaluj JDK

Zainstaluj Javę 1.7. Aby upewnić się, że wiersz poleceń wykrywa poprawną wersję Javy, uruchom:

javac -version
Krok 2. Zainstaluj Node.js:

Używając Homebrew:

brew install node

W przeciwnym razie zainstaluj z witryny NodeJS.

Krok 3. Zainstaluj R i wymagane pakiety:

Zainstaluj R i dodaj katalog bin do swojej PATH, jeśli nie jest jeszcze dołączony.

Zainstaluj następujące pakiety R:

  • RCurl
  • jsonlite
  • statmod
  • devtools
  • roxygen2
  • testthat

Aby zainstalować te pakiety z poziomu sesji R:

Zauważ, że libcurl jest wymagany do instalacji pakietu RCurl R.

Zauważ, że te pakiety nie obejmują uruchamiania testów, one tylko do budowania H2O.

Krok 4. Zainstaluj python i wymagane pakiety:

Instalacja python:

brew install python

Instalacja pip menedżer pakietów:

sudo easy_install pip

Następnie zainstaluj wymagane pakiety:

sudo pip install wheel requests 'colorama>=0.3.8' future tabulate 
Krok 5. Git Clone h2o-3

OS X powinien mieć już zainstalowany Git. Aby pobrać i zaktualizować kody źródłowe h2o-3:

git clone https://github.com/h2oai/h2o-3
Krok 6. Uruchom górny poziom gradle build:
cd h2o-3./gradlew build

Uwaga: na zwykłej maszynie może to zająć bardzo dużo czasu (około godziny), aby uruchomić wszystkie testy.

Jeśli napotkasz błędy uruchom ponownie z --stacktrace, aby uzyskać więcej instrukcji na temat brakujących zależności.

4.5. Konfiguracja na Ubuntu 14.04

Krok 1. Zainstaluj Node.js
curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -sudo apt-get install -y nodejs
Krok 2. Zainstaluj JDK:

Zainstaluj Javę 8. Instrukcje instalacji można znaleźć tutaj Instalacja JDK. Aby upewnić się, że wiersz poleceń wykrywa poprawną wersję Java, uruchom:

javac -version
Krok 3. Zainstaluj R i wymagane pakiety:

Instrukcje instalacji można znaleźć tutaj Instalacja R. Kliknij „Pobierz R dla Linuksa”. Kliknij „ubuntu”. Postępuj zgodnie z podanymi instrukcjami.

Aby zainstalować wymagane pakiety, postępuj zgodnie z tymi samymi instrukcjami, co dla OS X powyżej.

Uwaga: Jeśli proces nie powiedzie się w celu zainstalowania RStudio Server na Linuksie, uruchom jeden z następujących:

sudo apt-get install libcurl4-openssl-dev

lub

sudo apt-get install libcurl4-gnutls-dev

Krok 4. Git Clone h2o-3

Jeśli nie masz jeszcze klienta Git:

sudo apt-get install git

Pobierz i zaktualizuj kody źródłowe h2o-3:

git clone https://github.com/h2oai/h2o-3
Krok 5. Uruchom górny poziom gradle build:

cd h2o-3./gradlew build

Jeśli napotkasz błędy, uruchom ponownie używając --stacktrace, aby uzyskać więcej instrukcji na temat brakujących zależności.

Upewnij się, że nie działasz jako root, ponieważ bower odrzuci takie uruchomienie.

4.6. Konfiguracja na Ubuntu 13.10

Krok 1. Zainstaluj Node.js
curl -sL https://deb.nodesource.com/setup_10.x | sudo bash -sudo apt-get install -y nodejs
Kroki 2-4. Wykonaj kroki 2-4 dla Ubuntu 14.04 (powyżej)

4.7. Konfiguracja w systemie CentOS 7

5. Uruchamianie H2O po zbudowaniu

Aby lokalnie uruchomić klaster H2O, należy wykonać następujące czynności w wierszu poleceń:

java -jar build/h2o.jar

Lista dostępnych opcji uruchamiania JVM i H2O (np. -Xmx, -nthreads, -ip), jest dostępna w podręczniku użytkownika H2O.

6. Budowanie H2O na Hadoop

Prebudowane pliki zip H2O-on-Hadoop są dostępne na stronie pobierania. Każda wersja dystrybucji Hadoop ma osobny plik zip w h2o-3.

Aby samodzielnie zbudować H2O z obsługą Hadoop, należy najpierw zainstalować sphinx dla pythona: pip install sphinxNastępnie rozpocznij budowanie, wpisując poniższe z katalogu najwyższego poziomu h2o-3:

(export BUILD_HADOOP=1; ./gradlew build -x test)./gradlew dist

Tworzy to katalog o nazwie 'target’ i wygeneruje w nim pliki zip. Zauważ, że BUILD_HADOOP jest domyślnym zachowaniem, gdy nazwą użytkownika jest jenkins (odwołaj się do settings.gradle); w przeciwnym razie musisz o to poprosić, jak pokazano powyżej.

Dodawanie wsparcia dla nowej wersji Hadoop

W katalogu h2o-hadoop każda wersja Hadoop ma katalog build dla sterownika i katalog assembly dla fatjar.

Trzeba:

  1. Dodaj nowy katalog sterownika i katalog zespołu (każdy z plikiem build.gradle) w h2o-hadoop
  2. Dodaj te nowe projekty do h2o-3/settings.gradle
  3. Dodaj nową wersję Hadoop do HADOOP_VERSIONS w make-dist.sh
  4. Dodaj nową wersję Hadoop do listy w h2o-dist/buildinfo.json

Bezpieczne podszywanie się pod użytkownika

Hadoop obsługuje bezpieczne podszywanie się pod użytkownika za pośrednictwem swojego interfejsu API Java. Użytkownik z uwierzytelnieniem kerberos może być upoważniony do podszywania się pod dowolną nazwę użytkownika, która spełnia określone kryteria wprowadzone w pliku core-site.xml węzła NameNode. To podszywanie się dotyczy tylko interakcji z API Hadoop lub API usług związanych z Hadoop, które je wspierają (nie jest to tożsame z przełączeniem się na tego użytkownika na maszynie źródłowej).

Ustawianie bezpiecznego podszywania się pod użytkownika (dla h2o):

  1. Utwórz lub znajdź identyfikator do użycia jako proxy, który ma ograniczony do braku dostęp do HDFS lub powiązanych usług; użytkownik proxy musi być używany tylko do podszywania się pod użytkownika
  2. (Wymagane, jeśli nie używasz h2odriver) Jeśli nie używasz sterownika (np.np. napisałeś swój własny kod przeciwko API h2o używając Hadoop), dokonaj niezbędnych zmian w kodzie, aby podszyć się pod użytkownika (zobacz org.apache.hadoop.security.UserGroupInformation)
  3. W Ambari/Cloudera Manager lub bezpośrednio w pliku core-site.xml NameNode, dodaj 2/3 właściwości dla użytkownika, którego chcemy użyć jako proxy (zastąp zwykłą nazwę użytkownika – nie w pełni kwalifikowaną nazwę główną).
    • hadoop.proxyuser.<proxyusername>.hosts: hosty, do których użytkownik proxy może się podszywać w imieniu ważnego użytkownika
    • hadoop.proxyuser.<proxyusername>.groups: grupy, do których musi należeć podszywający się użytkownik, aby podszywanie się działało z tym użytkownikiem proxy
    • hadoop.proxyuser.<proxyusername>.users: użytkownicy, do których użytkownik proxy może się podszywać
    • Przykład: <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>
  4. Restart core services such as HDFS & YARN for the changes to take effect

Impersonated HDFS actions can be viewed in the hdfs audit log (’auth:PROXY’ should appear in the ugi= field in entries where this is applicable). YARN podobnie powinien pokazać 'auth:PROXY’ gdzieś w Resource Manager UI.

Aby użyć bezpiecznego podszywania się z h2o’s Hadoop driver:

Przed podjęciem tej próby, zobacz Ryzyko z podszywaniem się, poniżej

Gdy używasz h2odriver (np.np. gdy działa z hadoop jar ...), podaj -principal <proxy user kerberos principal>, -keytab <proxy user keytab path> i -run_as_user <hadoop username to impersonate>, oprócz wszelkich innych potrzebnych argumentów. Jeśli konfiguracja się powiedzie, użytkownik proxy zaloguje się i podszyje się pod -run_as_user tak długo, jak użytkownik ten jest dozwolony przez właściwość konfiguracji users lub groups (skonfigurowaną powyżej); jest to wymuszane przez HDFS & YARN, a nie kod h2o. Sterownik efektywnie ustawia swój kontekst bezpieczeństwa jako podszywający się użytkownik, więc wszystkie obsługiwane działania Hadoop będą wykonywane jako ten użytkownik (np. YARN, interfejsy API HDFS obsługują bezpiecznie podszywających się użytkowników, ale inne mogą nie).

Środki ostrożności, które należy podjąć podczas korzystania z bezpiecznego podszywania się

  • Docelowym przypadkiem użycia dla bezpiecznego podszywania się są aplikacje lub usługi, które wstępnie uwierzytelniają użytkownika, a następnie używają (w tym przypadku) h2odriver w imieniu tego użytkownika. Steam H2O jest doskonałym przykładem: autoryzuj użytkownika w aplikacji internetowej przez SSL, podszywaj się pod tego użytkownika podczas tworzenia kontenera h2o YARN.
  • Użytkownik proxy powinien mieć ograniczone uprawnienia w klastrze Hadoop; oznacza to brak uprawnień do dostępu do danych lub wykonywania wywołań API. W ten sposób, gdyby został skompromitowany, miałby uprawnienia do podszywania się tylko pod określony podzbiór użytkowników w klastrze i tylko z określonych maszyn.
  • Używaj właściwości hadoop.proxyuser.<proxyusername>.hosts zawsze, gdy jest to możliwe lub praktyczne.
  • Nie podawaj hasła lub keytabu proxyusername żadnemu użytkownikowi, którego nie chcesz podszywać się pod innego użytkownika (jest to generalnie każdy użytkownik). Celem podszywania się nie jest umożliwienie użytkownikom podszywania się pod siebie nawzajem. Zobacz pierwszy punkt dla typowego przypadku użycia.
  • Ograniczyć logowanie użytkownika do maszyny, z której odbywa się proxy, gdy tylko jest to możliwe.
  • Upewnić się, że keytab używany do logowania użytkownika proxy jest odpowiednio zabezpieczony i że użytkownicy nie mogą się zalogować jako ten id (przez su, na przykład)
  • Nigdy nie ustawiać hadoop.proxyuser..{users,groups} na '*’ lub 'hdfs’, 'yarn’, itp. Zezwolenie jakiemukolwiek użytkownikowi na podszywanie się pod hdfs, yarn lub jakiegokolwiek innego ważnego użytkownika/grupę powinno być wykonane z najwyższą ostrożnością i mocno przeanalizowane, zanim zostanie dozwolone.

Ryzyko związane z bezpiecznym podszywaniem się

  • Id wykonujący podszywanie się może zostać skompromitowany jak każdy inny id użytkownika.
  • Ustawienie dowolnej właściwości hadoop.proxyuser.<proxyusername>.{hosts,groups,users} na '*’ może znacznie zwiększyć narażenie na ryzyko związane z bezpieczeństwem.
  • Gdy użytkownicy nie są uwierzytelniani przed użyciem ze sterownikiem (np. tak jak Steam robi to za pośrednictwem bezpiecznej aplikacji internetowej/API), możliwość kontroli procesu/systemu jest trudna.

7. Sparkling Water

Sparkling Water łączy dwie technologie open-source: Apache Spark i platformę H2O Machine Learning. Sprawia, że biblioteka zaawansowanych algorytmów H2O, w tym Deep Learning, GLM, GBM, K-Means i Distributed Random Forest, jest dostępna z poziomu przepływów pracy Spark. Użytkownicy Sparka mogą wybrać najlepsze funkcje z obu platform, aby zaspokoić swoje potrzeby w zakresie uczenia maszynowego. Użytkownicy mogą połączyć RDD API Sparka i Spark MLLib z algorytmami uczenia maszynowego H2O lub użyć H2O niezależnie od Sparka do procesu budowania modelu i post-processingu wyników w Sparku.

Zasoby Sparkling Water:

  • Strona pobierania dla wstępnie zbudowanych pakietów
  • Repozytorium GitHub Sparkling Water
  • README
  • Dokumentacja dewelopera

8. Dokumentacja

Strona główna dokumenacji

Główną dokumentacją H2O jest Podręcznik użytkownika H2O. Odwiedź http://docs.h2o.ai, aby uzyskać wprowadzenie na najwyższym poziomie do dokumentacji projektów H2O.

Generowanie dokumentacji REST API

Aby wygenerować dokumentację REST API, użyj następujących poleceń:

Domyślną lokalizacją dla wygenerowanej dokumentacji jest build/docs/REST.

Jeśli kompilacja nie powiedzie się, spróbuj gradlew clean, a następnie git clean -f.

Dokumentacja kompilacji bleeding edge

Dokumentacja każdej nocnej kompilacji bleeding edge jest dostępna na stronie nocnej kompilacji.

9. Powoływanie się na H2O

Jeśli używają Państwo H2O jako części swojego przepływu pracy w publikacji, prosimy o powoływanie się na zasoby H2O przy użyciu następującego wpisu BibTex:

Oprogramowanie H2O

Przykłady cytowania oprogramowania H2O w formacie:

Broszury H2O

Broszury algorytmów H2O są dostępne na stronie domowej dokumentacji.

@Manual{h2o_booklet_name, title = {booklet_title}, author = {list_of_authors}, year = {year}, month = {month}, url = {link_url},}

Przykłady cytowania broszur sformatowanych:

10. Roadmap

H2O 3.34.0.1 – styczeń 2021

  • Extended Isolation Forest Algorithm
  • Uplift Trees
  • Extracting & ranking feature interactions from GBM and XGBoost models
  • RuleFit MOJO, CoxPH MOJO
  • Support for MOJO2 Scoring
  • Grid-Search fault Tolerance
  • Kubernetes Operator
  • Externalized XGBoost on Kubernetes clusters

11. Społeczność

H2O zostało zbudowane przez wielu współpracowników na przestrzeni lat zarówno w H2O.ai (firma), jak i w większej społeczności open source. Możesz zacząć przyczyniać się do H2O, odpowiadając na pytania Stack Overflow lub zgłaszając błędy. Proszę dołącz do nas!

Zespół & 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

Doradcy

Naukowa Rada Doradcza

Stephen BoydRob TibshiraniTrevor Hastie

Systemy, dane, systemy plików i Hadoop

Doug LeaChris PouliotDhruba Borthakur

Inwestorzy

Jishnu Bhattacharjee, Nexus Venture PartnersAnand Babu PeriasamyAnand RajaramanAsh BhardwajRakesh MathurMichael MarksEgbert BiermanRajesh Ambati

.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.