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

fix for failure

parent 8ae88ee5
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -11,7 +11,7 @@ __license__ = "MIT"

import tensorflow as tf
from deepchem.nn.layers import GraphGather
from deepchem.models.tf_new_models.graph_topology import GraphTopology, DTNNGraphTopology, DAGGraphTopology, WeaveGraphTopology, WeaveGraphTopology_v2
from deepchem.models.tf_new_models.graph_topology import GraphTopology, DTNNGraphTopology, DAGGraphTopology, WeaveGraphTopology, AlternateWeaveGraphTopology


class SequentialGraph(object):
@@ -196,8 +196,8 @@ class SequentialWeaveGraph(SequentialGraph):
      self.layers.append(layer)


class SequentialWeaveGraph_v2(SequentialGraph):
  """SequentialGraph for Weave models
class AlternateSequentialWeaveGraph(SequentialGraph):
  """Alternate implementation of SequentialGraph for Weave models
  """

  def __init__(self, batch_size, max_atoms=50, n_atom_feat=75, n_pair_feat=14):
@@ -207,7 +207,7 @@ class SequentialWeaveGraph_v2(SequentialGraph):
    self.n_atom_feat = n_atom_feat
    self.n_pair_feat = n_pair_feat
    with self.graph.as_default():
      self.graph_topology = WeaveGraphTopology_v2(
      self.graph_topology = AlternateWeaveGraphTopology(
          self.batch_size, self.max_atoms, self.n_atom_feat, self.n_pair_feat)
      self.output = self.graph_topology.get_atom_features_placeholder()
      self.output_P = self.graph_topology.get_pair_features_placeholder()
@@ -216,11 +216,11 @@ class SequentialWeaveGraph_v2(SequentialGraph):
  def add(self, layer):
    """Adds a new layer to model."""
    with self.graph.as_default():
      if type(layer).__name__ in ['WeaveLayer_v2']:
      if type(layer).__name__ in ['AlternateWeaveLayer']:
        self.output, self.output_P = layer([
            self.output, self.output_P
        ] + self.graph_topology.get_topology_placeholders())
      elif type(layer).__name__ in ['WeaveGather_v2']:
      elif type(layer).__name__ in ['AlternateWeaveGather']:
        self.output = layer(
            [self.output, self.graph_topology.atom_split_placeholder])
      else:
+1 −1
Original line number Diff line number Diff line
@@ -494,7 +494,7 @@ class WeaveGraphTopology(GraphTopology):
    return dict_DTNN


class WeaveGraphTopology_v2(GraphTopology):
class AlternateWeaveGraphTopology(GraphTopology):
  """Manages placeholders associated with batch of graphs and their topology"""

  def __init__(self,
+12 −8
Original line number Diff line number Diff line
@@ -243,6 +243,7 @@ def benchmark_classification(train_dataset,
      test_dataset.reshard(reshard_size)
      test_dataset = transformer.transform(test_dataset)

    tf.set_random_seed(seed)
    graph_model = deepchem.nn.SequentialDAGGraph(
        n_features, batch_size=batch_size, max_atoms=max_atoms)
    graph_model.add(
@@ -271,18 +272,19 @@ def benchmark_classification(train_dataset,
    max_atoms_test = max([mol.get_num_atoms() for mol in test_dataset.X])
    max_atoms = max([max_atoms_train, max_atoms_valid, max_atoms_test])

    graph_model = deepchem.nn.SequentialWeaveGraph_v2(
    tf.set_random_seed(seed)
    graph_model = deepchem.nn.AlternateSequentialWeaveGraph(
        batch_size,
        max_atoms=max_atoms,
        n_atom_feat=n_features,
        n_pair_feat=n_pair_feat)
    graph_model.add(deepchem.nn.WeaveLayer_v2(max_atoms, 75, 14))
    graph_model.add(deepchem.nn.AlternateWeaveLayer(max_atoms, 75, 14))
    graph_model.add(
        deepchem.nn.WeaveLayer_v2(max_atoms, 50, 50, update_pair=False))
        deepchem.nn.AlternateWeaveLayer(max_atoms, 50, 50, update_pair=False))
    graph_model.add(deepchem.nn.Dense(n_graph_feat, 50, activation='tanh'))
    graph_model.add(deepchem.nn.BatchNormalization(epsilon=1e-5, mode=1))
    graph_model.add(
        deepchem.nn.WeaveGather_v2(
        deepchem.nn.AlternateWeaveGather(
            batch_size, n_input=n_graph_feat, gaussian_expand=True))

    model = deepchem.models.MultitaskGraphClassifier(
@@ -571,6 +573,7 @@ def benchmark_regression(train_dataset,
      test_dataset.reshard(reshard_size)
      test_dataset = transformer.transform(test_dataset)

    tf.set_random_seed(seed)
    graph_model = deepchem.nn.SequentialDAGGraph(
        n_features, batch_size=batch_size, max_atoms=max_atoms)
    graph_model.add(
@@ -599,18 +602,19 @@ def benchmark_regression(train_dataset,
    max_atoms_test = max([mol.get_num_atoms() for mol in test_dataset.X])
    max_atoms = max([max_atoms_train, max_atoms_valid, max_atoms_test])

    graph_model = deepchem.nn.SequentialWeaveGraph_v2(
    tf.set_random_seed(seed)
    graph_model = deepchem.nn.AlternateSequentialWeaveGraph(
        batch_size,
        max_atoms=max_atoms,
        n_atom_feat=n_features,
        n_pair_feat=n_pair_feat)
    graph_model.add(deepchem.nn.WeaveLayer_v2(max_atoms, 75, 14))
    graph_model.add(deepchem.nn.AlternateWeaveLayer(max_atoms, 75, 14))
    graph_model.add(
        deepchem.nn.WeaveLayer_v2(max_atoms, 50, 50, update_pair=False))
        deepchem.nn.AlternateWeaveLayer(max_atoms, 50, 50, update_pair=False))
    graph_model.add(deepchem.nn.Dense(n_graph_feat, 50, activation='tanh'))
    graph_model.add(deepchem.nn.BatchNormalization(epsilon=1e-5, mode=1))
    graph_model.add(
        deepchem.nn.WeaveGather_v2(
        deepchem.nn.AlternateWeaveGather(
            batch_size, n_input=n_graph_feat, gaussian_expand=True))

    model = deepchem.models.MultitaskGraphRegressor(
+8 −3
Original line number Diff line number Diff line
@@ -30,7 +30,7 @@ class TestMolnet(unittest.TestCase):
    split = 'random'
    out_path = tempfile.mkdtemp()
    dc.molnet.run_benchmark(
        datasets, str(model), split=split, out_path=out_path)
        datasets, str(model), split=split, out_path=out_path, reload=False)
    with open(os.path.join(out_path, 'results.csv'), 'r') as f:
      reader = csv.reader(f)
      for lastrow in reader:
@@ -47,7 +47,7 @@ class TestMolnet(unittest.TestCase):
    split = 'random'
    out_path = tempfile.mkdtemp()
    dc.molnet.run_benchmark(
        datasets, str(model), split=split, out_path=out_path)
        datasets, str(model), split=split, out_path=out_path, reload=False)
    with open(os.path.join(out_path, 'results.csv'), 'r') as f:
      reader = csv.reader(f)
      for lastrow in reader:
@@ -64,7 +64,12 @@ class TestMolnet(unittest.TestCase):
    split = 'random'
    out_path = tempfile.mkdtemp()
    dc.molnet.run_benchmark(
        datasets, str(model), split=split, out_path=out_path, test=True)
        datasets,
        str(model),
        split=split,
        out_path=out_path,
        test=True,
        reload=False)
    with open(os.path.join(out_path, 'results.csv'), 'r') as f:
      reader = csv.reader(f)
      for lastrow in reader:
+4 −4
Original line number Diff line number Diff line
@@ -21,10 +21,10 @@ from deepchem.nn.layers import DAGLayer
from deepchem.nn.layers import DAGGather

from deepchem.nn.weave_layers import WeaveLayer
from deepchem.nn.weave_layers import WeaveLayer_v2
from deepchem.nn.weave_layers import AlternateWeaveLayer
from deepchem.nn.weave_layers import WeaveConcat
from deepchem.nn.weave_layers import WeaveGather
from deepchem.nn.weave_layers import WeaveGather_v2
from deepchem.nn.weave_layers import AlternateWeaveGather

from deepchem.nn.model_ops import weight_decay
from deepchem.nn.model_ops import optimizer
@@ -38,10 +38,10 @@ from deepchem.models.tf_new_models.graph_topology import GraphTopology
from deepchem.models.tf_new_models.graph_topology import DTNNGraphTopology
from deepchem.models.tf_new_models.graph_topology import DAGGraphTopology
from deepchem.models.tf_new_models.graph_topology import WeaveGraphTopology
from deepchem.models.tf_new_models.graph_topology import WeaveGraphTopology_v2
from deepchem.models.tf_new_models.graph_topology import AlternateWeaveGraphTopology
from deepchem.models.tf_new_models.graph_models import SequentialGraph
from deepchem.models.tf_new_models.graph_models import SequentialDTNNGraph
from deepchem.models.tf_new_models.graph_models import SequentialDAGGraph
from deepchem.models.tf_new_models.graph_models import SequentialWeaveGraph
from deepchem.models.tf_new_models.graph_models import SequentialWeaveGraph_v2
from deepchem.models.tf_new_models.graph_models import AlternateSequentialWeaveGraph
from deepchem.models.tf_new_models.graph_models import SequentialSupportGraph
Loading