线性回归
举例:预测房价、股票等
希望输入一个(或多个)值,得到预测值
线性回归具体做法
- 量化收集到的特征(bmi、烟龄、血脂等),作为自变量
- 量化结果(是否有癌症、癌症程度等),作为因变量
- 由自变量和因变量,得到一个代价最小(也就是最合理的)拟合函数
- 由3.中的拟合函数,输入特征可得到预测值
Q:什么是代价最小?
A:可以定义一个代价函数,认为当代价函数取得最小值时就是代价最小,也就是说基本每一个数据点都在此拟合函数上。线性回归中,代价函数定义为各数据点到当前拟合函数的距离之和。
Q:如何求代价函数最小值?
A:使用较多的是梯度下降法。其中代价函数h(θ1,θ2...)的变量与拟合函数的变量有相同的(不同的拟合函数的代价不同)。具体做法
- 初始化代价函数的参数θ1,θ2...(也就是初始化一个拟合函数)
- 计算当前参数下,代价函数h的梯度(寻找下降最快的方向)
- 朝梯度方向走一步,这一步走多远由学习率决定,学习率越大,这一步走得越远;具体的学习率可以试出来
- 重复2.和3.直至这一步和上一步离得很近(距离小于某个值),认为这个地方变化不大,比较平缓,认为近似取得代价函数的最小值(或极小值)
由上述步骤可以看出,梯度下降法可能会陷入局部最小值
逻辑回归
举例:垃圾邮件分类问题(结果输出是或不是)
输入特征,输出(二元的)判断
现以将一群人分为好人和坏人举例
逻辑回归模型的评判标准(指标)
- 正确率precision:分类判定的好人中有多少是真的好人
- 召回率recall:有多少好人被判定成好人了
'''
对比:
第I类错误:拒绝了正确的假设,也就是“错杀好人
第II类错误:接受了错误的假设,就是把坏人当成了好人
联系:
召回率是第类错误的犯错情况,正确率是第l类错误的犯错情况
'''
有时候正确率和召回率是矛盾的,所以要综合考虑,通常使用的方法有F-Measure
当β=1时,有最常见的F1指标
分类问题
顾名思义就是给定类别,输入特征有模型输出(二元或者多元的)判断
举例:垃圾分类
常用分类算法:KNN,决策树,贝叶斯算法,支持向量机SVM
- KNN:算法模型简单,计算量大,适合处理多分类和小概率事件(有一个类别离其余的类别特别远)
- 决策树/随机森林:树的节点是特征,定义一颗决策树要使得信息熵迅速下降(较快地给出判断结果)
- 贝叶斯算法:依赖于贝叶斯公式,由该公式计算某分类条件下各个特征的概率的积,再由此乘以本分类的概率得到结果,呢哪个分类结果得到的结果最大就判断属于哪个分类
- SVM:适用于线性决策边界。SVM负责找到一个超平面使得各个数据到该超平面的距离最大(分的最开)。非线性决策边界可以通过升维将决策边界变为线性的