Presentation is loading. Please wait.

Presentation is loading. Please wait.

Seeing Things in the Clouds over concept lattices with tag clouds browsing semi-structured data Bernd Fischer object attribute context table relation Galois.

Similar presentations


Presentation on theme: "Seeing Things in the Clouds over concept lattices with tag clouds browsing semi-structured data Bernd Fischer object attribute context table relation Galois."— Presentation transcript:

1 Seeing Things in the Clouds over concept lattices with tag clouds browsing semi-structured data Bernd Fischer object attribute context table relation Galois connection knowledge discovery mining software repositories join focus visualization information retrieval meet navigation Stellenbosch Computer Science

2 How do you find stuff on the Internet? concept-based browsing query

3 How do you find stuff on the Internet? Yikes! 3 370 000 results!

4 How do you find stuff on the Internet? concept-based browsing query     lattice

5 How do you find stuff you didn’t look for? Retrieval: extract objects that satisfy a pre-defined criterion query describes criterion main operation is matching: check satisfaction against query main goal is precision: show only relevant objects Browsing: spontaneously explore a collection focus describes current position and selection main operation is navigation: change the focus main goal is recall: show all relevant objects

6 How do you browse? (hierarchical) navigation structure focus selection

7 How do you browse semi-structured data? What is semi-structured data? What is structured data? Structured data has...... a very high degree of regularity... an explicit, tight format (schema) Typical examples: spreadsheets relational databases (SQL: structured query language)

8 How do you browse semi-structured data? What is semi-structured data? Semi-structured data...... contains both free-text and formatted fields... has large structural variance... is implicitly formatted Typical examples: product reviews newspaper articles + meta-data revision control logs

9 Approach: find a suitable abstract data representation –bag-of-words, graphs, binary relations, RDF triples, XML,... find a suitable hierarchy –metric spaces, graphs, concept lattices,... find a suitable visual representation –lists, graphs, tag clouds, city scapes,... find a navigation algorithm How do you browse semi-structured data?

10 How do you represent data? Structured data is represented by n-ary relations or tables: each object becomes a row each column represents an attribute type text remains unstructured authortitleyearvenue FischerSpecification-based browsing...2000J. ASE van ZijlSupernondeterministic finite...2001CIAA

11 How do you represent data? Structured data is represented by n-ary relations or tables: each object becomes a row each column represents an attribute type text remains unstructured set-valued attributes require normalization authortitleyearvenue FischerSpecification-based browsing...2000J. ASE van ZijlSupernondeterministic finite...2001CIAA GreeneConceptCloud: A Tag-cloud...2014FSE FischerConceptCloud: A Tag-cloud...2014FSE

12 How do you represent data? Structured data is represented by n-ary relations or tables: each object becomes a row each column represents an attribute type text remains unstructured set-valued attributes require normalization Semi-structured data can be represented by binary relations: text is split into words each occurring value and word becomes an attribute build context table: add cross if attribute applies to object –word appears in document, meta-data, references... idtitleyearvenue 08Specification-based browsing...2000J. ASE 15Supernondeterministic finite...2001CIAA 42ConceptCloud: A Tag-cloud...2014FSE idauthor 08Fischer 15van Zijl 42Greene 42Fischer Greenevan Zijlbrowsingtag200020012014 08 ××× 15 ×× 42 ×××××

13 How do you find hierarchy in relations? Formal concept analysis: formal context: (O, A, ~) FischerGreenevan Zijlbrowsingtag200020012014 08 ××× 15 ×× 42 ×××××

14 How do you find hierarchy in relations? Formal concept analysis: formal context: (O, A, ~) common attributes: α(O) = { a ∈ A | ∀ o ∈ O : o ~ a } α({08, 42} = FischerGreenevan Zijlbrowsingtag200020012014 08 ××× 15 ×× 42 ××××× FischerGreenevan Zijlbrowsingtag200020012014 08 ××× 15 ×× 42 ××××× FischerGreenevan Zijlbrowsingtag200020012014 08 ××× 15 ×× 42 ××××× α({08, 42} = {Fischer, browsing}

15 How do you find hierarchy in relations? Formal concept analysis: formal context: (O, A, ~) common attributes: α(O) = { a ∈ A | ∀ o ∈ O : o ~ a } common objects: ω(A) = { o ∈ O | ∀ a ∈ A : o ~ a } concept: (O, A) s.t. α(O) = A ∧ ω(A) = O FischerGreenevan Zijlbrowsingtag200020012014 08 ××× 15 ×× 42 ××××× α({08, 42} = {Fischer, browsing} ω({Fischer, browsing} FischerGreenevan Zijlbrowsingtag200020012014 08 ××× 15 ×× 42 ××××× FischerGreenevan Zijlbrowsingtag200020012014 08 ××× 15 ×× 42 ××××× ω({Fischer, browsing} = {08, 42} extentintent

16 FischerGreenevan Zijlbrowsingtag200020012014 08 ××× 15 ×× 42 ××××× How do you find hierarchy in relations? Formal concept analysis: formal context: (O, A, ~) common attributes: α(O) = { a ∈ A | ∀ o ∈ O : o ~ a } common objects: ω(A) = { o ∈ O | ∀ a ∈ A : o ~ a } concept: (O, A) s.t. α(O) = A ∧ ω(A) = O {08} {F,browsing,’00} {42} {F,G,browsing,tag,’14} {08, 42} {F,browsing} {42} {tag}   extentintent

17 FischerGreenevan Zijlbrowsingtag200020012014 08 ××× 15 ×× 42 ××××× How do you find hierarchy in relations? Formal concept analysis: formal context: (O, A, ~) common attributes: α(O) = { a ∈ A | ∀ o ∈ O : o ~ a } common objects: ω(A) = { o ∈ O | ∀ a ∈ A : o ~ a } concept: (O, A) s.t. α(O) = A ∧ ω(A) = O sub-concept ordering: (O ₁, A ₁ ) ≤ (O ₂, A ₂ ) iff O ₁ ⊆ O ₂ iff A ₁ ⊇ A ₂ concept lattice: concepts of a context form a complete lattice {08} {F,browsing,’00} {42} {F,G,browsing,tag,’14} {08, 42} {F,browsing} {42} {tag}  

18 Are we there yet? Nope. Concept lattices induce enough structure for navigation...... but too much to show directly!

19 How do you visualize concept lattices? Approach: don’t show the lattice use concepts as focus visualize only focus concept –but in relation to lattice

20 How do you visualize concepts? Approach: don’t show the lattice use concepts as focus visualize only focus concept –but in relation to lattice use extent to derive tag cloud

21 How do you build tag clouds for concepts? What is a tag cloud? visual representation of text data – summarize large data set – emphasize important tags single words or short phrases importance reflected as size – frequency in document – number of tagged items – number of page hits different layout methods

22 How do you build tag clouds for concepts? intent looks like tag cloud...... but is common to all objects ⇒ all tags same size instead: collect all attributes from all objects in extent –can be expressed in concept lattice: –also add extent via object identifiers intent shown as largest tags –smaller tags are related information {08, 42} {Fischer,browsing} FischerGreenevan Zijlbrowsingtag200020012014 08 ××× 15 ×× 42 ××××× 21-211-1 08 42 2000 2014 browsing Fischer Greene tag  

23 The ConceptCloud Browser by: Gillian Greene, US file message date author controls

24 The ConceptCloud Browser most prolific contributor

25 How do you navigate with tag clouds? Navigation modes: refinement: narrow the selection –select a new tag widening: extend the selection –remove a selected tag

26 How do you navigate with concept lattices? Navigation modes: refinement: narrow the selection –select a new tag: f’ = f ∧ δ(t) widening: extend the selection –remove a selected tag (ω({t}), α(ω({t}))) if t ∈ A δ(t) = (α(ω({t})), ω({t})) if t ∈ O focus concept tag concept focus concept focus concept

27 How do you navigate with concept lattices? Navigation modes: refinement: narrow the selection –select a new tag: f’ = f ∧ δ(t) widening: extend the selection –remove a selected tag: f’ = f ∨ δ(t) (ω({t}), α(ω({t}))) if t ∈ A δ(t) = (α(ω({t})), ω({t})) if t ∈ O tag concept focus concept tag concept focus concept focus concept focus concept

28 How do you navigate with concept lattices? Navigation modes: refinement: narrow the selection –select a new tag: f’ = f ∧ δ(t) widening: extend the selection –remove a selected tag: f’ = f ∨ δ(t) f’ = ∧ i ∈ π(f) \ {t} δ(i) –join-based widening can be useful as well (ω({t}), α(ω({t}))) if t ∈ A δ(t) = (α(ω({t})), ω({t})) if t ∈ O tag concept focus concept tag concept focus concept  

29 Navigation in the ConceptCloud Browser

30

31

32 The Percept Browser by: Carl Kritzinger, Fireworks

33 Semi-structured data is common but hard to analyze Tag clouds are a good visualization approach...... and the combination with concept lattices makes it easy to navigate and find related information Flexible approach, generic tool –different data sets –different types of contexts ( ⇒ different types of analysis) Scalability –DBLP, IMDb, Wikipedia? Customizability –context extraction –tool scripting Conclusions & Future Work

34 Semi-structured data is common but hard to analyze Tag clouds are a good visualization approach...... and the combination with concept lattices makes it easy to navigate and find related information Flexible approach, generic tool –different data sets –different types of contexts ( ⇒ different types of analysis) Scalability –DBLP, IMDb, Wikipedia? Customizability –context extraction –tool scripting

35 How do you find stuff you didn’t look for? Retrieval: extract objects that satisfy a pre-defined criterion query describes criterion main operation is matching: check satisfaction against query main goal is precision: show only relevant objects Browsing: spontaneously explore a collection focus describes current position and selection main operation is navigation: change the focus main goal is recall: show all relevant objects “That’s funny...” “Bingo!”

36 How do you find hierarchy in relations? Formal concept analysis: formal context: (O, A, ~) common attributes: α(O) = { a ∈ A | ∀ o ∈ O : o ~ a } common objects: ω(A) = { o ∈ O | ∀ a ∈ A : o ~ a } concept: (O, A) s.t. α(O) = A ∧ ω(A) = O FischerGreenevan Zijlbrowsingtag200020012014 08 ××× 15 ×× 42 ××××× α({08, 42} = {Fischer, browsing} ω({Fischer, browsing} FischerGreenevan Zijlbrowsingtag200020012014 08 ××× 15 ×× 42 ××××× FischerGreenevan Zijlbrowsingtag200020012014 08 ××× 15 ×× 42 ××××× ω({Fischer, browsing} = {08, 42} extentintent “That’s funny...”

37 What is a tag cloud? How do you build tag clouds for concepts?

38 What is a tag cloud? visual representation of text data – summarize large data set – emphasize prominent tags single words or short phrases importance reflected as size – frequency in document – number of tagged items – number of page hits different layout methods

39 How do you navigate? Navigation modes: refinement: narrow the selection widening: extend the selection

40 How do you navigate with concept lattices? Navigation modes: refinement: narrow the selection –select a new tag: f’ = f ∧ δ(t) widening: extend the selection –remove a selected tag: f’ = f ∨ δ(t) (ω({t}), α(ω({t}))) if t ∈ A δ(t) = (α(ω({t})), ω({t})) if t ∈ O tag concept focus concept tag concept focus concept focus concept   focus concept

41 How do you navigate with concept lattices? Navigation modes: refinement: narrow the selection –select a new tag: f’ = f ∧ δ(t) widening: extend the selection –remove a selected tag: c’ = ∧ i ∈ π(c) \ {t} δ(i) –join-based widening can be useful as well (ω({t}), α(ω({t}))) if t ∈ A δ(t) = (α(ω({t})), ω({t})) if t ∈ O tag concept focus concept tag concept focus concept

42 Navigation in the ConceptCloud Browser


Download ppt "Seeing Things in the Clouds over concept lattices with tag clouds browsing semi-structured data Bernd Fischer object attribute context table relation Galois."

Similar presentations


Ads by Google