ComeçarComece de graça

Ajustes no CV: classes do modelo

Neste exercício, você vai carregar o modelo pré-treinado e adaptar a saída para acomodar uma nova classificação de tipos de modelos de carros do conjunto de dados Stanford Cars, em vez das 1000 classes usadas para o treinamento original do ImageNet. O conjunto de dados tem imagens de carros com legendas.

O conjunto de dados foi carregado (dataset), assim como AutoModelForImageClassification de transformers. O conjunto de dados foi filtrado para incluir três tipos de modelos.

Este exercício faz parte do curso

Modelos multimodais com Hugging Face

Ver curso

Instruções do exercício

  • Pegue os novos nomes das etiquetas do conjunto de dados.
  • Adicione o novo mapeamento “ id2label ” enquanto carrega o modelo.
  • Adicione o mapeamento label2id que combina.
  • Adicione o sinalizador necessário para alterar o número de classes.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Obtain the new label names from the dataset
labels = dataset["train"].features["____"].____

label2id, id2label = dict(), dict()
for i, label in enumerate(labels):
    label2id[label] = str(i)
    id2label[str(i)] = label

model = AutoModelForImageClassification.from_pretrained(
    "google/mobilenet_v2_1.0_224",
    num_labels=len(labels),
    # Add the id2label mapping
    id2label=____,
    # Add the corresponding label2id mapping
    label2id=____,
    # Add the required flag to change the number of classes
    ignore_mismatched_sizes=____
)
Editar e executar o código