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 .
DETAILED ACTION
This Office Action is sent in response to Application’s Communication received on 12/14/2023 for application number 18/540334. The Office hereby acknowledges receipt of the following and placed of record in file: Specification, Drawing, Abstract, Oath/Declaration, and Claims.
Claims (1-6), (7-14) and (15-20) are presented for examination.
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 of this title, 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 1-20 are rejected under AIA 35 U.S.C. 103(a) as being unpatentable over of Situnyake et al. US Patent Application Publication US 20240193018 (hereinafter Situnyake) and further in view of Profirovic et al. US Patent Application US 11663219 B1 (hereinafter Profirovic).
Regarding claim 1, Situnyake teaches A system for dynamically configuring processing parameters for streaming data, the system comprising: one or more memories; and one or more processors, communicatively coupled to the one or more memories, configured to: ([0032-0033]) train a machine learning model based on multiple sets of processing parameters and one or more data parameters associated with the multiple sets of processing parameters (Abstract, [0028], [0032] wherein Situnyake describes a system that may configure a pipeline for a target device. The pipeline may include a signal processing component and aa machine learning component. The pipeline may be configured to receive input data and generate output data based on the input data. For example, the output data may indicate detections in an output stream based on events in the input data in an input stream. The system may determine multiple post-processing configurations for post-processing the output data. A post-processing configuration may be configured to generate a detectable event based on the output data. The multiple post-processing configurations may be generated using a multi-objective optimization that varies one or more parameters for generating the detectable event. Wherein the configuration of the pipeline may include one or more parameters for configuring the signal processing component (e.g., settings that affect signal processing calculations, such as a particular DSP algorithm or noise floor) and/or the machine learning component (e.g., settings that affect machine learning, such as hyperparameters including neural network topology, size, or training). Configurations of the multiple configurations may vary in the one or more parameters that are used, and therefore may vary in configurations of the one or more signal processing components and/or the one or more machine learning components.) identify one or more real-time data parameters associated with a data stream ([0035], [0073] wherein Situnyake discloses incorporating parameters for input data steam in real-time) identify, using the machine learning model and based on the real-time data parameters, a set of optimal processing parameters associated with processing the data stream ([0035-0037], [0073], [0106] wherein Situnyake discloses an optimal post-processing stage utilizing parameters for processing data stream in real-time) configure a data processing device with the set of optimal processing parameters (Abstract, wherein Situnyake describes configurations of data processing).
Situnyake does not teach and process the data stream using the data processing device and based on the set of optimal processing parameters.
However in analogous art of dynamic configuration of a data processing system, Profirovic teaches process the data stream using the data processing device and based on the set of optimal processing parameters (FIG. 2, ¶ 96-97, ¶102, ¶159, ¶162-163 wherein Profirovic uses devices for processing data steam with parameters).
It would have been obvious to a person in the ordinary skill in the art before the effective filing date of the claimed invention to combine Situnyake with Profirovic by incorporating the method of process the data stream using the data processing device and based on the set of optimal processing parameters of Profirovic into the method of train a machine learning model based on multiple sets of processing parameters of Situnyake for the purpose of incorporating a performance metric that can be measured for each implementation to measure the performance of the processing pipeline with regards to a particular set of parameter values (Profirovic: Abstract).
Regarding claim 2, Situnyake as modified by Profirovic teach wherein the one or more real-time data parameters includes one or more of: an incoming stream size parameter (¶ 162, wherein Profirovic includes parameter for stream data size) a number of stream partitions parameter (¶162 wherein Profirovic includes partition parameters) a data distribution among stream partitions parameter, a publishing pattern parameter (¶723 wherein Profirovic incorporates patterns parameter) a presence of consumer lag parameter, a data type parameter, a type of application parameter, a data processing latency parameter, a relevant percentage parameter, a central processing unit (CPU) and/or memory utilization for consumer nodes parameter, a CPU and/or memory utilization for processor nodes parameter, a time of day parameter, or a day of a week parameter.
Regarding claim 3, Situnyake as modified by Profirovic teach wherein the set of processing parameters includes one or more of: a processing batch size parameter, an application programming interface batch size parameter, a number of stream consumer nodes parameter, a number of stream processor nodes parameter, a number of parallel connections between consumer pods and processor pods parameter, a number of processor threads parameter (¶ 162, wherein Profirovic includes parameter for stream data size), ([0057], [0073] wherein Situnyake discloses a number of training cycles, learning rate, validation set size, neural network topology, neural network size, types of layers, and order of layers), (Abstract, ¶51, ¶76 wherein Profirovic discloses a monitoring component) a commit after count parameter, a commit after time parameter, a central processing unit (CPU) and/or memory allocation for consumer nodes parameter, or a CPU and/or memory allocation for processor nodes parameter (¶ 88, ¶101, ¶147 wherein Profirovic monitors and indexes nodes).
Regarding claim 4, Situnyake as modified by Profirovic teach wherein the machine learning model is associated with one of a multi-class machine learning model or a multi-label machine learning model ([0029], [0032], [0037], [0056] wherein Situnyake discloses a system with a multi-objective optimization that varies one or more parameters for generating the detectable event).
Regarding claim 5, Situnyake as modified by Profirovic teach wherein at least one of the multiple sets of processing parameters or the one or more data parameters are associated with curated data (¶804, wherein Profirovic discloses parameters values that represent usage data)
Regarding claim 6, Situnyake as modified by Profirovic teach wherein at least one of the multiple sets of processing parameters or the one or more data parameters are weighted based on a corresponding usage of infrastructure resources associated with the at least one of the multiple sets of processing parameters or the one or more data parameters ([0033] wherein Situnyake discloses the latency, or inference time, may be an amount of time for the configuration of the pipeline to process input data and produce output data when the configuration is implemented on a target device; the memory usage may be a peak amount of RAM and/or a peak amount of ROM, measured in kilobytes or megabytes, consumed by the target device when implementing the configuration; the energy usage may be a peak amount of power, measured in watts, consumed by the target device when implementing the configuration; and the accuracy may be a fraction or percentage of predictions that the target device correctly determines when implementing the configuration).
Regarding claim 7, the claim is similar in scope to claim 1 therefore the claims are rejected under similar rationale.
Regarding claim 8, Situnyake as modified by Profirovic teach wherein determining the set of optimal processing parameters includes determining the set of optimal processing parameters using the machine learning model, and wherein the method further comprises training the machine learning model based on multiple sets of processing parameters and one or more data parameters associated with the multiple sets of processing parameters (Abstract, [0028], [0032] wherein Situnyake describes a system that may configure a pipeline for a target device. The pipeline may include a signal processing component and aa machine learning component. The pipeline may be configured to receive input data and generate output data based on the input data. For example, the output data may indicate detections in an output stream based on events in the input data in an input stream. The system may determine multiple post-processing configurations for post-processing the output data. A post-processing configuration may be configured to generate a detectable event based on the output data. The multiple post-processing configurations may be generated using a multi-objective optimization that varies one or more parameters for generating the detectable event. Wherein the configuration of the pipeline may include one or more parameters for configuring the signal processing component (e.g., settings that affect signal processing calculations, such as a particular DSP algorithm or noise floor) and/or the machine learning component (e.g., settings that affect machine learning, such as hyperparameters including neural network topology, size, or training). Configurations of the multiple configurations may vary in the one or more parameters that are used, and therefore may vary in configurations of the one or more signal processing components and/or the one or more machine learning components.).
Regarding claim 9, the claim is similar in scope to claim 4 therefore the claims are rejected under similar rationale.
Regarding claim 10, the claim is similar in scope to claim 5 therefore the claims are rejected under similar rationale.
Regarding claim 11, the claim is similar in scope to claim 6 therefore the claims are rejected under similar rationale.
Regarding claim 12, Situnyake as modified by Profirovic teach wherein determining the set of optimal processing parameters includes determining the set of optimal processing parameters using the set of rules, and wherein the set of rules indicates a corresponding set of processing parameters for each of multiple candidates sets of one or more data parameters (¶56, ¶62-63, ¶ 96 wherein Profirovic incorporates configurable rules for associating timestamps with events and utilize one or more rules to process data and to make the data available to downstream systems), (¶187, wherein Profirovic describes bucket merge policy can indicate which buckets are candidates for a merge or which bucket to merge (e.g., based on time ranges, size, tenant/partition or other identifiers), the number of buckets to merge, size or time range parameters for the merged buckets, and/or a frequency for creating the merged buckets. For example, the bucket merge policy can indicate that a certain number of buckets are to be merged, regardless of size of the buckets. As another non-limiting example, the bucket merge policy can indicate that multiple buckets are to be merged until a threshold bucket size is reached (e.g., 750 MB, or 1 GB, or more). As yet another non-limiting example, the bucket merge policy can indicate that buckets having a time range within a set period of time (e.g., 30 sec, 1 min., etc.) are to be merged, regardless of the number or size of the buckets being merged)
Regarding claim 13, the claim is similar in scope to claim 2 therefore the claims are rejected under similar rationale.
Regarding claim 14, the claim is similar in scope to claim 3 therefore the claims are rejected under similar rationale.
Regarding claim 15, Situnyake teaches A non-transitory computer-readable medium storing a set of instructions, the set of instructions ([0217]). The claim is similar in scope to claim 1 therefore the claims are rejected under similar rationale.
Regarding claim 16, the claim is similar in scope to claim 8 therefore the claims are rejected under similar rationale.
Regarding claim 17, the claim is similar in scope to claim 4 therefore the claims are rejected under similar rationale.
Regarding claim 18, the claim is similar in scope to claim 5 therefore the claims are rejected under similar rationale.
Regarding claim 19, the claim is similar in scope to claim 6 therefore the claims are rejected under similar rationale.
Regarding claim 20, the claim is similar in scope to claim 12 therefore the claims are rejected under similar rationale.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to HASSAN MRABI whose telephone number is (571)272-8875. The examiner can normally be reached on Monday-Friday, 7:30am-5pm. Alt, Friday, EST.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Viker Lamardo can be reached on 571-270-5871. 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 the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/HASSAN MRABI/Examiner, Art Unit 2144