Convolutional Neural Network Architectures for Matching Natural Language Sentences