H2O is an Open Source, Distributed, Fast & Scalable Machine Learning Platform: Deep Learning, Gradient Boosting (GBM) & XGBoost, Random Forest, Generalized Linear Modeling (GLM with Elastic Net), K-Means, PCA, Generalized Additive Models (GAM), RuleFit, Support Vector Machine (SVM), Stacked Ensembles, Automatic Machine Learning (AutoML), etc.
H2O being directly embedded by SparklingWater and by some customers (e.g. Visa), we should provide a clean, simple, documented Java API allowing configuration and training of models using algorithms supported by H2O as well as AutoML.
We need to consider reusing as many existing classes as we can (POJOs like model parameter classes, schemas?, ideally RESTful API is mainly URL mapping on top of Java API) and add interfaces on top of model classes when we want to officially expose only a subset of existing public methods: this should allow us to provide this API at low cost and effort.
H2O being directly embedded by SparklingWater and by some customers (e.g. Visa), we should provide a clean, simple, documented Java API allowing configuration and training of models using algorithms supported by H2O as well as AutoML.
We need to consider reusing as many existing classes as we can (POJOs like model parameter classes, schemas?, ideally RESTful API is mainly URL mapping on top of Java API) and add interfaces on top of model classes when we want to officially expose only a subset of existing public methods: this should allow us to provide this API at low cost and effort.