Qingxia Liu qxliu.nju@gmail.com Optimal SenTree: representing RDF sentence as a tree with minimal reversed triples Qingxia Liu qxliu.nju@gmail.com.

Slides:



Advertisements
Similar presentations
Lecture 15. Graph Algorithms
Advertisements

Evaluating “find a path” reachability queries P. Bouros 1, T. Dalamagas 2, S.Skiadopoulos 3, T. Sellis 1,2 1 National Technical University of Athens 2.
Chapter 8, Part I Graph Algorithms.
© 2006 Pearson Addison-Wesley. All rights reserved14 A-1 Chapter 14 excerpts Graphs (breadth-first-search)
Midwestern State University Department of Computer Science Dr. Ranette Halverson CMPS 2433 CHAPTER 4 - PART 2 GRAPHS 1.
Combinatorial Algorithms
Graph Algorithms: Minimum Spanning Tree We are given a weighted, undirected graph G = (V, E), with weight function w:
Greedy Algorithms Reading Material: Chapter 8 (Except Section 8.5)
Graphs & Graph Algorithms 2
CS Data Structures Chapter 6 Graphs.
Greedy Algorithms Like dynamic programming algorithms, greedy algorithms are usually designed to solve optimization problems Unlike dynamic programming.
Discrete Mathematics Lecture 9 Alexander Bukharovich New York University.
Theory of Computing Lecture 10 MAS 714 Hartmut Klauck.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Been-Chian Chien, Wei-Pang Yang, and Wen-Yang Lin 6-1 Chapter 6 Graphs Introduction to Data Structure CHAPTER 6 GRAPHS 6.1 The Graph Abstract Data Type.
ساختمانهای گسسته دانشگاه صنعتی شاهرود – اردیبهشت 1392.
Chapter 2 Graph Algorithms.
© 2006 Pearson Addison-Wesley. All rights reserved14 A-1 Chapter 14 Graphs.
Chapter 14 Graphs. © 2004 Pearson Addison-Wesley. All rights reserved Terminology G = {V, E} A graph G consists of two sets –A set V of vertices,
Trees and Distance. 2.1 Basic properties Acyclic : a graph with no cycle Forest : acyclic graph Tree : connected acyclic graph Leaf : a vertex of degree.
 What is a graph? What is a graph?  Directed vs. undirected graphs Directed vs. undirected graphs  Trees vs graphs Trees vs graphs  Terminology: Degree.
Lecture 19 Greedy Algorithms Minimum Spanning Tree Problem.
Fundamental Data Structures and Algorithms (Spring ’05) Recitation Notes: Graphs Slides prepared by Uri Dekel, Based on recitation.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
1/24 Introduction to Graphs. 2/24 Graph Definition Graph : consists of vertices and edges. Each edge must start and end at a vertex. Graph G = (V, E)
Most of contents are provided by the website Graph Essentials TJTSD66: Advanced Topics in Social Media.
Graphs. Graphs Similar to the graphs you’ve known since the 5 th grade: line graphs, bar graphs, etc., but more general. Those mathematical graphs are.
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Ver Chapter 13: Graphs Data Abstraction & Problem Solving with C++
© 2006 Pearson Addison-Wesley. All rights reserved 14 A-1 Chapter 14 Graphs.
Minimum Bottleneck Spanning Trees (MBST)
Spanning tree Lecture 4.
Graphs Upon completion you will be able to:
Graph Theory. undirected graph node: a, b, c, d, e, f edge: (a, b), (a, c), (b, c), (b, e), (c, d), (c, f), (d, e), (d, f), (e, f) subgraph.
Graphs 2015, Fall Pusan National University Ki-Joune Li.
Chapter 20: Graphs. Objectives In this chapter, you will: – Learn about graphs – Become familiar with the basic terminology of graph theory – Discover.
1) Find and label the degree of each vertex in the graph.
Graphs Definition: a graph is an abstract representation of a set of objects where some pairs of the objects are connected by links. The interconnected.
Chapter 05 Introduction to Graph And Search Algorithms.
Graph Representations And Traversals. Graphs Graph : – Set of Vertices (Nodes) – Set of Edges connecting vertices (u, v) : edge connecting Origin: u Destination:
CSE 589 Applied Algorithms Spring 1999 Prim’s Algorithm for MST Load Balance Spanning Tree Hamiltonian Path.
Lecture #13. Topics 1.The Graph Abstract Data Type. 2.Graph Representations. 3.Elementary Graph Operations.
1 Data Structures and Algorithms Graphs. 2 Graphs Basic Definitions Paths and Cycles Connectivity Other Properties Representation Examples of Graph Algorithms:
Optimal SenTree: representing RDF sentence as a tree with minimal reversed triples Qingxia Liu
Graphs ORD SFO LAX DFW Graphs 1 Graphs Graphs
Tracing An Algorithm for Strongly Connected Components that uses Depth First Search Graph obtained from Text, page a-al: Geetika Tewari.
Minimum Spanning Tree Chapter 13.6.
Csc 2720 Instructor: Zhuojun Duan
12. Graphs and Trees 2 Summary
CS 3343: Analysis of Algorithms
Introduction to Graphs
I206: Lecture 15: Graphs Marti Hearst Spring 2012.
CS120 Graphs.
Query Construct Interfaces of RDF Data an introduction
Graph Algorithm.
Modeling and Simulation NETW 707
Graphs Chapter 13.
Graphs Chapter 11 Objectives Upon completion you will be able to:
2018, Fall Pusan National University Ki-Joune Li
Chu-Liu/Edmonds’ Algorithm an introduction
Graphs.
What is a Graph? a b c d e V= {a,b,c,d,e} E= {(a,b),(a,c),(a,d),
Introduction Wireless Ad-Hoc Network
Chapter 11 Graphs.
2017, Fall Pusan National University Ki-Joune Li
Chu-Liu/Edmonds’ Algorithm an introduction
Chapter 14 Graphs © 2006 Pearson Addison-Wesley. All rights reserved.
GRAPHS G=<V,E> Adjacent vertices Undirected graph
Chapter 14 Graphs © 2011 Pearson Addison-Wesley. All rights reserved.
INTRODUCTION A graph G=(V,E) consists of a finite non empty set of vertices V , and a finite set of edges E which connect pairs of vertices .
Presentation transcript:

Qingxia Liu qxliu.nju@gmail.com Optimal SenTree: representing RDF sentence as a tree with minimal reversed triples Qingxia Liu qxliu.nju@gmail.com

Outline Introduction Preliminaries The algorithm Analysis Related work Conclusion Reference

Introduction RDF Sentence Existence of Blank Node A set of b-connected triples Existence of Blank Node Knowledge Representing necessity Representing Predicates that have more than two arguments Population (America, 312.8million,2012) Population (America,bn_1) Value(bn_1,312.9million) Year(bn_1, 2012)

438 (55.9%) published blank nodes Introduction Existence of Blank Node (con.) Mallea et al. (ISWC 2011)[1] 783 domains crawled 438 (55.9%) published blank nodes All domains Avg %bnode = 7.5% Domains in LOD Avg %bnode = 6.1% By domain Average percentage in terms of each domain

Introduction Existence of Blank Node (con.) Falconet_v05 By document total: 21,885,647, has bnode: 8,692,959, (39.72%) by sentence total: 1,643,593,653 In bnDoc: 855,234,540 has bnode: 208,591,775, (12.69%--in total, 24.39%--in BnDoc) complex: 4779805, (2.29% -- in bnSentence) After remove literal, parallel edges, self-loop, m!=n-1 bnDoc: RDF document that contains blank node; bnSentence: RDF sentence that contains blank node

The problem How to represent an RDF sentence A tree-oriented browser will feel natural [3] To maintain the semantic Each triple represents once and only once Minimal number of inversed triples in the representing

Our Method Overview Entity relation direction info. partial order Skeleton Graph RDF Sentence Cost Graph Minimum Spanning Tree Edmonds Algorithm Optimum SentTree simplification post processing assign cost

Preliminaries SenTree An out tree For a directed labeled multigraph G, an SenTree of G is an out tree ST=(V,E,f,g,h,r) that f: V->V(G) , is a surjection. if v∈V and u∈V(G), f(v)=u g:V(G)->V, for every vertex in G assign a vertex in ST that can act as parent h: E->E(G) a bijection that if eST∈E and eG∈E(G), h(eST)=eG, then eST and eG satisfy one of the relations bellow: Case 1(parallel): f(tail(eST))=tail(eG),f(head(eST))=head(eG),label(eST)=label(eG); Case 2(inverse): f(tail(eST))=head(eG),f(head(eST))=tail(eG),label(eST)=label(eG);

Preliminaries SenTree Unsmoothness Optimum SenTree For edge e in a SenTree Case 1 (parallel), unsmth(e) = 0; Case 2 (inveres), usmth(e) = 1; For a SenTree ST usmth(𝑆𝑇)= 𝑒 𝑖 ∈𝐸(𝑆𝑇 usmth(𝑒 𝑖 ) Optimum SenTree The SenTree of graph G that has the minimum unsmoothness among all SentTrees of G Goal: minST 𝑒 𝑖 ∈𝐸(𝑆𝑇 usmth(𝑒 𝑖 )

Preliminaries Skeleton Graph A simple digraph describes the relationship of resource terms (uris and blank nodes) in an RDF graph the Skeleton Graph of an RDF graph G is a simple digraph Gs=(Vs,Es) that Vs=V(G)-Literal(G) Es: any two vertexes u,v∈Vs, if exist a statement (u, p, v) in G, then ordered pair <u,v> ∈Es Simplification Operations Delete Literals Delete parallel edges Delete loops

Preliminaries Cost Graph A weighted symmetric graph (every edge has its inverse edge) A cost graph of a directed graph G satisfies that: For every pair of adjacent vertexes u,v in G, there are only two directed edges e1=(u’,v’) and e2=(v’,u’) in GC If edges between u,v in G in both direction, then cost(e1)=cost(e2)=0; Else if all in one direction, for example u→v, then cost(e1)=0, cost(e2)=1;

The algorithm Input Output a directed labeled graph G of triples in an RDF sentence Output Optimal SenTree STOPT of G

The algorithm Simplification Delete Literals Delete parallel edges res1 lit Simplification Delete Literals Reduce the problem size Do not affect the b-connectivity of RDF sentence Never has out degree If act as inner vertex, at least one edge inversed All hanging as leaves, never gain unsmoothness Delete parallel edges Will be hanging as leaves, never gain unsmoothness Delete loops res1 lit

The algorithm Assign cost Init Gc as empty set For each edge e=<u,v> in Gs if <u,v>∈Gc, set cost(<u,v>) = 1; Else put <u,v>,<v,u> into Gc, set cost(<u,v>)=0, cost(<v,u>)=1

The algorithm Edmonds Algorithm (Gc , r) → MST O(m+nlogn) [4]

The algorithm Post processing Init ST = {r} DFS traverse the MST When processing vertex u For each edge <u,v> in MST (u∈ST) If cost(<u,v>)=0, add all edge (u,p,v)∈G as children of u into ST, one of v as main vertex to expand in the next step If cost(<u,v>)=1, select one edge (v,p,u)∈G, put the inversed as children of u into ST, v as the main vertex to expand in the next step Other not visited edges (u,p,x)∈G, hanging as leaves of u into ST x: literals, resources that expand at other place

Analysis SenTree Optimal SenTree vertexes Edges V(G)-Literal(G)=V(Gs)=V(Gc)=V(MST) A literal connected to at lease one vertex in V(G)-Literal(G) Literals processed as x in post processing Edges Processed once and only once Optimal SenTree Simplification : never gain the unsmoothness Cost of Gc: max num of unsmoothness will gain when visiting along an directed edge MST Edge inversed only when cost(<u,v>)=1 and inversed only one edge

References Mallea, Alejandro, Marcelo Arenas, Aidan Hogan, and Axel Polleres. "On blank nodes." In The Semantic Web–ISWC 2011, pp. 421-437. Springer Berlin Heidelberg, 2011. Baase, Sara. Computer Algorithms: Introduction To Design & Analysis, 3/E. Pearson Education India, 2000. Berners-Lee, Tim, et al. "Tabulator: Exploring and analyzing linked data on the semantic web." Proceedings of the 3rd International Semantic Web User Interaction Workshop. Vol. 2006. 2006. H. N. Gabow, Z. Galil, T. Spencer, and R. E. Tarjan, “Efficient algorithms for finding minimum spanning trees in undirected and directed graphs,” Combinatorica 6 (1986), 109-122.

Thank you! Any Questions?