Ключевая ошибка при загрузке обучающего корпуса в метод train_new_from_iterator
Я следую этому руководству здесь: https://github.com/huggingface/notebooks/blob/master/examples/tokenizer_training.ipynb
Итак, используя этот код, я добавляю свой собственный набор данных:
from datasets import load_dataset
dataset = load_dataset('csv', data_files=['/content/drive/MyDrive/mydata.csv'])
Затем я использую этот код, чтобы взглянуть на набор данных:
dataset
Доступ к элементу:
dataset['train'][1]
Доступ к каталогу фрагментов:
dataset['train'][:5]
После успешного выполнения вышеуказанного кода я пытаюсь выполнить это здесь:
new_tokenizer = tokenizer.train_new_from_iterator(batch_iterator(), vocab_size=25000)
Однако я получаю эту ошибку:
KeyError: "Invalid key: slice(0, 1000, None). Please first select a split. For example: `my_dataset_dictionary['train'][slice(0, 1000, None)]`. Available splits: ['train']"
Как это исправить?
Я пытаюсь обучить свой собственный токенизатор, и это кажется проблемой.
Любая помощь будет оценена по достоинству!
1 ответ
Просто, как сказано в трассировке ошибок, вы должны указать разделение при загрузке набора данных следующим образом:
dataset = load_dataset('csv', data_files=['/content/drive/MyDrive/mydata.csv'], split='train')
Или написать batch_iterator следующим образом:
def batch_iterator():
for i in range(0, len(dataset['train']), batch_size):
yield dataset['train'][i : i + batch_size]["text"]