我有一个包含4500万行数据的数据集。我有三个6gb ram gpu。我正在尝试训练数据的语言模型。
为此,我试图将数据作为fastai数据加载。但是由于内存问题,这部分总是失败。
data_lm = TextLMDataBunch.from_df('./', train_df=df_trn,
valid_df=df_val, bs=10)
我该如何处理这个问题?
使用此功能时,您的Dataframe将加载到内存中。由于您有一个非常大的数据帧,这会导致您的内存错误。 Fastai使用chunksize处理标记化,因此您仍然可以对文本进行标记。
以下是您应该尝试的两件事:
TextLMDataBunch.from_df
,以便标记化过程需要更少的内存。TextLMDataBunch.from_folder
,它只是加载完整的DataFrame并将其传递给TextLMDataBunch.from_df
,您可能必须创建自己的DataBunch构造函数。如果您需要帮助,请随时发表评论。