机器学习-简单线性回归
Posted lyywj170403
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了机器学习-简单线性回归相关的知识,希望对你有一定的参考价值。
一、简单线性回归模型举例
汽车卖家做电视广告数量与卖出去的汽车数量:
1.1 列出适合简单线性回归模型的最佳回归线?
使sum of squares最小
1.2 计算
1.3 预测
假设有一周的广告数为6.预测的汽车销售量为多少?
代码:
# -*- coding:utf-8 -*-
#简单线性回归:只有一个自变量 y=k*x+b 预测使得(y-y*)^2最小
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
print("numerator:" + str(numerator))
print("dinominator:" + str(dinominator))
b1 = numerator/float(dinominator)
b0 = np.mean(y)-(b1*(np.mean(x)))
return b0,b1
# y = b0 + x*b1
def prefict(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("b0:",b0,"b1:",b1)
y_predict = prefict(6, b0, b1)
print("y_predict:" + str(y_predict))
结果:
numerator:20.0
dinominator:4.0
b0: 10.0 b1: 5.0
y_predict:40.0
以上是关于机器学习-简单线性回归的主要内容,如果未能解决你的问题,请参考以下文章