セルの中身に対して正規化する関数はありますか?

 Réponse acceptée

Kenta
Kenta le 22 Juil 2020

0 votes

datavarsというところを'ResponseImage'としてはどうでしょう?

6 commentaires

donna
donna le 22 Juil 2020
今回もありがとうございます.
試してみたのですができませんでした...(泣)
Kenta
Kenta le 22 Juil 2020
Modifié(e) : Kenta le 22 Juil 2020
N = normalize(patchesRead1,'DataVariables','ResponseImage');
とするとどういうエラーを返しますか?
そもそも、添付の画像を拝見するとSという構造体の中にpatchesRead1がある気がするのですが、
patchesRead1という変数に対して実行しなければなりません。
donna
donna le 22 Juil 2020
以下のようなエラーがでます...
構造体Sについてよくわからなかったので消してしまったのですが、まだpatchesRead1は構造体の中にあるということでしょうか...
Kenta
Kenta le 22 Juil 2020
すいません、この情報からだとよくわかりません。patchesRead1.matを添付していただけますか?
Kenta
Kenta le 22 Juil 2020
clear;clc
load patchesRead1
% N = normalize(patchesRead1,'DataVariables','ResponseImage');
B = cellfun(@myL2norm,patchesRead1.ResponseImage,'UniformOutput',false);
function output=myL2norm(input)
output=normalize(single(input),'norm');
end
データの方添付していただきありがとうございます。patchesRead1.ResponseImageという変数がセル配列で入っているので、セル配列の変数に対して、そのセルの中を対象に指定した関数を実行するcellfunというものがあります。それを使うと上のようにして、L2 normで正規化した値を返します。
ただ、深層学習に利用したいとなると、もともと、深層学習の入力層で正規化方法を指定できるのであまりこの操作は必要ないかもしれません。
Kenta
Kenta le 22 Juil 2020
よかったです。ちなみに、ただの興味なのですが、ここでsparse filterを利用する理由や目的について教えていただけるとうれしいです。

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Resizing and Reshaping Matrices dans Centre d'aide et File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!