Fully Dynamic Graph Stream β’ Our model for a large and fully-dynamic graph β’ Discrete time π’ , starting from 1 and ever increasing β’ At each time π’ , a change in the input graph arrives β¦ change : either an insertion or deletion of an edge Time π’ 1 2 3 4 5 β¦ Change +(π, π) +(π, π) +(π, π) β(π, π) +(π, π) β¦ (given) π π π π π Graph β¦ Not Materialized (unmate π π π π π π π π π π -rialized) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 31/127
Problem Definition β’ Given : β¦ a fully-dynamic graph stream (possibly infinite) β¦ memory space (finite) β’ Estimate: the count of triangles β’ To Minimize: estimation error Time π’ 1 2 3 4 5 β¦ Given +(π, π) +(π, π) +(π, π) β(π, π) +(π, π) β¦ (input) Changes Estimate β¦ # Triangles (output) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 32/127
Roadmap β’ T1. Structure Analysis (Part 1) β¦ T1.1 Triangle Counting βͺ Handling Deletions (Β§6) β¦ Problem Definition β¦ Proposed Method: ThinkD << β¦ Experiments βͺ β¦ β’ T2. Anomaly Detection (Part 2) β’ T3. Behavior Modeling (Part 3) β’ Future Directions β’ Conclusions Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 33/127
Overview of ThinkD β’ Maintains and updates ΰ· β β¦ Number of (non-deleted) triangles that it has observed β’ How it processes an insertion : test count: arrive store (keep?) increase ΰ· β Yes No - arrive : an insertion of an edge arrives - count: count new triangles and increase ΰ· β - test : toss a coin - store : store the edge in memory Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 34/127
Overview of ThinkD (cont.) β’ Maintains and updates ΰ· β β¦ Number of (non-deleted) triangles that it has observed β’ How it processes an deletion : test count: arrive delete (stored?) decrease ΰ· β Yes No - arrive : a deletion of an edge arrives - count: count deleted triangles and decrease ΰ· β - test : test whether the edge is stored in memory - delete : delete the edge in memory Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 35/127
Why is ThinkD Accurate? β’ ThinkD (Think before You D iscard ): β¦ every arrived change is used to update ΰ·‘ β store / count: arrive test update ΰ· β delete Yes No (discard) β’ Triest-FD [DERU17]: β¦ some changes are discarded without being used to update ΰ·‘ β store / count: arrive test update ΰ· Yes β delete No (discard) β information loss! Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 36/125
Two Versions of ThinkD Q1: How to test in the test step Q2: How to estimate the count of all triangles from ΰ· β β’ ThinkD-FAST : simple and fast β¦ independent Bernoulli trials with probability π β’ ThinkD-ACC : accurate and parameter-free β¦ random pairing [GLH08] Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 37/127
Unbiasedness of ThinkD-FAST ΰ· β β’ π π : estimated count of all triangles β’ β : true count of all triangles [ Theorem 1 ] At any time π , ΰ· β π½ π π = π Unbiased estimate of π β’ Proof and a variance of ΰ· β/p 2 : see the thesis Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 38/127
ThinkD-ACC: More Accurate β’ Disadvantage of ThinkD-FAST: β¦ setting the parameter π is not trivial βͺ small π β underutilize memory β inaccurate estimation βͺ large π β out-of-memory error β’ ThinkD-ACC uses Random Pairing [RLH08] β¦ always utilizes memory as fully as possible β¦ gives more accurate estimation Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 39/127
Scalability of ThinkD β’ Let π be the size of memory β’ For processing π’ changes in the input stream, [ Theorem 2 ] The time complexity of ThinkD-ACC is π(π β π’) linear in data size π [ Theorem 3 ] If π = π π’ , the time complexity ThinkD-FAST is π(π β π’) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 40/127
Advantages of ThinkD Fast & Accurate: outperforming competitors Scalable: linear data scalability (Theorems 2 & 3) Theoretically Sound: unbiased estimates (Theorem 1) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 41/127
Roadmap β’ T1. Structure Analysis (Part 1) β¦ T1.1 Triangle Counting βͺ Handling Deletions (Β§6) β¦ Problem Definition β¦ Proposed Method: ThinkD β¦ Experiments << βͺ β¦ β’ T2. Anomaly Detection (Part 2) β’ T3. Behavior Modeling (Part 3) β’ β¦ Mining Large Dynamic Graphs and Tensors (by Kijung Shin) 42/127
Experimental Settings β’ Competitors : Triest-FD [DERU17] & ESD [HS17] β¦ triangle counting in fully-dynamic graph streams β’ Implementations : β’ Datasets: β¦ insertions (edges in graphs) + deletions (random 20%) Synthetic Social Networks Citation Web Trust ( 100B edges) ( 1.8B+ edges, β¦) (16M+) (6M+) (0.7M+) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 43/127
EXP1. Variance Analysis ThinkD is accurate with small variance Triest-FD ThinkD-FAST ThinkD-ACC True Count Number of Processed Changes - dataset: Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 44/127
EXP2. Scalability [THM 2 & 3] ThinkD is scalable ThinkD-ACC 100 billion ThinkD-FAST changes Number of Changes - dataset: Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 45/127
EXP3. Space & Accuracy ThinkD outperforms its best competitors Estimation Error (ratio) Triest-FD ThinkD-FAST ESD ThinkD -ACC Memory budget (ratio) - dataset: 46 /127 Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7
EXP4. Speed & Accuracy ThinkD outperforms its best competitors Estimation Error (ratio) ThinkD-ACC ESD Triest-FD ThinkD -FAST Running time (Sec) - dataset: 47 /127 Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7
Advantages of ThinkD Fast & Accurate: outperforming competitors Scalable: linear data scalability Theoretically Sound: unbiased estimates 48 /127 Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7
Summary of Β§6 β’ We propose ThinkD ( Think Before you D iscard) β¦ for accurate triangle counting β¦ in large and fully-dynamic graphs Fast & Accurate: outperforming competitors Scalable: linear data scalability Theoretically Sound: unbiased estimates Download ThinkD Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 49/127
Organization of the Thesis (Recall) Part1. Part2. Part3. Structure Anomaly Behavior Analysis Detection Modeling Triangle Count Graphs Anomalous Purchase (§§ 3-6) Subgraph Behavior Summarization (§ 9) (§ 14) (§ 7) Tensors Summarization Dense Subtensors Progression (§ 8) (§§ 10-13) (§ 15) Mining Large Dynamic Graphs and Tensors (by Kijung Shin) 50/127
T1.2 Summarization βGiven a web -scale graph or tensor, how can we succinctly represent it?β Input graph Summary graph π π π π π, π, π π, π π, π π π π T1-2 β’ Β§7: Summarizing Graphs β’ Β§8: Summarizing Tensors (via Tucker Decomposition) β¦ External-memory algorithm with 1,000 Γ improved scalability Mining Large Dynamic Graphs and Tensors (by Kijung Shin) 51/127
Roadmap β’ T1. Structure Analysis (Part 1) β¦ β¦ β¦ T1-2. Summarization (§§ 7-8) βͺ Summarizing Graphs (Β§ 7) β¦ Problem Definition << β¦ Proposed Method: SWeG β¦ Experiments βͺ β¦ β’ T2. Anomaly Detection (Part 2) β’ T3. Behavior Modeling (Part 3) β’ β¦ K. Shin , A. Ghoting , M. Kim, and H. Raghavan, β SWeG: Lossless and Lossy Mining Large Dynamic Graphs and Tensors (by Kijung Shin) 52/127 Summarization of Web- Scale Graphsβ, WWW 2019
Graph Summarization: Example π π π π π π π β (π, π) π π π π π, π π Input Graph (w/ 9 edges) π β (π, π) β (π, π) β (π, π) β (π, π) π + π, π π, π, π π, π, π π, π π, π π, π + π, π Output (w/ 6 edges) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 53/127
Graph Summarization [NRS08] β’ Given: an input graph β’ Find: β¦ a summary graph β¦ positive and negative residual graphs β’ To Minimize : the edge count ( β description length) Residual Graph π (Positive) + π, π π π π π, π, π π, π π, π π π π β (π, π) β (π, π) Residual Graph Input Graph Summary Graph (Negative) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 54/127
Restoration: Example π β (π, π) β (π, π) β (π, π) β (π, π) π + π, π π, π, π π, π π, π, π π, π π, π + π, π Summarized Graph (w/ 6 edges) π π π π π π π β (π, π) π π π π π, π π Restored Graph (w/ 9 edges) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 55/127
Why Graph Summarization? β’ Summarization: β¦ the summary graph is easy to visualize and interpret β’ Compression: β¦ support efficient neighbor queries discussed β¦ applicable to lossy compression in the thesis β¦ combinable with other graph compression techniques βͺ the outputs are also graphs + π, π Residual Graph (Positive) π, π, π π, π π, π β (π, π) Residual Graph (Negative) β (π, π) Summary Graph Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 56/127
Challenge: Scalability! Compression VoG [KKVF14] Performance Greedy [NSR08] 10,000 Γ SWeG Good Randomized [NSR08] SAGS [KNL15] Bad millions 10 millions billions Maximum Size of Graphs Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 57/127
Our Contribution: SWeG β’ We develop SWeG ( S ummarizing We b-scale G raphs): Fast with Concise Outputs Memory Efficient Scalable Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 58/127
Roadmap β’ T1. Structure Analysis (Part 1) β¦ β¦ β¦ T1-2. Summarization (§§ 7-8) βͺ Summarizing Graphs (Β§ 7) β¦ Problem Definition β¦ Proposed Method: SWeG << β¦ Experiments βͺ β¦ β’ T2. Anomaly Detection (Part 2) β’ T3. Behavior Modeling (Part 3) β’ β¦ Mining Large Dynamic Graphs and Tensors (by Kijung Shin) 59/127
Terminologies Summary Graph π» Residual Graph πΊ Positive Residual super node Graph πΊ + + π, π Negative {π, π} π, π, π π, π Residual β (π, π) = π΅ = πΆ = π· Graph πΊ β β (π, π) Encoding cost when π΅ and πΆ π·ππ‘π’(π΅ βͺ πΆ) are merged π»πππππ π©, πͺ : = 1 β π·ππ‘π’ π΅ + π·ππ‘π’(πΆ) Encoding cost of πΆ Encoding cost of π΅ Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 60/127
Overview of SWeG β’ Inputs: - input graph π― - number of iterations πΌ β’ Outputs: - summary graph π» - residual graph πΊ (or πΊ + and πΊ β ) β’ Procedure: β’ S0: Initializing Step repeat π times β’ β’ S1-1: Dividing Step β’ S1-2: Merging Step β’ S2: Compressing Step (optional) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 61/127
Overview: Initializing Step Summary Graph π» = π― Residual Graph πΊ = β π· = {π} πΊ = {π} πΈ = {π} π΅ = {π} π» = {π} πΆ = {π} πΉ = {π} β’ S0: Initializing Step << repeat π times β’ β’ S1-1: Dividing Step β’ S1-2: Merging Step β’ S2: Compressing Step (optional) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 62/127
Overview: Dividing Step β’ Divides super nodes into groups β¦ MinHashing (used) , EigenSpoke, Min-Cut, etc. π· = {π} πΈ = {π} πΊ = {π} π΅ = {π} πΉ = {π} π» = {π} πΆ = {π} β’ S0: Initializing Step repeat π times β’ β’ S1-1: Dividing Step << β’ S1-2: Merging Step β’ S2: Compressing Step (optional) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 63/127
Overview: Merging Step β’ Merge some supernodes within each group if πππ€πππ > π (π’) π· = {π} πΊ = {π, π} πΈ = {π, π} π΅ = {π, π} β’ S0: Initializing Step repeat π times β’ β’ S1-1: Dividing Step β’ S1-2: Merging Step << β’ S2: Compressing Step (optional) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 64/127
Overview: Merging Step (cont.) Summary Graph π» Residual Graph πΊ π· = {π} + π, π π΅ = {π, π} πΊ = {π, π} β (π, π) πΈ = {π, π} β’ S0: Initializing Step repeat π times β’ β’ S1-1: Dividing Step β’ S1-2: Merging Step β’ S2: Compressing Step (optional) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 65/127
Overview: Dividing Step β’ Divides super nodes into groups πΊ = {π, π} π· = {π} πΈ = {π, π} π΅ = {π, π} β’ S0: Initializing Step repeat π times β’ β’ S1-1: Dividing Step << β’ S1-2: Merging Step β’ S2: Compressing Step (optional) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 66/127
Overview: Merging Step β’ Merge some supernodes within each group if πππ€πππ > π (π’) πΊ = {π, π} π· = {π, π, π} π΅ = {π, π} β’ S0: Initializing Step repeat π times β’ β’ S1-1: Dividing Step β’ S1-2: Merging Step << β’ S2: Compressing Step (optional) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 67/127
Overview: Merging Step (cont.) Summary Graph π» Residual Graph πΊ π΅ = {π, π} + π, π πΊ = π, π πΆ = β (π, π) π, π, π β (π, π) β’ S0: Initializing Step repeat π times β’ β’ S1-1: Dividing Step β’ S1-2: Merging Step β’ S2: Compressing Step (optional) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 68/127
Overview: Merging Step (cont.) β’ Merge some supernodes within each group if πππ€πππ > π (π’) β’ Decreasing π (π’) = 1 + π’ β1 β¦ exploration of other groups β¦ exploitation within each group β¦ ~ 30 % better compression than π (π’) = 0 β’ S0: Initializing Step repeat π times β’ β’ S1-1: Dividing Step β’ S1-2: Merging Step << β’ S2: Compressing Step (optional) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 69/127
Overview: Compressing Step β’ Compress each output graph ( π» , πΊ + and πΊ β ) β’ Use any off-the-shelf graph-compression algorithm β¦ Boldi-Vigna [BV04] β¦ VNMiner [BC08] β¦ Graph Bisection [DKKO+16] β’ S0: Initializing Step repeat π times β’ β’ S1-1: Dividing Step β’ S1-2: Merging Step β’ S2: Compressing Step (optional) << Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 70/127
Parallel & Distributed Processing β’ Map stage: compute min hashes in parallel β’ Shuffle stage: divide super nodes using min hashes β’ Reduce stage: process groups independently in parallel No need to load the entire graph in memory! MinHash = π MinHash = π MinHash = π π΅ = {π} πΈ = {π} πΊ = {π} πΆ = {π} πΉ = {π} π» = {π} π· = {π} Merge! Merge! Merge! Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 71/127
Roadmap β’ T1. Structure Analysis (Part 1) β¦ ... β¦ T1-2. Summarization (§§ 7-8) βͺ Summarizing Graphs (Β§ 7) β¦ Problem Definition β¦ Proposed Method: SWeG β¦ Experiments << βͺ β¦ β’ T2. Anomaly Detection (Part 2) β’ T3. Behavior Modeling (Part 3) β’ β¦ Mining Large Dynamic Graphs and Tensors (by Kijung Shin) 72/127
Experimental Settings β’ 13 real-world graphs (10K - 20B edges) β¦ Social Collaboration Citation Web β¦ β’ Graph summarization algorithms: β¦ Greedy [NRS08], Randomized [NSR08], SAGS [KNL15] β’ Implementations: & Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 73/127
EXP1. Speed and Compression SWeG outperforms its competitors SWeG - dataset: Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 74/127
Advantages of SWeG (Recall) Fast with Concise Outputs Memory Efficient Scalable Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 75/127
EXP2. Memory Efficiency SWeG loads β€ 0.1 β 4% of edges in main memory at once Input Graph 294X 1209X Memory Usage Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 76/127
Advantages of SWeG (Recall) Fast with Concise Outputs Memory Efficient Scalable Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 77/127
EXP3. Effect of Iterations About 20 iterations are enough Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 78/127
EXP4. Data Scalability SWeG is linear in the number of edges β₯ ππ billion edges SWeG SWeG (Single machine) (Hadoop) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 79/127
EXP5. Machine Scalability SWeG scales up SWeG SWeG (Hadoop) (Single machine) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 80/127
Advantages of SWeG (Recall) Fast with Concise Outputs Memory Efficient Scalable Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 81/127
Summary of Β§7 β’ We propose SWeG ( S ummarizing W eb G raphs) β¦ for summarizing large-scale graphs Fast with Concise Outputs Memory Efficient Scalable SWeG SWeG (Hadoop) Part 1 / Part 2 / Part 3 Graph / Tensor Β§4 / Β§5 / Β§6 / Β§7 82/127
Contributions and Impact (Part 1) Triangle counting algorithms [ICDM17, PKDD18, PAKDD18] Summarization algorithms [WSDM17, WWW19] Patent on SWeG : filed by LinkedIn Inc. Open-source software : downloaded 82 times github.com /kijungs SWeG ThinkD Mining Large Dynamic Graphs and Tensors (by Kijung Shin) 83/127
Organization of the Thesis (Recall) Part1. Part2. Part3. Structure Anomaly Behavior Analysis Detection Modeling Triangle Count Graphs Anomalous Purchase (§§ 3-6) Subgraph Behavior Summarization (§ 9) (§ 14) (§ 7) Tensors Summarization Dense Subtensors Progression (§ 8) (§§ 10-13) (§ 15) Mining Large Dynamic Graphs and Tensors (by Kijung Shin) 84/127
T2. Anomaly Detection (Part 2) βHow can we detect anomalies or fraudsters in large dynamic graphs (or tensors)?β Hint : fraudsters ?? tend to form dense subgraphs benign dense subgraphs Part 1 / Part 2 / Part 3 Graph / Tensor 85/127
T2-1. Utilizing Patterns β’ T2-1. Patterns and Anomalies in Dense Subgraphs (Β§ 9) βWhat are patterns in dense subgraphs?β βWhat are anomalies deviating from the patterns?β K. Shin , T. Eliassi-Rad, C. Faloutsos , βPatterns and Anomalies in k -Cores of Mining Large Dynamic Graphs and Tensors (by Kijung Shin) 86/127 Real- world Graphs with Applicationsβ, KAIS 2018 (formerly, ICDM 2016 )
T2-2. Utilizing Side Information Accounts Items Part 1 / Part 2 / Part 3 Graph / Tensor Β§11 / Β§12 / Β§13 / Β§14 87/127
T2-2. Utilizing Side Information βHow can we detect dense subtensors in large dynamic data?β β’ T2-2. Detecting Dense Subtensors (§§ 11-13) β¦ In-memory Algorithm (Β§ 11) β¦ Distribute Algorithm for Web-scale Tensors (Β§ 12) β¦ Incremental Algorithms for Dynamic Tensors (Β§ 13) Part 1 / Part 2 / Part 3 Graph / Tensor Β§11 / Β§12 / Β§13 / Β§14 88/127
Contributions and Impact (Part 2) Patterns in dense subgraphs [ICDM16] β¦ Award : best paper candidate at ICDM 2016 β¦ Class: Algorithms for dense subtensors [PKDD16, WSDM17, KDD17] β¦ Real-world usage: Open-source software : downloaded 257 times github.com /kijungs Mining Large Dynamic Graphs and Tensors (by Kijung Shin) 89/127
Organization of the Thesis (Recall) Part1. Part2. Part3. Structure Anomaly Behavior Analysis Detection Modeling Triangle Count Graphs Anomalous Purchase (§§ 3-6) Subgraph Behavior Summarization (§ 9) (§ 14) (§ 7) Tensors Summarization Dense Subtensors Progression (§ 8) (§§ 10-13) (§ 15) Mining Large Dynamic Graphs and Tensors (by Kijung Shin) 90/127
T3. Behavior Modeling (Part 3) βHow can we model the behavior of individuals in graph and tensor data?β Social Network Behavior Log on Social Media β’ T3-1. Modeling Purchase Behavior in a Social Network (Β§14) β’ T3-2. Modeling Progression of Users of Social Media (Β§15) βHow do users evolve over time on social media?β Part 1 / Part 2 / Part 3 Graph Tensor Β§14 / Β§15 91/127
Roadmap β’ T1. Structure Analysis (Part 1) β’ T2. Anomaly Detection (Part 2) β’ T3. Behavior Modeling (Part 3) β¦ T3-1. Modeling Purchases (Β§14) << β¦ β¦ β’ Future Directions β’ Conclusions K Shin , E Lee, D Eswaran, AD Procaccia , βWhy You Should Charge Your Friends for Borrowing Your Stuffβ, IJCAI 2017 Mining Large Dynamic Graphs and Tensors (by Kijung Shin) 92/127
Sharable Goods: Question Portable crib IKEA toolkit DVDs βWhat do they have in common?β Part 1 / Part 2 / Part 3 Graph Tensor Β§14 / Β§15 93/127
Sharable Goods: Properties β’ Used occasionally β’ Share with friends β’ Do not share with strangers Part 1 / Part 2 / Part 3 Graph Tensor Β§14 / Β§15 94/127
Motivation: Social Inefficiency Popular Lonely Efficiency High Low of Purchase (share with many) (share with few) can be Low can be High Likelihood (likely to borrow) (likely to buy) of Purchase Q1 βHow large can social inefficiency be?β Q2 βHow to nudge people towards efficiency?β Part 1 / Part 2 / Part 3 Graph Tensor Β§14 / Β§15 95/127
Roadmap β’ T1. Structure Analysis (Part 1) β’ T2. Anomaly Detection (Part 2) β’ T3. Behavior Modeling (Part 3) β¦ T3-1. Modeling Purchases (Β§14) βͺ Toy Example << βͺ Game-theoretic Model βͺ Best Rental-fee Search β¦ β¦ β’ Future Directions β’ Conclusions Mining Large Dynamic Graphs and Tensors (by Kijung Shin) 96/127
Social Network β’ Consider a social network , which is a graph β¦ Nodes : people β¦ Edges : friendship Carol Alice Bob βHow many people should buy an IKEA toolkit for everyone to use it?β Part 1 / Part 2 / Part 3 Graph Tensor Β§14 / Β§15 97/127
Socially Optimal Decision β’ The answer is at least π β’ Socially optimal : β¦ everyone uses a toolkit β¦ with minimum purchases (or with minimum cost) Alice Bob βDoes everyone want to stick to their current decisions?β Part 1 / Part 2 / Part 3 Graph Tensor Β§14 / Β§15 98/127
Individually Optimal Decision β’ The answer is No β’ Individually optimal : β¦ everyone best responses to othersβ decisions Alice Bob β’ Socially inefficient (suboptimal): β¦ 4 purchases happen when 2 are optimal Part 1 / Part 2 / Part 3 Graph Tensor Β§14 / Β§15 99/127
Social Inefficiency β’ Individually optimal outcome with 6 purchases Carol Dan βHow can we prevent this social inefficiency?β Part 1 / Part 2 / Part 3 Graph Tensor Β§14 / Β§15 100/127
Recommend
More recommend