Commit d8c3c05b authored by miaecle's avatar miaecle
Browse files

MPNN in benchmark suite

parent 3ee8cd5c
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -178,6 +178,7 @@ CheckFeaturizer = {
    ('qm8', 'krr_ft'): ['CoulombMatrix', 1024],
    ('qm8', 'dtnn'): ['CoulombMatrix', [26, 26]],
    ('qm8', 'ani'): ['BPSymmetryFunction', [26, 4]],
    ('qm8', 'mpnn'): ['MP', [70, 8]],
    ('qm9', 'tf_regression'): ['ECFP', 1024],
    ('qm9', 'rf_regression'): ['ECFP', 1024],
    ('qm9', 'krr'): ['ECFP', 1024],
@@ -185,7 +186,8 @@ CheckFeaturizer = {
    ('qm9', 'tf_regression_ft'): ['CoulombMatrix', [29, 29]],
    ('qm9', 'krr_ft'): ['CoulombMatrix', 1024],
    ('qm9', 'dtnn'): ['CoulombMatrix', [29, 29]],
    ('qm9', 'ani'): ['BPSymmetryFunction', [29, 4]]
    ('qm9', 'ani'): ['BPSymmetryFunction', [29, 4]],
    ('qm9', 'mpnn'): ['MP', [70, 8]]
}

CheckSplit = {
+10 −0
Original line number Diff line number Diff line
@@ -159,6 +159,16 @@ hps['ani'] = {
    'layer_structures': [128, 128, 64],
    'seed': 123
}
hps['mpnn'] = {
    'batch_size': 64,
    'nb_epoch': 50,
    'learning_rate': 0.001,
    'T': 5,
    'M': 10,
    'n_hidden': 30,
    'seed': 123
}

hps['xgb_regression'] = {
    'max_depth': 5,
    'learning_rate': 0.05,
+22 −2
Original line number Diff line number Diff line
@@ -426,7 +426,7 @@ def benchmark_regression(train_dataset,
  model: string,  optional (default='tf_regression')
      choice of which model to use, should be: tf_regression, tf_regression_ft,
      graphconvreg, rf_regression, dtnn, dag_regression, xgb_regression,
      weave_regression
      weave_regression, krr, ani, krr_ft, mpnn
  test: boolean
      whether to calculate test_set performance
  hyper_parameters: dict, optional (default=None)
@@ -450,7 +450,7 @@ def benchmark_regression(train_dataset,
  assert model in [
      'tf_regression', 'tf_regression_ft', 'rf_regression', 'graphconvreg',
      'dtnn', 'dag_regression', 'xgb_regression', 'weave_regression', 'krr',
      'ani', 'krr_ft'
      'ani', 'krr_ft', 'mpnn'
  ]
  if hyper_parameters is None:
    hyper_parameters = hps[model]
@@ -697,6 +697,26 @@ def benchmark_regression(train_dataset,
        mode="regression",
        random_seed=seed)

  elif model_name == 'mpnn':
    batch_size = hyper_parameters['batch_size']
    nb_epoch = hyper_parameters['nb_epoch']
    learning_rate = hyper_parameters['learning_rate']
    T = hyper_parameters['T']
    M = hyper_parameters['M']
    n_hidden = hyper_parameters['n_hidden']

    model = deepchem.models.MPNNTensorGraph(
        len(tasks),
        n_atom_feat=n_features[0],
        n_pair_feat=n_features[1],
        n_hidden=n_hidden,
        T=T,
        M=M,
        batch_size=batch_size,
        learning_rate=learning_rate,
        use_queue=False,
        mode="regression")

  elif model_name == 'rf_regression':
    # Loading hyper parameters
    n_estimators = hyper_parameters['n_estimators']