This site is not optimized for Internet Explorer 9 and lower. Please choose another browser or upgrade your existing browser in order get the best experience of this website.

Connecting the Dots Between Developers, NLP, and Knowledge Graphs

Gain Access to Structured Output from Unstructured Data

The traditional programming tools and development methodologies you’ve used on structured data don’t speak unstructured. SQL queries, regex, boolean logic, and string manipulation won’t get you far when your peers ask for your help in analyzing blog posts, chat transcripts with customers, social media, and more—all of which require new data processing frameworks.

And while natural language processing (NLP) is a proven option for transforming unstructured data into the people, places, things, and relationships that drive business, getting set up isn’t trivial. Caveats and dead-ends lead to complex, daisy-chained automation, with the costs of maintenance and manual training outweighing the value your knowledge worker peers get from the knowledge they’re able to interpret.

The good news is that NLP is ubiquitous now, which means it’s being paired with other tools and processes to ease that automation burden and make the outputs more comprehensible for

Together, NLP and knowledge graphs store the most important information your unstructured data offers: the people, places, things, and relationships most relevant to your organization. The knowledge graph runs alongside your data lake or data warehouse, accessing unstructured data and generating insights with no extra infrastructure work required.

The result is a profound structure of connected data—unstructured, structured, context, and extracted knowledge in one place.

How NLP revolutionizes all challenges around unstructured data

At its core, NLP is a computer’s ability to process natural language, which is any text or speech data that are unstructured by definition. It uses a powerful combination of software and linguistics, analyzing the content and context of natural language to extract, summarize, or group the unstructured data by identifying qualities.

NLP uses different models to create specific output from natural language/unstructured data depending on your use case and goals, like:

  • Identify “named entities,” like people, places, and things, whether it’s a person’s full name, an Asian city, a Fortune 500 company, and anything else you can imagine
  • Extract the relationship between said entities, like if they’re business partners, spouses, or enemy combatants
  • Extrapolate on the sentiment behind a string of text, like news articles or customer reviews
  • Summarize an entire document based on the most relevant sentences Extract key phrases, ideas, and arguments … and much more.

Through these models, NLP creates the people, places, things, and relationships relevant to the solutions you’re developing. And those outputs are what your knowledge worker peers need to create, store, and share knowledge throughout your organization.

The benefits over traditional methods of analyzing unstructured data—boolean logic, string manipulation, regex, and others—are clear:

    • NLP can identify and extract novel people, places, things, and relationships that are highly relevant to generating knowledge and helping your team discover the “unknown unknowns” about your organization.

Certain NLP models work with more than textual data, unlocking the potential to create truly connected data via a knowledge graph.

  • NLP training replaces one-off and error-prone development with an automated process based on a corpus of existing data.
  • The outputs can range from simplistic (a summary) to complex (Term Frequency-Inverse Document Frequency scores), to meet your knowledge workers where they’re operating.

But on its own, NLP isn’t a perfect solution. When you run multiple models on a single piece of unstructured data, you end up with separate outputs, or domains, which you can think of as separate documents. You have one document with the named entities and another with the summary, and it’s still up to you to develop a solution for bringing the two together comprehensively.

Enter the knowledge graph.

A holistic developer experience with unstructured data, NLP, and knowledge graphs

GraphGrid is a developer-focused platform of connected data tools and processes that help developers build and collaborate on knowledge graphs.

When you connect GraphGrid to your data lake/warehouse, the NLP service accesses the unstructured data, runs each NLP model for maximum insight, and stores the people, places, things, and relationships in the graph format. Instead of rigid schemas (think tables and rows), your data is interconnected by nodes and edges, all of which carry vital contextual information.

As a developer, one immediate benefit is that you suddenly have access to structured output from unstructured data. That means writing more familiar queries and building the visualizations your knowledge worker peers expect.

Let’s look at this example visualization from the NLP tutorial in GraphGrid’s documentation.

 

Knowledge Graph Visualization

 

The green node at the left is the blob of unstructured data itself, grabbed from your data lake/warehouse. It’s exactly the kind of data that goes unutilized at most organizations explicitly because traditional development tools are too costly in time and complexity.

The NLP service in GraphGrid first processes the unstructured data into an AnnotatedText node, which is then connected to other AnnotatedText nodes due to their similarities or belonging to the same similarity cluster. Even if this visualization included only these blue nodes, you can see how NLP converts a single entity into meaningful, context-rich relationships.

The rest of the visualization is a “web” of NLP-driven nodes and relationships.

  • Orange: Sentences with extracted information
  • Pink: Mentions of other people, places, and thinks
  • Tan: The corpus node, which connects this NLP domain to every other node in the graph, creating the truly connected data platform that generates transformative knowledge

But as a developer, you’re probably not interested in looking at visualizations.

You get all your benefit from asking relationship-centric questions to the knowledge graph the way you would structured data. For example, you can easily query for all AnnotatedText nodes that contain a specific PERSON or ORGANIZATION, or create entirely new similarity clusters to instantly discover where they intersect.

Knowledge Graph Visualization

With a knowledge graph, you can quickly create these types of visualizations, or generate insightful reports, with less time and more confidence that you’re returning valuable—and correct—results.

If you’re wondering about the monumental task of setting up the infrastructure to process your unstructured data with NLP, the good news is that GraphGrid is an all-in-one solution. Deploy it alongside your existing data infrastructure, whether that’s a data lake on a non-relational database or a warehouse running MySQL, and use a connector to access the unstructured data you already have stored there.

GraphGrid leverages your existing data investments by extracting your data, processing it with NLP, and storing only the structured output of your data in the knowledge graph. That means you can store all your data in the way that suits your organization best, but always have the option of analyzing it in a graph structure. And that, in the end, is the best solution for knowledge worker peers.

Download GraphGrid for free to start connecting the dots between your development lifecycle, NLP, graph storage, and the resulting knowledge.