A two-stream convolutional neural network for learning abitrary similarity functions over two sets of training data