Crie dados de alta qualidade para modelos de ML com o Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.

Crie dados de alta qualidade para modelos de ML com o Amazon SageMaker Ground Truth

O aprendizado de máquina (ML) melhorou os negócios em todos os setores nos últimos anos, desde o sistema de recomendação em seu Prime Video conta, para documentar a sumarização e a pesquisa eficiente com Alexaassistência de voz do. No entanto, permanece a questão de como incorporar essa tecnologia em seu negócio. Ao contrário dos métodos tradicionais baseados em regras, o ML infere automaticamente padrões de dados para realizar sua tarefa de interesse. Embora isso ignore a necessidade de selecionar regras para automação, também significa que os modelos de ML só podem ser tão bons quanto os dados nos quais são treinados. No entanto, a criação de dados geralmente é uma tarefa desafiadora. No Laboratório de soluções de aprendizado de máquina da Amazon, encontramos esse problema repetidamente e queremos facilitar essa jornada para nossos clientes. Se você quiser descarregar este processo, você pode usar Amazon SageMaker Ground Truth Plus.

Ao final deste post, você será capaz de alcançar o seguinte:

  • Entenda os processos de negócios envolvidos na configuração de um pipeline de aquisição de dados
  • Identifique os serviços da Nuvem AWS para dar suporte e agilizar seu pipeline de rotulagem de dados
  • Execute uma tarefa de aquisição de dados e rotulagem para casos de uso personalizados
  • Crie dados de alta qualidade seguindo as melhores práticas comerciais e técnicas

Ao longo deste post, focamos no processo de criação de dados e contamos com os serviços da AWS para lidar com a infraestrutura e os componentes do processo. Ou seja, usamos Verdade no solo do Amazon SageMaker para lidar com o pipeline de infraestrutura de rotulagem e a interface do usuário. Este serviço usa uma abordagem point-and-go para coletar seus dados de Serviço de armazenamento simples da Amazon (Amazon S3) e configure um fluxo de trabalho de rotulagem. Para rotulagem, oferece a flexibilidade integrada para adquirir rótulos de dados usando sua equipe privada, um Amazon Mechanical Turk force, ou seu fornecedor de rotulagem preferido de Mercado da AWS. Por último, você pode usar AWS Lambda e Notebooks Amazon SageMaker para processar, visualizar ou controlar a qualidade dos dados, seja antes ou depois da rotulagem.

Agora que todas as peças foram colocadas, vamos começar o processo!

O processo de criação de dados

Ao contrário da intuição comum, o primeiro passo para a criação de dados não é a coleta de dados. Trabalhar para trás dos usuários para articular o problema é crucial. Por exemplo, com o que os usuários se importam no artefato final? Onde os especialistas acreditam que os sinais relevantes para o caso de uso residem nos dados? Quais informações sobre o ambiente de caso de uso podem ser fornecidas para modelar? Se você não souber as respostas para essas perguntas, não se preocupe. Dê a si mesmo algum tempo para conversar com usuários e especialistas de campo para entender as nuances. Esse entendimento inicial irá orientá-lo na direção certa e prepará-lo para o sucesso.

Para este post, assumimos que você cobriu esse processo inicial de especificação de requisitos do usuário. As próximas três seções orientam você pelo processo subsequente de criação de dados de qualidade: planejamento, criação de dados de origem e anotação de dados. A pilotagem de loops nas etapas de criação e anotação de dados é vital para garantir a criação eficiente de dados rotulados. Isso envolve a iteração entre a criação de dados, anotação, garantia de qualidade e atualização do pipeline conforme necessário.

A figura a seguir fornece uma visão geral das etapas necessárias em um pipeline típico de criação de dados. Você pode trabalhar para trás a partir do caso de uso para identificar os dados necessários (Especificação de Requisitos), criar um processo para obter os dados (Planejamento), implementar o processo real de aquisição de dados (Coleta de Dados e Anotação) e avaliar os resultados. As execuções piloto, destacadas com linhas tracejadas, permitem iterar no processo até que um pipeline de aquisição de dados de alta qualidade seja desenvolvido.

Visão geral das etapas necessárias em um pipeline típico de criação de dados.

Planeamento

Um processo de criação de dados padrão pode ser demorado e um desperdício de recursos humanos valiosos se for conduzido de forma ineficiente. Por que seria demorado? Para responder a essa pergunta, devemos entender o escopo do processo de criação de dados. Para ajudá-lo, coletamos uma lista de verificação de alto nível e uma descrição dos principais componentes e partes interessadas que você deve considerar. Responder a essas perguntas pode ser difícil no começo. Dependendo do seu caso de uso, apenas alguns deles podem ser aplicáveis.

  • Identifique o ponto de contato legal para aprovações necessárias – O uso de dados para seu aplicativo pode exigir revisão de licença ou contrato de fornecedor para garantir a conformidade com as políticas e casos de uso da empresa. É importante identificar seu suporte jurídico em todas as etapas de aquisição de dados e anotação do processo.
  • Identifique o ponto de contato de segurança para manipulação de dados – Vazamentos de dados adquiridos podem resultar em sérias multas e repercussões para sua empresa. É importante identificar seu suporte de segurança em todas as etapas de anotação e aquisição de dados para garantir práticas seguras.
  • Detalhe os requisitos do caso de uso e defina os dados de origem e as diretrizes de anotação – Criar e anotar dados é difícil devido à alta especificidade necessária. As partes interessadas, incluindo geradores de dados e anotadores, devem estar completamente alinhadas para evitar desperdício de recursos. Para isso, é uma prática comum usar um documento de diretrizes que especifique todos os aspectos da tarefa de anotação: instruções exatas, casos extremos, um passo a passo de exemplo e assim por diante.
  • Alinhar as expectativas para coletar seus dados de origem - Considere o seguinte:
    • Conduza pesquisas sobre possíveis fontes de dados – Por exemplo, conjuntos de dados públicos, conjuntos de dados existentes de outras equipes internas, dados autocoletados ou adquiridos de fornecedores.
    • Faça uma avaliação de qualidade – Crie um pipeline de análise em relação ao caso de uso final.
  • Alinhar as expectativas para criar anotações de dados - Considere o seguinte:
    • Identifique as partes interessadas técnicas – Geralmente é um indivíduo ou equipe em sua empresa capaz de usar a documentação técnica referente ao Ground Truth para implementar um pipeline de anotação. Essas partes interessadas também são responsáveis ​​pela avaliação da qualidade dos dados anotados para garantir que eles atendam às necessidades do seu aplicativo de ML downstream.
    • Identifique os anotadores de dados – Esses indivíduos usam instruções predeterminadas para adicionar rótulos aos seus dados de origem no Ground Truth. Eles podem precisar possuir conhecimento de domínio, dependendo do seu caso de uso e das diretrizes de anotação. Você pode usar uma força de trabalho interna à sua empresa ou pagar por um força de trabalho gerenciada por um fornecedor externo.
  • Garantir a supervisão do processo de criação de dados – Como você pode ver nos pontos anteriores, a criação de dados é um processo detalhado que envolve várias partes interessadas especializadas. Portanto, é crucial monitorá-lo de ponta a ponta em direção ao resultado desejado. Ter uma pessoa ou equipe dedicada para supervisionar o processo pode ajudá-lo a garantir um processo de criação de dados coeso e eficiente.

Dependendo da rota que você decidir tomar, você também deve considerar o seguinte:

  • Criar o conjunto de dados de origem – Isso se refere a instâncias em que os dados existentes não são adequados para a tarefa em questão ou as restrições legais impedem você de usá-los. Equipes internas ou fornecedores externos (próximo ponto) devem ser usados. Este é frequentemente o caso de domínios altamente especializados ou áreas com pouca pesquisa pública. Por exemplo, as perguntas comuns de um médico, roupas ou especialistas em esportes. Pode ser interno ou externo.
  • Pesquise fornecedores e conduza um processo de integração – Quando fornecedores externos são usados, um processo de contratação e integração deve ser estabelecido entre ambas as entidades.

Nesta seção, revisamos os componentes e partes interessadas que devemos considerar. No entanto, como é o processo real? Na figura a seguir, descrevemos um fluxo de trabalho de processo para criação e anotação de dados. A abordagem iterativa usa pequenos lotes de dados chamados pilotos para diminuir o tempo de resposta, detectar erros antecipadamente e evitar o desperdício de recursos na criação de dados de baixa qualidade. Descrevemos essas rodadas piloto mais adiante neste post. Também abordamos algumas práticas recomendadas para criação, anotação e controle de qualidade de dados.

A figura a seguir ilustra o desenvolvimento iterativo de um pipeline de criação de dados. Verticalmente, encontramos o bloco de fonte de dados (verde) e o bloco de anotação (azul). Ambos os blocos têm rodadas piloto independentes (criação/anotação de dados, QAQC e atualização). Dados de origem cada vez mais altos são criados e podem ser usados ​​para construir anotações de qualidade cada vez maior.

Durante o desenvolvimento iterativo de uma criação de dados ou pipeline de anotações, pequenos lotes de dados são usados ​​para pilotos independentes. Cada rodada piloto tem uma fase de criação ou anotação de dados, alguma garantia de qualidade e controle de qualidade dos resultados e uma etapa de atualização para refinar o processo. Depois que esses processos são refinados por meio de pilotos sucessivos, você pode prosseguir para a criação e anotação de dados em grande escala.

Visão geral do desenvolvimento iterativo em um pipeline de criação de dados.

Criação de dados de origem

O processo de criação de entrada gira em torno da preparação de seus itens de interesse, que dependem do seu tipo de tarefa. Podem ser imagens (digitalizações de jornais), vídeos (cenas de trânsito), nuvens de pontos 3D (digitalizações médicas) ou simplesmente texto (faixas de legendas, transcrições). Em geral, ao preparar seus itens relacionados a tarefas, certifique-se do seguinte:

  • Reflita o caso de uso do mundo real para o eventual sistema de IA/ML – A configuração para coletar imagens ou vídeos para seus dados de treinamento deve corresponder à configuração para seus dados de entrada no aplicativo do mundo real. Isso significa ter superfícies de posicionamento consistentes, fontes de iluminação ou ângulos de câmera.
  • Considere e minimize as fontes de variabilidade - Considere o seguinte:
    • Desenvolva as melhores práticas para manter os padrões de coleta de dados – Dependendo da granularidade do seu caso de uso, pode ser necessário especificar requisitos para garantir a consistência entre seus pontos de dados. Por exemplo, se você estiver coletando dados de imagem ou vídeo de pontos de câmera únicos, talvez seja necessário certificar-se do posicionamento consistente de seus objetos de interesse ou exigir uma verificação de qualidade da câmera antes de uma rodada de captura de dados. Isso pode evitar problemas como inclinação ou desfoque da câmera e minimizar as despesas gerais, como remover imagens fora do quadro ou borradas, além de precisar centralizar manualmente o quadro da imagem em sua área de interesse.
    • Esvazie as fontes de variabilidade do tempo de teste – Se você antecipar a variabilidade em qualquer um dos atributos mencionados até agora durante o tempo de teste, certifique-se de poder capturar essas fontes de variabilidade durante a criação dos dados de treinamento. Por exemplo, se você espera que seu aplicativo de ML funcione em várias configurações de luz diferentes, tente criar imagens e vídeos de treinamento em várias configurações de luz. Dependendo do caso de uso, a variabilidade no posicionamento da câmera também pode influenciar a qualidade de suas etiquetas.
  • Incorporar conhecimento prévio do domínio quando disponível - Considere o seguinte:
    • Entradas sobre fontes de erro – Os profissionais de domínio podem fornecer insights sobre as fontes de erro com base em seus anos de experiência. Eles podem fornecer feedback sobre as práticas recomendadas para os dois pontos anteriores: Quais configurações refletem melhor o caso de uso do mundo real? Quais são as possíveis fontes de variabilidade durante a coleta de dados ou no momento do uso?
    • Práticas recomendadas de coleta de dados específicos do domínio – Embora seus interessados ​​técnicos já possam ter uma boa ideia dos aspectos técnicos para focar nas imagens ou vídeos coletados, os profissionais do domínio podem fornecer feedback sobre a melhor forma de preparar ou coletar os dados para que essas necessidades sejam atendidas.

Controle de qualidade e garantia de qualidade dos dados criados

Agora que você configurou o pipeline de coleta de dados, pode ser tentador prosseguir e coletar o máximo de dados possível. Espere um minuto! Devemos primeiro verificar se os dados coletados por meio da configuração são adequados para seu caso de uso de palavras reais. Podemos usar algumas amostras iniciais e melhorar iterativamente a configuração por meio dos insights que obtivemos ao analisar esses dados de amostra. Trabalhe em estreita colaboração com as partes interessadas técnicas, comerciais e de anotações durante o processo piloto. Isso garantirá que o pipeline resultante atenda às necessidades de negócios enquanto gera dados rotulados prontos para ML com despesas mínimas.

Anotações

A anotação de entradas é onde adicionamos o toque mágico aos nossos dados – os rótulos! Dependendo do tipo de tarefa e do processo de criação de dados, você pode precisar de anotadores manuais ou pode usar métodos automatizados prontos para uso. O pipeline de anotação de dados em si pode ser uma tarefa tecnicamente desafiadora. O Ground Truth facilita essa jornada para suas partes interessadas técnicas com sua repertório integrado de fluxos de trabalho de rotulagem para fontes de dados comuns. Com algumas etapas adicionais, ele também permite que você construa fluxos de trabalho de rotulagem personalizados além das opções pré-configuradas.

Faça a si mesmo as seguintes perguntas ao desenvolver um fluxo de trabalho de anotação adequado:

  • Preciso de um processo de anotação manual para meus dados? Em alguns casos, os serviços de rotulagem automatizados podem ser suficientes para a tarefa em questão. A revisão da documentação e das ferramentas disponíveis pode ajudá-lo a identificar se a anotação manual é necessária para o seu caso de uso (para obter mais informações, consulte O que é rotulagem de dados?). O processo de criação de dados pode permitir vários níveis de controle em relação à granularidade de sua anotação de dados. Dependendo desse processo, às vezes você também pode ignorar a necessidade de anotação manual. Para obter mais informações, consulte Crie um conjunto de dados de perguntas e respostas personalizado usando o Amazon SageMaker Ground Truth para treinar um modelo NLU de perguntas e respostas do Hugging Face.
  • O que forma minha verdade fundamental? Na maioria dos casos, a verdade básica virá do seu processo de anotação - esse é o ponto! Em outros, o usuário pode ter acesso a rótulos de verdade. Isso pode acelerar significativamente seu processo de garantia de qualidade ou reduzir a sobrecarga necessária para várias anotações manuais.
  • Qual é o limite superior para a quantidade de desvio do meu estado de verdade fundamental? Trabalhe com seus usuários finais para entender os erros típicos em torno desses rótulos, as fontes de tais erros e a redução desejada de erros. Isso ajudará você a identificar quais aspectos da tarefa de rotulagem são mais desafiadores ou provavelmente terão erros de anotação.
  • Existem regras preexistentes usadas pelos usuários ou profissionais de campo para rotular esses itens? Use e refine essas diretrizes para criar um conjunto de instruções para seus anotadores manuais.

Pilotando o processo de anotação de entrada

Ao pilotar o processo de anotação de entrada, considere o seguinte:

  • Revise as instruções com os anotadores e profissionais de campo – As instruções devem ser concisas e específicas. Peça feedback de seus usuários (as instruções são precisas? Podemos revisar quaisquer instruções para garantir que sejam compreensíveis por não profissionais de campo?) e anotadores (tudo é compreensível? A tarefa está clara?). Se possível, adicione um exemplo de dados rotulados bons e ruins para ajudar seus anotadores a identificar o que é esperado e como podem ser os erros comuns de rotulagem.
  • Coletar dados para anotações – Revise os dados com seu cliente para certificar-se de que eles atendem aos padrões esperados e para alinhar os resultados esperados da anotação manual.
  • Forneça exemplos para seu conjunto de anotadores manuais como uma execução de teste – Qual é a variação típica entre os anotadores neste conjunto de exemplos? Estude a variação de cada anotação em uma determinada imagem para identificar as tendências de consistência entre os anotadores. Em seguida, compare as variações nas imagens ou quadros de vídeo para identificar quais rótulos são difíceis de colocar.

Controle de qualidade das anotações

O controle de qualidade das anotações tem dois componentes principais: avaliar a consistência entre os anotadores e avaliar a qualidade das próprias anotações.

Você pode atribuir vários anotadores à mesma tarefa (por exemplo, três anotadores rotulam os pontos-chave na mesma imagem) e medir o valor médio juntamente com o desvio padrão desses rótulos entre os anotadores. Isso ajuda a identificar quaisquer anotações atípicas (rótulo incorreto usado ou rótulo muito distante da anotação média), que pode orientar os resultados acionáveis, como refinar suas instruções ou fornecer treinamento adicional a determinados anotadores.

A avaliação da qualidade das próprias anotações está vinculada à variabilidade do anotador e (quando disponível) à disponibilidade de especialistas de domínio ou informações de verdade. Existem determinados rótulos (em todas as suas imagens) em que a variação média entre os anotadores é consistentemente alta? Algum rótulo está longe de suas expectativas de onde eles deveriam estar ou como deveriam ser?

Com base em nossa experiência, um loop de controle de qualidade típico para anotação de dados pode ser assim:

  • Iterar nas instruções ou no teste de imagem com base nos resultados da execução de teste – Algum objeto está ocluído ou o teste de imagem não corresponde às expectativas dos anotadores ou usuários? As instruções são enganosas ou você perdeu algum rótulo ou erro comum em suas imagens exemplares? Você pode refinar as instruções para seus anotadores?
  • Se você estiver satisfeito com a resolução de quaisquer problemas da execução de teste, faça um lote de anotações – Para testar os resultados do lote, siga a mesma abordagem de avaliação de qualidade de avaliação de variabilidades entre anotadores e entre imagens.

Conclusão

Esta postagem serve como um guia para as partes interessadas nos negócios entenderem as complexidades da criação de dados para aplicativos de IA/ML. Os processos descritos também servem como um guia para os profissionais técnicos gerarem dados de qualidade enquanto otimizam as restrições de negócios, como pessoal e custos. Se não for bem feito, um pipeline de criação e rotulagem de dados pode levar de 4 a 6 meses.

Com as diretrizes e sugestões descritas nesta postagem, você pode evitar obstáculos, reduzir o tempo de conclusão e minimizar os custos em sua jornada para a criação de dados de alta qualidade.


Sobre os autores

Crie dados de alta qualidade para modelos de ML com o Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.Jasleen Grewal é Cientista Aplicada da Amazon Web Services, onde trabalha com clientes da AWS para resolver problemas do mundo real usando aprendizado de máquina, com foco especial em medicina de precisão e genômica. Ela tem uma sólida formação em bioinformática, oncologia e genômica clínica. Ela é apaixonada por usar IA/ML e serviços em nuvem para melhorar o atendimento ao paciente.

Crie dados de alta qualidade para modelos de ML com o Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.Boris Aronchik é gerente do Amazon AI Machine Learning Solutions Lab, onde lidera uma equipe de cientistas e engenheiros de ML para ajudar os clientes da AWS a atingir as metas de negócios aproveitando as soluções de IA/ML.

Crie dados de alta qualidade para modelos de ML com o Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.Miguel Romero Calvo é Cientista Aplicado da Laboratório de soluções de ML da Amazon onde ele faz parceria com equipes internas da AWS e clientes estratégicos para acelerar seus negócios por meio de ML e adoção da nuvem.

Crie dados de alta qualidade para modelos de ML com o Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.Lin Lee Cheong é cientista sênior e gerente da equipe do Amazon ML Solutions Lab na Amazon Web Services. Ela trabalha com clientes estratégicos da AWS para explorar e aplicar inteligência artificial e aprendizado de máquina para descobrir novos insights e resolver problemas complexos.

Carimbo de hora:

Mais de Aprendizado de máquina da AWS