监督学习

=======================================================================
              Machine Learning notebook
Python机器学习基础教程(introduction to Machine Learning with Python)
https://github.com/amueller/introduction_to_ml_with_python/blob/master/02-supervised-learning.ipynb

=======================================================================

监督学习
  
每当想要根据给定输入预测某个结果,并且还有输入/输出对的示例时,都应该使用监督学习。这些输入/输出对构成了训练集,我们利用它来构建机器学习模型。我们的目标是对从未见过的新数据做出准确预测。监督学习通常需要人力来构建训练集,但之后的任务本来非常费力甚至无法完成,现在却可以自动完成,通常速度也更快。
  
  
监督机器学习问题主要有两种,分别叫做分类(Classification)与回归(regression)
  
分类问题的目标是预测类别标签(class label),这些标签来自预定义的可选列表。
  可分为二分类(binary classification,在两个类别之间进行区分的一种特殊情况)和多分类(multiclass classification,在两个以上的类别之间进行区分)。
  在二分类问题中,我们通常将其中一个类别称为正类(positive class),另一个类别称为反类(negative class)。这里的“正”并不代表好的方面或正数,而是代表研究对象
  
  
回归任务的目标是预测一个连续值,编程术语叫做浮点数(float-point number),数学术语叫做实数(real number)。

区分分类任务和回归任务有一个简单方法,就是一个问题:输出是否具有某种连续性。
  
  
泛化、过拟合与欠拟合
  
如果一个模型能够对没见过的数据做出准确预测,我们就说它能够从训练集泛化(generalize)到测试集。我们想要构建一个泛化精度尽可能高的模型。

构建一个对现有信息量来说过于复杂的模型,这被称为过拟合(overfitting)。
与之相反,如果你的模型过于简单——那么你可能无法抓住数据的全部内容以及数据中的变化,你的模型甚至在训练集上的表现就很差。选择过于简单的模型就被称为欠拟合(underfitting)
在这里插入图片描述
模型复杂度与数据集大小的关系
  
数据集中包含的数据点的变化范围越大,在不发生过拟合的前提下你可以使用的模型就越复杂。通常来说,收集更多的数据点可以有更大的变化范围,所以更大的数据集可以用来构建更复杂的模型。但是,仅复制相同的数据点或收集非常相似的数据是无济于事的。

收集更多数据,适当构建更复杂的模型,对监督学习任务往往特别有用。在现实世界中,你往往能够决定收集多少数据,这可能比模型调参更为有效。永远不要低估更多数据的力量
  
  
监督学习算法
  
第一个模型:k近邻算法

第二个模型:线性模型

第三个模型:朴素贝叶斯模型

第四个模型:决策树模型

第五个模型:集成方法中的随机森林模型

第六个模型:集成方法中的梯度提升回归树(梯度提升机)模型

第七个模型:核支持向量机模型(kernelized support vector machine)

第八个模型:神经网络学习(深度学习)模型

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值