How to replace the one-hot-encoded label with a (Gaussian) distribution in the training of a CNN for classification ?
10 ビュー (過去 30 日間)
表示 古いコメント
Hi there,
I am trying to train a CNN for classification using imagedatastore, in which the cross entropy loss needs to be calculated between the softmax output and a (Gaussian) distribution instead of its one-hot-encoded version of the label.
In case I need to customize Matlab functions such that my own function (that converts an original label into a distribution) runs instead of 'onehotencode', where (or in which function) does this 'onehotencode' run ?
There may be other simpler ways to achieve my goal. I would greatly appreciate if anyone could help me on this.

Best regards,
HK
0 件のコメント
回答 (1 件)
yanqi liu
2022 年 1 月 24 日
yes,sir,may be just compute vector,such as
class_info = [1; 2; 2; 1]
class_num = length(unique(class_info));
Y = zeros(length(class_info), class_num);
for i = 1 : length(class_info)
Y(i, class_info(i)) = 1;
end
Y
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!