Skip to content

Commit 636c58b

Browse files
committed
Fix up ST1 benchmarks and files.
1 parent dd8a222 commit 636c58b

7 files changed

+24
-52
lines changed

Pilot1/ST1/class_default_model.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,3 +16,5 @@ vocab_size = 40000
1616
epochs = 400
1717
batch_size = 32
1818
loss = 'sparse_categorical_crossentropy'
19+
learning_rate = 0.000001
20+
optimizer = 'adam'

Pilot1/ST1/regress_default_model.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,3 +16,5 @@ vocab_size = 40000
1616
epochs = 400
1717
batch_size = 32
1818
loss = 'mean_squared_error'
19+
optimizer = 'adam'
20+
learning_rate = 0.001

Pilot1/ST1/sct_baseline_keras2.py

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,11 @@
11
# Setup
22

33
import os
4-
import sys
5-
# import gzip
6-
7-
# import math
8-
# import matplotlib
9-
# matplotlib.use('Agg')
10-
11-
# import matplotlib.pyplot as plt
124

135
from tensorflow.keras import backend as K
14-
from tensorflow.keras.optimizers import Adam # RMSprop, SGD
156
from tensorflow.keras.callbacks import ModelCheckpoint, CSVLogger, ReduceLROnPlateau, EarlyStopping
167

178
file_path = os.path.dirname(os.path.realpath(__file__))
18-
lib_path = os.path.abspath(os.path.join(file_path, '..', '..', 'common'))
19-
sys.path.append(lib_path)
209

2110
import candle
2211
import smiles_transformer as st
@@ -26,8 +15,8 @@ def initialize_parameters(default_model='class_default_model.txt'):
2615

2716
# Build benchmark object
2817
sctBmk = st.BenchmarkST(st.file_path, default_model, 'keras',
29-
prog='p1b1_baseline',
30-
desc='Multi-task (DNN) for data extraction from clinical reports - Pilot 3 Benchmark 1')
18+
prog='sct_baseline',
19+
desc='Transformer model for SMILES classification')
3120

3221
# Initialize parameters
3322
gParameters = candle.finalize_parameters(sctBmk)
@@ -43,8 +32,12 @@ def run(params):
4332

4433
model = st.transformer_model(params)
4534

46-
model.compile(loss='sparse_categorical_crossentropy',
47-
optimizer=Adam(lr=0.000001),
35+
kerasDefaults = candle.keras_default_config()
36+
37+
optimizer = candle.build_optimizer(params['optimizer'], params['learning_rate'], kerasDefaults)
38+
39+
model.compile(loss=params['loss'],
40+
optimizer=optimizer,
4841
metrics=['accuracy'])
4942

5043
# set up a bunch of callbacks to do work during model training..
@@ -63,6 +56,8 @@ def run(params):
6356

6457
model.load_weights('smile_class.autosave.model.h5')
6558

59+
return history
60+
6661

6762
def main():
6863
params = initialize_parameters()

Pilot1/ST1/smiles_class_transformer.py

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,12 @@
11
# Setup
22

33
import pandas as pd
4-
# import numpy as np
54
import os
6-
import sys
7-
# import gzip
85
import argparse
96

10-
# import math
117
import matplotlib
128
matplotlib.use('Agg')
139

14-
# import matplotlib.pyplot as plt
15-
1610
import tensorflow as tf
1711

1812
from tensorflow import keras
@@ -24,8 +18,6 @@
2418
from tensorflow.keras.preprocessing import text
2519

2620
file_path = os.path.dirname(os.path.realpath(__file__))
27-
lib_path = os.path.abspath(os.path.join(file_path, '..', '..', 'common'))
28-
sys.path.append(lib_path)
2921

3022
psr = argparse.ArgumentParser(description='input csv file')
3123
psr.add_argument('--in_train', default='in_train')

Pilot1/ST1/smiles_regress_transformer.py

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,12 @@
11
# Setup
22

33
import pandas as pd
4-
# import numpy as np
54
import os
6-
import sys
7-
# import gzip
85
import argparse
96

10-
# import math
117
import matplotlib
128
matplotlib.use('Agg')
139

14-
# import matplotlib.pyplot as plt
15-
16-
1710
import tensorflow as tf
1811

1912
from tensorflow import keras
@@ -26,8 +19,6 @@
2619

2720

2821
file_path = os.path.dirname(os.path.realpath(__file__))
29-
lib_path = os.path.abspath(os.path.join(file_path, '..', '..', 'common'))
30-
sys.path.append(lib_path)
3122

3223
psr = argparse.ArgumentParser(description='input csv file')
3324
psr.add_argument('--in_train', default='in_train')

Pilot1/ST1/smiles_transformer.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
from __future__ import print_function
22

33
import os
4-
import sys
54

65
import pandas as pd
76

@@ -13,8 +12,6 @@
1312
from tensorflow.keras import backend as K
1413

1514
file_path = os.path.dirname(os.path.realpath(__file__))
16-
lib_path2 = os.path.abspath(os.path.join(file_path, '..', '..', 'common'))
17-
sys.path.append(lib_path2)
1815

1916
import candle
2017

Pilot1/ST1/srt_baseline_keras2.py

Lines changed: 10 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,11 @@
11
# Setup
22

33
import os
4-
import sys
5-
# import gzip
6-
7-
# import math
8-
# import matplotlib
9-
# matplotlib.use('Agg')
10-
11-
# import matplotlib.pyplot as plt
124

135
from tensorflow.keras import backend as K
14-
import tensorflow.keras.optimizers as optimizers
156
from tensorflow.keras.callbacks import ModelCheckpoint, CSVLogger, ReduceLROnPlateau, EarlyStopping
167

178
file_path = os.path.dirname(os.path.realpath(__file__))
18-
lib_path = os.path.abspath(os.path.join(file_path, '..', '..', 'common'))
19-
sys.path.append(lib_path)
209

2110
import candle
2211
import smiles_transformer as st
@@ -52,20 +41,24 @@ def run(params):
5241

5342
model = st.transformer_model(params)
5443

55-
optimizer = optimizers.deserialize({'class_name': params['optimizer'], 'config': {}})
44+
kerasDefaults = candle.keras_default_config()
45+
46+
optimizer = candle.build_optimizer(params['optimizer'], params['learning_rate'], kerasDefaults)
47+
48+
# optimizer = optimizers.deserialize({'class_name': params['optimizer'], 'config': {}})
5649

5750
# I don't know why we set base_lr. It doesn't appear to be used.
5851
# if 'base_lr' in params and params['base_lr'] > 0:
5952
# base_lr = params['base_lr']
6053
# else:
6154
# base_lr = K.get_value(optimizer.lr)
6255

63-
if 'learning_rate' in params and params['learning_rate'] > 0:
64-
K.set_value(optimizer.lr, params['learning_rate'])
65-
print('Done setting optimizer {} learning rate to {}'.format(
66-
params['optimizer'], params['learning_rate']))
56+
# if 'learning_rate' in params and params['learning_rate'] > 0:
57+
# K.set_value(optimizer.lr, params['learning_rate'])
58+
# print('Done setting optimizer {} learning rate to {}'.format(
59+
# params['optimizer'], params['learning_rate']))
6760

68-
model.compile(loss='mean_squared_error',
61+
model.compile(loss=params['loss'],
6962
optimizer=optimizer,
7063
metrics=['mae', st.r2])
7164

0 commit comments

Comments
 (0)