上 【AI底层逻辑】——篇章5:机器学习算法之回归分类( 三 )


拓展:
线性回归可找出两组变量之间的关联关系,是一个机器学习过程 。但实际场景是多维的,如要预测房价,除了房价数据,还需要人均收入、房屋面积、距离市区远近、医疗教育资源等,存在多变量影响结果——多元线性回归 。数学方法与一元线性回归类似 。
多元线性回归可能会遇到多重共线性问题,多重共线性是指样本数据中存在一些具有较强线性相关性的变量,比如房屋的建筑面积和使用面积就是在这种关系 。在预测房价时,最好不要同时使用它们两个,这样会增加计算复杂度、解释性变差,还可能导致方程解不稳定 。
在线性回归算法基础上改进和优化发展出了——岭回归、Lasso回归、弹性网络回归等 。
3、分类
分类是一种监督学习算法,机器学习中最广泛的一类应用,它根据输入数据的特点将其归到有限个提前定义好的类别中,输入输出都是离散变量 。以文本分类为例,输入是文本的特征向量,输出是文本的类别 。
常见的分类算法:人工神经网络算法、决策树算法、支持向量机、K邻近法、朴素贝叶斯、逻辑回归算法等 。
①分类评价方法
建立分类模型的第一步是找到一种评价分类效果的方法 。对于一个分类模型,人们有时看重它判断正确的能力,有时则更关注它决策错误的风险 。这需要定义两个重要指标——查准率和查全率 。

上  【AI底层逻辑】——篇章5:机器学习算法之回归分类

文章插图
查准率也称准确率、精度,用来衡量分类本身的准确度 。查全率也称召回率,用来衡量分类正确的覆盖度 。对于一个二分类问题(分类结果只有“真”和“假”两种),查准率表示在认为是“真”的样例中,实际到底有多少是“真”;查全率表示在所有“真”的样例中,实际找出多少“真” 。有时,也用查准率和查全率的调和平均值作为综合评价的指标 。
总的来说,不同场景偏重不同,如警察抓罪犯要以查准率为重,灾难预报要更偏重查全率 。这两个指标通常不可兼得 。
②分类算法1——K邻近算法
K邻近算法即KNN算法,它通过“测量距离”分类 。数学上经常用“距离”区分数据,这里指的是“欧氏距离”,在二维平面上欧式距离表示两个点之间的几何平面距离 。
它可以在特征空间中选出与“新来的未知样本”距离最近的K个数据点,然后分析它们的类别 。如果多数点都属于某个类别,则这个新来的样本也属于这个类别 。这里的“K”数量是自定义(通常只依据最靠近的这K个邻居类别决定待分类新样本的类别——通俗说,分类的依据是“少数服从多数”,这K个最近的邻居多数属于哪个类别,新来的就是哪个类别 。
实例可见前面的的博客:【-】——机器学习kNN算法&SVM算法&k均值聚类算法&深度学习图像识别&对象检测
优点:逻辑简单,易于理解,无须估计参数,也不需要数据训练,比较适用于多分类问题 。
缺点是,①算法采用多数表决的分类方式,可能会在原始样本的类别(这些原始邻居)分布偏斜时出现缺陷——好比人决策时总喜欢听到精英的意见,但是精英往往是少数,周围民众会给你带来较大误判影响 。②必须保存全部数据集,存储空间需求大,必须对每个数据样本计算距离,计算量大 。
③分类算法2——支持向量机算法
支持向量机(SVM)的设计实现很巧妙,也是公认的将工程问题和数学问题优雅地结合在一起的算法 。假设有以下样本数据,它们用黑点和白点表示,现在要把它们划分为两类,有好几种分法,但是哪种最好呢?