跳到内容

节点数量

此文件是 TPOT 库的一部分。

当前版本的 TPOT 由 Cedars-Sinai 开发:- Pedro Henrique Ribeiro (https://github.com/perib, https://www.linkedin.com/in/pedro-ribeiro/) - Anil Saini (anil.saini@cshs.org) - Jose Hernandez (jgh9094@gmail.com) - Jay Moran (jay.moran@cshs.org) - Nicholas Matsumoto (nicholas.matsumoto@cshs.org) - Hyunjun Choi (hyunjun.choi@cshs.org) - Gabriel Ketron (gabriel.ketron@cshs.org) - Miguel E. Hernandez (miguel.e.hernandez@cshs.org) - Jason Moore (moorejh28@gmail.com)

TPOT 的原始版本主要由宾夕法尼亚大学开发:- Randal S. Olson (rso@randalolson.com) - Weixuan Fu (weixuanf@upenn.edu) - Daniel Angell (dpa34@drexel.edu) - Jason Moore (moorejh28@gmail.com) - 以及许多慷慨的开源贡献者

TPOT 是免费软件:您可以根据自由软件基金会发布的 GNU 宽通用公共许可证的条款重新分发和/或修改它,无论是许可证的第 3 版,还是(由您选择)任何更高版本。

分发 TPOT 是希望它有用,但没有任何担保;甚至不包括对适销性或特定用途适用性的默示担保。详情请参阅 GNU 宽通用公共许可证。

您应该已经收到 GNU 宽通用公共许可证的副本以及 TPOT。如果没有,请参阅 https://gnu.ac.cn/licenses/

number_of_nodes_objective(est)

计算 sklearn pipeline 中的叶子节点(输入节点)数量

参数

名称 类型 描述 默认值
est

用于计算节点数量的 pipeline。

必需
源代码位于 tpot/objectives/number_of_nodes.py
def number_of_nodes_objective(est):
    """
    Calculates the number of leaves (input nodes) in an sklearn pipeline

    Parameters
    ----------
    est: GraphPipeline | Pipeline | FeatureUnion | BaseEstimator
        The pipeline to compute the number of nodes from.
    """

    if isinstance(est, GraphPipeline):
        return sum(number_of_nodes_objective(est.graph.nodes[node]["instance"]) for node in est.graph.nodes)
    if isinstance(est, Pipeline):
        return sum(number_of_nodes_objective(estimator) for _,estimator in est.steps)
    if isinstance(est, sklearn.pipeline.FeatureUnion):
        return sum(number_of_nodes_objective(estimator) for _,estimator in est.transformer_list)

    return 1