Skip to content

Dataset.load: only once for each dataset #98

@Alvant

Description

@Alvant

загрузка датасета — в несколько раз замедляет загрузку моделей с диска (при том что от скора нам нужна только значения сейчас). Кажется, для SO это разница между "три часа" и "меньше пяти минут"

...

лучше мб какой-то глобальный флаг включить?

ещё вариант делать загрузку датасета "лениво" (т.е. просто кэшировать его по сути)
по-хорошему вообще это должен быть референс на один и тот же объект, а не куча клонов

Про один инстанс – это в точку! Чё-то этот момент пропустили при оформлении загрузки скоров (что "сколько скоров – столько раз и датасет поднимется"). В идеале должно быть так. При обучении они ведь один датасет используют

Возможно это вообще на стороне топикнета надо чинить? Как в джаве строки интернируются

Да, возможно... То есть при Dataset.load(path) можно не тупо загружать, а проверять, не загружен ли уже датасет с таким path. И если да, то возвращать его. Единственное, не совсем ясно, что делать, когда например, датасет загрузили и, скажем, словарь отфильтровали. Отдавать при Dataset.load изменённый датасет (с фильтрованным словарём), или загружать с нуля с диска?

Current workaround: https://github.com/machine-intelligence-laboratory/OptimalNumberOfTopics/blob/fix/load_models_hack/topnum/scores/base_custom_score.py#L13

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions