Unspoken sentiment

The sentiment of a message may not be obtainable from the message itself. However, many messages have an associated context that provides information useful in determining the sentiment of a message. Messages may include links to other resources, such as graphics or videos, which in turn include titles, comments, viewer ratings or other attributes that may provide a sentiment of the message.

FIELD OF THE DISCLOSURE

The present disclosure is generally directed toward determining the sentiment of a message. In particular, identifying and utilizing the sentiment of a context associated with the message and, therefore, determine the sentiment of the message itself.

BACKGROUND

Automatic means to determine the sentiment of the content of a message provide a useful and efficient means for an enterprise, such as a contact center, to identify issues and direct resources to those issues accordingly. An explicit message text, (e.g., “The service on XYZ Airlines was terrible”) provides one means to determine the sentiment of a message. For example, messages that include the word, “terrible,” may be determined to be negative. Additional sentiment determination means is provided by U.S. patent application Ser. No. 13/594,283 filed on Aug. 24, 2012, entitled, “Real Time Statistics for Contact Center Mood Analysis Method and Apparatus.”

Messages are not always explicitly expressed in the text of the message. As a result, the sentiment of the message may not be determinable by the explicit content of the message.

SUMMARY

It is with respect to the above issues and other problems that the embodiments presented herein were contemplated.

Sentiment analysis is the application of text analytics, computational linguistics, and natural language processing to determine subjective information from a source communication. In general, the goal of sentiment analysis is to figure out the attitude of the person who created the communication and use that information to respond to the communication.

Part of basic sentiment analysis is determining the polarity of a communication, meaning it is positive, negative, or neutral. Another part of basic sentiment analysis is scoring concepts within the communication to understand the strength of the language used. Difficulties arise in identifying relevant communications, extracting particularly relevant aspects of the communications, and determining polarity.

In one embodiment, a model behavior or action-based attributes of communication to derive or adjust sentiment and actionable qualification values. In social media within a customer support settings, various actions can serve as proxies of negative sentiment. For example, heavily liked, shared, or retweeted items often convey negative sentiment. Similarly, uptake or response to a tweet from a company of interest may serve as evidence of negative polarity. Tweeting or posting of links to multimedia objects can be an implicit sentiment statement as well (e.g., a posting of a partially opened sardine can when discussing an airline flight). Automatic classification of customer language for likely action (likes, shares, retweets) by other customers or for response by the company (uptake) can thus determine customer sentiment.

The system may then utilize this additional sentiment information to indicate cases of focus for the contact center and provide trending velocity for a given communication. Rapidly increasing negative sentiment could be automatically detected here where the text analysis would only give the basic negative sentiment or may even indicate neutral sentiment. In the sardine can example from above, the text might be just a neutral, “Here's a picture from my last flight,” while the picture, properly analyzed (or via analysis of a caption, etc.) alludes to a cramped situation.

In one embodiment, a salesperson posts on their Facebook wall “busy day at work.” There are several likes and a comment that posts a link to an image of dollar signs. The image has the tag or file name “money.” The system would be able to detect this is a positive sentiment. If this poster was followed by a company, such as a luxury car manufacturer, then the car manufacturer may want to add this person to their next mailing.

In another embodiment, a customer posts on an airline's page “typical food on XYZ Airlines.” This statement does not indicate sentiment with the text alone. Several people may like this post, which is also inconclusive by itself. However, if the post also includes a link to a YouTube video with images of awful food. The actual words don't indicate the sentiment but the YouTube video and likes are indicators that this is a very negative communication.

In a further embodiment, the video itself may be determined to contain images of awful food—or at least content with a negative sentiment—based upon the title, comments provided by the poster of the video, viewer comments, and/or links to additional content.

The term “computer-readable medium” as used herein refers to any tangible storage that participates in providing instructions to a processor for execution. Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media includes, for example, NVRAM, or magnetic or optical disks. Volatile media includes dynamic memory, such as main memory. Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, or any other magnetic medium, magneto-optical medium, a CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, a solid state medium like a memory card, any other memory chip or cartridge, or any other medium from which a computer can read. When the computer-readable media is configured as a database, it is to be understood that the database may be any type of database, such as relational, hierarchical, object-oriented, and/or the like. Accordingly, the disclosure is considered to include a tangible storage medium and prior art-recognized equivalents and successor media, in which the software implementations of the present disclosure are stored.

The term “module” as used herein refers to any known or later developed hardware, software, firmware, artificial intelligence, fuzzy logic, or combination of hardware and software that is capable of performing the functionality associated with that element. Also, while the disclosure is described in terms of exemplary embodiments, it should be appreciated that other aspects of the disclosure can be separately claimed.

DETAILED DESCRIPTION

FIG. 1is system diagram100in accordance with embodiments of the present disclosure. In one embodiment, system100includes processor102, storage104, and server108. Server108being accessible to processor102via network106. In another embodiment, storage104is omitted and data is provided via server108. In yet another embodiment, server108is omitted and storage is provided by storage104. Network106may be implemented as a public network (e.g., the Internet), private network, bus, inter/intra processor connection, or other means operable to facilitate data exchange between processor102and components, such as storage104and server108, to components having or receiving information.

In another embodiment, processor102, storage104, and contact center resource112are internal to a contact center, represented by line110. Contact center resource112is operable to address concerns, such as one or more messages with a certain, typically negative, sentiment. Line110may represent a physical and logical division between a contact center and external systems. In other embodiments, line110is organizational and contact center resource and/or storage104may utilize network106and/or other public or private networks.

In another embodiment, processor102selects a message. The message may be selected from a live stream, such as when server108is a user directly sending messages via network106to processor102, such as by email, SMS, or other messaging service. In other embodiments, server108is a social media website being monitored by processor102and/or other processors and/or processes. Social media websites include websites operable receive posts from users, Twitter, Facebook, YouTube, RSS feeds, and similar services where users can post media files, links, comments, and other information.

With processor102having a message, processor102may then select a context associated with the message. The context, as used herein, is variously embodied. In one embodiment, the context is embedded within the message, such as a media file, or other content. In another embodiment, the context is content associated with the message, such as by following a link (e.g., URL) to a website whereby the context may include comments from the poster of the media, title of the media, keywords, metatags, and viewer and/or user comments. In a further embodiment, the context may be implied based on certain actions of users. As one example, due to human nature, a positive comment, such as, “I like to fly on XYZ Airlines,” will likely not receive as many endorsements as the negative comment, “I hate to fly on XYZ Airlines.”

In yet a further embodiment, once a sentiment trend and/or severity has been determined, contact center may cause processor102to direct contact center112to address the issue. Contact center resource112may be an automated and/or human agent to and may further identify the root cause of the issue, explain extenuating circumstances, provide a remedy to dissatisfied customers, or otherwise assist a customer of the contact center (e.g., XYZ Airlines) in servicing its customers.

FIG. 2is block diagram200in accordance with embodiments of the present disclosure. Diagram200is a conceptual illustration of one embodiment of message202. Message202includes attributes such as header, location (e.g., URL), date, and message content204. Message content204is the message itself (e.g., text) and any additionally supplied content from creator of message202, such as links and embedded files. Associated with the message content is message context206. Message context206may reside within message202, such as when message202includes embedded files. For example, a file embedded in message202may have the file name, “rotten_fish.jpg,” and, accordingly be associated with a negative sentiment.

In other embodiments, message context206is determined by tracing one or more links embedded in message202to a secondary source. The secondary source providing information such as uptakes, “likes,” “shares,” “re-tweets,” and other endorsements or actions intended to propagate and/or lend credibility to a position such as links and derivative content.

Message context206may or may not be visible to a user. Links, such as bitly.com, Facebook.com, LinkedIn.com, or other tracking service, may count hits or perform other operations to provide message context206, without being visible to the user.

FIG. 3is message300, in the form of a post on a social media site, in accordance with embodiments of the present disclosure. In other embodiments, message300may be a “Tweet,” a comment, an email, a blog entry, an RSS entry, or other means of presenting and/or sending a message.

In one embodiment, message300includes text302and message content304. Text302may be sentiment indicative or sentiment neutral. Message content304is a link to a webpage (see,FIG. 4). In another embodiment, message300includes indicator306. Indicator306provides an indication of how well endorsed the position of message300is to other viewers of message300. The specific threshold as to what is a strong indication and/or a weak indication is a matter of design choice and may further depend on the topic. For example, in one embodiment, message300was directed towards the subject of airline delays, a generally popular topic. If then indicator306had a low value over a certain amount of time, it may be concluded that the position of message300is not of interest to those viewing message300. Reason message300may indicate the position of message300is not widely shared, message300is off-topic, or other issue whereby viewers of message300are substantially ambivalent to making any endorsement of message300.

In other embodiment, indicator306may be a relatively high number over a relatively short period of time. Accordingly, such indicator306may be interpreted as being associated with message300of a particularly serious, well supported, widely experienced, or otherwise commonly endorsed viewpoint.

FIG. 4is web page400illustrating context of a message in accordance with embodiments of the present disclosure. In one embodiment, web page400is accessible via a link, such as link304of message300and is operable to provide context, and therefore sentiment, for message300.

Web page400includes various features operable to provide context to message300. Web page402includes image402. Image analysis, including audio and video when image402is a multimedia object, may be employed to determine the context of the image itself. However, other aspects of web page404can be utilized to determine context via text analysis.

In one embodiment, context may be determined by one or more of image title404, image file name406, poster's comments408, viewer endorsements410, and comments412. In another embodiment, time provides a context whereby the number of comments412and/or endorsements410over a period of time provides a context of severity, agreeability, endorsement or other indicator of sympathy, agreement, support and the like by viewers of web page400.

Endorsement410indicates the number of times a viewer of web page400has expressed agreement, or disagreement, support or otherwise propagated the web page400, and with it, the sentiment expressed by web page400.

In the example illustrated inFIG. 4, web page400includes image402and user comments408. In the embodiment illustrated, sardine image402is and comment408are neutral or even positive (e.g., “delicious” may be deemed to have a positive sentiment). Message300included the subject “XYZ,” referring to the name of an airline. A contact center monitoring message300and utilizing web page400to determine the context of message300may understand that, in the domain of air travel, “sardine” is a word with negative sentiment. The word “delicious” may still have a positive sentiment.

Additional context may be provided by comments412. Comment412A includes a reference to “ABC,” referring to another airline. Accordingly, in the domain of air travel, the identification of another airline may be used to provide context or relevancy to a particular post. Comment412includes the word “worse” and therefore, comment412A may be viewed as having a negative context. Similarly, comment412B includes the word “hate,” also a word with a negative context. Comment412C, which may have been a comment posted solely in response to image402, similarly has a word with a negative context.

In another embodiment, the negative context and positive context may be scored, weighted, measured against time, or other algorithm to determine the overall sentiment of web page400. As a result, web page400, which is accessed by following link304in message300indicates that message300has a negative context.

In a further embodiment, message300alone or with additional messages, may be brought to the attention of a contact center resource for further analysis and/or response.

FIG. 5is flowchart500in accordance with embodiments of the present disclosure. In one embodiment, step502selects a message. Step502may select a message stored in storage104, server108(e.g., a data storage, a web page, a social media website, email, SMS, etc.), or other source of message data. Step504selects a context for the message. The context may be embedded within the message, an identifier of other context information, or both. Any one message may have a plurality of context sources. A source of context may be nested. For example, a message may have a link, the link may have an image, the image may have a comment, the comment may have a link, and so on).

Step506determines the sentiment of the context. For example, processor102may be executing instructions whereby the relative weight of a set of context is utilized to determine an overall sentiment for the context. The specific algorithm for determining a sentiment from a plurality of context sentiments is a matter of design choice.

Step508then assigns the sentiment to the message. The assignment may be associated with a field of the message, an entry in a database, or similar means. Processing of flowchart500may stop here. Optionally, flowchart500may continue to step510.

Step510determines if further action is required. If no action is required, processing may terminate or continue with the selection of another message at step502. If step510determines additional action is required, processing may continue to step512whereby a resource of a contact center is notified. In one embodiment, a spike in the occurrence of a particular subject and negative (or positive) sentiment, may be brought to the attention of human and/or automated contact center resources. Contact center resource may pursue additional analysis, contact one or more posters for additional information and/or resolution, and/or contact a party of interest to alert them to the occurrence of an issue.

In another embodiment, storage104preserves the sentiments and/or messages for analysis at another time.