Integrando PKGs na empresa

Dec 05 2022
Como a IA está impulsionando a tecnologia de gráficos de conhecimento pessoal
Em meus blogs anteriores, escrevi sobre o tópico de rápido crescimento de Personal Knowledge Graphs (PKGs) e gerenciamento de conhecimento. Este blog se concentrará nos desafios de integrar PKGs em ecossistemas de conhecimento maiores, como o gráfico de conhecimento empresarial (EKG) de sua empresa ou o sistema de gerenciamento de conhecimento de faculdades e universidades.
Figura 1: Adicionar um novo conceito a um pequeno gráfico de conhecimento pessoal (PKG) é muito mais simples do que adicionar um novo conceito a um grande gráfico de conhecimento corporativo complexo. Imagem do autor e Stable Diffusion.

Em meus blogs anteriores, escrevi sobre o tópico de rápido crescimento de Personal Knowledge Graphs (PKGs) e gerenciamento de conhecimento . Este blog se concentrará nos desafios de integrar PKGs em ecossistemas de conhecimento maiores, como o gráfico de conhecimento empresarial (EKG) de sua empresa ou o sistema de gerenciamento de conhecimento de faculdades e universidades.

O público-alvo desta postagem é um arquiteto de soluções que foi solicitado a entender as compensações entre muitos silos PKG isolados e gráficos de conhecimento da empresa mais integrados que compartilham conhecimento e evitam a duplicação e a inconsistência do conhecimento. Analisamos as opções de integração limitadas disponíveis hoje e prevemos grandes retornos sobre investimentos, pois os produtos PKG integram as recomendações mais recentes de grandes modelos de aprendizado de máquina.

Se você é novo na área de PKGs, recomendamos fortemente a leitura dos artigos anteriores sobre PKGs, EKGs e gerenciamento de conhecimento para entender completamente esses conceitos.

A tensão de reutilização pessoal x organizacional

Figura 2: A tensão inerente entre a anotação pessoal de forma livre e a necessidade de uma estrutura consistente em conhecimento digitado de forma semelhante. Imagem do autor.

Antes de mergulharmos na terminologia, vamos lembrar que sempre há duas forças opostas conduzindo os PKGs em uma organização. A primeira força é a necessidade de cada pessoa capturar rapidamente notas consistentes com sua base de conhecimento pessoal. À medida que você digita, as listas de sugestões automáticas permitem que você se conecte rapidamente aos seus próprios conceitos pessoais em seu próprio PKG. Ao digitar “[[“ no editor de texto, uma lista de conceitos existentes é apresentada. À medida que você digita, a lista é reduzida automaticamente para corresponder ao prefixo que você já iniciou.

A segunda força é o desejo de muitas empresas de capturar esse conhecimento de forma que possa ser usado por outras pessoas na empresa. Isso significa que grandes organizações geralmente colocam regras adicionais que impedem a captura rápida de conhecimento. Deseja emitir um ticket no sistema de helpdesk? Você deve nos informar sobre seu computador, o que está tentando fazer, qual aplicativo está usando e algumas informações sobre como reproduzir o erro. Sem esses campos obrigatórios preenchidos, o botão Salvar fica desabilitado.

Minha experiência é que sempre veremos trade-offs. Quem paga pelo software, como o conhecimento é capturado e como os MBOs de compartilhamento de conhecimento são escritos geralmente são motivos de preocupação. Não existe uma solução única aqui, e o uso de grandes ferramentas de processamento de linguagem natural (NLP) de aprendizado de máquina está apenas tornando as decisões mais complexas. Abordaremos esse assunto mais adiante no blog.

Classificação das ferramentas atuais

Figura 3: Este gráfico mostra um espectro de ferramentas para fazer anotações e coletar conhecimento vinculado. Imagem do autor.

Para começar nossa discussão, considere duas ferramentas de desktop. A primeira é uma ferramenta de edição autônoma, como o Microsoft Notepad(TM), que acompanha os aplicativos de área de trabalho do Windows(TM). Pense nisso como adicionar uma nova folha de conhecimento a uma pequena muda nova de uma árvore. Essa ferramenta permite digitar qualquer texto do teclado e salvá-lo no sistema de arquivos local. Um bloco de notas é ideal para capturar novas informações desconectadas do resto do mundo. Você nem precisa estar conectado à sua rede corporativa para usá-lo.

Wikis também permitem que você insira texto de forma livre, mas sempre dentro de uma página que tenha um nome exclusivo. Seu texto pode conter referências a outras páginas nomeadas. Algumas páginas do Wiki podem conter pares de chave-valor estruturados, geralmente chamados de Infoboxes. A principal diferença entre o bloco de notas e o Wiki é que as páginas do Wiki são armazenadas em um servidor e convertidas em páginas da Web com links.

Agora vamos considerar um editor PKG como Roam ou Obsidian. Eles estão sempre conectados a uma base de conhecimento existente e o foco é criar links rápidos para seu gráfico pessoal interno. Aqui está uma metáfora que queremos entender claramente da Figura 1. Os PKGs são úteis quando também queremos capturar novas informações que são uma extensão da estrutura de conhecimento existente. Por exemplo, quando você insere um nome de conceito simples, o sistema verifica se é um novo conceito e não uma duplicata de um conceito existente ou um alias para um conceito existente.

No canto inferior direito do gráfico estão as ferramentas formais de edição de ontologia, como Protege, e bancos de dados de gráficos, como Neo4j ou TigerGraph. Esses bancos de dados de gráficos têm muitas restrições, como tipos formais para cada vértice e aresta e regras estritas sobre quais tipos de vértices podem se conectar uns aos outros. As arestas também devem ter um tipo.

A última caixa na Figura 3 é o PKG assistido por aprendizado de máquina (ML-PKG), no qual as ferramentas NLP são usadas para sugerir texto automaticamente em seu editor PKG. Essas ferramentas ainda não existem, mas com a rápida evolução de modelos de linguagem grande como BERT e GPT-3, esperamos que elas estejam disponíveis em breve.

Em resumo, haverá muitas regras em um Enterprise PKG integrado. Muitas dessas regras podem ser úteis. Eles podem acelerar seu trabalho adicionando conhecimento usando o preenchimento automático contextual inteligente. Algumas dessas regras atrapalharão e diminuirão sua taxa de captura de conhecimento.

Terminologia Básica

Vamos começar nossa discussão com alguns termos e conceitos básicos. Em um PKG, o objetivo é permitir com eficiência que um fluxo digitado de caracteres capture com eficiência conceitos de conhecimento e faça conexões com conceitos anteriores. Em um PKG, usamos uma estrutura de dados chamada gráfico de conhecimento. Um gráfico armazena não apenas uma lista plana de conceitos, mas também a relação entre esses conceitos. O termo técnico que usamos para armazenamento de conceito é um vértice, e o termo para relacionamentos é chamado de aresta.

Sistemas não tipificados vs. tipificados

Muitos de nós estão familiarizados com o conceito de Wiki. A palavra “wiki” é um termo havaiano para “rápido”. Foram criados para que o usuário pudesse minimizar o número de teclas que conectam as “páginas” do wiki umas às outras. No modelo de dados Wiki, todos os conceitos são armazenados em uma página wiki, e o objetivo do projeto é seguir a regra de uma página por conceito para que os conceitos possam ser facilmente vinculados. Se você colocar dois ou mais conceitos em uma página, um link para essa página não mostrará claramente um padrão de conceito único para conceito único.

Os wikis foram um passo maravilhoso na anotação porque as páginas de conceito ou cartões de conceito foram compartilhados em um servidor web. À medida que seus colegas adicionam novos conceitos, você pode criar links para esses conceitos. À medida que você adiciona novos conceitos, seus colegas também podem criar links para eles. Foi um grande avanço na gestão do conhecimento compartilhado e é a base para sistemas como a Wikipédia.

No entanto, a maioria das pessoas não pensa em um Wiki como verdadeiros “gráficos de conhecimento” porque eles realmente são apenas coleções de documentos não digitados vinculados, assim como a rede mundial de computadores. Os designers do wiki queriam estender o conceito de “hiperlinks” e tornar os links mais fáceis de digitar do que lembrar a sintaxe complexa das referências de âncora HTML. A diferença fundamental entre um wiki e um verdadeiro gráfico de conhecimento é o fato de que as páginas wiki são todas do mesmo “tipo” (um tipo de documento/cartão/conceito), e os relacionamentos também têm um único tipo (está relacionado a ).

Gráficos de conhecimento verdadeiros permitem que cada vértice e aresta tenham um tipo específico . A lista de tipos possíveis geralmente é configurada por um departamento centralizado. Por exemplo, alguns vértices podem representar um funcionário, alguns podem representar produtos que você vende e alguns podem descrever eventos de negócios, como uma chamada feita para o helpdesk de sua empresa. O principal sobre os tipos é que podemos associar regras a tipos, e essas regras forçam a consistência que torna os gráficos de conhecimento fáceis de consultar, assim como consultamos um banco de dados tradicional usando SQL.

Se você estiver adicionando uma nova cidade a um PKG, poderá informar ao sistema que o vértice é do tipo “cidade” e também adicionar um relacionamento “localizado em” a um vértice “estado”. Ambos os vértices e relacionamentos têm tipos.

No campo da estratégia do gráfico de conhecimento empresarial, usamos a hipótese de Jim Hendler “ Um pouco de semântica ajuda muito. ” Adicionar alguns tipos simples a vértices e arestas é a principal maneira de adicionar significado (semântica) aos PKGs para sobrecarregar sua capacidade de busca e reutilização.

Muitas organizações descobriram que wikis compartilhados são um sistema ideal para armazenar e vincular conhecimento. No entanto, a maioria das organizações não consulta os wikis porque prioriza a edição de formato livre em detrimento de regras rígidas. Você sempre pode tentar impor estrutura em uma página wiki, mas essas estruturas geralmente são opcionais e poucos sistemas wiki impedem que você salve uma página wiki se os campos obrigatórios estiverem ausentes. As Infoboxes da Wikipédia são um exemplo de como os wikis podem ser adaptados para adicionar dados estruturados que podem ser consultados.

Forçando a exclusividade do nome

Embora a maioria dos wikis não permita que você atribua tipos a novas páginas no momento da criação, eles têm algumas outras regras que os gráficos de conhecimento não possuem. Ao criar uma nova página, você precisa dar um nome a ela. Este nome serve como identificador de página com um wiki. Agora duas páginas podem ter o mesmo nome. Na maioria dos PKGs, temos uma regra semelhante. Se você tentar inserir uma nova página com o mesmo nome, o software informará que a página já existe. Se você renomear uma página para ter o mesmo nome de um conceito existente, o sistema perguntará se você deseja mesclar os nomes. Adicionar aliases (um ou mais rótulos para o mesmo conceito) é outro desafio que muitos PKGs não fazem bem.

Aplicando sistemas digitados a loops de eventos de anotação

Agora que temos uma ideia da diferença crítica entre wikis e gráficos de conhecimento, vamos fazer a pergunta: como podemos acelerar a capacidade de fazer conexões quando inserimos texto em uma página PKG? Começaremos com alguns exemplos simples e depois nos aprofundaremos em alguns tópicos mais complexos.

O padrão geral que usamos é visualizar caracteres digitados em um teclado. À medida que o usuário digita cada novo caractere, aplicamos um conjunto de regras para auxiliar o usuário na tomada de decisão se houver uma oportunidade de adicionar uma vantagem a um conceito existente. Se houver, os usuários usarão um caractere, como uma tecla de tabulação, para confirmar as relações e preencher automaticamente os caracteres restantes para a borda. Se eles não quiserem aceitar a sugestão, podem continuar digitando.

A chave é que, quando o usuário está digitando, ele geralmente deseja sinalizar que é necessário um link para um conceito digitado específico. Você já deve estar familiarizado com esse processo se usar mídias sociais e quiser fazer referência a uma pessoa ou conceito usando “@” para fazer referência a uma pessoa ou conta do Twitter. Você pode adicionar hashtags usando um caractere “#” no final da postagem do blog para permitir que os sistemas de recomendação vinculem a postagem do blog a pessoas interessadas em um conceito específico.

Depois de sinalizar ao sistema de autoria que deseja referenciar um nó existente com um tipo, ele confirma isso conforme você digita ou sugere uma lista de preenchimentos automáticos.

A chave é que as organizações têm muitos tipos de dados que você deseja incluir em sua recomendação de borda. Nosso foco é encontrar maneiras de integrar esses tipos específicos da organização no loop conforme você digita nos editores de texto para nossas ferramentas PKG. Se você deseja fazer referência aos funcionários de sua empresa, o “@' pode extrair uma lista de nomes de funcionários da empresa. Clicar no link desse funcionário permitirá que o usuário vá para a página PKG desse funcionário.

Outro ponto de integração comum é o link para um glossário de termos e acrônimos padrão da empresa. Em vez de usar um símbolo de teclado especial, você pode adicionar um prefixo separado por dois-pontos a um nome de vértice. Por exemplo, se você tiver um glossário de termos da empresa, poderá fazer com que seus usuários usem “g:” como prefixo, e o preenchimento automático corresponderá a esses termos. Se você estiver usando um glossário específico do setor, poderá fazer referência a esses padrões de terminologia no prefixo. Por exemplo, na área da saúde, usamos o glossário “Just Plain Clear” para que o prefixo “jpc:” preencha automaticamente os termos desse sistema.

Adicionando tipos personalizados

Minha sugestão quando você estiver criando uma estratégia de integração PKG, comece pequeno e desenvolva seus sucessos com base no valor que cada integração adiciona à sua comunidade de usuários. Comece com listas simples de funcionários e termos do glossário da empresa que são comumente referenciados. Faça experimentos com coisas como “g:” para o glossário de uma empresa ou “w:” para um termo da Wikipédia e veja com que frequência eles são referenciados. Se houver baixa adoção dessas sugestões, elas devem ser removidas. Lembre-se, as pessoas sempre podem adicionar links externos à Wikipedia.

Monitoramento da Taxa de Aceitação

Já existem estudos extensivos sobre como os modelos NLP de linguagem grande, como BERT e GPT-3, podem ser usados ​​para ajudar os desenvolvedores de software sugerindo código. Quando um sistema faz recomendações a um usuário sobre um preenchimento automático sugerido, se o usuário aceitar a sugestão, isso é registrado em um log de eventos. O pai das sugestões que um usuário aceita, chamado de taxa de aceitação, é crítico para a adoção dessas ferramentas.

Em geral, se seus usuários não aceitarem cerca de 1/3 das sugestões de preenchimento automático, as ferramentas se tornarão mais irritantes do que úteis. Os usuários desativarão as ferramentas e você não receberá o feedback necessário para ter sucesso. Portanto, é fundamental almejar uma taxa de aceitação de 30% ou mais antes de colocar essas ferramentas em produção.

Permalinks e PURLs

Adicionar links de URL completos de suas anotações a quaisquer recursos corporativos internos também é algo para se ter cuidado. Muitos sistemas internos de gerenciamento de documentos, como o Sharepoint(TM), dependem de links para arquivos específicos em um sistema de arquivos hierárquico. Quando as permissões para essas pastas mudarem ou os documentos forem movidos, esses links não funcionarão mais.

Uma escolha melhor é apenas fazer links em seus PKGs para locais que sua organização assumiu o compromisso de não mudar - nunca. Chamamos esses links de Permalinks ou PURLs. Isso pode ser feito por meio de um gerenciamento cuidadoso de seu sistema interno de nome de domínio, de modo que um link parahttp://glossary.mycompany.com/#termsempre funcionará, mesmo que os servidores em que o glossário está hospedado sejam alterados.

A próxima etapa é garantir que sua equipe de integração do PKG tenha ferramentas que possam monitorar links quebrados e trabalhar proativamente para evitar que links sejam quebrados à medida que o conteúdo se move pelos servidores de sua organização. Considere a criação de um “valor” de um dólar para um link de trabalho e ajude as pessoas sob o valor do conhecimento que é perdido quando os links quebram e o tempo que leva para atualizar os links quebrados.

A maioria dos gráficos de conhecimento oferece suporte a links bidirecionais. Se você alterar o nome de uma página de conceito, todos os links para essa página serão atualizados automaticamente. Esta é uma vitória ENORME e representa um gerenciamento de relacionamento superconsistente e de baixo custo.

Como regra geral, 60% do valor de um gráfico de conhecimento são os nós e 40% do valor são os relacionamentos. Os links quebrados desencorajam os autores de fazer links futuros e os usuários relutam mais em confiar em sistemas com muitos links quebrados.

Integração com Frameworks de PNL

Um dos principais desenvolvimentos é o surgimento de ferramentas em tempo real de baixo custo que podem analisar o texto recebido e procurar palavras-chave e frases relevantes para uma organização. Esses processos incluem classificação automática, extração de entidades nomeadas e extração de fatos. Por exemplo, se você digitou o termo “ontem”, um sistema pode detectar a data atual e inserir um link para a data de ontem em sua linha do tempo para que você possa ver quais notas fazem referência a essa data.

Quando a integração do NLP ocorre no fluxo de trabalho de edição também é relevante. Inferências em tempo real sobre grandes modelos de NLP podem ser muito caras. As verificações conforme você digita precisam ser executadas rapidamente. Adicionar palavras-chave a um documento no final do dia é um custo muito menor. Em geral, os serviços de autossugestão em tempo real precisam ser executados no intervalo de 1/10 de segundo. Esses são tempos de resposta de 100 milissegundos e as organizações que fornecem contratos de nível de serviço podem ter taxas onerosas de estorno pelas quais o usuário não deseja pagar.

Outros Pontos de Integração

A integração com a sugestão automática in-charter-stream e a integração com a análise NLP em tempo real são as duas áreas que dominarão suas arquiteturas de integração PKG e conduzirão seus pontos de decisão de produto PKG. No entanto, existem algumas outras áreas a serem consideradas.

Convertendo Extensões de Markdown

Quase todos os PKGs hoje se concentram na extensão dos formatos Markdown padrão. Infelizmente, diferentes fornecedores escolheram formatos diferentes para essas extensões. Ao importar ou exportar Markdown entre sistemas, pode ser necessário adicionar conversores entre esses formatos. Por exemplo, a conversão de Obsidian para Roam ou vice-versa exigirá que você carregue as extensões do conversor para fazer este trabalho. Felizmente, os scripts de conversão são alterações de sintaxe bastante simples e estão bem documentados. Muitos pequenos programas Python já estão disponíveis para fazer essas conversões. As coisas a verificar incluem links externos, links de imagem, tags de metadados, realce de texto e aliases.

Conclusão

Sempre haverá uma tensão natural entre anotações rápidas e de forma livre, livres de regras, e o desejo da organização de reutilizar o conhecimento e torná-lo consistente. PKGs, wikis e gráficos de conhecimento corporativo estão todos evoluindo em conjunto com a explosão de ferramentas NLP e o crescimento de modelos de linguagem ampla que sugerem texto dentro do contexto de um editor de texto.