IP Library Patent Application 18326172
Patent Application
App. No. 18/326,172

METHOD OF AND SYSTEM FOR TRAINING MACHINE LEARNING ALGORITHM FOR OBJECT CLASSIFICATION

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 None
App. No.
18/326,172
Abstract

A system and non-transitory storage medium for performing object classification using a trained machine learning algorithm (MLA). The MLA includes an embedding layer and a classification layer. A byte representation of an object is received. A set of embedding indices is generated based on the byte representation of the object. The MLA embeds, using the embedding layer, the set of embedding indices to obtain an input vector and predicts an estimated class based on the input vector. In some implementations, the set of embedding indices is generated by parsing the byte representation to obtain byte n-grams and by applying a hash function on the byte n-grams.

Claims (62)

1 - 20 . (canceled)

21 . A system for predicting an estimated class of an object, the system comprising:

a non-transitory storage medium storing computer-readable instructions thereon; and

at least one processor operatively connected to the non-transitory storage medium,

the at least one processor having access to a machine learning algorithm (MLA) having been trained to classify objects, the MLA comprising an embedding layer and a classification layer,

the at least one processor, upon executing the computer-readable instructions, being configured for:

receiving a byte sequence representation of the object;

generating, based on the byte sequence representation, a set of embedding indices associated with the object;

embedding, using the embedding layer of the MLA, the set of embedding indices to obtain an input vector representing the object;

predicting, using the classification layer of the MLA, the estimated class for the object based on the input vector; and

outputting the estimated class.

22 . The system of claim 21 , wherein said generating the set of embedding indices comprises:

parsing the byte sequence representation to obtain a set of byte chunks; and

applying a hash function on the set of byte chunks to obtain the set of embedding indices.

23 . The system of claim 22 , wherein said parsing the byte sequence representation to obtain the set of byte chunks comprises iterating, based on a predetermined length, over the byte sequence representation to obtain the set of byte chunks.

24 . The system of claim 23 , wherein:

the set of embedding indices comprises a first subset of indices and a second subset of indices; and wherein

said embedding, using the embedding layer of the MLA, the set of indices to obtain the input vector representing the object comprises:

embedding the first subset of indices to obtain a first vector and embedding the second subset of indices to obtain a second vector; and

combining the first vector and the second vector to obtain the input vector.

25 . The system of claim 24 , wherein said receiving the subset of indices comprising the first subset of indices and the second subset of indices comprises:

receiving a first set of weights associated with the first subset of indices, and receiving a second set of weights associated with the second subset of indices; and wherein

said combining the first vector and the second vector to obtain the input vector comprises:

weighting the first vector by the first set of weights to obtain a first weighted vector,

weighting the second vector by the second set of weights to obtain a second weighted vector, and

combining the first weighted vector and the second weighted vector to obtain the input vector.

26 . The system of claim 25 , wherein the at least one processor is further configured for, prior to said parsing the byte sequence representation to obtain the set of byte chunks:

compressing the byte sequence representation to obtain a compressed byte sequence representation; and wherein said parsing the byte sequence representation to obtain the set of byte chunks comprises:

parsing the compressed byte sequence representation to obtain the set of byte chunks.

27 . The system of claim 26 , wherein said compressing the byte sequence representation to obtain the compressed byte sequence representation comprises using Huffman encoding.

28 . The system of claim 27 , wherein said hash function comprises a non-cryptographic hash function.

29 . The system of claim 27 , wherein the object corresponds to text.

30 . The system of claim 27 , wherein the object corresponds to a genome sequence, and the set of byte chunks correspond to k-mers of nucleotides.

31 . A non-transitory storage medium comprising computer-readable instructions stored thereon, the computer-readable instructions, upon being executed by at least one processor, cause the at least one processor to perform:

accessing a machine learning algorithm (MLA) having been trained to classify objects, the MLA comprising an embedding layer and a classification layer,

receiving a byte sequence representation of the object;

generating, based on the byte sequence representation, a set of embedding indices associated with the object;

embedding, using the embedding layer of the MLA, the set of embedding indices to obtain an input vector representing the object;

predicting, using the classification layer of the MLA, an estimated class for the object based on the input vector; and

outputting the estimated class.

32 . The non-transitory storage medium of claim 31 , wherein to perform said generating the set of embedding indices, the computer-readable instructions further cause the at least one processor to perform:

parsing the byte sequence representation to obtain a set of byte chunks; and

applying a hash function on the set of byte chunks to obtain the set of embedding indices.

33 . The non-transitory storage medium of claim 32 , wherein to perform said parsing the byte sequence representation to obtain the set of byte chunks, the computer-readable instructions further cause the at least one processor to perform: iterating, based on a predetermined length, over the byte sequence representation to obtain the set of byte chunks.

34 . The non-transitory storage medium of claim 33 , wherein:

the set of embedding indices comprises a first subset of indices and a second subset of indices; and wherein

to perform said embedding, using the embedding layer of the MLA, the set of indices to obtain the input vector representing the object, the computer-readable instructions further cause the at least one processor to perform:

embedding the first subset of indices to obtain a first vector and embedding the second subset of indices to obtain a second vector; and

combining the first vector and the second vector to obtain the input vector.

35 . The non-transitory storage medium of claim 34 , wherein to perform said receiving the subset of indices comprising the first subset of indices and the second subset of indices comprises, the computer-readable instructions cause the at least one processor to perform:

receiving a first set of weights associated with the first subset of indices, and receiving a second set of weights associated with the second subset of indices; and wherein

said combining the first vector and the second vector to obtain the input vector comprises:

weighting the first vector by the first set of weights to obtain a first weighted vector,

weighting the second vector by the second set of weights to obtain a second weighted vector, and

combining the first weighted vector and the second weighted vector to obtain the input vector.

36 . The non-transitory storage medium of claim 35 , wherein the computer-readable instructions further cause the at least one processor to perform:

prior to said parsing the byte sequence representation to obtain the set of byte chunks: compressing the byte sequence representation to obtain a compressed byte sequence representation; and wherein

to perform said parsing the byte sequence representation to obtain the set of byte chunks, the computer-readable instructions cause the at least one processor to perform: parsing the compressed byte sequence representation to obtain the set of byte chunks.

37 . The non-transitory storage medium of claim 36 , wherein to perform said compressing the byte sequence representation to obtain the compressed byte sequence representation, the computer-readable instructions further cause the at least one processor to use Huffman encoding.

38 . The non-transitory storage medium of claim 36 , wherein said hash function comprises a non-cryptographic hash function.

39 . The non-transitory storage medium of claim 36 , wherein the object corresponds to text.

40 . The non-transitory storage medium of claim 36 , wherein the object corresponds to a genome sequence, and the set of byte chunks correspond to k-mers of nucleotides.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 26, 2025
From: SERVICENOW CANADA INC.
To: SERVICENOW, INC.
Reel/Frame 070644/0956 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 14, 2023
From: ZHANG, XIANG; DROUIN, ALEXANDRE
To: ELEMENT AI INC.
Reel/Frame 064898/0675 →
CHANGE OF NAME Recorded Sep 14, 2023
From: ELEMENT AI INC.
To: SERVICENOW CANADA INC.
Reel/Frame 064898/0856 →