从幕府Shareboost mod获取重量参数

2024-07-04 14:52:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个训练有素的ShareBoost模型。如何获得模型的权重参数/向量?你知道吗

我试图得到单独的线性机并提取单独的权重向量,但与linear svm不同的是,它似乎没有get_w()方法。你知道吗

此外,即使C++ SysBooad类是^ {}的子类,从{{CD4>}(参见docs)获得的^ {< CD3>}对象似乎没有可用的参数。你知道吗

下面的代码是我尝试过的。你知道吗

num_machines = shareboost.get_num_machines()
# num_machines = 2

lm0 = shareboost.get_machine(0)
p0 = lm0.m_parameters

# The following method does not exist
p0.get_parameter(0)

Tags: 方法模型参数get线性向量num权重
1条回答
网友
1楼 · 发布于 2024-07-04 14:52:22
<>在使用C++ API的情况下,可以得到如下的权重向量:

auto lm = (CLinearMachine*)shareboost->get_machine(0);
lm->get_w();

由于您当前使用的是python API,因此只有在使用shogun的新API(仅在development branch atm中可用)时,才有可能:

lm0 = shareboost.get_machine(0)
weights = lm0.get_real_vector("w")

有关如何使用新API的更多示例,请参见: http://shogun.ml/examples/nightly/examples/binary/linear_support_vector_machine.html

相关问题 更多 >

    热门问题