小编liz*_*isk的帖子

如何在scikit-learn中为OneVsRestClassifier设置类权重?

我需要一个SVM作为多标签分类器,所以我决定使用OneVsRestClassifier包装器.然而,问题出现了训练集变得非常不平衡:对于给定的类,有更多的负面例子而不是正面.这可以通过class_weight参数来解决,但如果我在包裹在OneVsRestClassifier分类使用它,我得到一个错误:

from sklearn.svm import LinearSVC
from sklearn.multiclass import OneVsRestClassifier

weights = {'ham': 1, 'eggs': 2}
svm = OneVsRestClassifier(LinearSVC(class_weight=weights))

X = [[1, 2], [3, 4], [5, 6], [7, 8], [9, 0]]
Y = [['ham'], [], ['eggs', 'spam'], ['spam'], ['eggs']]

svm.fit(X, Y)
Run Code Online (Sandbox Code Playgroud)
Traceback (most recent call last):
  File "", line 1, in 
  File "/usr/local/lib/python2.7/site-packages/sklearn/multiclass.py", line 197, in fit
    n_jobs=self.n_jobs)
  File "/usr/local/lib/python2.7/site-packages/sklearn/multiclass.py", line 87, in fit_ovr
    for i in range(Y.shape[1]))
  File "/usr/local/lib/python2.7/site-packages/sklearn/externals/joblib/parallel.py", line 514, in __call__
    self.dispatch(function, args, kwargs)
  File "/usr/local/lib/python2.7/site-packages/sklearn/externals/joblib/parallel.py", line 311, …
Run Code Online (Sandbox Code Playgroud)

scikit-learn

2
推荐指数
1
解决办法
4698
查看次数

使用`--without-threads`选项,ImageMagick线程是否安全?

我使用多个线程通过ImageMagick加载图像.配置--without-threads选项时是否安全?

multithreading imagemagick image-processing thread-safety

2
推荐指数
1
解决办法
1468
查看次数

嵌套模板参数以及函数参数的cv和ref限定符

我有一个看起来像这样的功能:

template <typename... A, typename... B>
void foo(Foo<A...>&, Foo<B...>&);
Run Code Online (Sandbox Code Playgroud)

问题是,我希望它接受两个参数的const/non-const版本中的任何类型的引用(lvalue/rvalue).

这已经是16种组合,显然手动编写它们太多了.

我能看到的唯一解决方案是删除嵌套类型参数:

template <typename X, typename Y>
void foo(X&&, Y&&);
// + some SFINAE to enforce that X, Y are Foo-s
Run Code Online (Sandbox Code Playgroud)

这是不可接受的,因为我确实需要知道这些嵌套类型A...B....我该怎么办?

c++ templates variadic-templates c++11

2
推荐指数
1
解决办法
108
查看次数

使用 C++11 异步功能的管道数据流

我正在尝试实现具有以下功能的多线程管道数据流框架:

  1. 流水线可以被描述为一个无环的有向图。每个节点执行一些处理并具有任意数量的任意类型的输入和一个任意类型的输出。

  2. 对于每个给定的输入数据实例,每个节点不应执行多次,之后应缓存结果。尽管此缓存不应该在内存中持续所需的时间更长,并且应该在任何其他节点不再需要时将其删除。

  3. 每个节点都应该支持惰性求值,即应该只在其他节点需要它的输出时才执行。

是否可以通过使用 C++11 多线程特性来实现这一点,尤其是std::future,std::promisestd::async? 任何人都可以提供线索吗?

c++ multithreading asynchronous pipeline dataflow

1
推荐指数
1
解决办法
1642
查看次数

TBB流程图条件执行

可以动态地控制TBB流图中的执行路径,使用节点的输出作为条件变量来确定是否应该启动另一个节点?

c++ multithreading asynchronous tbb tbb-flow-graph

1
推荐指数
1
解决办法
1218
查看次数

C++悬空const引用临时对象

为什么以下代码中存在悬空引用?我认为对const的引用总是将临时的寿命延长到它们的范围.

boost::filesystem::recursive_directory_iterator it(dir_name);
const std::string& extension = it->path().extension().string();
std::cout << extension << std::endl; // error, dangling reference
Run Code Online (Sandbox Code Playgroud)

c++ reference boost-filesystem

1
推荐指数
1
解决办法
393
查看次数