Графы знаний

62
Графы знаний Лекция 7 - Knowledge Graph Embeddings М. Галкин, Д. Муромцев

Upload: others

Post on 03-Jun-2022

52 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Графы знаний

Графы знанийЛекция 7 - Knowledge Graph Embeddings

М. Галкин, Д. Муромцев

Page 2: Графы знаний

Сегодня

2

1. Introduction 2. Представление знаний в графах - RDF & RDFS & OWL 3. Хранение знаний в графах - SPARQL & Graph Databases4. Однородность знаний - RDF* & Wikidata & SHACL & ShEx5. Интеграция данных в графы знаний - Semantic Data Integration 6. Введение в теорию графов - Graph Theory Intro 7. Векторные представления графов - Knowledge Graph Embeddings8. Машинное обучение на графах - Graph Neural Networks & KGs 9. Некоторые применения - Question Answering & Query Embedding

Page 3: Графы знаний

Представление знаний - онтологическое

3

genre genreplayed played

starredIn starredIn

characterIn

Leonard Nimoy Star Trek Star Wars Alec Guinness

Spock Science Fiction Obi-Wan Kenobi

LeonardNimoy starredIn StarTrek;played Spock.

Spock characterIn StarTrek .

AlecGuinness starredIn StarWars;played Obi-Wan.

StarWars genre SciFi .

Page 4: Графы знаний

Представление знаний - статистическое

4

genre genreplayed played

starredIn starredIn

characterIn

Leonard Nimoy Star Trek Star Wars Alec Guinness

Spock Science Fiction Obi-Wan Kenobi

Spock = [0.1, 0.2, 0.3]Leonard Nimoy = [0.4, 0.8, 0.1]Star Trek = [0.22, 0.34, 0.87]

characterIn = [0.1, 0.1, 0.6]

Obi-Wan = [0.05, 0.25, 0.37]Alec Guinness = [0.33, 0.5, 0.3]Star Wars = [0.18, 0.4, 0.9]

Page 5: Графы знаний

Embedding - что мы хотим получить

5

Page 6: Графы знаний

Big Picture in ℝ5

6

Graph Encoder

Node classification Entity MatchingLink prediction Query Embedding

Knowledge Graph

Inductive

Transductive Triples

Hyper-relational

Supervised

Unsupervised

Unimodal

Multimodal

Small

Large (sampling)

TASK

SETTING

Theoretical Understanding

Page 7: Графы знаний

В этой лекции

7

Graph Encoder

Node classification Entity MatchingLink prediction Query Embedding

Knowledge Graph

Inductive

Transductive Triples

Hyper-relational

Supervised

Unsupervised

Unimodal

Multimodal

Small

Large (sampling)

TASK

SETTING

Theoretical Understanding

Page 8: Графы знаний

В этой лекции

8

Transductive

Triples

Supervised

Unimodal

Small

Весь граф известен во время тренировки

KG состоит только из триплетов (про RDF* - позднее) без литералов

Обучение с учителем на конкретной задаче. Сигнал - известные связи

Только граф, без текста / видео / изображений / геометрии / другого

Стандартные датасеты - до 100К узлов

Page 9: Графы знаний

Почему бы не взять методы из прошлой лекции?

Классический граф- Ненаправленный- Нет типов связей

9

1

7

4

6

5

2

3

Page 10: Графы знаний

Почему бы не взять методы из прошлой лекции?

Классический граф- Ненаправленный- Нет типов связей

10

1

7

4

6

5

2

31

7

4

6

5

2

3

Наш клиент- Направленный- Мультиграф- Много типов связей

Page 11: Графы знаний

Классический Link Prediction

Вероятность связи как функция от вершин

11

1

7

4

6

5

2

3

1 3p( , ) = f( , ) 1 3

Page 12: Графы знаний

KG Link Prediction (KG Completion)

12Nickel et al. A review of relational machine learning for knowledge graphs. IEEE. 2015

genre genreplayed played

starredIn starredIn

characterIn

Leonard Nimoy Star Trek Star Wars Alec Guinness

Spock Science Fiction Obi-Wan Kenobi

characterIn

(Obi-Wan, characterIn, ?)

Page 13: Графы знаний

characterIn

KG Link Prediction (KG Completion)

13Nickel et al. A review of relational machine learning for knowledge graphs. IEEE. 2015

genre genreplayed played

starredIn starredIn

characterIn

Leonard Nimoy Star Trek Star Wars Alec Guinness

Spock Science Fiction Obi-Wan Kenobi

Page 14: Графы знаний

KG Link Prediction - Input

14

1

3 34 4

2 2

1

2 3 5 7

1 4 6e2id1: Spock2: Leonard Nimoy3: Star Trek4: SciFi5: Star Wars6: Obi-Wan7: Alec Guinness

r2id1: characterIn2: starredIn3: genre4: played

1 1 32 4 12 2 33 3 45 3 47 2 57 4 66 1 ?

Типичный вход KG embedding моделей

Page 15: Графы знаний

Relational Patterns

15

knows(a, b) -> knows(b, a)Симметричность

Антисимметричность

Инверсия

Композиция

Отношения 1-N

friend(a, b) -> ¬friend(b, a)

cast(a, b) -> starredIn(b, a)

mother(a, b) ⋀ husband(b, c) -> father(a, c)

hasCity(country, city1),

hasCity(country, city2), ...

Page 16: Графы знаний

Knowledge Graph Embeddings

16

Goal: encode nodes so that similarity in the embedding space (e.g., dot product) approximates similarity in the original network

Tensor Factorization

Translation

Neural Networks

Graph Neural Nets Source: Stanford CS224w, http://web.stanford.edu/class/cs224w/

Page 17: Графы знаний

Knowledge Graph Embeddings

17

Tensor Factorization

Translation

Neural Networks

Shallow embedding(каждый узел и тип связи -> уникальный вектор)

Source: Stanford CS224w, http://web.stanford.edu/class/cs224w/

Page 18: Графы знаний

KGE - Graphs as Tensors

18Nickel et al. A review of relational machine learning for knowledge graphs. IEEE. 2015

genre genreplayed played

starredIn starredIn

characterIn

Leonard Nimoy Star Trek Star Wars Alec Guinness

Spock Science Fiction Obi-Wan Kenobi

Page 19: Графы знаний

KGE - Graphs as Tensors

19

starredIn

Leonard Nimoy Star Trek

0 1

0 0

starredIn

Page 20: Графы знаний

KGE - Graphs as Tensors

20

starredIn

Leonard Nimoy Star Trek

0 1 0

0 0 0

0 0 0

starredIn

played

characterIn

Spock

0 0 1

0 0 0

0 0 0

played

0 0 0

0 0 0

0 1 0

characterIn

Page 21: Графы знаний

0 0 0

0 0 0

0 1 0

KGE - Graphs as Tensors

21

starredIn

Leonard Nimoy Star Trek

0 1 0

0 0 0

0 0 0

starredIn

played

characterIn

Spock

0 0 1

0 0 0

0 0 0

played

0 0 0

0 0 0

0 1 0

characterIn

0 0 1

0 0 0

0 0 0

0 1 0

0 0 0

0 0 0

Page 22: Графы знаний

KGE - RESCAL

Goal - factorize a sparse 3D tensor to dense E and R

22

Tensor Factorization

Nickel et al. A review of relational machine learning for knowledge graphs. IEEE. 2015

Page 23: Графы знаний

KGE - RESCAL

Goal - factorize a sparse 3D tensor to dense E and R

23

Tensor Factorization

Nickel et al. A review of relational machine learning for knowledge graphs. IEEE. 2015

Page 24: Графы знаний

KGE - RESCAL

Goal - factorize a sparse 3D tensor to dense E and R

24

Tensor Factorization

Yang et al. Embedding Entities And Relations For Learning And Inference In Knowledge Bases. ICLR 2015

RESCAL

Entity matrix Relations matrix Score function (e1,r,e2)

Page 25: Графы знаний

KGE - DistMult

Goal - factorize a sparse 3D tensor to dense E and R

25

Tensor Factorization

Yang et al. Embedding Entities And Relations For Learning And Inference In Knowledge Bases. ICLR 2015

RESCAL

diag(Wk)

DistMult

Entity matrix Relations matrix Score function (e1,r,e2)

Page 26: Графы знаний

KGE - DistMult & Patterns

26

Tensor Factorization

Симметричность

Антисимметричность

Инверсия

Композиция

Отношения 1-N

Умножение коммутативно

Невозможно геометрически

Page 27: Графы знаний

KGE - ComplEx

ComplEx - let’s use complex numbers instead of real

27

Tensor Factorization

Trouillon et al. Complex Embeddings for Simple Link Prediction. ICML 2016

DistMult

Entity matrix Relations matrix Score function (e1,r,e2)

ComplEx

Антисимметричность

Теперь можно

Page 28: Графы знаний

KGE - ComplEx & Patterns

28

Tensor Factorization

Симметричность

Антисимметричность

Инверсия

Композиция

Отношения 1-N

При Im(r) = 0

Возможно при

Page 29: Графы знаний

KGE - TuckER

Goal - factorize a sparse 3D tensor to dense core W, entities E and relations R

29

Tensor Factorization

Balazevic et al. TuckER: Tensor Factorization for Knowledge Graph Completion. EMNLP 2019

Page 30: Графы знаний

KGE - TransE

30

Tensor Factorization

Translation

Translate entities and relations into one embedding space

Wang et al. Knowledge Graph Embedding by Translating on Hyperplanes. AAAI 2014Bordes et al. Translating Embeddings for Modeling Multi-relational Data. NIPS 2013

Page 31: Графы знаний

KGE - TransE

31

Tensor Factorization

Translation

Translate entities and relations into one embedding space

Bordes et al. Translating Embeddings for Modeling Multi-relational Data. NIPS 2013

Page 32: Графы знаний

KGE - TransE & Patterns

32

Tensor Factorization

Translation

Bordes et al. Translating Embeddings for Modeling Multi-relational Data. NIPS 2013

Симметричность

Антисимметричность

Инверсия

КомпозицияОтношения 1-N

Page 33: Графы знаний

KGE - TransE

33

Tensor Factorization

TranslationLOTS of models

Cai et al. A Comprehensive Survey of Graph Embedding: Problems, Techniques and Applications. IEEE TKDE 2017

Page 34: Графы знаний

KGE - Incorporating OWL Rules

34

Tensor Factorization

Translation

Nayyeri et al. LogicENN: A Neural Based Knowledge Graphs Embedding Model with Logical Rules. https://arxiv.org/abs/1908.07141

Page 35: Графы знаний

KGE - RotatE

35

Tensor Factorization

Translation

Sun et al. RotatE: Knowledge Graph Embedding By Relational Rotation In Complex Space. ICLR 2019

Score function:

Loss & Optimization:

Idea: Entities are vectors in complex space

Relations: rotations in complex space

Page 36: Графы знаний

KGE - RotatE & Patterns

36Sun et al. Rotate: Knowledge graph embedding by relational rotation in complex space. ICLR 2019

Translation

Page 37: Графы знаний

KGE - Hyperbolic

37

Tensor Factorization

Translation

Nickel et al. Poincaré Embeddings for Learning Hierarchical Representations. NIPS 2017

Goal: embed hierarchical structures into a hyperbolic manifold.

Page 38: Графы знаний

KGE - Hyperbolic

38

Tensor Factorization

Translation

Chami et al. Low-Dimensional Hyperbolic Knowledge Graph Embeddings. ACL 2020

Goal: embed hierarchical structures into a hyperbolic manifold

✓ Хорошо работает на иерархических графах

✓ Эффективны на малых размерностях (32-64d)

Page 39: Графы знаний

KGE - ConvE

Goal: CNNs for predicting a probability of the object

39

Tensor Factorization

Translation

Convolution

Minervini et al. Convolutional 2D Knowledge Graph Embeddings. AAAI 2018

Score function:

Loss & Optimization:

Page 40: Графы знаний

KGE - ConvKB

40

Tensor Factorization

Translation

Convolution

Nguyen et al. A Novel Embedding Model for Knowledge Base Completion Based on Convolutional Neural Network. NAACL 2018

Score function:

Loss & Optimization:

Page 41: Графы знаний

KGE - CoKE

41

Tensor Factorization

Translation

Transformer

Wang et al. CoKE: Contextualized Knowledge Graph Embeddings. arxiv 2019

Page 42: Графы знаний

Training & Evaluation

42

Page 43: Графы знаний

KGE - Training

43

Entity matrix

Relations matrix

starredIn

played

characterIn

Spock

Spock = [0.1, 0.2, 0.3]Leonard Nimoy = [0.4, 0.8, 0.1]Star Trek = [0.22, 0.34, 0.87]

characterIn = [0.1, 0.1, 0.6]played = [0.2, 0.3, 0.4]starredIn = [0.9, -0.2, 0.1]

Page 44: Графы знаний

KGE - Training

44

Entity matrix

Relations matrix

starredIn

played

characterIn

Spock

Spock = [0.1, 0.2, 0.3]Leonard Nimoy = [0.4, 0.8, 0.1]Star Trek = [0.22, 0.34, 0.87]

characterIn = [0.1, 0.1, 0.6]played = [0.2, 0.3, 0.4]starredIn = [0.9, -0.2, 0.1]

Optimization

Loss Function

Negative Sampling

Page 45: Графы знаний

KGE - Training - sLCWA vs LCWA

45

Local Closed World Assumption (LCWA)

stochasticLocal Closed World

Assumption (sLCWA)

● Предсказываем распределение по всем сущностям на выходе (1-N scoring)

● Classification losses:- BCE, CE

● Часто добавляют inverse relations

● Negative sampling

● Contrastive losses:- Margin Ranking Loss - Self-Adversarial Loss- Softplus Loss

Page 46: Графы знаний

KGE - Adding Inverse Relations

46Nickel et al. A review of relational machine learning for knowledge graphs. IEEE. 2015

genre genreplayed played

starredIn starredIn

characterIn

Leonard Nimoy Star Trek Star Wars Alec Guinness

Spock Science Fiction Obi-Wan Kenobi

Page 47: Графы знаний

KGE - Adding Inverse Relations

47Nickel et al. A review of relational machine learning for knowledge graphs. IEEE. 2015

genre genreplayed played

starredIn starredIn

characterIn

Leonard Nimoy Star Trek Star Wars Alec Guinness

Spock Science Fiction Obi-Wan Kenobi

played_inverse

played_inverse

characterIn_inverse

starredIn_inverse starredIn_inverse

genre_inverse

➢ 2x больше триплетов

➢ 2х больше типов предикатов

Page 48: Графы знаний

KGE - Training - sLCWA + Margin Loss

48

Negative sampling: incorrect triples should have lower (higher) score than correct triples

starredIn

starredIn

starredIn

starredIn

starredIn

starredIn

corrupt O

corrupt S

Page 49: Графы знаний

KGE - Training - sLCWA + Margin Loss

49

Negative sampling: incorrect triples should have lower (higher) score than correct triples

starredIn

starredIn

starredIn

starredIn

starredIn

starredIn

corrupt O

corrupt SNegative Sampling Self-Adversarial Loss (NSSAL) (Sun et al)

Page 50: Графы знаний

KGE - Training - sLCWA + Margin Loss

50

Negative sampling: incorrect triples should have lower (higher) score than correct triples

starredIn

starredIn

starredIn

starredIn

starredIn

starredIn

corrupt O

corrupt SstarredIn starredIn>f f

Page 51: Графы знаний

KGE - Training - LCWA + (Binary) Cross-Entropy Loss

51

Model’s output is usually sigmoid / log softmax

starredIn starredIn_inverse

Page 52: Графы знаний

KGE - Training - sLCWA vs LCWA

52

Local Closed World Assumption (LCWA)

stochasticLocal Closed World

Assumption (sLCWA)

+ Быстрее сходится+ Быстрый evaluation

- Output shape: [bs, num_entities]- Батчи съедают много GPU памяти- Софт-лимит: 100К сущностей

+ Output shape: [bs*num_negs, 1]+ Работает на больших графах + Меньше GPU consumption

- Медленно сходится- Нужно дополнительно

подбирать margin , temperature- Долгий evaluation

Page 53: Графы знаний

KGE - Training - Metrics

53

starredIn

starredIn

starredIn

starredIn

starredIn

starredIn

0.89

0.34

0.66

0.89

0.93

0.98

Page 54: Графы знаний

KGE - Training - Metrics

54

starredIn

starredIn

starredIn

starredIn

starredIn

starredIn

0.89

0.34

0.66

0.89

0.93

0.98

Corrupt O

Corrupt S MR MRR Avg H@k

Rank 1 3

2 0.66Reciprocal rank

1 ⅓

Hits@1 1 0 0.5

Hits@3 1 1 1.0

Hits@10 1 1 1.0

Как правило, все метрики подсчитываются в

отфильтрованном режиме

Page 55: Графы знаний

KGE - Training - Filtered Metrics

55

exampleMovie exampleMovie

Star Trek Star Wars

Science Fiction● Часто, у пары (head, relation) может быть

несколько корректных объектов (tails).

● Необходима поправка в ранжирование - отфильтровать прочие корректные ответы

● Допустим, оцениваем предсказания триплета(Science Fiction, exampleMovie, Star Wars)

rank = 2 Unfiltered 0.03 0.87 0.18 0.85 0.10 0.23 0.13

rank = 1 Filtered 0.03 -inf 0.18 0.85 0.10 0.23 0.13

Page 56: Графы знаний

Datasets & Benchmarks

56

Page 57: Графы знаний

Datasets

57

WN18 FB15k FB15k-237(Freebase)

WN18RR(WordNet)

CoDEx (Wikidata)

YAGO 3-10

OGB Wiki KG

KDD Cup Wikidata

# entities

Don’t use(please)

15K 40K 2-70K 125K 2.5M 87M

# edges 272k 80k 33-550K 1M 13M 504M

# relations 237 11 42-69 34 ~1000 1,315

… и много других

Page 58: Графы знаний

KGE - Benchmarking / SOTA

58

Tensor Factorization

Balazevic et al. TuckER: Tensor Factorization for Knowledge Graph Completion. EMNLP 2019

Принято демонстрировать SOTA по сравнению с baselines

Page 59: Графы знаний

KGE - Benchmarking / SOTA

59

Tensor Factorization

Translation

Sun et al. RotatE: Knowledge Graph Embedding By Relational Rotation In Complex Space. ICLR 2019

Принято демонстрировать SOTA по сравнению с baselines

Page 60: Графы знаний

KGE - Benchmarking / SOTA

60Ali et al. Bringing Light Into the Dark: A Large-scale Evaluation of Knowledge Graph Embedding Models Under a Unified Framework. arxiv:2006.13365

Baselines strike back - правильный подбор гиперпараметров делает старые модели сильными

Dataset: FB15k-237

Page 61: Графы знаний

KG Embeddings Library: PyKEEN

61

https://github.com/pykeen/pykeen

Ali et al. Bringing Light Into the Dark: A Large-scale Evaluation of Knowledge Graph Embedding Models Under a Unified Framework. arxiv:2006.13365

→ PyTorch 😍→ 26 datasets + your own graphs→ 28 KG embedding models and counting

→ 7 losses→ 6 optimizers→ 16 metrics→ 5 regularizers→ 2 training loops→ 3 negative samplers→ Tracking in MLFlow, WANDB, TensorBoard,

and more

📈 Benchmarked!

Page 62: Графы знаний

В следующей серии

62

1. Introduction 2. Представление знаний в графах - RDF & RDFS & OWL 3. Хранение знаний в графах - SPARQL & Graph Databases4. Однородность знаний - RDF* & Wikidata & SHACL & ShEx5. Интеграция данных в графы знаний - Semantic Data Integration 6. Введение в теорию графов - Graph Theory Intro 7. Векторные представления графов - Knowledge Graph Embeddings8. Машинное обучение на графах - Graph Neural Networks & KGs 9. Некоторые применения - Question Answering & Query Embedding