IP Library Patent Application 18105729
Patent Application
App. No. 18/105,729

METHOD FOR CLASSIFIER LEARNING FROM A STREAM OF DATA ON A RESOURCE-CONSTRAINED DEVICE

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/105,729
Abstract

Methods, apparatuses, systems, and computer program products for artificial intelligence and machine learning for resource constrained devices and systems, including for classifier learning from a stream of data. A classifier may include a neural network comprised of a plurality of layers with each layer comprised of a plurality of neurons. The neural network may include a hidden layer comprised of a plurality of hidden neurons. In various embodiments, the size of the hidden layer may be constrained and the training of a hidden layer included removing one or more hidden neurons from the hidden layer.

Claims (59)

1 . A method for classifier learning, the method comprising:

sampling a sensor data stream to generate a plurality of sensor data samples;

extracting, via a feature extractor, a plurality of extracted features from the sensor data samples;

determining, via a classifier and based the extracted features, a detection of a new feature of the one or more of the extracted features, wherein the classifier comprises at least an input layer of input neurons, a hidden layer of hidden neurons, and an output layer of output neurons, wherein each hidden neuron is associated with one output neuron, wherein each output neuron is associated with one class;

training the classifier based on the plurality of extracted features comprising:

adding a new hidden neuron, wherein the new hidden neuron is associated with the new feature;

determining an age for each of the hidden neurons; and

removing one or more hidden neurons based on the age of each the hidden neurons.

2 . The method of claim 1 , wherein each sensor data sample of the sensor data samples includes a first plurality of dimensions;

wherein extracting a plurality of extracted features from the sensor data samples includes extracting a plurality of extracted features that includes a second plurality of dimensions; and

wherein the second plurality of dimensions is reduced from the first plurality of dimensions.

3 . The method of claim 1 , wherein removing one or more hidden neurons based on the age of each of the hidden neurons includes removing at least one hidden neuron for each class.

4 . The method of claim 1 , wherein determining an age for each of the hidden neurons is based on the activation of each of the hidden neurons, wherein an activation is based on a distance associated with one or more extracted features from one or more of the plurality of hidden neurons being less than a radius of the one or more of the plurality of hidden neurons.

5 . The method of claim 1 , wherein determining an age for each of the hidden neurons comprises:

determining, for each feature extracted, one or more activated hidden neurons;

decrementing the age of each of the hidden neurons activated that are associated with an output neuron of an incorrect class; and

incrementing the age of each of the hidden neurons activated that are associated an output neuron of a correct class.

6 . The method of claim 1 , further comprises:

requesting, prior to removing one or more hidden neurons, a threshold from a user via a user interface;

receiving, via a user interface, the threshold; and

wherein removing one or more hidden neurons is further based on a total number of hidden neurons exceeding a threshold.

7 . The method of claim 1 , wherein sampling the sensor data stream for a plurality of sensor data samples comprises:

generating training data samples from the sensor data stream, wherein the training data samples are a first portion of the sensor data stream for a first period of time, and wherein each of the training data samples are associated with a classification label;

generating testing data samples from the sensor data stream, wherein the testing data samples are a second portion of the sensor data stream for the first period of time; and

wherein the plurality of sensor data samples is comprised of sensor data from the training data samples.

8 . The method of claim 1 , wherein the feature extractor comprises a convolutional neural network.

9 . The method of claim 8 , wherein a plurality of coefficients of the convolutional neural network of the feature extractor is randomly initialized.

10 . The method of claim 1 further comprising:

operating, after training the classifier, the classifier on one or more features extracted from a second sensor data stream.

11 . An apparatus comprising:

at least one processor and at least one memory coupled to the processor, wherein the processor is configured to:

sample a sensor data stream to generate a plurality of sensor data samples;

extract, via a feature extractor, a plurality of extracted features from the sensor data samples;

determine, via a classifier and based the extracted features, a detection of a new feature for one or more of the extracted features, wherein the classifier comprises at least an input layer of input neurons, a hidden layer of hidden neurons, and an output layer of output neurons, wherein each hidden neuron is associated with one output neuron, wherein each output neuron is associated with one class;

train the classifier based on the plurality of extracted features comprising:

add a new hidden neuron, wherein the new hidden neuron is associated with the new feature;

determine an age for each of the hidden neurons; and

remove one or more hidden neurons based on the age of each the hidden neurons.

12 . The apparatus of claim 11 , wherein each sensor data sample of the sensor data samples includes a first plurality of dimensions;

wherein to extract a plurality of extracted features from the sensor data samples includes to extract a plurality of extracted features that includes a second plurality of dimensions; and

wherein the second plurality of dimensions is reduced from the first plurality of dimensions.

13 . The apparatus of claim 11 , wherein to remove one or more hidden neurons based on the age of each of the hidden neurons the processor is further configured to remove at least one hidden neuron for each class.

14 . The apparatus of claim 11 , wherein to determine an age for each of the hidden neurons is based on the activation of each of the hidden neurons, wherein an activation is based a distance associated with one or more extracted features from one or more of the plurality of hidden neurons being less than a radius of the one or more of the plurality of hidden neurons.

15 . The apparatus of claim 11 , wherein to determine an age for each of the hidden neurons the processor is further configured to:

determine, for each feature extracted, one or more activated hidden neurons;

decrement the age of each of the hidden neurons activated that are associated with an output neuron of an incorrect class; and

increment the age of each of the hidden neurons activated that are associated an output neuron of a correct class.

16 . The apparatus of claim 11 , wherein the processor is further configured to:

request, prior to removing one or more hidden neurons, a threshold from a user via a user interface;

receive, via a user interface, the threshold; and

wherein to remove one or more hidden neurons is further based on a total number of hidden neurons exceeding a threshold.

17 . The apparatus of claim 11 , wherein to sample the sensor data stream for a plurality of sensor data samples the processor is further configured to:

generate training data samples from the sensor data stream, wherein the training data samples are a first portion of the sensor data stream for a first period of time, and wherein each of the training data samples are associated with a classification label;

generate testing data samples from the sensor data stream, wherein the testing data samples are a second portion of the sensor data stream for the first period of time; and

wherein the plurality of sensor data samples is comprised of sensor data from the training data samples.

18 . The apparatus of claim 11 , wherein the feature extractor comprises a convolutional neural network.

19 . The apparatus of claim 18 , wherein a plurality of coefficients of the convolutional neural network of the feature extractor is randomly initialized.

20 . The apparatus of claim 11 , wherein the processor is further configured to:

operate, after training the classifier, the classifier on one or more features extracted from a second sensor data stream.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 17, 2024
From: STMICROELECTRONICS S.R.L.
To: STMICROELECTRONICS INTERNATIONAL N.V.
Reel/Frame 069180/0793 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 6, 2023
From: PAU, DANILO PIETRO; KUMAR AMBROSE, PREM
To: STMICROELECTRONICS S.R.L.
Reel/Frame 062606/0593 →