人工智能与机器学习(4)
机器学习监督算法之线性回归算法:
1.机器学习的实质说白了就是通过数据之间的关系找出某种映射:
f:X→y
而针对线性回归来说就是假定X与y之间有线性相关关系。(注意,一定是线性相关关系,和多项式关系区分开啊)
hθ(x→)=θ0+θ1×1+θ2×2+…+θnxn=∑i=0nθixi
其实呢这个公式就是说,x1,x2.。。xi 是我的不同的特征,也是是自变量,因为这些变量的作用使得最终结果y的输出,前面的系数可以理解成对这一个特征的权重,也就是“重要性”,所有体现出了我的特征对结果的影响是线性的,就是线性回归啦。
2.下面以一个银行决定贷款多少给一个客户为例:
我们假设贷款金额只和年龄和工资有关,则hx如何图示。
问题来了,我们拟合出来的函数是100%重合于数据的么?显然不是,因此存在一个损失(代价)函数,也就是误差。
3.误差是什么样子的呢?
我们一般都是认为误差是符合一个均值为0的正态分布,正态分布不解释,大自然界的众多东西分布当趋于一定量时都会呈现一种正态分布,就是中间多,两头少的趋势,
反过来说,如果我的误差不是为0较多,大误差较少的话,那我这也太不准了,就不是误差了,是错误了哈哈。
4.继续往下做一下数学方面的推导:
也就是得到了一个函数,我们要让他越大越好(减去后的那个东西)
J(θ1,θ2,…,θn)=12m∑i=1m(hθ(x→(i))−y(i))2
这个函数可以大概理解为:将每一个真实值与理想值做差的平方,累加起来再平均。
5.如何求最小值?
1.最小二乘法 2.迭代法(梯度下降)
6.求偏导,另偏导等于0
结果:θ = (X^T X)^-1 X^T y
7.梯度下降法:
附上两张吴恩达大牛的图: