Patent Description:
Operating an industrial machine and simultaneously measuring its process parameters belong together. Measuring comprises to measure parameters that are directly related to the process that is ongoing in the machine, such as measuring temperature, pressure, sound, irradiance (as infrared camera reading), light reflection from surfaces, gas concentration, and other physical properties or phenomena. But measuring can also relate to process parameters that are indirectly related to the process, such as measuring physical properties of the materials that go into the machine or of the materials that leave the machine (that result from the process).

In that sense, the industrial machine is a machine under observation.

Further, process parameters can be differentiated by locations within the machine and outside the machine. For example, the temperature distribution can be measured at different parts of the machine.

From a more general view point, an industrial machine can be a machine that performs an industrial process. For example, the machine can be a chemical reactor, a metallurgical furnace, a vessel, an engine. More specifically, in view of the operating principle, the furnace can be a blast furnace. Much simplified, the blast furnace receives ores and coke, as well as hot air (via tuyeres) and provides molten metal.

Measuring is the main purpose of the sensors that are associated with the machine. For example, the machine can be equipped with temperature sensors. Such sensors can be implemented by thermometers, PT100 resistance temperature detectors or other types of temperature sensors.

It is well known that measurement results can be provided in at least two measurement modalities:.

In the example of the blast furnace, the sensors are distributed in various locations, and additionally, the operator usually takes samples of molten material. Simplified, the operator opens a part of the blast furnace hearth to extract the molten material (with a drilling machine, the step called tapping). The material then flows into a runner (called casting) and the operator can inspect the samples for chemical composition, temperature, appearance and the like.

Most of the measuring results turn into measurement data. Regarding data modality, measurement data can have different formats in various complexity, such as for example.

Measurement data is to be processed by one ore more computers. The computers can process the measurement data to obtain indicators for the operating state of the machine. Based on the measurement data and the indicators, the operator can modify operation parameters. For example, the mentioned sample taking may reveal insufficient temperature. Together with other data, the computer indicates to the operator that more coke should be charged into the furnace (the coke amount being an operation parameter).

In many other scenarios, the computer can act directly with the machine in the function of a process controller (e.g., control loop for the temperature parameter).

However, measurement data are not always available, for a number of reasons or constraints. Some of them deserve further attention:.

Computers may calculate indicators for the operating state of the machine if the relations between measurement data is known. For example, a computer in a car may suggest the driver of the car to switch gears. However, in many cases, the relation between measurement data is too complex to be modelled by mathematical equations.

Using neural networks is an option. The network receives measurement data and provides the indicator. To put it simply, the network comprises so-called neurons that are arranged in a plurality of layers. Interconnection between the neurons is governed by so-called weights. The set of weights in a network can be called configuration.

However, the network needs to be trained (to set the weights and other network parameters). Again, in a simplified manner, training involves feeding historical measurement data into the network.

However, the historical data may not be available for a particular machine, especially in situations where machines do not have appropriate counterparts or peers. This lack of historical data is particularly prominent for machines (such as furnaces) that are manufactured at different development stages.

Further background information is available from the following papers:.

An industrial machine operates with a plurality of process parameters, but the industrial machine may not have an appropriate sensor to a particular parameter, or measurement data for that process parameter may not be available for other reasons. A neural network provides a parameter indicator that corresponds to a process parameter in the machine. The network has been trained based on historical data from the reference machines. At least one of the reference machines - the source reference - has a sensor for that process parameter.

The reference machines are different, and in terms of machine learning, they belong to different domains. The training therefor involves transfer learning, or more precisely unsupervised domain adaptation.

By performing a computer-implemented method, the computer trains a neural network to enable the network for later processing a multi-variate measurement time-series with measurement data. The measurement data represent instances of particular process parameters of an industrial machine. The trained network is trained to provide a parameter indicator of a further process parameter for the industrial machine.

In a first receiving step, the computer receives a first multi-variate measurement time-series with historical measurement data from a first reference machine and receives a second multi-variate measurement time-series with historical measurement data from a physically different second reference machine.

In an obtaining step, the computer obtains a set of transformation rules, by processing the first and second multi-variate measurement time-series, such that the transformation rules enable a transformer module to transform the first and second multi-variate measurement time-series into first and second multi-variate feature time-series, respectively. The multi-variate feature time-series are invariant to domain differences of the first and second reference machines.

In a transforming step, the computer transforms the first multi-variate measurement time-series to a first multi-variate feature time-series by the transformer module that applies the transformation rules.

In a second receiving step, the computer receives a uni-variate measurement time-series with measurement data of the further process parameter, from the first reference machine.

In a training step, the computer trains the neural network with the first multi-variate feature time-series at the input of the network, and with the uni-variate measurement time-series at the output of the network.

Optionally, the computer can obtain the set of transformation rules by, in repetitions: transforming the first multi-variate measurement time-series to a first multi-variate feature time-series, and transforming the second multi-variate measurement time-series to a second multi-variate feature time-series, using a set of preliminary transformation rules; discriminating, by a discriminator module the origin of the first and second feature time-series, as the first and second multi-variate measurement time-series; modifying the set of preliminary transformation rules, until the discriminator can no longer discriminate the data origin.

Optionally, the computer can use a discriminator module that determines that is can no longer discriminate the data origin by operating until an adversarial loss reaches a maximal value.

Optionally, the computer can repeat the obtaining step for the transformation rules and the training step, wherein the transformer module further receives network loss provided by the neural network under training so that the repetition stops for minimal network loss.

Optionally, the combination of the transformer module and the discriminator module operates as a generative adversarial network.

Optionally, the computer performs the method steps receiving multivariate measurement time-series, obtaining the set of transformation rules, transforming and training the neural network for multi-variate measurement time-series for that the variates have been determined to be related to the further process parameter by a data selector module.

Optionally, the data selector module is being trained by a selector trainer module that causes the computer to repeat the method steps obtaining, transforming and training, with the criterium to minimize a loss function during the training of the neural network.

Optionally, the computer performs receiving the first and second multi-variate measurement time-series with historical data, after adapting the data modality of the measurement data.

Optionally, the computer can adapt the data modality by at least one of the following: analyzing measurement data with sound samples by classifying the sound samples to categories, and analyzing measurement data with images by classifying the images to categories.

Optionally, the computer repeats adapting for different goals, with goals being selected while minimizing the loss function during the training of the neural network.

Optionally, the computer uses a neural network that is a regression neural network.

Optionally, the measurement data are related to process parameters that are physical properties, selected from the following: temperature, pressure, chemical composition of materials within the machine, visual appearance of a part of the industrial machine, and sound emitted by the industrial machine.

Optionally, the industrial machines are selected from chemical reactors, metallurgical furnaces, vessels, and engines.

Once the neural network has been trained, the computer (or a physically different computer) can perform a computer-implemented method for operating the neural network, with receiving a multi-variate measurement time-series with measurement data for an industrial machine under observation; transforming the multi-variate measurement time-series to a multi-variate feature time-series, and operating the network to provide the parameter indicator.

Optionally, operating the neural network occurs in situations selected from the following: sensor failure, data connection failure, minimization of human involvement for measuring.

A computer program product that, when loaded into a memory of a computer system and executed by at least one processor of the computer system, causes the computer system to perform the steps of a computer-implemented method.

A computer system comprising a plurality of computer-implemented modules which, when executed by the computer system, can perform the steps of a computer-implemented method. Or from a different point of view: the computer system performs the steps of the computer-implemented method.

Further, there is the use of a computer performing a method, acting as a virtual sensor to obtain the parameter indicator that represents a parameter of an industrial machine.

Embodiments of the present invention will now be described in detail with reference to the attached drawings, in which:.

<FIG> illustrates industrial machine <NUM> with multi-variate measurement time-series <NUM> as well as neural network <NUM> with configuration <NUM>, to explain writing conventions.

The figure also illustrates - although symbolically only - that industrial machine <NUM> performs an industrial process with process parameters <NUM>/<NUM>. The process parameters can be split into two groups:.

The attribute "measurement" is related to particular industrial machine <NUM>, in the sense that measurement data goes into multi-variate measurement time-series <NUM> for that machine <NUM>.

For at least one process parameter z, measurement data is missing (i.e., not available). In principle, parameter z is a measurable parameter, but data is not available. The output of neural network <NUM> provides parameter indicator Z' that is a representation of that particular process parameter z. Parameter indicator Z' could be considered as an "artificial measurement value" or as artificial or virtual measurement data. Or in other words, the computer emulates the sensor.

Parameter indicator Z' could serve as a status indicator for machine <NUM> (Z' indicating the status), or Z' could serve as an input variable for a computer or other module that determines the machine status (Z' being one contributor to the status). The description focuses on calculating Z'.

For (human) operator <NUM> of industrial machine <NUM>, network <NUM> appears like a virtual sensor that outputs parameter indicator Z'. In theoretical and ideal situations, indicator Z' would represent physical reality as a real sensor (hardware sensor, physical sensor) would do.

In practical non-ideal situations, the accuracy of parameter indicator Z' (calculated by network <NUM>) would be defined as the difference of indicator Z' from network <NUM> to measurement data Z from an appropriate hardware sensor.

The description explains an approach to determine Z' (<FIG>) and will explain optional measures to increase the accuracy in connection with (<FIG>).

Industrial machine <NUM> (or industrial equipment) is a machine that continuously performs industrial processes. While the description has mentioned examples above, the description focuses on the example of machine <NUM> being a blast furnace.

In view of this blast furnace example, the process parameter z could be the temperature of the molten material. There is no direct measurement value available (temperature sensor missing or other reason, as introduced above), but parameter indicator Z' provides a calculated value. Z' could be further processed to a status indicator (for example, if the furnace is ready for casting because the temperature and other criteria allow that).

To allow network <NUM> providing Z', some method steps need to be executed in advance, including machine learning. For convenience, the description explains the steps in the context of phases. The description may differentiate components being active during the preparation phase **<NUM> (cf. <FIG>), the training phase **<NUM> (cf. <FIG>), and the operation phase **<NUM> (cf. In other words, throughout this description, references noted as **<NUM>/**<NUM>/**<NUM> stand for components that are similar but that are different in these phases. For example, machine <NUM> in <FIG> and machine <NUM> in <FIG> is physically the same machine but operates as a reference machine (or as a machine under observation / supervision).

The description differentiates phases **<NUM>/**<NUM>/**<NUM> in view of the network (that provide the parameter indicator Z'). From that perspective, training occurs in phase **<NUM>.

However, there can be other training loops:.

Process parameters to be measured (or at least to be emulated) will be given by lower-case letters, such as "x" or "z" (symbolized on the left side within machine <NUM>).

The figure illustrates this for parameters x_1 (could be temperature at a particular location inside the machine, e.g., the upper part) and x_2 (for example, the temperature at a different location, the lower part). There are N process parameters {x_n}N and at least one further parameter z. The underscore "_" is a placeholder.

Measurement data is given by upper-case letters, such as X or Z. Parameter indicator Z' is indicated with the prime (') symbol because it stands for de-facto measurement data, or artificial measurement data.

The uppercase convention also applies for intermediate data "Y" (or "feature data", not measured, no output data).

Data (measurement data, intermediate data) can be available in the form of time-series, i.e., series of data values indexed in time order for subsequent time points.

The figure introduces time-series by a short notation (rectangle <NUM>) and by a matrix.

The notation {X1. XM} stands for a single (i.e., uni-variate) time-series with measurement data element Xm (or "elements" in short). The elements Xm are available from time point <NUM> to time point M: X1, X2,. XM (i.e., a "measurement time-series"). Index m is the time point index. Time point m is followed by time point (m+<NUM>), usually in the equidistant interval Δt.

An example is a temperature increase over M time points: {<NUM>. The person skilled in the art can pre-process data values, for example, to normalized values [<NUM>,<NUM>], or {<NUM>. The format of measurement data is not limited to scalars or vectors, {X1. XM} can also stand for a sequence of M images taken from time point <NUM> to time point M. In case of the machines being blast furnaces, the images can be taken from inside the tuyeres of the furnace, or from the direct environment of the blast furnace. Images would be taken to detect anomalies.

The notation {{X1. XM}}N stands for a multi-variate time-series (in <FIG>, reference <NUM> above the matrix) with data element vectors {X_m}N from time point <NUM> to time point M. The vectors have the cardinality N (number of variates, i.e., process parameters for that measurement data is available), that means at any time point from <NUM> to M, there are N data elements available. The matrix indicates the variate index n as the row index (from x_1 to x_N).

For example, the single time-series for the temperature can be accompanied by a single time-series for the pressure, for measurement data regarding chemical composition of materials, or the like.

The person of skill in the art understands that the description is simplified. Realistic variate numbers N can reach and exceed a couple of <NUM>. Time-series are no ideal. Occasionally, an element is missing, but the skilled person can accommodate such situations.

The selection of the time interval Δt and of the number of time points M depends on the process. The overall duration Δt*M of a time-series (i.e., a window size) corresponds to the process parameter shift that takes the longest time. For example, it takes a furnace a couple of hours to process the materials so that Δt*M is selected accordingly.

Intervals Δt are conveniently selected in the range between <NUM> and <NUM> minutes, and Δt*M is conveniently selected in the range between <NUM> hours and <NUM> hours. The example of the blast furnace may apply Δt = <NUM> minutes and M = <NUM>, corresponding to an <NUM>-hour working shift.

As time points tm specify the time for processing by the network, some measurement data may be pre-processed. For example, a temperature sensor may provide data every minute, but for Δt=<NUM> minutes, some data may be discarded, averaged over Δt, or pre-processed otherwise.

As data can originate from different industrial machines, the data origin is occasionally indicated by a <NUM>, <NUM> etc. in front of the { }, or {{. In the example of the <FIG>{{. }} indicates that the multi-variate time-series comes from machine <NUM>.

As it will be explained, the computer applies an X-to-Y transformation. The resulting values can be multivariate time-series as well. Cardinalities are given by K.

As used herein, references <NUM>** point to the industrial machine in the real world (physical world), references <NUM>** point to data (such as the configuration <NUM>), references <NUM>** point to hardware and to computer-implemented modules (such as to neural network <NUM>); and references <NUM>** or <NUM>** point to method steps (cf.

The notation "the computer" (in singular, without reference) stands for a computing function or for a function of a computer-implemented module (such as processing units, are time-shared resources of such units). The functions can be distributed to different physical computers, wherein the computer-implemented modules would be distributed to such different computers.

The figures also illustrate a computer program or a computer program product. The computer program product - when loaded into a memory of a computer and being executed by at least one processor of the computer - performs the steps of a computer-implemented method. In other words, the program provides the instructions for the modules.

From a different perspective, the figures illustrate the modules of a computer system comprising a plurality of computer-implemented modules which, when executed by the computer system, perform the steps of the computer-implemented method. The industrial machines are not considered as computer-implemented modules.

The figure also symbolizes neural network <NUM> with neurons (circle symbols) arranged in layers (neurons in one vertical line). Neural network <NUM> is an example for a machine learning tool. Some of the other modules described herein use machine learning as well.

There are two basic descriptors for such networks:.

Hyperparameters are described in the art, usually as network architecture.

Configuration <NUM> defines the weighted data transmission from neuron to neuron, and defines bias (or offset) values for the neurons. Configuration <NUM> is obtained by training.

Neural network <NUM> is illustrated here only as an example. <FIG> illustrate further tools (such as to adapt data modality, select relevant data, data transformers) for that the architecture and configuration conventions apply as well.

Industrial machine <NUM> (<FIG>) is not the only available machine for that measurement data. Other industrial machines for that measurement data are available as well, hereinafter the "peer machines". Peer machines operate according to the same principle, but can differ in some aspects.

Regarding such differences, the industrial machines can be regarded as belonging to first and second domains.

One of the peer machines can supply additional measurement data to train the network. The description refers to machine <NUM>/<NUM> being the source (providing real measurement data Z for parameter z) and to machine <NUM> being the target (for that the network calculates indicator Z'). A peer machine providing data for training is also called "reference machine". Both the source machine and the target machine are reference machines in the sense that both can provide measurement data used in the preparation phase **<NUM>. One of them (the source machine) has a sensor that the other does not have (the target machine). The source machine is the source of data used in the training phase **<NUM>.

The domain differences between reference machines are characterized by different operational modes. Such differences in operation are induced by different parametrization of the machines, or by different environments impacting the underlying process operated by the machine.

To stay with the blast furnace example, two peer machines process the same metal, use the same materials (such as ore and coke), have sensors at comparable locations, for the same parameters and so on.

But there are differences: a first furnace may be larger than a second furnace (size difference) or the furnaces may have slightly different shape, resulting in slightly different measurement values, such as in the volume of molten material, the time to melt, and so on. The size difference is prominent in furnaces that have different heights (cf. <FIG> for an example).

The domain differences cause different measurement data for the same equivalent parameters.

Also, domain differences are the result of applying different measurement methods.

Due to the domain differences, the computer applies data transformation.

To give an illustrative example, let us briefly refer to music. Both organ pipes and blast furnaces generate sound from moving air. Longer organ pipes play at lower frequencies than shorter organ pipes. But human listeners have learned to recognize melodies, that means sequences of tones with different relative frequencies. Melodies are invariant to absolute frequencies.

As sounds from the furnace can be used as measurement data, the transformation separates out the melody from the pitch. In other words, an appropriately adapted transformer may receive two time-series <NUM>{X1. XM} and <NUM>{X1. XM} from first and second furnaces and provide melodies (domain invariant) that can be further processed (such as by comparison).

For simplicity of explanation, the description initially assumes that measurement data have the same data modality. Measurement data in time-series are assumed to comprise scalars only. Optional modality adaptation will be discussed with <FIG>.

For further simplicity of explanation, the description initially also assumes that all parameters x_1 to x_N may influence parameter z. Therefore, the computer processes them all. Optionally, relevant differences can be taken into account, the description will explain details with <FIG>.

In the following, the description explains steps that one or more computers execute to obtain the configuration. The description of the figures follows the sequence of steps. It is however convenient to have an overview to <FIG> starting from the end.

During its operation (cf. <FIG>), industrial machine <NUM> provides measurement data to neural network <NUM> that provides parameter indicator Z'.

Transformer <NUM> can provide intermediate time-series <NUM> because:.

Training network <NUM> to obtain configuration <NUM> (cf. <FIG>) is possible because:.

To keep the illustration simple, <FIG> show measurement data coming from sensors. However, some measurement data could also arrive via human-machine interfaces or the like. For convenience, the sensors are referenced as the measurement data that they provide: X1. XN, also Z, in small round-shaped square symbols.

<FIG> illustrates industrial machines and computer modules in preparation phase **<NUM> to obtain (<NUM>) a set of transformation rules.

Industrial machines <NUM>, <NUM> each have sensors X1 to XN (common sensors because they provide data for common process parameters). Machine <NUM> has sensor Z (illustrated in bold) to provide uni-variate measurement time-series <NUM><NUM>{{X1. XM}}N, but machine <NUM> does not have such sensor.

Information measurement data Z will be "exchanged" between peers, not directly, but during the establishment of rules. Machine <NUM> is the "source" and machine <NUM> is the "target". Machine <NUM> is the only machine with sensor Z.

The process parameter xn is available in both reference machines (1xn for the source and 2xn for the target, cf. the matrix in <FIG>). For example, both machines have the temperature parameter for the upper part of the furnace. The process parameter x(n+<NUM>) is also available in both machines, for example, being the temperature for the lower part.

In other words, process parameters that are available in both reference machines are equivalent parameters. Equivalent parameters are marked by equal variate index n.

Equivalent parameters lead to equivalent measurement data.

Sensor Xn of machine <NUM> ("source") and sensor Xn of machine <NUM> ("target") are equivalent as the resulting measurement data refers to the same parameter, for example, both are temperature sensors in the upper part. Sensor Xn of machine <NUM> and sensor X(n+<NUM>) of machine <NUM> are not equivalent.

A parameter is singular (e.g., temperature at the upper part), but measurement data is plural (e.g., two furnaces).

Sensors of different machines that provide measurement data for equivalent parameters are equivalent sensors. Equivalent sensors do not have to operate according to the same principle.

For example, sensor Xn (of source) and Xn (of target) both provide the top gas temperature. Xn (source machine) does this by an invasive approach (moving a bar with attached sensors above the burden) and Xn (target machine) by sound transmitters and receivers above the burden (i.e., above the furnace charge).

In general, training a machine learning tool (such as the network) requires historical data. The operation of transformer <NUM>/<NUM> starts with receiving.

Although the figure illustrates receiving by arrows, the person of skill in the art will store the time-series in databases. There is no need for further explanation herein.

However, feeding {{X1. XM}}N into a tool that is being trained (such as transformer to learn rules) alone is not sufficient for M*N data elements (cf. the matrix in <FIG>). There are two options:.

First, historical data could come from multiple physical machines <NUM>/<NUM> (not from two machines only but from many more). This option is just symbolized by the dashed repetitions of the boxes. In practical terms (heterogeneous fleet) such an approach is however not available to furnaces.

Second, physical machines <NUM>/<NUM> provide data in repetitions. The second option is preferred.

<FIG> illustrates multiple {{. }}N (and also {{. }}K) by two round-shaped rectangles (in overlay fashion). The figure also illustrates an arrow Q. A further notation would be {{{.

Q is the number of multi-variate measurement time-series. It is convenient to have equal Q for all machines. In practical terms this however not always possible. A machine might be "younger" (Q smaller) than its peer machine (Q larger).

To stay with the above-introduced example, Δt*M = <NUM> hours, a machine would have collected Q= <NUM>*<NUM> multi-variate measurement time-series over a year. In other words, Q can have a magnitude of <NUM> per year. There is no need to take all available data into account. Sometimes the machine may be in maintenance or repair mode so that historic measurement data would not be available.

The <NUM>-hour time slot is convenient for illustration. The computer can however apply a window slot T_WINDOW to compute the features of the multi-variate time-series. Such a window slot can be defined as a moving time window with the duration of several hours (e.g., <NUM> hours). The window slot can move over the data collected over a longer period (e.g., over a year) with an overlap (T_OVERLAP). Convenient relations between T_WINDOW and T_OVERLAP are, for example, T_WINDOW > T_OVERLAP (or even equal). Having T_WINDOW in the order of <NUM> to <NUM> hours is convenient, with T_OVERLAP in the between <NUM> and <NUM> hours.

Despite the mentioned equivalences (in parameters, sensors), historical data still reflect domain differences.

The computer obtains (step <NUM> in <FIG>) a set of transformation rules <NUM> (in <FIG>) /<NUM> (in <FIG>)by processing the multi-variate measurement time-series <NUM> and <NUM>. Transformation rules <NUM>/<NUM> enable transformer <NUM>/<NUM> to convert multi-variate measurement time-series <NUM>, <NUM> ({{. }}) into multi-variate feature time-series <NUM> and <NUM>, respectively. These feature time-series <NUM>{{Y1. YM}}K and <NUM>{{Y1. YM}} are invariant to the domain differences of reference machines <NUM>/<NUM>.

In other words, the domain-invariant features have been extracted.

Using multiple multi-variate measurement time-series (cf. Q) is just mentioned, the transformation does not change that.

Transformer <NUM>/<NUM> is illustrated here by two boxes, because time-series <NUM> is transformed to time-series <NUM>, and time-series <NUM> is transformed to time-series <NUM>. It does not matter if the transformation is performed in parallel (as in the figure) or serially. Both transformers use the common rules <NUM>/<NUM>.

The rules are obtained by training. There is no need for involving a human expert herein. In other words, the domain adaptation (having features instead of measurement data) is unsupervised. Using expert annotations or labels are not required. Optionally, the expert can define some rules manually, based on existing expert knowledge. Defining some rules manually can further ensure the convergence of the training.

As the network has been trained with training data from different domains, transfer learning is involved.

Simplified, there is a transformation that converts the first and second multi-variate measurement time-series <NUM>, <NUM> into first and second multi-variate feature time-series <NUM>, <NUM>, respectively. The multi-variate feature time-series <NUM>, <NUM> are invariant to domain differences of the reference machines <NUM>, <NUM>.

In other words, transformation extracts features that are no longer domain specific. The measurement time-series can be regarded as belonging to first space (or input space) and the feature time-series can be regarded as belonging to a second space (or feature space). The input space is sensitive to domain differences, the feature space is not.

There is an assumption of a causal relation between space X and the space Y that represents a continuous space for regression.

The marginal distribution in both domains (source=s, target=t) are similar:
ps(ys|T(xs)) ≈ pt(yt|T(xt)) where ys is the output data in the source domain ("s"), and yt is the output data in the target domain ("t").

The transformation rules follow the principle Y = T(X). In more detail, transformers <NUM>, <NUM> operate according to the time intervals Δt: transformer <NUM> transforms data vector <NUM>{X1}N to data vector <NUM>{Y1}K, and transformer <NUM> transforms data vector <NUM>{X2}N to data vector <NUM>{Y2}K for t=<NUM>. Next, they transform <NUM>{X2}N to <NUM>{Y2}K and <NUM>{X2}N to <NUM>{Y2}K for t=<NUM>, and so on until t=M.

As the variates of {{X1. XM}} N are not necessarily identical with the variates of {{Y1. YM}}K, the transformation can change the variate cardinality (usually N > K).

Although the transformation rules are introduced here for operations with data at tm (vertically, processing data vectors for time intervals tm), the rules can optionally be expanded to process data from predecessor time points (m-<NUM>), (m-<NUM>) and so on. The skilled person is familiar with such recurrent networks.

As transformation has been described in the art, the skilled person can select from existing transformation schemes.

For convenience, the following further papers are mentioned:.

Features for multimodal multi-variate time series are extracted by an algorithm such as but not limited to, recurrent neural network (Hochreiter) potentially combined with convolutional neural networks, or transformers (Vaswani) or wavenet (Borovykh, van den Oord).

The transformation function T can be identified by minimizing the dissimilarity between both class-conditional distributions ps(t(xs)|ys) ≈ pt(t(xt)|yt).

The transformation function t() for domain invariant features definition, is typically discovered by training an adversarial deep learning model, where the transformation converges to generate features where the source or target domains cannot be distinguished from each other while the loss of the regressive model predicting the output is minimized.

The following paper provides further background information: <NPL>).

The description assumes that the transformer has obtained rules <NUM>/<NUM> already. The following describes an optional approach to obtain the rules by applying adversarial (deep) learning.

The approach can be summarized by a couple of method steps that are presented as a sub-step of the step of obtaining rules <NUM> (cf. Obtaining <NUM> the set of transformation rules <NUM>/<NUM> can be performed by the computer that repeats the following:.

In a transforming step <NUM>, and using a set of preliminary transformation rules, the computer transforms (first) multi-variate measurement time-series <NUM> to (first) multi-variate feature time-series <NUM>, and transforms the (second) multi-variate measurement time-series <NUM> to a (second) multi-variate feature time-series <NUM>. Details have been described above.

In a discriminating step <NUM>, the computer uses discriminator module <NUM> to differentiate (or "discriminate") the origin of the first and second feature time-series <NUM>, <NUM> as originating from the (first) and (second) multi-variate measurement time-series <NUM>, <NUM>. In the initial repetitions, discriminator <NUM> can "easily" discriminate them. <FIG> symbolizes this by a diagram with the learn time (the overall time for the repetitions). On the left (early learning), the discriminator can make the difference: X to Y from <NUM> (the first machine / domain) or from <NUM> (the second machine / domain). On the right, the discriminator cannot.

In a modifying step <NUM>, the computer modifies the set of preliminary transformation rules (or modifies the rules of the current repetition).

The computer repeats steps <NUM>, <NUM>, and <NUM> until discriminator <NUM> can no longer discriminate the data origin (i.e., from <NUM> or <NUM>). To determine that it is no longer able to discriminate the data origin, discriminator <NUM> can calculate an adversarial loss ADLOSS. Discriminator <NUM> would continue to operate (and to let the rules change) until ADLOSS reaches a maximal value.

Transformation rules <NUM>/<NUM> become the final rules to be applied in the next steps.

In this particular approach, the rules are obtained by a learning process with a learning goal that appears paradoxically.

In other words, the combination of transformer <NUM>/<NUM> and discriminator <NUM> is being trained (with the setting changed for the rules) to classify (or "predict") if the features are related from the source machine or to the target machine.

In other words, the same encoder (or transformer, with the rules being prepared in the repetitions) is shared between the source and target domains (or first and second reference machine) and the encoder which is expected to extract domain-invariant representations with the help of an adversarial discriminator (i.e., discriminator <NUM>).

For further details, the following papers can be consulted.

Adversarial training is further outlined in <NPL>.

Obtaining the rules by a learning approach belongs to preparation phase **<NUM>. This is not the same as training the network to be explained next.

<FIG> illustrates reference industrial machine <NUM>, transformer module <NUM> ("transformer <NUM>" in short) and network <NUM> (under training) during training phase **<NUM>.

Transformer <NUM> transforms (step <NUM> in <FIG>) multi-variate measurement time-series <NUM> to multi-variate feature time-series <NUM>. Time-series <NUM> can be the same as time-series <NUM> (cf. Transformer <NUM> applies the transformation rules <NUM> (cf. rules <NUM> in <FIG>, when finalized). As symbolized by multiple overlay rectangles, transformer <NUM> processes multiple multi-variate measurement time-series (cf. Qas introduced in <FIG>).

The computer receives (step <NUM> in <FIG>) a uni-variate measurement time-series <NUM> (i.e., <NUM>{Z1. ZM}) with measurement data (Z) of the further process parameter (z) from reference machine <NUM>, usually in multiple series as well. In that sense, industrial machine <NUM> acts as reference that provides measurement data from real measurement (such as from sensors X1 to XM and from sensor Z).

Network <NUM> is being trained (step <NUM> in <FIG>) with the first multi-variate feature time-series (<NUM>) at the input, and with the uni-variate measurement time-series (<NUM>) at the output.

The person of skill in the art can perform training with appropriate hyperparameters, optimization goals and the like. By way of example, the training will be finalized when a loss function reaches a particular pre-defined value. During training, the intermediate calculation value LOSS (or "network loss") will change and eventually reach a minimum so the weights and the bias values can be taken over to the configuration. In other words, LOSS is a control parameter for network-internal processing loops.

LOSS can also be used for controlling loops that are external to network <NUM>. The figure illustrates that intermediate calculation value LOSS can be provided by network <NUM>. As it will be explained with respect to <FIG>, LOSS can be used by selector trainer <NUM> in further loop. In other words, LOSS can also be a control parameter for one or more network-external processing loops.

Further, LOSS can be provided to transformer (cf. <FIG>) as a parameter that optimizes the transformation rules.

<FIG> illustrates industrial machine <NUM> (of <FIG>) and transformer module <NUM> (cf. <FIG>) during the operation phase **<NUM> to provide parameter indicator Z'. <FIG> is an updated version of <FIG> for that details have been explained above.

The computer receives (cf. step <NUM> in <FIG>) multi-variate measurement time-series <NUM> (also noted <NUM>{{X1. XM}}N) with measurement data for industrial machine <NUM>. Here, machine <NUM> is the machine under observation, without a sensor to measure parameter z.

Transformer <NUM> transforms multi-variate measurement time-series <NUM> to a multi-variate feature time-series <NUM> (also <NUM>{{Y1.

Network receives multi-variate feature time-series <NUM> and provides parameter indicator Z'. Network <NUM> is illustrated with configuration <NUM>.

It is noted that - in difference to <FIG> - the time-series are singular time-series (i.e., for a particular working shift etc.).

<FIG> illustrates flowcharts of computer-implemented method <NUM> to a train neural network <NUM>/<NUM> and of computer-implemented method <NUM> to use the network during the operation of industrial machine <NUM>.

Method <NUM> is a computer-implemented method to train neural network <NUM>. Network <NUM> is being trained for later processing a multi-variate measurement time-series (cf. <NUM> in <FIG>) with measurement data that represent instances of particular process parameters (cf. <NUM> in <FIG>) of an industrial machine (cf. <NUM> in <FIG>) and thereby to provide a parameter indicator Z' of a further process parameter (cf. <NUM>, z in <FIG>) for the industrial machine.

In step receiving <NUM>, the computer receives a first multi-variate measurement time-series with historical measurement data from a first reference machine and a receives a second multi-variate measurement time-series with historical measurement data from a physically different second reference machine (<NUM>{{X1. XM}}N) and <NUM>{{X1. XM}}N), cf. the left side of <FIG>).

In obtaining step <NUM>, the computer obtains a set of transformation rules <NUM>/<NUM> by processing the first and second multi-variate measurement time-series, such that the transformation rules <NUM>/<NUM> enable a transformer (cf. <NUM>/<NUM> in <FIG>) to transform the first and second multi-variate measurement time-series into first and second multi-variate feature time-series (cf. <NUM>, <NUM> in <FIG>, also noted as <NUM>{{Y1. YM}}K, <NUM>{{Y1. YM}}K), respectively. The multi-variate feature time-series are invariant to domain differences of the first and second reference machines (cf. <NUM>, <NUM>, <FIG>). (Both reference machines belong to different domains, with the details explained.

In transforming step <NUM>, the computer transforms the first multi-variate measurement time-series into a first multi-variate feature time-series by the transformer (<NUM>, in <FIG>) that applies the transformation rules.

In receiving step (<NUM>), the computer receives a uni-variate measurement time-series with measurement data Z of the further process parameter z, from the first reference machine (cf. <NUM> in <FIG>).

In step training <NUM> the neural network <NUM>, the computer trains the network with the first multi-variate feature time-series at the input of the network, and with the uni-variate measurement time-series at the output of the network.

<FIG> also illustrates optional details (dashed boxes) for obtaining <NUM> the set of transformation rules. The computer performs steps <NUM>, <NUM>, and <NUM> in repetitions.

In transforming step <NUM>, the computer transforms the first multi-variate measurement time-series to a first multi-variate feature time-series, and transforms the second multi-variate measurement time-series to a second multi-variate feature time-series, using a set of transformation rules that are preliminary rules.

In discriminating step <NUM>, the computer runs discriminator <NUM> to differentiate (or discriminate) the origin of the first and second feature time-series as the first and second multi-variate measurement time-series.

In modifying step <NUM>, the computer modifies the set of preliminary transformation rules.

The repetition step stops when the discriminator (<NUM>) can no longer discriminate the data origin (i.e., a REPEAT UNTIL or WHILE loop).

Details for the steps in method <NUM> are explained in the context of the description.

Regarding computer-implemented method <NUM> to use the network during the operation of the industrial machine, the figure illustrates the steps and refers to <FIG>.

In step receiving <NUM>, the computer receives a multi-variate measurement time-series with measurement data for an industrial machine under observation, in step transforming <NUM>, it transforms the multi-variate measurement time-series to a multi-variate feature time-series, and in step operating <NUM>, it operates network <NUM> to provide the parameter indicator Z'.

It is again noted that the computers for methods <NUM> and <NUM> can be physically different computers. The common data would be the configuration <NUM> (resulting from training).

As shortly mentioned above, the accuracy of indicator Z' corresponds to the difference to measurement data Z (if available). Much simplified, lower difference means higher accuracy.

The description will now explain two approaches that can increase the accuracy. Once approach (adaptation) increases the number of variates to be processed, and the other approach (selection) decreases the number of variates.

At first glance, both approaches seem to be contradicting, but they are related. For convenience, the description introduces them separately and discusses the relations afterwards.

So far the description has explained the approach for measurement data in time-series comprising scalars only, with {X1. XM} being a sequence of M consecutive scalar values. It does not matter if the computer represents the scalar by an integer or by a real number.

The description now discusses how measurement data in other modalities can be adapted for processing.

<FIG> illustrates optional modality adapter module <NUM> (or "adapter" in short) that optionally implements a modality adaptation of measurement data. By way of example, the figure illustrates adapter <NUM> during operation phase **<NUM>, but adapter <NUM> can operated in other phases as well.

Adapter <NUM> receives multi-variate measurement time-series <NUM> (also noted as {{X1. XM}}) from an industrial machine (illustrated as machine <NUM> by way of example, but the data origin "<NUM>" or "<NUM>" does not matter). The term "receive" corresponds to method step <NUM> as well as to method step <NUM> (cf. Adapter <NUM> can be implemented accordingly as part of the module that performs the receiving.

The multi-variate measurement time-series {{X1. XM}}N comprises uni-variate measurement time-series {X1. XM} that are sequences of scalar elements, or non-scalar elements. In the example, uni-variate time-series {X1. XM}n should comprise the non-scalar elements Xn.

As a side-note, in many situations, <NUM>{Z1. ZM} would be scalar only. However, this is not required, so that <NUM>{Z1. ZM} could also be a vector or the like.

Adapter <NUM> passes the time-series with scalars to other modules, substantially unchanged. These time-series do not even have to go through the adapter.

Adapter <NUM> processes the non-scalar elements Xn individually, but according to rules for each n. The figure illustrates the non-scalar element Xn highly symbolically. Thereby, the computer can process the elements and assign them a scalar (by classification) here given as Xn~. The~ merely indicates that the assignment took place.

In a first scenario, the non-scalar elements are images (i.e., matrices with pixels that indicate colors). For example, the images show an inspection hole of the machine photographed every time interval Δt (the exposure time for the image can be neglected).

In the blast furnace example, the inspection uses the tuyeres and let the viewer see a fire inside the furnace. Fires occur during the operation regularly. Much simplified, an image showing fire can be coded to <NUM>, and an image without fire to <NUM>. The resulting time-series could be {. }~ = {<NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>. <NUM>, <NUM>}~ and the computer would continue processing (by the steps that follow, such as obtain rules <NUM>, or transform <NUM>, cf. <FIG> or even receive <NUM>).

In the second scenario, the non-scalar elements are sound sequences. For example, Xn can be an audio record for duration of the Δt = <NUM> time interval, from a microphone sensor. The person skilled in the art can apply appropriate sound processing, for example, by sampling the sound at a frequency of <NUM>, leading to <NUM>*<NUM>*<NUM>,<NUM> audio samples per second.

Adapter <NUM> would then process these millions of samples to a single scalar. For example, the scalar could indicate: pitch rising during Δt, pitch falling during Δt, pitch constant during Δt, pitch rising and falling during Δt (as in the example) and so on.

Adapter <NUM> can be implemented by a neural network that has been trained before, potentially under supervision (by human experts). For example, adapter <NUM> could have been trained with annotated images showing fire (in blast furnaces), annotated sound sequences (taken from blast furnaces) and so on. Adapter <NUM> can also be trained in an unsupervised manner in order to identify an abstract representation of the image. That ensures the maximization of the informative content of the image. A sequence of images is then reduced by this process to few sequences of scalars.

Assigning a scalar does not necessarily mean that the measurement data is related to indicator Z'. The figures shows that the adaptation can use differently trained networks, so that the scalars can be different Xn~ and Xn~~ for the same input Xn. The "<NUM>" and "<NUM>" in the figures are just taken for illustration. The consequences for having different scalars for the same input will be discussed below.

Some process parameters are not related to parameter z. In other words, an overall set of process parameters (x_1 to x_N, with the cardinality of N variates) can be divided into.

To use the music example, in a further excursion, it does not matter if a melody is played "largo" or "allegro", at least for the listener, the melody is the same.

In an ideal situation, network <NUM> would have been trained to simply ignore the measurement data for the parameters of the second sub-set. In realistic training scenarios, some measurement data (second sub-set) might still contribute to indicator Z'.

It is noted that training can be conducted without the participation of human experts. There is - however - no need to introduce such supervision to the training.

Experts for industrial machines can identify the relevant parameter set based on experience. Only measurement data with expert-identified relevance would go into the computers. Involving the expert at this point would be a once-only effort.

For example, the power consumption of the furnace may not influence the temperature (the exemplary z parameter) and consumption data may be disregarded (by not processing measurement for the consumption).

In addition to manual pre-selection and in alternative thereto, the relevance identification can be performed by the computer, by selecting measurement data. An example is explained next.

<FIG> illustrates optional data selector module <NUM> (or "selector" in short) that optionally implements a selection of relevant measurement data. The figure illustrates selector <NUM> during operation phase **<NUM> at the top, and illustrates its conditioning during phases **<NUM> and **<NUM> by repeating some method steps from <FIG>.

In operation, selector <NUM> receives multi-variate measurement time-series <NUM> (cf. <FIG> and <FIG>, also noted {{X1. XM}}N) and forwards modified multi-variate measurement time-series <NUM> (also noted {{X1. XM}}H) to transformer <NUM> (cf.

The modification is a selection (i.e., a positive selection from N variates to H variates in {{. }}H, with H < N). In other words, this corresponds to the selection of the relevant parameter set (but at measurement data level). The figure illustrates the selection by showing less sensor symbols at the output of selector <NUM> (compared to the machine).

Performing method <NUM> (cf. <FIG>) with a reduced set of measurement data can improve the accuracy of providing indicator Z'. This approach may appear paradoxically: the selector blocks some data to be processed by the network but the accuracy may rise. However, the selection sorts out measurement data that network <NUM> potentially cannot ignore and that potentially could decrease the accuracy. Again, the unsupervised nature of training the network (cf. <FIG>) is noted.

Selector <NUM> can be configured by a learning process that uses the loss function of network <NUM>/<NUM> as a value to minimize. This approach is symbolized by selector trainer module <NUM> (or "selector trainer" in short).

Selector trainer <NUM> communicates with other modules, such as with network <NUM> (under training, receiving LOSS) and performs a method that is symbolized by a flowchart.

In repetitions, until the intermediate value LOSS - in other words the loss function - has a minimum ("min loss", YES), selector trainer <NUM> changes a (preliminary) selection ({{. }}N) and let the components perform method <NUM> (cf. <FIG>), that means (optionally) receive <NUM>, obtain rules <NUM>, transform <NUM>, (optionally) receive <NUM> and train <NUM>. Receiving is optional, because the received data remains unchanged.

In other words, a preliminary selection {{. }}H of variate is replaced by another selection until LOSS is minimal for a final selection.

The explanation is simplified, and the skilled person can implement the method accordingly. For example, there is no need to repeat receiving step <NUM> (because <NUM>{Z1. ZM} is not to be de-selected).

Once the loss function reaches a minimum, operations explained in <FIG> are performed with {{. }}H instead of {{. }}N (i.e., during the operation phase **<NUM> as explained for the top of the figure).

Optionally, the operation of selector <NUM> can be enhanced by selecting some variates of the measurement time-series and by combining or merging them to a resulting measurement time-series. For example, selector <NUM> could select {. }<NUM>, and {. }<NUM> (such as temperatures from <NUM> locations) and combine them to a new uni-variate measurement time-series (to be part of {{.

The person of skill in the art can implement such as selection-combination by principal component analysis.

The modules that perform data modality adaptation (cf. <FIG>) and relevance selection (cf. <FIG>) operate independently from each other in phase **<NUM>.

To save computation resources, it is however convenient to let data selector <NUM> operate in preference over modality adapter <NUM>, at least during the operation phase **<NUM>. For example, there is no need to process an audio record into a scalar (cf. <FIG>) and then filter the scalar out by selector <NUM>.

Although to-scalar-adaptation lets the network process more data, some adaptation may introduce errors. By assigning scalars, adapter may apply differently trained networks. Some results may be relevant for Z', some others not. For example, the analysis of the sound sequences into categories such as rising/falling/constant pitch may not be related to Z', but analysis into other categories such as oscillating / stable sound may be related to Z' indeed. In that sense, differently obtained scalars Xn~ and Xn~~ (cf. <FIG>) could be treated as a relevance selection (<FIG>).

The description now shortly returns to <FIG>. As already explained, the transformation rules are obtained in the preparation phase **<NUM> so that the transformer provides feature time-series that are invariant to domain differences. Adversarial loss (ADLOSS cf. <FIG>) is a criterion.

To further increase the accuracy, the transformation rules can be enhanced by considering the network loss (LOSS cf. Thereby, the computer can operate in a loop that comprises steps of the preparation phase **<NUM> and the training phase **<NUM> (that is performed as preliminary training).

In other words, the steps of obtaining <NUM> a set of transformation rules and of training <NUM> neural network <NUM> are repeated. Transformer <NUM>/<NUM> further receives network loss (LOSS) provided by the network under training. The repetition can stop for minimal network loss LOSS.

To illustrates this optional approach, <FIG> shows the reception of LOSS by a dashed line. While ADLOSS is maximized, LOSS is minimized. The skilled person can apply other conventions.

<FIG> illustrates a use-case with industrial machines <NUM>, <NUM> and <NUM> being blast furnaces. There are multiple temperature parameters (symbolized by different values from <NUM> to <NUM>) and other process parameters (such a pressure values, chemical composition of materials, etc.).

Domain differences are illustrated by two examples: The size difference is symbolized by furnace <NUM> being smaller than furnaces <NUM> and <NUM>. Furnaces <NUM> and <NUM> apply different measurement methods for the temperature of the molten material (hot metal temperature): far-distance sensor <NUM> (camera symbol) at furnace <NUM> leads to a time-series with samples available at Δt (e.g., <NUM>). Manual measurement by the operator of furnace <NUM> leads to temperature values available at larger intervals (e.g., <NUM>), as mentioned in the background section.

In this exemplary use case, virtual sensor <NUM> obtains indicator Z' (for the temperature), at Δt. Although illustrated by a small and dotted symbol camera symbol, this virtual sensor stands for the computer executing method <NUM> (cf. In other words, the figure generally illustrates the use of the computer performing (or executing) method <NUM> (and being trained according to method <NUM>) to obtain parameter indicator Z' that represents a parameter of an industrial machine. This use of the computer that performs method <NUM> can be regarded as a using a virtual sensor.

Furnaces <NUM> and <NUM> can be physically the same things, but furnace <NUM> operates in the future, one network <NUM>/<NUM> has been trained. The figure does not illustrate the operator of furnace <NUM> taking samples and thereby indicates that the use case helps to minimize human involvement in measuring and that operator can better concentrate on the operation of the furnace. In other words, furnace <NUM> can be upgraded to furnace <NUM> by the additional virtual sensor.

Using virtual sensors provides opportunities to compares existing industrial machine by measuring process parameters for that otherwise data would have been missing.

Indicator Z' can be used as training data, as complementary historic data.

<FIG> illustrates an example of a generic computer device which may be used with the techniques described here. <FIG> is a diagram that shows an example of a generic computer device <NUM> and a generic mobile computer device <NUM>, which may be used with the techniques described here. Computing device <NUM> is intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. Generic computer device may <NUM> correspond to the computer system <NUM> of <FIG>. Computing device <NUM> is intended to represent various forms of mobile devices, such as personal digital assistants, cellular telephones, smart phones, driving assistance systems or board computers of vehicles (e.g., vehicles <NUM>, <NUM>, <NUM>, cf. <FIG>) and other similar computing devices. For example, computing device <NUM> may be used as a frontend by a user (e.g., an operator of a blast furnace) to interact with the computing device <NUM>.

Thus, for example, expansion memory <NUM> may act as a security module for device <NUM>, and may be programmed with instructions that permit secure use of device <NUM>. In addition, secure applications may be provided via the SIMM cards, along with additional information, such as placing the identifying information on the SIMM card in a non-hackable manner.

The information carrier is a computer- or machine-readable medium, such as the memory <NUM>, expansion memory <NUM>, or memory on processor <NUM> that may be received, for example, over transceiver <NUM> or external interface <NUM>.

As used herein, the terms "machine-readable medium" and "computer-readable medium" refer to any computer program product, apparatus and/or device (e.g., magnetic discs, optical disks, memory, Programmable Logic Devices (PLDs)) used to provide machine instructions and/or data to a programmable processor, including a machine-readable medium that receives machine instructions as a machine-readable signal.

The systems and techniques described here can be implemented in a computing device that includes a back end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front end component (e.g., a client computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back end, middleware, or front end components.

The computing device can include clients and servers.

Claim 1:
Computer-implemented method (<NUM>) to train a neural network (<NUM>), wherein the network (<NUM>) is being trained for later processing a multi-variate measurement time-series (<NUM>) with measurement data that represent instances of particular process parameters (<NUM>) of an industrial machine (<NUM>) and thereby to provide a parameter indicator (Z') of a further process parameter (<NUM>, z) for the industrial machine (<NUM>), the method (<NUM>) comprising:
receiving (<NUM>) a first multi-variate measurement time-series (<NUM>, <NUM>) with historical measurement data from a first reference machine (<NUM>) and a second multi-variate measurement time-series (<NUM>) with historical measurement data from a physically different second reference machine (<NUM>);
obtaining (<NUM>) a set of transformation rules (<NUM>/<NUM>) by processing the first and second multi-variate measurement time-series, such that the transformation rules (<NUM>/<NUM>) enable a transformer module (<NUM>/<NUM>) to transform the first and second multi-variate measurement time-series (<NUM>, <NUM>) into first and second multi-variate feature time-series (<NUM>, <NUM>), respectively, with the multi-variate feature time-series being invariant to domain differences of the first and second reference machines (<NUM>, <NUM>);
transforming (<NUM>) the first multi-variate measurement time-series (<NUM>, <NUM>) to a first multi-variate feature time-series (<NUM>) by the transformer module (<NUM>) that applies the transformation rules (<NUM>/<NUM>);
receiving (<NUM>) a uni-variate measurement time-series (<NUM>) with measurement data (Z) of the further process parameter (<NUM>, z), from the first reference machine (<NUM>); and
training (<NUM>) the neural network (<NUM>) with the first multi-variate feature time-series (<NUM>) at the input, and with the uni-variate measurement time-series (<NUM>) at the output.