Как я могу получить результат дерева случайного леса в H2O? - PullRequest
0 голосов
/ 29 августа 2018

Я использую случайный лес в H2O. Но я не понимаю значения параметров в возвращаемом результате. Это мои исходные данные. enter image description here

Мне бы хотелось увидеть результаты, подобные этим: (Я установил количество деревьев = 3 и столбец ответа = "Воспроизвести".)

tree1:
Wind = false: yes {no=0, yes=6}
Wind = true
|   Temperature > 77.500: no {no=2, yes=0}
|   Temperature ≤ 77.500: yes {no=1, yes=5}

tree2:
Humidity > 92.500: no {no=3, yes=0}
Humidity ≤ 92.500: yes {no=2, yes=9}

tree3:
Wind = false: yes {no=0, yes=6}
Wind = true
|   Temperature > 77.500: no {no=2, yes=0}
|   Temperature ≤ 77.500: yes {no=1, yes=5}

Но у меня есть модель, которая содержит много параметров, но результаты. Это мой код и полученные результаты:

    DRFParametersV3 drfParams = new DRFParametersV3();
    drfParams.trainingFrame = H2oApi.stringToFrameKey("train");
    drfParams.validationFrame = H2oApi.stringToFrameKey("test");
    drfParams.ntrees=3;
    System.out.println("drfParams: " + drfParams);

    ColSpecifierV3 responseColumn = new ColSpecifierV3();
    responseColumn.columnName = ATT_LABEL_GOLF;
    drfParams.responseColumn = responseColumn;
    System.out.println("About to train DRF. . .");

    DRFV3 drfBody = h2o.train_drf(drfParams);
    System.out.println("drfParams: " + drfBody);

    JobV3 job = h2o.waitForJobCompletion(drfBody.job.key);
    System.out.println("DRF build done.");

    ModelKeyV3 modelKey = (ModelKeyV3)job.dest;
    ModelsV3 models = h2o.model(modelKey);
    System.out.println("models: " + models);
    System.out.println("models'size: " + models.models.length);

    DRFModelV3 model = (DRFModelV3)models.models[0];
    System.out.println("new DRF model: " + model);

И результат "DRFModelV3" настолько запутан. Где сборка "лес" от h2o? enter image description here

1 Ответ

0 голосов
/ 31 августа 2018

Один из вариантов - загрузить MOJO, загрузить его и использовать функцию _computeGraph для объекта MOJO. Взгляните на H2O github repo , чтобы узнать из кода.

пожалуйста, ознакомьтесь с документацией по POJO и MOJO здесь

Вот дополнительный код, который может помочь: https://github.com/h2oai/h2o-3/blob/43f8ab952a69a8bc9484bd0ffac909b6e3e820ca/h2o-algos/src/test/java/hex/XValPredictionsCheck.java#L59-L69

...