- Visão geral
- Introdução
- Atividades
- Painéis de insights
- Processo do Document Understanding
- Tutoriais de início rápido
- Componentes do framework
- Pacotes de ML
- Visão geral
- Document Understanding - Pacote de ML
- DocumentClassifier - Pacote de ML
- Pacotes de ML com recursos de OCR
- 1040 - Pacote de ML
- 1040 Schedule C - Pacote de ML
- 1040 Schedule D - Pacote de ML
- 1040 Schedule E - Pacote de ML
- 1040x - Pacote de ML
- 3949a - Pacote de ML
- 4506T - Pacote de ML
- 709 - Pacote de ML
- 941x - Pacote de ML
- 9465 - Pacote de ML
- ACORD131 - Pacote de ML
- ACORD140 - Pacote de ML
- ACORD25 - Pacote de ML
- Extratos bancários - Pacote de ML
- ConhecimentoDeEmbarque - Pacote de ML
- Certificado de incorporação - Pacote de ML
- Certificado de origem - Pacote de ML
- Cheques - Pacote de ML
- Certificado de produtos filhos - Pacote de ML
- CMS1500 — Pacote de ML
- Declaração de Conformidade da UE - Pacote de ML
- Demonstrações financeiras - Pacote de ML
- FM1003 - Pacote de ML
- I9 - Pacote de ML
- Cartões de identificação - Pacote de ML
- Faturas - Pacote de ML
- FaturasAustrália - Pacote de ML
- FaturasChina - Pacote de ML
- Faturas em hebraico - Pacote de ML
- FaturasÍndia - Pacote de ML
- FaturasJapão - Pacote de ML
- Envio de faturas - Pacote de ML
- Romaneio de carga - Pacote de ML
- Contracheques — Pacote de ML
- Passaportes - Pacote de ML
- Ordens de compra - Pacote de ML
- Recibos - Pacote de ML
- AvisosDePagamento - Pacote de ML
- UB04 - Pacote de ML
- Contas de serviços - Pacote de ML
- Títulos de veículos - Pacote de ML
- W2 - Pacote de ML
- W9 - Pacote de ML
- Outros pacotes de ML prontos para uso
- Endpoints públicos
- Limitações de tráfego
- Configuração de OCR
- Pipelines
- Serviços de OCR
- Idiomas suportados
- Aprendizagem profunda
- Licenciamento
Guia do usuário do Document Understanding.
Pipelines de treinamento
Tamanho mínimo do conjunto de dados
Dataset Creation Failed
.
Treinamento em GPU vs CPU
Infraestrutura | <2021.10.x | 2021.10.x | >2021.10.x |
---|---|---|---|
CPU | 500 páginas | 5000 páginas | 1.000 páginas |
GPU | 18.000 páginas | 18.000 páginas | 18.000 páginas |
Se você estiver encontrando pipelines com falha ao treinar conjuntos de dados grandes, recomendamos atualizar para pacotes de ML versão 24.4 ou mais recente. As versões mais recentes fornecem aprimoramentos de estabilidade, que podem reduzir significativamente esses problemas.
Para obter mais informações sobre a estrutura do conjunto de dados, consulte a seção Formato do conjunto de dados.
Há duas maneiras de treinar um modelo de ML:
- treinamento de um modelo do zero
- retreinamento de um modelo pronto para uso
O treinamento de um modelo do zero pode ser feito usando o pacote de ML DocumentUnderstanding, que faz isso no conjunto de dados fornecido como entrada.
O retreinamento pode ser feito usando pacotes de ML prontos para uso, como faturas, recibos, pedidos de compra, contas de serviços públicos, faturas da Índia, faturas da Austrália etc., basicamente, qualquer outro pacote de ML de extração de dados, exceto DocumentUnderstanding. O treinamento usando um desses pacotes tem uma entrada adicional: um modelo base. Referimo-nos a isso como retreinamento, pois você não está começando do zero, e sim de um modelo base. Essa abordagem utiliza uma técnica chamada Transfer Learning, na qual o modelo aproveita as informações codificadas em outro modelo, aquele preexistente. O modelo retém parte do conhecimento pronto para uso, mas também aprende com os novos dados. No entanto, à medida que o tamanho do conjunto de dados de treinamento aumenta, o modelo base pré-treinado importa cada vez menos. É relevante principalmente para conjuntos de dados de treinamento de pequeno a médio porte (até 500-800 páginas).
Configure o pipeline de treinamento da seguinte maneira:
- No campo Tipo do pipeline, selecione Execução de treinamento.
- No campo Escolher pacote, selecione o pacote que você criou com base no Pacote de ML DocumentUnderstanding.
- No campo Escolha a versão principal do pacote, selecione uma versão principal para o seu pacote.
- No campo Escolha a versão secundária do pacote, selecione uma versão secundária para seu pacote. Verifique a seção Escolhendo a versão secundária abaixo para obter mais informações.
- No campo Escolha o conjunto de dados de entrada, selecione um conjunto de dados conforme mostrado no vídeo abaixo nesta página. Para criar conjuntos de dados de treinamento de alta qualidade, você pode conferir este tutorial.
- Na seção Inserir parâmetros, insira as variáveis de ambiente definidas e usadas por seu pipeline, se houver. Para a maioria dos casos de uso, nenhum parâmetro precisa ser especificado; o modelo está usando técnicas avançadas para encontrar uma configuração de desempenho. No entanto, aqui estão algumas variáveis de ambiente que você pode usar:
auto_retraining
que permite completar o Loop de retreinamento automático; se a variável for definida como True, o conjunto de dados de entrada precisará ser a pasta de exportação associada à sessão de rotulagem na qual os dados são marcados. Se a variável permanecer definida como False, o conjunto de dados de entrada precisará corresponder ao formato de conjunto de dados.model.epochs
que personaliza o número de épocas para o pipeline de treinamento (o valor padrão é 100).Optional
.Observação: para conjuntos de dados maiores, contendo mais de 5000 páginas, você pode realizar inicialmente uma execução de pipeline completa com o número padrão de épocas. Isso permite que você avalie a precisão do modelo. Depois disso, você pode diminuir o número de épocas para cerca de 30-40. Essa abordagem permite que você compare a precisão dos resultados e determine se a redução de épocas produz precisão comparável.Ao usar conjuntos de dados menores, em especial aqueles com menos de 5000 páginas, você pode manter o número padrão de épocas.
- Para Pacotes de ML v23.4 ou superior, o treinamento em conjuntos de dados menores que 400 páginas usa uma abordagem chamada Frozen Backbone para acelerar o treinamento e melhorar o desempenho. No entanto, você tem a opção de substituir esse comportamento e forçar um treinamento completo mesmo para conjuntos de dados menores, ou inversamente, forçar um treinamento Frozen Backbone mesmo para conjuntos de dados maiores (até um máximo de 3000 páginas). Você pode usar as seguintes variáveis de ambiente, com a condição de combiná-las quando em uso, seja usando a primeira ou a segunda, ou a primeira e a terceira variáveis juntas.
Optional
.model.override_finetune_freeze_backbone_mode=True
— Inclua esta variável de ambiente para substituir o comportamento padrão. Isso é necessário em ambas as situações abaixo.model.finetune_freeze_backbone_mode=True
— inclua essa variável de ambiente para forçar o modelo a usar o Frozen Backbone mesmo para conjuntos de dados maiores.model.finetune_freeze_backbone_mode=False
- Inclua esta variável de ambiente para forçar o modelo a usar o treinamento completo mesmo para conjuntos de dados menores.
- Selecione se deseja treinar o pipeline na GPU ou na CPU. O controle deslizante Habilitar GPU está desabilitado por padrão, nesse caso o pipeline é treinado na CPU.
- Selecione uma das opções para a execução do pipeline: Executar agora, Agendado ou Recorrente. Caso esteja usando a variável
auto_retraining
, selecione Recorrente. - Após configurar todos os campos, clique em Criar. O pipeline é criado.
Aqui está um exemplo de criação de um novo pipeline de treinamento com um conjunto de dados previamente exportado para o AI Center:
Na maioria das situações, a versão secundária 0 deve ser escolhida.Isso ocorre porque quanto maior e mais diversificado seu conjunto de dados de treinamento, melhor o desempenho do seu modelo. Esse princípio se alinha ao objetivo atual da tecnologia de ML de última geração de usar conjuntos de treinamento grandes, de alta qualidade e representativos. Portanto, à medida que você acumula mais dados de treinamento para um modelo, você deve adicionar os dados ao mesmo conjunto de dados para aprimorar ainda mais o desempenho do modelo.
No entanto, há situações em que o treinamento em uma versão menor diferente de 0 faz sentido. Esse é normalmente o caso quando um parceiro precisa atender a vários clientes no mesmo setor, mas a UiPath® não tem um modelo pré-treinado otimizado para esse setor, geografia ou tipo de documento.
Nesse caso, o parceiro pode desenvolver um modelo pré-treinado usando uma variedade de amostras de documentos daquele setor (não de uma única origem, mas de muitos para melhor generalização).Esse modelo seria usado como um modelo base para treinar modelos específicos de clientes, sendo treinado na versão 0 do pacote de ML. As seguintes versões, como a versão 1, seriam usadas para refinar o modelo pré-treinado ou criar modelos específicos do cliente.
No entanto, para obter bons resultados, o modelo pré-treinado deve ser imparcial e baseado em um conjunto de dados altamente diversificado.Se o modelo básico for otimizado para um cliente específico, ele pode não ter bom desempenho para outros clientes. Nesse caso, o uso da versão secundária zero como um modelo básico produz melhores resultados.