Базовый save_pretrained/from_pretrained не извлекает ту же модель, которая была сохранена - ТрансформерыPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Базовый save_pretrained/from_pretrained не извлекает ту же модель, которая была сохранена - Трансформеры

Сообщение Anonymous »

Я создал свою модель с помощью:

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

#Load of the model
model_checkpoint = 'microsoft/deberta-v3-large'
# model_checkpoint = 'roberta-base' # you can alternatively use roberta-base but this model is bigger thus training will take longer

# Define label maps specific to your task
id2label = {0: "Human", 1: "AI"}
label2id = {"Human": 0, "AI": 1}

# Generate classification model from model_checkpoint with the defined labels
model = AutoModelForSequenceClassification.from_pretrained(
model_checkpoint, num_labels=2, id2label=id2label, label2id=label2id)

peft_config = LoraConfig(task_type="SEQ_CLS",
r=1,
lora_alpha=16,
lora_dropout=0.2)

model = get_peft_model(model, peft_config)
Это работает нормально, и я вызываю Train.train() для обучения моей модели.
Когда я закончу, я хочу сохранить модель для экспорта его на другую машину, с

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

model_path = "./deberta-v3-large-5"
model.save_pretrained(model_path)
И перезагрузите модель с помощью

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

reloaded_model = AutoModelForSequenceClassification.from_pretrained(
model_path, num_labels=2, id2label=id2label, label2id=label2id)
Должно быть что-то очень простое, но я могу это понять.
Если я запускаю тесты на своей reloaded_model, я получаю гораздо худшую точность, чем на исходная модель, которая была обучена
Я тоже пробовал, но безуспешно:

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

# Save the model and the tokenizer
model_path = "./deberta-v3-large-4"
trainer.save_model(model_path)
tokenizer.save_pretrained(model_path, set_lower_case=False)

from transformers import AutoModelForSequenceClassification, AutoTokenizer

# Path where the model and tokenizer were saved
model_path = "./deberta-v3-large-4"

# Define label maps specific to your task
id2label = {0: "Human", 1: "AI"}
label2id = {"Human": 0, "AI": 1}

# Generate classification model from model_checkpoint with the defined labels
model_regenerate = AutoModelForSequenceClassification.from_pretrained(
model_path, num_labels=2, id2label=id2label, label2id=label2id)

tokenizer_reloaded = AutoTokenizer.from_pretrained(model_path)

peft_config = LoraConfig(task_type="SEQ_CLS",
r=1,
lora_alpha=16,
lora_dropout=0.2)
model_full_regenerate = get_peft_model(model_regenerate, peft_config)
model_full_regenerate.print_trainable_parameters()
Во всех случаях, когда я загружаю модель, я получаю

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

Some weights of DebertaV2ForSequenceClassification were not initialized from the model checkpoint at microsoft/deberta-v3-large and are newly initialized: ['classifier.bias', 'classifier.weight', 'pooler.dense.bias', 'pooler.dense.weight']
Спасибо

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

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как загрузить TensorFlow модель в 2.19.0, если модель была сохранена в 2.4.1
    Anonymous » » в форуме Python
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous
  • Как загрузить TensorFlow модель в 2.19.0, если модель была сохранена в 2.4.1
    Anonymous » » в форуме Python
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • EF Core, связанная с ними, не сохранена
    Anonymous » » в форуме C#
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Angular + API REST: Как подтвердить, была ли регистрация пользователя фактически сохранена?
    Anonymous » » в форуме Javascript
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Электронная почта проверки не сохранена в папке времени выполнения/почты
    Anonymous » » в форуме Php
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous

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