机器学习----回归算法
回归算法,是一种应用比较广泛的机器算法。智能算法中,回归算法往往与其他算法结合使用。在锂电池SOC估计中,开路电压估计SOC的方法,就是一种典型的回归算法应用形式。详细过程在本文最后一部分说明。
1 什么是回归算法
简单的理解回归,就是找到模型函数中未知系数的方法。我们常常会遇到这样的情形,一个系统的输入变量与输出变量之间,关系比较复杂,不存在现成的理论公式描述这种关系。而我们知道,输入与输出之间一定存在着某种稳定的确定关系,并且我们需要这个函数的具体形式,来指导后续的实验或者生产。于是回归算法就应运而生。
回归算法使用的典型过程是这样的:
首先,准备好我们想要了解的典型系统。
第二,给系统一系列典型输入,并测量相应的输出,获得n组由输入、输出数据构成的空间点数据。
第三,根据系统的特点,选择系统模型的典型函数形式,参数待定;
第四,将第二步获得的数据,带入第三步函数式中,解出系统模型的每个参数。这样,我们就获得了一个描述系统输入与输出关系的经验公式。
第五,选取另外一组实验数据,代入经验公式,验证公式的准确性。如果精度在要求范围内,则确定公式可用。
第六,在后续工作过程中,可以利用公式,估计不同输入获得的输出范围。
2 回归算法分类
线性回归
线性回归,自变量和因变量的幂次方都不超过1,则将方程称为线性回归方程。回归方程往往不能直接求解,而需要找到函数最小误差公式,求解函数误差最小时,函数参数的取值。求解最小值的方法有梯度法,最小二乘法等。
局部加权线性回归
线性回归形式比较简单,易于求解,可以描述函数的整体趋势。但对于函数的局部波动无能为力。于是,人们在线性回归的基础上改进,得到局部加权方法。局部加权方法,允许估计中出现稍大的误差,进而减小系统均方误差,函数图形演变成了折线形。
逻辑回归
当函数值只有0和1两种取值时,我们需要用到逻辑回归。逻辑回归主要应用于数据分类。
多项式回归
多项式回归,顾名思义,就是自变量指数超过1的回归模型,是最具普遍意义的一种拟合形式,很多工程问题都可以应用这种回归算法。
相比于线性回归,多项式回归会耗费更多计算资源,指数越大计算量越大。当我们选择多项式模型时,需要关注,拟合曲线的首尾指数较高的函数,评判在实际应用中是否有对应的意义。
逐步回归
当系统中存在多个自变量时,需要用到逐步回归。计算可以从最显著的变量开始,逐步加入次显著的变量,叫前进法;先加入全部变量,再逐步剔除一些影响不显著的变量,叫做后退法。
其他回归算法
除了上面的回归模型,常见的还有岭回归、LASSO回归、ElasticNet回归等,都是前述回归算法的改进和组合。
3 过拟合和欠拟合
选择的回归方法是否合适,主要是观察拟合结果,实验数据点与函数曲线的贴合程度越高,说明拟合效果越好。在网上看到两张图,看一眼就明白什么是欠拟合、过拟合、恰当的拟合,盗图一用。
观察下面三幅图。欠拟合,由于选取函数模型的幂次不够,拟合曲线除了体现划分边界的大体趋势,并不能对数据做出准确的划分;过拟合,函数曲线精准分割数据点,但因为一两个数据点,却极大提高了函数复杂度,计算量显著增加;恰当的拟合,如第三幅图所示。
个人理解,过拟合和恰当的拟合之间,可能并没有非常明晰的界限。随着计算机算力的不断提高,过拟合的起点肯定会相应提高。过拟合与适当的拟合之间,实际上是准确性与计算代价之间的平衡,无关乎对错。
4 回归算法的特点
1)回归算法与众多机器算法的鲜明区别在于,它可以解决多自变量对一个因变量的问题,也可以处理多个自变量对多个因变量的问题。
2)经过转化以后,回归算法与支持向量机实际上具有等价性质。孙德山在他的论文《支持向量机分类与回归算法的关系研究》中阐述了这个观点并加以证明。回归算法的方程,能够直接求解的情形微乎其微,基本上都需要把参数求解转化成求函数最小误差问题。而支持向量机的求解,同样是转化为超平面到每个数据点的距离总和最大的优化问题,进而求解超平面方程的相关参数。
5 回归算法在SOC估计中的应用实例
作者曾洁在其论文《基于多项式回归算法的锂电池SOC估测》中详细介绍了利用回归算法,获得锂电池开路电压与荷电状态对应关系函数的过程。
1)将充满电的电池组与大电阻串联,形成放电回路。采用电池多功能参数测量仪( 可以测得电池电压、充放电电流、温度、容量、内阻)监测放电过程中电池电压和放电量;
2)放电电池组可用容量的5%,暂停,静置30分钟后,测量电池组开路电压;以此类推,直到电池荷电量为16.8%截止。(实验描述,中间调整了一次放电步长)。实验结束,获得每个测试点电池荷电量与开路电压的对应数据。
3) 选取3次多项式方程作为回归方程,计算方程各项系数,获得3次曲线方程。
4)选取另外一组相同型号、规格的锂电池,重新获得一组SOC-OCV数据,将开路电压数据带入方程,计算模型估计SOC值。将SOC估计值与实测值对比,最大误差5.79%。
以上即为回归算法在常用的锂电池SOC估计中的具体使用过程。
参考
1 曾洁,基于多项式回归算法的锂电池SOC估测
2 孙德山,支持向量机分类与回归算法的关系研究
3 杨滨,自适应迭代最小二乘支持向量机回归算法
4 华德宏,一种改进的一元线性回归算法
5 李雪,一种改进的偏最小二乘回归方法研究
6 雷歌阳,锂离子电池组的SOC估计
7 成鹏9,常见的七种回归技术
8 机器学习之回归算法
9 对线性回归、逻辑回归、各种回归的概念学习