机器学习基础知识-持续更新

杂谈

  1. 对机器学习问题而言,数据和特征(包括获取先验知识所用到的数据和特征)决定了结果的上限,而模型、算法的选择和优化则是在逐步接近这个上限。

  2. 数值型特征归一化

    • 为什么需要进行特征归一化?

      • 为了消除数据特征之间的量纲影响,使得不同指标处于同一数量级,具有可比性。
      • 特征归一化后优化目标的等值图会变为圆形,不同指标上的更新速度更为一致,容易通过梯度下降找到最优解。
    • 特征归一化的方b法:

      • 线性函数归一化(min-max scaling)

        \[\frac{x-x_{min}}{x_{min}-x_{max}} \]

      • 零均值归一化(z-score normalization)

        \[\frac{x-\mu}{\sigma} \]

    • 什么时候会用到特征归一化?

      • 通过梯度下降算法所求解的模型,如线性回归、逻辑回归、支持向量机、神经网络。
      • 决策树并不适用、因为决策树进行节点分裂时主要依据数据集对于特征的信息增益比,与归一化无关。
  3. 类别型特征

    • 类别性特征的分类:
      • 序号编码(ordinal encoding):用于处理类别间具有大小关系的数据(例如成绩),转换后保留了大小关系。
      • 独热编码(one-hot encoding):用于处理类别间不具有大小关系的数据(例如轴承故障类别)
      • 二进制编码(binary encoding):赋予类别ID,将对应ID的二进制编码作为结果。(本质是用二进制对ID进行哈希映射,最终得到0/1特征向量,且维数少于独热编码,节省存储空间)
      • Helmert Contrast, Sum Contrast, Polynomial Contrast, Backward Difference Contrast ...
  4. 组合特征

    • 什么是组合特征?

      • 为了提高复杂关系的拟合能力,特征工程经常会将低阶离散特征组合,构成高级组合特征。
      • 如果要组合的低阶特征维度过高,造成高阶特征维度过高,可以先对低阶特征进行降维。
    • 如何有效的找到组合特征?

      • 决策树,并可以采用梯度提升决策树有效地构建决策树,该方法的思想是每次都在之前构建的决策树的残差上构建下一棵决策树。
  5. 文本表示模型

    • 文本表示模型有哪些?

      • 词袋模型(Bag of Words):将整段文本以词为单位切分开,那么文本可以表示为一个长向量,向量中的每一维代表一个单词,该维对应的权重反映了词在文章中的重要程度。常用TF-IDF计算权重,

        \[TF-IDF(t,d)=TF(t,d) \times IDF(t) \]

        其中TF(t,d)为单词t在文档d中出现的频率,IDF(t)为逆文档频率,用来衡量单词t对表达语义所起的重要性

        \[IDF(t)=log \frac {文章总数}{包含t的文章总数+1} \]

      • N-gram:单词拆分后的含义与组合起来的含义可能差别很大,可以将连续出现的n个词组成的词组(N-gram)作为一个单独的特征放到向量表示中,构成N-gram模型。

      • 词干抽取(Word Stemming):同一词会有多种词性变化,却有相似的含义,可将不同词性的单词统一成为同一词干的形式。

      • 主题模型(Topic Model):从文本库中发现有代表性的主题(得到每个主题上的词分布特性),并能够计算出每篇文章的主题分布。

      • 词嵌入模型(Word Embedding):词嵌入是一类将词向量化的模型的统称,核心思想是将每个词映射为低维空间(50~300维)上的一个稠密向量(Dense Vector),空间中的每一维可以看作一个隐含的主题。

      • Word2Vec:一种常用的词嵌入模型,一种浅层的神经网络结构,由CBOW(Continues Bags of Words)和Skip-gram两部分组成。CBOW根据上下文出现的词语预测当前词的出现概率,skip-gram根据当前词预测上下文词的生成概率。

      • 隐迪利克雷模型(LDA)

  6. 图像不足时的处理方法

    • 一个模型所能提供的信息一般来源于两个方面:一是训练数据中蕴含的信息;二是在模型的形成过程中(包括构造、学习、推理),人们提供的先验特征。训练数据不足,意味着从原始数据中获取的信息比较少,这种情况下要保证模型的训练效果,就需要更多的先验特征。先验特征可以作用在模型上,例如让模型采用特定的内在结构、条件假设或添加其他一些约束条件;先验信息也可以直接施加在数据集上,即根据特定的先验假设去调整、变换或扩展训练数据,让其展现出更多的、更有用的信息,以利于后续模型的训练和学习
    • 训练数据的不足带来的问题主要表现为过拟合(训练集准确率高,测试集准确率低的泛化能力不足),相应的处理方法有两类:
      • 基于模型:简化模型、添加约束以缩小假设空间(L1\L2正则)、集成学习、Dropout
      • 基于数据:数据扩充(旋转、平移、缩放、裁剪、填充、左右翻转、添加噪声、变换颜色、亮度、清晰度、对比度、锐度)
      • 特征空间变换:一些通用的数据扩充和上采样技术,如SMOTE(Synthetic Minority Over-sample Technique)、gan
      • 迁移学习
  7. 评估方法

    • 阶段划分:离线评估、在线评估

    • 常用指标

      • 准确率(Accuracy):值分类正确的样本占样本个数的比例

        \[Accuracy= \frac {n_{correct}}{n_{total}} \]

        • 缺陷:当数据不均衡时,占比大的数据会成为影响准确率的最主要因素。(比如负样本99%,所有样本都预测为负样本也可以获得99%的准确率)

        • 解决方法:是用平均准确率(各类别下的样本准确率的算术平均)

      • 精确率(Precision):分类正确的正样本个数占分类器判定为正样本的样本个数的比例

        召回率(Recall):分类正确的正样本个数占真正的正样本个数的比例

        • 排序问题,常采用TopN返回结果的 Precision 和 Recall 衡量排序模型的性能。
        • Precision 和 Recall
      • 均方根误差(Root Mean Square Error, RMSE)

杂记

  • 高维特征所带来的问题:

    • 在距离度量算法中(如K近邻算法),高维空间中两点之间的距离难以有效度量。
    • 在逻辑回归模型中,参数数量会随着维度增加而增加,容易引起过拟合问题。
    • 通常只有部分维度是对分类、预测有帮助的,应考虑特征选择降低维度。
  • 相比于全连接网络,卷积神经网络和循环神经网络的优势:

    • 对局部特征的提取
    • 减少了网络中的待学习参数、提高了学习效率、并降低了过拟合风险。
  • 模型结果较差的思考角度:

    • 评估指标选择不合理
    • 模型过拟合和欠拟合
    • 测试集和训练集划分不合理
    • 线下评估与线上测试的样本分布存在差异

找准定位

该图并不严谨,但我只想说:无论何时都应保持谦逊,更要努力扩宽自己、切莫封闭,你所会的只是三千弱水中的一瓢,世界很大。
机器学习基础知识-持续更新

机器学习基础知识-持续更新

上一篇:Fromform


下一篇:使用fiddler做弱网测试