how to sort dlarrays

1 view (last 30 days)
feynman feynman
feynman feynman on 4 Dec 2022
Commented: Xiaoke on 13 Sep 2024
How to sort dlarrays like in
sort(a)
, where a is a numeric array? Is there a way of sorting next(mbq) by specifying some options in the following code?
mbq = minibatchqueue(ads,MiniBatchSize=miniBatchSize,MiniBatchFormat="BC");
next(mbq)

Accepted Answer

Aritra
Aritra on 20 Mar 2023
As per my understanding you are trying to sort a "dlarray" using the "sort" function.
A "dlarray" is a deep learning array designed to store data with optional data format labels for custom training loops. It also enables functions to compute and use derivatives through automatic differentiation.
However, to sort a "dlarray" you must initially convert it to a double array using the "extractdata" function. You can then use the "sort" function to sort the double array. The following code describes the same:
X = randn(1,5);
dlX = dlarray(X);
t = extractdata(dlX);
sort(t);
For detail, please see this MathWorks documentation below for more information on sorting multi-dimensional arrays: https://in.mathworks.com/help/matlab/ref/double.sortrows.html#d124e1400369
  1 Comment
Xiaoke
Xiaoke on 13 Sep 2024
But this cannot be backpropagated like torch.sort, is there any solution?

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!