日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

深度学习笔记8 数据预处理

發(fā)布時(shí)間:2025/4/16 117 豆豆
生活随笔 收集整理的這篇文章主要介紹了 深度学习笔记8 数据预处理 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

數(shù)據(jù)預(yù)處理標(biāo)準(zhǔn)流程

  • 自然灰度圖像
    (1)灰度圖像具有平穩(wěn)特性,對(duì)每個(gè)數(shù)據(jù)樣本分別做均值消減(即減去直流分量)——每個(gè)圖像塊,計(jì)算平均像素值,并將圖像每個(gè)像素點(diǎn)減去均值。每個(gè)圖像塊有一個(gè)不同的均值。
  • x=x-repmat(mean(x,1),size(x,1),1);%x是144*10000,代表10000個(gè)patch

    (2)然后采用PCA/ZCA白化處理,其中的epsilon要足夠大以達(dá)到低通濾波的作用。epsilon值如何取,教程上說(shuō):
    一種檢驗(yàn) epsilon 是否合適的方法是用該值對(duì)數(shù)據(jù)進(jìn)行 ZCA 白化,然后對(duì)白化前后的數(shù)據(jù)進(jìn)行可視化。如果 epsilon 值過(guò)低,白化后的數(shù)據(jù)會(huì)顯得噪聲很大;相反,如果 epsilon 值過(guò)高,白化后的數(shù)據(jù)與原始數(shù)據(jù)相比就過(guò)于模糊。一種直觀上得到 epsilon 大小的方法是以圖形方式畫(huà)出數(shù)據(jù)的特征值,如下圖的例子所示,你可以看到一條”長(zhǎng)尾”,它對(duì)應(yīng)于數(shù)據(jù)中的高頻噪聲部分。你需要選取合適的 epsilon,使其能夠在很大程度上過(guò)濾掉這條”長(zhǎng)尾”,也就是說(shuō),選取的 epsilon 應(yīng)大于大多數(shù)較小的、反映數(shù)據(jù)中噪聲的特征值。

    如原始數(shù)據(jù)是x

    sigma=x*x'./size(x,2); [u,s,v]=svd(sigma); plot(1:size(sigma,1),diag(s));

    顯示原數(shù)據(jù)的特征值曲線:

    可以看到大約第50個(gè)特征值后面的部分要過(guò)濾掉,因此,epsilon>=第50個(gè)特征值就可以了。

    >> s(50,50)ans =0.1080

    可以取epsilon=0.1080,教程上的代碼給的值是epsilon=0.1,看來(lái)這個(gè)方法還是很有效的。

  • 彩色圖像
    (1)對(duì)于彩色圖像,色彩通道間并不存在平穩(wěn)特性。因此首先對(duì)數(shù)據(jù)進(jìn)行特征縮放(使像素值在[0,1]間)。對(duì)于圖像[0,255],可將像素值除以255.
    (2)對(duì)特征進(jìn)行分量均值歸零化
    從下面代碼中可看到是對(duì)同一通道的對(duì)應(yīng)像素點(diǎn)(即特征)進(jìn)行均值歸零。——這屬于特征標(biāo)準(zhǔn)化。
    特征標(biāo)準(zhǔn)化:
    首先計(jì)算每一維度上數(shù)據(jù)的均值(使用全體數(shù)據(jù)),之后再每個(gè)維度上減去該均值。下一步便是在數(shù)據(jù)的每一維度上除以該維度上數(shù)據(jù)的標(biāo)準(zhǔn)差。對(duì)于自然圖像,方差歸一化不用進(jìn)行。
    (3)使用足夠大的epsilon來(lái)做PCA/ZCA。
    ——參考linearDecoderExercise.m
  • % Subtract mean patch (hence zeroing the mean of the patches) meanPatch = mean(patches, 2); %patches' size :192*10000 ,即10000個(gè)8*8*3塊 patches = bsxfun(@minus, patches, meanPatch);% Apply ZCA whitening epsilon=0.1; sigma = patches * patches' / numPatches; [u, s, v] = svd(sigma); ZCAWhite = u * diag(1 ./ sqrt(diag(s) + epsilon)) * u'; patches = ZCAWhite * patches;displayColorNetwork(patches(:, 1:100));

    執(zhí)行:

    plot(1:size(s,1),diag(s))

    結(jié)果:

    要濾掉長(zhǎng)尾,選第十幾個(gè)特征值很合適。可選episilon=s(12,12)=0.0962.練習(xí)上給的是epsilon=0.1,看來(lái)這個(gè)方法還是比較靠譜的。~~呵呵

    白化

  • 基于重構(gòu)的模型
    episilon的選擇就采用上面的方式——濾掉“長(zhǎng)尾”。
  • 基于正交化ICA的模型
    對(duì)基于正交化ICA的模型來(lái)說(shuō),保證輸入數(shù)據(jù)盡可能地白化(即協(xié)方差矩陣為單位矩陣)非常重要。這是因?yàn)?#xff1a;這類模型需要對(duì)學(xué)習(xí)到的特征做正交化,以解除不同維度之間的相關(guān)性(詳細(xì)內(nèi)容請(qǐng)參考 ICA 一節(jié))。因此在這種情況下,epsilon 要足夠小(比如 epsilon = 1e ? 6)。
    在上例采用epsilon=1e-6時(shí),ZCA后的數(shù)據(jù)協(xié)方差矩陣,圖示:

    如果是單位矩陣,就是1對(duì)應(yīng)的一條直線,而現(xiàn)在接近單位矩陣。
  • 注意: 在使用分類框架時(shí),我們應(yīng)該只基于練集上的數(shù)據(jù)計(jì)算PCA/ZCA白化矩陣。需要保存以下兩個(gè)參數(shù)留待測(cè)試集合使用:(a)用于零均值化數(shù)據(jù)的平均值向量;(b)白化矩陣。測(cè)試集需要采用這兩組保存的參數(shù)來(lái)進(jìn)行相同的預(yù)處理。
    例:在linearDecoderExercise.m中,可以看到,把ZCA白化后的patches訓(xùn)練稀疏自編碼器,保存了 ‘ZCAWhite’, ‘meanPatch’。這樣當(dāng)后面在有圖像通過(guò)該稀疏自編碼器提取特征時(shí),就要和訓(xùn)練時(shí)一樣的白化矩陣和平均值。
  • theta = initializeParameters(hiddenSize, visibleSize);% Use minFunc to minimize the functionaddpath minFunc/options = struct;options.Method = 'lbfgs';options.maxIter = 400;options.display = 'on';[optTheta, cost] = minFunc( @(p) sparseAutoencoderLinearCost(p, ...visibleSize, hiddenSize, ...lambda, sparsityParam, ...beta, patches), ...theta, options);% Save the learned features and the preprocessing matrices for use in% the later exercise on convolution and poolingfprintf('Saving learned features and preprocessing matrices...\n');save('STL10Features.mat', 'optTheta', 'ZCAWhite', 'meanPatch');

    總結(jié)

    以上是生活随笔為你收集整理的深度学习笔记8 数据预处理的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。