I've been studying High Order Factorization Machines in this paper : https://arxiv.org/abs/1607.08810.For the moment being, I'm trying to implement the order 2 factorization machines and to optimize it before going any higher.The formula given for the predicting model is : $$\hat{y}(x)=<w,x>+\sum_{i=1}^{d}\sum_{j>i}<v_i,v_j>x_ix_j$$Where : $V \in \mathbb{R}^{d \times k},$ its rows $v_i$ describe the i-th variable with $k$ factors.$x\in \mathbb{R}^d$ a training data and $w=(w_1,...,w_d)$ first-order weights.In the PDF I've attached, the author finds $V$ by performing coordinate descent where he basically supposed, if I understood well enough, that $$\hat{y}_1(x)=\sum_{i=1}^{d}\sum_{j>i}<v_i,v_j>x_ix_j$$I implemented the coordinate descent as described in the paper for a (binary) classification problem and here are my results :1-When the real $y$ is equal to 0, $\hat{y}_1 \le 0.001$.2-When the real $y$ is equal to 1,  $\hat{y}_1 \ge 0.1$When I noticed that, I calibrated the results manually (something like if  $\hat{y}_1 \ge 0.15$, set it to 1 else 0) and the recall / precision I got from that were pretty great.Now, in the paper, with regards to $w$, the author says :  $w$ is a vector of first-order weights, estimated from training dataMy guess is that $w$ is supposed to perform the calibration I did manually but I don't understand what he meant by estimated from training data. So my question is, how can I obtain $w$ ?Thanks ! 
Estimate first-order weights from training data
machine learning;predictive modeling;parameter estimation