《数据挖掘》 实验报告 1 实验一 分类技术及其应用 实习要求: 基于线性回归模型拟合一个班学生的学习成绩,建立预测模型
数据可由自己建立1 0 0 个学生的学习成绩
1) 算法思想: 最小二乘法 设经验方程是y=F(x),方程中含有一些待定系数an,给出真实值{(xi,yi)|i=1,2,
n},将这些x,y 值 代入方程然后作差,可以描述误差:yi-F(xi),为了考虑整体的误差,可以取平方和,之所以要平方是考虑到误差可正可负直接相加可以相互抵消,所以记 误差为: e=∑(yi-F(xi))^2 它是一个多元函数,有an 共 n 个未知量,现在要求的是最小值
所以必然满足对各变量的偏导等于0,于是得到n 个方程: de/da1=0 de/da2=0
de/dan=0 n 个方程确定n 个未知量为常量是理论上可以解出来的
用这种误差分析的方法进行回归方程的方法就是最小二乘法
线性回归 如果经验方程是线性的,形如 y=ax+b,就是线性回归
按上面的分析,误差函数为: e=∑(yi-axi-b)^2 各偏导为: de/da=2∑(yi-axi-b)xi=0 de/db=-2∑(yi-axi-b)=0 于是得到关于a,b 的线性方程组: (∑xi^2)a+(∑xi)b=∑yixi (∑xi)a+nb=∑yi 设A=∑xi^2,B=∑xi,C=∑yixi,D=∑yi,则方程化为: Aa+Bb=C Ba+nb=D 《数据挖掘》 实验报告 2 解出 a,b 得: a=(Cn-BD)/(An-BB) b=(AD-CB)/(An-BB) 2) 编程实现算法 C++程序: #include #include using namespace std; void main() { double x,y,A=0
0,delta,a,b; in