Commit 2c22772e authored by peastman's avatar peastman
Browse files

Simplified names of TensorGraphMultiTask models

parent 9af0485d
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -18,9 +18,9 @@ from deepchem.models.sequential import Sequential
from deepchem.models.tensorflow_models.fcnet import TensorflowMultiTaskRegressor
from deepchem.models.tensorflow_models.fcnet import TensorflowMultiTaskClassifier
from deepchem.models.tensorflow_models.fcnet import TensorflowMultiTaskFitTransformRegressor
from deepchem.models.tensorflow_models.fcnet import TensorGraphMultiTaskRegressor
from deepchem.models.tensorflow_models.fcnet import TensorGraphMultiTaskClassifier
from deepchem.models.tensorflow_models.fcnet import TensorGraphMultiTaskFitTransformRegressor
from deepchem.models.tensorflow_models.fcnet import MultiTaskRegressor
from deepchem.models.tensorflow_models.fcnet import MultiTaskClassifier
from deepchem.models.tensorflow_models.fcnet import MultiTaskFitTransformRegressor
from deepchem.models.tensorflow_models.robust_multitask import RobustMultitaskRegressor
from deepchem.models.tensorflow_models.robust_multitask import RobustMultitaskClassifier
from deepchem.models.tensorflow_models.lr import TensorflowLogisticRegression
+17 −18
Original line number Diff line number Diff line
@@ -25,7 +25,7 @@ from deepchem.models.tensorgraph.tensor_graph import TensorGraph, TFWrapper
from deepchem.models.tensorgraph.layers import Feature, Label, Weights, WeightedError, Dense, Dropout, WeightDecay, Reshape, SoftMaxCrossEntropy, L2Loss, ReduceSum


class TensorGraphMultiTaskClassifier(TensorGraph):
class MultiTaskClassifier(TensorGraph):

  def __init__(self,
               n_tasks,
@@ -39,7 +39,7 @@ class TensorGraphMultiTaskClassifier(TensorGraph):
               activation_fns=tf.nn.relu,
               n_classes=2,
               **kwargs):
    """Create a TensorGraphMultiTaskClassifier.
    """Create a MultiTaskClassifier.

    In addition to the following arguments, this class also accepts all the keywork arguments
    from TensorGraph.
@@ -73,7 +73,7 @@ class TensorGraphMultiTaskClassifier(TensorGraph):
    n_classes: int
      the number of classes
    """
    super(TensorGraphMultiTaskClassifier, self).__init__(**kwargs)
    super(MultiTaskClassifier, self).__init__(**kwargs)
    self.n_tasks = n_tasks
    self.n_features = n_features
    self.n_classes = n_classes
@@ -152,8 +152,8 @@ class TensorGraphMultiTaskClassifier(TensorGraph):
        yield feed_dict

  def predict_proba(self, dataset, transformers=[], outputs=None):
    return super(TensorGraphMultiTaskClassifier, self).predict(
        dataset, transformers, outputs)
    return super(MultiTaskClassifier, self).predict(dataset, transformers,
                                                    outputs)

  def predict(self, dataset, transformers=[], outputs=None):
    """
@@ -176,13 +176,13 @@ class TensorGraphMultiTaskClassifier(TensorGraph):
    y_pred: numpy ndarray or list of numpy ndarrays
    """
    # Results is of shape (n_samples, n_tasks, n_classes)
    retval = super(TensorGraphMultiTaskClassifier, self).predict(
        dataset, transformers, outputs)
    retval = super(MultiTaskClassifier, self).predict(dataset, transformers,
                                                      outputs)
    # retval is of shape (n_samples, n_tasks)
    return np.argmax(retval, axis=2)


class TensorGraphMultiTaskRegressor(TensorGraph):
class MultiTaskRegressor(TensorGraph):

  def __init__(self,
               n_tasks,
@@ -195,7 +195,7 @@ class TensorGraphMultiTaskRegressor(TensorGraph):
               dropouts=0.5,
               activation_fns=tf.nn.relu,
               **kwargs):
    """Create a TensorGraphMultiTaskRegressor.
    """Create a MultiTaskRegressor.

    In addition to the following arguments, this class also accepts all the keywork arguments
    from TensorGraph.
@@ -228,7 +228,7 @@ class TensorGraphMultiTaskRegressor(TensorGraph):
      len(layer_sizes).  Alternatively this may be a single value instead of a list, in which case the
      same value is used for every layer.
    """
    super(TensorGraphMultiTaskRegressor, self).__init__(**kwargs)
    super(MultiTaskRegressor, self).__init__(**kwargs)
    self.n_tasks = n_tasks
    self.n_features = n_features
    n_layers = len(layer_sizes)
@@ -309,8 +309,8 @@ class TensorGraphMultiTaskRegressor(TensorGraph):
        yield feed_dict


class TensorGraphMultiTaskFitTransformRegressor(TensorGraphMultiTaskRegressor):
  """Implements a TensorGraphMultiTaskRegressor that performs on-the-fly transformation during fit/predict.
class MultiTaskFitTransformRegressor(MultiTaskRegressor):
  """Implements a MultiTaskRegressor that performs on-the-fly transformation during fit/predict.

  Example:

@@ -336,10 +336,10 @@ class TensorGraphMultiTaskFitTransformRegressor(TensorGraphMultiTaskRegressor):
               n_evals=1,
               batch_size=50,
               **kwargs):
    """Create a TensorGraphMultiTaskFitTransformRegressor.
    """Create a MultiTaskFitTransformRegressor.

    In addition to the following arguments, this class also accepts all the keywork arguments
    from TensorGraphMultiTaskRegressor.
    from MultiTaskRegressor.

    Parameters
    ----------
@@ -367,7 +367,7 @@ class TensorGraphMultiTaskFitTransformRegressor(TensorGraphMultiTaskRegressor):
      X_b = transformer.X_transform(X_b)
    n_features = X_b.shape[1]
    print("n_features after fit_transform: %d" % int(n_features))
    super(TensorGraphMultiTaskFitTransformRegressor, self).__init__(
    super(MultiTaskFitTransformRegressor, self).__init__(
        n_tasks, n_features, batch_size=batch_size, **kwargs)

  def default_generator(self,
@@ -405,9 +405,8 @@ class TensorGraphMultiTaskFitTransformRegressor(TensorGraphMultiTaskRegressor):
        feed_dict[self.features[0]] = X_t
        yield feed_dict

    return super(TensorGraphMultiTaskFitTransformRegressor,
                 self).predict_on_generator(transform_generator(), transformers,
                                            outputs)
    return super(MultiTaskFitTransformRegressor, self).predict_on_generator(
        transform_generator(), transformers, outputs)


class TensorflowMultiTaskClassifier(TensorflowClassifier):
+1 −1
Original line number Diff line number Diff line
@@ -11,7 +11,7 @@
#    return self.out_tensor
#
#
#def tensorGraphMultitaskClassifier(n_tasks,
#def MultiTaskClassifier(n_tasks,
#                                   n_features,
#                                   layer_sizes=[500],
#                                   bypass_layer_sizes=[100],
+1 −1
Original line number Diff line number Diff line
@@ -215,7 +215,7 @@ class TestAPI(unittest.TestCase):
        dc.metrics.Metric(dc.metrics.accuracy_score)
    ]

    model = dc.models.TensorGraphMultiTaskClassifier(len(tasks), n_features)
    model = dc.models.MultiTaskClassifier(len(tasks), n_features)

    # Test Parameter getting and setting
    param, value = 'weight_decay_penalty_type', 'l2'
+7 −7
Original line number Diff line number Diff line
@@ -164,7 +164,7 @@ class TestOverfit(test_util.TensorFlowTestCase):

    regression_metric = dc.metrics.Metric(dc.metrics.mean_squared_error)
    # TODO(rbharath): This breaks with optimizer="momentum". Why?
    model = dc.models.TensorGraphMultiTaskRegressor(
    model = dc.models.MultiTaskRegressor(
        n_tasks,
        n_features,
        dropouts=[0.],
@@ -228,7 +228,7 @@ class TestOverfit(test_util.TensorFlowTestCase):
    dataset = dc.data.NumpyDataset(X, y, w, ids)

    classification_metric = dc.metrics.Metric(dc.metrics.accuracy_score)
    model = dc.models.TensorGraphMultiTaskClassifier(
    model = dc.models.MultiTaskClassifier(
        n_tasks,
        n_features,
        dropouts=[0.],
@@ -293,7 +293,7 @@ class TestOverfit(test_util.TensorFlowTestCase):

    fit_transformers = [dc.trans.CoulombFitTransformer(dataset)]
    regression_metric = dc.metrics.Metric(dc.metrics.mean_squared_error)
    model = dc.models.TensorGraphMultiTaskFitTransformRegressor(
    model = dc.models.MultiTaskFitTransformRegressor(
        n_tasks, [n_features, n_features],
        dropouts=[0.],
        weight_init_stddevs=[np.sqrt(6) / np.sqrt(1000)],
@@ -364,7 +364,7 @@ class TestOverfit(test_util.TensorFlowTestCase):
    dataset = dc.data.NumpyDataset(X, y, w, ids)

    classification_metric = dc.metrics.Metric(dc.metrics.roc_auc_score)
    model = dc.models.TensorGraphMultiTaskClassifier(
    model = dc.models.MultiTaskClassifier(
        n_tasks,
        n_features,
        dropouts=[0.],
@@ -454,7 +454,7 @@ class TestOverfit(test_util.TensorFlowTestCase):
    dataset = dc.data.DiskDataset.from_numpy(X, y, w, ids)

    classification_metric = dc.metrics.Metric(dc.metrics.roc_auc_score)
    model = dc.models.TensorGraphMultiTaskClassifier(
    model = dc.models.MultiTaskClassifier(
        n_tasks,
        n_features,
        dropouts=[0.],
@@ -553,7 +553,7 @@ class TestOverfit(test_util.TensorFlowTestCase):

    classification_metric = dc.metrics.Metric(
        dc.metrics.accuracy_score, task_averager=np.mean)
    model = dc.models.TensorGraphMultiTaskClassifier(
    model = dc.models.MultiTaskClassifier(
        n_tasks,
        n_features,
        dropouts=[0.],
@@ -751,7 +751,7 @@ class TestOverfit(test_util.TensorFlowTestCase):

    regression_metric = dc.metrics.Metric(
        dc.metrics.mean_squared_error, task_averager=np.mean, mode="regression")
    model = dc.models.TensorGraphMultiTaskRegressor(
    model = dc.models.MultiTaskRegressor(
        n_tasks,
        n_features,
        dropouts=[0.],
Loading