1. 简单线性回归模型举例:

汽车卖家做电视广告数量与卖出的汽车数量: 
这里写图片描述 [机器学习]机器学习笔记整理13-线性回归简单实现 AI教程 第1张

1.1 如何练处适合简单线性回归模型的最佳回归线?

这里写图片描述 [机器学习]机器学习笔记整理13-线性回归简单实现 AI教程 第2张

1.2 计算

这里写图片描述 [机器学习]机器学习笔记整理13-线性回归简单实现 AI教程 第3张

预测:

假设有一周广告数量为6,预测的汽车销售量是多少? 
这里写图片描述 [机器学习]机器学习笔记整理13-线性回归简单实现 AI教程 第4张

代码实现

x_given = 6Y_hat = 5*6 + 10 = 401.3 Python实现:import numpy as npdef fitSLR(x, y):
    n = len(x)
    dinominator = 0
    numerator = 0
    for i in range(0, n):
        numerator += (x[i] - np.mean(x))*(y[i] - np.mean(y))
        dinominator += (x[i] - np.mean(x))**2
    b1 = numerator/float(dinominator)
    b0 = np.mean(y)/float(np.mean(x))    return b0, b1def predict(x, b0, b1):
    return b0 + x*b1

x = [1, 3, 2, 1, 3]
y = [14, 24, 18, 17, 27]    


b0, b1 = fitSLR(x, y)print "intercept:", b0, " slope:", b1

x_test = 6y_test = predict(6, b0, b1)print "y_test:", y_test
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35