If you change this line to f.generatingClassifier.equals(generatingClassifier) things would start to work. (note the asserts right before this line). In other words, there are two generatingClassifier set in the code which have the same string, but different addresses.
LBjava compares addresses of generatingClassifier to make sure everything (Lexicon and feature generators) are compatible. But in Saul, the feature extractors are already defined in DataModel, while Lexicon is being loaded from file. So this check creates problems for Saul when loading models. On the other hand relaxing this check makes LBJava less safe, although I think this usually shouldn't make any problems.
We had some issues in Saul when loading the model: https://github.com/IllinoisCogComp/saul/issues/235
LBjava compares addresses of
generatingClassifier
to make sure everything (Lexicon and feature generators) are compatible. But in Saul, the feature extractors are already defined in DataModel, while Lexicon is being loaded from file. So this check creates problems for Saul when loading models. On the other hand relaxing this check makes LBJava less safe, although I think this usually shouldn't make any problems.