-
-
Notifications
You must be signed in to change notification settings - Fork 203
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Describe the bug
In PyKEEN, when "create_inverse_triples" is set to false for ConvE, the evaluation becomes extremely slow.
How to reproduce
def replicate_conve():
import pykeen.datasets
import pykeen.models
import pykeen.training
import pykeen.optimizers
import pykeen.evaluation
from pykeen.losses import BCEAfterSigmoidLoss
# Load the FB15K dataset
dataset = pykeen.datasets.FB15k(create_inverse_triples=False)
# Set up the loss function
loss = BCEAfterSigmoidLoss(reduction='mean')
# Initialize the ConvE model with the specified parameters
model = pykeen.models.ConvE(
embedding_dim=200,
# input_channels=1,
output_channels=32,
embedding_height=10,
embedding_width=20,
kernel_height=3,
kernel_width=3,
input_dropout=0.2,
feature_map_dropout=0.2,
output_dropout=0.3,
apply_batch_normalization=True,
entity_initializer='xavier_normal',
relation_initializer='xavier_normal',
triples_factory=dataset.training,
loss=loss
).to("cuda")
# Set up the optimizer
optimizer = pykeen.optimizers.Adam(
params=model.get_grad_params(),
lr=0.001
)
# Configure the training loop
training_loop = pykeen.training.LCWATrainingLoop(
model=model,
triples_factory=dataset.training,
optimizer=optimizer,
)
eval_callback = ZTrainingCallback(evaluation_triples=dataset.validation.mapped_triples,
full_test_evaluation_triples=dataset.testing.mapped_triples,
additional_filter_triples=dataset.training.mapped_triples)
# Train the model
training_loop.train(
triples_factory=dataset.training,
num_epochs=3,
batch_size=128,
label_smoothing=0.1,
use_tqdm_batch=False,
callbacks=[eval_callback],
)
# Evaluate the model
evaluator = pykeen.evaluation.RankBasedEvaluator(filtered=True)
results = evaluator.evaluate(
model=model,
mapped_triples=dataset.testing.mapped_triples,
additional_filter_triples=[
dataset.training.mapped_triples,
dataset.validation.mapped_triples
]
)
# Output the results
print(results.to_dict())
Environment
1.11.1-dev
Additional information
No response
Issue Template Checks
- This is not a feature request (use a different issue template if it is)
- This is not a question (use the discussions forum instead)
- I've read the text explaining why including environment information is important and understand if I omit this information that my issue will be dismissed
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working