UniformCorewiseGeometry#
- class t3toolbox.uniform_manifold.UniformCorewiseGeometry#
The Euclidean geometry of the uniform core parameter space (uniform mirror of
CorewiseGeometry).Optimization happens on the raw supercores: tangents are perturbations of the cores
(U, G, G, G)(the non-orthonormal frame whose down/left/right cores are all the TT supercoreG– the Section 6.3(P, Q, O) -> Gsubstitution), the metric is the plain Euclidean (corewise) inner product, the “projection” is the identity (no gauge), and the retraction is vector addition in the supercores. Use the module singletonUNIFORM_COREWISE. The manifold counterpart isUniformManifoldGeometry.Examples
>>> import numpy as np >>> import t3toolbox.tucker_tensor_train as t3 >>> import t3toolbox.uniform_tucker_tensor_train as ut3 >>> import t3toolbox.uniform_manifold as ut3m >>> np.random.seed(0) >>> x = ut3.UniformTuckerTensorTrain.from_t3(t3.TuckerTensorTrain.randn((10, 11, 12), (3, 4, 3), (1, 2, 2, 1))) >>> frame = ut3m.UNIFORM_COREWISE.frame(x) # the (U, G, G, G) frame >>> v = ut3m.UNIFORM_COREWISE.randn(frame) # raw randn cores (no gauge) >>> print(bool(v.is_gauged().all())) False >>> y = ut3m.UNIFORM_COREWISE.retract(ut3m.UT3Tangent.zeros(frame)) # additive: cores += step (zero -> the point) >>> print(bool(np.allclose(y.to_dense(), x.to_dense()))) True
Methods#
|
The core-parameter frame at |
|
Random tangent at |
|
A raw random tangent at |
|
The identity: the core parameter space is Euclidean, with no gauge projection. |
|
The Euclidean (coordinate) inner product of two tangents on the core parameter space. |
|
The Euclidean (coordinate) norm of a tangent (= |
|
Additive retraction: add the variation supercores to the point's cores ( |