Normalizing electronic communications using a vector having a repeating substring as input for a neural network
US-9595002-B2 · Mar 14, 2017 · US
US9704097B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9704097-B2 |
| Application number | US-201514966117-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 11, 2015 |
| Priority date | May 29, 2015 |
| Publication date | Jul 11, 2017 |
| Grant date | Jul 11, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Training data for training a neural network usable for electronic sentiment analysis can be automatically constructed. For example, an electronic communication usable for training the neural network and including multiple characters can be received. A sentiment dictionary including multiple expressions mapped to multiple sentiment values representing different sentiments can be received. Each expression in the sentiment dictionary can be mapped to a corresponding sentiment value. An overall sentiment for the electronic communication can be determined using the sentiment dictionary. Training data usable for training the neural network can be automatically constructed based on the overall sentiment of the electronic communication. The neural network can be trained using the training data. A second electronic communication including an unknown sentiment can be received. At least one sentiment associated with the second electronic communication can be determined using the neural network.
Opening claim text (preview).
What is claimed is: 1. A non-transitory computer readable medium comprising program code executable by a processor for causing the processor to: receive an electronic communication usable for training a neural network and comprising a plurality of characters; receive a sentiment dictionary comprising a plurality of expressions mapped to (i) a plurality of sentiment values representing different sentiments, (ii) a plurality of activation values representing different amounts of arousal, each expression of the plurality of expressions being mapped to a corresponding sentiment value of the plurality of sentiment values and a corresponding activation value of the plurality of activation values; determine a total sentiment score for the electronic communication by: segmenting the plurality of characters into a plurality of blocks of characters; determining, using the sentiment dictionary, a respective sentiment value for each block of characters in the plurality of blocks of characters; and aggregating the respective sentiment value for each block of characters in the plurality of blocks of characters; determine a total activation score for the electronic communication by: determining, using the sentiment dictionary, a respective activation value for each block of characters in the plurality of blocks of characters; and aggregating the respective activation value for each block of characters in the plurality of blocks of characters; determine an overall sentiment for the electronic communication by combining the total sentiment score and the total activation score; automatically construct training data usable for training the neural network based at least in part on the overall sentiment of the electronic communication, wherein the training data comprises a plurality of overall sentiments associated with a plurality of electronic communications usable for training the neural network; train the neural network using the training data; receive a second electronic communication comprising an unknown sentiment; and determine at least one sentiment associated with the second electronic communication using the neural network. 2. The non-transitory computer readable medium of claim 1 , further comprising program code executable by the processor for causing the processor to: determine the overall sentiment for the electronic communication by: determining a plurality of total sentiment scores for the plurality of blocks of characters using the sentiment dictionary; determining an aggregate sentiment score for the electronic communication by aggregating the plurality of total sentiment scores; and determining the overall sentiment based on the aggregate sentiment score. 3. The non-transitory computer readable medium of claim 2 , further comprising program code executable by the processor for causing the processor to: determine the plurality of total sentiment scores for the plurality of blocks of characters using the sentiment dictionary by: accessing the sentiment dictionary; identifying one or more expressions in a respective block of characters that are in the sentiment dictionary; mapping the one or more expressions in the respective block to one or more corresponding sentiment values using the sentiment dictionary; and determining a respective total sentiment score for the respective block of characters by aggregating the one or more corresponding sentiment values. 4. The non-transitory computer readable medium of claim 3 , further comprising program code executable by the processor for causing the processor to: determine the respective total sentiment score for the respective block of characters by: determining a standard deviation associated with each sentiment value of the one or more corresponding sentiment values; determining weighted sentiment values by multiplying each sentiment value of the one or more corresponding sentiment values by a respective weighting factor based on an associated standard deviation value; and determining the respective total sentiment score for the respective block of characters by aggregating the weighted sentiment values. 5. The non-transitory computer readable medium of claim 2 , further comprising program code executable by the processor for causing the processor to: determine the aggregate sentiment score by: determining an average standard deviation associated with each block of the plurality of blocks of characters; determining weighted total sentiment scores by multiplying each total sentiment score by a respective weighting factor based on an associated average standard deviation; and aggregating the weighted total sentiment scores. 6. The non-transitory computer readable medium of claim 2 , further comprising program code executable by the processor for causing the processor to: segment the plurality of characters into the plurality of blocks of characters by dividing the plurality of characters such that each block in the plurality of blocks of characters comprises a single sentence including a common sentiment. 7. The non-transitory computer readable medium of claim 1 , further comprising program code executable by the processor for causing the processor to: receive the second electronic communication from a text message, an e-mail, a social media post, a tweet, a blog post, or a forum post. 8. The non-transitory computer readable medium of claim 1 , further comprising program code executable by the processor for causing the processor to: display a graphical user interface (GUI) visually indicating the at least one sentiment associated with the second electronic communication, the at least one sentiment comprising a positive sentiment, a neutral sentiment, or a negative sentiment. 9. The non-transitory computer readable medium of claim 8 , wherein the GUI comprises a graph indicating at least one transition between two or more different sentiments associated with the second electronic communication. 10. The non-transitory computer readable medium of claim 8 , further comprising program code executable by the processor for causing the processor to: determine a provider of the at least one sentiment associated with the second electronic communication; and indicate the provider within the GUI. 11. A method comprising: receiving an electronic communication usable for training a neural network and comprising a plurality of characters; receiving a sentiment dictionary comprising a plurality of expressions mapped to (i) a plurality of sentiment values representing different sentiments, (ii) a plurality of activation values representing different amounts of arousal, each expression of the plurality of expressions being mapped to a corresponding sentiment value of the plurality of sentiment values and a corresponding activation value of the plurality of activation values; determining a total sentiment score for the electronic communication by: segmenting the plurality of characters into a plurality of blocks of characters; determining, using the sentiment dictionary, a respective sentiment value for each block of characters in the plurality of blocks of characters; and aggregating the respective sentiment value for each block of characters in the plurality of blocks of characters; determining a total activation score for the electronic communication by: determining, using the sentiment dictionary, a respective activation value for each block of characters in the plurality of blocks of characters; and aggregating the respective activation value for each block of characters in the plurality of blocks of characters; determining an overall sentiment for the electronic communication by combining the tota
Machine learning · CPC title
Backpropagation, e.g. using gradient descent · CPC title
Semantic analysis · CPC title
Phrasal analysis, e.g. finite state techniques or chunking · CPC title
Active learning · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.