I am wondering if the objective function in the following problem makes sense. The question is posted in CrossValidated, stack exchange as well.

I know there is a physical system having an underlying deterministic relationship: $$ \mathbf{y}_t = \mathbf{A} \mathbf{x}_t $$ where $\mathbf{y}_t$ and $\mathbf{x}_t$ are column vectors with same numbers of rows. They represent some measured values of a fixed number of entities. We know the number of rows, and want to estimate $\mathbf{A}$ based on observations. All entries in $\mathbf{A}$ are positive.

The major obstacle is that I only have partial observations for $\mathbf{y}_t$ and $\mathbf{x}_t$ at entries $i \in I_{\text{obs}}$. That is, observations for some entries, $i \in I_{\text{hidden}}$, are missing all the time.

For example, if there are 3 entities. Let's say observations at the third entity are missing. I only have observations of $(x_{t, 1}, y_{t, 1})$, $(x_{t, 2}, y_{t, 2})$ for $t \in T$.

I can obtain some candidates $\mathbf{\hat{A}}$ (through heuristic algorithms). The task is to evaluate if these candidates are good representations of $\mathbf{A}$.

For every candidate $\mathbf{\hat{A}}$, I find a column vector $\mathbf{b}$ to max the following problem (call it vector-b problem): $$\begin{aligned} \max_{\mathbf{b}} \quad & \mathbf{b}^{\top} \mathbf{\hat{A}} \mathbf{x}_{\text{binary}} \\ \text{s.t.} \quad & b_i = 0 \quad \forall i \in I_{\text{missing}} \end{aligned} $$ where $\mathbf{x}_{\text{binary}}$ is a column vector with binary values, -1 and 1. The value is -1 if the observation is missing. Corresponding to the previous example, $\mathbf{x}_{\text{binary}} = \left[1 \quad 1 \quad -1 \right]^{\top}$, because we don't have observations for $x_{t, 3}$. The reason for this step is to minimise the impact of missing observations. The fact that entries in $\mathbf{A}$ are positive is essential in this problem.

With the optimal value, $\mathbf{\hat{b}} = \arg \max \mathbf{b}^{\top} \mathbf{\hat{A}} \mathbf{x}_{\text{binary}}$, the performance of $\mathbf{\hat{A}}$ is evaluated by a scalar: $$ \begin{aligned} \sum_{t \in T} \left[\mathbf{\hat{b}}^{\top} \mathbf{y}_{t, \text{obs}} - \mathbf{\hat{b}}^{\top} \mathbf{\hat{A}} \mathbf{x}_{t, \text{obs}} \right]^2 \end{aligned} $$ where entries $i \in I_{\text{missing}}$ of $\mathbf{x}_{t, \text{obs}}$ are 0. Entries $i \in I_{\text{missing}}$ of $\mathbf{y}_{t, \text{obs}}$ don't matter because $b_i = 0, \forall i \in I_{\text{missing}}$.

That is, I am trying to minimise the deviation between observed aggregated $y$ values and calculated aggregated $y$ values, which I am not sure if it makes sense.

The task can be done by multiple regression. However, for entries in the same rows of $\mathbf{A}$, I know most of them are similar. Because all variables in $\mathbf{x}$ are correlated with each other and some variables are hidden, some statistical issues like multicollinearity will distort the estimation results. For example, some coefficients will become negative. Besides, there is no way to have results for those coefficients not obtained from the multiple regression.

But I am not interested in predictions. This is a physical system, and I want to explain it by $\mathbf{A}$. The advantage of using heuristics is that meaningful $\mathbf{A}$ comes first and then we talk about their performance. Right now, I have a way to get meaningful candidates, but not sure about the way to evaluate them.


1 Answer 1


I do not think it is possible to get a useful evaluation of candidates for $A$. I'm going to tweak your notation slightly, making the time index a superscript, and I'm going to assume that we have permuted indices so that the observed values of $x$ and $y$ come first, followed by the hidden values. We can partition things and write the matrix equation as $$ \left[\begin{array}{c} y_{O}^{(t)}\\ y_{H}^{(t)} \end{array}\right]=\left[\begin{array}{cc} A_{1} & A_{2}\\ A_{3} & A_{4} \end{array}\right]\left[\begin{array}{c} x_{O}^{(t)}\\ x_{H}^{(t)} \end{array}\right], $$ where the subscripts $O$ and $H$ mean observed and hidden respectively. Submatrices $A_3$ and $A_4$ only affect $y^{(t)}_H$, not $y_{O}^{(t)}$, so you could plug anything (positive) you like in there and have no idea, based on the data, if it was remotely close to being correct.

You could evaluate candidates by solving $y_{O}^{(t)} - A_1 x_{O}^{(t)} = A_2 x_{H}^{(t)}$, separately for each $t$, for the value of $x_{H}^{(t)}$ that minimizes the squared error in the equation. Then pool those squared errors to get an evaluation of the quality of the estimates of $A_1$ and $A_2$. As I said, though, you're still in the dark on $A_3$ and $A_4$.

  • $\begingroup$ Thanks for the answer, professor. I will think about if to change the notation in my question. Your method is essentially multiple regression, and $\mathbf{A}_1$ is estimated row-by-row. I have tried this method before. I should have mentioned it, sorry. You can see the reason in the updated question. $\endgroup$
    – Edward
    Commented Sep 24, 2020 at 7:51
  • $\begingroup$ After one month, I think this answer is exactly what I need. The technique in my answer is just to reduce the effect of $x^{(t)}_{H}$, which, however, is always present no matter what. So I agree with you that it's impossible to have a useful evaluation. $\endgroup$
    – Edward
    Commented Oct 20, 2020 at 13:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.