开篇记录面试第七天

作者: 一路不向西 | 来源:发表于2019-06-02 10:46 被阅读0次

    今天眼睛还是没有好,只看了几篇博客,当然还顺便去麦当劳过了个儿童节。下面是知识点:

    1. 偏差与方差

    本条知识点来自https://blog.csdn.net/hertzcat/article/details/80035330

    当我们的模型表现不佳时,通常是出现两种问题,一种是高偏差问题,另一种是高方差问题。识别它们有助于选择正确的优化方式,所以我们先来看下 偏差方差的意义。

    • 偏差: 描述模型输出结果的期望与样本真实结果的差距
    • 方差: 描述模型对于给定值的输出稳定性
      image.jpeg
      对于 多项式回归,当次数选取较低时,我们的 训练集误差 和 交叉验证集误差 都会很大;当次数选择刚好时,训练集误差 和 交叉验证集误差 都很小;当次数过大时会产生过拟合,虽然 训练集误差 很小,但 交叉验证集误差 会很大( 关系图如下 )。
    image.jpeg

    对于 正则化 参数,使用同样的分析方法,当参数比较小时容易产生过拟合现象,也就是高方差问题。而参数比较大时容易产生欠拟合现象,也就是高偏差问题。

    image.jpeg

    学习曲线

    无论你是要检查你的学习算法是否正常工作或是要改进算法的表现,学习曲线 都是一个十分直观有效的工具。学习曲线的横轴是样本数,纵轴为训练集 和交叉验证集的误差。所以在一开始,由于样本数很少,J_{train}(θ)几乎没有,而 J_{cv}(θ) 则非常大。随着样本数的增加,J_{train}(θ) 不断增大,而 J_{cv}(θ) 因为训练数据增加而拟合得更好因此下降。所以 学习曲线 看上去如下图:

    image.jpeg

    在高偏差的情形下,J_{train}(θ)J_{cv}(θ) 已经十分接近,但是 误差 很大。这时候一味地增加样本数并不能给算法的性能带来提升。

    image.jpeg

    在高方差的情形下,J_{train}(θ)的 误差 较小,J_{cv}(θ)比较大,这时搜集更多的样本很可能带来帮助。

    image.jpeg

    总结起来,改进的策略就是:(高方差就以过拟合为例,高偏差就以训练初期的状态为例)

    1.[高方差] 采集更多的样本数据

    2.[高方差] 减少特征数量,去除非主要的特征

    3.[高偏差] 引入更多的相关特征

    4.[高偏差] 采用多项式特征

    5.[高偏差] 减小正则化参数 λ

    6.[高方差] 增加正则化参数 λ

    2.NER的模型BiLSTM-CRF

    本条知识点来自https://www.cnblogs.com/Determined22/p/7238342.html

    主流的NER方法有三类:
    1.基于规则的方法:
    利用手工编写的规则,将文本与规则进行匹配来识别出命名实体。
    2.基于特征模板的方法:
    常用的应用到 NER 任务中的模型包括生成式模型HMM、判别式模型CRF等。比较流行的方法是特征模板 + CRF的方案:特征模板通常是人工定义的一些二值特征函数,试图挖掘命名实体内部以及上下文的构成特点。对于句子中的给定位置来说,提特征的位置是一个窗口,即上下文位置。而且,不同的特征模板之间可以进行组合来形成一个新的特征模板。CRF的优点在于其为一个位置进行标注的过程中可以利用到此前已经标注的信息,利用Viterbi解码来得到最优序列。对句子中的各个位置提取特征时,满足条件的特征取值为1,不满足条件的特征取值为0;然后把特征喂给CRF,training阶段建模标签的转移,进而在inference阶段为测试句子的各个位置做标注。
    3.基于神经网络的方法
    将token从离散one-hot表示映射到低维空间中成为稠密的embedding,随后将句子的embedding序列输入到RNN中,用神经网络自动提取特征,Softmax来预测每个token的标签。这种方法使得模型的训练成为一个端到端的整体过程,而非传统的pipeline,不依赖特征工程,是一种数据驱动的方法;但网络变种多、对参数设置依赖大,模型可解释性差。

    image.png
    模型的第一层是 look-up 层,利用预训练或随机初始化的embedding矩阵将句子中的每个字 由one-hot向量映射为低维稠密的字向量(character embedding)∈ ,d 是embedding的维度。在输入下一层之前,设置dropout以缓解过拟合。
    模型的第二层是双向LSTM层,自动提取句子特征。
    模型的第三层是CRF层,进行句子级的序列标注。

    3.如何防止过拟合?

    • 增加训练样本。
    • 降低模型复杂度。在数据量较少时模型过拟合的主要原因是由于模型的复杂度过高,模型拟合了太多的采样噪声。
    • 正则化方法。比如在模型参数上增加一定的正则约束。
    • 集成学习方法。集成学习是把多个模型集成在一起,来降低单一模型过拟合的风险。

    4.降低欠拟合风险

    • 添加新特征。
    • 增加模型复杂度。
    • 减少正则化系数。

    相关文章

      网友评论

        本文标题:开篇记录面试第七天

        本文链接:https://www.haomeiwen.com/subject/gozotctx.html