Merger¶
Warning
Документация к модулю находится в разработке.
Merger – это наследник Provider, задача которого – при необходимости выдавать пачку данных, взятых из нескольких датасетов. Он может это делать, формируя пачку данных в нужных пропорциях из исходных датасетов.
__init__¶
def __init__(self, datasets, labelIds=None, numofthreads=4)
Создаёт Merger для указанных датасетов. Можно указать, какие лейблы каждому из датасетов необходимо присвоить.
Параметры
Параметр | Возможные типы | Описание | По умолчанию |
---|---|---|---|
datasets | list | Список датасетов. Датасеты – это либо list, либо np.ndarray | - |
labelIds | list | Список из целых чисел. Указывают, какие лейблы присвоить датасетам из datasets | None |
numofthreads | int | Число потоков обработки данных | 4 |
Возвращаемое значение
Нет.
getNextChunk¶
def getNextChunk(self, chunksize, **kwargs)
Выдаёт пачку данных размера chunksuze из внутренних датасетов объекта Merger. В параметре kwargs указываются параметры построения пачки данных.
Параметры
Параметр | Возможные типы | Описание | По умолчанию |
---|---|---|---|
chunksize | int | См. описание в prepareData | – |
**kwargs | dict | Может содержать поля "ratios", "randomize", "permutate", описание этих параметров см. в prepareData | - |
Возвращаемое значение
Тупль из 2-х np.ndarray – data и labels или только data, если labels не были предоставлены при создании объекта Merger.
getRandomChunk¶
def getRandomChunk(self, chunksize, ratios, permutate)
Набирает случайные данные из датасетов – из случайных мест датасетов. Не следит за сбором уникальных значений.
Параметры
Параметр | Возможные типы | Описание | По умолчанию |
---|---|---|---|
chunksize | int | См. описание в prepareData | – |
ratios | list | См. описание в prepareData | - |
permutate | bool | См. описание в prepareData | - |
Возвращаемое значение
См. описание в getNextChunk.
getRationedChunk¶
def getRationedChunk(self, chunksize, ratios, permutate)
Последовательно берёт данные в нужных пропорциях из датасетов.
Параметры
Параметр | Возможные типы | Описание | По умолчанию |
---|---|---|---|
chunksize | int | См. описание в prepareData | – |
ratios | list | См. описание в prepareData | - |
permutate | bool | См. описание в prepareData | - |
Возвращаемое значение
См. описание в getNextChunk.
deriveChunkRatios¶
def deriveChunkRatios(ratios, chunksize)
Преобразовывает значения ratios так, что для любого i число ratios[i] – это количество элементов, которые нужно взять из датасета номер i.
Параметры
Параметр | Возможные типы | Описание | По умолчанию |
---|---|---|---|
chunksize | int | См. описание в prepareData | – |
ratios | int | См. описание в prepareData | - |
Возвращаемое значение
Нет.
prepareData¶
def prepareData(self, ratios=None, chunksize=20000, randomize=False, permutate=True)
Подготовливает данные из своих датасетов. Вызывает родительский метод Provider.PrepareData, перед этим проверяет, что ratios корректные. Параметры randomize и permutate используются родительским методом только для передачи в метод getNextChunk.
Параметры
Параметр | Возможные типы | Описание | По умолчанию |
---|---|---|---|
ratios | list | Массив из int, длиной – по количеству входных датасетов. Элементы массива указывают, в каких пропорциях необходимо взять данные из датасетов. Если None, то в качестве ratios будет построен массив из единиц | None |
chunksize | int | Длина выдаваемых пачек данных | 20000 |
randomize | bool | Если True, то набирает случайные данные из датасетов. Иначе – берёт их последовательно | False |
permutate | bool | Если True, то перемешивает подготовленные данные | True |
Возвращаемое значение
Нет.