SlideShare a Scribd company logo
Vertex programming for bipartite graphs
H Miao, X Liu, B Huang, and L Getoor (2013), “A hypergraph-
partitioned vertex programming approach for large-scale
consensus optimization.” IEEE BigData 2013.
Presented by Hershel Safer
in Machine Learning :: Reading Group Meetupin Machine Learning :: Reading Group Meetup
on 13/11/13
Vertex programming for bipartite graphs – Hershel Safer Page 113 November 2013
Outline
The setting
The problem
A solution
An application and improvement
Vertex programming for bipartite graphs – Hershel Safer Page 213 November 2013
The MapReduce model for processing Big Data
The data-parallel paradigm
• Map: Many computers process subproblems in parallel
• Reduce: Master computer combines subproblem solutions
into overall solution
Appropriate for embarrassingly parallel problems with
independent subproblemsindependent subproblems
Does not support computational dependencies between
subproblems
Does not naturally support iteration
Vertex programming for bipartite graphs – Hershel Safer Page 313 November 2013
Graph-parallel computation for machine learning (ML)
Many ML algorithms are iterative, have dependencies
Many ML algorithms are expressed naturally on graphs
• Vertices represent subproblems
• Edges represent computational dependencies
GraphLab and Pregel express iterative algorithms with sparse
dependencies for implementation on multiple computersdependencies for implementation on multiple computers
• Algorithm designer defines computation at each vertex and
information exchange on each edge, for each iteration
• Package handles mapping of vertices to computers, details of
inter-computer communication, and scheduling
• Package guarantees data consistency (various models
possible) and correctness as compared to serial execution
Vertex programming for bipartite graphs – Hershel Safer Page 413 November 2013
Outline
The setting
The problem
A solution
An application and improvement
Vertex programming for bipartite graphs – Hershel Safer Page 513 November 2013
The graph-parallel computing model
Sparse graph G = (V, E)
Vertex program Q(v), executed in parallel on each vertex v
Q(v) can interact with Q(u) for each neighboring vertex u (i.e.,
(u,v) is an edge of E)
Interaction (communication) is via messages or shared state
• Vertex information is available to all neighbors• Vertex information is available to all neighbors
• Edge information is available to the two adjacent vertices
Vertex programming for bipartite graphs – Hershel Safer Page 613 November 2013
Phases of a vertex program Q: GAS model
For each vertex v, iterate these steps (in parallel for all vertices):
• Gather: Collect information from neighboring vertices and
edges
• Apply: Do the local computation and update the local data
• Scatter: Update the data on the adjacent edges
Vertex programming for bipartite graphs – Hershel Safer Page 713 November 2013
Implementing efficient graph-parallel computing
Use a balanced p-way edge cut to partition vertices more-or-less
evenly among the computers to take advantage of parallelism.
Communication between vertices u and v is cheap if they are on
the same computer, expensive otherwise
Gonzalez 2012
the same computer, expensive otherwise
If edge (u,v) spans computers, a ghost copy of u is kept on v’s
computer and vice versa. Changes to u and v are synchronized
across the computer network to all ghost copies.
So: Partition vertices so that most neighbors are on the same
computer. This is easiest if most vertices have small degree
(neighborhood).
Vertex programming for bipartite graphs – Hershel Safer Page 813 November 2013
Vertex degrees
Unfortunate fact: Degrees in graphs from real problems typically have
a power-law distribution: P(d) α d-α
• A few vertices (hubs) have very high degree
• Most vertices have small degree
• Difficult to partition
Unfortunate consequences:
• Heavy communication load
• Asymmetric communication load leads to bottlenecks
• Work imbalance between computers
• Storing adjacency information for high-degree vertices can exceed
the memory capacity of a computer
• Computation within each computer is serial, so high-degree
vertices limit scalability
Vertex programming for bipartite graphs – Hershel Safer Page 913 November 2013
Gonzalez 2012
Outline
The setting
The problem
A solution
An application and improvement
Vertex programming for bipartite graphs – Hershel Safer Page 1013 November 2013
Breaking the bottleneck: Edge partitioning via vertex cut
Instead of partitioning the vertices, use a balanced p-way vertex cut to
partition the edges more-or-less evenly among the computers.
Vertices, rather than edges, span computers. A vertex with many edges
may be replicated on multiple computers. One copy is the master; the
Gonzalez 2012
may be replicated on multiple computers. One copy is the master; the
rest are mirrors, containing read-only copies of vertex data. Changes to
vertices are synchronized across the network.
PowerGraph vertex cut formalism:
Vertex programming for bipartite graphs – Hershel Safer Page 1113 November 2013
Gonzalez 2012
Properties of edge partitioning via vertex cut
The objective minimizes the average number of replicas, and hence
the total storage and network-communication cost.
The vertex cut addresses the major issues of the edge cut: work
balance, network communication, and communication bottlenecks are
improved even in the presence of high-degree vertices.
PowerGraph paper describes several way to implement partitioning,
including random and greedy assignments
Vertex programming for bipartite graphs – Hershel Safer Page 1213 November 2013
Outline
The setting
The problem
A solution
An application and improvement
Vertex programming for bipartite graphs – Hershel Safer Page 1313 November 2013
Consensus optimization and ADMM
Consensus optimization decomposes a complex problem into a
collection of simpler problems using local variables, and constraining
local copies of the variables to be equal to a global consensus variable.
Alternating Direction Method of Multipliers (ADMM) is an optimization
Miao 2013
Alternating Direction Method of Multipliers (ADMM) is an optimization
method that iterates two phases. Although not new, it has gained
recent popularity because it can be used for distributed solution of
large-scale optimization problems.
Vertex programming for bipartite graphs – Hershel Safer Page 1413 November 2013
Consensus optimization using ADMM
ADMM is useful for consensus optimization when the dual problem
can be decomposed into simple, independent subproblems. Solve
them in parallel in one phase, combine subproblem solutions in the
second phase, and iterate.
Miao 2013
The graph for solving consensus optimization problems has two kinds
of vertices and a bipartite structure.
• Subproblem: Calculating x and λ
• Consensus: Calculating consensus variables X
After a subproblem vertex finishes computing, it transmits results to
relevant consensus vertices, & vice versa. This leads to emergent two-
phase behavior.
Vertex programming for bipartite graphs – Hershel Safer Page 1513 November 2013
Miao 2013
PowerGraph edge partitioning is not good for ADMM
Greedy edge partitioning does not work well for bipartite graphs, such
as those used for consensus optimization with ADMM
• Consensus vertices tend to have much higher degree than
subproblem vertices. As a result, subproblem vertices tend to get
replicated by the PowerGraph vertex-cut methods.
• Subproblem vertices perform much heavier computations that do
consensus vertices, so replicating the former is not desirable.
Solution: Split only consensus vertices, not subproblem vertices
Vertex programming for bipartite graphs – Hershel Safer Page 1613 November 2013
A hypergraph formulation for vertex cut
Main contribution of this paper:
Splitting the consensus vertices with a constraint for balanced edge
placement
corresponds to
Solving a hyperdge cut problem with a similar constraint in the
hypergraph H(VS, EC), where VS is the set of subproblem vertices and
EC is a set of hyperedges, where hyperedge ej ε EC is the set of allEC is a set of hyperedges, where hyperedge ej ε EC is the set of all
subproblems related to consensus variable j.
Solve using available hypergraph analysis packages
They report substantial improvements in replication factor and running
time compared to PowerGraph strategies for edge partitions
Vertex programming for bipartite graphs – Hershel Safer Page 1713 November 2013
References
Hypergraph-partitioned vertex programming
• H. Miao et al., IEEE BigData 2013
• H. Miao et al., Univ. Maryland tech report, 2013
ADMM
• J. Eckstein, RUTCOR research report, 2012
• S. Boyd, Foundations & Trends in Machine Learning, 3 (2010), p. 1• S. Boyd, Foundations & Trends in Machine Learning, 3 (2010), p. 1
GraphLab
• Y. Low, Uncertainty in Artificial Intelligence 2010
• Y. Low, VLDB 5:8 (2012)
• J. Gonzalez, USENIX OSDI 2012
Vertex programming for bipartite graphs – Hershel Safer Page 1813 November 2013

More Related Content

What's hot (9)

Implementation and Performance Analysis of a Vedic Multiplier Using Tanner ED...
Implementation and Performance Analysis of a Vedic Multiplier Using Tanner ED...Implementation and Performance Analysis of a Vedic Multiplier Using Tanner ED...
Implementation and Performance Analysis of a Vedic Multiplier Using Tanner ED...
ijsrd.com
 
A Novel Algebraic Variety based Model for High Quality Free-viewpoint View Sy...
A Novel Algebraic Variety based Model for High Quality Free-viewpoint View Sy...A Novel Algebraic Variety based Model for High Quality Free-viewpoint View Sy...
A Novel Algebraic Variety based Model for High Quality Free-viewpoint View Sy...
Mansi Sharma
 
HPC with Clouds and Cloud Technologies
HPC with Clouds and Cloud TechnologiesHPC with Clouds and Cloud Technologies
HPC with Clouds and Cloud Technologies
Inderjeet Singh
 
Bivariatealgebraic integerencoded arai algorithm for
Bivariatealgebraic integerencoded arai algorithm forBivariatealgebraic integerencoded arai algorithm for
Bivariatealgebraic integerencoded arai algorithm for
eSAT Publishing House
 
IRJET- Approximate Multiplier and 8 Bit Dadda Multiplier Implemented through ...
IRJET- Approximate Multiplier and 8 Bit Dadda Multiplier Implemented through ...IRJET- Approximate Multiplier and 8 Bit Dadda Multiplier Implemented through ...
IRJET- Approximate Multiplier and 8 Bit Dadda Multiplier Implemented through ...
IRJET Journal
 
EfficientNet
EfficientNetEfficientNet
EfficientNet
Changjin Lee
 
Practical implementation of pca on satellite images
Practical implementation of pca on satellite imagesPractical implementation of pca on satellite images
Practical implementation of pca on satellite images
Bhanu Pratap
 
Exascale Computing for Autonomous Driving
Exascale Computing for Autonomous DrivingExascale Computing for Autonomous Driving
Exascale Computing for Autonomous Driving
Levent Gürel
 
Probabilistic Graph Layout for Uncertain Network Visualization
Probabilistic Graph Layout for Uncertain Network VisualizationProbabilistic Graph Layout for Uncertain Network Visualization
Probabilistic Graph Layout for Uncertain Network Visualization
Subhashis Hazarika
 
Implementation and Performance Analysis of a Vedic Multiplier Using Tanner ED...
Implementation and Performance Analysis of a Vedic Multiplier Using Tanner ED...Implementation and Performance Analysis of a Vedic Multiplier Using Tanner ED...
Implementation and Performance Analysis of a Vedic Multiplier Using Tanner ED...
ijsrd.com
 
A Novel Algebraic Variety based Model for High Quality Free-viewpoint View Sy...
A Novel Algebraic Variety based Model for High Quality Free-viewpoint View Sy...A Novel Algebraic Variety based Model for High Quality Free-viewpoint View Sy...
A Novel Algebraic Variety based Model for High Quality Free-viewpoint View Sy...
Mansi Sharma
 
HPC with Clouds and Cloud Technologies
HPC with Clouds and Cloud TechnologiesHPC with Clouds and Cloud Technologies
HPC with Clouds and Cloud Technologies
Inderjeet Singh
 
Bivariatealgebraic integerencoded arai algorithm for
Bivariatealgebraic integerencoded arai algorithm forBivariatealgebraic integerencoded arai algorithm for
Bivariatealgebraic integerencoded arai algorithm for
eSAT Publishing House
 
IRJET- Approximate Multiplier and 8 Bit Dadda Multiplier Implemented through ...
IRJET- Approximate Multiplier and 8 Bit Dadda Multiplier Implemented through ...IRJET- Approximate Multiplier and 8 Bit Dadda Multiplier Implemented through ...
IRJET- Approximate Multiplier and 8 Bit Dadda Multiplier Implemented through ...
IRJET Journal
 
Practical implementation of pca on satellite images
Practical implementation of pca on satellite imagesPractical implementation of pca on satellite images
Practical implementation of pca on satellite images
Bhanu Pratap
 
Exascale Computing for Autonomous Driving
Exascale Computing for Autonomous DrivingExascale Computing for Autonomous Driving
Exascale Computing for Autonomous Driving
Levent Gürel
 
Probabilistic Graph Layout for Uncertain Network Visualization
Probabilistic Graph Layout for Uncertain Network VisualizationProbabilistic Graph Layout for Uncertain Network Visualization
Probabilistic Graph Layout for Uncertain Network Visualization
Subhashis Hazarika
 

Similar to Hypergraph for consensus optimization (20)

Distributed graph summarization
Distributed graph summarizationDistributed graph summarization
Distributed graph summarization
aftab alam
 
I017425763
I017425763I017425763
I017425763
IOSR Journals
 
Pregel - Paper Review
Pregel - Paper ReviewPregel - Paper Review
Pregel - Paper Review
Maria Stylianou
 
DDGK: Learning Graph Representations for Deep Divergence Graph Kernels
DDGK: Learning Graph Representations for Deep Divergence Graph KernelsDDGK: Learning Graph Representations for Deep Divergence Graph Kernels
DDGK: Learning Graph Representations for Deep Divergence Graph Kernels
ivaderivader
 
Ling liu part 01:big graph processing
Ling liu part 01:big graph processingLing liu part 01:big graph processing
Ling liu part 01:big graph processing
jins0618
 
Parallel Batch-Dynamic Graphs: Algorithms and Lower Bounds
Parallel Batch-Dynamic Graphs: Algorithms and Lower BoundsParallel Batch-Dynamic Graphs: Algorithms and Lower Bounds
Parallel Batch-Dynamic Graphs: Algorithms and Lower Bounds
Subhajit Sahu
 
Parallel Batch-Dynamic Graphs: Algorithms and Lower Bounds
Parallel Batch-Dynamic Graphs: Algorithms and Lower BoundsParallel Batch-Dynamic Graphs: Algorithms and Lower Bounds
Parallel Batch-Dynamic Graphs: Algorithms and Lower Bounds
Subhajit Sahu
 
NGBT_poster_v0.4
NGBT_poster_v0.4NGBT_poster_v0.4
NGBT_poster_v0.4
Vineetha Vishnu
 
Embarrassingly/Delightfully Parallel Problems
Embarrassingly/Delightfully Parallel ProblemsEmbarrassingly/Delightfully Parallel Problems
Embarrassingly/Delightfully Parallel Problems
Dilum Bandara
 
GRAPH MATCHING ALGORITHM FOR TASK ASSIGNMENT PROBLEM
GRAPH MATCHING ALGORITHM FOR TASK ASSIGNMENT PROBLEMGRAPH MATCHING ALGORITHM FOR TASK ASSIGNMENT PROBLEM
GRAPH MATCHING ALGORITHM FOR TASK ASSIGNMENT PROBLEM
IJCSEA Journal
 
Satellite image contrast enhancement using discrete wavelet transform
Satellite image contrast enhancement using discrete wavelet transformSatellite image contrast enhancement using discrete wavelet transform
Satellite image contrast enhancement using discrete wavelet transform
Harishwar Reddy
 
20090720 smith
20090720 smith20090720 smith
20090720 smith
Michael Karpov
 
Recognition as Graph Matching
  Recognition as Graph Matching  Recognition as Graph Matching
Recognition as Graph Matching
Vishakha Agarwal
 
Graph processing - Graphlab
Graph processing - GraphlabGraph processing - Graphlab
Graph processing - Graphlab
Amir Payberah
 
Sigmod11 outsource shortest path
Sigmod11 outsource shortest pathSigmod11 outsource shortest path
Sigmod11 outsource shortest path
redhatdb
 
PyData Los Angeles 2020 (Abhilash Majumder)
PyData Los Angeles 2020 (Abhilash Majumder)PyData Los Angeles 2020 (Abhilash Majumder)
PyData Los Angeles 2020 (Abhilash Majumder)
Abhilash Majumder
 
CLOUD BIOINFORMATICS Part1
 CLOUD BIOINFORMATICS Part1 CLOUD BIOINFORMATICS Part1
CLOUD BIOINFORMATICS Part1
ARPUTHA SELVARAJ A
 
A Decomposition Technique For Solving Integer Programming Problems
A Decomposition Technique For Solving Integer Programming ProblemsA Decomposition Technique For Solving Integer Programming Problems
A Decomposition Technique For Solving Integer Programming Problems
Carrie Romero
 
Apache Hadoop India Summit 2011 Keynote talk "Programming Abstractions for Sm...
Apache Hadoop India Summit 2011 Keynote talk "Programming Abstractions for Sm...Apache Hadoop India Summit 2011 Keynote talk "Programming Abstractions for Sm...
Apache Hadoop India Summit 2011 Keynote talk "Programming Abstractions for Sm...
Yahoo Developer Network
 
Standard Form Of A Linear Programming Problem, Geometry Of Linear Programming...
Standard Form Of A Linear Programming Problem, Geometry Of Linear Programming...Standard Form Of A Linear Programming Problem, Geometry Of Linear Programming...
Standard Form Of A Linear Programming Problem, Geometry Of Linear Programming...
sailavanyar1
 
Distributed graph summarization
Distributed graph summarizationDistributed graph summarization
Distributed graph summarization
aftab alam
 
DDGK: Learning Graph Representations for Deep Divergence Graph Kernels
DDGK: Learning Graph Representations for Deep Divergence Graph KernelsDDGK: Learning Graph Representations for Deep Divergence Graph Kernels
DDGK: Learning Graph Representations for Deep Divergence Graph Kernels
ivaderivader
 
Ling liu part 01:big graph processing
Ling liu part 01:big graph processingLing liu part 01:big graph processing
Ling liu part 01:big graph processing
jins0618
 
Parallel Batch-Dynamic Graphs: Algorithms and Lower Bounds
Parallel Batch-Dynamic Graphs: Algorithms and Lower BoundsParallel Batch-Dynamic Graphs: Algorithms and Lower Bounds
Parallel Batch-Dynamic Graphs: Algorithms and Lower Bounds
Subhajit Sahu
 
Parallel Batch-Dynamic Graphs: Algorithms and Lower Bounds
Parallel Batch-Dynamic Graphs: Algorithms and Lower BoundsParallel Batch-Dynamic Graphs: Algorithms and Lower Bounds
Parallel Batch-Dynamic Graphs: Algorithms and Lower Bounds
Subhajit Sahu
 
Embarrassingly/Delightfully Parallel Problems
Embarrassingly/Delightfully Parallel ProblemsEmbarrassingly/Delightfully Parallel Problems
Embarrassingly/Delightfully Parallel Problems
Dilum Bandara
 
GRAPH MATCHING ALGORITHM FOR TASK ASSIGNMENT PROBLEM
GRAPH MATCHING ALGORITHM FOR TASK ASSIGNMENT PROBLEMGRAPH MATCHING ALGORITHM FOR TASK ASSIGNMENT PROBLEM
GRAPH MATCHING ALGORITHM FOR TASK ASSIGNMENT PROBLEM
IJCSEA Journal
 
Satellite image contrast enhancement using discrete wavelet transform
Satellite image contrast enhancement using discrete wavelet transformSatellite image contrast enhancement using discrete wavelet transform
Satellite image contrast enhancement using discrete wavelet transform
Harishwar Reddy
 
Recognition as Graph Matching
  Recognition as Graph Matching  Recognition as Graph Matching
Recognition as Graph Matching
Vishakha Agarwal
 
Graph processing - Graphlab
Graph processing - GraphlabGraph processing - Graphlab
Graph processing - Graphlab
Amir Payberah
 
Sigmod11 outsource shortest path
Sigmod11 outsource shortest pathSigmod11 outsource shortest path
Sigmod11 outsource shortest path
redhatdb
 
PyData Los Angeles 2020 (Abhilash Majumder)
PyData Los Angeles 2020 (Abhilash Majumder)PyData Los Angeles 2020 (Abhilash Majumder)
PyData Los Angeles 2020 (Abhilash Majumder)
Abhilash Majumder
 
A Decomposition Technique For Solving Integer Programming Problems
A Decomposition Technique For Solving Integer Programming ProblemsA Decomposition Technique For Solving Integer Programming Problems
A Decomposition Technique For Solving Integer Programming Problems
Carrie Romero
 
Apache Hadoop India Summit 2011 Keynote talk "Programming Abstractions for Sm...
Apache Hadoop India Summit 2011 Keynote talk "Programming Abstractions for Sm...Apache Hadoop India Summit 2011 Keynote talk "Programming Abstractions for Sm...
Apache Hadoop India Summit 2011 Keynote talk "Programming Abstractions for Sm...
Yahoo Developer Network
 
Standard Form Of A Linear Programming Problem, Geometry Of Linear Programming...
Standard Form Of A Linear Programming Problem, Geometry Of Linear Programming...Standard Form Of A Linear Programming Problem, Geometry Of Linear Programming...
Standard Form Of A Linear Programming Problem, Geometry Of Linear Programming...
sailavanyar1
 

Recently uploaded (20)

Cyber Security Presentation(Neon)xu.pptx
Cyber Security Presentation(Neon)xu.pptxCyber Security Presentation(Neon)xu.pptx
Cyber Security Presentation(Neon)xu.pptx
vilakshbhargava
 
apidays New York 2025 - Turn API Chaos Into AI-Powered Growth by Jeremy Water...
apidays New York 2025 - Turn API Chaos Into AI-Powered Growth by Jeremy Water...apidays New York 2025 - Turn API Chaos Into AI-Powered Growth by Jeremy Water...
apidays New York 2025 - Turn API Chaos Into AI-Powered Growth by Jeremy Water...
apidays
 
Role_Based_Permissions_Kick-off_Deck_202203.pptx
Role_Based_Permissions_Kick-off_Deck_202203.pptxRole_Based_Permissions_Kick-off_Deck_202203.pptx
Role_Based_Permissions_Kick-off_Deck_202203.pptx
SystemsBenya
 
apidays New York 2025 - How AI is Transforming Product Management by Shereen ...
apidays New York 2025 - How AI is Transforming Product Management by Shereen ...apidays New York 2025 - How AI is Transforming Product Management by Shereen ...
apidays New York 2025 - How AI is Transforming Product Management by Shereen ...
apidays
 
How Data Annotation Services Drive Innovation in Autonomous Vehicles.docx
How Data Annotation Services Drive Innovation in Autonomous Vehicles.docxHow Data Annotation Services Drive Innovation in Autonomous Vehicles.docx
How Data Annotation Services Drive Innovation in Autonomous Vehicles.docx
sofiawilliams5966
 
apidays New York 2025 - Agentic AI Future by Seena Ganesh (Staples)
apidays New York 2025 - Agentic AI Future by Seena Ganesh (Staples)apidays New York 2025 - Agentic AI Future by Seena Ganesh (Staples)
apidays New York 2025 - Agentic AI Future by Seena Ganesh (Staples)
apidays
 
ch068.pptnsnsnjsjjzjzjdjdjdjdjdjdjjdjdjdjdjxj
ch068.pptnsnsnjsjjzjzjdjdjdjdjdjdjjdjdjdjdjxjch068.pptnsnsnjsjjzjzjdjdjdjdjdjdjjdjdjdjdjxj
ch068.pptnsnsnjsjjzjzjdjdjdjdjdjdjjdjdjdjdjxj
MikkoPlanas
 
apidays New York 2025 - Build for ALL of Your Users by Anthony Lusardi (liblab)
apidays New York 2025 - Build for ALL of Your Users by Anthony Lusardi (liblab)apidays New York 2025 - Build for ALL of Your Users by Anthony Lusardi (liblab)
apidays New York 2025 - Build for ALL of Your Users by Anthony Lusardi (liblab)
apidays
 
Computer Applications: An International Journal (CAIJ)
Computer Applications: An International Journal (CAIJ)Computer Applications: An International Journal (CAIJ)
Computer Applications: An International Journal (CAIJ)
ijitcs
 
IST606_SecurityManagement-slides_ 4 pdf
IST606_SecurityManagement-slides_ 4  pdfIST606_SecurityManagement-slides_ 4  pdf
IST606_SecurityManagement-slides_ 4 pdf
nwanjamakane
 
apidays New York 2025 - API Platform Survival Guide by James Higginbotham (La...
apidays New York 2025 - API Platform Survival Guide by James Higginbotham (La...apidays New York 2025 - API Platform Survival Guide by James Higginbotham (La...
apidays New York 2025 - API Platform Survival Guide by James Higginbotham (La...
apidays
 
2. Conditional_Probabilkbkjbj,vj,v,ity.ppt
2. Conditional_Probabilkbkjbj,vj,v,ity.ppt2. Conditional_Probabilkbkjbj,vj,v,ity.ppt
2. Conditional_Probabilkbkjbj,vj,v,ity.ppt
SalmitaSalman
 
Ethical Frameworks for Trustworthy AI – Opportunities for Researchers in Huma...
Ethical Frameworks for Trustworthy AI – Opportunities for Researchers in Huma...Ethical Frameworks for Trustworthy AI – Opportunities for Researchers in Huma...
Ethical Frameworks for Trustworthy AI – Opportunities for Researchers in Huma...
Karim Baïna
 
Introduction to information about Data Structure.pptx
Introduction to information about Data Structure.pptxIntroduction to information about Data Structure.pptx
Introduction to information about Data Structure.pptx
tarrebulehora
 
Lec 11.pdfgghjuuyffhkiiiiuuiiiiiiuhffghjiu
Lec 11.pdfgghjuuyffhkiiiiuuiiiiiiuhffghjiuLec 11.pdfgghjuuyffhkiiiiuuiiiiiiuhffghjiu
Lec 11.pdfgghjuuyffhkiiiiuuiiiiiiuhffghjiu
saifalroby72
 
artificial intelligence (1).pptx hgggfcgfch
artificial intelligence (1).pptx hgggfcgfchartificial intelligence (1).pptx hgggfcgfch
artificial intelligence (1).pptx hgggfcgfch
DevAnshGupta609215
 
Faces of the Future The Impact of a Data Science Course in Kerala.pdf
Faces of the Future The Impact of a Data Science Course in Kerala.pdfFaces of the Future The Impact of a Data Science Course in Kerala.pdf
Faces of the Future The Impact of a Data Science Course in Kerala.pdf
jzyphoenix
 
Block chauin techncology by engineer saniya samreen
Block chauin techncology by engineer saniya samreenBlock chauin techncology by engineer saniya samreen
Block chauin techncology by engineer saniya samreen
Shoyeb16
 
IoT, Data Analytics and Big Data Security.pptx
IoT, Data Analytics and Big Data Security.pptxIoT, Data Analytics and Big Data Security.pptx
IoT, Data Analytics and Big Data Security.pptx
fizarcse
 
RRTgvghfjfguyfgyuguyguyfgyfyfytffff.pptx
RRTgvghfjfguyfgyuguyguyfgyfyfytffff.pptxRRTgvghfjfguyfgyuguyguyfgyfyfytffff.pptx
RRTgvghfjfguyfgyuguyguyfgyfyfytffff.pptx
ravindersaini1616
 
Cyber Security Presentation(Neon)xu.pptx
Cyber Security Presentation(Neon)xu.pptxCyber Security Presentation(Neon)xu.pptx
Cyber Security Presentation(Neon)xu.pptx
vilakshbhargava
 
apidays New York 2025 - Turn API Chaos Into AI-Powered Growth by Jeremy Water...
apidays New York 2025 - Turn API Chaos Into AI-Powered Growth by Jeremy Water...apidays New York 2025 - Turn API Chaos Into AI-Powered Growth by Jeremy Water...
apidays New York 2025 - Turn API Chaos Into AI-Powered Growth by Jeremy Water...
apidays
 
Role_Based_Permissions_Kick-off_Deck_202203.pptx
Role_Based_Permissions_Kick-off_Deck_202203.pptxRole_Based_Permissions_Kick-off_Deck_202203.pptx
Role_Based_Permissions_Kick-off_Deck_202203.pptx
SystemsBenya
 
apidays New York 2025 - How AI is Transforming Product Management by Shereen ...
apidays New York 2025 - How AI is Transforming Product Management by Shereen ...apidays New York 2025 - How AI is Transforming Product Management by Shereen ...
apidays New York 2025 - How AI is Transforming Product Management by Shereen ...
apidays
 
How Data Annotation Services Drive Innovation in Autonomous Vehicles.docx
How Data Annotation Services Drive Innovation in Autonomous Vehicles.docxHow Data Annotation Services Drive Innovation in Autonomous Vehicles.docx
How Data Annotation Services Drive Innovation in Autonomous Vehicles.docx
sofiawilliams5966
 
apidays New York 2025 - Agentic AI Future by Seena Ganesh (Staples)
apidays New York 2025 - Agentic AI Future by Seena Ganesh (Staples)apidays New York 2025 - Agentic AI Future by Seena Ganesh (Staples)
apidays New York 2025 - Agentic AI Future by Seena Ganesh (Staples)
apidays
 
ch068.pptnsnsnjsjjzjzjdjdjdjdjdjdjjdjdjdjdjxj
ch068.pptnsnsnjsjjzjzjdjdjdjdjdjdjjdjdjdjdjxjch068.pptnsnsnjsjjzjzjdjdjdjdjdjdjjdjdjdjdjxj
ch068.pptnsnsnjsjjzjzjdjdjdjdjdjdjjdjdjdjdjxj
MikkoPlanas
 
apidays New York 2025 - Build for ALL of Your Users by Anthony Lusardi (liblab)
apidays New York 2025 - Build for ALL of Your Users by Anthony Lusardi (liblab)apidays New York 2025 - Build for ALL of Your Users by Anthony Lusardi (liblab)
apidays New York 2025 - Build for ALL of Your Users by Anthony Lusardi (liblab)
apidays
 
Computer Applications: An International Journal (CAIJ)
Computer Applications: An International Journal (CAIJ)Computer Applications: An International Journal (CAIJ)
Computer Applications: An International Journal (CAIJ)
ijitcs
 
IST606_SecurityManagement-slides_ 4 pdf
IST606_SecurityManagement-slides_ 4  pdfIST606_SecurityManagement-slides_ 4  pdf
IST606_SecurityManagement-slides_ 4 pdf
nwanjamakane
 
apidays New York 2025 - API Platform Survival Guide by James Higginbotham (La...
apidays New York 2025 - API Platform Survival Guide by James Higginbotham (La...apidays New York 2025 - API Platform Survival Guide by James Higginbotham (La...
apidays New York 2025 - API Platform Survival Guide by James Higginbotham (La...
apidays
 
2. Conditional_Probabilkbkjbj,vj,v,ity.ppt
2. Conditional_Probabilkbkjbj,vj,v,ity.ppt2. Conditional_Probabilkbkjbj,vj,v,ity.ppt
2. Conditional_Probabilkbkjbj,vj,v,ity.ppt
SalmitaSalman
 
Ethical Frameworks for Trustworthy AI – Opportunities for Researchers in Huma...
Ethical Frameworks for Trustworthy AI – Opportunities for Researchers in Huma...Ethical Frameworks for Trustworthy AI – Opportunities for Researchers in Huma...
Ethical Frameworks for Trustworthy AI – Opportunities for Researchers in Huma...
Karim Baïna
 
Introduction to information about Data Structure.pptx
Introduction to information about Data Structure.pptxIntroduction to information about Data Structure.pptx
Introduction to information about Data Structure.pptx
tarrebulehora
 
Lec 11.pdfgghjuuyffhkiiiiuuiiiiiiuhffghjiu
Lec 11.pdfgghjuuyffhkiiiiuuiiiiiiuhffghjiuLec 11.pdfgghjuuyffhkiiiiuuiiiiiiuhffghjiu
Lec 11.pdfgghjuuyffhkiiiiuuiiiiiiuhffghjiu
saifalroby72
 
artificial intelligence (1).pptx hgggfcgfch
artificial intelligence (1).pptx hgggfcgfchartificial intelligence (1).pptx hgggfcgfch
artificial intelligence (1).pptx hgggfcgfch
DevAnshGupta609215
 
Faces of the Future The Impact of a Data Science Course in Kerala.pdf
Faces of the Future The Impact of a Data Science Course in Kerala.pdfFaces of the Future The Impact of a Data Science Course in Kerala.pdf
Faces of the Future The Impact of a Data Science Course in Kerala.pdf
jzyphoenix
 
Block chauin techncology by engineer saniya samreen
Block chauin techncology by engineer saniya samreenBlock chauin techncology by engineer saniya samreen
Block chauin techncology by engineer saniya samreen
Shoyeb16
 
IoT, Data Analytics and Big Data Security.pptx
IoT, Data Analytics and Big Data Security.pptxIoT, Data Analytics and Big Data Security.pptx
IoT, Data Analytics and Big Data Security.pptx
fizarcse
 
RRTgvghfjfguyfgyuguyguyfgyfyfytffff.pptx
RRTgvghfjfguyfgyuguyguyfgyfyfytffff.pptxRRTgvghfjfguyfgyuguyguyfgyfyfytffff.pptx
RRTgvghfjfguyfgyuguyguyfgyfyfytffff.pptx
ravindersaini1616
 

Hypergraph for consensus optimization

  • 1. Vertex programming for bipartite graphs H Miao, X Liu, B Huang, and L Getoor (2013), “A hypergraph- partitioned vertex programming approach for large-scale consensus optimization.” IEEE BigData 2013. Presented by Hershel Safer in Machine Learning :: Reading Group Meetupin Machine Learning :: Reading Group Meetup on 13/11/13 Vertex programming for bipartite graphs – Hershel Safer Page 113 November 2013
  • 2. Outline The setting The problem A solution An application and improvement Vertex programming for bipartite graphs – Hershel Safer Page 213 November 2013
  • 3. The MapReduce model for processing Big Data The data-parallel paradigm • Map: Many computers process subproblems in parallel • Reduce: Master computer combines subproblem solutions into overall solution Appropriate for embarrassingly parallel problems with independent subproblemsindependent subproblems Does not support computational dependencies between subproblems Does not naturally support iteration Vertex programming for bipartite graphs – Hershel Safer Page 313 November 2013
  • 4. Graph-parallel computation for machine learning (ML) Many ML algorithms are iterative, have dependencies Many ML algorithms are expressed naturally on graphs • Vertices represent subproblems • Edges represent computational dependencies GraphLab and Pregel express iterative algorithms with sparse dependencies for implementation on multiple computersdependencies for implementation on multiple computers • Algorithm designer defines computation at each vertex and information exchange on each edge, for each iteration • Package handles mapping of vertices to computers, details of inter-computer communication, and scheduling • Package guarantees data consistency (various models possible) and correctness as compared to serial execution Vertex programming for bipartite graphs – Hershel Safer Page 413 November 2013
  • 5. Outline The setting The problem A solution An application and improvement Vertex programming for bipartite graphs – Hershel Safer Page 513 November 2013
  • 6. The graph-parallel computing model Sparse graph G = (V, E) Vertex program Q(v), executed in parallel on each vertex v Q(v) can interact with Q(u) for each neighboring vertex u (i.e., (u,v) is an edge of E) Interaction (communication) is via messages or shared state • Vertex information is available to all neighbors• Vertex information is available to all neighbors • Edge information is available to the two adjacent vertices Vertex programming for bipartite graphs – Hershel Safer Page 613 November 2013
  • 7. Phases of a vertex program Q: GAS model For each vertex v, iterate these steps (in parallel for all vertices): • Gather: Collect information from neighboring vertices and edges • Apply: Do the local computation and update the local data • Scatter: Update the data on the adjacent edges Vertex programming for bipartite graphs – Hershel Safer Page 713 November 2013
  • 8. Implementing efficient graph-parallel computing Use a balanced p-way edge cut to partition vertices more-or-less evenly among the computers to take advantage of parallelism. Communication between vertices u and v is cheap if they are on the same computer, expensive otherwise Gonzalez 2012 the same computer, expensive otherwise If edge (u,v) spans computers, a ghost copy of u is kept on v’s computer and vice versa. Changes to u and v are synchronized across the computer network to all ghost copies. So: Partition vertices so that most neighbors are on the same computer. This is easiest if most vertices have small degree (neighborhood). Vertex programming for bipartite graphs – Hershel Safer Page 813 November 2013
  • 9. Vertex degrees Unfortunate fact: Degrees in graphs from real problems typically have a power-law distribution: P(d) α d-α • A few vertices (hubs) have very high degree • Most vertices have small degree • Difficult to partition Unfortunate consequences: • Heavy communication load • Asymmetric communication load leads to bottlenecks • Work imbalance between computers • Storing adjacency information for high-degree vertices can exceed the memory capacity of a computer • Computation within each computer is serial, so high-degree vertices limit scalability Vertex programming for bipartite graphs – Hershel Safer Page 913 November 2013 Gonzalez 2012
  • 10. Outline The setting The problem A solution An application and improvement Vertex programming for bipartite graphs – Hershel Safer Page 1013 November 2013
  • 11. Breaking the bottleneck: Edge partitioning via vertex cut Instead of partitioning the vertices, use a balanced p-way vertex cut to partition the edges more-or-less evenly among the computers. Vertices, rather than edges, span computers. A vertex with many edges may be replicated on multiple computers. One copy is the master; the Gonzalez 2012 may be replicated on multiple computers. One copy is the master; the rest are mirrors, containing read-only copies of vertex data. Changes to vertices are synchronized across the network. PowerGraph vertex cut formalism: Vertex programming for bipartite graphs – Hershel Safer Page 1113 November 2013 Gonzalez 2012
  • 12. Properties of edge partitioning via vertex cut The objective minimizes the average number of replicas, and hence the total storage and network-communication cost. The vertex cut addresses the major issues of the edge cut: work balance, network communication, and communication bottlenecks are improved even in the presence of high-degree vertices. PowerGraph paper describes several way to implement partitioning, including random and greedy assignments Vertex programming for bipartite graphs – Hershel Safer Page 1213 November 2013
  • 13. Outline The setting The problem A solution An application and improvement Vertex programming for bipartite graphs – Hershel Safer Page 1313 November 2013
  • 14. Consensus optimization and ADMM Consensus optimization decomposes a complex problem into a collection of simpler problems using local variables, and constraining local copies of the variables to be equal to a global consensus variable. Alternating Direction Method of Multipliers (ADMM) is an optimization Miao 2013 Alternating Direction Method of Multipliers (ADMM) is an optimization method that iterates two phases. Although not new, it has gained recent popularity because it can be used for distributed solution of large-scale optimization problems. Vertex programming for bipartite graphs – Hershel Safer Page 1413 November 2013
  • 15. Consensus optimization using ADMM ADMM is useful for consensus optimization when the dual problem can be decomposed into simple, independent subproblems. Solve them in parallel in one phase, combine subproblem solutions in the second phase, and iterate. Miao 2013 The graph for solving consensus optimization problems has two kinds of vertices and a bipartite structure. • Subproblem: Calculating x and λ • Consensus: Calculating consensus variables X After a subproblem vertex finishes computing, it transmits results to relevant consensus vertices, & vice versa. This leads to emergent two- phase behavior. Vertex programming for bipartite graphs – Hershel Safer Page 1513 November 2013 Miao 2013
  • 16. PowerGraph edge partitioning is not good for ADMM Greedy edge partitioning does not work well for bipartite graphs, such as those used for consensus optimization with ADMM • Consensus vertices tend to have much higher degree than subproblem vertices. As a result, subproblem vertices tend to get replicated by the PowerGraph vertex-cut methods. • Subproblem vertices perform much heavier computations that do consensus vertices, so replicating the former is not desirable. Solution: Split only consensus vertices, not subproblem vertices Vertex programming for bipartite graphs – Hershel Safer Page 1613 November 2013
  • 17. A hypergraph formulation for vertex cut Main contribution of this paper: Splitting the consensus vertices with a constraint for balanced edge placement corresponds to Solving a hyperdge cut problem with a similar constraint in the hypergraph H(VS, EC), where VS is the set of subproblem vertices and EC is a set of hyperedges, where hyperedge ej ε EC is the set of allEC is a set of hyperedges, where hyperedge ej ε EC is the set of all subproblems related to consensus variable j. Solve using available hypergraph analysis packages They report substantial improvements in replication factor and running time compared to PowerGraph strategies for edge partitions Vertex programming for bipartite graphs – Hershel Safer Page 1713 November 2013
  • 18. References Hypergraph-partitioned vertex programming • H. Miao et al., IEEE BigData 2013 • H. Miao et al., Univ. Maryland tech report, 2013 ADMM • J. Eckstein, RUTCOR research report, 2012 • S. Boyd, Foundations & Trends in Machine Learning, 3 (2010), p. 1• S. Boyd, Foundations & Trends in Machine Learning, 3 (2010), p. 1 GraphLab • Y. Low, Uncertainty in Artificial Intelligence 2010 • Y. Low, VLDB 5:8 (2012) • J. Gonzalez, USENIX OSDI 2012 Vertex programming for bipartite graphs – Hershel Safer Page 1813 November 2013