• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Ron McLeod
  • Paul Clapham
  • Jeanne Boyarsky
  • Bear Bibeault
Sheriffs:
  • Rob Spoor
  • Henry Wong
  • Liutauras Vilda
Saloon Keepers:
  • Tim Moores
  • Carey Brown
  • Stephan van Hulst
  • Tim Holloway
  • Piet Souris
Bartenders:
  • Frits Walraven
  • Himai Minh
  • Jj Roberts

What are Graph Algorithms?

 
Ranch Hand
Posts: 65
1
PHP Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Mark and Amy,

At a high level, can you explain what Graph Algorithms are and how it relates to AI?

Thanks!
 
Greenhorn
Posts: 3
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi,

They're algorithms that can be used to compute metrics about graphs. They can be used to relevant entities in the graph (centralities, ranking), or inherent structures like communities (community-detection, graph-partitioning, clustering).

The output of those algorithms might then be used as part of a machine learning workflow. We wrote an article about a month ago showing how that might work - https://www.oreilly.com/ideas/how-graph-algorithms-improve-machine-learning
 
Author
Posts: 13
1
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Carl!
Let's look at this in 3-parts: graphs, their algorithms, and what that has to do to AI/ML.

1) Graphs:
Graphs are uniquely suited to manage/analyze connected data because they are, very simply, a mathematical representation of a network. The objects that make up graphs are called nodes (or vertices) and the links between them are called relationships (or edges).

2) Graph Algorithms:
Graph algorithms are built to operate on relationships and are exceptionally capable of finding structures and revealing patterns in connected data. These algorithms calculate metrics based on the relationships between things.  (So in other words, we would as or more interested in how many connections someone has and what type of relationships those are.) Graph algorithms serve us well when we need to understand structures and relationships to do things like forecast behavior, prescribe actions for dynamic groups, or find predictive components and patterns in our data.

3) AI/ML Fit:
Although only a few algorithms (like Label Propagation) are considered by some to be ML itself.  However, improving the accuracy of machine learning predictions is a popular use of graph algorithms. We know that relationships are some of the strongest predictors of behavior. We also know that more information makes our ML models more predictive but that data scientists rarely have all the information they want to train on. Graph Algorithms helps us incorporate this highly predictive information (that we already have hidden in the data!) to increase the accuracy, precision, and recall of machine learning models.

People use graph algorithms for graph feature engineering to create scores that they can extract and use in their machine learning pipelines. In the last chapter of the book, we walk through an example and compare the predictive quality of different models as we add more “graphy” features.
 
a fool thinks himself to be wise, but a wise man knows himself to be a fool - shakespeare. foolish tiny ad:
SKIP - a book about connecting industrious people with elderly land owners
https://coderanch.com/t/skip-book
reply
    Bookmark Topic Watch Topic
  • New Topic