zoukankan      html  css  js  c++  java
  • NLP复习大纲

    NLP复习大纲

    信息论基础

    1. 信息量 (I(x)=-log_2^{p(x)})

    2. 熵是所有事件信息量的期望 (H(X)=-sum_xp(x)*log_2^{p(x)})

    3. 联合熵 (H(X,Y)=-sum_x sum_y p(x,y)*log_2^{p(x,y)})

    4. 条件熵 (H(Y|X)=-sum_x sum_y p(x,y)*log_2^{p(y|x)})

    5. 联合熵(H(X,Y)=H(X)+H(Y|X))

    6. 熵率(H_{rate}=frac{1}{n}*H{(X)})

    7. KL距离/相对熵 (D(p||q)=sum_xp(x)*log_2^{frac {p(x)}{q(x)}})

    8. 交叉熵(H(X,q)=H(X)+D(p||q))(H(X,q)=-sum_xp(x)*log_2^{q(x)})

    9. 语言L的交叉熵(H(L,q)=-frac{1}{n}*log_2^{q(x)})

    10. 语言L样本的困惑度(PP_q=[q(l_1^n)]^{-frac{1}{n}})

    11. 互信息(I(X;Y)=H(X)-H(X|Y))

    语言模型

    1. 语言模型就是语句出现的概率,$p(s)=prod_{i=1}^m p(w_i|w_1...w_{i-1}) $

    2. N-gram 1文元法独立于历史,2文元法为1阶马尔可夫链

    3. 参数估计,采用最大似然估计,怎么求条件概率呢?(p(w_i|w_{i-n+1}^{i-1})=frac{c(w_{i-n+1}^{i})}{c(w_{i-n+1}^{i-1})})

    数据平滑

    1. 0概率问题,用数据平滑

    2. 加1平滑,分子+1,分母+去重之后的大小

    3. 减值法,减少实际计数,剩余的概率量留给未出现的

    4. 后退法,频率>阈值就用最大似然估计,否则用n-1阶gram概率代替

    5. 绝对减值法,把出现的都减去固定常数

    6. 线性减值法,把出现的都按比例减小

    7. 删除插值法,用低阶gram插值来表示当前的条件概率

    语言模型的自适应

    1. 理由是n-gram假设很多时候不成立
    2. 基于缓存的语言模型,由n-gram和缓存概率插值得到,有衰减系数,因为历史词的影响随着距离的增大而减小
    3. 基于混合方法的语言模型,把文本按主题聚n个类,每个类分别算语言模型,整个语言模型是子模型插值得到
    4. 最大熵模型,每个信息源提供一个约束,在满足所有约束的模型中选择熵最大的

    隐马尔可夫模型与条件随机场

    1. 马尔可夫模型的两个假设:时间t的状态只与t-1的状态有关,状态转移是一个确定的概率矩阵

    2. 隐马尔可夫模型,状态序列不可知,状态输出序列可知

    3. 前向,后向,搜索算法得知道大体流程https://www.zhihu.com/question/20962240

    4. HMM有三个问题

    5. 第一个问题,知道状态转移矩阵和状态输出矩阵,问产生这个给定输出O的概率

      • 暴力做法:枚举所有状态,ans为(sum_i)产生状态(s_i)的概率*(s_i)产生O的概率,指数级别

      • dp前向算法,定义状态(f[t][i])表示在时间t时,处于状态(s_i),并且输出序列为(O_1,...,O_t)的概率

        转移为(f[t][i]=b[i][O_t]*(sum_{j=1}^Nf[t-1][j]*a[j][i]))

        复杂度为(N^2*T)

        dp后向算法,倒着算,原理复杂度都一样

    6. 第2个问题,给定模型和观察序列O,求概率最大的状态序列

      • 定义状态,(f[t][i])表示在时间t时,状态为(s_i),输出的观察序列为(O_1O_2O_3...O_t)最大概率

        转移(f[t][i]=b[i][O_t]*max_{j=1}^N(f[t-1][j]*a[j][i]))

        获得最优的终点状态,记录路径,倒推输出

    7. 第3个问题,知道O,求最优模型(前向后向算法)

      • 先随机初始化模型参数
      • 再计算两个期望
      • 根据期望更新参数
      • 直到收敛
    8. 条件随机场用来标注和划分序列,有转移函数和状态函数,基本思路是给定观察序列X,输出标识序列Y,通过P(Y|X)求解最优标识序列

    词法分析与词性标注

    1. 英文的形态分析

      • 查字典
      • 按规则进行还原
      • 按未登录词处理
    2. 汉语分词

      • 链长:一个交集型切分歧义所拥有的集合长度
      • 组合型歧义
      • 未登录词识别
      • 合并原则(基本原则):语义上无法由组合成分直接相加得到应该合并
      • 辅助原则:不绝对
        • 切分原则:有明显分隔符要切分,冗长的要切
        • 合并原则:附着性词语要合并;共现率高的要合并;偏正式名词、动词
    3. 结果评价

      • 正确率:(P=frac{n}{N}*100)%,n是正确的,N是总数

      • 召回率:(R=frac{n}{M}*100)%,n是正确的,M是标准答案的个数

      • F-测度值:(F-measure=frac{(ß^2+1)*P*R}{ß^2*P+R}*100)%,一般ß取1

    4. 汉语自动分词基本算法

      • 正向最大匹配算法:
        • 先找到字典中最长的一个词,假设其长度为len
        • 判断[i,i+len-1]是不是一个词,如果不是,再判断[i,i+len-2],然后更新i
        • 优点:简单易行;缺点:正确率不高
      • 最短路径算法:
        • 如果[i,j]为词,就建边i->j,边长为1
        • 跑最短路
        • 优点:符合汉语自身规律;缺点:最短路径有多条时,难以取舍
      • 基于语言模型
        • 求最大的(p(W|S))
        • 优点:减少手工标注;缺点:正确率取决于训练预料
    5. 未登录词识别

      • 人名,地名等专有名词
    6. 词性标注

      • 问题:兼类,标注集,规范
      • 规则方法,统计方法,综合方法

    语义分析

    1. 语义分析的基本任务及其面临的困难

      • 任务:解释词、句子等的含义
      • 困难:大量歧义,不同理解
    2. 语义理论:

      • 词的意义:指称,心理图像,意图,过程
    3. 格语法:

      • 格:深层格,指的是语义关系
      • 格框架中有语法信息、语义关系,一个格框架由主要概念(动词)和辅助概念(主语、宾语等)组成
    4. 语义网络

      • 它通过由概念和语义关系组成的有向图来表达知识,描述语义
    5. CD理论

      • 三个层次
        • 动作基元
        • 剧本
        • 计划
    6. 词义消歧

      • 规则、统计、词典
    7. 语义角色标注

      • 以谓词为核心,分析句子中的其他成分与谓词之间的关系

    机器翻译

    ◆统计机器翻译的基本原理

    IBM 1~5 翻译模型

    ◆翻译模型的改进

    ◆解码算法

    SMT 系统实现方法

    ◆译文评估方法

    1. 统计机器翻译

      • 先用训练集训练翻译模型,当做解码器,测试数据通过解码器就可以得到译文
      • 三个关键问题:
        • 估计LM p(T)
          • ​ n-gram
        • 估计TM p(S|T)
          • 对应关系
            • IBM1
              • 选择一个长度m,根据均匀分布原则,对目标语言每个位置选择一个源语言单词,根据概率选择一个目标单词
            • IBM2
              • 选择一个长度m,根据概率分布原则,对目标语言每个位置选择一个源语言单词,根据概率选择一个目标单词
        • 搜索T使得p(T)*p(S|T)最大
        • 截屏2021-07-01 下午2.57.37
    2. 基于短语的翻译模型

      • 截屏2021-07-01 下午3.36.45
    3. 解码算法

      • beam search 选择概率最大的生成
    4. SMT实现方法

      • 预料准备
      • 预料预处理
      • 词语对齐
      • 短语抽取和概率计算
      • LM训练
      • 解码器
      • 输出后处理
    5. 译文评估方法

      • 流畅度、充分性、语义保持性
      • BLEU
        • 系统输出的n-gram与参考译文的n-gram匹配的个数/系统译文的n-gram

    情感分析

    1. 观点:人们对事物的看法,具有明显的主观性,不同人对同一事物的看法存在差异

    2. 观点挖掘与倾向性分析:从海量数据中挖掘观点信息,并分析观点信息的倾向性

      ◼ 情感分类

      ◼ 情感元素抽取

      ◼ 跨领域情感分析

      ◼ 个性化情感分析

      ◼ 隐式情感分析

      ◼ 情感原因发现

      ◼ 情感生成

    文本自动摘要

    文本摘要概述

    • 文本摘要的定义:文本自动摘要是利用计算机按照某类应用自动地将文本(或文本集合)转换生成简短摘要的一种信息压缩技术
    • 分类:单文档、多文档、单语言、跨语言、抽取式、压缩式、生成式,标题、短文本、长文本
    • 方法:抽取式、压缩式、生成式
    • 评价:自动评价、人工评价
  • 相关阅读:
    团队项目-需求分析报告
    自动化测试框架指南
    一起吐槽接口文档
    居家费拖鞋【FunTester居家日记】
    HTTP接口测试基础【FunTester框架教程】
    Java NIO在接口自动化中应用
    JAVA 可变参数
    HashSet 和 LinkedSet 数据结构
    简单数据结构
    JAVA 迭代器的简单使用
  • 原文地址:https://www.cnblogs.com/war1111/p/14991666.html
Copyright © 2011-2022 走看看