ONLINE/OFFLINE


APLICAÇÃO DA APRENDIZAGEM DE MÁQUINA EM BIBLIOTECA

A inteligência artificial (IA) segue gerando inovações e polêmicas no seu uso. Em contextos do social, econômico ou científico, se debatem o uso da Aprendizagem de Máquina (Machine LearningML).

Apesar do amplo debate, são poucas as bibliotecas aproveitando os recursos da IA nos serviços bibliográficos. Um aspecto, desta aplicação, na atividade bibliotecária, é a melhoria na geração e circulação de metadados. Bibliotecas em seus processos de aquisição, lidam com fornecedores de serviços e produtos.

No crescente mercado editorial de livros e revistas eletrônicas, quando o fornecedor ou a plataforma editorial não inclui metadados, esses podem ser comprados de agregadores que os criam e comercializam. Na impossibilidade de obtenção destes dados, as agências bibliográficas geram os dados (catalogação original) para serem disponibilizados ao público.

Sendo um negócio, têm-se fornecedores comercializando metadados para acesso aos recursos informacionais. São metadados que descrevem diretamente o recurso (registro bibliográfico), ou suplementares com dados sobre o autor, títulos ou assuntos (registros de autoridade).

Nestes processos bibliográficos é que surgem os projetos de IA, como o desenvolvido por Craig Boman. Ele explora o uso do LDA (latent Dirichlet allocations), para construir conjuntos estruturados de variáveis latentes para processar dados.

Por exemplo, se um conjunto é composto de palavras extraídas de documentos, o LDA é projetado para definir que cada documento é uma mistura de pequenos números de tópicos, e que a presença de cada palavra é atribuível a um dos tópicos. Assim, configura-se um modelo de ML aplicado na geração de cabeçalhos de assuntos.

A proposta de Boman foi aplicada sobre a coleção eletrônica de texto completo, de ficção e não-ficção, mantida pelo Projeto Gutenberg (PG). Os dados bibliográficos foram recuperados e extraídos por meio de programação em linguagem Python.

A proposta ressalta que a aprendizagem de máquina não é domínio apenas dos cientistas de dados. A busca pelo conhecimento sobre o tema e seus conceitos de modelagem e análise fatorial, pode ser alcançado por meio de leituras, eventos e cursos. Não é algo de capacitação trivial, mas que contribuem para iniciar a exploração dos algoritmos preditivos.

Ademais, no contexto bibliotecário, as bibliotecas têm acesso a uma quantidade crescente de dados. Isso pressiona os bibliotecários a tratá-los com ferramentas tecnológicas melhores. A aprendizagem de máquina é uma dessas ferramentas. Outro aspecto, a observar, são alguns dos termos técnicos em biblioteconomia, afetados por essas ferramentas, como:

  • Metadados: estruturas que descrevem dados disponibilizados aos usuários. Em geral, assumem a forma de dados estruturados, mas também podem ter a forma de dados não estruturados. No âmbito bibliotecário, apresentam-se na forma de registros: MARC, BIBFRAME, Linked Data, Dublin Core, RDF, XML ou qualquer outro esquema de dados.
  • Formato MARC: um padrão de metadados normalizado sob o AACR2 ou RDA. Apesar de onipresente nos processos catalográficos, é anacrônico sob o ponto de vista dos bancos de dados. Enquanto protocolo de intercâmbio, é diluído pelos derivados MARC, como: MARC XML ou MARC JSON. Os registros MARC21 funcionam como modelos de dados estruturados para aplicações da ML. Assim, o algoritmo pode dar sentido aos dados bibliográficos não estruturados, contidos em recurso eletrônico de texto completo.
  • Cabeçalhos de assuntos: na descrição dos metadados bibliográficos, bibliotecários de catalogação indicam pontos de acesso temáticos para os usuários navegarem. A geração desses cabeçalhos pelas bibliotecas, são limitadas ao uso de termos contendo vestígios anacrônicos de culturas passadas. Assim, há vieses de preconceito e heteronormativo. A aprendizagem de máquina não resolverá essa questão, mas pode realçar o reconhecimento da situação. E contribuir para aprimorar o processo da representação, ou mesmo garantir que a adoção dos sistemas de IA não reforcem a opressão e o preconceito sistêmico.

A aprendizagem de máquina refere-se ao uso de algoritmos para extrair significados e padrões dos dados. Também é definida como um subconjunto da IA. Envolve duas abordagens principais: a aprendizagem supervisionada e a não supervisionada. Ambas dependem do objetivo pretendido quanto ao tipo de dados tratados.

A análise de dados estruturados, em geral, adota a aprendizagem supervisionada. Na análise não estruturada, o provável é a não supervisionada.

Ambas as metodologias incluem, portanto, distintas ferramentas de ML. Essas ferramentas potenciais incluem: R, Java, Scala, Python, Go, Clojure, Matlab e Javascript.

Dentre essas, considera-se o Python mais acessível. A linguagem oferece um conjunto de módulos bem documentados, o que sugere um uso confortável com os scripts de linha de comando Linux.

Na aplicação da ML em bibliotecas, o desafio encontra-se na modelagem dos assuntos. Neste aspecto, a citada metodologia LDA, permite classificar um determinado documento, não só em um tópico, mas em tópicos sobrepostos.

O modelo LDA trata cada documento como uma mistura de assuntos, e cada assunto como uma mescla de palavras. Resulta em uma modelagem temática que deve permitir aos bibliotecários determinarem a vinculação do recurso bibliográfico com os cabeçalhos adotados e controlados pela biblioteca, e desta forma compreensível no desenvolvimento da ML.

A construção do ambiente de desenvolvimento, baseado na linguagem Python, impõe considerar necessidades de operação. Assim, ambientes virtuais nessa linguagem (não confundir com sistema operacional virtualizado) têm o benefício do isolamento de qualquer outro sistema, mesmo utilizando Python.

As ferramentas Python como o pipenv fornecem a capacidade de rastrear a instalação de módulos. Um dos módulos é o Pipfile, um arquivo gerado automaticamente e usado para gerenciar as dependências do projeto em desenvolvimento. Instruções sobre a configuração de ambientes de desenvolvimento Python, podem ser encontradas em consulta na Internet.

Também, existe a escolha dos provedores de serviços em nuvem e as respectivas variações de preços. Uma opção de máquina virtual (VM) é a oferecida pela Digital Ocean (DO). Uma startup provedora de serviços em nuvem, que oferece plataformas focada no desenvolvimento de software e/ou aprendizagem de máquina, entre outros.

Quanto a aplicação comentada, todo o seu detalhamento pode ser obtido no repositório Github. No caso da aplicação, a origem dos dados foram os livros eletrônicos, em inglês, armazenados no PG, disponíveis para download. A identificação de obras mais recentes, na coleção, requereu a configuração de um robô (algoritmo utilizado para este fim e direcionado para URL específica).

A partir da VM criada na nuvem DO, toda a coleção do PG foi vasculhada e obras selecionadas e copiadas em um final de semana. Este procedimento pode ser obtido no arquivo pg-textos.

O processo da limpeza dos dados é um trabalho que ocupa o tempo dos cientistas de dados. Embora a aprendizagem de máquina pareça glamoroso, os seus bastidores contemplam intermináveis tarefas de extração, transformação e carregamento de dados para o ambiente de execução.

A limpeza, no presente caso, incluiu a remoção de livros eletrônicos em outros idiomas; bem como a retirada de cada livro dos termos de licença de uso. Atividade complexa realizada em 85.000 obras, além da geração de backup dos arquivos. Uma das etapas necessárias para controle das versões geradas.

Outra etapa envolvida foi a serialização, que converte conteúdos em objeto transmissível para a memória ou um arquivo, para ser recriado quando necessário. Os conteúdos eletrônicos foram codificados em objeto Python para facilitar o carregamento e a análise em JSON (pela sua rapidez e uso entre usuários Python).

Para esse processamento existem tutoriais online, como o Jason Brownlee’s machine learning mastery tutorials. Da mesma maneira, o script Python de serialização de objetos, python jsn.py foi útil para separar os conteúdos que não fossem da língua inglesa.

Outra etapa envolvida é a tokenization, e serve para reduzir a coleção de textos eletrônicos aos mínimos denominadores comuns. A redução pode ser para sentenças, frases, palavras ou caracteres.

Também, inclui a remoção de termos irrelevantes ou o uso de números exclusivos como indicadores para eles. Em vez de processar os livros como texto, é mais eficiente alimentar os dados para um algoritmo de ML como se fossem números representando palavras distintas.

Da mesma forma, quando o algoritmo de ML examina uma imagem, em vez da ordem sem sentido das cores, na foto, procede com base em um gráfico numérico bidimensional que representam a imagem.

O mesmo ocorre com os livros. Em vez de analisar a ordem sem sentido das palavras, elas são reduzidas a uma série ordenada de números que refletem a obra. Em seguida, o algoritmo pode analisar facilmente uma sequência numérica que representa essa obra eletrônica e extrair os seus metadados.

Na analogia da imagem, as diferenças entre a foto de um gato e a foto de um cachorro representam conjuntos de números bidimensionais únicos. Considerando que as possíveis diferenças entre as obras: “República de Platão” e “Ilíada de Homero”, após ambas serem reduzidas a tokens ou vetores de palavras. Elas podem conter diferenças semelhantes e previsíveis como nas matrizes bidimensionais que representam um gato versus as matrizes numéricas que representam um cão.

A etapa final, na aplicação da aprendizagem de máquina, começa efetivamente, após a redução de toda a coleção de livros eletrônicos em texto completo serem extraídos do repositório, e codificados em JSON. Além da aplicação da LDA para modelar os assuntos das obras. Para esse funcionamento inclui-se um kit de ferramentas de linguagem natural:

Recomenda-se aos bibliotecários interessados em ML, que tenham atenção com a preparação dos dados. Por exemplo, ao trabalhar com cabeçalhos de assuntos, utilizar vocabulários estruturados como o da Library of Congress. Observar que o modelo LDA é uma ferramenta de uso atraente para melhorar os metadados de recursos com texto completo.

Deve-se considerar que os cabeçalhos aprimorados pelo LDA não irão solucionar a ocorrências de termos preconceituosos. Podem contribuir para que os bibliotecários de catalogação forneçam serviços mais dinâmicos, amplos e complexos aos seus usuários.

Indicação de leitura:

Boman, C. An Exploration of Machine Learning in Libraries: Chapter 4. In: Griffey, J. (ed). Artificial Intelligence and Machine Learning in Libraries. Library Technology Reports (vol. 55, no. 1). Fonte: https://journals.ala.org/index.php/ltr/article/view/6911/930


   79 Leituras


Saiba Mais





Sem Próximos Ítens

Ítem Anterior

author image
A REINVENÇÃO DA BIBLIOTECA PÚBLICA: DESCRIÇÃO DE CASO
Outubro/2021



author image
FERNANDO MODESTO

Bibliotecário e Mestre pela PUC-Campinas, Doutor em Comunicações pela ECA/USP e Professor do departamento de Biblioteconomia e Documentação da ECA/USP.