码迷,mamicode.com
首页 > 其他好文 > 详细

机器学习-简单线性回归(二)

时间:2019-02-28 23:12:09      阅读:347      评论:0      收藏:0      [点我收藏+]

标签:1.3   turn   卖出   image   bsp   def   .com   举例   float   

一、简单线性回归模型举例

     汽车卖家做电视广告数量与卖出去的汽车数量:

技术图片

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

  

 

机器学习-简单线性回归(二)

标签:1.3   turn   卖出   image   bsp   def   .com   举例   float   

原文地址:https://www.cnblogs.com/lyywj170403/p/10452488.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!