This U.S. patent application claims priority under 35 U.S.C. § 119 to: India Application No. 202121032201, filed on Jul. 16, 2021. The entire contents of the aforementioned application are incorporated herein by reference.
This disclosure relates generally to the field of causal inferencing, and more particularly to a system and method for learning disentangled representations for temporal causal inference.
Causal inference refers to an intellectual discipline that considers the assumptions, study designs, and estimation strategies that allow researchers to draw causal conclusions based on data. Temporal causal inference aims to reveal the causal relationship among temporal variables and time series. Further accurate causal inference among time series helps to better understand the interactive scheme behind the temporal variables.
Critical medical decisions pertaining to a treatment plan selection for a patient require reasoning about potential future outcomes given the patient's current state and observed longitudinal clinical data. Further, medical professionals evaluating alternative treatment plans for the patient often encounter time varying confounders, or covariates that affect both the future treatment assignment and the outcome for the patient. A major hurdle in this endeavor is the presence of time-varying confounders, or patient covariates that are causally influenced by past treatments and further influence future treatments and outcomes.
One of the existing techniques attempt to address the problem of time-varying confounders for evaluation of treatment plans using Counterfactual Recurrent Network (CRN) which further uses a Gated Recurrent Unit (GRU) based recurrent model to predict potential future treatment effects by forcing hidden representations that can balance out time-varying confounding. However, these representations in existing techniques curtail the representation of covariates which influence both future treatment assignment and outcome prediction. Further, existing techniques have largely been focused on settings where the treatment and outcome depend only on a static snapshot of the covariates which include statistical techniques that employ reweighting of the data instances to balance the source and target distributions which while unbiased, are known to suffer from high variance.
As mentioned above, the standard randomized control trials, the most reliable technique for evaluating different treatment options, are often impractical in the temporal setting, as it may not be feasible to conduct a trial for every temporal variation of a particular treatment plan.
Embodiments of the present disclosure present technological improvements as solutions to one or more of the above-mentioned technical problems recognized by the inventors in conventional systems. For example, in one embodiment, a method for learning disentangled representations for temporal causal inference is provided. The method includes processing, via one or more hardware processors, a plurality of historical observants ht and treatment at at a timestep t specific to each patient i using an encoder network, wherein the encoder network comprises of a recurrent network with an LSTM (Long short-term memory) unit, wherein the plurality of historical observants ht for each patient i is derived from an observational dataset D={{xti, ati, yt+1i}t=1T
In another aspect, there is provided a system for learning disentangled representations for temporal causal inference. The system comprises: a memory storing instructions; one or more communication interfaces; and one or more hardware processors coupled to the memory via the one or more communication interfaces, wherein the one or more hardware processors are configured by the instructions to: process a plurality of historical observants ht and treatment at at a timestep t specific to each patient i using an encoder network, wherein the encoder network comprises of a recurrent network with an LSTM (Long short-term memory) unit, wherein the plurality of historical observants ht for each patient i is derived from an observational dataset D={{xti, ati, yt+1i}i=1T
In yet another aspect, there are provided one or more non-transitory machine-readable information storage mediums comprising one or more instructions which when executed by one or more hardware processors cause processing a plurality of historical observants ht and treatment at at a timestep t specific to each patient i using an encoder network, wherein the encoder network comprises of a recurrent network with an LSTM (Long short-term memory) unit, wherein the plurality of historical observants ht for each patient i is derived from an observational dataset D={{xti, ati, yt+1i}i=1T
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate exemplary embodiments and, together with the description, serve to explain the disclosed principles.
Exemplary embodiments are described with reference to the accompanying drawings. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. Wherever convenient, the same reference numbers are used throughout the drawings to refer to the same or like parts. While examples and features of disclosed principles are described herein, modifications, adaptations, and other implementations are possible without departing from the scope of the disclosed embodiments. It is intended that the following detailed description be considered as exemplary only, with the true scope being indicated by the following claims.
The present disclosure provides a system and method for learning disentangled representations for temporal causal inference. The existing techniques assumes that all time varying covariates are confounding and thus attempt to balance the full state representation. In reality, a subset of covariates may in fact be confounding and in general unknown and one of the recent works on counterfactual estimation in the static, non-temporal setting has suggested that disentangling the covariate representation into separate factors, where each factor either influence treatment selection, patient outcome or both can help isolate selection bias and restrict balancing efforts to factors that influence outcome, allowing the remaining factors which predict treatment without needlessly being balanced. The present disclosure proposes Disentangled Representations for Temporal Causal Inference (DRTCI), a system for temporal causal inference. The proposed Disentangled Representations for Temporal Causal Inference (DRTCI) system uses a recurrent neural network to learn hidden representation of the patient's evolving covariates that disentangles into three representations. Further each of the three representations causally determine either treatment, outcome or both treatment and outcome.
Referring now to the drawings, and more particularly to
The processor 108 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that facilitates in designing polymeric carrier for controlled release of molecules. Further, the processor 108 may comprise a multi-core architecture. Among other capabilities, the processor 108 is configured to fetch and execute computer-readable instructions or modules stored in the memory 104. The processor 108 may include circuitry implementing, among others, audio and logic functions associated with the communication. For example, the processor 108 may include, but are not limited to, one or more digital signal processors (DSPs), one or more microprocessor, one or more special-purpose computer chips, one or more field-programmable gate arrays (FPGAs), one or more application-specific integrated circuits (ASICs), one or more computer(s), various analog to digital converters, digital to analog converters, and/or other support circuits. The processor 108 thus may also include the functionality to encode messages and/or data or information. The processor 108 may include, among other things, a clock, an arithmetic logic unit (ALU) and logic gates configured to support operation of the processor 108. Further, the processor 108 may include functionality to execute one or more software programs, which may be stored in the memory 104 or otherwise accessible to the processor 108.
The memory 104, may store any number of pieces of information, and data, used by the system 100 to implement the functions of the system 100. The memory 104 may include any computer-readable medium known in the art including, for example, volatile memory, such as static random-access memory (SRAM) and dynamic random-access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes. Examples of volatile memory may include but are not limited to volatile random-access memory (RAM). The non-volatile memory may additionally or alternatively comprise an electrically erasable programmable read only memory (EEPROM), flash memory, hard drive, or the like. The memory 104 may be configured to store information, data, applications, instructions, or the like for enabling the system 100 to carry out various functions in accordance with various example embodiments. Additionally, or alternatively, the memory 104 may be configured to store instructions which when executed by the processor 108 causes the system 100 to behave in a manner as described in various embodiments.
The communication interface(s) 106 can facilitate multiple communications within a wide variety of networks and protocol types, including wired networks, for example, local area network (LAN), cable, etc., and wireless networks, such as Wireless LAN (WLAN), cellular, or satellite. For the purpose, the communication interface (s) 106 may include one or more ports. One or more functionalities of the system 100 and components thereof, is further explained in detail with respect to block diagram described in
Operations of the flowchart, and combinations of operation in the flowchart, may be implemented by various means, such as hardware, firmware, processor, circuitry and/or other device associated with execution of software including one or more computer program instructions. For example, one or more of the procedures described in various embodiments may be embodied by computer program instructions. In an example embodiment, the computer program instructions, which embody the procedures, described in various embodiments may be stored by at least one memory device of a system and executed by at least one processor in the system. Any such computer program instructions may be loaded onto a computer or other programmable system (for example, hardware) to produce a machine, such that the resulting computer or other programmable system embody means for implementing the operations specified in the flowchart. It will be noted herein that the operations of the method 300 are described with help of system 102. However, the operations of the method 300 can be described and/or practiced by using any other system.
The disclosed method 300 relates to the learning of disentangled representations for temporal causal inference. At step 302 of the method, the one or more hardware processors 108 process a plurality of historical observants ht and treatment at at a timestep t specific to each patient i using an encoder network 114 (
s
t
=f
t,s(ht,xt) (1)
At step 306 of the method, the one or more hardware processors 108, learn a first set of disentangled representations comprising an outcome representation (ΦγE(st)), a confounding representation (ΦΔE(st)) and a treatment representation (ΦΓE(st)) by passing the obtained state representation st at each timestep t through a plurality of disentangled-two-layered Exponential Linear Unit (ELU) Multi-Layer Perceptrons (MLPs). The present disclosure and the system and method described herein learn three disentangled representations of the latent state representation st at timestep t which includes the outcome representation (ΦγE(st)) which affects future outcome t+1, the confounding representation (ΦΔE(st)) which affects both future treatment assignment and outcome t+1 and the treatment representation (ΦΓE(st)) which affects the treatment assignment at. All of the above representations are learnt in a disengaged manner which is explained in later sections. The three disentangled representations are learned by passing the representation st at the timestep t through the three disentangled two-layered ELU Multi-Layer perceptron's (MLPs) which includes Φγ(⋅), ΦΔ(⋅), ΦΓ(⋅), parameters of which are learned using a set of loss functions namely a prediction loss, a treatment loss, an imbalance loss, and a weighting loss. The details of the loss functions are described as below:
The concatenation of the confounding representation, the outcome representation, and the treatment at the timestep t is passed to a regression arm (Wγ) comprising of MLP-ELU-MLP layers to predict outcome t+1.
t+1
=W
γ([ΦγE(st),ΦΔE(st),at]) (2)
The present disclosure uses a squared error loss for learning the parameters of the confounding representation and the outcome representation. However, since the objective of the present disclosure is to predict factual as well as counterfactual outcome while the observational dataset D contains only factual outcomes, an importance weighting of squared error is used to emphasize those instances that are more useful for the prediction of the counterfactual outcomes. The aforementioned importance weight is an extension of binary treatment importance weighting introduced to K treatments which is represented as below:
In the above equation (3) p(at), p(Ak) are the marginal probabilities for factual treatment at and treatment option Ak respectively and are computed from the observational dataset D. Further propensity p(Ak|(ΦΔE(st)) is obtained by passing ΦΔE(st) via an WΔ(⋅) (MLP and a soft max layer) with t,W weighting loss as: t,W(WΔ, ΦΔ)=−Σk=1Kat(k)log(p(Ak|ΦΔE(st)). The weighted square error is then used as outcome regression loss (t,P) as: t,P(ΦΔ, Φγ,Wγ)=ωt(t+1−t+1)2.
The treatment loss is employed for learning the logging policy that guides the treatment assignment. For this, both the confounding representation ΦΔE(st) and the treatment representation (ΦΓE(st)) are passed through WΓ(⋅) (MLP and the softmax layer) to learn the propensity of treatment. The treatment loss (t,T) is then used for learning the weights of the confounding representation and the treatment representation as:
t,T(ΦΔ,ΦΓ,WΓ)=−Σk=1Kat(k)log(p(Ak|[ΦΔE(st),ΦΓE)st)])) (4)
To overcome the bias due to the time-varying confounders, the proposed disclosure uses an adversarial imbalance loss (t,l): t,l(Φγ)=−Σk=1Kat(k)log(p(Ak|ΦγE(st))) which ensures that the outcome representation Φγ(st) is not predictive of treatment assignment, i.e., p(ΦγE(st)|A1)= . . . =p(ΦγE(st)|AK). The system 100 computes propensity p(Ak|ΦγE(st))) by passing outcome representation via randomly initialized fixed weight one-layer MLP followed by the softmax layer. It is to be noted that the present disclosure uses shorthand p1(st), p2(st), p3(st) for propensities p(Ak|ΦΔE(st)), p(Ak∈[ΦΔE(st)), ΦΓE(st)]), p(Ak|ΦγE(st)).
At step 308 of the method 300, the one or more hardware processors 108, pass the outcome representation (ΦγE(st)), the confounding representation (ΦΔE(st)) and the treatment at through a set of layers (WγE) comprising the plurality of disentangled-two-layered Exponential Linear Unit (ELU) Multi-Layer Perceptron's (MLPs) at the timestep t to predict an outcome t+1 one timestep ahead of the timestep t. At step 310 of the method 300, the one or more hardware processors 108, concatenate the outcome representation (ΦγE(st)), the confounding representation (ΦΔE(st)) and the treatment representation (ΦΓE(st)) from the encoder network 114 to obtain a unified representation Ψt for each timestep t for each patient i. In an embodiment of the present disclosure, the decoder network 118 is used for extending next time step prediction to multiple (m) timesteps ahead of the timestep t. At step 312 of the method 300, the one or more hardware processors 108, initialize a state of a decoder network 118 comprising a LSTM (Long short-term memory) unit 120 using the unified representation Ψt to obtain a state representation st+m specific to each patient i,m-timestep ahead of the timestep t. The decoder network 118 is trained by splitting the observational dataset D of trajectory of each patient i into shorter sequences of τ timestep represented as {{Ψt}∪{t+m, at+m, t+m+1}m=1τ-1∪{v}}t=1T-τ wherein t+m denotes the predicted outcome m timestep ahead of the timestep t, at+m denotes the treatment at each m timestep ahead of the timestep t and t+m+1 denotes the predicted outcome m+1 timestep ahead of the timestep t. At step 314 of the method 300, the one or more hardware processors 108, learn a second set of disentangled representations comprising an outcome representation (ΦγD(st+m)), a confounding representation (ΦΔD(st+m)) and a treatment representation (ΦΓD(st+m)) by passing the obtained state representation st+m for each m timestep ahead of the timestep t through the plurality of disentangled-two-layered Exponential Linear Unit (ELU) Multi-Layer Perceptron's (MLPs). At step 316 of the method 300, the one or more hardware processors 108, concatenate the outcome representation (ΦγD(st+m)), the confounding representation (ΦΔD(st+m)) and the treatment at+m at each m timestep ahead of timestep t and passing through a set of layers (WγD) comprising the plurality of disentangled-two-layered Exponential Linear Unit (ELU) Multi-Layer Perceptron's (MLPs) to predict outcome t+m+1 m+1 timesteps ahead of the timestep t and proceeding iteratively for all values of m up to τ−1 ahead of the timestep t.
t(ΦΔE,ΦγE,ΦΓE,WΔE,WγE,WΓE;β)=t,P(ΦΔE,ΦγE,WγE)+t,T(ΦΔE,ΦΓE,WΓE)+t,P(WΔE,ΦΔE)−βt,I(ΦγE) (5)
where β is obtained using hyperparameter tuning which is described in later sections and superscript E stands for one or more parameters pertaining to the encoder network 114. The one or more parameters of the encoder network 114 comprises of weights of LSTM unit, weights of Exponential Linear Unit (ELU) and weights of Multi-Layer Perceptron's (MLP's) wherein, weights of LSTM unit, weights of Exponential Linear Unit (ELU) and weights of Multi-Layer Perceptron's (MLP's). The outcome representation (ΦγE(st)), the confounding representation (ΦΔE(st)), and the treatment representation (ΦΓE(st)) at the timestep t are then used to forecast the outcome at the next timestep t+1 as described in equation 2. The present disclosure uses a sequence-to-sequence architecture as depicted in
In the present disclosure, the disentangled representations from the encoder network 114 are concatenated to obtain a unified representation Ψt=ΦγE(st)⊕ΦΔE(st)⊕ΦΓE(st). The representation Ψt is obtained for each timestep for N patients. The observational dataset D is processed by splitting trajectory of each patient i into shorter sequences of T timesteps which is represented as {{Ψt}∪{t+m, at+m, t+m+1}m=1τ-1∪{v}}t=1T-τ for training the decoder network 118. The representation Ψt is used to initialize the state of the decoder network 118 and to finally obtain a state representation for the patient m-timesteps in the future which is represented as:
s
t+m
=f
m,s
D([v,t+m,at+m−1]) (6)
where inputs to the LSTM unit 120 of the decoder network 118 are static covariates v, previous timestep's outcome t+m and previous treatment at+m−1 with superscript D pertaining to one or more parameters of the decoder network 118. The one or more parameters of the decoder network 118 comprises of weights of LSTM unit, weights of Exponential Linear Unit (ELU) and weights of Multi-Layer Perceptron's (MLP's) wherein, weights of LSTM unit, weights of Exponential Linear Unit (ELU) and weights of Multi-Layer Perceptron's (MLP's). The state representation (st+m) is further disentangled into the second set of disentangled representations comprising the confounding representation (ΦΔD(st+m)), the treatment representation (ΦΓD(st+m)), and the outcome representation (ΦγD(st+m)), using t+m (ΦΔD, ΦγD, ΦΓD, WΔD, WγD, WΓD; β) which is the same loss explained in equation 5 computed for m timesteps ahead of the timestep t for learning the one or more parameters decoder network 118. The present disclosure then predicts outcome t+m+1 for m+1 timesteps ahead of t as:
t+m+1
=W
γ
D([ΦγD(st+m),ΦΔD(st+m),at+m]) (7)
and proceed iteratively for all values of m up to τ−1 timesteps ahead of the timestep t. Further, it should be noted that the true t+m is not available as input during test time for the decoder network 118. Hence, previous timestep's outcome predicted by decoder network 118t+m is auto-regressively used as input to the decoder network 118 which is represented in equation 6 for prediction of t+m+1 (refer
In the present disclosure, the experimental set-up used for measuring the performance/efficacy of the DRTCI system as implemented herein comprises of describing the dataset, followed by baselines, evaluation metrics and implementation specifics for evaluation of the DRTCI system. The present disclosure uses a bio-model (as known in the art) for simulating a lung cancer dataset which contains the outcomes for different treatment options including no treatment, chemotherapy, radiotherapy, and both chemotherapy and radiotherapy treatments on tumor growth volume in a longitudinal manner. In the present disclosure, the initial cancer stage and the initial tumor volume are obtained from prior distributions for each patient. The volume of the tumor t days after diagnosis is then obtained using the following mathematical model:
where
where γc, γr are the factors controlling degree of time-varying confounding,
Chemotherapy concentration is given by
and radiotherapy dose is d(t)=2 if applied at timestep t. In the present disclosure, a dataset for a maximum of 60 timesteps is generated and DRTCI system is evaluated under different degrees of time-dependent confounding (γc, γr) and time horizons (τ). For each setting of γc, γr, τ, the present disclosure simulated 10000 patients for training, 1000 for validation and 1000 for testing. For testing of next step ahead prediction using an encoder network 114, the present disclosure simulated volume V (t+1) for each timestep t under all treatment options for each patient while for T-step ahead prediction using the decoder, 2τ counterfactual sequences of outcomes with each sequence is generated giving chemotherapy at one of t, . . . t+τ−1 and similarly radiotherapy at one of t, . . . t+τ−1 timesteps for each timestep t in the patient's trajectory. The present disclosure benchmark the DRTCI system against Marginal Structural Models (MSMs) (as known in the art) which uses logistic regression for inverse propensity weighting and linear regression for prediction, Recurrent Marginal Structural Networks (RMSNs) (as known in the art) which uses a sequence-to-sequence architecture for handling confounders and outcome prediction and Counterfactual Recurrent Network (CRN) (as known in the art) which introduces adversarial balancing for handling confounders and outcome prediction. The performance of the DRTCI system has been measured/tested in terms of normalized root mean squared error % (NRMSE %) with NRMSE %=(RMSE/maximum tumor volume)*100, where
for encoder, with t+1 replaced by t+τ for decoder error computation.
In an embodiment of the present disclosure, the DRTCI system has been evaluated by comparing the DRTCI system performance with baselines for varying degrees of time-varying confounding and for τ-step ahead counterfactual predictions. For instance, the present disclosure compared the DRTCI system for varying degrees of confounding including (a) γc=γr=5, (b) γr=5, γc=0, (c) γr=0, γc=5 with the baseline's approaches mentioned earlier. The present disclosure analyzed the comparison for x-step ahead counterfactual prediction with τ increasing in steps of 1 from 3 to 7 as depicted in Table 1. As evident from Table. 1, the DRTCI system substantially outperformed RMSN, MSM and the current state of art CRN for all different values of T and degree of confounding (γr, γc). The present disclosure further analyzed the performance of DRTCI system for very high degrees of confounding by setting γr=γc=γ∈{6, 7, 8, 9, 10} for τ=1 (next step ahead prediction) and =3, and 5 as represented in Table. 2. The experimental results show that the DRTCI system performance for high confounding is superior to CRN (as known in the art) for next step ahead prediction and better by large margins for τ-step ahead prediction achieving more than 32% and 25% reduction in errors for τ=3 and τ=5 respectively. The achieved experimental results are able to obtain reduction in error since the proposed DRTCI system learns confounding representation which plays a significant role in the outcome prediction, especially when the degree of confounding is high, which is in contrast to known approaches where confounding covariates are balanced for reduction in bias and reliable outcome prediction. Moreover, while in known approaches a shared outcome regression arm would lead to noisy interference between the treatment predictions, whereas in the DRTCI system since only the relevant factors are being used to predict outcomes, noisy interference is greatly reduced, and common knowledge is better utilized across treatments.
In an embodiment, the present disclosure carried out an extensive ablation study to identify the key factors contributing towards the performance of the DRTCI system, wherein the study was performed for 5-step ahead prediction for varying degree of confounding with γ =3, 7, and 10. The present disclosure examined the conditions which includes Φγ: DRTCI system with no disentangled representation but only Φγ as the representation layer, Φθ⊕ΦΔ: DRTCI system with outcome representation Φγ(⋅), the confounding representation ΦΔ(⋅), and no separate representation for only the treatment representation ΦΓ(⋅), Φγ⊕ΦΓ: DRTCI system with the outcome representation Φγ(⋅), the treatment representation ΦΓ(⋅) and no representation for confounding ΦΔ(⋅) as depicted in Table 3. Further, by analyzing the representation layer which contributes most towards the performance, it was observed that the outcome representation (column Φγ) alone does not provide significant performance gains while learning treatment or the confounding representation along with the outcome representation Φγ⊕ΦΔ, Φγ⊕ΦΓ gives a significant performance gain. Thus, the representations which retain confounding and treatment factors such as in the DRTCI system of the present disclosure, has the most significant impact on improvement of counterfactual prediction in longitudinal data, especially when the degree of confounding is high.
Table 4 illustrates the search range of hyperparameters for encoder network 114 and decoder network 118 in the DRTCI system. The present disclosure selects optimal hyperparameters from the search space of hyperparameters, based on minimum NRMSE % in predicting the factual outcome for the validation dataset. Further, for evaluation of NRMSE %, the maximum tumor volume in the data is 1150 cm3. The present disclosure further uses a Tesla v100 with 4 GB GPU, 32 GB RAM for training and hyperparameter optimization for conducting the experiments.
Table 5 illustrates the accuracy of treatment sequence prediction in conjunction with the system and method for learning disentangled representations for temporal causal inference. The present disclosure tested the treatment sequence prediction on 1000 patients with treatment sampled from p2st where ât˜p2st and evaluated using accuracy as metric for different degrees of confounding γ. It can be observed that for increasing γ accuracy of treatment prediction increases which is because, with increase in degree of confounding, factual treatment assignment is more biased and thus, easier to predict.
Hence, the present disclosure provides a system and method for learning disentangled representations for temporal causal inference. The present disclosure a DRTCI system to predict future treatment effects in a temporal setting with time-varying confounding. Further, the present disclosure demonstrated through experimental results that disentangling the recurrent hidden representations in the DRTCI system yielded substantial improvements to the prediction of future treatment effects over the recently proposed CRN model (as known in the art). The present disclosure further shows that the disentanglement is especially effective in situations with extreme confounding and is also beneficial for early prediction with less historical patient data. The present disclosure conducts ablation studies to determine which components of the proposed DRTCI system are contributing most to the improved performance and provide an analysis of the same.
The written description describes the subject matter herein to enable any person skilled in the art to make and use the embodiments. The scope of the subject matter embodiments is defined by the claims and may include other modifications that occur to those skilled in the art. Such other modifications are intended to be within the scope of the claims if they have similar elements that do not differ from the literal language of the claims or if they include equivalent elements with insubstantial differences from the literal language of the claims.
It is to be understood that the scope of the protection is extended to such a program and in addition to a computer-readable means having a message therein; such computer-readable storage means contain program-code means for implementation of one or more steps of the method, when the program runs on a server or mobile device or any suitable programmable device. The hardware device can be any kind of device which can be programmed including e.g., any kind of computer like a server or a personal computer, or the like, or any combination thereof. The device may also include means which could be e.g., hardware means like e.g., an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or a combination of hardware and software means, e.g., an ASIC and an FPGA, or at least one microprocessor and at least one memory with software processing components located therein. Thus, the means can include both hardware means and software means. The method embodiments described herein could be implemented in hardware and software. The device may also include software means. Alternatively, the embodiments may be implemented on different hardware devices, e.g., using a plurality of CPUs.
The embodiments herein can comprise hardware and software elements. The embodiments that are implemented in software include but are not limited to, firmware, resident software, microcode, etc. The functions performed by various components described herein may be implemented in other components or combinations of other components. For the purposes of this description, a computer-usable or computer readable medium can be any apparatus that can comprise, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
The illustrated steps are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope of the disclosed embodiments. Also, the words “comprising,” “having,” “containing,” and “including,” and other similar forms are intended to be equivalent in meaning and be open ended in that an item or items following any one of these words is not meant to be an exhaustive listing of such item or items, or meant to be limited to only the listed item or items. It must also be noted that as used herein and in the appended claims, the singular forms “a,” “an,” and “the” include plural references unless the context clearly dictates otherwise.
Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present disclosure. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e., be non-transitory. Examples include random access memory (RAM), read-only memory (ROM), volatile memory, nonvolatile memory, hard drives, CD ROMs, DVDs, flash drives, disks, and any other known physical storage media.
It is intended that the disclosure and examples be considered as exemplary only, with a true scope of disclosed embodiments being indicated by the following claims.
Number | Date | Country | Kind |
---|---|---|---|
202121032201 | Jul 2021 | IN | national |