def create_trainable_model(self,sequences, pred_length, proxy_layer=None, need_noise_dropout=False, stddev=5.,sample_stddev=None):
from keras.layers import Input, GaussianNoise
from keras.models import Model
from pp_layer import HawkesLayer
if self.sequence_weights is None:
sys.stderr.write(str({
'error info':'unpretrained generator',
}) + '\n')
sys.stderr.flush()
x = Input(batch_shape=(1,1), dtype='int32')
hawkes_layer = HawkesLayer(sequences,pred_length,sequence_weights=self.sequence_weights,proxy_layer=proxy_layer,sample_stddev=sample_stddev)
y = hawkes_layer(x)
if need_noise_dropout == True:
y = GaussianNoise(stddev)(y)
model = Model(inputs=[x], outputs=[y], name='hawkes_output')
self.model = model
self.hawkes_layer = hawkes_layer
return model
评论列表
文章目录