shuffle

Данные о тасовании в мини-очереди

    Синтаксис

    Описание

    shuffle(mbq) сбрасывает данные, содержащиеся в mbq и перетаскивает его в случайный порядок. После тасования следующая функция возвращает различные мини-пакеты. Используйте этот синтаксис, чтобы сбросить и перетасовать данные после каждой эпохи обучения в пользовательском цикле обучения.

    Примеры

    свернуть все

    shuffle функция сбрасывает и перетасовывает minibatchqueue объект, так что вы можете получить данные из него в случайном порядке. В отличие от этого, reset функция сбрасывает minibatchqueue объект - начало базового datastore.

    Создайте minibatchqueue объект из datastore.

    ds = digitDatastore;
    mbq = minibatchqueue(ds,'MinibatchSize',256)
    mbq = 
    minibatchqueue with 1 output and properties:
    
       Mini-batch creation:
               MiniBatchSize: 256
            PartialMiniBatch: 'return'
                MiniBatchFcn: 'collate'
        DispatchInBackground: 0
    
       Outputs:
                  OutputCast: {'single'}
             OutputAsDlarray: 1
             MiniBatchFormat: {''}
           OutputEnvironment: {'auto'}
    

    Получите первый мини-пакет данных.

    X1 = next(mbq);

    Итерация по остальной части данных в minibatchqueue объект. Использовать hasdata проверить, доступны ли данные.

    while hasdata(mbq)
        next(mbq);
    end

    Тасуйте minibatchqueue и получите первый мини-пакет после тасования очереди.

    shuffle(mbq);
    X2 = next(mbq);

    Повторите итерацию оставшихся данных.

    while hasdata(mbq)
        next(mbq);
    end

    Сбросьте minibatchqueue и получите первый мини-пакет после сброса очереди.

    reset(mbq);
    X3 = next(mbq);

    Проверьте, получены ли мини-пакеты после сброса или тасования minibatchqueue объект аналогичен первому мини-пакету после minibatchqueue создается объект.

    isequal(X1,X2)
    isequal(X1,X3)
    ans = 
       0
    ans = 
       1
    

    reset функция возвращает minibatchqueue объект к началу базовых данных, так что next функция возвращает мини-пакеты в том же порядке каждый раз. В отличие от этого, shuffle функция перетасовывает базовые данные и создает рандомизированные мини-пакеты.

    Входные параметры

    свернуть все

    Очередь мини-пакетов в виде minibatchqueue объект.

    Введенный в R2020b