Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab 受限玻尔兹曼机-数据预处理_Matlab_Machine Learning_Rbm - Fatal编程技术网

Matlab 受限玻尔兹曼机-数据预处理

Matlab 受限玻尔兹曼机-数据预处理,matlab,machine-learning,rbm,Matlab,Machine Learning,Rbm,我在MATLAB上编程,希望使用实值输入的RBMs,比如灰度图像,所以我试着按照Hinton在中所说的做 这些图像在[0255]中具有整数值,并存储在矩阵D中,该矩阵为[numImages x numPixel]。所以我开始对数据进行预处理: 缩放整个数据集,使所有值都在[0,1]中 D = D / 255; 使所有图像的每个像素的平均值为零,所以我从矩阵的每一列中减去它的平均值 imgMean = mean(D); % row vector D = D - repmat(imgMe

我在MATLAB上编程,希望使用实值输入的RBMs,比如灰度图像,所以我试着按照Hinton在中所说的做

这些图像在[0255]中具有整数值,并存储在矩阵D中,该矩阵为[numImages x numPixel]。所以我开始对数据进行预处理:

  • 缩放整个数据集,使所有值都在[0,1]中

    D = D / 255;
    
  • 使所有图像的每个像素的平均值为零,所以我从矩阵的每一列中减去它的平均值

    imgMean = mean(D);    % row vector
    D = D - repmat(imgMean, rows, 1);
    
  • 将整个数据集除以其标准偏差,使每个像素都具有单位方差

    D = D / std(D(:));
    
但当我试图绘制图像时,结果显然非常暗,因为许多值变为负值并被剪裁为零


这可以吗?还是我在预处理过程中犯了错误?

你是如何绘制图像的?我使用的是Hinton自己提供的代码。关于绘图的有趣部分可能是
imagesc(img2[01])其中img2是我想要绘制的,它是作为来自测试集的图像及其重建的“拼贴”构建的。将
imagesc
更改为
imshow
是否有帮助?不幸的是没有。。。结果几乎是一样的