## 5 Application Instances of Proposed SDP
### Application Instance-2: SDPTrustSVD  
(1) Improved by SDP  
The second instance improves TrustSVD [10] based on SDP. The TrustSVD considers explicit users' trust information in the SVD++ [5] and merges the trust factor to obtain better accuracy. The equation is as follows:  
\[\hat{r}_{ui}=b_{u}+b_{i}+\mu+q_{i}^{T}\Big{(}p_{u}+|I_{ui}|^{-\frac{1}{2}}.( \sum\
olimits_{j\in I_{u}}y_{j})+|T_{u}|^{-\frac{1}{2}}.(\sum\
olimits_{v\in T _{u}}w_{v})\Big{)}, \tag{15}\]  
where \(w_{v}\) denotes the latent factor vector of users (trustees) trusted by user \(u\); \(T_{u}\) denotes the set of users trusted by \(u\). To apply the proposed SDP, we add the proportion \(\Big{(}\frac{\sigma_{u}}{\sigma}\Big{)}\) to \(\mathrm{b_{i}}\):  
\[\hat{r}_{ui}=\Big{(}\frac{\sigma_{u}}{\sigma}\Big{)}t\!b_{i}+b_{u}+\mu+q_{i}^{ T}t\Big{(}p_{u}+|I_{ui}|^{-\frac{1}{2}}.\sum\
olimits_{j\in I_{u}}y_{j}+|T_{u}|^{- \frac{1}{2}}.\sum\
olimits_{v\in T_{u}}w_{v}\Big{)}. \tag{16}\]  
All other parameters in the improved equation have the same meaning as the original TrustSVD, and we named this improved TrustSVD as SDPTrustSVD. (2) Model learning  
Involved parameters in SDPTrustSVD are learned by minimizing the regularized squared error function association. The regularized squared error function \(\mathcal{L}\) is:  
\[ \begin{array}{c}\mathcal{L}=\min_{q_{i},p_{u},y_{i},p_{u},\omega_{i},\sigma_ {u}}\Big{(}\frac{1}{2}\sum_{u}\sum_{i\in I_{u}}\left(\hat{r}_{ui}-r_{ui}\right) ^{2}+\frac{\lambda_{i}}{2}\sum_{u}\sum_{v\in T_{u}}\left(\hat{t}_{iw}-t_{uv} \right)^{2}+\\ \frac{\lambda}{2}\sum_{u}|I_{ui}|^{-\frac{1}{2}}\Big{(}{b_{u}}^{2}+{\sigma_{u} }^{2}\Big{)}+\frac{\lambda}{2}\sum_{i}|U_{i}|^{-\frac{1}{2}}\Big{(}{b_{i}}^{2} +\|q_{i}\|^{2}_{F}\Big{)}+\sum_{u}\left(\frac{\lambda}{2}|I_{u}|^{-\frac{1}{2} }+\frac{\lambda_{i}}{2}|T_{u}|^{-\frac{1}{2}}\right)\|p_{u}\|^{2}_{F}+\\ \frac{\lambda}{2}\sum_{j}|U_{j}|^{-\frac{1}{2}}\|y_{j}\|^{2}_{F}+\frac{\lambda} {2}|T_{v}^{-\frac{1}{2}}\|W_{v}\|^{-\frac{1}{2}}_{F}\Big{)},\end{array}  \tag{17}\]where \(\hat{t}_{uv}\) denotes the predictive trust value of user \(v\) from user \(u\), \(t_{uv}\) is the observed trust value, \(w_{v}\) denotes a user-specific latent feature vector of users (trustees) trusted by user \(u\), \(T_{u}\) denotes the set of users trusted by user u, \(T_{v}^{+}\) denotes the set of users who trust user \(v\), and \(\lambda_{t}\) is a parameter to control the degree of trust regularization. To obtain a local minimization of the objective function \(\mathcal{L}\), we performed the gradient descents on \(b_{u},b_{i},\sigma_{u},p_{u},q_{i},y_{j}\), _and_\(w_{v}\) for all the users and items in a given training dataset:  
\[ \begin{array}{l}\frac{\partial\mathcal{L}}{\partial b_{u}}=\sum_{i\in l_{u}}e _{ui}+\lambda|l_{u}|^{-\frac{1}{2}}.b_{u}\\ \frac{\partial\mathcal{L}}{\partial b_{i}}=\sum_{u\in U_{i}}\left(\frac{q_{u} }{\alpha}\right)e_{ui}+\lambda|l_{i}|^{-\frac{1}{2}}.b_{i}\\ \frac{\partial\mathcal{L}}{\partial\alpha}=\sum_{i\in l_{u}}\left(\frac{b_{i} }{\alpha}\right)e_{ui}+\lambda|l_{u}|^{-\frac{1}{2}}\sigma_{u}\\ \frac{\partial\mathcal{L}}{\partial p_{u}}=\sum_{i\in l_{u}}e_{u,i}q_{i}+ \lambda_{t}\sum_{v\in T_{u}}e_{u,v}w_{v}+\left(\lambda|l_{u}|^{-\frac{1}{2}} +\lambda_{t}|T_{u}|^{-\frac{1}{2}}\right)p_{u}\\ \frac{\partial\mathcal{L}}{\partial q_{i}}=\sum_{u\in U_{i}}e_{u,j}(p_{u}+|l_{ u}|^{-\frac{1}{2}}\sum_{j\in l_{u}}y_{j}+|T_{u}|^{-\frac{1}{2}}\sum_{v\in T_{u}}w_{v})+ \lambda|U_{i}|^{-\frac{1}{2}}q_{i}\\ \forall j\in I_{u},\,\frac{\partial\mathcal{L}}{\partial y_{j}}=\sum_{i\in l_{u }}e_{ui}|l_{u}|^{-\frac{1}{2}}q_{i}+\lambda\big{|}l_{j}\big{|}^{-\frac{1}{2}} y_{j}\\ \forall v\in T_{u},\,\frac{\partial\mathcal{L}}{\partial w_{v}}=\sum_{i\in l_{u }}e_{u,j}|T_{u}|^{-\frac{1}{2}}q_{i}+\lambda_{t}e_{u,v}p_{u}+\lambda\big{|}T _{v}^{+}\big{|}^{-\frac{1}{2}}w_{v}.\end{array}