US 12,406,485 B2
Systems and methods for generating and deploying machine learning applications
Luming Wang, Bellevue, WA (US); Jinhua Ma, Jersey City, NJ (US); Shahin Rahman, San Diego, CA (US); and Geoffrey Xiao, Lexington, MA (US)
Assigned to ElectrifAI Opco, LLC, Morristown, NJ (US)
Filed by ElectrifAI Opco, LLC, Morristown, NJ (US)
Filed on Jul. 28, 2022, as Appl. No. 17/875,861.
Claims priority of provisional application 63/227,975, filed on Jul. 30, 2021.
Prior Publication US 2023/0035076 A1, Feb. 2, 2023
Int. Cl. G06V 10/82 (2022.01); G06F 9/445 (2018.01); G06F 9/455 (2018.01); G06F 16/215 (2019.01); G06N 5/022 (2023.01); G06V 10/40 (2022.01); G06V 10/766 (2022.01); G06V 10/776 (2022.01); G06V 10/94 (2022.01)
CPC G06V 10/82 (2022.01) [G06F 9/44505 (2013.01); G06F 9/45504 (2013.01); G06F 16/215 (2019.01); G06N 5/022 (2013.01); G06V 10/40 (2022.01); G06V 10/766 (2022.01); G06V 10/776 (2022.01); G06V 10/955 (2022.01)] 20 Claims
OG exemplary drawing
 
1. A method for using virtualized machine learning (ML) application programs associated with different ML tasks, the method comprising:
using at least one computer hardware processor, which is configured to execute virtualized application programs, to perform:
loading a virtualized ML application program comprising a plurality of software modules, the plurality of software modules including:
a first software module configured to apply one or more ML data processing pipelines to received data to generate input data for providing as input to an ML model associated with a respective ML task; and
a second software module configured to perform inference using the ML model;
using the first software module to: (a) receive data, via at least one communication network, from a source external to the virtualized ML application program; and (b) process the received data using the one or more ML data processing pipelines to generate the input data; and
using the second software module to apply the ML model to the input data generated using the first software module to produce corresponding ML model output,
wherein the received data comprises attribute values for a plurality of attributes,
wherein the input data comprises feature values for a plurality of features, and
wherein the one or more ML data processing pipelines are configured to process the received data by:
applying one or more data cleansing procedures to at least some of the attribute values to obtain cleansed attribute values; and
applying one or more feature extraction procedures to the cleansed attribute values to obtain the feature values,
wherein the plurality of attributes comprises groups of attributes including a first group of attributes and a second group of attributes,
wherein the attribute values comprise groups of attribute values including a first group of attribute values for the first group of attributes and a second group of attribute values for the second group of attributes,
wherein the plurality of features comprises groups of features including a first group of features and a second group of features,
wherein the feature values comprise groups of feature values including a first group of feature values for the first group of features and a second group of feature values for the second group of features, and
wherein the one or more ML data processing pipelines comprise:
a first ML data processing pipeline to generate the first group of feature values from the first group of attribute values using first data cleansing procedures and first feature extraction procedures;
a second ML data processing pipeline to generate the second group of feature values from the second group of attribute values using second data cleansing procedures different from the first data cleansing procedures and second feature extraction procedures different from the first feature extraction procedures.