【问题标题】:Problem Python-weka-wrapper3 with GridSearch带有 GridSearch 的问题 Python-weka-wrapper3
【发布时间】:2021-12-08 08:42:09
【问题描述】:

您好,这段代码有问题,我正在尝试进行网格搜索以优化某些属性

from weka.classifiers import GridSearch

grid = GridSearch(options=["-sample-size", "100.0", "-traversal", "ROW-WISE", "-num-slots", "1", "-S", "1"])
grid.evaluation = "CC"
grid.y = {"property": "kernel.gamma", "min": -3.0, "max": 3.0, "step": 1.0, "base": 10.0, "expression": "pow(BASE,I)"}
grid.x = {"property": "C", "min": -3.0, "max": 3.0, "step": 1.0, "base": 10.0, "expression": "pow(BASE,I)"}
cls = Classifier(
    classname="weka.classifiers.functions.SMOreg",
    options=["-K", "weka.classifiers.functions.supportVector.RBFKernel"])
grid.classifier = cls
grid.build_classifier(train)
print("Model:\n" + str(grid))
print("\nBest setup:\n" + grid.best.to_commandline())

我遇到了这个问题:

Failed to get class weka.classifiers.meta.GridSearch

Exception in thread "Thread-0" java.lang.NoClassDefFoundError: weka.classifiers.meta.GridSearch

Caused by: java.lang.ClassNotFoundException: weka.classifiers.meta.GridSearch
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)

---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
/tmp/ipykernel_11771/802912337.py in <module>
      9     options=["-K", "weka.classifiers.functions.supportVector.RBFKernel"])
     10 grid.classifier = cls
---> 11 grid.build_classifier(train)
     12 print("Model:\n" + str(grid))
     13 print("\nBest setup:\n" + grid.best.to_commandline())

NameError: name 'train' is not defined


有什么建议吗?

【问题讨论】:

    标签: python-3.x package weka grid-search failed-installation


    【解决方案1】:

    GridSearchMultiSearch 元分类器可通过 Weka 包获得,它们不是核心 Weka 发行版的一部分。为了使用它们,您需要安装相应的软件包。

    如果您想使用 pww3 安装/管理软件包,请查看examples on packages

    【讨论】:

    • 我已经安装了软件包:packages.install_package("gridSearch") 并且仍然存在问题,我还检查了 items = packages.installed_pa​​ckages() for item in items 的安装是否正确: print(item.name + " " + item.url) 并正确显示所有包
    • 你的变量train,即训练数据集,尚未初始化,即加载数据集。
    猜你喜欢
    • 2018-01-24
    • 2019-05-19
    • 2015-01-26
    • 2019-06-02
    • 2017-02-15
    • 2018-11-30
    • 2013-05-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多