Fig. 1. Flow generation and architecture of Deep Gravity.
a The geographic space is divided into regions of interest (squared tiles). Each region of interest is further split into locations using Output Areas (OAs, for England), Census Areas (CAs, for Italy), or Census Tracts (CTs, for New York State). Each location may have several Points Of Interest (POIs, the colored points), extracted from OpenStreetMap (OSM). During the training phase, half of the regions of interest are used for training the model and the remaining half to test the model’s performance. b Architecture of Deep Gravity. The input features xi (feature vector of the origin location li), xj (feature vector of the destination location lj), and ri,j (distance between origin and destination) are concatenated to obtain the input vectors x(li, lj). These vectors are fed, in parallel, to the same feed-forward neural network with 15 hidden layers with LeakyReLu activation functions. The output of the last hidden layer is a score s(li, lj) ∈ [−∞, +∞]. The higher this score for a pair of locations (li, lj), the higher the probability to observe a trip from li to lj. Finally, a softmax function is used to transform the scores into probabilities pi,j, which are positive numbers that sum up to one.