Download presentation

Presentation is loading. Please wait.

Published byOdalys Farron Modified over 2 years ago

1
Information Theory For Data Management Divesh Srivastava Suresh Venkatasubramanian 1

2
-- Abstruse Goose (177) Motivation Information Theory is relevant to all of humanity... 2 Information Theory for Data Management - Divesh & Suresh

3
Background Many problems in data management need precise reasoning about information content, transfer and loss – Structure Extraction – Privacy preservation – Schema design – Probabilistic data ? 3 Information Theory for Data Management - Divesh & Suresh

4
Information Theory First developed by Shannon as a way of quantifying capacity of signal channels. Entropy, relative entropy and mutual information capture intrinsic informational aspects of a signal Today: – Information theory provides a domain-independent way to reason about structure in data – More information = interesting structure – Less information linkage = decoupling of structures 4 Information Theory for Data Management - Divesh & Suresh

5
Tutorial Thesis Information theory provides a mathematical framework for the quantification of information content, linkage and loss. This framework can be used in the design of data management strategies that rely on probing the structure of information in data. Information Theory for Data Management - Divesh & Suresh 5

6
Tutorial Goals Introduce information-theoretic concepts to DB audience Give a ‘data-centric’ perspective on information theory Connect these to applications in data management Describe underlying computational primitives Illuminate when and how information theory might be of use in new areas of data management. Information Theory for Data Management - Divesh & Suresh 6

7
Outline Part 1 Introduction to Information Theory Application: Data Anonymization Application: Database Design Part 2 Review of Information Theory Basics Application: Data Integration Computing Information Theoretic Primitives Open Problems Information Theory for Data Management - Divesh & Suresh 7

8
Histograms And Discrete Distributions x1 x2 x1 x4 x2 x3 x1 X Column of data Xf(X) x14 x22 x31 x41 Histogram Xp(X) x10.5 x20.25 x30.125 x40.125 Probability distribution normalize aggregate counts Information Theory for Data Management - Divesh & Suresh 8

9
Histograms And Discrete Distributions x1 x2 x1 x4 x2 x3 x1 X Column of data Xf(X) x14 x22 x31 x41 Histogram Xp(X) x10.667 x20.2 x30.067 x40.067 Probability distribution aggregate counts Xf(x)*w(X) x14*5=20 x22*3=6 x31*2=2 x41*2=2 normalizereweight Information Theory for Data Management - Divesh & Suresh 9

10
From Columns To Random Variables We can think of a column of data as “represented” by a random variable: – X is a random variable – p(X) is the column of probabilities p(X = x1), p(X = x2), and so on – Also known (in unweighted case) as the empirical distribution induced by the column X. Notation: – X (upper case) denotes a random variable (column) – x (lower case) denotes a value taken by X (field in a tuple) – p(x) is the probability p(X = x) Information Theory for Data Management - Divesh & Suresh 10

11
Joint Distributions Discrete distribution: probability p(X,Y,Z) p(Y) = ∑ x p(X=x,Y) = ∑ x ∑ z p(X=x,Y,Z=z) XYZp(X,Y,Z) x1y1z10.125 x1y2z20.125 x1y1z20.125 x1y2z10.125 x2y3z30.125 x2y3z40.125 x3y3z50.125 x4y3z60.125 Xp(X) x10.5 x20.25 x30.125 x40.125 Yp(Y) y10.25 y20.25 y30.5 XYp(X,Y) x1y10.25 x1y20.25 x2y30.25 x3y30.125 x4y30.125 Information Theory for Data Management - Divesh & Suresh 11

12
Entropy Of A Column Let h(x) = log 2 1/p(x) h(X) is column of h(x) values. H(X) = E X [h(x)] = X p(x) log 2 1/p(x) Two views of entropy It captures uncertainty in data: high entropy, more unpredictability It captures information content: higher entropy, more information. Xp(X)h(X) x10.51 x20.252 x30.1253 x40.1253 H(X) = 1.75 < log |X| = 2 Information Theory for Data Management - Divesh & Suresh 12

13
Examples X uniform over [1,..., 4]. H(X) = 2 Y is 1 with probability 0.5, in [2,3,4] uniformly. – H(Y) = 0.5 log 2 + 0.5 log 6 ~= 1.8 < 2 – Y is more sharply defined, and so has less uncertainty. Z uniform over [1,..., 8]. H(Z) = 3 > 2 – Z spans a larger range, and captures more information XYZ Information Theory for Data Management - Divesh & Suresh 13

14
Comparing Distributions How do we measure difference between two distributions ? Kullback-Leibler divergence: – d KL (p, q) = E p [ h(q) – h(p) ] = i p i log(p i /q i ) Inference mechanism Prior beliefResulting belief Information Theory for Data Management - Divesh & Suresh 14

15
Comparing Distributions Kullback-Leibler divergence: – d KL (p, q) = E p [ h(q) – h(p) ] = i p i log(p i /q i ) – d KL (p, q) >= 0 – Captures extra information needed to capture p given q – Is asymmetric ! d KL (p, q) != d KL (q, p) – Is not a metric (does not satisfy triangle inequality) There are other measures: – 2 -distance, variational distance, f-divergences, … Information Theory for Data Management - Divesh & Suresh 15

16
Conditional Probability Given a joint distribution on random variables X, Y, how much information about X can we glean from Y ? Conditional probability: p(X|Y) – p(X = x1 | Y = y1) = p(X = x1, Y = y1)/p(Y = y1) XYp(X,Y)p(X|Y)p(Y|X) x1y10.251.00.5 x1y20.251.00.5 x2y30.250.51.0 x3y30.1250.251.0 x4y30.1250.251.0 Xp(X) x10.5 x20.25 x30.125 x40.125 Yp(Y) y10.25 y20.25 y30.5 Information Theory for Data Management - Divesh & Suresh 16

17
Conditional Entropy Let h(x|y) = log 2 1/p(x|y) H(X|Y) = E x,y [h(x|y)] = x y p(x,y) log 2 1/p(x|y) H(X|Y) = H(X,Y) – H(Y) H(X|Y) = H(X,Y) – H(Y) = 2.25 – 1.5 = 0.75 If X, Y are independent, H(X|Y) = H(X) XYp(X,Y)p(X|Y)h(X|Y) x1y10.251.00.0 x1y20.251.00.0 x2y30.250.51.0 x3y30.1250.252.0 x4y30.1250.252.0 Information Theory for Data Management - Divesh & Suresh 17

18
Mutual Information Mutual information captures the difference between the joint distribution on X and Y, and the marginal distributions on X and Y. Let i(x;y) = log p(x,y)/p(x)p(y) I(X;Y) = E x,y [I(X;Y)] = x y p(x,y) log p(x,y)/p(x)p(y) XYp(X,Y)h(X,Y)i(X;Y) x1y10.252.01.0 x1y20.252.01.0 x2y30.252.01.0 x3y30.1253.01.0 x4y30.1253.01.0 Xp(X)h(X) x10.51.0 x20.252.0 x30.1253.0 x40.1253.0 Yp(Y)h(Y) y10.252.0 y20.252.0 y30.51.0 Information Theory for Data Management - Divesh & Suresh 18

19
Mutual Information: Strength of linkage I(X;Y) = H(X) + H(Y) – H(X,Y) = H(X) – H(X|Y) = H(Y) – H(Y|X) If X, Y are independent, then I(X;Y) = 0: – H(X,Y) = H(X) + H(Y), so I(X;Y) = H(X) + H(Y) – H(X,Y) = 0 I(X;Y) <= max (H(X), H(Y)) – Suppose Y = f(X) (deterministically) – Then H(Y|X) = 0, and so I(X;Y) = H(Y) – H(Y|X) = H(Y) Mutual information captures higher-order interactions: – Covariance captures “linear” interactions only – Two variables can be uncorrelated (covariance = 0) and have nonzero mutual information: – X R [-1,1], Y = X 2. Cov(X,Y) = 0, I(X;Y) = H(X) > 0 Information Theory for Data Management - Divesh & Suresh 19

20
Information Theory: Summary We can represent data as discrete distributions (normalized histograms) Entropy captures uncertainty or information content in a distribution The Kullback-Leibler distance captures the difference between distributions Mutual information and conditional entropy capture linkage between variables in a joint distribution Information Theory for Data Management - Divesh & Suresh 20

21
Outline Part 1 Introduction to Information Theory Application: Data Anonymization Application: Database Design Part 2 Review of Information Theory Basics Application: Data Integration Computing Information Theoretic Primitives Open Problems Information Theory for Data Management - Divesh & Suresh 21

22
Data Anonymization Using Randomization Goal: publish anonymized microdata to enable accurate ad hoc analyses, but ensure privacy of individuals’ sensitive attributes Key ideas: – Randomize numerical data: add noise from known distribution – Reconstruct original data distribution using published noisy data Issues: – How can the original data distribution be reconstructed? – What kinds of randomization preserve privacy of individuals? Information Theory for Data Management - Divesh & Suresh 22

23
Data Anonymization Using Randomization Many randomization strategies proposed [AS00, AA01, EGS03] Example randomization strategies: X in [0, 10] – R = X + μ (mod 11), μ is uniform in {-1, 0, 1} – R = X + μ (mod 11), μ is in {-1 (p = 0.25), 0 (p = 0.5), 1 (p = 0.25)} – R = X (p = 0.6), R = μ, μ is uniform in [0, 10] (p = 0.4) Question: – Which randomization strategy has higher privacy preservation? – Quantify loss of privacy due to publication of randomized data 23 Information Theory for Data Management - Divesh & Suresh

24
Data Anonymization Using Randomization X in [0, 10], R1 = X + μ (mod 11), μ is uniform in {-1, 0, 1} IdX s10 s23 s35 s40 s58 s60 s76 s80 24 Information Theory for Data Management - Divesh & Suresh

25
Data Anonymization Using Randomization X in [0, 10], R1 = X + μ (mod 11), μ is uniform in {-1, 0, 1} IdXμ s10 s230 s351 s400 s581 s60 s761 s800 → IdR1 s110 s23 s36 s40 s59 s610 s77 s80 25 Information Theory for Data Management - Divesh & Suresh

26
Data Anonymization Using Randomization X in [0, 10], R1 = X + μ (mod 11), μ is uniform in {-1, 0, 1} IdXμ s100 s23 s350 s401 s581 s60 s76 s801 → IdR1 s10 s22 s35 s41 s59 s610 s75 s81 26 Information Theory for Data Management - Divesh & Suresh

27
Reconstruction of Original Data Distribution X in [0, 10], R1 = X + μ (mod 11), μ is uniform in {-1, 0, 1} – Reconstruct distribution of X using knowledge of R1 and μ – EM algorithm converges to MLE of original distribution [AA01] IdXμ s100 s23 s350 s401 s581 s60 s76 s801 → IdR1 s10 s22 s35 s41 s59 s610 s75 s81 → IdX | R1 s1{10, 0, 1} s2{1, 2, 3} s3{4, 5, 6} s4{0, 1, 2} s5{8, 9, 10} s6{9, 10, 0} s7{4, 5, 6} s8{0, 1, 2} 27 Information Theory for Data Management - Divesh & Suresh

28
Analysis of Privacy [AS00] X in [0, 10], R1 = X + μ (mod 11), μ is uniform in {-1, 0, 1} – If X is uniform in [0, 10], privacy determined by range of μ IdXμ s100 s23 s350 s401 s581 s60 s76 s801 → IdR1 s10 s22 s35 s41 s59 s610 s75 s81 → IdX | R1 s1{10, 0, 1} s2{1, 2, 3} s3{4, 5, 6} s4{0, 1, 2} s5{8, 9, 10} s6{9, 10, 0} s7{4, 5, 6} s8{0, 1, 2} 28 Information Theory for Data Management - Divesh & Suresh

29
Analysis of Privacy [AA01] X in [0, 10], R1 = X + μ (mod 11), μ is uniform in {-1, 0, 1} – If X is uniform in [0, 1] [5, 6], privacy smaller than range of μ IdXμ s100 s21 s350 s461 s501 s61 s75 s861 → IdR1 s10 s20 s35 s47 s51 s60 s74 s87 → IdX | R1 s1{10, 0, 1} s2{10, 0, 1} s3{4, 5, 6} s4{6, 7, 8} s5{0, 1, 2} s6{10, 0, 1} s7{3, 4, 5} s8{6, 7, 8} 29 Information Theory for Data Management - Divesh & Suresh

30
Analysis of Privacy [AA01] X in [0, 10], R1 = X + μ (mod 11), μ is uniform in {-1, 0, 1} – If X is uniform in [0, 1] [5, 6], privacy smaller than range of μ – In some cases, sensitive value revealed IdXμ s100 s21 s350 s461 s501 s61 s75 s861 → IdR1 s10 s20 s35 s47 s51 s60 s74 s87 → IdX | R1 s1{0, 1} s2{0, 1} s3{5, 6} s4{6} s5{0, 1} s6{0, 1} s7{5} s8{6} 30 Information Theory for Data Management - Divesh & Suresh

31
Quantify Loss of Privacy [AA01] Goal: quantify loss of privacy based on mutual information I(X;R) – Smaller H(X|R) more loss of privacy in X by knowledge of R – Larger I(X;R) more loss of privacy in X by knowledge of R – I(X;R) = H(X) – H(X|R) I(X;R) used to capture correlation between X and R – p(X) is the prior knowledge of sensitive attribute X – p(X, R) is the joint distribution of X and R 31 Information Theory for Data Management - Divesh & Suresh

32
Quantify Loss of Privacy [AA01] Goal: quantify loss of privacy based on mutual information I(X;R) – X is uniform in [5, 6], R1 = X + μ (mod 11), μ is uniform in {-1, 0, 1} XR1p(X,R1)h(X,R1)i(X;R1) 54 55 56 65 66 67 Xp(X)h(X) 5 6 R1p(R1)h(R1) 4 5 6 7 32 Information Theory for Data Management - Divesh & Suresh

33
Quantify Loss of Privacy [AA01] Goal: quantify loss of privacy based on mutual information I(X;R) – X is uniform in [5, 6], R1 = X + μ (mod 11), μ is uniform in {-1, 0, 1} XR1p(X,R1)h(X,R1)i(X;R1) 540.17 55 56 65 66 67 Xp(X)h(X) 50.5 6 R1p(R1)h(R1) 40.17 50.34 6 70.17 33 Information Theory for Data Management - Divesh & Suresh

34
Quantify Loss of Privacy [AA01] Goal: quantify loss of privacy based on mutual information I(X;R) – X is uniform in [5, 6], R1 = X + μ (mod 11), μ is uniform in {-1, 0, 1} XR1p(X,R1)h(X,R1)i(X;R1) 540.172.58 550.172.58 560.172.58 650.172.58 660.172.58 670.172.58 Xp(X)h(X) 50.51.0 60.51.0 R1p(R1)h(R1) 40.172.58 50.341.58 60.341.58 70.172.58 34 Information Theory for Data Management - Divesh & Suresh

35
Quantify Loss of Privacy [AA01] Goal: quantify loss of privacy based on mutual information I(X;R) – X is uniform in [5, 6], R1 = X + μ (mod 11), μ is uniform in {-1, 0, 1} – I(X;R) = 0.33 XR1p(X,R1)h(X,R1)i(X;R1) 540.172.581.0 550.172.580.0 560.172.580.0 650.172.580.0 660.172.580.0 670.172.581.0 Xp(X)h(X) 50.51.0 60.51.0 R1p(R1)h(R1) 40.172.58 50.341.58 60.341.58 70.172.58 35 Information Theory for Data Management - Divesh & Suresh

36
Quantify Loss of Privacy [AA01] Goal: quantify loss of privacy based on mutual information I(X;R) – X is uniform in [5, 6], R2 = X + μ (mod 11), μ is uniform in {0, 1} – I(X;R1) = 0.33, I(X;R2) = 0.5 R2 is a bigger privacy risk than R1 XR2p(X,R2)h(X,R2)i(X;R2) 550.252.01.0 560.252.00.0 660.252.00.0 670.252.01.0 Xp(X)h(X) 50.51.0 60.51.0 R2p(R2)h(R2) 50.252.0 60.51.0 70.252.0 36 Information Theory for Data Management - Divesh & Suresh

37
Quantify Loss of Privacy [AA01] Equivalent goal: quantify loss of privacy based on H(X|R) – X is uniform in [5, 6], R2 = X + μ (mod 11), μ is uniform in {0, 1} – Intuition: we know more about X given R2, than about X given R1 – H(X|R1) = 0.67, H(X|R2) = 0.5 R2 is a bigger privacy risk than R1 XR2p(X,R2)p(X|R2)h(X|R2) 550.251.00.0 560.250.51.0 660.250.51.0 670.251.00.0 XR1p(X,R1)p(X|R1)h(X|R1) 540.171.00.0 550.170.51.0 560.170.51.0 650.170.51.0 660.170.51.0 670.171.00.0 37 Information Theory for Data Management - Divesh & Suresh

38
Quantify Loss of Privacy Example: X is uniform in [0, 1] – R3 = e (p = 0.9999), R3 = X (p = 0.0001) – R4 = X (p = 0.6), R4 = 1 – X (p = 0.4) Is R3 or R4 a bigger privacy risk? 38 Information Theory for Data Management - Divesh & Suresh

39
Worst Case Loss of Privacy [EGS03] Example: X is uniform in [0, 1] – R3 = e (p = 0.9999), R3 = X (p = 0.0001) – R4 = X (p = 0.6), R4 = 1 – X (p = 0.4) I(X;R3) = 0.0001 << I(X;R4) = 0.028 XR3p(X,R3)h(X,R3)i(X;R3) 0e0.499951.00.0 000.0000514.291.0 1e0.499951.00.0 110.0000514.291.0 XR4p(X,R4)h(X,R4)i(X;R4) 000.31.740.26 010.22.32-0.32 100.22.32-0.32 110.31.740.26 39 Information Theory for Data Management - Divesh & Suresh

40
Worst Case Loss of Privacy [EGS03] Example: X is uniform in [0, 1] – R3 = e (p = 0.9999), R3 = X (p = 0.0001) – R4 = X (p = 0.6), R4 = 1 – X (p = 0.4) I(X;R3) = 0.0001 << I(X;R4) = 0.028 – But R3 has a larger worst case risk XR3p(X,R3)h(X,R3)i(X;R3) 0e0.499951.00.0 000.0000514.291.0 1e0.499951.00.0 110.0000514.291.0 XR4p(X,R4)h(X,R4)i(X;R4) 000.31.740.26 010.22.32-0.32 100.22.32-0.32 110.31.740.26 40 Information Theory for Data Management - Divesh & Suresh

41
Worst Case Loss of Privacy [EGS03] Goal: quantify worst case loss of privacy in X by knowledge of R – Use max KL divergence, instead of mutual information Mutual information can be formulated as expected KL divergence – I(X;R) = ∑ x ∑ r p(x,r)*log 2 (p(x,r)/p(x)*p(r)) = KL(p(X,R) || p(X)*p(R)) – I(X;R) = ∑ r p(r) ∑ x p(x|r)*log 2 (p(x|r)/p(x)) = E R [KL(p(X|r) || p(X))] – [AA01] measure quantifies expected loss of privacy over R [EGS03] propose a measure based on worst case loss of privacy – IW(X;R) = MAX R [KL(p(X|r) || p(X))] 41 Information Theory for Data Management - Divesh & Suresh

42
Worst Case Loss of Privacy [EGS03] Example: X is uniform in [0, 1] – R3 = e (p = 0.9999), R3 = X (p = 0.0001) – R4 = X (p = 0.6), R4 = 1 – X (p = 0.4) IW(X;R3) = max{0.0, 1.0, 1.0} > IW(X;R4) = max{0.028, 0.028} XR3p(X,R3)p(X|R3)i(X;R3) 0e0.499950.50.0 000.000051.0 1e0.499950.50.0 110.000051.0 XR4p(X,R4)p(X|R4)i(X;R4) 000.30.60.26 010.20.4-0.32 100.20.4-0.32 110.30.60.26 42 Information Theory for Data Management - Divesh & Suresh

43
Worst Case Loss of Privacy [EGS03] Example: X is uniform in [5, 6] – R1 = X + μ (mod 11), μ is uniform in {-1, 0, 1} – R2 = X + μ (mod 11), μ is uniform in {0, 1} IW(X;R1) = max{1.0, 0.0, 0.0, 1.0} = IW(X;R2) = {1.0, 0.0, 1.0} – Unable to capture that R2 is a bigger privacy risk than R1 XR1p(X,R1)p(X|R1)i(X;R1) 540.171.0 550.170.50.0 560.170.50.0 650.170.50.0 660.170.50.0 670.171.0 XR2p(X,R2)p(X|R2)i(X;R2) 550.251.0 560.250.50.0 660.250.50.0 670.251.0 43 Information Theory for Data Management - Divesh & Suresh

44
Data Anonymization: Summary Randomization techniques useful for microdata anonymization – Randomization techniques differ in their loss of privacy Information theoretic measures useful to capture loss of privacy – Expected KL divergence captures expected privacy loss [AA01] – Maximum KL divergence captures worst case privacy loss [EGS03] – Both are useful in practice 44 Information Theory for Data Management - Divesh & Suresh

45
Outline Part 1 Introduction to Information Theory Application: Data Anonymization Application: Database Design Part 2 Review of Information Theory Basics Application: Data Integration Computing Information Theoretic Primitives Open Problems 45 Information Theory for Data Management - Divesh & Suresh

46
Information Dependencies [DR00] Goal: use information theory to examine and reason about information content of the attributes in a relation instance Key ideas: – Novel InD measure between attribute sets X, Y based on H(Y|X) – Identify numeric inequalities between InD measures Results: – InD measures are a broader class than FDs and MVDs – Armstrong axioms for FDs derivable from InD inequalities – MVD inference rules derivable from InD inequalities 46 Information Theory for Data Management - Divesh & Suresh

47
Information Dependencies [DR00] Functional dependency: X → Y – FD X → Y holds iff t1, t2 ((t1[X] = t2[X]) (t1[Y] = t2[Y])) XYZ x1y1z1 x1y2z2 x1y1z2 x1y2z1 x2y3z3 x2y3z4 x3y3z5 x4y3z6 47 Information Theory for Data Management - Divesh & Suresh

48
Information Dependencies [DR00] Functional dependency: X → Y – FD X → Y holds iff t1, t2 ((t1[X] = t2[X]) (t1[Y] = t2[Y])) XYZ x1y1z1 x1y2z2 x1y1z2 x1y2z1 x2y3z3 x2y3z4 x3y3z5 x4y3z6 48 Information Theory for Data Management - Divesh & Suresh

49
Information Dependencies [DR00] Result: FD X → Y holds iff H(Y|X) = 0 – Intuition: once X is known, no remaining uncertainty in Y H(Y|X) = 0.5 XYp(X,Y)p(Y|X)h(Y|X) x1y10.250.51.0 x1y20.250.51.0 x2y30.251.00.0 x3y30.1251.00.0 x4y30.1251.00.0 Xp(X) x10.5 x20.25 x30.125 x40.125 Yp(Y) y10.25 y20.25 y30.5 49 Information Theory for Data Management - Divesh & Suresh

50
Information Dependencies [DR00] Multi-valued dependency: X →→ Y – MVD X →→ Y holds iff R(X,Y,Z) = R(X,Y) R(X,Z) XYZ x1y1z1 x1y2z2 x1y1z2 x1y2z1 x2y3z3 x2y3z4 x3y3z5 x4y3z6 50 Information Theory for Data Management - Divesh & Suresh

51
Information Dependencies [DR00] Multi-valued dependency: X →→ Y – MVD X →→ Y holds iff R(X,Y,Z) = R(X,Y) R(X,Z) XYZ x1y1z1 x1y2z2 x1y1z2 x1y2z1 x2y3z3 x2y3z4 x3y3z5 x4y3z6 XY x1y1 x1y2 x2y3 x3y3 x4y3 XZ x1z1 x1z2 x2z3 x2z4 x3z5 x4z6 = 51 Information Theory for Data Management - Divesh & Suresh

52
Information Dependencies [DR00] Multi-valued dependency: X →→ Y – MVD X →→ Y holds iff R(X,Y,Z) = R(X,Y) R(X,Z) XYZ x1y1z1 x1y2z2 x1y1z2 x1y2z1 x2y3z3 x2y3z4 x3y3z5 x4y3z6 XY x1y1 x1y2 x2y3 x3y3 x4y3 XZ x1z1 x1z2 x2z3 x2z4 x3z5 x4z6 = 52 Information Theory for Data Management - Divesh & Suresh

53
Information Dependencies [DR00] Result: MVD X →→ Y holds iff H(Y,Z|X) = H(Y|X) + H(Z|X) – Intuition: once X known, uncertainties in Y and Z are independent H(Y|X) = 0.5, H(Z|X) = 0.75, H(Y,Z|X) = 1.25 = XYh(Y|X) x1y11.0 x1y21.0 x2y30.0 x3y30.0 x4y30.0 XZh(Z|X) x1z11.0 x1z21.0 x2z31.0 x2z41.0 x3z50.0 x4z60.0 XYZh(Y,Z|X) x1y1z12.0 x1y2z22.0 x1y1z22.0 x1y2z12.0 x2y3z31.0 x2y3z41.0 x3y3z50.0 x4y3z60.0 53 Information Theory for Data Management - Divesh & Suresh

54
Information Dependencies [DR00] Result: Armstrong axioms for FDs derivable from InD inequalities Reflexivity: If Y X, then X → Y – H(Y|X) = 0 for Y X Augmentation: X → Y X,Z → Y,Z – 0 ≤ H(Y,Z|X,Z) = H(Y|X,Z) ≤ H(Y|X) = 0 Transitivity: X → Y & Y → Z X → Z – 0 ≥ H(Y|X) + H(Z|Y) ≥ H(Z|X) ≥ 0 54 Information Theory for Data Management - Divesh & Suresh

55
Database Normal Forms Goal: eliminate update anomalies by good database design – Need to know the integrity constraints on all database instances Boyce-Codd normal form: – Input: a set ∑ of functional dependencies – For every (non-trivial) FD R.X → R.Y ∑ +, R.X is a key of R 4NF: – Input: a set ∑ of functional and multi-valued dependencies – For every (non-trivial) MVD R.X →→ R.Y ∑ +, R.X is a key of R 55 Information Theory for Data Management - Divesh & Suresh

56
Database Normal Forms Functional dependency: X → Y – Which design is better? XYZ x1y1z1 x1y1z2 x2y2z3 x2y2z4 x3y3z5 x4y4z6 XY x1y1 x2y2 x3y3 x4y4 XZ x1z1 x1z2 x2z3 x2z4 x3z5 x4z6 = 56 Information Theory for Data Management - Divesh & Suresh

57
Database Normal Forms Functional dependency: X → Y – Which design is better? Decomposition is in BCNF XYZ x1y1z1 x1y1z2 x2y2z3 x2y2z4 x3y3z5 x4y4z6 XY x1y1 x2y2 x3y3 x4y4 XZ x1z1 x1z2 x2z3 x2z4 x3z5 x4z6 = 57 Information Theory for Data Management - Divesh & Suresh

58
Database Normal Forms Multi-valued dependency: X →→ Y – Which design is better? XYZ x1y1z1 x1y2z2 x1y1z2 x1y2z1 x2y3z3 x2y3z4 x3y3z5 x4y3z6 XY x1y1 x1y2 x2y3 x3y3 x4y3 XZ x1z1 x1z2 x2z3 x2z4 x3z5 x4z6 = 58 Information Theory for Data Management - Divesh & Suresh

59
Database Normal Forms Multi-valued dependency: X →→ Y – Which design is better? Decomposition is in 4NF XYZ x1y1z1 x1y2z2 x1y1z2 x1y2z1 x2y3z3 x2y3z4 x3y3z5 x4y3z6 XY x1y1 x1y2 x2y3 x3y3 x4y3 XZ x1z1 x1z2 x2z3 x2z4 x3z5 x4z6 = 59 Information Theory for Data Management - Divesh & Suresh

60
Well-Designed Databases [AL03] Goal: use information theory to characterize “goodness” of a database design and reason about normalization algorithms Key idea: – Information content measure of cell in a DB instance w.r.t. ICs – Redundancy reduces information content measure of cells Results: – Well-designed DB each cell has information content > 0 – Normalization algorithms never decrease information content 60 Information Theory for Data Management - Divesh & Suresh

61
Well-Designed Databases [AL03] Information content of cell c in database D satisfying FD X → Y – Uniform distribution p(V) on values for c consistent with D\c and FD – Information content of cell c is entropy H(V) H(V 62 ) = 2.0 XYZ x1y1z1 x1y1z2 x2y2z3 x2y2z4 x3y3z5 x4y4z6 V 62 p(V 62 )h(V 62 ) y10.252.0 y20.252.0 y30.252.0 y40.252.0 61 Information Theory for Data Management - Divesh & Suresh

62
Well-Designed Databases [AL03] Information content of cell c in database D satisfying FD X → Y – Uniform distribution p(V) on values for c consistent with D\c and FD – Information content of cell c is entropy H(V) H(V 22 ) = 0.0 XYZ x1y1z1 x1y1z2 x2y2z3 x2y2z4 x3y3z5 x4y4z6 V 22 p(V 22 )h(V 22 ) y11.00.0 y20.0 y30.0 y40.0 62 Information Theory for Data Management - Divesh & Suresh

63
Well-Designed Databases [AL03] Information content of cell c in database D satisfying FD X → Y – Information content of cell c is entropy H(V) Schema S is in BCNF iff D S, H(V) > 0, for all cells c in D – Technicalities w.r.t. size of active domain XYZ x1y1z1 x1y1z2 x2y2z3 x2y2z4 x3y3z5 x4y4z6 cH(V) c 12 0.0 c 22 0.0 c 32 0.0 c 42 0.0 c 52 2.0 c 62 2.0 63 Information Theory for Data Management - Divesh & Suresh

64
Well-Designed Databases [AL03] Information content of cell c in database D satisfying FD X → Y – Information content of cell c is entropy H(V) H(V 12 ) = 2.0, H(V 42 ) = 2.0 V 42 p(V 42 )h(V 42 ) y10.252.0 y20.252.0 y30.252.0 y40.252.0 XY x1y1 x2y2 x3y3 x4y4 XZ x1z1 x1z2 x2z3 x2z4 x3z5 x4z6 V 12 p(V 12 )h(V 12 ) y10.252.0 y20.252.0 y30.252.0 y40.252.0 64 Information Theory for Data Management - Divesh & Suresh

65
Well-Designed Databases [AL03] Information content of cell c in database D satisfying FD X → Y – Information content of cell c is entropy H(V) Schema S is in BCNF iff D S, H(V) > 0, for all cells c in D XY x1y1 x2y2 x3y3 x4y4 XZ x1z1 x1z2 x2z3 x2z4 x3z5 x4z6 cH(V) c 12 2.0 c 22 2.0 c 32 2.0 c 42 2.0 65 Information Theory for Data Management - Divesh & Suresh

66
Well-Designed Databases [AL03] Information content of cell c in DB D satisfying MVD X →→ Y – Information content of cell c is entropy H(V) H(V 52 ) = 0.0, H(V 53 ) = 2.32 XYZ x1y1z1 x1y2z2 x1y1z2 x1y2z1 x2y3z3 x2y3z4 x3y3z5 x4y3z6 V 52 p(V 52 )h(V 52 ) y31.00.0 V 53 p(V 53 )h(V 53 ) z10.22.32 z20.22.32 z30.22.32 z40.0 z50.22.32 z60.22.32 66 Information Theory for Data Management - Divesh & Suresh

67
Well-Designed Databases [AL03] Information content of cell c in DB D satisfying MVD X →→ Y – Information content of cell c is entropy H(V) Schema S is in 4NF iff D S, H(V) > 0, for all cells c in D XYZ x1y1z1 x1y2z2 x1y1z2 x1y2z1 x2y3z3 x2y3z4 x3y3z5 x4y3z6 cH(V) c 12 0.0 c 22 0.0 c 32 0.0 c 42 0.0 c 52 0.0 c 62 0.0 c 72 1.58 c 82 1.58 cH(V) c 13 0.0 c 23 0.0 c 33 0.0 c 43 0.0 c 53 2.32 c 63 2.32 c 73 2.58 c 83 2.58 67 Information Theory for Data Management - Divesh & Suresh

68
Well-Designed Databases [AL03] Information content of cell c in DB D satisfying MVD X →→ Y – Information content of cell c is entropy H(V) H(V 32 ) = 1.58, H(V 34 ) = 2.32 V 34 p(V 34 )h(V 34 ) z10.22.32 z20.22.32 z30.22.32 z40.0 z50.22.32 z60.22.32 XY x1y1 x1y2 x2y3 x3y3 x4y3 XZ x1z1 x1z2 x2z3 x2z4 x3z5 x4z6 V 32 p(V 32 )h(V 32 ) y10.331.58 y20.331.58 y30.331.58 68 Information Theory for Data Management - Divesh & Suresh

69
Well-Designed Databases [AL03] Information content of cell c in DB D satisfying MVD X →→ Y – Information content of cell c is entropy H(V) Schema S is in 4NF iff D S, H(V) > 0, for all cells c in D XY x1y1 x1y2 x2y3 x3y3 x4y3 XZ x1z1 x1z2 x2z3 x2z4 x3z5 x4z6 cH(V) c 12 1.0 c 22 1.0 c 32 1.58 c 42 1.58 c 52 1.58 cH(V) c 14 2.32 c 24 2.32 c 34 2.32 c 44 2.32 c 54 2.58 c 64 2.58 69 Information Theory for Data Management - Divesh & Suresh

70
Well-Designed Databases [AL03] Normalization algorithms never decrease information content – Information content of cell c is entropy H(V) XYZ x1y1z1 x1y2z2 x1y1z2 x1y2z1 x2y3z3 x2y3z4 x3y3z5 x4y3z6 cH(V) c 13 0.0 c 23 0.0 c 33 0.0 c 43 0.0 c 53 2.32 c 63 2.32 c 73 2.58 c 83 2.58 70 Information Theory for Data Management - Divesh & Suresh

71
Well-Designed Databases [AL03] Normalization algorithms never decrease information content – Information content of cell c is entropy H(V) cH(V) c 14 2.32 c 24 2.32 c 34 2.32 c 44 2.32 c 54 2.58 c 64 2.58 XYZ x1y1z1 x1y2z2 x1y1z2 x1y2z1 x2y3z3 x2y3z4 x3y3z5 x4y3z6 XY x1y1 x1y2 x2y3 x3y3 x4y3 XZ x1z1 x1z2 x2z3 x2z4 x3z5 x4z6 = cH(V) c 13 0.0 c 23 0.0 c 33 0.0 c 43 0.0 c 53 2.32 c 63 2.32 c 73 2.58 c 83 2.58 71 Information Theory for Data Management - Divesh & Suresh

72
Well-Designed Databases [AL03] Normalization algorithms never decrease information content – Information content of cell c is entropy H(V) cH(V) c 14 2.32 c 24 2.32 c 34 2.32 c 44 2.32 c 54 2.58 c 64 2.58 XYZ x1y1z1 x1y2z2 x1y1z2 x1y2z1 x2y3z3 x2y3z4 x3y3z5 x4y3z6 XY x1y1 x1y2 x2y3 x3y3 x4y3 XZ x1z1 x1z2 x2z3 x2z4 x3z5 x4z6 = cH(V) c 13 0.0 c 23 0.0 c 33 0.0 c 43 0.0 c 53 2.32 c 63 2.32 c 73 2.58 c 83 2.58 72 Information Theory for Data Management - Divesh & Suresh

73
Database Design: Summary Good database design essential for preserving data integrity Information theoretic measures useful for integrity constraints – FD X → Y holds iff InD measure H(Y|X) = 0 – MVD X →→ Y holds iff H(Y,Z|X) = H(Y|X) + H(Z|X) – Information theory to model correlations in specific database Information theoretic measures useful for normal forms – Schema S is in BCNF/4NF iff D S, H(V) > 0, for all cells c in D – Information theory to model distributions over possible databases 73 Information Theory for Data Management - Divesh & Suresh

74
Outline Part 1 Introduction to Information Theory Application: Data Anonymization Application: Database Design Part 2 Review of Information Theory Basics Application: Data Integration Computing Information Theoretic Primitives Open Problems 74 Information Theory for Data Management - Divesh & Suresh

75
Review of Information Theory Basics Discrete distribution: probability p(X) p(X,Y) = ∑ z p(X,Y,Z=z) XYZp(X,Y,Z) x1y1z10.125 x1y2z20.125 x1y1z20.125 x1y2z10.125 x2y3z30.125 x2y3z40.125 x3y3z50.125 x4y3z60.125 Xp(X) x10.5 x20.25 x30.125 x40.125 Yp(Y) y10.25 y20.25 y30.5 XYp(X,Y) x1y10.25 x1y20.25 x2y30.25 x3y30.125 x4y30.125 75 Information Theory for Data Management - Divesh & Suresh

76
Review of Information Theory Basics Discrete distribution: probability p(X) p(Y) = ∑ x p(X=x,Y) = ∑ x ∑ z p(X=x,Y,Z=z) XYZp(X,Y,Z) x1y1z10.125 x1y2z20.125 x1y1z20.125 x1y2z10.125 x2y3z30.125 x2y3z40.125 x3y3z50.125 x4y3z60.125 Xp(X) x10.5 x20.25 x30.125 x40.125 Yp(Y) y10.25 y20.25 y30.5 XYp(X,Y) x1y10.25 x1y20.25 x2y30.25 x3y30.125 x4y30.125 76 Information Theory for Data Management - Divesh & Suresh

77
Review of Information Theory Basics Discrete distribution: conditional probability p(X|Y) p(X,Y) = p(X|Y)*p(Y) = p(Y|X)*p(X) XYp(X,Y)p(X|Y)p(Y|X) x1y10.251.00.5 x1y20.251.00.5 x2y30.250.51.0 x3y30.1250.251.0 x4y30.1250.251.0 Xp(X) x10.5 x20.25 x30.125 x40.125 Yp(Y) y10.25 y20.25 y30.5 77 Information Theory for Data Management - Divesh & Suresh

78
Review of Information Theory Basics Discrete distribution: entropy H(X) h(x) = log 2 (1/p(x)) – H(X) = ∑ X=x p(x)*h(x) = 1.75 – H(Y) = ∑ Y=y p(y)*h(y) = 1.5 (≤ log 2 (|Y|) = 1.58) – H(X,Y) = ∑ X=x ∑ Y=y p(x,y)*h(x,y) = 2.25 (≤ log 2 (|X,Y|) = 2.32) XYp(X,Y)h(X,Y) x1y10.252.0 x1y20.252.0 x2y30.252.0 x3y30.1253.0 x4y30.1253.0 Xp(X)h(X) x10.51.0 x20.252.0 x30.1253.0 x40.1253.0 Yp(Y)h(Y) y10.252.0 y20.252.0 y30.51.0 78 Information Theory for Data Management - Divesh & Suresh

79
Review of Information Theory Basics Discrete distribution: conditional entropy H(X|Y) h(x|y) = log 2 (1/p(x|y)) – H(X|Y) = ∑ X=x ∑ Y=y p(x,y)*h(x|y) = 0.75 – H(X|Y) = H(X,Y) – H(Y) = 2.25 – 1.5 XYp(X,Y)p(X|Y)h(X|Y) x1y10.251.00.0 x1y20.251.00.0 x2y30.250.51.0 x3y30.1250.252.0 x4y30.1250.252.0 Xp(X)h(X) x10.51.0 x20.252.0 x30.1253.0 x40.1253.0 Yp(Y)h(Y) y10.252.0 y20.252.0 y30.51.0 79 Information Theory for Data Management - Divesh & Suresh

80
Review of Information Theory Basics Discrete distribution: mutual information I(X;Y) i(x;y) = log 2 (p(x,y)/p(x)*p(y)) – I(X;Y) = ∑ X=x ∑ Y=y p(x,y)*i(x;y) = 1.0 – I(X;Y) = H(X) + H(Y) – H(X,Y) = 1.75 + 1.5 – 2.25 XYp(X,Y)h(X,Y)i(X;Y) x1y10.252.01.0 x1y20.252.01.0 x2y30.252.01.0 x3y30.1253.01.0 x4y30.1253.01.0 Xp(X)h(X) x10.51.0 x20.252.0 x30.1253.0 x40.1253.0 Yp(Y)h(Y) y10.252.0 y20.252.0 y30.51.0 80 Information Theory for Data Management - Divesh & Suresh

81
Outline Part 1 Introduction to Information Theory Application: Data Anonymization Application: Database Design Part 2 Review of Information Theory Basics Application: Data Integration Computing Information Theoretic Primitives Open Problems 81 Information Theory for Data Management - Divesh & Suresh

82
Schema Matching Goal: align columns across database tables to be integrated – Fundamental problem in database integration Early useful approach: textual similarity of column names – False positives: Address ≠ IP_Address – False negatives: Customer_Id = Client_Number Early useful approach: overlap of values in columns, e.g., Jaccard – False positives: Emp_Id ≠ Project_Id – False negatives: Emp_Id = Personnel_Number 82 Information Theory for Data Management - Divesh & Suresh

83
Opaque Schema Matching [KN03] Goal: align columns when column names, data values are opaque – Databases belong to different government bureaucracies – Treat column names and data values as uninterpreted (generic) Example: EMP_PROJ(Emp_Id, Proj_Id, Task_Id, Status_Id) – Likely that all Id fields are from the same domain – Different databases may have different column names WXYZ w2x1y1z2 w4x2y3z3 w3x3y3z1 w1x2y1z2 ABCD a1b2c1d1 a3b4c2d2 a1b1c1d2 a4b3c2d3 83 Information Theory for Data Management - Divesh & Suresh

84
Opaque Schema Matching [KN03] Approach: build complete, labeled graph G D for each database D – Nodes are columns, label(node(X)) = H(X), label(edge(X, Y)) = I(X;Y) – Perform graph matching between G D1 and G D2, minimizing distance Intuition: – Entropy H(X) captures distribution of values in database column X – Mutual information I(X;Y) captures correlations between X, Y – Efficiency: graph matching between schema-sized graphs 84 Information Theory for Data Management - Divesh & Suresh

85
Opaque Schema Matching [KN03] Approach: build complete, labeled graph G D for each database D – Nodes are columns, label(node(X)) = H(X), label(edge(X, Y)) = I(X;Y) ABCD a1b2c1d1 a3b4c2d2 a1b1c1d2 a4b3c2d3 Ap(A) a10.5 a30.25 a40.25 Bp(B) b10.25 b20.25 b30.25 b40.25 Cp(C) c10.5 c20.5 Dp(D) d10.25 d20.5 d30.25 85 Information Theory for Data Management - Divesh & Suresh

86
Opaque Schema Matching [KN03] Approach: build complete, labeled graph G D for each database D – Nodes are columns, label(node(X)) = H(X), label(edge(X, Y)) = I(X;Y) H(A) = 1.5, H(B) = 2.0, H(C) = 1.0, H(D) = 1.5 ABCD a1b2c1d1 a3b4c2d2 a1b1c1d2 a4b3c2d3 Ah(A) a11.0 a32.0 a42.0 Bh(B) b12.0 b22.0 b32.0 b42.0 Ch(C) c11.0 c21.0 Dh(D) d12.0 d21.0 d32.0 86 Information Theory for Data Management - Divesh & Suresh

87
Opaque Schema Matching [KN03] Approach: build complete, labeled graph G D for each database D – Nodes are columns, label(node(X)) = H(X), label(edge(X, Y)) = I(X;Y) H(A) = 1.5, H(B) = 2.0, H(C) = 1.0, H(D) = 1.5, I(A;B) = 1.5 ABCD a1b2c1d1 a3b4c2d2 a1b1c1d2 a4b3c2d3 Ah(A) a11.0 a32.0 a42.0 Bh(B) b12.0 b22.0 b32.0 b42.0 ABh(A,B)i(A;B) a1b22.01.0 a3b42.0 a1b12.01.0 a4b32.0 87 Information Theory for Data Management - Divesh & Suresh

88
Opaque Schema Matching [KN03] Approach: build complete, labeled graph G D for each database D – Nodes are columns, label(node(X)) = H(X), label(edge(X, Y)) = I(X;Y) ABCD a1b2c1d1 a3b4c2d2 a1b1c1d2 a4b3c2d3 AB DC 1.5 1.0 2.0 1.5 1.0 1.5 0.5 1.5 1.0 88 Information Theory for Data Management - Divesh & Suresh

89
Opaque Schema Matching [KN03] Approach: build complete, labeled graph G D for each database D – Nodes are columns, label(node(X)) = H(X), label(edge(X, Y)) = I(X;Y) – Perform graph matching between G D1 and G D2, minimizing distance [KN03] uses euclidean and normal distance metrics WX ZY 2.0 1.0 1.5 1.0 1.5 1.0 1.5 0.5 AB DC 1.5 1.0 2.0 1.5 1.0 1.5 0.5 1.5 1.0 89 Information Theory for Data Management - Divesh & Suresh

90
Opaque Schema Matching [KN03] Approach: build complete, labeled graph G D for each database D – Nodes are columns, label(node(X)) = H(X), label(edge(X, Y)) = I(X;Y) – Perform graph matching between G D1 and G D2, minimizing distance WX ZY 2.0 1.0 1.5 1.0 1.5 1.0 1.5 0.5 AB DC 1.5 1.0 2.0 1.5 1.0 1.5 0.5 1.5 1.0 90 Information Theory for Data Management - Divesh & Suresh

91
Opaque Schema Matching [KN03] Approach: build complete, labeled graph G D for each database D – Nodes are columns, label(node(X)) = H(X), label(edge(X, Y)) = I(X;Y) – Perform graph matching between G D1 and G D2, minimizing distance WX ZY 2.0 1.0 1.5 1.0 1.5 1.0 1.5 0.5 AB DC 1.5 1.0 2.0 1.5 1.0 1.5 0.5 1.5 1.0 91 Information Theory for Data Management - Divesh & Suresh

92
Heterogeneity Identification [DKOSV06] Goal: identify columns with semantically heterogeneous values – Can arise due to opaque schema matching [KN03] Key ideas: – Heterogeneity based on distribution, distinguishability of values – Use Information Theory to quantify heterogeneity Issues: – Which information theoretic measure characterizes heterogeneity? – How do we actually cluster the data ? 92 Information Theory for Data Management - Divesh & Suresh

93
Heterogeneity Identification [DKOSV06] Example: semantically homogeneous, heterogeneous columns Customer_Id h8742@yyy.com kkjj+@haha.org qwerty@keyboard.us 555-1212@fax.in alpha@beta.ga john.smith@noname.org jane.doe@1973law.us jamesbond.007@action.com Customer_Id h8742@yyy.com kkjj+@haha.org qwerty@keyboard.us 555-1212@fax.in (908)-555-1234 973-360-0000 360-0007 (877)-807-4596 93 Information Theory for Data Management - Divesh & Suresh

94
Heterogeneity Identification [DKOSV06] Example: semantically homogeneous, heterogeneous columns Customer_Id h8742@yyy.com kkjj+@haha.org qwerty@keyboard.us 555-1212@fax.in alpha@beta.ga john.smith@noname.org jane.doe@1973law.us jamesbond.007@action.com Customer_Id h8742@yyy.com kkjj+@haha.org qwerty@keyboard.us 555-1212@fax.in (908)-555-1234 973-360-0000 360-0007 (877)-807-4596 94 Information Theory for Data Management - Divesh & Suresh

95
Heterogeneity Identification [DKOSV06] Example: semantically homogeneous, heterogeneous columns More semantic types in column greater heterogeneity – Only email versus email + phone Customer_Id h8742@yyy.com kkjj+@haha.org qwerty@keyboard.us 555-1212@fax.in alpha@beta.ga john.smith@noname.org jane.doe@1973law.us jamesbond.007@action.com Customer_Id h8742@yyy.com kkjj+@haha.org qwerty@keyboard.us 555-1212@fax.in (908)-555-1234 973-360-0000 360-0007 (877)-807-4596 95 Information Theory for Data Management - Divesh & Suresh

96
Heterogeneity Identification [DKOSV06] Example: semantically homogeneous, heterogeneous columns Customer_Id h8742@yyy.com kkjj+@haha.org qwerty@keyboard.us 555-1212@fax.in alpha@beta.ga john.smith@noname.org jane.doe@1973law.us (877)-807-4596 Customer_Id h8742@yyy.com kkjj+@haha.org qwerty@keyboard.us 555-1212@fax.in (908)-555-1234 973-360-0000 360-0007 (877)-807-4596 96 Information Theory for Data Management - Divesh & Suresh

97
Heterogeneity Identification [DKOSV06] Example: semantically homogeneous, heterogeneous columns Relative distribution of semantic types impacts heterogeneity – Mainly email + few phone versus balanced email + phone Customer_Id h8742@yyy.com kkjj+@haha.org qwerty@keyboard.us 555-1212@fax.in alpha@beta.ga john.smith@noname.org jane.doe@1973law.us (877)-807-4596 Customer_Id h8742@yyy.com kkjj+@haha.org qwerty@keyboard.us 555-1212@fax.in (908)-555-1234 973-360-0000 360-0007 (877)-807-4596 97 Information Theory for Data Management - Divesh & Suresh

98
Heterogeneity Identification [DKOSV06] Example: semantically homogeneous, heterogeneous columns Customer_Id 187-65-2468 987-64-6837 789-15-4321 987-65-4321 (908)-555-1234 973-360-0000 360-0007 (877)-807-4596 Customer_Id h8742@yyy.com kkjj+@haha.org qwerty@keyboard.us 555-1212@fax.in (908)-555-1234 973-360-0000 360-0007 (877)-807-4596 98 Information Theory for Data Management - Divesh & Suresh

99
Heterogeneity Identification [DKOSV06] Example: semantically homogeneous, heterogeneous columns Customer_Id 187-65-2468 987-64-6837 789-15-4321 987-65-4321 (908)-555-1234 973-360-0000 360-0007 (877)-807-4596 Customer_Id h8742@yyy.com kkjj+@haha.org qwerty@keyboard.us 555-1212@fax.in (908)-555-1234 973-360-0000 360-0007 (877)-807-4596 99 Information Theory for Data Management - Divesh & Suresh

100
Heterogeneity Identification [DKOSV06] Example: semantically homogeneous, heterogeneous columns More easily distinguished types greater heterogeneity – Phone + (possibly) SSN versus balanced email + phone Customer_Id 187-65-2468 987-64-6837 789-15-4321 987-65-4321 (908)-555-1234 973-360-0000 360-0007 (877)-807-4596 Customer_Id h8742@yyy.com kkjj+@haha.org qwerty@keyboard.us 555-1212@fax.in (908)-555-1234 973-360-0000 360-0007 (877)-807-4596 100 Information Theory for Data Management - Divesh & Suresh

101
Heterogeneity Identification [DKOSV06] Heterogeneity = complexity of describing the data – More, balanced clusters greater heterogeneity – More distinguishable clusters greater heterogeneity Use two views of mutual information 1. It quantifies the complexity of describing the data (compression) 2. It quantifies the quality of the compression 101 Information Theory for Data Management - Divesh & Suresh

102
Heterogeneity Identification [DKOSV06] Hard clustering X = Customer_IdT = Cluster_Id 187-65-2468t1 987-64-6837t1 789-15-4321t1 987-65-4321t1 (908)-555-1234t2 973-360-0000t1 360-0007t3 (877)-807-4596t2 102 Information Theory for Data Management - Divesh & Suresh

103
Measuring complexity of clustering Take 1: complexity of a clustering = #clusters – standard model of complexity. Doesn’t capture the fact that clusters have different sizes. 103 Information Theory for Data Management - Divesh & Suresh

104
Measuring complexity of clustering Take 2: Complexity of clustering = number of bits needed to describe it. Writing down “k” needs log k bits. In general, let cluster t T have |t| elements. – set p(t) = |t|/n – #bits to write down cluster sizes = H(T) = p t log 1/p t H( ) < H( ) 104 Information Theory for Data Management - Divesh & Suresh

105
Heterogeneity Identification [DKOSV06] Soft clustering: cluster membership probabilities How to compute a good soft clustering? X = Customer_IdT = Cluster_Idp(T|X) 789-15-4321t10.75 987-65-4321t10.75 789-15-4321t20.25 987-65-4321t20.25 (908)-555-1234t10.25 973-360-0000t10.5 (908)-555-1234t20.75 973-360-0000t20.5 105 Information Theory for Data Management - Divesh & Suresh

106
Measuring complexity of clustering Take 1: – p(t) = x p(x) p(t|x) – Compute H(T) as before. Problem: H(T1) = H(T2) !! T1t1t2T2t1t2 x10.5 x10.990.01 x20.5 x20.010.99 h(T)0.5 h(T)0.5 106 Information Theory for Data Management - Divesh & Suresh

107
Measuring complexity of clustering By averaging the memberships, we’ve lost useful information. Take II: Compute I(T;X) ! Even better: If T is a hard clustering of X, then I(T;X) = H(T) XT1p(X,T)i(X;T) x1t10.250 x1t20.250 x2t10.250 x2t20.250 I(T1;X) = 0 XT2p(X,T)i(X;T) x1t10.4950.99 x1t20.005-5.64 x2t10.250 x2t20.250 I(T2;X) = 0.46 107 Information Theory for Data Management - Divesh & Suresh

108
Measuring cost of a cluster Given objects X t = {X1, X2, …, Xm} in cluster t, Cost(t) = sum of distances from Xi to cluster center If we set distance to be KL-distance, then Cost of a cluster = I(X t,V) 108 Information Theory for Data Management - Divesh & Suresh

109
Cost of a clustering If we partition X into k clusters X 1,..., X k Cost(clustering) = i p i I(X i, V) (p i = |X i |/|X|) Suppose we treat each cluster center itself as a point ? 109 Information Theory for Data Management - Divesh & Suresh

110
Cost of a clustering We can write down the “cost” of this “cluster” – Cost(T) = I(T;V) Key result [BMDG05] : Cost(clustering) = I(X, V) – I(T, V) Minimizing cost(clustering) => maximizing I(T, V) 110 Information Theory for Data Management - Divesh & Suresh

111
Heterogeneity Identification [DKOSV06] Represent strings as q-gram distributions X = Customer_IdV = 4-gramsp(X,V) 987-65-4321987-0.10 987-65-432187-60.13 987-65-43217-650.12 987-65-4321-65-0.15 987-65-432165-40.05 987-65-43215-430.20 987-65-4321-4320.15 987-65-432143210.10 Customer_Id 187-65-2468 987-64-6837 789-15-4321 987-65-4321 (908)-555-1234 973-360-0000 360-0007 (877)-807-4596 111 Information Theory for Data Management - Divesh & Suresh

112
Heterogeneity Identification [DKOSV06] iIB: find soft clustering T of X that minimizes I(T;X) – β*I(T;V) Allow iIB to use arbitrarily many clusters, use β* = H(X)/I(X;V) – Closest to point with minimum space and maximum quality X = Customer_IdV = 4-gramsp(X,V) 987-65-4321987-0.10 987-65-432187-60.13 987-65-43217-650.12 987-65-4321-65-0.15 987-65-432165-40.05 987-65-43215-430.20 987-65-4321-4320.15 987-65-432143210.10 Customer_Id 187-65-2468 987-64-6837 789-15-4321 987-65-4321 (908)-555-1234 973-360-0000 360-0007 (877)-807-4596 112 Information Theory for Data Management - Divesh & Suresh

113
Heterogeneity Identification [DKOSV06] Rate distortion curve: I(T;V)/I(X;V) vs I(T;X)/H(X) β* 113 Information Theory for Data Management - Divesh & Suresh

114
Heterogeneity Identification [DKOSV06] Heterogeneity = mutual information I(T;X) of iIB clustering T at β* 0 ≤I(T;X) (= 0.126) ≤ H(X) (= 2.0), H(T) (= 1.0) – Ideally use iIB with an arbitrarily large number of clusters in T X = Customer_IdT = Cluster_Idp(T|X)i(T;X) 789-15-4321t10.750.41 987-65-4321t10.750.41 789-15-4321t20.25-0.81 987-65-4321t20.25-0.81 (908)-555-1234t10.25-1.17 973-360-0000t10.5-0.17 (908)-555-1234t20.750.77 973-360-0000t20.50.19 114 Information Theory for Data Management - Divesh & Suresh

115
Heterogeneity Identification [DKOSV06] Heterogeneity = mutual information I(T;X) of iIB clustering T at β* 115 Information Theory for Data Management - Divesh & Suresh

116
Data Integration: Summary Analyzing database instance critical for effective data integration – Matching and quality assessments are key components Information theoretic measures useful for schema matching – Align columns when column names, data values are opaque – Mutual information I(X;V) captures correlations between X, V Information theoretic measures useful for heterogeneity testing – Identify columns with semantically heterogeneous values – I(T;X) of iIB clustering T at β* captures column heterogeneity 116 Information Theory for Data Management - Divesh & Suresh

117
Outline Part 1 Introduction to Information Theory Application: Data Anonymization Application: Database Design Part 2 Review of Information Theory Basics Application: Data Integration Computing Information Theoretic Primitives Open Problems Information Theory for Data Management - Divesh & Suresh 117

118
Domain size matters For random variable X, domain size = supp(X) = {xi | p(X = xi) > 0} Different solutions exist depending on whether domain size is “small” or “large” Probability vectors usually very sparse 118 Information Theory for Data Management - Divesh & Suresh

119
Entropy: Case I - Small domain size Suppose the #unique values for a random variable X is small (i.e fits in memory) Maximum likelihood estimator: – p(x) = #times x is encountered/total number of items in set. 1 2 1 4 2 5 1 12345 119 Information Theory for Data Management - Divesh & Suresh

120
Entropy: Case I - Small domain size H MLE = x p(x) log 1/p(x) This is a biased estimate: – E[H MLE ] < H Miller-Madow correction: – H’ = H MLE + (m’ – 1)/2n m’ is an estimate of number of non-empty bins n = number of samples Bad news: ALL estimators for H are biased. Good news: we can quantify bias and variance of MLE: – Bias <= log(1 + m/N) – Var(H MLE ) <= (log n) 2 /N 120 Information Theory for Data Management - Divesh & Suresh

121
Entropy: Case II - Large domain size |X| is too large to fit in main memory, so we can’t maintain explicit counts. Streaming algorithms for H(X): – Long history of work on this problem – Bottomline: (1+ )-relative-approximation for H(X) that allows for updates to frequencies, and requires “almost constant”, and optimal space [HNO08]. 121 Information Theory for Data Management - Divesh & Suresh

122
Streaming Entropy [CCM07] High level idea: sample randomly from the stream, and track counts of elements picked [AMS] PROBLEM: skewed distribution prevents us from sampling lower-frequency elements (and entropy is small) Idea: estimate largest frequency, and distribution of what’s left (higher entropy) 122 Information Theory for Data Management - Divesh & Suresh

123
Streaming Entropy [CCM07] Maintain set of samples from original distribution and distribution without most frequent element. In parallel, maintain estimator for frequency of most frequent element – normally this is hard – but if frequency is very large, then simple estimator exists [MG81] (Google interview puzzle!) At the end, compute function of these two estimates Memory usage: roughly 1/ 2 log(1/ ) ( is the error) 123 Information Theory for Data Management - Divesh & Suresh

124
Entropy and MI are related I(X;Y) = H(X,Y) – H(X) – H(Y) Suppose we can c-approximate H(X) for any c > 0: Find H’(X) s.t |H(X) – H’(X)| <= c Then we can 3c-approximate I(X;Y): – I(X;Y) = H(X,Y) – H(X) – H(Y) <= H’(X,Y)+c – (H’(X)-c) – (H’(Y)-c) <= H’(X,Y) – H’(X) – H’(Y) + 3c <= I’(X,Y) + 3c Similarly, we can 2c-approximate H(Y|X) = H(X,Y) – H(X) Estimating entropy allows us to estimate I(X;Y) and H(Y|X) 124 Information Theory for Data Management - Divesh & Suresh

125
Computing KL-divergence: Small Domains “easy algorithm”: maintain counts for each of p and q, normalize, and compute KL-divergence. PROBLEM ! Suppose q i = 0: – p i log p i /q i is undefined ! General problem with ML estimators: all events not seen have probability zero !! – Laplace correction: add one to counts for each seen element – Slightly better: add 0.5 to counts for each seen element [KT81] – Even better, more involved: use Good-Turing estimator [GT53] YIeld non-zero probability for “things not seen”. 125 Information Theory for Data Management - Divesh & Suresh

126
Computing KL-divergence: Large Domains Bad news: No good relative-approximations exist in small space. (Partial) good news: additive approximations in small space under certain technical conditions (no p i is too small). (Partial) good news: additive approximations for symmetric variant of KL-divergence, via sampling. For details, see [GMV08,GIM08] 126 Information Theory for Data Management - Divesh & Suresh

127
Information-theoretic Clustering Given a collection of random variables X, each “explained” by a random variable Y, we wish to find a (hard or soft) clustering T such that I(T,X) – I(T, Y) is minimized. Features of solutions thus far: – heuristic (general problem is NP-hard) – address both small-domain and large-domain scenarios. 127 Information Theory for Data Management - Divesh & Suresh

128
Agglomerative Clustering (aIB) [ST00] Fix number of clusters k 1.While number of clusters < k 1. Determine two clusters whose merge loses the least information 2. Combine these two clusters 2.Output clustering Merge Criterion: – merge the two clusters so that change in I(T;V) is minimized Note: no consideration of (number of clusters is fixed) 128 Information Theory for Data Management - Divesh & Suresh

129
Agglomerative Clustering (aIB) [S] Elegant way of finding the two clusters to be merged: Let d JS (p,q) = (1/2)(d KL (p,m) + d KL (q,m)), m = (p+q)/2 d JS (p,q) is a symmetric distance between p, q (Jensen- Shannon distance) We merge clusters that have smallest d JS (p,q), (weighted by cluster mass) pqm 129 Information Theory for Data Management - Divesh & Suresh

130
Iterative Information Bottleneck (iIB) [S] aIB yields a hard clustering with k clusters. If you want a soft clustering, use iIB (variant of EM) – Step 1: p(t|x) ← exp(- d KL (p(V|x),p(V|t)) assign elements to clusters in proportion (exponentially) to distance from cluster center ! – Step 2: Compute new cluster centers by computing weighted centroids: p(t) = x p(t|x) p(x) p(V|t) = x p(V|t) p(t|x) p(x)/p(t) – Choose according to [DKOSV06] 130 Information Theory for Data Management - Divesh & Suresh

131
Dealing with massive data sets Clustering on massive data sets is a problem Two main heuristics: – Sampling [DKOSV06]: pick a small sample of the data, cluster it, and (if necessary) assign remaining points to clusters using soft assignment. How many points to sample to get good bounds ? – Streaming: Scan the data in one pass, performing clustering on the fly How much memory needed to get reasonable quality solution ? 131 Information Theory for Data Management - Divesh & Suresh

132
LIMBO (for aIB) [ATMS04] BIRCH-like idea: – Maintain (sparse) summary for each cluster (p(t), p(V|t)) – As data streams in, build clusters on groups of objects – Build next-level clusters on cluster summaries from lower level 132 Information Theory for Data Management - Divesh & Suresh

133
Outline Part 1 Introduction to Information Theory Application: Data Anonymization Application: Database Design Part 2 Review of Information Theory Basics Application: Data Integration Computing Information Theoretic Primitives Open Problems Information Theory for Data Management - Divesh & Suresh 133

134
Open Problems Data exploration and mining – information theory as first-pass filter Relation to nonparametric generative models in machine learning (LDA, PPCA,...) Engineering and stability: finding right knobs to make systems reliable and scalable Other information-theoretic concepts ? (rate distortion, higher-order entropy,...) THANK YOU ! 134 Information Theory for Data Management - Divesh & Suresh

135
References: Information Theory [CT] Tom Cover and Joy Thomas: Information Theory. [BMDG05] Arindam Banerjee, Srujana Merugu, Inderjit Dhillon, Joydeep Ghosh. Learning with Bregman Divergences, JMLR 2005. [TPB98] Naftali Tishby, Fernando Pereira, William Bialek. The Information Bottleneck Method. Proc. 37 th Annual Allerton Conference, 1998. 135 Information Theory for Data Management - Divesh & Suresh

136
References: Data Anonymization [AA01] Dakshi Agrawal, Charu C. Aggarwal: On the design and quantification of privacy preserving data mining algorithms. PODS 2001. [AS00] Rakesh Agrawal, Ramakrishnan Srikant: Privacy preserving data mining. SIGMOD 2000. [EGS03] Alexandre Evfimievski, Johannes Gehrke, Ramakrishnan Srikant: Limiting privacy breaches in privacy preserving data mining. PODS 2003. Information Theory for Data Management - Divesh & Suresh 136

137
References: Database Design [AL03] Marcelo Arenas, Leonid Libkin: An information theoretic approach to normal forms for relational and XML data. PODS 2003. [AL05] Marcelo Arenas, Leonid Libkin: An information theoretic approach to normal forms for relational and XML data. JACM 52(2), 246-283, 2005. [DR00] Mehmet M. Dalkilic, Edward L. Robertson: Information dependencies. PODS 2000. [KL06] Solmaz Kolahi, Leonid Libkin: On redundancy vs dependency preservation in normalization: an information-theoretic study of XML. PODS 2006. 137 Information Theory for Data Management - Divesh & Suresh

138
References: Data Integration [AMT04] Periklis Andritsos, Renee J. Miller, Panayiotis Tsaparas: Information-theoretic tools for mining database structure from large data sets. SIGMOD 2004. [DKOSV06] Bing Tian Dai, Nick Koudas, Beng Chin Ooi, Divesh Srivastava, Suresh Venkatasubramanian: Rapid identification of column heterogeneity. ICDM 2006. [DKSTV08] Bing Tian Dai, Nick Koudas, Divesh Srivastava, Anthony K. H. Tung, Suresh Venkatasubramanian: Validating multi-column schema matchings by type. ICDE 2008. [KN03] Jaewoo Kang, Jeffrey F. Naughton: On schema matching with opaque column names and data values. SIGMOD 2003. [PPH05] Patrick Pantel, Andrew Philpot, Eduard Hovy: An information theoretic model for database alignment. SSDBM 2005. 138 Information Theory for Data Management - Divesh & Suresh

139
References: Computing IT quantities [P03] Liam Panninski. Estimation of entropy and mutual information. Neural Computation 15: 1191-1254. [GT53] I. J. Good. Turing’s anticipation of Empirical Bayes in connection with the cryptanalysis of the Naval Enigma. Journal of Statistical Computation and Simulation, 66(2), 2000. [KT81] R. E. Krichevsky and V. K. Trofimov. The performance of universal encoding. IEEE Trans. Inform. Th. 27 (1981), 199--207. [CCM07] Amit Chakrabarti, Graham Cormode and Andrew McGregor. A near-optimal algorithm for computing the entropy of a stream. Proc. SODA 2007. Information Theory for Data Management - Divesh & Suresh 139

140
References: Computing IT quantities [HNO] Nich Harvey, Jelani Nelson, Krzysztof Onak. Sketching and Streaming Entropy via Approximation Theory. FOCS 2008. [ATMS04] Periklis Andritsos, Panayiotis Tsaparas, Renée J. Miller and Kenneth C. Sevcik. LIMBO: Scalable Clustering of Categorical Data. EDBT 2004. [S] Noam Slonim. The Information Bottleneck: theory and applications. Ph.D Thesis. Hebrew University, 2000. [GMV08] Sudipto Guha, Andrew McGregor, Suresh Venkatasubramanian. Streaming and sublinear approximations for information distances. ACM Trans Alg. 2008. [GIM08] Sudipto Guha, Piotr Indyk, Andrew McGregor. Sketching Information Distances. JMLR, 2008. Information Theory for Data Management - Divesh & Suresh 140

Similar presentations

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google