proposed spatial-temporal transformer network are demonstrated in  Fig.3, which consists of stacked spatial-temporal blocks and a prediction layer which consists of two $1\times 1$ convolution layers. More specifically, a spatial-temporal block contains a spatial transformer and a temporal transformer to jointly learn spatial-temporal features in the context of dynamically changing dependencies. Several blocks can be stacked to form deep models for more complicated spatial-temporal features. Then, the prediction layer aggregates the learned deep spatial-temporal features for final predictions. Previous models usually make predictions in an auto-regressive fashion and output single-step prediction each time. There are usually two quite different schemes to train the model. In STGCN, only the single-step prediction error is adopted to train the model, while multi-step predictions are made in test. It ignores the dynamic of traffic flows, thus its performance is relatively limited especially in long-term predictions. In contrast, DCRNN adopted encoder-decoder scheme to incorporate multi-step prediction errors into the final loss and random sampling scheme is further adopted to alleviate the error accumulation problem in long-term predictions. As GraphWaveNet. we argue that multi-step results can be directly predicted with the powerful deep models without predicting in an auto-regressive manner. By make multi-step predictions directly, both 