python自然语言处理—HMM模型实战

                                                           中文分词—HMM模型实战

 

import os
import pickle


class HMM(object):
    def __init__(self, model_file):
        # 存取算法中间结果,不用每次都训练模型
        self.model_file = model_file
        # 状态集合
        self.state_list = ["B", "M", "E", "S"]
        # 状态转移概率(状态->状态的条件概率)
        self.trans_prob = {}
        # 发射率(状态->词语的条件概率)
        self.emit_prob = {}
        # 状态的初始概率:一句话第一个字被标记成 "S" "B" "E" 或 "M" 的概率。
        self.init_prob = {}
        # 参数加载,用于判断是否需要重新加载model_file
        self.load_param = False

    def try_load_model(self, trained):
        """
        加载已计算的中间结果,当需要重新训练时,需初始化清空结果
        :param trained: 判别是否需要加载中间结果
        :return:
        """
        if trained:
            with open(self.model_file, "

你可能感兴趣的:(python)