IP Library › Granted Patent US 11,741,511
Granted Patent B2
US 11,741,511 · App. 16/779,781 · Granted Aug 29, 2023

Systems and methods of business categorization and service recommendation

Inventors: Erez Katzenelson (Tel Aviv, IL); Elik Sror (Tel Aviv, IL); Shlomi Medalion (Tel Aviv, IL); Shimon Shahar (Hod HaSharon, IL); Shir Meir Lador (Tel Aviv, IL); Sigalit Bechler (Tel Aviv, IL); Alexander Zhicharevich (Tel Aviv, IL); Onn Bar (Tel Aviv, IL)
Assignee: Intuit Inc.
G06Q30/04G06F40/216G06F40/268G06N3/049G06Q10/067
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 11,741,511
App. No.
16/779,781
Granted
Aug 29, 2023
Kind
B2
Abstract

In one aspect, the present disclosure relates to a method of generating business descriptions performed by a server, said method may include: receiving a plurality of invoices, each invoice being associated with a business of a plurality of businesses; extracting a plurality of texts from the plurality of invoices; embedding the plurality of texts to a vector space to obtain a plurality of invoice vectors; generating a plurality of clusters in the vector space, each cluster of the plurality of clusters comprising at least one invoice vector of the plurality of invoice vectors; generating a description for a cluster, the description for the cluster representing all invoice vectors assigned to the cluster; for each business of the plurality of businesses that has at least one invoice vector assigned to the cluster, associating the business with the description; and indexing the plurality of businesses within a database by the generated descriptions.

Claims (53)

1. A method for determining a list of offerings for a business performed by a server, said method comprising:

receiving a plurality of invoices associated with the business from one or more devices associated with the business, each invoice comprising a plurality of line items, each line item describing a transaction;

extracting a plurality of texts from each line item of the plurality of invoices;

for each of the plurality of invoices, embedding extracted text from each associated line item to generate a plurality of line item vectors for each invoice;

generating a plurality of invoice vectors, wherein generating an invoice vector comprises combining an associated plurality of line item vectors via a first neural network;

for each invoice vector of the plurality of invoice vectors:

calculating a plurality of Euclidean distances between the invoice vector and a plurality of points, the plurality of points comprising a point from each of a pre-defined plurality of clusters;

selecting, based on the plurality of Euclidean distances, a pre-defined cluster closest to the invoice vector; and

assigning the invoice vector to the selected pre-defined cluster;

creating the list of offerings for the business, the list of offerings comprising a description from each selected pre-defined cluster;

receiving a request from a device of the one or more devices associated with the business; and

causing the list of offerings to be displayed on the device.

2. The method of claim 1 further comprising:

detecting stop words in the extracted plurality of texts from a pre-defined list of stop words;

removing the detected stop words from the extracted plurality of texts;

lemmatizing words within the extracted plurality of texts to obtain lemmatized texts; and

embedding the lemmatized texts to obtain the plurality of line item vectors.

3. The method of claim 1 , wherein embedding the extracted text from each associated line item comprises applying a word2vec model, the applying comprising:

creating a bag-of-words representing the text, the bag-of-words including each word in the text and an associated multiplicity of each word in the text; and

converting each word in the text into a vector based on the bag of words and not based on grammar and word order.

4. The method of claim 3 , wherein embedding the extracted text from each associated line item comprising a plurality of words comprises:

embedding each word of the associated line item using the word2vec model to obtain a plurality of word vectors;

feeding the plurality of word vectors to a long short-term memory (LSTM) layer;

combining, via the LSTM layer, the plurality of word vectors to obtain a single vector representing the associated line item, wherein combining includes at least one of vector addition, vector subtraction, scalar multiplication, sigmoid function multiplication, or hyperbolic function multiplication.

5. The method of claim 1 further comprising:

receiving a plurality of bank transactions associated with the business from one or more devices associated with the business;

embedding texts from the plurality of bank transactions to obtain a plurality of transaction vectors;

for each transaction vector of the plurality of transaction vectors:

calculating a plurality of Euclidean distances between the transaction vector and the plurality of points;

selecting, based on the plurality of Euclidean distances, a pre-defined cluster closest to the transaction vector; and

assigning the transaction vector to the selected pre-defined cluster;

creating the list of offerings for the business; and

causing the list of offerings to be displayed on the device.

6. The method of claim 1 wherein the description from each selected pre-defined cluster is determined by:

calculating a term frequency-inverse document frequency (TFIDF) value for each word in a cluster;

ranking the calculated TFIDF values;

identifying a top pre-defined number of words with a highest rank; and

generating the description for the cluster with the identified words.

7. The method of claim 1 , wherein combining the associated plurality of line item vectors via the first neural network comprises at least one of a weighted sum or a weighted difference.

8. A method for training a model to predict a category for a business performed by a server, said method comprising:

receiving a plurality of invoices associated with the business, each invoice comprising a plurality of line items, each line item describing a transaction;

receiving a category associated with the business;

extracting a plurality of texts from each line item of the plurality of invoices, the plurality of texts comprising a text from each of the plurality of invoices;

for each of the plurality of invoices, embedding extracted text from each associated line item to generate a plurality of line item vectors for each invoice

generating a plurality of invoice vectors, wherein generating an invoice vector comprises combining an associated plurality of line item vectors via a first neural network;

generating, based on the plurality of invoice vectors, a business vector representing the business; and

training a second neural network to predict the category based on the business vector.

9. The method of claim 8 , wherein generating the business vector comprises averaging all invoice vectors associated with the business.

10. The method of claim 8 , wherein the second neural network comprises three fully connected layers and training the second neural network comprises:

receiving a plurality of business pairs as labelled training data, each business pair including a business vector and a label indicating a category that the business vector belongs to;

applying a back-propagation algorithm to train the second neural network based on the labelled training data; and

training a softmax layer within the second neural network to map category predictions of the neural network to probabilities.

11. The method of claim 8 , wherein combining the associated plurality of line item vectors via the first neural network comprises at least one of a weighted sum or a weighted difference.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 13, 2020
From: KATZENELSON, EREZ; SROR, ELIK; MEDALION, SHLOMI; SHAHAR, SHIMON; LADOR, SHIR MEIR; BECHLER, SIGALIT; ZHICHAREVICH, ALEXANDER; BAR, ONN
To: INTUIT INC.
Reel/Frame 051807/0532 →
Continuity (1)
Related Publication 20210241331A1 · Aug 5, 2021