TextLMDataBunch Проблема с памятью Модель языка Fastai - PullRequest
0 голосов
/ 26 февраля 2019

У меня есть набор данных с 45 миллионами строк данных.У меня есть три 6 ГБ оперативной памяти.Я пытаюсь обучить языковую модель данным.

Для этого я пытаюсь загрузить данные в виде набора данных fastai.Но эта часть всегда терпит неудачу из-за проблемы с памятью.

data_lm = TextLMDataBunch.from_df('./', train_df=df_trn, 
valid_df=df_val, bs=10)

Как мне решить эту проблему?

1 Ответ

0 голосов
/ 04 марта 2019

Когда вы используете эту функцию, ваш Dataframe загружается в память.Поскольку у вас очень большой массив данных, это вызывает ошибку памяти.Fastai обрабатывает токенизацию с использованием размера фрагмента, поэтому вы все равно должны иметь возможность маркировать свой текст.

Вот две вещи, которые вы должны попробовать:

  • Добавьте аргумент размера фрагмента (значение по умолчанию - 10k) для TextLMDataBunch.from_df, поэтому процесс токенизации требует меньше памяти.

  • Если этого недостаточно, я бы посоветовал не загружать весь ваш фрейм данных в память.К сожалению, даже если вы используете TextLMDataBunch.from_folder, он просто загружает полный DataFrame и передает его в TextLMDataBunch.from_df, возможно, вам придется создать свой собственный конструктор DataBunch.Не стесняйтесь комментировать, если вам нужна помощь по этому вопросу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...