logit_rules.py 文件源码

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

项目:mitre 作者: gerberlab 项目源码 文件源码
def step(self):
        beta_values = []
        for i in xrange(self.local_updates_per_structure_update):
            self.update_omega()
            self.update_beta()
            beta_values.append(self.current_state.beta)
        self.additional_beta_values.append(beta_values)
        move_type_indicator = np.random.rand()
        if move_type_indicator < 0.45:
            self.update_primitives()
        elif move_type_indicator < 0.9:
            self.add_remove()
        else:
            self.move_primitive()
        # If the structure moves are accepted, beta becomes out of date, 
        # perhaps grievously, so we defensively update it before
        # recording the new state
        self.update_beta()
        self.update_empty_probability()
        self.update_window_parameters()
        # As a convenience, have update_phylogeny_parameters return
        # the resulting state's prior value (which it calculates
        # anyway) and record that rather than recalculating it.
        prior = self.update_phylogeny_parameters()
        self.states.append(self.current_state.copy())
        self.likelihoods.append(
            self.model.likelihood_y_given_X_beta(self.current_X, 
                                                 self.current_state.beta)
        )
        self.priors.append(prior)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号