pp_layer.py 文件源码

python
阅读 19 收藏 0 点赞 0 评论 0

项目:academic 作者: xinchrome 项目源码 文件源码
def __init__(self, sequences_value, pred_length, delta = 1., sequence_weights=None, proxy_layer=None, sample_stddev=None, **kwargs):
        """
        can only be the first layer of an architecture

        sequences_value[sequence, event, type, feature]

        sequences only contain training events
        """
        self.sequences_value = np.array(sequences_value,dtype='float32')
        self.sequences_initializer = Constant(self.sequences_value)
        shape = self.sequences_value.shape
        self.nb_sequence = shape[0]
        self.nb_event = shape[1]
        self.nb_type = shape[2]
        self.nb_feature = shape[3]
        self.pred_length = pred_length
        self.delta = delta
        self.proxy_layer = proxy_layer
        self.sample_stddev = sample_stddev

        if self.proxy_layer:
            super(HawkesLayer, self).__init__(**kwargs)
            return

        if sequence_weights:
            assert len(sequence_weights) == self.nb_sequence
            assert len(sequence_weights[0]['spont']) == self.nb_type

            self.spont_initializer = Constant(np.array([x['spont'] for x in sequence_weights]))
            self.Theta_initializer = Constant(np.array([x['theta'] for x in sequence_weights]))
            self.W_initializer = Constant(np.array([x['w'] for x in sequence_weights]))
            self.Alpha_initializer = Constant(np.array([x['alpha'] for x in sequence_weights]))
        else:
            self.spont_initializer = Constant(np.array([[1.3 for j in range(self.nb_type)] for i in range(self.nb_sequence)]))
            self.Theta_initializer = Constant(np.array([[0.05 for j in range(self.nb_type)] for i in range(self.nb_sequence)]))
            self.W_initializer = Constant(np.array([[1. for j in range(self.nb_type)] for i in range(self.nb_sequence)]))
            self.Alpha_initializer = Constant(np.array([[[1. for k in range(self.nb_type)] for j in range(self.nb_type)] for i in range(self.nb_sequence)]))

        super(HawkesLayer, self).__init__(**kwargs)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号