Giter Club home page Giter Club logo

Comments (4)

hkmztrk avatar hkmztrk commented on September 13, 2024

Hi @DBpackage, thanks a lot for your interest. It seems to me your inputs are correctly formatted since the code itself is running.

What is the issue with the results? Do you mean the loss not improving? Since your datasets are now original, the hyper parameters might need (e.g. kernel sizes and learning rate) fine-tuning. You can also try different training sets such as KIBA, DTC etc. and then see whether there is an improvement on the training and test set. Another note is, sometimes isomeric SMILES is more informative than canonical SMILES, so you can also try those.

Let me know if you have more questions/issues.

from deepdta.

DBpackage avatar DBpackage commented on September 13, 2024

Thanks for fast replying!

Adjustment of hyperparameters is important for improving the performance of the model. However, even if the model has the wrong hyperparameters, if the model itself does not appear to be learning at all, it is unlikely that the adjustment of the hyperparameters alone will solve it. Anyway, I've not tried to adjust the parameters, I will do that too! many thanks!

image

My question is

  1. As you can see above, I got zero C-index score and it's not reasonable. I think something is wrong since as I know, CI less than 0.5 is abnormal.
  2. During making my own dataset, at the first place, I misunderstood that I had to make the train and test folds for running the model. But after I run the model, I found that it makes the folds itself. So, I don't need to make the train index list text file(folds/train_folds.txt) by myself?
  3. My training dataset has almost 110000 data. And I saw that model train it really fast (only 8seconds per epoch). It's normal speed for training? I think it's too fast.

I'm going to use your KIBA dataset for running the model for checking the model is working now, thanks!

Respectfully!

from deepdta.

hkmztrk avatar hkmztrk commented on September 13, 2024
  1. I see, yes, cindex measure does not make sense. I would then suggest to do basic debugging, e.g. starting with a train set of 10 samples and overfitting the model. You'd need to see loss and cindex changing meaningfully - then you can gradually increase the dataset size and test again.

  2. Yes, new datasets are prepared here. Did you update (i) the arguments for train/test paths to reflect your train/test and (ii) make sure that the binding affinities for both datasets are on the same scale?

  3. I really can't determine the runtime, sorry. But with gpu, one can expect around max 2hrs of training I'm guessing.

from deepdta.

DBpackage avatar DBpackage commented on September 13, 2024

I'm sorry for late, I was crazily busy lately.

  1. I run only with 100 samples, Train with (22, 7) and test with (7, 2) [drug, target matrix], still the model didn't work. It returns same results CI score 0.5
  2. Yes I updated train/test path to my own dataset folder and since I used BindingDB dataset, It has same binding affinities with DAVIS dataset so I changed the arguments --isLog 1 . I made train/test from the same table so the affinity scales must be same.
  3. Okay then I don't mind the runtime anymore thanks!

Because I want to check if I run the model correctly, I've tried to run the model with your own DAVIS dataset.
I used run_experiments.py in the source directory and I only changed the --data_path and --isLog arguments in the go.sh file. The code what I fixed is here.

python run_experiments.py --num_windows 32
--seq_window_lengths 8 12
--smi_window_lengths 4 8
--batch_size 256
--num_epoch 100
--max_seq_len 1000
--max_smi_len 100
--dataset_path '../data/davis/'
--problem_type 1
--isLog 1
--log_dir 'logs/'

and I run with this code
./go.sh

and I have to change some run_experiments.py codes for running on my system. (tensorflow >2.X, I only changed these two codes)

1. importing tensorflow part
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()

2. importing Keras part
from keras import backend as K
tf.set_random_seed(0)
sess = tf.Session(graph=tf.get_default_graph(), config=session_conf)
tf.keras.backend.set_session(sess)

I got these same result.
image

Is there any mistake with my running code?
I think if I can't run the model with your model and dataset, the tensorflow2.X version cause something wrong during the training. (As I said above, my system has only >3000RTX, I can't use tf 1.X version since the CUDA 10 is not supported)

Thanks in advance!

from deepdta.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.