avatar

机器学习的种类

什么是机器学习

通过机器学习就可以简化代码,并且提升执行的表现,可以找到好的解决方案,可以适应新的数据,在复杂和海量数据中获得特征

机器学习系统的种类

*监督式学习

我们教会计算机学习

我们给算法一个数据集其中包含了正确答案(目标值),再给未标记的训练集进行测试

  • 目的:给出更多的正确答案

回归任务:线性 预测一个具体的数值输出

  • 线性回归,岭回归

分类任务:逻辑 预测离散值的输出

  • k-邻近算法,贝叶斯分类,决策树,随机森林,逻辑回归

*无监督式学习

让计算机自己学习

给算法未标记的训练集,系统在没有老师的情况下进行学习

  • 目的:希望算法自己去寻找这种关联,无需帮助

聚类算法:k-means

降维:将二维转成一维,目的是在不丢失太多信息的前提下简化数据,方法将多个相关特征合并为一个

半监督式学习

有大量的未标记数据和少量的标记数据

  • 大多数半监督式学习算法是无监督式和监督式算法的结合

强化学习

学习系统能够观察环境,做出选择,执行操作,并获得回报或者负面回报

批量学习

批量学习一般都是离线完成的

离线学习是先续联系统然后投入生产环境,这时学习过程停止,将其所学到的应用出来

在线学习(增量学习)

循序渐进的给系统提供训练数据,逐步累积学习成果。提供数据可以是单独的,也可以是小批量的小组数据进行训练

学习率:适应不断变化的数据速度

异常检测

超大数据集

数据集 = 特征值+目标值

对于超大数据集,算法每次只加载部分数据,并针对这部分数据进行训练,然后不断重复这个过程,直到完成所有数据训练

基于实例与基于模型的学习

泛化能力:指机器学习算法对新鲜样本的适应能力,简而言之是在原有的数据集上添加新的数据集,通过训练输出一个合理的结果。学习的目的是学到隐含在数据背后的规律,对具有同一规律的学习集以外的数据,经过训练的网络也能给出合适的输出,该能力称为泛化能力。

基于实例:系统记住学习实例,然后通过某种相似程度度量方式将其泛化到新的实例(分类)

基于模型:建模成一个线性函数,选择模型,调整参数(回归)

机器学习流程

  1. 学习数据
  2. 选择模型
  3. 使用训练数据进行训练
  4. 应用模型对新的示例进行预测

学习流程-改

  1. 获取数据
  2. 数据处理
  3. 特征工程
  4. 机器学习算法训练 - 模型
  5. 模型评估
  6. 应用

拟合

拟合就是把平面上一系列的点,用一条光滑的曲线连接起来,在机器学习中拟合通常是训练完成以后的进行预测的那条线,如果这条线通过越多的标记点表示预测结果成功率高,反之

过度拟合

模型在训练数据上表现良好,但是泛化(实际测试)时不如人意

解决方法

  1. 简化模型,选择参数较少的模型,减少训练中属性的数量,或者约束模型
  2. 收集更多的训练数据
  3. 减少训练数据中的噪声
  4. 正则化

拟合度不足

模型太过简单,数据产生不准确

解决方法

  1. 选择一个更强大的模型
  2. 给学习算法提供更好的特征集
  3. 减少模型中的约束

测试和验证

将数据分为两个部分

  1. 训练集:训练模型
  2. 测试集:测试模型
  • 通常使用80%的数据进行训练,20%来做测试

评估模型:训练两个模型,对比测试数据的泛化能力

验证

交叉验证:将训练集分为若干个互补子集,然后每个模型都通过这些子集的不同组合来进行训练,最后用剩余的子集进行验证

文章作者: wangzun233
文章链接: https://wangzun233.top/2020/11/21/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E7%9A%84%E7%A7%8D%E7%B1%BB/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 WangZun233