[机器学习]机器学习笔记整理13-线性回归简单实现

概念请参考:[机器学习]机器学习笔记整理12-线性回归概念理解

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

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

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

[机器学习]机器学习笔记整理13-线性回归简单实现_第2张图片

1.2 计算

[机器学习]机器学习笔记整理13-线性回归简单实现_第3张图片

预测:

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

代码实现

x_given = 6

Y_hat = 5*6 + 10 = 40

1.3 Python实现:

import numpy as np

def 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, b1

def 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 = 6

y_test = predict(6, b0, b1)

print "y_test:", y_test

你可能感兴趣的:(1.机器学习与算法笔记,机器学习,numpy,python)