Path: blob/master/site/pt-br/lite/models/bert_qa/overview.md
25118 views
BERT — Perguntas e respostas
Use um modelo do TensorFlow Lite para responder a perguntas com base no conteúdo de um determinado trecho.
Observação: (1) para integrar um modelo existente, use a TensorFlow Lite Task Library (biblioteca de tarefas do TensorFlow Lite). (2) Para personalizar um modelo, use o TensorFlow Lite Model Maker (criador de modelos do TensorFlow Lite).
Como começar
Se você estiver apenas começando a usar o TensorFlow Lite e estiver trabalhando com Android ou iOS, recomendamos conferir os exemplos de aplicativo abaixo que podem te ajudar a começar.
Exemplo do Android Exemplo do iOS
Se você estiver usando outra plataforma que não o Android/iOS ou se já conhecer bem as APIs do TensorFlow Lite, pode baixar nosso modelo inicial de perguntas e respostas.
Baixar modelo inicial e vocabulário
Para mais informações sobre os metadados e arquivos associados (por exemplo, vocab.txt
), confira o artigo Leia metadados de modelos.
Como funciona
O modelo pode ser usado para criar um sistema que responda a perguntas de usuários em linguagem natural. Ele foi criado utilizando-se um modelo BERT pré-treinado que passou por ajustes finos usando-se o dataset SQuAD 1.1.
BERT, sigla em inglês para Representações de Encoder Bidirecional de Transformadores, é um método de representações de linguagem pré-treinamento que obtém resultados avançados em uma ampla gama de tarefas de processamento de linguagem natural (NLP, na sigla em inglês).
Este aplicativo usa uma versão compactada do BERT, o MobileBERT, que é executado quatro vezes mais rápido, com tamanho do modelo quatro vezes menor.
SQuAD, sigla em inglês para Stanford Question Answering Dataset (Dataset de respostas a perguntas da Stanford), é um dataset de compreensão de leitura que consiste de artigos da Wikipedia e um conjunto de pares pergunta/resposta para cada artigo
O modelo recebe um trecho e uma pergunta como entrada, depois retorna um segmento do trecho com a maior probabilidade de responder à pergunta. Esse modelo requer um pré-processamento semicomplexo, incluindo tokenização e passos de pré-processamento descritos no artigo do BERT e implementados no aplicativo de exemplo.
Referenciais de desempenho
Os referenciais de desempenho são gerados com a ferramenta descrita aqui.
Nome do modelo | Tamanho do modelo | Dispositivo | CPU |
---|---|---|---|
Mobile Bert | 100,5 MB | Pixel 3 (Android 10) | 123 ms* |
Pixel 4 (Android 10) | 74 ms* | ||
iPhone XS (iOS 12.4.1) | 257 ms** |
4 threads usados.
** 2 threads usados no iPhone para o resultado com maior desempenho.
Exemplo de saída
Trecho (entrada)
O Google LLC é uma multinacional de tecnologia especializada em serviços e produtos de Internet, incluindo tecnologias de publicidade online, mecanismo de pesquisa, computação em nuvem, software e hardware. É considerado uma das quatro grandes empresas de tecnologia junto com Amazon, Apple e Facebook.
O Google foi fundado em setembro de 1998 por Larry Page e Sergey Brin enquanto eram alunos de doutorado na Universidade de Stanford, na Califórnia. Juntos, detêm cerca de 14% das ações e controlam 56% dos votos de acionistas por meio das ações com direito a voto. Fizeram a incorporação do Google como uma empresa privada da Califórnia de 4 de setembro de 1998. Depois, foi feita uma nova incorporação do Google em Delaware, em 22 de outubro de 2002. Uma oferta pública inicial (IPO) de ações foi realizada em 19 de agosto de 2004, e o Google levou sua sede a Mountain View, Califórnia, apelidada de Googleplex. Em agosto de 2015, o Google anunciou planos de reorganizar seus diversos interesses como um conglomerado chamado Alphabet Inc. O Google é a principal subsidiária da Alphabet e empresa guarda-chuva para os interesses de Internet da Alphabet. Sundar Pichai foi nomeado CEO do Google, substituindo Larry Page, que se tornou o CEO da Alphabet.
Pergunta (entrada)
Quem é o CEO do Google?
Resposta (saída)
Sundar Pichai
Saiba mais sobre o BERT
Artigo acadêmico: BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding (BERT: Pré-treinamento de transformadores bidirecionais profundos para compreensão de linguagem)