IP Library Granted Patent US 10,073,830
Granted Patent B2
US 10,073,830 · App. 15/109,044 · Granted Sep 11, 2018

Systems, devices, and methods for automatic detection of feelings in text

Inventors: Karan Walia (Mississauga, CA); Anton Mamonov (Toronto, CA)
Assignee: CLUEP INC.
G06F17/2765G06F17/271G06F17/274G06F17/2785G06F17/30625G06F17/30705
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,073,830
App. No.
15/109,044
Granted
Sep 11, 2018
Kind
B2
Abstract

Embodiments described herein relate generally to content analysis technologies and natural language processing (NLP). In particular, devices, systems, and methods may implement a reverse sentence reconstruct (RSR) utility, and a sentence vectorization technique (SVT) utility. A computer server may be configured to receive a feeling classification request with text data elements, and in response, generate a feeling classification response indicating feeling for the text data elements using the RSR utility and the SVT utility.

Claims (70)

1. A system comprising:

at least one client computing device executing an application to transmit a set of text data elements as a feeling classification request;

at least one computer processor in communication with the at least one computing device over a communications network to receive the feeling classification request, and in response, transmit a feeling classification response, the computer processor configuring a text analysis engine, a reverse sentence reconstruct (RSR) utility for determining grammatical and semantic structure of the set of text data elements, and a sentence vectorization technique (SVT) utility to generate SVT models, wherein the computer processor is configured to compute the feeling classification response using the RSR utility and SVT utility, wherein the RSR utility interacts with the SVT utility to provide a parsing component to generate a syntactic text tree with parts-of-speech for the text data elements and a classification component to classify feeling of the text data elements for the feeling classification response; and

at least one data storage device storing the SVT models, a labelled text corpus and a slang and spelling dictionary.

2. The system of claim 1 , further comprising a pre-processor utility to implement pre-processing on the text data elements using at least one of a multiple language processor, a slang dictionary matcher, a textual spelling adjuster, and a textual normalizer processor to output a textual string.

3. The system of claim 1 , wherein the parsing component is configured to:

for each word of the text data elements, obtain a word vector from a parsing SVT model of the SVT utility;

for each word vector:

calculate, using a parsing combination matrix and a parsing probability vector, a probability of how well the word vector combines with neighbouring word vectors; and

generate a phrase vector from the parsing combination matrix by combining the word vector with the neighbouring word vector with the highest probability;

wherein the calculation and generation are repeated by treating each new phrase vector as a word vector to generate syntactic text tree of nodes representing a word or phrase vector;

compute a part-of-speech matrix;

for each node in the syntactic text tree:

calculate a confidence score using the part-of-speech matrix, the confidence score providing a list of values representing a probability of how likely each part-of-speech can represent the word or phrase vector at the node;

assign a part-of-speech to the node based on the highest probability in the confidence score

determine whether the confidence score is higher than a threshold; and

output a syntactic text tree with each node labeled with its corresponding part-of-speech.

4. The system of claim 3 , wherein the parsing component is configured to execute pre-training and training to obtain a parsing SVT model.

5. The system of claim 4 , wherein the parsing component is configured to, as pre-training, obtain the labelled text corpus, generate word vectors, generate phrase vectors, generate a parsing combination matrix, generate a parsing probability vector, and generate a part-of-speech matrix to output a randomized parsing SVT model.

6. The system of claim 5 , wherein the parsing component is configured to, as training, obtain the randomized parsing SVT model, calculate an error rate, generate a derivative vector, adjust the error rate and the derivative vector, determine that the error rate is not minimized, and generate a parsing SVT model.

7. The system of claim 4 , wherein the parsing component is configured to, as enhancement, obtain the syntactic text tree, store and re-label the syntactic text tree and update the labelled text corpus.

8. The system of claim 1 , wherein the classification component is configured to:

for each word of the text data elements, obtain a word vector from a feeling SVT model of the SVT utility;

for each word vector, compute a feeling matrix, and obtain a word vector from the feeling matrix;

obtain a confidence score; and

determine whether the confidence score is higher than a threshold to output a text string with associated feeling.

9. The system of claim 8 , wherein the classification component is configured to execute pre-training and execute training to obtain a feeling SVT model.

10. The system of claim 9 , wherein the classification component is configured to, as pre-training, obtained labelled text corpus, generate word vectors, generate phrase vectors, generate a feeling combination matrix, generate a feeling probability vector, to output a randomized feeling SVT model.

11. The system of claim 9 , wherein the classification component is configured to, as training, obtain the randomized feeling SVT model, calculate the error rate, generate a derivative vector, adjust error rate and derivative vector, determine that the error rate is not minimized, generate a feeling SVT model.

12. The system of claim 9 , wherein the parsing component is configured to, as enhancement, obtain syntactic text tree, and store and re-label the syntactic text tree update parsing text corpus.

13. A computer device comprising:

at least one data storage component;

at least one receiver in communication with an application on at least one client computing device over a communications network to receive a set of text data elements as a feeling classification request;

at least one processor configured to provide a reverse sentence reconstruct (RSR) utility for determining grammatical and semantic structure of the set of text data elements, and a sentence vectorization technique (SVT) utility to generate SVT models;

at least one transmitter to transmit classified feeling data to the application on the at least one client computing device as a feeling classification response; and

wherein the at least one processor is configured with control logic to transform the feeling classification request into the feeling classification response using the RSR utility and SVT utility, wherein the RSR utility interacts with the SVT utility to provide a parsing component to parse the text data elements and a classification component to classify feeling of the text data elements for the feeling classification response.

14. A method comprising:

receiving a feeling classification request from an application executing on a client device, feeling classification request comprising text data elements;

in response, generating and transmitting a feeling classification response by:

determining grammatical and semantic structure of the set of text data elements using a reverse sentence reconstruct (RSR) utility;

generating sentence vectorization technique (SVT) models using a SVT utility;

storing the SVT models, a labelled text corpus and a slang and spelling dictionary;

generating a syntactic text tree with the text data elements using a parsing component of the RSR utility; and

classifying feeling of the text data elements in the syntactic text tree using a classification component of the RSR utility.

15. The method of claim 14 , further comprising pre-processing the text data elements using at least one of a multiple language processor, a slang dictionary matcher, a textual spelling adjuster, and a textual normalizer processor.

16. The method of claim 14 , further comprising:

for each word of the text data elements, obtaining a word vector from a parsing SVT model of the SVT utility;

for each word vector:

calculating, using a parsing combination matrix and a parsing probability vector, a probability of how well the word vector combines with neighbouring word vectors; and

generating a phrase vector from the parsing combination matrix by combining the word vector with the neighbouring word vector with the highest probability;

wherein the calculation and generation are repeated by treating each new phrase vector as a word vector to generate syntactic text tree of nodes representing a word or phrase vector;

computing a part-of-speech matrix;

for each node in the syntactic text tree:

calculating a confidence score using the part-of-speech matrix, the confidence score providing a list of values representing a probability of how likely each part-of-speech can represent the word or phrase vector at the node;

assigning a part-of-speech to the node based on the highest probability in the confidence score

determining whether the confidence score is higher than a threshold; and

outputting a syntactic text tree syntactic text tree with each node labeled with its corresponding part-of-speech.

17. The method of claim 14 , further comprising pre-training and training to obtain a parsing SVT model.

18. The method of claim 14 , further comprising, as pre-training, obtaining the labelled text corpus, generating word vectors, generating phrase vectors, generating a parsing combination matrix, generating a parsing probability vector, and generating a part-of-speech matrix to output a randomized parsing SVT model.

19. The method of claim 14 , further comprising, as training, obtaining the randomized parsing SVT model, calculating an error rate, generating a derivative vector, adjusting the error rate and the derivative vector, determining that the error rate is not minimized, and generating a parsing SVT model.

20. The method of claim 14 , further comprising, as enhancement, obtaining the syntactic text tree, storing and re-labeling the syntactic text tree and updating the labelled text corpus.

21. The method of claim 14 , further comprising:

for each word of the text data elements, obtaining a word vector from a feeling SVT model of the SVT utility;

for each word vector, computing a feeling matrix, and obtain a word vector from the feeling matrix;

obtaining a confidence score; and

determining whether the confidence score is higher than a threshold to output a text string with associated feeling.

22. The method of claim 21 , further comprising pre-training and execute training to obtain a feeling SVT model.

23. The method of claim 21 , further comprising, as pre-training, obtaining labelled text corpus, generating word vectors, generating phrase vectors, generating a feeling combination matrix, generating a feeling probability vector, to output a randomized feeling SVT model.

24. The method of claim 21 , further comprising, as training, obtaining the randomized feeling SVT model, calculating the error rate, generating a derivative vector, adjusting error rate and derivative vector, determining that the error rate is not minimized, generating a feeling SVT model.

25. The method of claim 21 , further comprising, as enhancement, obtaining syntactic text tree, and storing and re-labeling the syntactic text tree to update parsing text corpus.

Assignments (9)
CERTIFICATE OF AMALGAMATION Recorded Jul 31, 2023
From: CLUEP AMALCO INC.
To: CLUEP INC.
Reel/Frame 064441/0566 →
CERTIFICATE OF CONTINUANCE Recorded Jun 13, 2023
From: CLUEP LLC
To: CLUEP AMALCO INC.
Reel/Frame 063988/0587 →
SECURITY INTEREST Recorded Apr 17, 2023
From: CLUEP LLC
To: EVERGREEN GAP DEBT GP INC., AS AGENT
Reel/Frame 063344/0287 →
RELEASE OF SECURITY INTEREST Recorded Jul 9, 2021
From: MEDLEY CAPITAL LLC
To: CLUEP LLC
Reel/Frame 056807/0777 →
CHANGE OF NAME Recorded Jan 25, 2019
From: CLP U.S. HOLDINGS, LLC
To: CLUEP LLC
Reel/Frame 048472/0410 →
CHANGE OF NAME Recorded Jan 25, 2019
From: CLUEP INC.
To: CLUEP LLC
Reel/Frame 048144/0549 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2018
From: CLUEP LLC
To: CLP U.S. HOLDINGS, LLC
Reel/Frame 046895/0211 →
SECURITY INTEREST Recorded Sep 14, 2018
From: CLP U.S. HOLDINGS, LLC
To: MEDLEY CAPITAL LLC
Reel/Frame 046881/0903 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 7, 2018
From: WALIA, KARAN; MAMONOV, ANTON
To: CLUEP INC.
Reel/Frame 046572/0235 →
Continuity (2)
Provisional Application 61925942 · Jan 10, 2014
Related Publication 20160321243A1 · Nov 3, 2016
Cited By (2)
US 12,260,178 US 12,682,174