s_{w}(v, s) \\
    & = \parallel \vec{u_{tl}} + \vec{tl} - \vec{v_{tl}} \parallel _2^2 + \parallel \vec{v_{wl}} + \vec{wl} - \vec{s_{wl}} \parallel _2^2,
\end{split}
\end{aligned}$$

where *s* is a POI sharing at least one $<$word, location$>$ pair with POI *v*, and the objective function for cold start POIs is defined as:

$$\label{objcold}
\small
\begin{aligned}
\begin{split}
    LC = & \sum_{(u,tl,v) \in T} \sum_{(u',tl,v') \in T'} max(0, s_{tl}(u, v) + \gamma - s_{tl}(u', v')) + \\
    & \sum_{(v,wl,s) \in W} \sum_{(v',wl,s') \in W'} max(0, s_{wl}(v, s) + \gamma - s_{wl}(v', s'))
\end{split}
\end{aligned}$$

We once again use stochastic gradient descent to minimize the objective function *LC* in Eq. \[objcold\]. The only difference is the sampling procedure. For STA-C, since we have two types of edges, we sample the triplets (u, tl, v) and (v, wl, s) and their corresponding incorrect triples alternatively to update the model.

Our STA-C model proposed for dealing with cold start POIs can also be applied to the normal POI recommendation problem. However, it requires that those POIs should contain content information. For the recommendation on datasets like Gowalla, STA-C is not valid. Hence we only treat it as an extended model. Please also note that, it is STA-C 