Consolidar anotações - Amazon SageMaker

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Consolidar anotações

Uma anotação é o resultado da tarefa de rotulagem de um único trabalhador. A consolidação de anotações combina as anotações de dois ou mais trabalhadores em um único rótulo para seus objetos de dados. Um rótulo, que é atribuído a cada objeto no conjunto de dados, é uma estimativa probabilística do que o rótulo verdadeiro deva ser. Cada objeto no conjunto de dados geralmente tem várias anotações, mas somente um rótulo ou um conjunto de rótulos.

Você pode decidir quantos trabalhadores devem anotar cada objeto no seu conjunto de dados. Mais trabalhadores podem aumentar a precisão dos rótulos, mas também aumentam o custo de rotulagem. Para saber mais sobre os preços do Ground Truth, consulte os preços SageMaker do Amazon Ground Truth.

Se você usa o SageMaker console da Amazon para criar um trabalho de rotulagem, os seguintes são os padrões para o número de trabalhadores que podem anotar objetos:

  • Classificação de texto — três trabalhadores

  • Classificação de imagens — três trabalhadores

  • Caixas delimitadoras — cinco trabalhadores

  • Segmentação de semântica — três trabalhadores

  • Reconhecimento de entidade nomeada — três trabalhadores

Ao usar a operação CreateLabelingJob, você define o número de trabalhadores que devem anotar cada objeto de dados usando o parâmetro NumberOfHumanWorkersPerDataObject. É possível substituir o número padrão de trabalhadores que rotulam um objeto de dados usando o console ou a operação CreateLabelingJob.

O Ground Truth fornece uma função de consolidação de anotações para cada uma das tarefas de rotulagem predefinidas: caixa delimitadora, classificação de imagem, reconhecimento de entidade de nome, segmentação de semântica e classificação de texto. Estas são as funções:

  • A consolidação de anotações em várias classes para classificação de texto e imagem usa uma variante da abordagem de Maximização de expectativa para anotações. Ela estima parâmetros para cada trabalhador e usa a inferência bayesiana para estimar a classe real com base nas anotações de classe de trabalhadores individuais.

  • A anotação de caixa delimitadora consolida caixas delimitadoras de vários trabalhadores. Essa função encontra as caixas mais semelhantes de diferentes trabalhadores com base no índice de Jaccard, ou na interseção sobre união, das caixas e calcula a média delas.

  • A consolidação de anotações de segmentação semântica trata cada pixel em uma única imagem como uma classificação de várias classes. Essa função trata as anotações de pixel dos trabalhadores como "votos", com mais informações dos pixels adjacentes incorporados, aplicando uma função de suavização à imagem.

  • As seleções de texto de clusters de reconhecimento de entidade nomeada por similaridade de Jaccard e calcula os limites de seleção com base no modo ou na média, caso o modo não esteja claro. O rótulo é resolvido para o rótulo de entidade mais atribuído no cluster, quebrando os vínculos por seleção aleatória.

É possível usar outros algoritmos para consolidar anotações. Para obter mais informações, consulte Criar sua própria função de consolidação de anotações.

Criar sua própria função de consolidação de anotações

É possível optar por usar sua própria função de consolidação de anotações para determinar os rótulos finais dos objetos rotulados. Existem muitas abordagens possíveis para escrever uma função e a abordagem que você usar dependerá da natureza das anotações a serem consolidadas. Em termos gerais, as funções de consolidação examinam as anotações dos trabalhadores, medem a similaridade entre elas e usam algum tipo de julgamento probabilístico para determinar qual deve ser o rótulo mais provável.

Se quiser usar outros algoritmos para criar funções de consolidação de anotações, você poderá encontrar as respostas do trabalhador na pasta [project-name]/annotations/worker-response do bucket do para o qual você direciona a saída do trabalho.

Avaliar similaridade

Para avaliar a similaridade entre os marcadores, use uma das seguintes estratégias ou use uma que atenda às suas necessidades de rotulagem de dados:

  • Para espaços de rótulo que consistem em categorias discretas e mutuamente exclusivas, como classificação de várias classes, avaliar a similaridade pode ser um processo simples. Os rótulos separados correspondem ou não.

  • Para espaços de rótulo que não possuem valores separados, como anotações de caixa delimitadora, encontre uma ampla medida de similaridade. No caso de caixas delimitadoras, uma dessas medidas é o índice de Jaccard. Ele mede a relação entre a interseção de duas caixas com a união das caixas para avaliar como elas são semelhantes. Por exemplo, se houver três anotações, poderá haver uma função que determine quais anotações representam o mesmo objeto e que devem ser consolidadas.

Avaliar o rótulo mais provável

Com uma das estratégias acima em mente, faça algum tipo de julgamento probabilístico sobre o rótulo consolidado. No caso de categorias discretas e mutuamente exclusivas, isso pode ser simples. Uma das maneiras mais comuns de fazer isso é obter os resultados de uma votação majoritária entre as anotações. Isso pondera as anotações igualmente.

Algumas abordagens tentam estimar a precisão de diferentes anotadores e pesam suas anotações em proporção à probabilidade de correção. Um exemplo disso é o método Maximização de Expectativas, que é usado na função de consolidação padrão do Ground Truth para anotações de várias classes.

Para obter mais informações sobre como criar uma função de consolidação de anotações, consulte Etapa 3: Processando com AWS Lambda.