Deep Learning Model for Tabular Data I'm currently learning (pun intended) Deep Learning and I would like to apply it on a tabular dataset (.csv files). The dataset is labeled with "0" and "1" which means "normal" and "anomaly", respectively. The goal is to apply Deep Learning to perform the binary classification.
I came across and tried the following Deep Learning models: MLP, CNN, and LSTM. All of them work pretty well with Accuracy, Recall, Precision, Specificity, and F1-Score to be above 96%. However, I don't really understand the reason why and how the MLP, CNN, or LSTM can perform well on a tabular dataset? I Googled to find the reasoning, and I couldn't find any article about it. I did find the following articles Article 1 or Article 2 that mention that for tabular data the random forest or gradient boost techniques are better than Deep Learning. This article Article 3 mentions that MLP is good to be used in a tabular dataset, but there is no detailed explanation of why and how MLP can be good for a tabular dataset.
Therefore, my inquiry is please give me a more detailed explanation of why and how MLP, CNN, or LSTM can be good (or not) for a tabular dataset. Additional articles, papers, or books can also be recommended.
I thank you in advance.
Cheers.
 A: MLP, CNN, or LSTM are different types of neural network architectures designed to crunch your data. The simplest one is the MLP that takes as input a vector, which usely is tabular data (i-e a row in your csv).
CNN and LSTM are more complex architectures that were designed to use the structure of some data. You could very well train an MLP on images of the same size, but you would miss the translation invariant ( a cat on the top left corner is just as well a cat as a cat in the bottom right corner ) that is naturally present in image classification problems and it seems a bit too brutal to compare all the pixels together at once (convolutions process small chunks of data at once and can be interpreted as pattern detectors). LSTM on the other hand try to account for the sequential nature of some data, time series or text for example.
I wouldn't use a CNN or a LSTM on tabular data as they are not designed to improve performance on tabular data, yet being designed to perform certain tasks doesn't mean they won't perform well on others. Moreover stating "that for tabular data the random forest or gradient boost techniques are better than Deep Learning" is quite a bold claim. With machine learning, testing always gets the final word and even though it is true that neural networks don't always perform as well as other techniques such as XGboost nothing guarantees that this will apply to your dataset.
