Como usar transformadores de rosto abraçado em Python

Como Usar Transformadores De Rosto Abracado Em Python



O Hugging Face é reconhecido como uma comunidade de inteligência artificial de código aberto e fornece todas as estruturas, ferramentas, modelos e arquiteturas importantes que ajudam a se comunicar ou treinar com os modelos de linguagem (processamento de linguagem natural). Hugging Face Transformers é uma arquitetura de linguagem que ajuda no fornecimento de modelos de processamento de linguagem pré-treinados em Python. Esses transformadores da Hugging Face fornecem uma ampla gama de conjuntos de dados e APIs em camadas que ajudam os programadores a criar facilmente uma interação com os modelos pré-treinados com seus pacotes de biblioteca.

Sintaxe

Os transformadores Hugging Face de última geração possuem uma grande variedade de modelos pré-treinados. Esses modelos podem ser aplicados a vários modelos de linguagem listados a seguir:

  • Esses transformadores podem processar o texto em diferentes idiomas e podem executar diferentes tarefas no texto, como classificação de texto, perguntas e respostas, tradução do texto para diferentes idiomas e geração do texto.
  • Também podemos utilizar esses transformadores em Hugging Face para tarefas de classificação baseadas em visão, como detecção de objetos e tarefas baseadas em fala, por exemplo, classificação do orador ou identificação/reconhecimento de fala.

Os transformadores do Hugging Face incluem TensorFlow, PyTorch, ONNX, etc. Para a sintaxe de instalação do pacote para esses transformadores, usamos o seguinte comando:







$ pip instalar transformadores

Agora, tentamos tentar diferentes exemplos onde usamos os modelos do transformador Hugging Face para diferentes tarefas de processamento de linguagem.



Exemplo 1: geração de texto usando os transformadores de cara de abraço

Este exemplo cobre o método para usar os transformadores para a geração de texto. Para a geração de texto, utilizamos e importamos o modelo de geração de texto pré-treinado do transformador. O transformador possui uma biblioteca básica conhecida como “pipelines”. Esses pipelines funcionam para transformadores fazendo todo o pré e pós-processamento necessário nos dados que devem ser alimentados aos modelos pré-treinados como entrada.



Começamos a codificar o exemplo instalando primeiro o pacote da biblioteca dos “transformadores” no terminal Python. Para baixar o pacote do transformador, use o “pip install com o nome do pacote, ou seja, transformador”. Depois de baixar e instalar o pacote do transformador, avançamos importando o pacote “pipelines” do transformador. O pipeline é usado para processar os dados antes de serem alimentados no modelo.





Importamos o “pprint” do arquivo pprint. Este pacote é instalado para imprimir a saída do modelo de geração de texto em um formato mais legível, estruturado e bem formatado. Caso contrário, se usarmos a função “print()”, ela exibirá a saída em uma única linha que não está bem formatada e facilmente legível. Os modelos de geração de texto ajudam a gerar ou adicionar mais texto ao texto que inicialmente fornecemos ao modelo como entrada.

Para chamar o modelo treinado do transformador, usamos a função pipeline() que tem os dois parâmetros como entrada. O primeiro especifica o nome da tarefa selecionada e o segundo é o nome do modelo de um transformador. Neste cenário, a tarefa selecionada é a geração de texto. O modelo pré-treinado que utilizamos do transformador é “gpt”.



Depois de usar a função de pipeline, decidimos a entrada que queremos dar ao nosso modelo para gerar texto adicional para ele. Em seguida, passamos essa entrada para a função “task_pipeline()”. Essa função cria a saída para o modelo considerando a entrada, o comprimento máximo da saída e o número de sentenças que a saída deve ter como parâmetros de entrada.

Damos a entrada como “Este é um modelo de linguagem”. Fixamos o comprimento máximo da saída em “30” e o número de sentenças na saída em “3”. Agora, simplesmente chamamos a função pprint() para exibir os resultados que são gerados a partir do nosso modelo.

!pip instalar transformadores

do pipeline de importação de transformadores
de pprint importar pprint

SELECTED_TASK = 'geração de texto'
MODELO = 'gpt2'
tarefa = pipeline(f'{SELECTED_TASK}', modelo = MODEL)

INPUT = 'Este é um modelo de linguagem'
OUt_put = tarefa(INPUT, max_length = 30, num_return_sequences=3)

pprint(OUT_put)

A partir do trecho de código e da saída mencionados anteriormente, podemos ver que o modelo gera as informações/textos adicionais relevantes para a entrada que alimentamos a ele.

Exemplo 2: Classificação de Texto Usando Pipelines dos Transformers

O exemplo anterior cobriu o método para gerar o texto adicional que é relevante para a entrada usando os transformadores e seus pipelines de pacote. Este exemplo nos mostra como realizar a classificação de texto com os pipelines. A classificação de texto é o processo de identificação da entrada que está sendo alimentada ao modelo como um membro de uma classe específica, por exemplo, positivo ou negativo.

Primeiro importamos os pipelines dos transformadores. Em seguida, chamamos a função “pipeline()”. Passamos o nome do modelo que, no nosso caso, é “classificação de texto” para seus parâmetros. Uma vez que o modelo é especificado usando o pipeline, podemos agora nomeá-lo como “classificador”. Até este ponto, o modelo padrão para a classificação do texto é baixado para nossa máquina host. Agora, podemos usar esse modelo para nossa tarefa.

Então, importe os Pandas como “pd”. Queremos importar este pacote porque queremos imprimir a saída do modelo na forma do DataFrame. Agora, especificamos o texto que queremos dar ao nosso modelo como entrada para classificá-lo como uma sentença positiva ou negativa. Definimos o texto como 'Sou um cara legal'. Passamos este texto para o modelo classifier() que acabamos de criar neste exemplo e salvamos os resultados em uma variável de “saída”.

Para exibir a saída, chamamos o prefixo de Pandas, ou seja, pd como “.Dataframe()” e passamos a saída do modelo do classificador para esta função. Agora ele exibe os resultados do modelo do classificador, conforme mostrado no trecho de saída a seguir. Nosso modelo classificador classifica o texto como a classe positiva.

!pip instalar transformadores
do pipeline de importação de transformadores
importar pandas como pd
classificador = pipeline('classificação de texto',model = 'textattack/distilbert-base-uncased-CoLA')
text = 'eu sou um cara legal'
resultado = classificador(texto)
pprint(resultado)
df = pd.DataFrame(resultado)

Conclusão

Este guia cobriu a arquitetura do transformador de Hugging Face. Discutimos a biblioteca “pipeline” do transformador Hugging Face. Então, com a ajuda desta biblioteca, utilizamos os modelos de transformadores pré-treinados para tarefas de geração e classificação de texto.