Device and method for encoding and processing non-Euclidean data to represent observations
By employing an enveloping multitask Gaussian process to determine a Riemannian metric in the latent space, the method effectively addresses the challenge of encoding non-Euclidean data, enhancing data processing and robot control tasks.
Patent Information
- Application Number
- DE102024211604
- Authority / Receiving Office
- DE · DE
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-12-04
- Publication Date
- 2026-06-11
AI Technical Summary
Conventional machine learning approaches fail to effectively encode and process non-Euclidean data, leading to poor results in tasks such as robot control and data analysis due to the assumption of a Euclidean latent space.
A method for encoding and processing non-Euclidean data by training an enveloping multitask Gaussian process to determine a Riemannian metric in the latent space, enabling efficient encoding and processing of non-Euclidean data.
Enables accurate and efficient encoding and processing of non-Euclidean data, providing uncertainty quantification and allowing for the modeling of complex tasks, such as robot control and high-dimensional graph-based encodings.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[0001] The present disclosure relates to devices and methods for encoding and processing non-Euclidean data for the representation of observations.
[0002] In various machine learning applications, it is desirable to map observations (especially sensor data) onto a latent space, i.e., to encode data points into latent “codes”, e.g., for a reduction in dimensionality, noise reduction, feature extraction, improved separability, and generalization.
[0003] Conventional approaches typically assume that the latent space is Euclidean. However, this does not account for the fact that observations may include non-Euclidean components, such as the orientations of a robot end effector, and therefore may yield poor results. Efficient approaches for encoding and processing non-Euclidean data to represent observations of a technical system are therefore desirable.
[0004] According to various embodiments, a method for encoding and processing non-Euclidean data to represent observations is provided, comprising training an enveloping multitask Gaussian process to represent training observations, determining the differential of the enveloping multitask Gaussian process, determining a return transport metric for the latent space according to the determined differential, and determining geodesics between encodings of a set of observations and clustering, classifying and / or interpolating the observations according to the determined geodesics.
[0005] The procedure described above, for example, computes an approximation of a Jacobian of a latent variable model of an enveloping Gaussian process (Wrapped GPLVM), thus enabling the definition of a Riemannian metric in a latent space. The "enveloping" aspect of the latent variable model of an enveloping Gaussian process can be understood as referring to the existence of an exponential mapping that maps from a Euclidean tangent space, into which latent space elements are decoded (according to a first stage of decoding latent space codes into elements in the observation space), to the data manifold (to complete the decoding of latent space codes into elements in the observation state, i.e., data points).This means that the Gaussian process “wraps” the geometry of the data manifold, ensuring that the model respects the inherent constraints and structure of the underlying space of the data.
[0006] When using an enveloping GPLVM as a model, the model is aware of the non-Euclidean nature of the training data. Furthermore, when using an enveloping GPLVM (instead of, for example, a deep neural network), uncertainty quantification is automatically provided. Additionally, as an enveloping GPLVM, the model considers the correlation between output dimensions when using multitasking kernels.
[0007] Since the model takes into account the non-Euclidean structure of the data and features true and automatic uncertainty quantification, it provides a tool for learning Riemannian submanifolds of data for specific observation spaces (e.g., the submanifold spanned by the position and rotation of a robot arm, or the set of symmetric positive-definite matrices encoding the properties of a family of graphs) without the need for manual tuning or regulation of uncertainty. By considering correlated outputs, according to the procedure described above, the model can model complex tasks ranging from generating robot motion to downstream tasks related to high-dimensional graph-based encodings or sensory data descriptors, such as those used in diffusion tensor imaging.
[0008] Several examples are given below.
[0009] Example 1 is a method for encoding and processing non-Euclidean data, as described above.
[0010] Example 2 is the procedure from Example 1, wherein the enveloping multitask Gaussian process is formed by a (Euclidean) multitask Gaussian process and an exponential map, and wherein determining the differential of the enveloping multitask Gaussian process includes determining an a posteriori distribution of the Jacobian of the multitask Gaussian process (or, equivalently, the Jacobian of a transpose thereof) according to the updating rules of the Gaussian process and a differential of the exponential map.
[0011] This allows the differential to be determined in an efficient manner.
[0012] Example 3 is the procedure from Example 2, where determining the differential of the enveloping multitask Gaussian process includes determining the differential of the exponential mapping on the mean of an a posteriori distribution of the multitask Gaussian process.
[0013] The differential of the exponential mapping can therefore be easily determined to determine the differential of the enveloping multi-task Gaussian process (see equation (2)).
[0014] Example 4 is the procedure from one of Examples 1 to 3, wherein the backtransport metric between the codings of two observations is determined by an evaluation of the backtransport metric according to the differential between the a posteriori means of the enveloping multitask Gaussian process on the two observations.
[0015] This provides an evaluation of the return transport metric with minimal computational effort.
[0016] Example 5 is a method for controlling a robot device, comprising performing observations about states of the robot device and / or an environment of the robot device, wherein the observations include: observations in a non-Euclidean space (such as orientations), encoding and processing the observations into coded observations by the method from any one of Examples 1 to 5, and controlling the robot device according to a result of clustering, classifying, or interpolating the observations (e.g., following a certain trajectory and / or avoiding detected objects, etc.).
[0017] It should be noted that the observations may also include Euclidean observations in a Euclidean space. For example, the observation of a robot's pose includes a position as an observation (or observation component) that is Euclidean, and an orientation as an observation (or observation component) that is non-Euclidean. If the position and orientation are considered as a single observation, it is still non-Euclidean because it includes a non-Euclidean component. For example, the procedure can be applied to settings where the observations lie on a product of manifolds, some of which may belong to Euclidean spaces.
[0018] Example 6 is a data processing system (e.g. a robot device controller) designed to perform a procedure from one of Examples 1 to 5.
[0019] Example 7 is a computer program comprising instructions which, when executed by a computer, cause the computer to perform a procedure according to any one of Examples 1 to 5.
[0020] Example 8 is a computer-readable medium comprising instructions which, when executed by a computer, cause the computer to perform a procedure according to any one of Examples 1 to 5.
[0021] In the drawings, similar reference numerals in the different views generally denote the same parts. The drawings are not necessarily to scale, and the emphasis is generally placed on illustrating the principles of the invention. Various aspects are described in the following description with reference to the following drawings, wherein: Fig. Figure 1 shows a robot. Fig. Figure 2 illustrates the return transport of a Riemannian metric by an enveloping multitask GPLVM. Fig. Figure 3 shows a flowchart illustrating a procedure for encoding and processing non-Euclidean data to represent observations.
[0022] The following detailed description refers to the accompanying drawings, which illustrate specific details and aspects of this disclosure in which the invention may be carried out. Other aspects may be used, and structural, logical, and electrical modifications may be made without altering the scope of protection of the invention. The various aspects of this disclosure are not necessarily mutually exclusive, since some aspects of this disclosure may be combined with one or more other aspects of this disclosure to form new aspects.
[0023] Several examples are described in more detail below.
[0024] In many applications that involve machine learning, it is desirable, for reasons including the following, to encode observations in an observation space into a latent space in order to perform tasks such as clustering, trajectory determination, or classification: • Reduction of dimensionality: Latent spaces often have fewer dimensions than the original observation space, which makes computations more efficient and reduces the risk of overfitting. • Noise reduction: Coding can filter out noise and irrelevant features, highlighting the most important aspects of the data, which improves the performance of clustering and classification algorithms. • Feature extraction: Latent spaces can capture complex patterns and relationships in the data that are not easily discernible in the original space, leading to more meaningful and accurate results. • Improved separability: In latent space, data points belonging to different classes or clusters are often easier to separate, which improves the effectiveness of classification and clustering algorithms. • Generalization: Working in a latent space can help models to generalize better for new, unseen data by focusing on the underlying structure rather than specific details of the observation space.
[0025] Therefore, tasks such as clustering, trajectory generation, and classification become more robust and effective when encoding is first performed in the latent space.
[0026] An exemplary application for coding applications into a latent space is robot control, which is described below as an illustrative example.
[0027] Fig. Figure 1 shows a robot 100.
[0028] The robot 100 comprises a robot arm 101, for example, an industrial robot arm for handling or assembling a workpiece (or one or more other objects). The robot arm 101 includes manipulators 102, 103, 104 and a base (or support) 105, which supports the manipulators 102, 103, 104. The term "manipulator" refers to the movable elements of the robot arm 101, the actuation of which enables physical interaction with the environment, for example, to perform a task. For control, the robot 100 includes a (robot) controller 106, which is designed to implement the interaction with the environment according to a control program. The last element 104 (farthest from the support 105) of the manipulators 102, 103, 104 is also referred to as the end effector 104 and may include one or more tools, such as a welding torch, a gripping instrument, a painting equipment or the like.
[0029] The other manipulators 102, 103 (closer to the support 105) can form a positioning device, so that, together with the end effector 104, the robot arm 101 is provided with the end effector 104 at its end. The robot arm 101 is a mechanical arm that can provide similar functions to a human arm (possibly with a tool at its end).
[0030] The robot arm 101 can include joint elements 107, 108, 109 that connect the manipulators 102, 103, 104 to each other and to the support 105. A joint element 107, 108, 109 can have one or more joints, each of which can provide a rotatable movement (i.e., rotational movement) and / or a translational movement (i.e., displacement) for linked manipulators relative to each other. The movement of the manipulators 102, 103, 104 can be initiated by means of actuators controlled by the controller 106.
[0031] The term "actuator" can be understood as a component designed to influence a mechanism or process in response to a control signal. The actuator can translate instructions issued by the controller (the so-called activation) into mechanical movements. The actuator, for example, an electromechanical transducer, can be designed to convert electrical energy into mechanical energy in response to a control signal.
[0032] The term "controller" can be understood as any type of logic-implementing entity, which may, for example, comprise a circuit and / or a processor capable of executing software stored in a storage medium, firmware, or a combination thereof, and capable of issuing instructions, e.g., for an actuator in the present example. The controller may, for example, be designed by program code (e.g., software) to control the operation of the system, in this example, a robot.
[0033] In the present example, the controller 106 comprises one or more processors 110 and a memory 111, which store code and data based on which processor 110 controls the robot arm 101. According to various embodiments, the controller 106 controls the robot arm 101 based on a machine learning model 112 stored in the memory 111.
[0034] In a robot control scenario, as in Fig. As shown in Figure 1, observations can be, for example, images of the workspace, force sensor outputs, robot self-awareness data (i.e., generally information about the states (configurations) of a robot device), or other things. It should be noted that observations can refer to (direct) sensor observations (i.e., sensor data), such as a force sensor output, but also to observations that are not directly captured by a sensor but are derived from sensor data, such as covariance descriptors of images or, for example, in autonomous driving, an estimate of another vehicle's speed derived from performing object recognition in several successive images.
[0035] In a robot control scenario, as in Fig. As shown in Figure 1, the machine learning model 112 is trained by learning from demonstrations, which are provided, for example, by a user moving the robot arm 101 by hand. Each demonstration is a sequence of robot configurations. For example, observations (such as the current robot configuration and information about the robot environment, especially the workspace, such as the locations of objects, etc.) are mapped into a latent space so that geodesics in the latent space correspond to a desired behavior (i.e., represent the demonstrations). Subsequently, to control the robot in a new control situation, an observation for a current state (e.g., a robot configuration) and for a target state can be encoded into the latent state, a geodesic between the two can be determined, and by back-mapping the latent states onto the geodesic onto a trajectory (e.g.,(Robot configurations) allow a trajectory to be determined for controlling the robot.
[0036] However, observations do not necessarily lie in a Euclidean space, so using a Euclidean latent space can yield poor results. For example, a robot configuration might be at least partially given by a point on a Riemannian manifold. For example, a certain demonstration trajectory might τ={yt}t=1T from data points (i.e., observations) yt∈ℝ3×S3, i.e., be composed of pairs of points, where the first point (from ℝ) 3 ) for example, the end effector position and the second point a quaternion (from S3) is and specifies the orientation of the end effector. Quaternions have favorable properties for robot control. However, since quaternions (which are used for robot control) satisfy a unit norm restriction, they do not form a Euclidean vector space. Nevertheless, they lie on the Riemannian manifold. S3. Another example of a Riemannian manifold whose elements (i.e., points) can be used for robot control is the special orthogonal group (SO(3)).
[0037] According to various embodiments, a stochastic Riemannian backtransport metric is determined to define a Riemannian geometry on a latent space. Specifically, according to various embodiments, this is done by calculating the Jacobian distribution for a Euclidean multitask Gaussian process (a Gaussian process on a Euclidean tangent space) and the Jacobian distribution of the enveloping function (i.e., the exponential map). This allows for a more realistic modeling of, for example, dynamical systems where observations do not lie in a Euclidean space.
[0038] According to various embodiments, a method for encoding observations is provided which can be viewed as being based on a generalization of the Riemannian backtransport metric of a GPLVM over multiple output kernels, enabling the learning of Riemannian submanifolds on the latent space of a GPLVM from Riemannian data.
[0039] The following describes in more detail how a WGPLVM (enveloping GPLVM, e.g., according to machine learning model 112) can be used to learn Riemannian submanifolds, i.e., to learn latent representations together with a Riemannian metric in a latent space. In simplified terms, for encoding, a WGPLVM is used. f:ℝL→(M,g) learned, which is viewed as a stochastic immersion, which is a back-transportation of the metric g to the latent space ℝ LUsing equation (1), as given below, it is possible to transport back the metric g. The Jacobian of an enveloping Gaussian process must be computed. This is done using a vector-valued Gaussian process that explicitly models covariances among the output dimensions. This provides a Jacobian of a multitask GP, which can then be used to approximate a distribution of the differential (df)x for a given latent space element (i.e., encoding or “code”) x.
[0040] More formal f=Expb(⋅)∘fE:ℝL→(M,g) an enveloping multitask GPLVM, where Expb(·) is the Riemann exponential map at a manifold point b(·). The definition of a backtransport metric follows as g˜x(v1,v2)=gf(x)((df)x(v1),(df)x(v2))
[0041] Determining it requires calculating the differential (df)x.
[0042] The chain rule yields (df)x=(d(Expb(⋅)∘fE))x,=(d Expb(x))fE(x)(dfE)x
[0043] This means that to calculate the differential of the enveloping multitask GP, the differential of the exponential map with respect to the tangent GP (i.e., the Gaussian process on the tangent space) and the derivative of the tangent GP with respect to the latent codes must be calculated. In coordinates, this corresponds to the Jacobian.
[0044] The following describes the process of calculating the distribution of the Euclidean Jacobian distribution. JfE(x)=[(dfE)x] (under the equivalent for the tangent space) Tb(x)M≃ℝm, (with selection of global coordinates) explained.
[0045] According to equation (2), the Jacobian (i.e., the differential) of a Euclidean multi-problem GP is required.
[0046] Equations (3) and (4) give expressions for the covariances of partial derivatives of a GP. α:ℝL→ℝ Following a GP with kernel k, then for a data set {(xn,α(xn))}n=1N: cov(α(xi),∂α(xj)∂x(r))=∂k(xi,xj)∂x(r) cov(∂α(xi)∂x(r),∂α(xj)∂x(s))=∂2k(xi,xj)∂x(r)∂x(s) where x=(x(1),…,x(L)).
[0047] In other words, the choice of kernel directly affects the smoothness of the modeled GP, and the distribution of the gradient of a is determined by the derivatives of the kernel itself.
[0048] Referring back to the present case of a multi-task GP, the multi-task GP has a covariance function that is defined by cov(fr(xi),fs(xj))=k(fr(xi),fs(xj))=krsfkx(xi,xj).
[0049] Therefore, applying equation (3) and equation (4), the covariance of its derivatives is given by cov(fj(xi),∂fm(x∗)∂x(r))=∂(kjmfkx(xi,x∗))∂x(r) and cov(∂fj(x∗)∂x(r),∂fm(x∗)∂x(s))=∂2(kjmfkx(xi,x∗))∂x(r)∂x(s)
[0050] This allows for the writing of a joint distribution of the data and the Jacobian. Be {xn,fE(xn)}n=1N⊆ℝL×ℝM a Euclidean data set.
[0051] Let the matrix F N×M given by vec(F)=[f1(x1),…,f1(xN),…,fm(x1),…,fm(xN)]⊤ and be JfE(x*)⊤ the transposed Jacobian; then [vec(F)vec(JfE⊤(x∗))]∼N(0,[K∂K∂K⊤∂2K]) where K is an NMxNM matrix containing the covariance between the elements in vec(F), and dK is an NMxLM matrix consisting of the covariance between, e.g., a given f i (x n ) ∈ F and a partial derivative of the kernel k = k f ⊗ k x with respect to a latent dimension r ∈ 1, ..., L, and where in ∂ 2 K are the second derivatives of the kernel k with respect to the latent dimensions.
[0052] Intuitively, differentiating a kernel defined as the Kronecker product (see equation (5)) with respect to the input data resembles the product rule. It can then be shown that, given K = k f ⊗ K x with Kx:=[kx(xn,xa)]n,a=1N The following applies: ∂K=kf⊗∂Kx,∂Kx:=[∂kx(xn,x∗)∂x(r)]n,r=1N,L ∂2K=kf⊗∂2Kx,∂2Kx:=[∂2kx(x∗,x∗)∂x(r)∂x(s)]r,s=1L
[0053] In other words, the task core matrix kf is a constant with respect to differentiation and is therefore factored out.
[0054] Using the joint distribution of equation (8), a posterior over the (transposed) Jacobian can be calculated by following the usual update rule in Gaussian processes, namely: vec(JfE⊤(x∗))∼N(vec(∂Kx⊤(Kx)−1F), kf⊗(∂2Kx−∂Kx⊤(Kx)−1∂Kx)) which is equivalent to the following matrix normal distribution, JfE⊤(x∗)∼MNL×M(∂Kx⊤(Kx)−1F, ∂2Kx−∂Kx⊤(Kx)−1∂Kx, kf). where Eqs. (10a), (10b), and (10c) represent the a posterior mean, the covariance over rows, and the covariance over columns, respectively. This makes intuitive sense: the usual posterior of the Jacobian for the batch-independent case appears as the a posterior mean and the covariance over rows (i.e., between the data), while the a posterior covariance over columns is precisely the task covariance. In summary, the a posterior distribution of the Jacobian (i.e., the differential) of a multitask GP is the matrix normal distribution in Eq. (10). This is used to compute an estimate of the backtransport metric, as will be explained next.
[0055] Specifically, the following will discuss the approximation of (d Exp b(x) )f E(x) described using the a posterior mean of the Euclidean GP fE, resulting in a point estimate for the back transport metric g.
[0056] Given the distribution of the differential of the Euclidean part of an enclosing GP (see equation (10)), the missing component for calculating (df)x from equation (2) is the differential of the exponential map, i.e., (d Exp m(x) )f E (x), Since calculating the a-posteriori distribution of (d Exp b(x) )f E Since (x) is involved and manifold-specific, a deterministic approximation given by the a posteriori mean of the Euclidean GP fE(x) is used according to various embodiments. After evaluating the exponential mapping on the a posteriori mean fE(x),¯ The differential can be calculated using auto-differentiation. This approximation is called JExpb(x)(fE¯(x)) This refers to the metric evaluations. Furthermore, the metric evaluations are described. f(x) in equation (1) evaluated using the a posterior mean of the enveloping GP f, whose matrix representation by G¯(x) is referred to as such.
[0057] By applying the approximations described above, the reverse transport metric of equation (1) can be derived in matrix form as [g˜x]=JfE⊤JExpb(x)⊤G¯JExpb(x)JfE
[0058] Finally, the distribution of the a posteriori Jacobian coefficients of the Euclidean GP, given by equation (10), is used to compute a point estimate of equation (11). Let G'=JExpb(x)G¯JExpb(x), then E[JfE⊤G'JfE]=E[JfE⊤]G'E[JfE]+Tr(G'⊤Kf)∑rows(JfE⊤) where properties of the matrix normal distribution were used, denoted by Σrows, the a posteriori covariance over series. Equation (12) provides a point estimate of the latent space metric G and therefore allows the computation of shortest paths in latent space.
[0059] Fig. Figure 2 illustrates the reverse transformation of a Riemannian metric by an enveloping GPLVM. For every latent code x ∈ ℝ L of the latent space 201 (learned through the model), a point estimate for the return transport metric g̃ is obtained. x provided by calculating the differential of the enclosing GP f = Exp b(·) ◯f E In the enveloping GPLVM framework, each latent code defines x ∈ ℝ L a distribution of tangent vectors f E(x) ~ GP (0, k) of the tangent space 202, which is then pushed onto the data manifold 203 (i.e. the manifold of observations) via the exponential map based on a point b(x) on the data manifold.
[0060] With the enveloping multitask GPLVM, as described above, a Riemannian submanifold of observed data (i.e., observations) can be learned by back-transporting a Riemannian metric from the mapping from the latent space to the surrounding space, represented by the enveloping GP. This metric allows the computation of geodesics on the (typically low-dimensional) latent space of the model, and once decoded, the resulting geodesic follows the data trend on the surrounding manifold (i.e., the manifold of observations), or in other words, the decoded geodesic lies on the data manifold. Therefore, the geodesic in the latent space can serve various purposes, such as a data generation mechanism, an analysis tool, or a means of controlling a technical system.
[0061] It should be noted that regions in latent space with high uncertainty (due to the fact that the return transport metric contains the uncertainty information from the Gaussian process) prevent geodetic paths to traverse uncertain areas, i.e., outside of data distribution zones; that is, geodesists avoid regions with very few or no codings from training observations.
[0062] Besides applications for robot control based on geodesics, as described above, the coding of observations into codes on a Riemann latent space, as described above, can also be applied to other domains and use cases, such as… • Analysis of data obtained from a sensor to determine measurements of the environment in the form of sensor signals, which may be given, for example, by digital images such as video, radar, LiDAR, ultrasound, motion, thermal images (many of these with intrinsic geometric representations). • Learning latent embeddings of specific data, especially data encoded in Riemannian manifolds, for example, symmetric, positive-definite matrices (e.g., DTI signals (diffusion tensor imaging) or graph Laplacian operators), sphere-defined data (e.g., geophysical / geostatistic data), dynamic systems that handle non-Euclidean data (e.g., robot motion by encoding the position and rotation of the end effector, or by encoding the joint angles in the torus) • Classification of sensor data to detect the presence of objects in the sensor data or to perform semantic segmentation on the sensor data, e.g., regarding human / robot movement. • Generating a control signal to control a technical system, such as a computer-controlled machine, a robotic system, a vehicle, a household appliance, a power tool, a manufacturing machine, a personal assistant, or an access control system.
[0063] In summary, according to various embodiments, a method is provided as described in Fig. 3 illustrated.
[0064] Fig. Figure 3 shows a flowchart 300 illustrating a procedure for encoding and processing non-Euclidean data to represent (e.g. sensor) observations (in a latent space).
[0065] In 301, an enveloping multitask Gaussian process is trained to represent training observations (contained in the training data). The training is typically performed to maximize the probability that the GP will yield the training data (i.e., training observations) when decoding the (learned) latent codings. The training involves learning the latent codings of the training data as well as parameters of the multitask GP (such as the means and the parameters of the kernels, i.e., the standard Gaussian process kernel, such as the RBF (radial basis function) kernel, Matérn kernel, etc., and the multitask kernel).
[0066] In 302 the differential of the enveloping multi-task Gaussian process (which is the differential of the multi-task GP, concatenated with the exponential map, see equation (2)) is determined (which can also be considered as estimation, since the determination may not be exact).
[0067] In 303, a return transport metric for the latent space is determined according to the determined differential (e.g., estimation thereof) (this return transport metric makes the latent space a Riemann space).
[0068] In 304, geodesics are determined between codings of a set of observations, and the observations are clustered, classified, and / or interpolated according to the determined geodesics (which may involve generating a trajectory, since generating a trajectory can be viewed as interpolating between two observations (along a geodesic), e.g., a starting observation and a target observation). Observations can, for example, be clustered based on the distance (corresponding to the return transport metric) between their codings in latent space. Classification can be performed similarly (possibly corresponding to clustering).
[0069] The procedure from Fig.3. This can be performed by one or more data processing devices (e.g., computers or microcontrollers) that incorporate one or more data processing units. The term "data processing unit" can be understood to mean any type of entity that enables the processing of data or signals. For example, the data or signals can be treated according to at least one (i.e., one or more than one) specific function performed by the data processing unit. A data processing unit can include or be formed by an analog circuit, a digital circuit, a logic circuit, a microprocessor, a microcontroller, a central processing unit (CPU), a graphics processing unit (GPU), a digital signal processor (DSP), a field-programmable gate array (FPGA), or any combination thereof.Any other means for implementing the corresponding functions described in more detail here can also be understood as a data processing unit or logic circuit arrangement. One or more of the process steps described in more detail here can be carried out (e.g., implemented) by a data processing unit, through one or more specific functions performed by the data processing unit.
[0070] Accordingly, the method is, according to one embodiment, computer-implemented.
Claims
A procedure for encoding and processing non-Euclidean data to represent observations, comprising: training (301) an enveloping multitask Gaussian process (112) to represent training observations; determining (302) the differential of the enveloping multitask Gaussian process (112); determining (303) a return transport metric for the latent space (201) according to the determined differential; and determining (304) geodesics between encodings of a set of observations and clustering, classifying and / or interpolating the observations according to the determined geodesics. The method of claim 1, wherein the enveloping multitask Gaussian process (112) is formed by a multitask Gaussian process and an exponential map, and wherein determining the differential of the enveloping multitask Gaussian process (112) comprises determining an a posteriori distribution of the Jacobian of the multitask Gaussian process according to the updating rules of the Gaussian process and a differential of the exponential map. Method according to claim 2, wherein determining the differential of the enveloping multitask Gaussian process (112) comprises determining the differential of the exponential mapping on the mean of an a posteriori distribution of the multitask Gaussian process. Method according to one of claims 1 to 3, wherein the backtransport metric between the codings of two observations is determined by an evaluation of the backtransport metric according to the differential between the a posteriori means of the enveloping multitask Gaussian process (112) on the two observations. Method for controlling a robot device, comprising performing observations on states of the robot device and / or an environment of the robot device, wherein the observations comprise: observations in a non-Euclidean space, encoding and processing the observations into coded observations by the method according to any one of claims 1 to 4 and controlling the robot device according to a result of clustering, classifying or interpolating the observations. Data processing system (106) designed to carry out a method according to any one of claims 1 to 5. Computer program comprising instructions which, when executed by a computer, cause the computer to perform a method according to any one of claims 1 to 5. A computer-readable medium comprising instructions which, when executed by a computer, cause the computer to perform a method according to any one of claims 1 to 5.
