【Andrew Ng机器学习】单变量线性回归-代价函数(一)
2018-07-10 本文已影响0人
jenye_
课程:吴恩达机器学习
之前我们已经给出了代价函数的数学定义,接下来是一些例子,直观地来理解代价函数是用来做什么的,以及我们为什么要使用它。
回顾
- 我们喜欢找到一条与数据拟合的直线,所以我们构造了假设函数h
- 假设函数h,包含了两个参数\theta_0和\theta_1。随着参数的选择不同,我们会得到不同的直线
- 代价函数J(\theta_0,\theta_1),也是我们的优化目标。
本次为了更好地使代价函数J可视化,使用一个简化的假设函数
此时我们的优化目标就是尽量减少J(\theta_1)的值
实际上我们关注的是两个函数h\theta(x)和J(\theta_1)。
假设我们有以下数据集
- 我们设\theta_1为1,那么有h将表示为如下直线
横轴的标签是房子的大小x。
当\theta_1=1时:
也就是J(1)=0,那么我们画出代价函数的图像如下:J(\theta_1)=(1/2m)\sum_{i=1}^m( h\theta (x^{(i)})-y^{(i)} )2
=(1/2m)\sum_{i=1}^m( \theta_1 x^{(i)}-y^{(i)} )2
=(1/2m)( 0^2 + 0^2 + 0^2)
=0^2
-
\theta_1 = 0.5时:
J(\theta_1)
=(1/2m)\sum_{i=1}^m( h\theta x^{(i)}-y^{(i)} )2
=(1/2m)( (0.5-1)^2 + (1-2)^2 + (1.5-3)^2)
=(1/6)*(3.5)=0.58
-
\theta_1 = 0时:
实际上经过一系列的计算我们就可以画出函数J(\theta)的形状:
那么我们优化的目标就是选择\theta_1的值,使得J(\theta1)最小, 这就是线性规划的目标函数:
当\theta_1选择1时,J(\theta_1)达到最小。而观察h函数图像,当\theta_1为1时,h就是最符合数据的直线。
在本个例子中,我们简化了算法,使代价函数只有一个参数\theta_1,我们将参数\theta_0设置成了0, 接下来我们会回到原来的公式,看看同时包含两个参数\theta_0和\theta_1的图形。
【Andrew Ng机器学习】单变量线性回归-代价函数(二)