自然语言处理入门

关于

第1章 新手上路

第2章 词典分词

def fully_segment(text, dic):
    """
    text: 文本序列
    dic: set 集合,包含词典中所有的词    
    """
    word_list = []
    for i in range(len(text)):
        for j in range(len(text)):
            word = text[i:j]
            if word in dic:
                word_list.append(word)
    return word_list
def forward_segment(text, dic):
  word_list = []
      for i in range(len(text)):
          for j in range(len(text)):
              word = text[i:j]
              if word in dic:
                  word_list.append(word)
      return word_list

第3章 二元语法与中文分词

第4章 隐马尔科夫模型与序列标注

样本生成问题

模型训练

模型预测

HMM应用于中文分词

二阶HMM

第5章 感知机分类与序列标注

基于结构化感知机的中文分词

第6章 条件随机场与序列标注

第7章 词性标注

第8章 命名实体识别

第9章 信息抽取

第10章 文本聚类

第11章 文本分类

第12章 依存句法分析

FAQ

为什么逆向最长匹配通常好于正向最长匹配

为什么字典树相比普通的二叉树要快

为什么二元语言模型要求切分的最小粒度要在词典中

二元语法解决的根本问题是什么

HMM中对UNK的发射概率是如何处理的

结构化维特比译码算法模型参数如何训练

感知机模型如何跟词典融合

HMM为什么不如结构化感知机和CRF

结构化感知机和CRF的区别是什么?为什么CRF效果更好?

如何理解CRF的本质

CRF vs HMM