The difference between machine leaning models and rule based model is that you feed input and output to machine learning models to get rules where you feed input and rules to rule based models to get output.
Say you have a dataset with 10k records. You might use 8k of them to build a machine learning model and the rest to validate your model. On the other hand, you would probably use all the 10k records to create a rule based model. If this was a classification model, how should I compare the 2 models? Accuracy of the machine learning model from the test dataset (2k) and accuracy of the rule based model from all the records?