from mempamal.datasets import iris X, y = iris.get_data() from sklearn.linear_model.logistic import LogisticRegression from sklearn.preprocessing.data import StandardScaler from sklearn.cross_validation import StratifiedKFold from sklearn.pipeline import Pipeline from sklearn.metrics import f1_score s1 = StandardScaler(with_mean=True, with_std=True) s2 = LogisticRegression() p = [("scaler", s1), ("logit", s2)] est = Pipeline(p) from mempamal.configuration import JSONify_estimator, JSONify_cv, build_dataset from mempamal.examples.parameters_grid import make_log_grid from mempamal.workflow import create_wf, save_wf method_conf = JSONify_estimator(est, out="./est.json") cv_conf = JSONify_cv(StratifiedKFold, cv_kwargs={"n_folds": 5}, score_func=f1_score, inner_cv=StratifiedKFold, inner_cv_kwargs={"n_folds": 5}, inner_score_func=f1_score, stratified=True, out="./cv.json") grid = make_log_grid(X, y) dataset = build_dataset(X, y, method_conf, cv_conf, ".", grid=grid) wfi = create_wf(dataset['folds'], cv_conf, method_conf, ".", verbose=True) wf = save_wf(wfi, "./workflow.json", mode="soma-workflow") from soma_workflow.client import WorkflowController import time import json import sklearn.externals.joblib as joblib controller = WorkflowController() wf_id = controller.submit_workflow(workflow=wf, name="second example") while controller.workflow_status(wf_id) != 'workflow_done': time.sleep(2) print(joblib.load('./final_res.pkl'))