小编kcc*_*c__的帖子

sklearn使用joblib转储模型,转储多个文件.哪一个是正确的型号?

我做了一个示例程序来使用sklearn训练SVM.这是代码

from sklearn import svm
from sklearn import datasets
from sklearn.externals import joblib

clf = svm.SVC()
iris = datasets.load_iris()
X, y = iris.data, iris.target
clf.fit(X, y)

print(clf.predict(X))
joblib.dump(clf, 'clf.pkl') 
Run Code Online (Sandbox Code Playgroud)

当我转储模型文件时,我得到了这么多的文件.:

['clf.pkl','clf.pkl_01.npy','clf.pkl_02.npy','clf.pkl_03.npy','clf.pkl_04.npy','clf.pkl_05.npy','clf. pkl_06.npy','clf.pkl_07.npy','clf.pkl_08.npy','clf.pkl_09.npy','clf.pkl_10.npy','clf.pkl_11.npy']

如果我做错了,我很困惑.或者这是正常的吗?什么是*.npy文件.为什么有11个?

python machine-learning scikit-learn joblib

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

Hessian矩阵的图像

我想知道图像的Hessian矩阵提供了哪些信息?它是否提供稳定点的信息?什么是Hessian矩阵用于?

matlab opencv image-processing computer-vision hessian-matrix

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

没有全连接层的卷积神经网络分类器

我正在开展一个项目来检测以下类别{汽车、卡车、公共汽车},然后提取相应的车牌。

这个问题是关于各个类别的检测。我使用了传统方法,其中我将 HOG 特征与线性 SVM 结合使用,但它的准确性较低。我正在尝试研究 CNN 以进行基于深度学习的检测,该检测已显示出更高的准确性。像R-CNN这样的论文非常有表现力,我完全理解它是如何工作的。

最近YOLO模型显示出非常快速的检测,这非常有趣。如果我猜对了,那么 YOLO 大致类似于DPM

一般YOLO有24个卷积层和2个全连接层。NVIDIA DIGITS基于这篇 YOLO 论文实现了一个 DetectNet。我感到困惑的是 NVIDIA 的 DetectNet 没有任何全连接层(Caffe 模型文件)。相反,最后一个卷积层的输出通过一个降维卷积层,我认为它输出了对拥有对象的一些信心。

问题 1

但我不明白一个卷积层如何取代 FC-Layers 并学习预测对象?对此的详细解释将非常有帮助。

object-detection convolution computer-vision deep-learning caffe

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

如何在Contour OpenCV中打印所有坐标

我正在使用图像轮廓检测。我可以轻松打印轮廓坐标,但是我对打印轮廓内所有像素的坐标很感兴趣。例如,如果我得到的轮廓为4 x 4像素,那么我不仅要打印轮廓,还要打印所有包含在opencv中的像素的坐标

opencv contour

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

Opencv中的视觉词袋

我在opencv中使用BOW来聚类可变大小的功能.但是有一件事从opencv的文档中不清楚,我也无法找到这个问题的原因:

假设:字典大小= 100.

我使用surf来计算特征,每个图像都有可变大小的描述符,例如:128 x 34,128 x 63等.现在在BOW中,每个都是聚类的,我得到一个固定的描述符大小为128 x 100的图像.我知道100是使用kmeans聚类创建的集群中心.

但我感到困惑的是,如果图像有128 x 63个描述符,那么它将如何聚类成100个聚类,这是不可能使用kmeans,除非我将描述符矩阵转换为1D.转换为1D会丢失单个关键点的有效128维信息吗?

我需要知道如何操纵描述符矩阵以从仅63个特征中获得100个cluter中心.

opencv feature-extraction computer-vision surf k-means

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

Android Instrumentation测试:未注册任何仪器错误

我正在尝试使用Espresso编写Android Instrumented测试。运行测试时出现此错误

java.lang.IllegalStateException:未注册任何工具!必须在注册工具下运行。

我无法理解此错误的含义。

我将简要解释我在测试中正在做的事情。我跟着样品由谷歌并给予EspressoTesting教程

@SmallTest
@RunWith(AndroidJUnit4.class)
public class ActivityInputTest {

   @Rule
   public ActivityTestRule<ActivityInput> aiRule = new ActivityTestRule<>(ActivityInput.class);


   @Before
   public void setUp(){}
}
Run Code Online (Sandbox Code Playgroud)

当我运行测试时,错误发生在注解上@Rule。我可以得到一些解释为什么会发生这种情况,或者背后是什么问题吗?我对工作代码不感兴趣,但对问题背后的实际问题更感兴趣。

java android android-studio android-espresso

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

数组索引选择C#

我有一个int类型的长度为300的数组.大多数元素是0,我想得到第一个元素的索引大于0.我怎么能实现这一点.

谢谢

c# arrays

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

如何避免在混淆矩阵中显示零值

我使用此链接中的代码在Matlab中绘制了一个混淆矩阵.

但是,只要单元格上有零,它仍会显示.如何消除0.00细胞上的印刷?

我的混淆矩阵的样本

在此输入图像描述

matlab matlab-figure

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

Boost无向图合并顶点

我正在使用 Boost C++ 库来构建一个邻接表来表示一个无向图。图上的每条边都与各自的权重相关联,我想检查权重是否大于某个阈值,而不是将两个顶点合并在一起。

我如何合并:

  • 对于要合并的顶点,收集进出该顶点的所有边并将这些边指向新顶点
  • 清除合并顶点
  • 移除顶点

我的问题: 我使用一个简单的程序首先构造算法,然后再将其用于目的。在这个程序中,我使用简单的家谱方法来执行上述步骤。当我使用函数remove_vertex(vertex, Graph)删除顶点时, 出现分段错误。

  • 我无法弄清楚一旦顶点被移除,图形是否会自动更新其结构?

我的 C++ 代码如下:

#include <boost/graph/adjacency_list.hpp>
#include <boost/tuple/tuple.hpp>
#include <boost/config.hpp>
#include <iostream>
#include <vector>
#include <string>

using namespace std;

typedef boost::property<boost::vertex_index_t, int> vertex_property;
typedef boost::property<boost::edge_weight_t, float> edge_property;
typedef typename boost::adjacency_list <boost::vecS,
                                    boost::vecS,
                                    boost::undirectedS,
                                    vertex_property,
                                    edge_property> Graph;
void boostSampleGraph() {

enum family {
  Jeanie, Debbie, Rick, John, Amanda, Margaret, Benjamin, N };
const char *name[] = { "Jeanie", "Debbie", "Rick", "John", "Amanda",
                       "Margaret", "Benjamin", "N"
 }; …
Run Code Online (Sandbox Code Playgroud)

c++ algorithm boost graph boost-graph

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

使用cuda cuFFT从复数转换为实数时输出不正确

我使用cuda 7.5版cufft来执行一些FFT和逆FFT.使用cufftExecC2R(.,.)函数执行逆FFT时出现问题.

实际上,当我使用a batch_size = 1时,cufftPlan1d(,)我得到了正确的结果.但是,当我增加批量大小时,结果不正确.

我粘贴一个示例最小代码来说明这一点.我会快速创建它,请忽略代码的肮脏.

  #include <cufft.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <ctime>
#include <iostream>

typedef float2 Complex;

void iTest(int argc, char** argv);

#define SIGNAL_SIZE  9
#define BATCH_SIZE 2

int main(int argc, char** argv) {

    iTest(argc, argv);
    return 0;

}

void iProcess(Complex *x, double *y, size_t n) {

    cufftComplex *deviceData;
    cudaMalloc(reinterpret_cast<void**>(&deviceData),
               SIGNAL_SIZE * BATCH_SIZE * sizeof(cufftComplex));
    cudaMemcpy(deviceData, x, SIGNAL_SIZE * sizeof(cufftComplex) * BATCH_SIZE,
               cudaMemcpyHostToDevice);

    cufftResult cufftStatus;
    cufftHandle …
Run Code Online (Sandbox Code Playgroud)

c++ cuda fft cufft

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

C++模板的Class和Typename之间的区别

我对c ++模板略感困惑.

考虑下面的模板

template<class TYPE>
void function(TYPE data)
Run Code Online (Sandbox Code Playgroud)

template<typename TYPE>
void function(TYPE data)
Run Code Online (Sandbox Code Playgroud)

我的困惑正是用作变量标识或类型的typename和class之间的区别.

c++ templates c++11

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