tf.raw_ops.BoostedTreesCalculateBestGainsPerFeature
Вычисляет выигрыши для каждого признака и возвращает наилучшую возможную информацию о разбиении для признака.
tf.raw_ops.BoostedTreesCalculateBestGainsPerFeature(
node_id_range, stats_summary_list, l1, l2, tree_complexity, min_node_weight,
max_splits, name=None
)
Информация о разбиении — это наилучший порог (идентификатор корзины), выигрыши и вклады левого/правого узла на узел для каждого признака.
Возможно, что не все узлы могут быть разделены по каждому признаку. Следовательно, список возможных узлов может отличаться между признаками. Поэтому мы возвращаем node_ids_list для каждого признака, содержащий список узлов, которые этот признак может использовать для разбиения.
Таким образом, вывод представляет собой наилучшее разбиение по признакам и узлам, так что его необходимо объединить позже, чтобы получить наилучшее разбиение для каждого узла (среди всех возможных признаков).
Длина списков вывода одинакова, num_features. Форматы вывода совместимы таким образом, что первое измерение всех тензоров всех списков одинаковое и равно числу возможных узлов разбиения для каждого признака.
| Аргументы | |
|---|---|
node_id_range | A Tensor типа int32. Тензор ранга 1 (форма=[2]) для указания диапазона [начало, конец) идентификаторов узлов для обработки в stats_summary_list. Узлы итерируются между двумя узлами, указанными в тензоре, как в for node_id in range(node_id_range[0], node_id_range[1]) (обратите внимание, что последний индексный узел node_id_range[1] является исключительным). |
stats_summary_list | Список не менее 1 Tensor объектов типа float32. Список тензоров ранга 3 (#форма=[макс_разбиений, корзина, 2]) для суммарного статистического отчета (градиент/гессиан) на узел по корзинам для каждого признака. Первое измерение тензора — максимальное количество разбиений, и поэтому не все элементы будут использованы, но будут использованы только индексы, указанные node_ids. |
l1 | A Tensor типа float32. Коэффициент регуляризации l1 для весов листа, основанный на экземпляре. |
l2 | A Tensor типа float32. Коэффициент регуляризации l2 для весов листа, основанный на экземпляре. |
tree_complexity | A Tensor типа float32. Коррекция выигрыша, основанная на листе. |
min_node_weight | A Tensor типа float32. Минимальное среднее значение гессианов в узле, необходимое для того, чтобы узел считался для разбиения. |
max_splits | A int это >= 1. количество узлов, которые могут быть разделены в целом дереве. Используется как измерение выходных тензоров. |
name | Имя операции (необязательно). |
| Возвращаемое значение | |
|---|---|
Кортеж Tensor объектов (node_ids_list, gains_list, thresholds_list, left_node_contribs_list, right_node_contribs_list). | |
node_ids_list | Список с длиной, равной stats_summary_list, Tensor объектов типа int32. |
gains_list | Список с длиной, равной stats_summary_list, Tensor объектов типа float32. |
thresholds_list | Список с длиной, равной stats_summary_list, Tensor объектов типа int32. |
left_node_contribs_list | Список с длиной, равной stats_summary_list, Tensor объектов типа float32. |
right_node_contribs_list | Список с длиной, равной stats_summary_list, Tensor объектов типа float32. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.3/api_docs/python/tf/raw_ops/BoostedTreesCalculateBestGainsPerFeature