Установить пороги в дереве решений?

Может ли кто-нибудь объяснить мне, какова цель функции setThresholds() для деревьев с градиентным усилением и случайного леса в Apache Spark? На официальном веб-сайте Apache Spark нет документации или примера, где используется эта функция, и мне любопытно посмотреть, смогу ли я использовать ее для своей конкретной цели. Устанавливает ли эта функция пороги для внутренних решений, которые принимает дерево? Например, для числового столбца использование setThresholds(5.0) эквивалентно if(column < 5.0)? или я ошибаюсь?


person Guillermo Herrera    schedule 07.08.2017    source источник


Ответы (1)


Похоже, вы не проверили правильные части документация.

Значение thresholds определяется следующим образом:

Param для Thresholds в многоклассовой классификации, чтобы настроить вероятность предсказания каждого класса. Массив должен иметь длину, равную количеству классов, со значениями >= 0. Прогнозируется класс с наибольшим значением p/t, где p — исходная вероятность этого класса, а t — порог класса.

И вы заметили, что это фактически пороги во множественном числе, а не только один порог.

Вы можете установить пороги, используя setThresholds(foo), где foo — значения порогов.

person eliasah    schedule 08.08.2017
comment
Здесь его нет: spark.apache.org/docs/latest/api/java/org/apache/spark/ml/ - person Guillermo Herrera; 08.08.2017
comment
Такое впечатление, что вся поддержка дается только Scala или Python, а не Java. Большинство методов вообще не объясняются в документации Java API. - person Guillermo Herrera; 08.08.2017
comment
Верно. Я не замечал этого раньше. Я просто никогда не использую Java API. - person eliasah; 08.08.2017