Reconhecimento de entidade nomeada (REN), também conhecido como identificação de entidade, fragmentação de entidade e extração de entidade, é uma subtarefa da extração de informação que busca localizar e classificar entidades nomeadas mencionadas em texto não estruturado em categorias predefinidas, como nomes de pessoas (PES), organizações (ORG), locais (LOC), entidades geopolíticas (EGP), veículos (VEI), códigos médicos, expressões de tempo, valores monetários e porcentagens. A maioria das pesquisas sobre sistemas de REN foi estruturada como a transformação de um bloco de texto não anotado, como transduzir "Jim comprou 300 ações da Acme Corp. em 2006" em um bloco anotado que destaca os nomes das entidades: "[Jim]Pessoa comprou 300 ações da [Acme Corp.]Organização em [2006]Tempo." Neste exemplo, um nome de pessoa consistindo em um token, um nome de empresa de dois tokens e uma expressão temporal foram detectados e classificados.
O termo "entidade nomeada" restringe a tarefa a entidades para as quais uma ou mais cadeias de caracteres, como palavras ou frases, representam de forma razoavelmente consistente algum referente. Isso está intimamente relacionado a designadores rígidos, conforme definidos por Saul Kripke, embora na prática a REN lide com muitos nomes e referentes que não são filosoficamente "rígidos". Por exemplo, a empresa automotiva criada por Henry Ford em 1903 pode ser referida como "Ford" ou "Ford Motor Company", embora "Ford" possa se referir a muitas outras entidades também. Designadores rígidos incluem nomes próprios, bem como termos para certas espécies biológicas e substâncias, mas excluem pronomes (ver resolução de correferência), descrições que selecionam um referente por suas propriedades e nomes para tipos de coisas, em oposição a indivíduos.
Definição do Problema
O reconhecimento completo de entidade nomeada é frequentemente dividido, conceitualmente e também em implementações, em dois problemas distintos: detecção de nomes e classificação dos nomes pelo tipo de entidade a que se referem (por exemplo, pessoa, organização ou local). A primeira fase é tipicamente simplificada para um problema de segmentação: nomes são definidos como extensões contíguas de tokens, sem aninhamento, de modo que "Bank of America" seja um único nome, desconsiderando o fato de que dentro desse nome, a substring "America" é em si um nome. Este problema de segmentação é formalmente semelhante ao chunking. A segunda fase requer a escolha de uma ontologia pela qual organizar categorias de coisas.
Expressões temporais e algumas expressões numéricas (por exemplo, dinheiro, porcentagens) também podem ser consideradas entidades nomeadas no contexto da tarefa de REN. Embora algumas instâncias desses tipos sejam bons exemplos de designadores rígidos (por exemplo, o ano 2001), há também muitos inválidos (por exemplo, "eu tiro férias em junho"). No primeiro caso, o ano 2001 refere-se ao ano 2001 do calendário gregoriano. No segundo caso, o mês de junho pode se referir ao mês de um ano indefinido (junho passado, próximo junho, todo junho). É discutível que a definição de entidade nomeada seja flexibilizada em tais casos por razões práticas. A definição do termo entidade nomeada, portanto, não é estrita e frequentemente precisa ser explicada no contexto em que é usada.
Certas hierarquias de tipos de entidades nomeadas foram propostas na literatura. As categorias BBN, propostas em 2002, são usadas para resposta a perguntas e consistem em 29 tipos e 64 subtipos. A hierarquia estendida de Sekine, também proposta em 2002, é composta por 200 subtipos. Mais recentemente, em 2011, Ritter usou uma hierarquia baseada nos tipos de entidade comuns do Freebase em experimentos inovadores sobre REN em textos de mídia social.
Dificuldades
A REN pode apresentar ambiguidades de resolução de referência, onde o mesmo nome pode se referir a diferentes entidades do mesmo tipo. Por exemplo, "JFK" pode se referir ao ex-presidente dos Estados Unidos ou ao seu filho. O mesmo nome pode se referir a tipos completamente diferentes: "JFK" pode se referir ao aeroporto em Nova York, e "IRA" pode se referir à Conta Individual de Aposentadoria, à Associação Internacional de Leitura ou ao Exército Republicano Irlandês. Isso pode ser causado por metonímia; por exemplo, "A Casa Branca" pode se referir a uma organização em vez de um local.
Avaliação Formal
Para avaliar a qualidade da saída de um sistema de REN, várias medidas foram definidas. As medidas usuais são chamadas de precisão, revocação e pontuação F1. No entanto, várias questões permanecem sobre como calcular esses valores. Essas medidas estatísticas funcionam razoavelmente bem para os casos óbvios de encontrar ou perder uma entidade real exatamente, e de encontrar uma não entidade. No entanto, a REN pode falhar de muitas outras maneiras, muitas das quais são discutivelmente "parcialmente corretas" e não devem ser contadas como sucesso ou fracasso completo. Por exemplo, identificar uma entidade real, mas com menos tokens do que o desejado (por exemplo, perder o último token de "John Smith, M.D."), com mais tokens do que o desejado (por exemplo, incluindo a primeira palavra de "The University of MD"), particionando entidades adjacentes de forma diferente (por exemplo, tratando "Smith, Jones Robinson" como 2 em vez de 3 entidades), atribuindo um tipo completamente errado (por exemplo, chamando um nome pessoal de organização), atribuindo um tipo relacionado, mas inexato (por exemplo, "substância" em vez de "droga", ou "escola" em vez de "organização"), ou identificando corretamente uma entidade quando o que o usuário queria era uma entidade de escopo menor ou maior (por exemplo, identificando "James Madison" como um nome pessoal quando faz parte de "James Madison University"). Alguns sistemas de REN impõem a restrição de que entidades não podem se sobrepor ou aninhar, o que significa que, em alguns casos, é necessário fazer escolhas arbitrárias ou específicas da tarefa.
Um método excessivamente simples de medir a precisão é meramente contar qual fração de todos os tokens no texto foi corretamente ou incorretamente identificada como parte de referências a entidades (ou como sendo entidades do tipo correto). Isso sofre de pelo menos dois problemas: primeiro, a grande maioria dos tokens em textos do mundo real não faz parte de nomes de entidades, então a precisão da linha de base (sempre prever "não é uma entidade") é extravagantemente alta, tipicamente acima de 90%; e segundo, prever incorretamente a extensão completa de um nome de entidade não é devidamente penalizado (encontrar apenas o primeiro nome de uma pessoa quando o sobrenome vem em seguida pode ser pontuado como metade).
Em conferências acadêmicas como a CoNLL, uma variante da pontuação F1 foi definida da seguinte forma: Precisão é o número de extensões de entidades previstas que coincidem exatamente com as extensões nos dados de avaliação padrão ouro. Por exemplo, quando [Pessoa Hans] [Pessoa Blick] é previsto, mas [Pessoa Hans Blick] era o necessário, a precisão para a entidade prevista é zero. A precisão é então calculada como a média sobre todas as entidades previstas. A revocação é similarmente o número de nomes nos dados padrão ouro que aparecem exatamente na mesma localização nas previsões. A pontuação F1 é a média harmônica desses dois valores. Segue-se da definição acima que qualquer previsão que perca um único token, inclua um token espúrio ou tenha o tipo errado é contada como uma falha completa para aquela extensão.
Abordagens e Aplicações
Sistemas tradicionais de REN dependiam de regras escritas à mão e modelos estatísticos baseados em características, como campos aleatórios condicionais. Com o surgimento do aprendizado de máquina e do aprendizado profundo, sistemas modernos frequentemente usam arquiteturas de redes neurais, incluindo modelos baseados em transformadores, que se tornaram o padrão para o desempenho de ponta. Esses modelos são frequentemente pré-treinados em grandes corpora e ajustados para tarefas de REN, beneficiando-se dos avanços em modelos de linguagem de grande porte desenvolvidos por organizações como OpenAI, Anthropic e Google DeepMind. A REN é amplamente utilizada em pipelines de extração de informação para resposta a perguntas, busca e construção de bases de conhecimento, e é um componente-chave em muitas aplicações de processamento de linguagem natural.
Ver Também
- extração de informação
- resolução de correferência
- chunking
- campos aleatórios condicionais
- transformador
- modelo de linguagem de grande porte