1.概念:
什么是线性,线性指的是一条直线,它可以不是二维的,也可以是三维或者更高的维度,只是我们不能想象出来而已。
2.样例:
现在我们拥有了很多的数据,这些数据是关于随着学生的学习时长,他们考试后得到的评分,然后我们想得出其中的关系,等我们输入学习时长后,能得到一个大概的评分,这里我们就可以用到线性回归了,我们可以把评分设为y,学习时长设为x,然后得出公式,y=wx+b,现在我们要求的就是一条直线,因为他是有输入有标准输出的,所有属于有监督学习,这也是最简单的有监督学习,因为它是连续的一段值,而不是离散的,所以它属于回归。
3.代码:
0. 引入依赖
import numpy as np
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.pyplot as plt
1. 导入数据(data.csv)
points = np.genfromtxt('data.csv', delimiter=',')
points[0,0]
# 提取points中的两列数据,分别作为x,y
x = points[:, 0]
y = points[:, 1]
# 用plt画出散点图
plt.scatter(x, y)
plt.show()
2. 定义损失函数
# 损失函数是系数的函数,另外还要传入数据的x,y
def compute_cost(w, b, points):
total_cost = 0