Skip to content
This repository has been archived by the owner on Dec 16, 2020. It is now read-only.
Scott D'Angelo edited this page Oct 17, 2017 · 17 revisions

Short Name

Analyze Twitter handles and hashtags for sentiment and content

Short Description

Create charts and graphs for Sentiment, Emotional Tone, and Keywords for Twitter handles and hashtags.

Offering Type

Cognitive and Data Analytics

Introduction

Organizations are increasingly interested in their social media profile, and can derive insights into how they are perceived through analysis and classification. This Journey will subscribe to Twitter screen names or hashtags and analyze the content with Watson Tone Analyzer and Natural Language Understanding, as well as use the Conversation API to classify (Intents) the tweets. The enriched meta data is then saved to a Cloudant database where Map Reduce functions are used to provide a high level insight into the data.

Author

By: Scott D'Angelo Offering Manager: Amol Jadhav Original Developer: Werner Vanzyl

Code

Demo

  • N/A

Video

Overview

In this journey our server application subscribes to a twitter feed as configured by the user. Each tweet received will be analyzed for emotional tone and sentiment, and the intent of the tweet will be determined by the Watson Conversation service. All data is stored in a Cloudant database, with the opportunity to store historical data as well. The information is presented in a Web UI as a series of graphs and charts.

When the reader has completed this journey, they will understand how to:

  • Run an application that monitors a Twitter feed.
  • Send the tweets to Watson Tone Analyzer, Conversation, and Natural Language Understanding for processing and analysis.
  • Store the information in a Cloudant database.
  • Present the information in a nodejs web UI.

Flow

  1. Tweets are pushed out by Twitter.
  2. The Cognitive Social CRM app (server.js) processes the tweet.
  3. The Watson Tone Analyzer Service performs analysis of sentiment and emotional tone.
  4. The Watson Natural Language Understanding Service pulls out keywords and entities.
  5. The Watson Conversation Service extracts the intents (verbs) from the tweets.
  6. Tweets and metadata are stored in Cloudant
  7. The Web UI displays charts and graphs as well as the tweets.

Included components

  • Bluemix DevOps Toolchain Service: Enable tool integrations that support your development, deployment, and operation tasks.

  • Cloud Foundry: Build, deploy, and run applications on an open source cloud platform.

  • Cloudant NoSQL DB: A fully managed data layer designed for modern web and mobile applications that leverages a flexible JSON schema.

  • Watson Conversation: Create a chatbot with a program that conducts a conversation via auditory or textual methods.

  • Watson Natural Language Understanding: A Bluemix service that can analyze text to extract meta-data from content such as concepts, entities, keywords, categories, sentiment, emotion, relations, semantic roles, using natural language understanding.

  • Watson Tone Analyzer: Uses linguistic analysis to detect communication tones in written text.

Featured technologies

  • Artificial Intelligence: Artificial intelligence can be applied to disparate solution spaces to deliver disruptive technologies.

  • Databases: Repository for storing and managing collections of data.

  • Node.js: An open-source JavaScript run-time environment for executing server-side JavaScript code.

Blog

Cognitive Social CRM

Social media is a powerful force in business, one that cannot be ignored. It is a challenge to provide social media content to current customers and potential customers to consume, but the greater challenge is the kind of customer relation management that social media demands. A large organization might be the recipient of thousands of posts and tweets per day and on multiple platforms. Actually keeping track of all the various platforms, for each product or service of a complex business, can be a daunting task. That’s why we’ve created the Cognitive Social CRM journey.

We provide code and documentation to demonstrate how to use IBM Watson Conversation, Natural Language Understanding, Tone Analyzer, and Cloudant DB, to monitor Twitter feeds. The tweets will be processed so that the intent can be understood, the sentiment and emotional tone are predicted, and keywords are extracted. This information is presented in various charts and graphs, and is persisted in the Cloudant database for future use. We have used the example of an airlines, with Watson Conversation service providing the intents that an airline tweet might contain, such as cabin, delay, service, seating, etc. Watson Natural Language Understanding is used to extract keywords from the tweets, and these are mapped to give insight into customer concerns. The Tone Analyzer service can report if a tweet is positive or negative, as well as more subtle emotions like anger, fear, joy, sadness, and disgust. Finally, we archive the tweets in a Cloudant database to enable long-term analysis of trends and inflections. A developer can quickly deploy and test this journey, and we believe you will find it easy to adapt to your individual business domain and needs. Enjoy!

Links