Python中有监督学习之回归分析(一)

有监督学习包括回归(Regression)算法和分类(Classification)算法两种。
1.回归算法用于连续型的数据预测,分类算法用于离散型的分布预测。
2.回归算法通过建立一个回归方程来预测目标值,并求解这个回归方程的方程系数。
简而言之, 给出一个点集,构造一个函数来拟合这个点集,并且尽可能地让该点集与拟合函数间的误差最小。
线性回归的误差项通常用(平方误差)最小二乘来进行计算。


from sklearn import linear_model
import matplotlib.pyplot as plt
import numpy as np

# x表示企业成本,y表示企业利润
X = [[400], [450], [486], [500], [510], [525], [540], [549], [558], [590], [610], [640], [680], [750], [900]]
Y = [[80], [89], [92], [102], [121], [160], [180], [189], [199], [203], [247], [250], [259], [289], [356]]

# 回归训练
clf = linear_model.LinearRegression()
clf.fit(X, Y)

# 预测结果
X2 = [[400], [750], [950]]
Y2 = clf.predict(X2)
print(Y2)

res = clf.predict(np.array([1200]).reshape(-1, 1))[0]
print(u'预测成本1200元的利润:%.1f' % res)

plt.plot(X, Y, 'ks')      # 绘制训练数据的散点图
plt.plot(X2, Y2, 'g-')    # 绘制预测数据的直线
plt.show()

结果为:

[[ 75.90731557]
 [294.31750652]
 [419.12332992]]
预测成本1200元的利润:575.1
系数 [[0.62402912]]
截距 [-173.70433124]
评分系数 0.9118311887769117

在这里插入图片描述


知识点拓展:
1. 必须是矩阵格式或者数组格式,才能使用 .reshape(c, -1) 函数, 表示将此矩阵或者数组重组,以 c行d列的形式表示(-1的作用就在此,自动计算d:d=数组或者矩阵里面所有的元素个数/c, d必须是整数,不然报错)
2. (reshape(-1, e)即列数固定,行数需要计算)

Numpy中reshape函数、reshape(1,-1)的含义

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值