fit_ordinal {TensorComplete} | R Documentation |
Main function for parametric tensor estimation and completion based on ordinal observations.
Description
Estimate a signal tensor from a noisy and incomplete ordinal-valued tensor using the cumulative logistic model.
Usage
fit_ordinal(ttnsr,r,omega=TRUE,alpha = TRUE)
Arguments
ttnsr |
A given (possibly noisy and incomplete) data tensor. The function allows binary- and ordinal-valued tensors. Missing value should be encoded as |
r |
A rank to be fitted (Tucker rank). |
omega |
The cut-off points if known,
|
alpha |
A signal level
|
Value
A list containing the following:
C
- An estimated core tensor.
A
- Estimated factor matrices.
theta
- An estimated latent parameter tensor.
iteration
- The number of iterations.
cost
- Log-likelihood value at each iteration.
omega
- Estimated cut-off points.
References
C. Lee and M. Wang. Tensor denoising and completion based on ordinal observations. International Conference on Machine Learning (ICML), 2020.
Examples
# Latent parameters
library(tensorregress)
alpha = 10
A_1 = matrix(runif(10*2,min=-1,max=1),nrow = 10)
A_2 = matrix(runif(10*2,min=-1,max=1),nrow = 10)
A_3 = matrix(runif(10*2,min=-1,max=1),nrow = 10)
C = as.tensor(array(runif(2^3,min=-1,max=1),dim = c(2,2,2)))
theta = ttm(ttm(ttm(C,A_1,1),A_2,2),A_3,3)@data
theta = alpha*theta/max(abs(theta))
adj = mean(theta)
theta = theta-adj
omega = c(-0.2,0.2)+adj
# Observed tensor
ttnsr <- realization(theta,omega)@data
# Estimation of parameters
ordinal_est = fit_ordinal(ttnsr,c(2,2,2),omega = TRUE,alpha = 10)