For performing face sketch recognition, CNN's will be the best choice. While DBNs (Deep Belief Networks) can be used for feature extraction in image data, they are generally less popular for face recognition tasks compared to DCNNs (Deep Convolutional Neural Networks). And GANs are mainly used to generate images and hence typically less used for classification tasks.
Hence, it would be better to proceed with DCNN for facial sketch recognition. Some of the networks you could use are "resnet", "inceptionresnetv2" etc.
Please look into the below documentation link of "imagePretrainedNetwork", which has a list of DCNNs which you could use for the mentioned application.
You can also look into the below MATLAB Central File Exchange on "Face-Recognition-by-CNN".
Hope you find this information helpful!