RuntimeError: входной тензор в индексе 3 имеет недействительную форму [2, 2, 16, 128, 64], но ожидается [2, 4, 16, 128, Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 RuntimeError: входной тензор в индексе 3 имеет недействительную форму [2, 2, 16, 128, 64], но ожидается [2, 4, 16, 128,

Сообщение Anonymous »

Ошибка времени выполнения при создании предварительной модели GPT2 -Medium с использованием библиотеки gurgingface в SageMaker - Ml.p3.8xlarge экземпляр.
menetuning_gpt2_script.py содержит ниже,
библиотеки:

Код: Выделить всё

from transformers import Trainer, TrainingArguments
from transformers import EarlyStoppingCallback
from transformers import GPT2LMHeadModel, GPT2Tokenizer
from transformers import TextDataset,DataCollatorForLanguageModeling
< /code>
Предварительные модели: < /p>
gpt2_model = GPT2LMHeadModel.from_pretrained("gpt2-medium")
gpt2_tokenizer = GPT2Tokenizer.from_pretrained("gpt2-medium")
< /code>
Поездка и тестовые данные Конструкция: < /p>
train_dataset = TextDataset(
tokenizer=gpt2_tokenizer,
file_path=train_path,
block_size=128)

test_dataset = TextDataset(
tokenizer=gpt2_tokenizer,
file_path=test_path,
block_size=128)

data_collator = DataCollatorForLanguageModeling(
tokenizer=gpt2_tokenizer, mlm=False,
)
< /code>
train_path
& test_path - неструктурированный файл текстовых данных размером 1,45 млн. и 200 тыс. Линий данных
Учебные аргументы:

Код: Выделить всё

training_args = TrainingArguments(
output_dir="./gpt2-finetuned-models", #The output directory
overwrite_output_dir=True, #overwrite the content of the output directory
num_train_epochs=1, # number of training epochs
per_device_train_batch_size=8, # batch size for training #32
per_device_eval_batch_size=8,  # batch size for evaluation #64
save_steps=100, # after # steps model is saved
warmup_steps=500,# number of warmup steps for learning rate scheduler
prediction_loss_only=True,
metric_for_best_model = "eval_loss",
load_best_model_at_end = True,
evaluation_strategy="epoch",
)
< /code>
training_args
- это учебные аргументы, созданные для обучения модели.
Тренер:

Код: Выделить всё

trainer = Trainer(
model=gpt2_model,
args=training_args,
data_collator=data_collator,
train_dataset=train_dataset,
eval_dataset=test_dataset,
callbacks = [early_stop_callback],
)
early_stop_callback = EarlyStoppingCallback(early_stopping_patience  = 3)
< /code>
Training:
trainer.train()
trainer.save_model(model_path)
< /code>
Here, the training is done for only 1 epoch in 4 GPUS using ml.p3.8xlarge instance.
The training is done by torch-distribution like below,
python -m torch.distributed.launch finetuning_gpt2_script.py
< /code>
While training at the end of the epoch, observed the below error,
RuntimeError: Input tensor at index 3 has invalid shape [2, 2, 16, 128, 64] but expected [2, 4, 16, 128, 64]


Является ли RuntimeError из-за того, как Train_dataset и test_dataset построен с использованием TextData ?>

Подробнее здесь: https://stackoverflow.com/questions/658 ... 128-64-but
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»