CS 520 - Knowledge Graphs - Spring 2021 - SeminĂ¡rio 19
Data Models, Knowledge Acquisition, Inference and Applications
Department of Computer Science, Stanford University, Spring 2021
Link para o VĂdeo -> https://youtu.be/3UJgXWB48r0
ProvocaĂ§Ă£o inicial: KG seriam somente semantic networks "hehased" ou possuem particularidades a serem exploradas?
A primeira apresentaĂ§Ă£o apresentou algumas ferramentas para manipulaĂ§Ă£o de KG
"What are some implementation tools for Knowledge Graphs?"
Como escolher qual pacote com tantas opções?
Um problema comum Ă© juntar dados de diferentes fontes e nessa atividade Ă© necessĂ¡rio realizar o JOIN atravĂ©s do Entity Linkage pq muitas vezes nĂ£o existe um identificador Ăºnico compartilhado entre as fontes
Pacote: Dedupe
Opções de fuzzy match com base em atributos (semĂ¢ntica) e tipo de dados, aprendizado supervisionado (distĂ¢ncia do cosseno Ă© o default),aprendizado supervisionado (classificadores) e active learning.
Tarefa de Person Name matching
Usar dicionĂ¡rios e regras quando nĂ£o Ă© possĂvel usar ML
Soundex para lidar com diferentes grafias do mesmo nome
Lista de pacotes para Record Linkage disponĂvel em -> https://github.com/J535D165/data-matching-software
ExtraĂ§Ă£o de Informações de dados nĂ£o estruturados (texto)
Spacy (NLP assim como NLTK), inclui um Entity Linking framework que mapeia para Wikidata e Dependancy parsing (grafo no formato de triplas a partir de frases)
SpikeX: pipes com propĂ³sitos especĂficos prontos para o Spacy (reuso)
GraphDB: armazenar o KG depois de criado, +OLTP e -OLAP, nĂ£o existe padrĂ£o para linguagem de consulta
Neo4J: LPG, escalabilidade horizontal, controle de acesso, Cypher, conectores para diferentes linguagens
Amazon Neptune: LPG e RDF, interfaces de consulta através de Apache Thinker Pop Gremlin e SPARQL
Graph Compute Engines: OLAP para processamento analĂtico e ML, podem estar acopladas ao GraphDB ou nĂ£o.
networkx: python, in memory, vĂ¡rios!!!! algoritmos disponĂveis (por exemplo Page Rank, Steiner Tree, ClusterizaĂ§Ă£o, Vertex Cover, Mixing, ...)
d3: detecĂ§Ă£o de comunidades visualmente
GraphX : Apache Spark (o Diego apresentou esse no grupo BioBD), processamento paralelo, extensĂ£o do RDD (Resileint Distributed Dataset), somente PageRank para ML, outros algoritmos para Particionamento, Componentes Conexas e contagem de triĂ¢ngulos.
>> KGTK também entra nessa categoria
Benchmarks costumam ser especĂficos para as tarefas
Ainda existe muito trabalho manual apesar de muitas abordagens se "venderem" como totalmente automatizadas
As linguagens de consulta nĂ£o sĂ£o intuitivas como SQL
CaracterĂstica ACID dos GraphDBs Ă© importante somente para as atualizações, operações de percorrer o grafo sĂ£o melhor atendidas em termos de desempenho por GraphDB do que RDBMS
Desconhecem abordagens de construĂ§Ă£o/aprendizado de esquemas para KGs a partir dos dados (engenharia reversa)
"How to KG relate to AI?"
TrĂªs direções: Simbiose, Graph Data Science, KG para AI
Simbiose bi-direcional: KG viabilizam aplicações em AI e algoritmos AI para construir KG
KGs para assistentes pessoais (Alexa, Siri, Google Now), sistemas de recomendaĂ§Ă£o e ferramentas de busca para Q&A. Como usar Wikidata para sistemas de busca
Entity Linking com active learning (ML), NLP para Entity Extraction, InferĂªncia e Q&A com NLP,
Graph Data Science: Big Data incluindo graph data
ML para predições (Analytics)
Engenharia de features para identificar com os modelos ML respondem as features, conhecimento do domĂnio
Como o usuĂ¡rio pode explorar/visualizar os dados em escala sem ficar perdido com o volume e variedade?
AI + KG: Redes SemĂ¢nticas, DL, Rules Languages e Modelos grĂ¡ficos (?)
Aprendizado indutivo para a parte simbĂ³lica, ML Ă© mais recente
Volume Ă© um desafio contemporĂ¢neo
ConstruĂ§Ă£o pode ser bottom-up ou uma abordagem hĂbrida (mixed) com bastante suporte automatizado
Tempo: IIIII
ComentĂ¡rios
Postar um comentĂ¡rio
Sinta-se a vontade para comentar. CrĂticas construtivas sĂ£o sempre bem vindas.