区别
(1)回归得出来的值是一一对应的,就是我输入一个值它就会告诉我所对应的精确值,也就是预测值,是连续的,且我每输入一个不同变量,他预测的值只跟这个变量对应,1对1的。
(2)而分类是离散的,是多对1的,比如,我输入一堆狗的图片进去,它都是被判断为狗,我输入一堆猫进去,都判断为猫,是多对1的,而且是离散的。
相同点
本质是一样的,都是通过数据来拟合一个函数,用来预测.我的理解就是可以都称之为回归,只是最后作用不同而已。
分类预测建模问题 与 回归预测建模问题 不同。
分类和回归算法之间存在一些重叠, 例如:
一些算法可用于分类和回归,只需很少的修改,例如决策树和人工神经网络。一些算法不能或不能容易地用于两种问题类型,例如用于回归预测建模的线性回归和用于分类预测建模的逻辑回归。
重要的是,我们评估分类和回归预测的方式各不相同,并且不重叠,例如:
比如,区分图像中的人是男性还是女性的问题就是分类问题。根据一个人的图像预测这个人的体重的问题就是回归问题(类似“57.4kg”这样的预测)。
分类问题是有监督学习的一个核心问题。
分类用于解决要预测样本属于哪个或者哪些预定义的类别。此时输出变量通常取有限个离散值。
分类的机器学习的两大阶段:
(1)从训练数据中学习得到一个分类决策函数或分类模型,成为分类器(classifier);
(2)利用学习得到的分类器对新的输入样本进行类别预测。
多类分类问题可转化为两类分类问题解决,如采用一对其余(One-vs-Rest)方法:将其中一个类标记为正类,将其余类标记为负类。
做个不太严谨的比方:分类就是一个类似于sign(x)函数的问题,就是你输入一个x,得到的输出要不就是0,要不就是1,比如我通过一个数据集,我拟合出来一个函数y=f(x),使得我输入一个未知的数据进去这个函数能告诉我这个数据是属于1还是属于0,
举个例子:在神经网络中,我拟合出来了这样的一个函数(这是神经网络线性分类器的评分函数)进行分类,
我输入一张图片x,它会给我得分,如图
这个图片中,显示了我输入一张猫的图片,对应的得分,判断这个猫属于猫这一类的是-96,属于狗的437.9,属于船的是61.95,
相当于我拟合的这个函数,可以把输入分为三类,而我想要的合理的分类函数(即这个被拟合出来的函数),是每一次我输入猫这个图片,它所对应的猫的分数都是最高的,而这里不是,所以不是合理的函数,需要计算一个误差,就是让max(0,狗的分-猫的分加上船的分-猫的分),这就是一个误差,意思就是如果我输入猫的分高,这个误差就是0,所以我们就可以通过不断调整上面那个公式的w使得误差无限接近于0。
所以这就是分类,我输入了一个图片进去它就会告诉我这个是猫还是别的,所以这张图片被判断为狗,明显错误的。
假设只有两类样本,即正例(positive)和负例(negetive)。
两个字母缩写可以这样理解:
- 真正(True Positive , TP):被模型预测为正的正样本。
- 假正(False Positive , FP):被模型预测为正的负样本。
- 假负(False Negative , FN):被模型预测为负的正样本。
- 真负(True Negative , TN):被模型预测为负的负样本。
精确率和召回率是二类分类问题常用的评价指标。
精确率反映了模型判断的正例中真正正例的比重。
在垃圾分类任务中,是指预测出的垃圾短信中真正垃圾短信的比例。
如图是多类分类器,每次将一类分为正例,其他两类为负例,则得到蓝绿红三条曲线。而黄色曲线是他们的平均值线。
括号中area为曲线下面积。
area有助于弥补P、R的单点值局部性,可以反映全局性能。
P-R曲线的绘制
绘制P-R曲线需要一系列Percision和Recall值,通过阈值获得。分类器给每个测试样本一个“Score”值,表示该样本多大概率上属于正例。
F值是精准率(percision)和召回率(recall)的调和平均值。
F1值更接近于两个数较小的那个,所以精确率和召回率接近时,F1值大。
ROC曲线全称为“受试者工作特征”(Receiver Operating Characteristic)曲线。描绘了分类器在真正率(TPR)和假正率(FPR)之间的trade-off。
也可理解为:我们根据学习器的预测结果,把阈值从0变到最大,即刚开始是把每个样本作为正例进行预测,随着阈值的增大,学习器预测正样例数越来越少,直到最后没有一个样本是正样例。在这一过程中,每次计算出TP和FP,分别以它们为横、纵坐标作图,就得到了“ROC曲线”。
ROC曲线的纵轴是“真正率”(True Positive Rate, 简称TPR),真正正例占总正例的比例,反映命中概率。横轴是“假正率”(False Positive Rate,简称FPR),错误的正例占负例的比例,反映误诊率、假阳性率、虚惊概率。
绘制ROC曲线
ROC 曲线的画法与P-R曲线相似。
绘制ROC曲线需要一系列FPR值和TPR值,这些系列值是通过阈值形成的。对于每个测试样本,分类器会给一个“Score”值,表示该样本多大概率上属于正例或负例。
TP与FP的个数会随着样本数的增加而增加,因此形成一个个(FP,TP)点,将点连起来就形成了ROC曲线。
- 对角线对应于“随机猜测”模型,而点(0,1)则对应于将所有正例预测为真正例、所有反例预测为真负例的“理想模型”。
- ROC曲线不适用于多分类问题。
AUC就是ROC曲线下的面积,即ROC的积分。衡量学习器优劣的一种性能指标。
AUC是衡量二分类模型优劣的一种评价指标,表示预测的正例排在负例前面的概率(反映分类器对样本的排序能力)。
AUC提供了分类器的一个整体数值。通常AUC越大,分类器越好。
AUC的取值范围为[0,1]
如用热力图(heatmap)直观地展现类别的混淆情况(每个类有多少样本被错误地预测成另一个类)
显示每个类的分类性能。包括每个类标签的精确率、召回率、F1值等。
什么是回归?如果有一个数据集x,它所对应的真实值y1,回归就是通过将这些数据集拟合出一个函数关系,使得y2=g(x),当然拟合不可能那么完美,所以就会有误差,这个误差就是y2-y1,即拟合出来的值,减去真实值。
常用的评价回归问题的方法:
- 平均绝对误差MAE(mean absolute error)
- 均方误差MSE(mean squared error)及均方根差RMS
- 逻辑回归损失或称交叉熵loss(cross-entropy loss)
- R方值,确定系数(r2_score)
MAE:是绝对误差损失(absolute error loss)的期望值。
逻辑回归损失简称为Log loss,又称为交叉熵损失。
常用于评论逻辑回归LR和神经网络。
参考链接:https://blog.csdn.net/qq_44704609/article/details/104573503