Commit 2e1fa8eb authored by joegomes's avatar joegomes
Browse files

User_specified_features

parent 2f946595
Loading
Loading
Loading
Loading

datasets/gbd3k.pkl.gz

0 → 100644
+405 KiB

File added.

No diff preview for this file type.

+10 −11
Original line number Diff line number Diff line
@@ -136,20 +136,19 @@ class DataFeaturizer(object):
        0, nb_sample, np.ceil(float(nb_sample)/shard_size)+1, dtype=int)
    shard_files = []
    for j in range(len(interval_points)-1):
      log("Sharding and standardizing into shard-%s / %s shards" % (str(j+1), len(interval_points)-1), self.verbose)
      #log("Sharding and standardizing into shard-%s / %s shards" % (str(j+1), len(interval_points)-1), self.verbose)
      raw_df_shard = raw_df.iloc[range(interval_points[j], interval_points[j+1])]
      
      df = self._standardize_df(raw_df_shard)
      log("Aggregating User-Specified Features", self.verbose)
      #log("Aggregating User-Specified Features", self.verbose)
      self._add_user_specified_features(df)

      for compound_featurizer in self.compound_featurizers:
        log("Currently feauturizing feature_type: %s"
        log("Currently featurizing feature_type: %s"
            % compound_featurizer.__class__.__name__, self.verbose)
        self._featurize_compounds(df, compound_featurizer)

      for complex_featurizer in self.complex_featurizers:
        log("Currently feauturizing feature_type: %s"
        log("Currently featurizing feature_type: %s"
            % complex_featurizer.__class__.__name__, self.verbose)
        self._featurize_complexes(df, complex_featurizer)

@@ -159,8 +158,7 @@ class DataFeaturizer(object):

    featurizers = self.compound_featurizers + self.complex_featurizers
    samples = FeaturizedSamples(samples_dir=samples_dir, featurizers=featurizers, 
                                dataset_files=shard_files,
                                reload_data=False)
                                dataset_files=shard_files, reload_data=False)

    return samples

@@ -190,7 +188,7 @@ class DataFeaturizer(object):
    df["smiles"] = ori_df[[self.smiles_field]]
    for task in self.tasks:
      df[task] = ori_df[[task]]
    if self.split_field is not None:
    if self.user_specified_features is not None:
      for feature in self.user_specified_features:
        df[feature] = ori_df[[feature]]
    if self.split_field is not None:
@@ -235,15 +233,15 @@ class DataFeaturizer(object):
      into final features dataframe
    """
    if self.user_specified_features is not None:
      log("Adding user-defined features.", self.verbose)
      #log("Adding user-defined features.", self.verbose)
      features_data = []
      for _, row in df.iterrows():
        # pandas rows are tuples (row_num, row_data)
        feature_list = []
        for feature_name in self.user_specified_features:
          feature_list.append(row[feature_name])
        features_data.append({"user-specified-features": np.array(feature_list)})
      df["user-specified-features"] = pd.DataFrame(features_data)
        features_data.append(np.array(feature_list))
      df["user-specified-features"] = features_data


def map_function(data_tuple, featurizer):
@@ -345,6 +343,7 @@ class FeaturizedSamples(object):
    """Returns size of internal dataset."""
    return self.num_samples

    irint("feature types %s" % self.feature_types)
  def itersamples(self):
    """Iterates over samples in this object."""
    compound_ids = set(list(self.compounds_df["mol_id"]))
+4 −1
Original line number Diff line number Diff line
@@ -77,7 +77,10 @@ class Model(object):
    """
    Factory method that initializes model of requested type.
    """
    if model_instance.__class__ in non_sklearn_models:
    print(model_instance.__class__)
    print(task_types)
    print(model_params)
    if model_instance.__class__ in Model.non_sklearn_models:
      model = model_instance(task_types, model_params, initialize_raw_model)
    else:
      model = Model.registered_model_classes["SklearnModel"](model_instance, 
+5 −1
Original line number Diff line number Diff line
@@ -30,9 +30,13 @@ class Dataset(object):
      os.makedirs(data_dir)
    self.data_dir = data_dir

    if featurizers is not None:
      feature_types = [featurizer.__class__.__name__ for featurizer in featurizers]
    else:
      feature_types = None

    if use_user_specified_features:
      feature_types += ["user-specified-features"]
      feature_types = ["user-specified-features"]

    if samples is not None and feature_types is not None:
      if not isinstance(feature_types, list):
+405 KiB

File added.

No diff preview for this file type.

Loading