Commit 6be5b3a5 authored by miaecle's avatar miaecle
Browse files

add in to molnet

parent 83f11a11
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -91,3 +91,11 @@ hps['graphconvreg'] = {
    'n_fully_connected_nodes': 256,
    'seed': 123
}
hps['DTNN'] = {
    'batch_size': 128,
    'nb_epoch': 20,
    'learning_rate': 0.0005,
    'n_hidden': 20,
    'n_distance': 100,
    'seed': 123
}
+3 −2
Original line number Diff line number Diff line
@@ -37,7 +37,7 @@ def run_benchmark(datasets,
  model: string or user-defined model stucture
      choice of which model to use, deepchem provides implementation of
      logistic regression, random forest, multitask network, 
      bypass multitask network, irv, graph convolution;
      bypass multitask network, irv, graph convolution, deep tensor NN(only for QM);
      for user define model, it should include function: fit, evaluate
  split: string,  optional (default=None)
      choice of splitter function, None = using the default splitter
@@ -112,7 +112,8 @@ def run_benchmark(datasets,
          return
        if split in ['scaffold', 'butina']:
          return

    if model == 'DTNN' and not dataset in ['qm7', 'qm7b', 'qm9']:
      return
    if not split in [
        None, 'index', 'random', 'scaffold', 'butina', 'stratified'
    ]:
+29 −2
Original line number Diff line number Diff line
@@ -363,7 +363,7 @@ def benchmark_regression(
        n_eval=10,
        seed=seed)

  if model_name == 'graphconvreg':
  elif model_name == 'graphconvreg':
    # Initialize model folder

    # Loading hyper parameters
@@ -400,7 +400,34 @@ def benchmark_regression(
        beta1=.9,
        beta2=.999)

  if model_name == 'rf_regression':
  elif model_name == 'DTNN':
    # Initialize model folder

    # Loading hyper parameters
    batch_size = hyper_parameters['batch_size']
    nb_epoch = hyper_parameters['nb_epoch']
    learning_rate = hyper_parameters['learning_rate']
    n_distance = hyper_parameters['n_distance']
    n_hidden = hyper_parameters['n_hidden']

    tf.set_random_seed(seed)
    graph_model = dc.nn.SequentialDTNNGraph(max_n_atoms=n_features[0], 
                                            n_distance=n_distance)
    graph_model.add(dc.nn.DTNNEmbedding(n_features=n_hidden))
    graph_model.add(dc.nn.DTNNStep(n_features=n_hidden, n_distance=n_distance))
    graph_model.add(dc.nn.DTNNStep(n_features=n_hidden, n_distance=n_distance))
    graph_model.add(dc.nn.DTNNGather(n_tasks=len(tasks)))

    model = dc.models.DTNNRegressor(
        graph_model,
        n_tasks=len(tasks),
        batch_size=batch_size,
        learning_rate=learning_rate,
        optimizer_type="adam",
        beta1=.9,
        beta2=.999)

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