DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
This action is responsive to communication received on 01/19/2024. The applicant has submitted 20 claims for examination, all claims are currently pending.
The Examiner recommends filing a written authorization for Internet communication in response to the present action. Doing so permits the USPTO to communicate with Applicant using Internet email to schedule interviews or discuss other aspects of the application. Without a written authorization in place, the USPTO cannot respond to Internet correspondence received from Applicant. The preferred method of providing authorization is by filing form PTO/SB/439, available at: https://www.uspto.gov/patent/forms/forms. See MPEP § 502.03 for other methods of providing written authorization.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claims 1-2, 7, 11-12 and 17 are rejected under 35 U.S.C. 102a1,a2 as being anticipated by Singhal US 2022/0398500.
Regarding claims 1 and 11, Singhal teaches a method and non-transitory CRM executed by processor to perform the method comprising steps of: providing a first set of data obtained based on monitoring a plurality of endpoints by a service provider, wherein the plurality of endpoints are associated with a customer(global training system (I e service provider) maintains a database of global parameters aggregated from multiple computing device(i.e. endpoints), ¶41)
[0041] The local training systems of the user devices obtain the current values 112 of the set of global model parameters 110 from the global training system 102 and generate parameter value updates 114 to the set of global model parameters 110 using local training data generated on the user devices. The local training systems transmit the parameter value updates 114 to the global training system 102 for use in updating the set of global model parameters 110 of the machine learning model 108.
and wherein the first set of data includes an index(global parameter stored in database that is indexed, ¶113)
[0113] In this specification, the term “database” is used broadly to refer to any collection of data: the data does not need to be structured in any particular way, or structured at all, and it can be stored on storage devices in one or more locations. Thus, for example, the index database can include multiple collections of data, each of which may be organized and accessed differently.
responsive to the customer wanting to create a user-defined machine learning model, receiving a second set of data that maps to a subset of the first set of data based on the index, wherein the second set of data is maintained private from the service provider(updating of local parameters via querying the global parameter database that is indexed, ¶s 9,13)
[0009] Determining the updated values of the set of local parameters of the machine learning model may comprise: providing the query dataset, data defining the current values of the set of local parameters, and the data defining the current values of the set of global parameters as input to an update algorithm.
[0013] Another innovative aspect of the subject matter described in this specification can be embodied in methods performed by a server computing device that is in data communication with a plurality of client computing devices over a data communication network that include the actions of selecting a subset of client computing devices from the plurality of client computing devices; transmitting, to each client computing device in the subset and over the data communication network, data defining current values of a set of global parameters of a machine learning model, wherein the machine learning model has the set of global parameters maintained at the server computing device and a plurality of sets of local parameters maintained at the plurality of the client computing devices; receiving, from each client computing device in the subset and over the data communication network, respective parameter update data defining an update to the set of global parameters of the machine learning model; and updating the current values of the set of global parameters of the machine learning model based on the respective parameter update data.
receiving a metric from the customer for accepting criteria of the user-defined machine learning model; and(objective function used to evaluate performance of the model, ¶s81,82)
[0081]…where g.sup.(t) denotes the current values of the global model parameters, and l.sub.i.sup.(t,k.sup.r.sup.−1) denotes the values of the set of local model parameters as of the current step, with l.sub.i.sup.(t,0) denoting the randomly initialized values of the set of local model parameters. f.sub.i(x)=[AltContent: rect].sub.ξ∈D.sub.i[(f.sub.i(x,ξ)] is an objective function used by the system to evaluate a measure of performance of the machine learning model on the particular task, where x is the combination (e.g., concatenation ∥) of the global model parameters g and set of the local model parameters l, and ξ is a training example generated from the support dataset. Specifically, for a given training example, the system can evaluate the objective function to measure a difference between (i) a training output generated by processing the training input using the machine learning model in accordance with current values of the global and local model parameters and (ii) the target output.
[0082] For example, the objective function can be a cross-entropy objective function or a squared-error objective function, and different systems running at different client computing devices can use different objective functions. Optionally, in order to incentivize the set of local model parameters trained in this way to not diverge too far from the corresponding set of global parameters, an additional regularization term that penalizes any difference between local and global parameter values may be added to the objective function.
determining the user-defined machine learning model based on the first set of data, the second set of data, and the metric(local training is performed with to achieve a target output where target output is based on measure of performance, ¶s 65, 77, 81)
[0065] The local training systems 106A-N are each configured to maintain a set of local model parameters 105A-N, e.g., in a logical data storage area or physical data storage device. At each of multiple training iterations, the local training system receives data defining the current values 112 of the set of global model parameters 110 and then uses received data to obtain a reconstruction of the values of its own local model parameters 105 of the machine learning model. The local training system then uses the local parameter values to determine parameter value updates 114 to its copy of the set of global model parameters 110.
[0077] In some implementations, the system continually generates training examples for training the machine learning model based on the local data, i.e., based on either support dataset or query dataset, and both before and after receiving the current global model parameter values of the machine learning model. Each training example generated by the system can include a machine learning model training input and a target output that should be generated by the machine learning model to perform a particular machine learning task by processing the training input.
[0081]…where g.sup.(t) denotes the current values of the global model parameters, and l.sub.i.sup.(t,k.sup.r.sup.−1) denotes the values of the set of local model parameters as of the current step, with l.sub.i.sup.(t,0) denoting the randomly initialized values of the set of local model parameters. f.sub.i(x)=[AltContent: rect].sub.ξ∈D.sub.i[(f.sub.i(x,ξ)] is an objective function used by the system to evaluate a measure of performance of the machine learning model on the particular task, where x is the combination (e.g., concatenation ∥) of the global model parameters g and set of the local model parameters l, and ξ is a training example generated from the support dataset. Specifically, for a given training example, the system can evaluate the objective function to measure a difference between (i) a training output generated by processing the training input using the machine learning model in accordance with current values of the global and local model parameters and (ii) the target output.
Regarding claims 2 and 12, Singhal teaches wherein the steps further include: hosting the user-defined machine learning model by the service provider to analyze production data to make a prediction based thereon, wherein the hosting and the prediction are maintained private from the service provider( trained model deployed to perform task such as prediction tasks for example patient health predictions, ¶s55,56,120).
[0055] As another example, the task can be a health prediction task, where the input is electronic health record data for a patient and the output is a prediction that is relevant to the future health of the patient, e.g., a predicted treatment that should be prescribed to the patient, the likelihood that an adverse health event will occur to the patient, or a predicted diagnosis for the patient.
[0056] In the example health prediction task, the machine learning model can also be emotion recognition model which is configured to detect or recognize emotional information of a patient from passive sensor data about the patient's physical state. The passive sensor data can include, e.g., electroencephalogram (EEG) data or electrocardiogram (ECG) data.
[0120] Machine learning models can be implemented and deployed using a machine learning framework, e.g., a TensorFlow framework, a Microsoft Cognitive Toolkit framework, an Apache Singa framework, or an Apache MXNet framework.
Regarding claims 7 and 17, Singhal teaches wherein the hosting, the second set of data, and the prediction are maintained private from the service provider(federated framework allow local data to and global data to be maintained separately and with privacy protections, ¶s30,35).
[0030] To determine updated (e.g., trained) values of the model parameters including the set of global parameters and the multiple sets of local parameters in a manner that respects user privacy, the global training system, together with the local training systems, can train the machine learning model within the context of a federated learning framework while providing additional privacy protection during the training to prevent information that is sensitive, user-specific, or both from being easily recoverable or otherwise derivable outside of the client computing system on which it is stored.
[0035] The systems and methods according to example aspects of the present specification can allow for additional privacy protection to be provided to such users by maintaining, at a local training system implemented on a user computing device, a set of local parameters of the machine learning model, such as sensitive, user-specific parameters as in the collaborative filtering setting, and updating the values of this set of local parameters entirely within the client computing device during training.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 3-6, 8, 13-16 and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Singhal as applied to claim 2 and 12 above, and further in view of Jaiswal US 2014/0304197.
Regarding claims 3 and 13, Singhal a system for training a machine learning model and where the trained model is used for performing predictions. Singhal does not teach a trained machine learning model for cybersecurity analysis. Thus, Singhal does not teach embodiment of wherein the monitoring the plurality of endpoints is for cybersecurity, and wherein the prediction relates to an action being taken by an endpoint of the plurality of endpoints. Jaiswal in the same field of endeavor of training and using machine learning models for data loss detection and prevention. Jaiswal teaches wherein the monitoring the plurality of endpoints is for cybersecurity, and wherein the prediction relates to an action being taken by an endpoint of the plurality of endpoints(detecting that endpoint will perform action such a sending email with data that will cause data loss of sensitive data, ¶s28,31).
[0028] Each of the endpoint devices may be a personal computer (PC), a laptop, a mobile phone, a tablet computer, or any other computing device that can be accessed by a user. Each endpoint device 102A-102C has multiple different data loss vectors. Each data loss vector is a path through which data can be transferred off of the endpoint device. Examples of data loss vectors include burning files to an optical disc, copying data to a portable drive (e.g., a portable universal serial bus (USB) drive), printing data to a printer, sending data through a fax, sending an email, sending an instant message, performing a print screen operation, etc.
[0031] Each endpoint device 102A-102C includes a DLP agent 106 that monitors data loss vectors to ensure that sensitive (e.g., confidential) information does not leave the endpoint device for illegitimate purposes. The DLP agent 106 may scan data as it moves through a data loss vector and/or when a request to send the data through a data loss vector is received. When DLP agent 106 detects data moving through a data loss vector or a request to move the data through the data loss vector, the DLP agent 106 implements a DLP policy 110 to determine whether the data is sensitive data (includes sensitive information). The DLP policy 110 may specify a type of content to be monitored (e.g., messages, displayed data, stored documents, etc.), how to identify sensitive data, and/or an action to be performed when sensitive data is detected. In one embodiment, the DLP policy 110 includes a MLD profile 112. The DLP agent 106 includes a machine learning (ML) module 108 that processes the data using the MLD profile 112. By processing the data using the MLD profile 112, the ML module 108 determines whether the data is sensitive data.
It would have been obvious to a person of ordinary skill in the art at the time of the effective filing of the instant application to modify Singhal’s method of training detection models with a data loss detection and prevention system of Jaiswal. The reason for this modification would be to implement a known method(federation) for training a detection model to prevent sensitive data loss.
Regarding claims 4 and 14 Singhal a system for training a machine learning model and where the trained model is used for performing predictions. Singhal does not teach a trained machine learning model for cybersecurity analysis. Thus, Singhal does not teach wherein the monitoring the plurality of endpoints is for cybersecurity, and wherein the prediction relates to whether or not an endpoint of the plurality of endpoints will violate a cybersecurity or data protection policy. Jaiswal in the same field of endeavor of training and using machine learning models for data loss detection and prevention. Jaiswal teaches wherein the monitoring the plurality of endpoints is for cybersecurity, and wherein the prediction relates to whether or not an endpoint of the plurality of endpoints will violate a cybersecurity or data protection policy(determine violation of data loss protection policy, ¶31).
[0031] Each endpoint device 102A-102C includes a DLP agent 106 that monitors data loss vectors to ensure that sensitive (e.g., confidential) information does not leave the endpoint device for illegitimate purposes. The DLP agent 106 may scan data as it moves through a data loss vector and/or when a request to send the data through a data loss vector is received. When DLP agent 106 detects data moving through a data loss vector or a request to move the data through the data loss vector, the DLP agent 106 implements a DLP policy 110 to determine whether the data is sensitive data (includes sensitive information). The DLP policy 110 may specify a type of content to be monitored (e.g., messages, displayed data, stored documents, etc.), how to identify sensitive data, and/or an action to be performed when sensitive data is detected. In one embodiment, the DLP policy 110 includes a MLD profile 112. The DLP agent 106 includes a machine learning (ML) module 108 that processes the data using the MLD profile 112. By processing the data using the MLD profile 112, the ML module 108 determines whether the data is sensitive data.
It would have been obvious to a person of ordinary skill in the art at the time of the effective filing of the instant application to modify Singhal’s method of training detection models with a data loss detection and prevention system of Jaiswal. The reason for this modification would be to implement a known method(federation) for training a detection model to prevent sensitive data loss.
Regarding claims 5 and 15 Singhal a system for training a machine learning model and where the trained model is used for performing predictions. Singhal does not teach a trained machine learning model for cybersecurity analysis. Thus, Singhal does not teach wherein the monitoring the plurality of endpoints is for cybersecurity, and wherein the prediction relates to whether or not an endpoints of the plurality of endpoints will exfiltrate data of the customer. Jaiswal in the same field of endeavor of training and using machine learning models for data loss detection and prevention. Jaiswal wherein the monitoring the plurality of endpoints is for cybersecurity, and wherein the prediction relates to whether or not an endpoints of the plurality of endpoints will exfiltrate data of the customer(detect data loss of sensitive data).
[0031] Each endpoint device 102A-102C includes a DLP agent 106 that monitors data loss vectors to ensure that sensitive (e.g., confidential) information does not leave the endpoint device for illegitimate purposes. The DLP agent 106 may scan data as it moves through a data loss vector and/or when a request to send the data through a data loss vector is received. When DLP agent 106 detects data moving through a data loss vector or a request to move the data through the data loss vector, the DLP agent 106 implements a DLP policy 110 to determine whether the data is sensitive data (includes sensitive information). The DLP policy 110 may specify a type of content to be monitored (e.g., messages, displayed data, stored documents, etc.), how to identify sensitive data, and/or an action to be performed when sensitive data is detected. In one embodiment, the DLP policy 110 includes a MLD profile 112. The DLP agent 106 includes a machine learning (ML) module 108 that processes the data using the MLD profile 112. By processing the data using the MLD profile 112, the ML module 108 determines whether the data is sensitive data.
It would have been obvious to a person of ordinary skill in the art at the time of the effective filing of the instant application to modify Singhal’s method of training detection models with a data loss detection and prevention system of Jaiswal. The reason for this modification would be to implement a known method(federation) for training a detection model to prevent sensitive data loss.
Regarding claims 6 and 16, Singhal a system for training a machine learning model and where the trained model is used for performing predictions. Singhal does not teach a trained machine learning model for cybersecurity analysis. Thus, Singhal does not teach one or more of blocking a transaction, allowing the transaction, and notifying the customer of the transaction, based on the prediction. Jaiswal in the same field of endeavor of training and using machine learning models for data loss detection and prevention. Jaiswal teaches one or more of blocking a transaction, allowing the transaction, and notifying the customer of the transaction, based on the prediction(action takes such as preventing exit of sensitive date, ¶42).
[0042] Policy violation responder 220 applies one or more DLP response rules 245 when a DLP policy violation is detected. Each DLP response rule 245 may be associated with one or more DLP policies 250. Each DLP response rule 245 includes one or more actions for policy violation responder 220 to take in response to violation of an associated DLP policy 250. Once a violation of a DLP policy 250 is discovered, policy violation responder 220 may determine which DLP response rules are associated with the violated DLP policy 250. One or more actions included in the response rule 245 can then be performed. Examples of performed actions include sending a notification to an administrator, preventing the data from exiting an endpoint device through a data loss vector, locking down the computer so that no data can be moved off of the endpoint device through any data loss vector, encrypting data as it is moved off the endpoint device, and so on.
It would have been obvious to a person of ordinary skill in the art at the time of the effective filing of the instant application to modify Singhal’s method of training detection models with a data loss detection and prevention system of Jaiswal. The reason for this modification would be to implement a known method(federation) for training a detection model to prevent sensitive data loss
Regarding claims 8 and 18, Singhal a system for training a machine learning model and where the trained model is used for performing predictions. Singhal does not teach wherein the monitoring the plurality of endpoints is for cybersecurity, and wherein the service provider is configured to perform monitoring for a plurality of customers. Jaiswal in the same field of endeavor of training and using machine learning models for data loss detection and prevention. Jaiswal teaches wherein the monitoring the plurality of endpoints is for cybersecurity, and wherein the service provider is configured to perform monitoring for a plurality of customers(DLP(data loss prevention) agent with model deployed on multiple endpoints of customer network ¶s 4,31).
[0004] To more accurately protect sensitive unstructured data, some DLP systems are exploring the use of vector machine learning (VML) technology. However, VML is very complex to implement. Accordingly, current DLP systems that use VML require an expert in VML to design machine learning-based detection (MLD) profiles for customers. The DLP system that is shipped to the customer then has a predefined MLD profile that the customer is unable to modify. Such DLP systems do not provide any tools (e.g., user interface or workflow) to enable users to generate their own MLD profiles
[0031] Each endpoint device 102A-102C includes a DLP agent 106 that monitors data loss vectors to ensure that sensitive (e.g., confidential) information does not leave the endpoint device for illegitimate purposes. The DLP agent 106 may scan data as it moves through a data loss vector and/or when a request to send the data through a data loss vector is received. When DLP agent 106 detects data moving through a data loss vector or a request to move the data through the data loss vector, the DLP agent 106 implements a DLP policy 110 to determine whether the data is sensitive data (includes sensitive information). The DLP policy 110 may specify a type of content to be monitored (e.g., messages, displayed data, stored documents, etc.), how to identify sensitive data, and/or an action to be performed when sensitive data is detected. In one embodiment, the DLP policy 110 includes a MLD profile 112. The DLP agent 106 includes a machine learning (ML) module 108 that processes the data using the MLD profile 112. By processing the data using the MLD profile 112, the ML module 108 determines whether the data is sensitive data.
It would have been obvious to a person of ordinary skill in the art at the time of the effective filing of the instant application to modify Singhal’s method of training detection models with a data loss detection and prevention system of Jaiswal. The reason for this modification would be to implement a known method(federation) for training a detection model to prevent sensitive data loss
Claims 9-10 and 19-20 are rejected under 35 U.S.C. 103 as being unpatentable over Singhal as applied to claims 1 and 11 above, and further in view of Singh US 2025/0008346.
Regarding claims 9 and 19, Singhal teaches the first set of data input(global) and second set of data inputs(local) but does not teaches specific number of inputs/features and thus does not teach
wherein the first set of data includes features or inputs X1, X2, ..., Xm for N transactions and with the index, where M is an integer > 1,
wherein the second set of data includes features or inputs Z1, Ze, ..., Zp for N’ transactions and with the index, where P is an integer > 1 and M and P do not have to be the same value, N’ << N.
Singh in the same field of endeavor teaches a system for machine learning training. Singh teaches wherein the first set of data includes features or inputs X1, X2, ..., Xm for N transactions and with the index, where M is an integer > 1,(first parameter with integer M greater than 3, ¶76,78)
wherein the second set of data includes features or inputs Z1, Ze, ..., Zp for N’ transactions and with the index, where P is an integer > 1 and M and P do not have to be the same value, N’ << N,(second parameter with integer N greater than 3, ¶s76,78,268)
[0076] FIG. 5 shows an exemplary illustration of cell data (e.g. cell data 404) stored in a memory (e.g. the memory 402). As illustrated herein, the cell data may include cell-specific parameters of a plurality of cells (501-1, 501-2, 501-3, . . . , 501-N). Each cell is associated with a network access node providing network access service for the cell. The cell data may include cell specific parameters for each cell. For example, the cell data, for a first cell 501-1, may include cell-specific parameters of the first cell. The cell-specific parameters, for the first cell 501-1, may include a first attribute 511-1 (e.g. a mobility parameter) represented by a first parameter X(1,1) (e.g. a parameter representing user movement patterns in the first cell 501-1), a second attribute 511-2 (e.g. geolocation) represented by a second parameter X(1,2) (e.g. a parameter representing the location of the first cell 501-1), a third attribute 511-3 (e.g. topography) represented by a third parameter X(1,3) (e.g. a parameter representing the terrain of the first cell 501-1), and such, up to an M-th attribute represented by an M-th parameter X(1,M). Similarly, the cell data includes cell-specific parameters of a second cell 501-2, a third cell 501-3, and such, up to an N-th cell. M and N are integers greater than 3.
[0078] FIG. 6 shows an exemplary illustration of RAN-related data (e.g. RAN data 405) stored in a memory (e.g. the memory 402). As illustrated herein, the RAN data may include RAN-related data of a plurality of cells (601-1, 601-2, 601-3, . . . , 601-N). Each cell is associated with a network access node providing network access service for the cell. The RAN data may include RAN-related data for each cell. For example, the RAN data, for a first cell 601-1, may include RAN-related data of the first cell. The RAN-related data, for the first cell 601-1, may include a first attribute 611-1 (e.g. a network performance metric) represented by a first parameter Y(1,1) (e.g. a data throughput metric of the first cell 601-1), a second attribute 611-2 (e.g. another network performance metric) represented by a second parameter Y(1,2) (e.g. a latency metric of the first cell 601-1), a third attribute 611-3 (e.g. data traffic) represented by a third parameter Y(1,3) (e.g. data representing types and volumes of data traffic of the first cell 601-1), and such, up to a Q-th attribute represented by a Q-th parameter X(1,Q). Similarly, the RAN data includes RAN-related data of a second cell 601-2, a third cell 601-3, and such, up to a P-th cell. P and Q are integers greater than 3.
[0268] Unless explicitly specified, the term “transmit” encompasses both direct (point-to-point) and indirect transmission (via one or more intermediary points). Similarly, the term “receive” encompasses both direct and indirect reception. Furthermore, the terms “transmit,” “receive,” “communicate,” and other similar terms encompass both physical transmission (e.g., the transmission of radio signals) and logical transmission (e.g., the transmission of digital data over a logical software-level connection). For example, a processor or controller may transmit or receive data over a software-level connection with another processor or controller in the form of radio signals, where the physical transmission and reception is handled by radio-layer components such as RF transceivers and antennas, and the logical transmission and reception over the software-level connection is performed by the processors or controllers. The term “communicate” encompasses one or both of transmitting and receiving, i.e., unidirectional or bidirectional communication in one or both of the incoming and outgoing directions. The term “calculate” encompasses both ‘direct’ calculations via a mathematical expression/formula/relationship and ‘indirect’ calculations via lookup or hash tables and other array indexing or searching operations.
It would have been obvious to a person of ordinary skill in the art at the time of the effective filing of the instant application to modify Singhal with training of local model with global and local data with organized as input vectors of N(i.e. M as claimed) and M(i.e. P as claimed) number of values. The reason for this modification would be to provide a method of organizing the inputs that combines local and global data to train a machine learning model.
Regarding claims 10 and 20, Singhal teaches the first set of data input(global) and second set of data inputs(local) but does not teaches specific number of inputs/features and thus does not teach
wherein the determining finds the user-defined machine learning model with inputs Xi, X2, ..., Xm, Z1, Z2, ..., Zp to achieve outputs Y for the N’ transactions matching the accepting criteria.
Singh in the same field of endeavor teaches a system for machine learning training. Singh teaches wherein the determining finds the user-defined machine learning model with inputs Xi, X2, ..., Xm, Z1, Z2, ..., Zp to achieve outputs Y for the N’ transactions matching the accepting criteria(calculate and output based on inputs ¶34,76,78).
[0034] It is to be noted that the terms “AI model” and “machine learning model” are often used interchangeably in the literature, but there may also be some subtle differences between the two. An AI (Artificial Intelligence) model refers to a computational system that aims to perform tasks that would typically require human intelligence, such as problem-solving, pattern recognition, classification, and perception. AI models can be developed using various techniques, which may or may not include machine learning. AI models may include rule-based and rely on pre-defined logic, while they may also include the use of machine learning algorithms to adapt and improve over time. A machine learning model is considered a particular type of AI model that may learn from data. Machine learning models can be supervised (learning from labeled data), unsupervised (learning from unlabeled data), or reinforcement learning (learning from interactions with an environment). AI models that do not use machine learning techniques may typically include rule-based systems or systems that rely on pre-defined logic and knowledge representation. These models are designed and built by human experts who encode the rules and knowledge directly into the system. In this sense, they are not “trained” like machine learning models, which learn from data. However, rule-based AI models may also be updated and improved by refining the rules or adding new ones, which may require human intervention or may be provided via a particular training module that may change parameters associated with the defined rules. These updates can be considered a form of “training”. The term used in this disclosure, namely AI/ML, encompasses in particular machine learning models, but it may also include AIs that do not involve a machine learning model particularly, but which may be trained. The term “model” used herein may be understood as any kind of algorithm, which provides output data based on input data provided to the model (e.g., any kind of algorithm generating or calculating output data based on input data).
[0076] FIG. 5 shows an exemplary illustration of cell data (e.g. cell data 404) stored in a memory (e.g. the memory 402). As illustrated herein, the cell data may include cell-specific parameters of a plurality of cells (501-1, 501-2, 501-3, . . . , 501-N). Each cell is associated with a network access node providing network access service for the cell. The cell data may include cell specific parameters for each cell. For example, the cell data, for a first cell 501-1, may include cell-specific parameters of the first cell. The cell-specific parameters, for the first cell 501-1, may include a first attribute 511-1 (e.g. a mobility parameter) represented by a first parameter X(1,1) (e.g. a parameter representing user movement patterns in the first cell 501-1), a second attribute 511-2 (e.g. geolocation) represented by a second parameter X(1,2) (e.g. a parameter representing the location of the first cell 501-1), a third attribute 511-3 (e.g. topography) represented by a third parameter X(1,3) (e.g. a parameter representing the terrain of the first cell 501-1), and such, up to an M-th attribute represented by an M-th parameter X(1,M). Similarly, the cell data includes cell-specific parameters of a second cell 501-2, a third cell 501-3, and such, up to an N-th cell. M and N are integers greater than 3.
[0078] FIG. 6 shows an exemplary illustration of RAN-related data (e.g. RAN data 405) stored in a memory (e.g. the memory 402). As illustrated herein, the RAN data may include RAN-related data of a plurality of cells (601-1, 601-2, 601-3, . . . , 601-N). Each cell is associated with a network access node providing network access service for the cell. The RAN data may include RAN-related data for each cell. For example, the RAN data, for a first cell 601-1, may include RAN-related data of the first cell. The RAN-related data, for the first cell 601-1, may include a first attribute 611-1 (e.g. a network performance metric) represented by a first parameter Y(1,1) (e.g. a data throughput metric of the first cell 601-1), a second attribute 611-2 (e.g. another network performance metric) represented by a second parameter Y(1,2) (e.g. a latency metric of the first cell 601-1), a third attribute 611-3 (e.g. data traffic) represented by a third parameter Y(1,3) (e.g. data representing types and volumes of data traffic of the first cell 601-1), and such, up to a Q-th attribute represented by a Q-th parameter X(1,Q). Similarly, the RAN data includes RAN-related data of a second cell 601-2, a third cell 601-3, and such, up to a P-th cell. P and Q are integers greater than 3.
It would have been obvious to a person of ordinary skill in the art at the time of the effective filing of the instant application to modify Singhal with training of local model with global and local data with organized as input vectors of N(i.e. M as claimed) and M(i.e. P as claimed) number of values. The reason for this modification would be to provide a method of organizing the inputs that combines local and global data to train a machine learning model to output predictions
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Tom Y. Chang whose telephone number is 571-270-5938. The examiner can normally be reached on Monday-Friday from 9am to 5pm.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Emmanuel Moise, can be reached on (571)272-3865. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from Patent Center. Status information for published applications may be obtained from Patent Center. Status information for unpublished applications is available through Patent Center for authorized users only. Should you have questions about access to Patent Center, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free).
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) Form at https://www.uspto.gov/patents/uspto-automated- interview-request-air-form.
/TOM Y CHANG/
Primary Examiner, Art Unit 2455