Commit da8419d5 authored by Karl Leswing's avatar Karl Leswing
Browse files

Membrane Permeability Data

parent 40302b01
Loading
Loading
Loading
Loading
+202 −202

File changed.

Preview size limit exceeded, changes collapsed.

+7 −7
Original line number Diff line number Diff line
@@ -245,7 +245,7 @@ class SDFLoader(DataLoader):
    self.clean_mols = clean_mols
    self.smiles_field = "smiles"
    self.mol_field = "mol"
    self.id_field = "mol_id"
    self.id_field = "smiles"

  def get_shards(self, input_files, shard_size):
    """Defines a generator which returns data for each shard"""
+8 −5
Original line number Diff line number Diff line
@@ -57,6 +57,7 @@ from qm9.qm9_datasets import load_qm9
from sampl.sampl_datasets import load_sampl
from clintox.clintox_datasets import load_clintox
from hiv.hiv_datasets import load_hiv
from membrane_permeability.membrane_permeability_datasets import load_permeability
import xgboost


@@ -92,7 +93,7 @@ def benchmark_loading_datasets(hyper_parameters,
    mode = 'classification'
  elif dataset in [
      'kaggle', 'delaney', 'nci', 'pdbbind', 'chembl', 'qm7', 'qm7b', 'qm9',
      'sampl'
      'sampl', 'membrane_permeability'
  ]:
    mode = 'regression'
  else:
@@ -160,7 +161,8 @@ def benchmark_loading_datasets(hyper_parameters,
      'qm9': load_qm9,
      'sampl': load_sampl,
      'clintox': load_clintox,
      'hiv': load_hiv
      'hiv': load_hiv,
      'membrane_permeability': load_permeability
  }

  print('-------------------------------------')
@@ -916,8 +918,8 @@ if __name__ == '__main__':
      dest='dataset_args',
      default=[],
      help='Choice of dataset: tox21, sider, muv, toxcast, pcba, ' +
      'kaggle, delaney, nci, pdbbind, chembl, sampl, qm7, qm7b, qm9, clintox, hiv'
  )
      'kaggle, delaney, nci, pdbbind, chembl, sampl, qm7, qm7b, qm9, clintox, hiv,'
      ' membrane_permeability')
  parser.add_argument(
      '-t',
      action='store_true',
@@ -943,7 +945,8 @@ if __name__ == '__main__':
  if len(datasets) == 0:
    datasets = [
        'tox21', 'sider', 'muv', 'toxcast', 'pcba', 'clintox', 'hiv', 'sampl',
        'delaney', 'nci', 'kaggle', 'pdbbind', 'chembl', 'qm7b', 'qm9'
        'delaney', 'nci', 'kaggle', 'pdbbind', 'chembl', 'qm7b', 'qm9',
        'membrane_permeability'
    ]

  #input hyperparameters
+8 −6
Original line number Diff line number Diff line
@@ -15,8 +15,8 @@ def load_permeability(featurizer='ECFP', split='index'):
  """Load membrain permeability datasets. Does not do train/test split"""
  print("About to load membrain permeability dataset.")
  current_dir = os.path.dirname(os.path.realpath(__file__))
  dataset_file = os.path.join(
    current_dir, "../../datasets/membrane_permeability.sdf")
  dataset_file = os.path.join(current_dir,
                              "../../datasets/membrane_permeability.sdf")
  # Featurize permeability dataset
  print("About to featurize membrain permeability dataset.")

@@ -31,9 +31,11 @@ def load_permeability(featurizer='ECFP', split='index'):
      tasks=permeability_tasks, clean_mols=True, featurizer=featurizer_func)
  dataset = loader.featurize(dataset_file)

  splitters = {'index': dc.splits.IndexSplitter(),
  splitters = {
      'index': dc.splits.IndexSplitter(),
      'random': dc.splits.RandomSplitter(),
               'scaffold': dc.splits.ScaffoldSplitter()}
      'scaffold': dc.splits.ScaffoldSplitter()
  }
  splitter = splitters[split]
  train, valid, test = splitter.train_valid_test_split(dataset)
  return permeability_tasks, (train, valid, test), []
+9 −9
Original line number Diff line number Diff line
@@ -13,7 +13,8 @@ import deepchem as dc
from membrain_permeability_datasets import load_permeability

# Load Tox21 dataset
permeability_tasks, permeability_datasets, transformers = load_permeability(featurizer='GraphConv')
permeability_tasks, permeability_datasets, transformers = load_permeability(
    featurizer='GraphConv')
train_dataset, valid_dataset, test_dataset = permeability_datasets

metric = dc.metrics.Metric(dc.metrics.pearson_r2_score, np.mean)
@@ -53,4 +54,3 @@ print(train_scores)

print("Validation scores")
print(valid_scores)