Technical
Uma Introdução ao Multiple Instance Learning
Paulo Maia · 18 de maio de 2021
Multiple Instance Learning (MIL) é uma forma de aprendizado fracamente supervisionado onde instâncias de treino são organizadas em conjuntos, denominados bags, e um rótulo é fornecido para todo o bag, em vez de para as instâncias individuais. Isto permite aproveitar dados com rótulos fracos, que estão presentes em muitos problemas empresariais, uma vez que rotular dados é frequentemente dispendioso:
- Imagiologia Médica: Diagnóstico auxiliado por computador pode ser treinado com imagens médicas para as quais apenas o diagnóstico do paciente para regiões com doença está disponível, em vez de anotações locais.
- Vídeo/Áudio: Etiquetas de vídeo ou áudio geralmente estão disponíveis apenas para o vídeo inteiro, sendo relevante saber quando isso ocorre (ex. este vídeo contém um gato e uma pessoa)
- Texto: Classificação de Documentos, onde se pretende saber, por exemplo, se um certo sítio web (composto por várias páginas) é sobre um tema específico. Haverá múltiplas páginas com informação irrelevante onde esse tema não está presente.
- Marketing: Frequentemente, campanhas de marketing são enviadas para um grupo de pessoas e não está claro qual pessoa foi impactada.
- Séries Temporais: Em alguns cenários industriais, onde se dispõe de contadores de gás/água e se conhece a quantidade total por mês, pode-se desejar estimar a quantidade a um nível mais granular (ex. dias).
Gostaria de saber mais sobre Multiple Instance Learning?
A literatura centra-se principalmente em aplicações de MIL para classificação. No entanto, existem algumas aplicações de MIL para regressão, ranking ou clustering, que não serão abordadas aqui. Para recursos sobre isso, consulte este artigo de revisão.
Além deste post de blog, dispomos de um curso online onde discutimos em profundidade Multiple Instance Learning, como implementá-lo, erros comuns e como evitá-los, e alguns exemplos práticos da nossa prática de consultoria. Aprenderá também sobre outras técnicas como Semi-Supervised Learning, Self-Supervised Learning, entre outras.
Curso
The Machine Learning Spectrum
Domine Multiple Instance Learning e várias outras técnicas no nosso curso.
Representação
Na suposição padrão de MIL, bags negativos contêm apenas instâncias negativas, enquanto bags positivos contêm pelo menos uma instância positiva. Instâncias positivas são designadas na literatura como witnesses.
Um exemplo intuitivo para MIL é uma situação onde várias pessoas têm um porta-chaves específico que contém chaves. Algumas dessas pessoas conseguem entrar numa certa sala, outras não. A tarefa é então prever se uma certa chave ou um certo porta-chaves consegue abrir essa sala.
Para resolver isto, é necessário encontrar a chave exata que é comum a todos os porta-chaves "positivos" – a chave verde. Consegue-se então classificar corretamente um porta-chaves inteiro – positivo se contém a chave necessária, ou negativo caso contrário.
Esta suposição padrão pode ser ligeiramente modificada para acomodar problemas onde bags positivos não podem ser identificados por uma única instância, mas pela sua acumulação. Por exemplo, na classificação de imagens de deserto, mar e praia, as imagens de praias contêm segmentos tanto de areia como de água. Várias instâncias positivas são necessárias para distinguir uma "praia" de "deserto"/"mar".
Características dos Problemas de Multiple Instance Learning
Existem algumas características comuns dos problemas de MIL, conforme definido na literatura, que serão discutidas em seguida.
Tarefa/Predição: Nível de Instância vs Nível de Bag
Em algumas aplicações, como localização de objetos em imagens (em recuperação de conteúdo, por exemplo), o objetivo não é classificar bags, mas classificar instâncias individuais. O rótulo do bag é a presença dessa entidade na imagem.
Note-se que o desempenho de classificação de bags de um método muitas vezes não é representativo do seu desempenho de classificação de instâncias. Por exemplo, ao considerar bags negativos, um único falso positivo causa a má classificação de um bag. Por outro lado, em bags positivos, isto não altera o rótulo, o que não deveria afetar a perda a nível de bag.
Composição do Bag
A maioria dos métodos de MIL existentes pressupõe que instâncias positivas e negativas são amostradas independentemente de uma distribuição positiva e negativa. Frequentemente não é este o caso, devido à co-ocorrência de várias relações:
Similaridades Intra-Bag
As instâncias pertencentes ao mesmo bag partilham similaridades que instâncias de outros bags não possuem. Em aplicações de Visão Computacional, é provável que todos os segmentos partilhem algumas similaridades relacionadas com as condições de captura (ex. iluminação). Outra possibilidade é a sobreposição de patches num processo de extração, conforme representado abaixo.
Adaptado de aqui
Co-ocorrência de Instâncias
Instâncias co-ocorrem em bags quando partilham uma relação semântica. Este tipo de correlação ocorre quando o assunto de uma imagem é mais provável de ser visto num ambiente do que noutro, ou quando certos objetos são frequentemente encontrados juntos.
Adaptado de aqui
Estrutura de Instância e Bag
Em alguns problemas, existe uma estrutura subjacente (espacial, temporal, relacional, causal) entre instâncias em bags ou mesmo entre bags. Por exemplo, quando um bag representa uma sequência de vídeo – por exemplo, identificar os frames de um vídeo onde um gato aparece sabendo apenas que há um gato nesse vídeo – todos os frames ou patches estão ordenados temporal e espacialmente.
Ambiguidade de Rótulos
Ruído no Rótulo
Alguns algoritmos de MIL, especialmente aqueles que funcionam sob a suposição padrão de MIL, dependem muito da correção dos rótulos do bag. Na prática, existem muitas situações onde instâncias positivas podem ser encontradas em bags negativos – devido a erros de rotulação ou ruído inerente. Por exemplo, em aplicações de visão computacional, é difícil garantir que imagens negativas não contenham patches positivos: Uma imagem mostrando uma casa pode conter flores, mas é improvável ser anotada como uma imagem de flores.
O ruído no rótulo também ocorre quando se têm bags diferentes com diferentes densidades de eventos positivos. Por exemplo, temos uma gravação de áudio (R1) de 10 segundos contendo apenas um total de 1 segundo do evento etiquetado e outra gravação de áudio (R2) da mesma duração na qual o evento etiquetado está presente durante um total de 5 segundos. R1 é uma representação mais fraca do evento comparada com R2.
Espaços de Rótulo Diferentes
É possível extrair patches de imagens negativas que caem nesta região positiva. No exemplo mostrado abaixo, alguns patches extraídos da imagem de um tigre branco caem noutra região de conceito por serem visualmente similares a ela.
Modelos de Multiple Instance Learning
Existem múltiplos modelos que podem ser usados para MIL – tanto para classificação a nível de instância como de bag. Alguns exemplos são mostrados em seguida:
Classificação a Nível de Bag
Abordagem Bag of Words
Um bag pode ser representado pelas suas instâncias, usando métodos como um image embedding, e determinando a frequência de cada instância num bag. Um classificador é então treinado neste histograma, para determinar se um bag é positivo ou não.
Earth Mover Distance Support Vector Machine (EMD-SVM)
O EMD-SVM é uma medida da dissimilaridade entre duas distribuições (ex. através de um image embedding também). Cada bag é uma distribuição de instâncias e o EMD é usado para criar um kernel usado num SVM.
Métodos de Espaço de Instância
(referência de imagem aqui)
Aplicações alternativas de SVMs (mi-SVM e MI-SVM) foram desenvolvidas para aplicações de multiple instance learning. Classicamente, SVMs tentam determinar a margem máxima entre instâncias. Para MIL, uma vez que o objetivo é ter pelo menos uma instância num bag positivo como positiva, a margem é alterada para que essa condição ocorra: pelo menos uma instância num bag positivo deveria ter uma margem positiva grande.
Após determinar a função de decisão, a classe das instâncias pode ser recuperada.
Misto
Rede Neural com Pooling
Com um rótulo a nível de bag, pode-se ter um espaço latente contendo a probabilidade de cada segmento (usando uma entrada baseada em sequência). Aplicando um operador de pooling (max/average pooling), há apenas um único score associado a um bag. Após treinamento, se se quiser fazer uma predição a nível de instância, a última camada de pooling pode ser removida.
Normalmente, max pooling é usado para problemas de classificação, enquanto average pooling é aplicado a problemas de regressão.
Redes Neurais com Mecanismos de Atenção
Mecanismos de Atenção podem também ser aplicados a este tipo de problemas. Considere a imagem abaixo, para detecção de eventos a nível de áudio, que usa tanto um detector como um classificador (simétricos) com apenas o rótulo de nível de vídeo para criar dois modelos separados. A saída do classificador indica quão provável é um certo bloco ter a etiqueta k. A saída do detector indica quão informativo é o bloco ao classificar a etiqueta k. Desta forma, o modelo determina quão informativo é um bloco para classificar uma certa etiqueta.
(referência de imagem aqui)
eBook GRATUITO: Como transformar o seu negócio com IA
Descarregue o nosso eBook e descubra os erros mais comuns na implementação de projetos de IA e como evitá-los.
Obtenha Conteúdo Exclusivo!
Nome(Obrigatório)
Email(Obrigatório)
submitting form agree policy(Obrigatório)
Ao submeter este formulário concordo com os Termos e Política de Privacidade.
Comentários
Este campo é para validação e deve ser deixado inalterado.
Enviar agora!
Conclusão
Este post de blog descreveu o conceito de Multiple Instance Learning, os seus principais desafios, e alguns exemplos de algoritmos que podem ser utilizados. Embora aplicar MIL não seja ideal, e muito frequentemente pareça impossível treinar modelos com anotações limitadas, existem ferramentas concebidas especificamente para contornar esta barreira e obter resultados satisfatórios.
Estas são apenas algumas das ferramentas que podem ser usadas para este fim. Esperamos que tenha tido algumas ideias novas para aplicar isto aos seus projetos – inscreva-se no nosso curso online para informações sobre Multiple Instance Learning e outros paradigmas de aprendizado.
Curso
The Machine Learning Spectrum
Domine Multiple Instance Learning e várias outras técnicas no nosso curso.
