dice-group / dice-embeddings

Hardware-agnostic Framework for Large-scale Knowledge Graph Embeddings
MIT License
50 stars 14 forks source link

Problem with numpy.int16 when training #247

Closed Jean-KOUAGOU closed 5 months ago

Jean-KOUAGOU commented 5 months ago

To reproduce the error:

conda env with python 3.10.13: conda create -n dicee python=3.10.13 && conda activate dicee Installation with pip: pip install dicee

Download datasets as wget https://files.dice-research.org/datasets/dice-embeddings/KGs.zip --no-check-certificate && unzip KGs.zip

Now run: dicee --dataset_dir "KGs/UMLS/" --model Keci --eval_model "test"

Demirrr commented 5 months ago

Installation

conda env with python 3.10.13: conda create -n dicee python=3.10.13 && conda activate dicee
pip install dicee
wget https://files.dice-research.org/datasets/dice-embeddings/KGs.zip --no-check-certificate && unzip KGs.zip
dicee --dataset_dir "KGs/UMLS/" --model Keci --eval_model "test"

Reproduced error message

dicee --dataset_dir "KGs/UMLS/" --model Keci --eval_model "test"

data = [self.dataset[idx] for idx in possibly_batched_index]
File "/home/demir/anaconda3/envs/dicee/lib/python3.10/site-packages/dicee/dataset_classes.py", line 341, in __getitem__
    y_vec[self.train_target[idx]] = 1.0
RuntimeError: Could not infer dtype of numpy.int16
Epoch 0:   0%|          | 0/2 [00:00<?, ?it/s] 

Caused by numpy 2.0.0.

Until the next release, the temporary solution is to use 1.26.4

Demirrr commented 5 months ago

With https://github.com/dice-group/dice-embeddings/pull/248/commits/3eebbac5ea69d0cf66e7746b8be291642db522d0 this problem should be fixed. A new release also made see https://github.com/dice-group/dice-embeddings/releases/tag/v1.0.1.4 or https://pypi.org/project/dicee/