# 创建数据集,把数据写入到numpy数组
import numpy as np # 引用numpy库,主要用来做科学计算
import matplotlib.pyplot as plt # 引用matplotlib库,主要用来画图
data = np.array([[152,51],[156,53],[160,54],[164,55],
[168,57],[172,60],[176,62],[180,65],
[184,69],[188,72]])
# 打印大小
x, y = data[:,0], data[:,1]
print (x.shape, y.shape)
# 1. 手动实现一个线性回归算法,具体推导细节参考4.1课程视频
# TODO: 实现w和b参数, 这里w是斜率, b是偏移量
x_avg = np.average(x)
y_avg = np.average(y)
x_y_avg = np.average(np.multiply(x,y))
x_power_avg = np.average(np.power(x,2))
w = (x_y_avg - x_avg * y_avg)/(x_power_avg - x_avg * x_avg )
b = y_avg - w * x_avg
print ("通过手动实现的线性回归模型参数: %.5f %.5f"%(w,b))
# 2. 使用sklearn来实现线性回归模型, 可以用来比较一下跟手动实现的结果
from sklearn.linear_model import LinearRegression
model = LinearRegression().fit(x.reshape(-1,1),y)
print ("基于sklearn的线性回归模型参数:%.5f %.5f"%(model.coef_, model.intercept_))
线性回归手写实现
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- TensorFlow实现Softmax Regression(回归)识别手写数字。MNIST(Mixed Nati...
- 好的推销,让人不厌倦,有宾至如归,好似回到了慈祥姥姥的家里,拿个板凳,安安静静坐下来,听她娓娓道来经年的故事一样。...
- 最近看到一个巨牛的人工智能教程,分享一下给大家。教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太...
- |本文同步于微信公众号【科学计算与编程】|欢迎关注,获取更多优秀文章! RBF神经网络概述 径向基函数(Radic...