Должен ли входной размер ламы совпадать с выходным размером (ожидаемый входной размер пакета должен соответствовать целеPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Должен ли входной размер ламы совпадать с выходным размером (ожидаемый входной размер пакета должен соответствовать целе

Сообщение Anonymous »

Когда я точно настраиваю Llama3.2(11B/8B) для генерации целевого текста

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

with self.maybe_autocast():
outputs = self.llama_model(
input_ids=None,
inputs_embeds=concat_inputs_embeds,
attention_mask=mask,
labels=targets
)
loss = outputs.loss
return loss
concat_inputs_embeds — это объединение встраивания контекста, а input_token
targets — это целевые токены .
Когда я запускаю код, я получаю следующую ошибку:

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

 loss = model(batch)
^^^^^^^^^^^^
..........
outputs = self.llama_model(
^^^^^^^^^^^^^^^^^
.........
ValueError: Expected input batch_size (156) to match target batch_size (114).

Я печатаю форму тензора перед вычислением CEloss:
conncat_inputs_embeds.shape: torch.Size([2, 79, 4096])
targets.shape: torch.Size([2, 58])
2:batch_size

79/58:length

4096:feature_dim
Интуитивно, нам нужны только выходные данные и метка должна иметь одинаковую длину для расчета потери перекрестной энтропии, так почему мне нужно сопоставлять длину входных данных и длину метки?
Что мне делать, если длина моих входных данных и длина метки естественным образом равны противоречиво?
Я попробовал добавить в метку несколько токенов (например, пакетный размер=2, прокладка_длина=30),
ошибка изменилась:

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

ValueError: Expected input batch_size (156) to match target batch_size (174).
В сочетании с вышеупомянутыми попытками я думаю, что это вызвано несоответствием между длиной входных данных и длиной метки.
Как я могу решить эту проблему. Спасибо!!

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

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

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

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

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

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

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