yuns

Lecture 1 Introduction - Structure of Graphs 본문

[CS224W] Machine Learning with Graphs

Lecture 1 Introduction - Structure of Graphs

yuuuun 2020. 12. 19. 15:11
반응형

Why Networks?

Networks are a general language for describing complex systems of interacting entites

Two Types of Networks/Graphs

Networks

  • Society: 70억개 이상의 individual의 collection
  • Communication System: link electronic edevices
  • Genes/protein의 interaction으로 생명 조절
  • Thoughts: 뇌의 수십억개의 뉴런의 connection으로 연결되어 있음

Information Graphs

  • Information/Knowledge: 구성되고 연결됨
  • Scene Grphs: scene에서 object들이 어떻게 연결되어 있는지
  • Similarity networks: data의 유사한 부분

Many Types of Data are Networks

  • Social Networks
  • Economic Networks
  • Communication networks
  • Information networks: Web & citations
  • Internet Networks of Neurons

Types of Data Network

  • 이러한 시스템은 어떻게 구성되어 있는가?
  • 그들의 design property는 무엇인가?

Networks: Knowledge Discovery

많은 시스템 뒤에는 구성요소 간의 interaction들을 정의하는 복잡한 wiring diagram인 network가 존재한다.

Many Types of Data are Graphs

  • Event Graphs
  • Knowledg Graphs
  • Diease pathways
  • Molecules
  • Scene Graphs
  • Cell-cell similarity networks

  • relational structure의 장점을 이용하여 어떻게 더 좋은 prediction을 할 것인가?

Graphs: Machine Learning

복잡한 도메인(knowledge, text, images)은 관계형 그래프로 나타낼 수 있는 rich relational structure를 가지고 있음

관계를 명시적(explicitly)으로 modeling함으로써, 더 나은 성능을 달성

Why Networks? WHy Now?

  • 복잡한 데이터를 표현하기 위한 Universal language
    • networks from science, nature, and technology는 생각보다 비슷하다
  • Field간 단어 공유
    • computer science, social science, physics, economics, statistics, biology
  • Data availability & computational challenges
    • web/mobile, bio, health, and medical
  • Impact
    • social networking, Drug design, AI reasoning

Networks and Applications

Ways to Analyze Networks

  1. Node classification
  2. Link prediction
  3. Community detection
    • densely link된 node들의 cluster 구분
  4. Network Similarity

Examples of Networks

    • Social Networks
    • Social Circle Detection

    • Infrastructure
      • 사회적 생산 기반. 또는, 경제 활동의 기반을 형성하는 기초적인 시설. 댐·도로·항만·발전소·통신 시설 등의 산업 기반 및 학교·병원·공원 등의 사회 복지·환경 시설이 이에 해당함
      • 네트워크 구조가 system의 robustness에 어떠한 영향을 미치는지 이해할 것
      • 네트워크 구조와  네트워크의 dynamical process간의 interplay(상호작용) 및 failure에 대한 영향을 평가하는 quantitative(정량적) tool 개발
    • Knowledge

    • Link Prediction

  • Embedding Nodes
    • 노드를 d-dimensional embedding에 mapping하여 similar network neighbourhoods를 가지는 노드가 서로 가까이 있도록 
  • Online Media
  • Polarization on Twitter
  • Misinformation
    • fake news인지 아닌지 판별하기 위함
  • Predicting virality
    • information cascde in social networks
  • product adaoption
    • invitation cascades: 60-90% of LInkedIn user들이 다른 user의 초대에 의해 가입
  • Biomedicine
  • Side effects
    • 두 개의 약물을 섭취할 경우의 side effect를 조사
  • Biomedical Graphs
    • heterogeneous graph 생성

Structure of Graphs

Structure of Networks?

Network는 link로 연결된 object들의 pair로 구성된 collection

Components of a Network

  • Objects $N$
    • nodes and vertices
  • Interactions $E$
    • links and edges
  • System $G(N, E)$
    • network and graph

Networks or Graphs?

  • Network: 실제 세상과 매핑
    • Web, Social Network, Metabolic network
    • 언어: Network, node, link
  • Graph: network의 수학적인 표현
    • Web graph, Social Graph, Knowledge Graph
    • 언어: Graph, Vertex, edge

Choosing Proper Representations

  • professional network
  • sexual networks
  • citation network

How to define a network?

  • How to build a graph
    • Definition of nodes and edges
  • 적절한 network representation 선택
    • 주어진 도메인, 문제에서 networkfmf 성공적으로 사용하기 위하여
    • unique, unambiguous한 표현이 있음
    • unique하지 않는 경우가 존재
    • link를 할당하는 방법에 따라 적용 방법이 다양

Choice of Network Representation

Directed and Undirected Graphs

Directed Graphs

  • 방향성이 있는 그래프
  • LInks: directed, arcs
  • Examples: Phone calls, Following on Twitter

Undirected Graphs

  • 방향성이 없는 그래프
  • Link: undirected, symmetrical, reciprocal
  • Examples: Collaborations, Friendship on Facebook

Node Degree

  • $k_i$로 정의하며 node $i$와 연결되어 있는 인접 node의 개수를 의미한다.
  • directed graph의 경우, in-degree(들어오는 방향)와 out-degree(나가는 방향) 존재
  • Source: node with $k^{in} = 0$ (ex) node A, G
  • Sink: node with $k^{out} = 0$

Complete Graph

서로 다른 두개의 node가 반드시 하나의 edge로 연결 되어 있는 그래프를 의미 $$E_{max} = \frac{N(N-1)}{2}$$

Bipartite Graph

모든 링크가 U 집합의 node를 V 집합의 node에 연결이 되도록 노드를 U, V로 나누는 그래프로서 U와 V는 독립(independent sets)이다.

    • Examples
      • Authors-to-Papers
      • Actors-to-Movies
      • Users-to-Movies
      • Recipes-to-Ingredients
    • "Folded" networks
      • Author collaboration netowkrs
      • Movie co-rating networks

Representing Graphs: Adjacency Matrix

  • 이어져 있을 경우 1, 안 이어져 있을 경우 0으로 정의

Adjacency Matrix

  • 색칠한 부분의 합이 해당 노드의 degree로 계산할 수 있음

Representing Graphs: Edge list

Representing Graphs: Adjacency list

  • 연결 리스트 형식으로 표현

Edge Attributes

사용 가능한 종류

  • Weight: Frequency of communication
  • Ranking: Best Friend, Second best friend
  • Type: Friend, Relative, Co-worker
  • Sign: Friend, vs Foe, Trust vs Distrust
  • Properities depending on the structure of the rest of the graph: number of common friends

More Types of Graphs

Connectivity of Undirected Graphs

  • Connected(undirected) graph
    • 두 개의 vertices는 path로 연결될 수 있음
  • 연결이 끊어진 그래프는 둘 이상의 연결된 component로 구성됨

  • 연결이 끊어진 sub-graph들 간의 연결은 존재하지 않음

Connectivity of Directed Graphs

  • strongly connected directed graph
    • 각 node에서 다른 모든 node로 경로가 존재함
  • Weakly connected directed graph
반응형
Comments