poseNet has 4-stacked hourglass. All the convolutional layers adopt the $3\times 3\times 3$ kernel size. The $A^2$-Net was trained in three stages. We first trained the locNet and poseNet individually for 100 epochs, and then fixed them while training the recNet for 400 epochs. Finally, we jointly optimize the whole $A^2$-Net with sequence-guided neighbor loss for another 400 epochs. We used Adam [@KingmaB14Adam] optimizer to train the model, starting by a learning rate of 0.0001, a momentum of 0.9 and a weight decay of 0.0001. We fine-tune our models with BatchNorm. We found that BatchNorm may reduce over-fitting. For each density volume, we randomly cropped a $64\times 64\times 64$ cube and send it into the network. Limited by the GPU memory, we set the batch size to be 1.

Results on the $A^2$ dataset
----------------------------

### Amino Acid Detection

We first evaluated the effectiveness of APRoI layer and sequence-guided neighbor loss training. We adopted the commonly used mean Average Precision (mAP) for evaluation of detection. The quantitative amino acid detection results are reported in Table. \[table:det\].

  -------------------------------- ----------- ----------
  Methods                          mAP          Coverage
  MV3D(BV+FV)                      0.118          0.15
  Frustum-Pointnet-v1              0.407          0.45
  Frustum-Pointnet-v2              0.425          0.48
  3D-VGG+RoIpool8                  0.360          0.32
  3D-VGG+RoIpool8(w/o maxpool)     0.423          0.41
  3D-ResNet+RoIpool8               0.416          