How to make code to split, compute mean, apply Softmax

2 次查看(过去 30 天)
I have 90 datasets (9 data x 10 labels)
1. split the dataset into support(80dataset) and query(10dataset)
2. Compute each mean of examples(9 means)
3. Compute the Euclidean distance between each mean and query(10dataset)
4. apply Softmax and calculate probabilities
5. compute accuracy

采纳的回答

Gaurav Garg
Gaurav Garg 2020-3-20
编辑:Gaurav Garg 2020-3-20
Hi,
You can use splitapply function to split your whole data into 9 groups and apply the mean function to each group. It would return you an array of 9 elements, where each element is a mean to one group. You can now, carry on with the third step to compute the Euclidean distance between each mean and the query set, and proceed with steps 4 and 5.
Algo:
Y=splitapply (mean, X, G); % G is a vector of group numbers, X is the whole data
for i=1:8
% compute Euclidean distance between Y[i] and query dataset
end
% Steps 4 and 5
  3 个评论
Sindar
Sindar 2020-3-23
If your dataset is X and the last column is not part of the data:
G = findgroups(X(:,end));
Y = splitapply(mean, X(:,1:end-1), G);

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by