小编Dan*_*ong的帖子

在MATLAB中跨并行调用创建随机矩阵时的可重现结果

我想创建一些随机矩阵,但它们非常适合内存,所以我想找到一种方法在计算机上重现它们,这样当我需要将它们发送到另一台机器时,我会只需要发送代码.这是我想要的方式:

num_of_iters = 10;
K = 200;
for iter = 1:num_of_iters
    parfor j = 1:K
        R = make_random_R(iter,j,.....);
        % Do something
    end
end
Run Code Online (Sandbox Code Playgroud)

我担心的是parfor循环,无论parfor中的索引顺序如何,我都需要能够重现随机矩阵.所以我决定使用MATLAB流:

  • 保存全局流
  • 创建一个新流,设置种子和适当的子流(取决于iter和j)
  • 算一算
  • 放回全局流

这是我的代码(变量n,p,R_type控制随机矩阵是如何形成的,但它们并不重要,K与上面的变量相同,我需要它在行中substream_id = (iter - 1) * K + j;):

function [R] = make_random_R(iter,j,n,K,p,R_type)
% Data as code
% R_type: 'posneg' or 'normdist'
% 1 <= iter <= 100
% 1 <= j <= K
% K: Number of classifiers
% n: Number of observations

assert(strcmp(R_type,'posneg') || strcmp(R_type,'normdist'),'R_type must be posneg …
Run Code Online (Sandbox Code Playgroud)

random matlab matrix

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

如何自定义nvidia-smi的输出以显示PID用户名

nvidia-smi的正常输出如下:

Thu May 10 09:05:07 2018       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 384.111                Driver Version: 384.111                   |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 108...  Off  | 00000000:0A:00.0 Off |                  N/A |
| 61%   74C    P2   195W / 250W |   5409MiB / 11172MiB |    100%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      | …
Run Code Online (Sandbox Code Playgroud)

cuda resource-monitor

7
推荐指数
3
解决办法
4121
查看次数

人们是否训练了早期停止的对象检测方法?他们的设置是什么?

我正在研究一些与对象检测方法(YOLOv3、Faster-RCNN、RetinaNet 等)相关的东西,我需要在 VOC2007 和 VOC2012 上进行训练(当然使用预训练模型)。然而,当我阅读相关论文时,我没有看到人们描述他们是使用早期停止训练还是仅使用固定次数的迭代进行训练。如果他们使用提前停止,在停止之前设置了多少步?因为当我在停止前尝试 100 步时,结果非常糟糕。请帮助我,非常感谢。

object-detection object-detection-api yolo faster-rcnn

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

如何调整图像分割掩模的大小?

我为每个图像都有一个二进制掩码,每个掩码像素的值为 0 或 255。现在,因为我的图像分割需要固定大小的图像,所以我必须调整图像和掩码的大小。但是,当我调整图像大小时,掩码中会有一些位置的值大于 0 但小于 255。我如何知道要保留哪一个?因为图书馆要求只能有0或255。请帮助我,非常感谢。

computer-vision image-segmentation deep-learning conv-neural-network semantic-segmentation

6
推荐指数
2
解决办法
5172
查看次数

Netbeans中的大规模在线分析:无法访问检测环境

我正在尝试在Netbeans中运行大量在线分析(MOA)的演示代码。这是代码:

package javaapplication10_moa;

import moa.classifiers.trees.HoeffdingTree;
import moa.classifiers.Classifier;
import moa.core.TimingUtils;
import moa.streams.generators.RandomRBFGenerator;
import com.yahoo.labs.samoa.instances.Instance;
import java.io.IOException;


/**
 *
 * @author LENOVO
 */
public class JavaApplication10_MOA {

        public JavaApplication10_MOA(){            
        }

        public void run(int numInstances, boolean isTesting){
                Classifier learner = new HoeffdingTree();
                RandomRBFGenerator stream = new RandomRBFGenerator();
                stream.prepareForUse();

                learner.setModelContext(stream.getHeader());
                learner.prepareForUse();

                int numberSamplesCorrect = 0;
                int numberSamples = 0;
                boolean preciseCPUTiming = TimingUtils.enablePreciseTiming();
                long evaluateStartTime = TimingUtils.getNanoCPUTimeOfCurrentThread();
                while (stream.hasMoreInstances() && numberSamples < numInstances) {
                        Instance trainInst = stream.nextInstance().getData();
                        if (isTesting) {
                                if (learner.correctlyClassifies(trainInst)){
                                        numberSamplesCorrect++; …
Run Code Online (Sandbox Code Playgroud)

java netbeans machine-learning

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

如何找到具有邻接矩阵表示的有向图的通用汇

我正在做一个练习(自学):“展示如何确定一个有向图 G 是否包含一个通用链接——一个具有入度 (V-1)(V 是顶点数)和出度的顶点——时间为 O(V) 的 0 度,给定 G 的邻接矩阵。我在这里编写了代码:

    int UniversalSink(const int *a, int N)
{
    int i,j,i1,j1,q;
    i=0;


    i=0;
    q=YES;
    j=-1;
    do
    {
    j++;
    if (j==N)
        break;

    while ( (*(a+i*MAX+j)) ==0 )
    {
        j++;
        if (j==N)
        {

        break;
        }
    }
    if (j==N)
        break;
    q= YES;

    for (; i<j; i++)
        if ( (*(a+i*MAX+j)) ==0 )
        {
           i=j,j=i-1;
           q= NO;
           break;
        }
    if (q==NO)
        continue;
    q=YES;

    /*
    for (i=0; i<=j; i++ )
        if (a[j][i] ==1 )
        {
        i=j;
        q=NO; …
Run Code Online (Sandbox Code Playgroud)

c algorithm graph

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

如果重新塑造一次然后重新塑造回原始大小,Matlab矩阵会改变吗?

基本上我有一个原始的128 x 128 x 3矩阵,它描述了一个RGB图像(128*128点,每个点分别是一个包含红色,绿色和蓝色强度的1x3矢量),我也从中选择了16个点(这个是容易的部分),现在我想在128 x 128 x 3矩阵和16点之间进行成对距离计算.

但问题是Matlab的功能,"pdist2"只需要2个大小为M1 x N和M2 x N的矩阵而不是其他任何东西,所以我打算将128 x 128 x 3矩阵转换为(128*128) x 3一个.稍后,在使用新变换的矩阵进行一些计算之后,我需要将其转换回原始大小以显示图像并检查结果.但我不确定这些元素是否会保留在原位或是否会被拖曳?请帮助我非常感谢!

matlab matrix reshape

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

使用C中的函数指针重新启动计算机

当我遇到一个在执行时重新启动计算机的程序时,我正在学习C语言中的函数指针.

void (*f) (void);
f=(void (*)(void) MK_FP(0xFFFF,0x0000);
f();
Run Code Online (Sandbox Code Playgroud)

(void(*)(void))部分不在提供的原始文本中,我不得不进行此添加以获取要编译的代码.这是如何运作的?

非常感谢你.

c function-pointers

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