【问题标题】:Use the generated decision tree to predict new inputs使用生成的决策树来预测新的输入
【发布时间】:2012-07-03 19:43:58
【问题描述】:

我想使用accord.net 框架从一组数据中生成决策树。

我阅读了此链接中的指南http://crsouza.blogspot.com/2012/01/decision-trees-in-c.html

我能够通过跟随它来生成树。但是如何使用它来预测新的输入?

我的意思是在创建树之后我想使用它(作为 if-else 语句来了解新输入的输出)

据说我可以将其转换为表达式var expression = tree.ToExpression();,但我该如何使用它呢?

感谢您的帮助

【问题讨论】:

    标签: c# decision-tree accord.net


    【解决方案1】:

    我建议您仔细阅读指南中的示例。在程序的最后,他们用var expression = tree.ToExpression(); 生成expression tree 并编译它

    var func = expression.Compile();

    结果是一个委托,您可以简单地执行该委托以获得给定输入的决定。在示例中,您可以执行类似

    的操作

    bool willPlayTennis = func(new double[] {1.0, 1.0, 1.0, 1.0}) == 1;

    【讨论】:

    • 没错。也可以使用决策树的Compute method 计算给定输入的决策。我同意缺少 Compute 示例;我应该添加它以供进一步参考。
    • @Cesar,绝对需要那个例子。我对贝叶斯的东西做同样的事情,我是否应该使用相同的密码本来准备新的输入并不明显。
    • 为了进一步参考,决策树的文档页面已经更新了一个更好的例子。
    猜你喜欢
    • 2018-10-02
    • 2013-12-21
    • 2020-08-11
    • 2018-06-29
    • 2013-07-11
    • 2020-02-22
    • 2018-03-27
    • 2016-07-12
    • 2017-04-11
    相关资源
    最近更新 更多