Skip to content

Questions?  ·  info@primal.com

A Personalized News App

In the sections that follow, we’ll show you how Primal can support your product development efforts by providing the data that describes the interests of individuals and finding the content that people will truly love!

Overview of the Solution

Primal-powered solutions are built in three simple steps:

Primal-powered solutions are built in three simple steps

  • Step 1: Get topics of interest from your users.
  • Step 2: Filter the news using their interest graph.
  • Step 3: Learn new interests over time.

We’ll walk you through it, step-by-step.

Step 1: Get topics of interest from your users

Step 1: Get topics of interest from your users

Primal requires simple indictors of interest from your users.

You can get these interests in a variety of ways: using text, URLs, search queries, or topics that are associated with the content your consumers are viewing.

Since we’re building a personalized news app, we’re going to use topics that are associated with the news items your users select.

In the example below, we’ve highlighted some news abstracts from Yahoo! News. These highlighted abstracts represent the specific articles that your user finds interesting and has selected to read.

Highlighted abstracts represent the specific articles that your user finds interesting

News abstracts make a great source of user interests because they’re so short. While this may seem like a paradox, the topics of interest are concentrated. If a user clicks on a news abstract, you can be confident that there was something in that short abstract that caught their interest.

Step 2: Filter the news using their interest graph

Step 2: Filter the news using their interest graph

Now that we have a collection of topics representing the user’s unique interests, Primal’s artificial intelligence generates an interest graph: a semantic representation of the topics expanded to include hundreds of narrower, broader, and related terms. The resultant data is used to personalize the content.

This is a visualization of a portion of the semantic data generated from the four collections of topics in Step 1

This is a visualization of a portion of the semantic data generated from the four collections of topics in Step 1. Note that the data represents the interests of the end-user, not the topics represented in the content. In the next step, we’ll intersect this data with the target content to discover new concepts and rank the relevance of the content to the end-user’s specific interests.

All you need to do is to retrieve the filtered content from Primal. Now we have news items available for the user, selected and ranked according to their individual interests.

Once you start filtering the news through Primal, you have an easy mechanism for learning your user’s interests as they change over time. Each content item return to the user is tagged with topics that are related to their interests.

Just as the process started, when the user selects these Primal-tagged content items, there’s an opportunity to acquire a deeper understanding of their interests.

This is a human-readable rendering of a portion of the data generated in Step 2

This is a human-readable rendering of a portion of the data generated in Step 2. The news sources are filtered against the unique graph that describes the user’s specific topics of interest. The topics that intersect with the content are highlighted and used to tag (annotate) and rank each news items

Here’s a portion of the structured data:

"dc:subject": [

  "https://data.primal.com/technology/mobile+broadband",

  "https://data.primal.com/technology/mobile+telephony",

  "https://data.primal.com/technology/internet",

  "https://data.primal.com/technology/communications",

  "https://data.primal.com/technology"

],

The element, dc:subject, presents topics that are related to your user’s interests. These new topics can be fed back to Primal to further extend their interest graph.

Getting Started

If you’d like to build your own personalized news app, check out our Developer site to get started.