Description
- Contextualized Topic Models version:
- Python version:
- Operating System:
Description
There seems to be a potential bug in the data_preparation.py
script, specifically at this line. I propose adjusting the conditional statement to:
if self.contextualized_model is None and custom_embeddings is None:
instead of:
if self.contextualized_model is None:
Currently, when self.contextualized_model
is set to None and custom_embeddings
are provided (such as when using externally sourced embeddings), the code erroneously raises an error. This issue occurs because the conditional logic does not adequately account for the scenario where custom_embeddings is used independently of self.contextualized_model
.
What I Did
Here's how the error can be reproduced:
# train_docs, test_docs = ..., ...
# preprocessed_train_docs, preprocessed_test_docs = ..., ...
# embeddings_train, embeddings_test = ..., ...
qt = TopicModelDataPreparation()
train_dataset = qt.fit(text_for_contextual=train_docs, text_for_bow=preprocessed_train_docs, custom_embeddings=embeddings_train)
test_dataset = qt.transform(text_for_contextual=test_docs, text_for_bow=preprocessed_test_docs, custom_embeddings=embeddings_test) # This line raises an error.
The expected behavior is that when custom_embeddings are provided, the method should proceed without requiring self.contextualized_model
. This adjustment will allow the use of alternative embeddings without triggering unnecessary errors.