andreamena commited on
Commit
4cc89dc
·
verified ·
1 Parent(s): 53a48ca

Update dataset.py

Browse files
Files changed (1) hide show
  1. dataset.py +1 -34
dataset.py CHANGED
@@ -11,6 +11,7 @@ from collections import defaultdict
11
  from rdkit.Chem.Scaffolds import MurckoScaffold
12
  from itertools import compress
13
 
 
14
  str2num = {'<pad>':0 ,'H': 1, 'C': 2, 'N': 3, 'O': 4, 'S': 5, 'F': 6, 'Cl': 7, 'Br': 8, 'P': 9,
15
  'I': 10,'Na': 11,'B':12,'Se':13,'Si':14,'<unk>':15,'<mask>':16,'<global>':17}
16
  num2str = {i:j for j,i in str2num.items()}
@@ -125,37 +126,3 @@ class Inference_Dataset(object):
125
  smiles.set_shape([1])
126
  atom_list.set_shape([None])
127
  return x, adjoin_matrix,smiles,atom_list
128
-
129
- class Inference_Dataset(object):
130
- def __init__(self,sml_list,max_len=500,addH=True):
131
- self.vocab = str2num
132
- self.devocab = num2str
133
- self.sml_list = [i for i in sml_list if len(i)<max_len]
134
- self.addH = addH
135
-
136
- def get_data(self):
137
- self.dataset = tf.data.Dataset.from_tensor_slices((self.sml_list,))
138
- self.dataset = self.dataset.map(self.tf_numerical_smiles).padded_batch(512, padded_shapes=(
139
- tf.TensorShape([None]), tf.TensorShape([None,None]),tf.TensorShape([1]),tf.TensorShape([None]))).cache().prefetch(20)
140
-
141
- return self.dataset
142
-
143
- def numerical_smiles(self, smiles):
144
- smiles_origin = smiles
145
- smiles = smiles.numpy().decode()
146
- atoms_list, adjoin_matrix = smiles2adjoin(smiles,explicit_hydrogens=self.addH)
147
- atoms_list = ['<global>'] + atoms_list
148
- nums_list = [str2num.get(i,str2num['<unk>']) for i in atoms_list]
149
- temp = np.ones((len(nums_list),len(nums_list)))
150
- temp[1:,1:] = adjoin_matrix
151
- adjoin_matrix = (1-temp)*(-1e9)
152
- x = np.array(nums_list).astype('int64')
153
- return x, adjoin_matrix,[smiles], atoms_list
154
-
155
- def tf_numerical_smiles(self, smiles):
156
- x,adjoin_matrix,smiles,atom_list = tf.py_function(self.numerical_smiles, [smiles], [tf.int64, tf.float32,tf.string, tf.string])
157
- x.set_shape([None])
158
- adjoin_matrix.set_shape([None,None])
159
- smiles.set_shape([1])
160
- atom_list.set_shape([None])
161
- return x, adjoin_matrix,smiles,atom_list
 
11
  from rdkit.Chem.Scaffolds import MurckoScaffold
12
  from itertools import compress
13
 
14
+ label = 'label'
15
  str2num = {'<pad>':0 ,'H': 1, 'C': 2, 'N': 3, 'O': 4, 'S': 5, 'F': 6, 'Cl': 7, 'Br': 8, 'P': 9,
16
  'I': 10,'Na': 11,'B':12,'Se':13,'Si':14,'<unk>':15,'<mask>':16,'<global>':17}
17
  num2str = {i:j for j,i in str2num.items()}
 
126
  smiles.set_shape([1])
127
  atom_list.set_shape([None])
128
  return x, adjoin_matrix,smiles,atom_list