线性回归

线性回归

百般思念 提交于 2019-12-01 17:23:20
1 一元线性回归 import pandas as pd import numpy as np import matplotlib.pyplot as plt from sklearn.linear_model import LinearRegression #导入机器学习库中的线性回归模块 data=pd.DataFrame({'square_feet':[150,200,250,300,350,400,600], 'price':[5450,6850,8750,9650,10450,13450,16450]}) #创建一组7行2列的数据,square_feet为房屋面积,price为对应价格 data_train=np.array(data['square_feet']).reshape(data['square_feet'].shape[0],1)#这里是将数据转化为一个1维矩阵 print(type(data_train)) print(data_train) data_test=data['price'] #创建线性回归模型,拟合面积与价格并通过面积预测价格 regr=LinearRegression() #创建线性回归模型,参数默认 # 这里的fit()中的第一个参数必须是二维数组才行,否则报错 regr.fit(data_train,data_test)#拟合数据

05_线性回归法

穿精又带淫゛_ 提交于 2019-12-01 16:41:03
5-1 简单线性回归 线性回归算法 解决回归问题 思想简单,实现容易 许多强大的非线性模型的基础 结果具有很好的可解释性 蕴含机器学习中的很多重要思想 对比分类问题,两轴均为特征。 总结一下 说明 线性回归问题描述 解决思路 近乎所有参数学习算法都是这样的套路 5-2 最小二乘法 推导,得 (1)对 b 求偏导 (2)对 a 求偏导 5-3 简单线性回归的实现 首先,看一个简单的例子 import numpy as np import matplotlib.pyplot as plt x = np.array([1., 2., 3., 4., 5.]) y = np.array([1., 3., 2., 3., 5.]) plt.scatter(x, y) plt.axis([0, 6, 0, 6]) plt.show() 接下来计算相关值 x_mean = np.mean(x) y_mean = np.mean(y) num = 0.0 d = 0.0 for x_i, y_i in zip(x, y): num += (x_i - x_mean) * (y_i - y_mean) d += (x_i - x_mean) ** 2 a = num/d b = y_mean - a * x_mean print("(a, b): ", (a, b)) # (a, b): (0.8,

机器学习-新(目录)

点点圈 提交于 2019-12-01 12:49:48
01部分 机器学习基础 01-01 机器学习 02部分 监督学习 02-01 感知机 02-02 感知机原始形式(鸢尾花分类) 02-03 感知机对偶形式(鸢尾花分类) 02-04 线性回归 02-05 scikit-learn库之线性回归 02-06 普通线性回归(波斯顿房价预测)+特征选择 02-07 多元线性回归(波士顿房价预测) 02-08 多项式回归(波士顿房价预测) 02-09 对数线性回归(波士顿房价预测) 02-10 正则化线性回归(波士顿房价预测) 02-11 RANSAC算法线性回归(波斯顿房价预测) 02-12 Logistic(逻辑)回归 02-13 Softmax回归 02-14 scikit-learn库之逻辑回归 02-15 Logistic回归(鸢尾花分类) 02-16 k近邻算法 02-17 kd树 02-18 scikit-learn库之k近邻算法 02-19 k近邻算法(鸢尾花分类) 02-20 kd树(鸢尾花分类) 02-21 决策树ID3算法 02-22 决策树C4.5算法 02-23 决策树CART算法 02-24 决策树总结 02-25 scikit-learn库之决策树 02-26 决策树(鸢尾花分类) 02-27 朴素贝叶斯 02-28 scikit-learn库之线朴素贝叶斯 02-29 朴素贝叶斯(垃圾邮件分类) 02-30

线性回归原理

我们两清 提交于 2019-12-01 12:15:30
一、 线性回归的模型函数和损失函数 对于n维特征的样本数据,如果我们决定使用线性回归,那么对应的模型是这样的:     $h_\theta(x_1, x_2, ...x_n) = \theta_0 + \theta_{1}x_1 + ... + \theta_{n}x_{n} $ 增加一个特征$X_0=1$,得到$h_\mathbf{\theta}(\mathbf{X}) = \mathbf{X\theta}$ 来源: https://www.cnblogs.com/yukizzc/p/11685038.html

通俗得说线性回归算法(二)线性回归实战

僤鯓⒐⒋嵵緔 提交于 2019-12-01 10:09:58
前情提要: 通俗得说线性回归算法(一)线性回归初步介绍 一.sklearn线性回归详解 1.1 线性回归参数 介绍完线性回归,那么我们来看看如何运用sklearn来调用线性回归模型,进行训练和预测。 def LinearRegression(fit_intercept=True, normalize=False, copy_X=True, n_jobs=None ) - fit_intercept:默认为true,参数意思是说要不要计算此模型的截距。 如果设置为False,则不会在计算中使用截距。 - normalize:正则化,默认是false。 - copy_X:默认是true,会复制一份x,否则会覆盖掉原有的x。 - n_jobs:指定多少个CPU进行运算,默认是None,表示1。如果设置为-1则表示使用全部cpu。 1.2 线性回归例子 import numpy as np from sklearn.linear_model import LinearRegression X = np.array([[1, 1], [1, 2], [2, 2], [2, 3]]) # y = 1 * x_0 + 2 * x_1 + 3 y = np.dot(X, np.array([1, 2])) + 3 reg = LinearRegression().fit(X, y) reg

线性回归曲线和过拟合判断

别等时光非礼了梦想. 提交于 2019-12-01 09:50:36
import matplotlib.pyplot as plt import mglearn from scipy import sparse import numpy as np import matplotlib as mt import pandas as pd from IPython.display import display from sklearn.linear_model import LinearRegression from sklearn.model_selection import train_test_split #wave数据集 #wave数据集只有一个特征 #公式为y=w[0]x[0]+b #w为斜率,b为轴偏移或截距,分别在sklearn中使用 coef_[0], intercept_表示 mglearn.plots.plot_linear_regression_wave() plt.show() #boston数据集 #boston数据集有506个样本,105个特征 X, y = mglearn.datasets.load_extended_boston() X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0) lr = LinearRegression

通俗得说线性回归算法(一)线性回归初步介绍

Deadly 提交于 2019-12-01 02:56:23
一.从线性回归的故事说起 相信大家都听过著名的博物学家,达尔文的大名,而今天这个故事的主人公就是他的表弟高尔顿。 高尔顿是一名生理学家,在1995年的时候,他研究了1078堆父子的身高,发现他们大致满足一条公式,那就是 Y=0.8567+0.516*x 这条式子中的x指的是父亲的身高,Y指的是儿子的身高。可以明显看出,这就是我们中学时代学的二元一次方程,反应在平面上就是 一条直线 。 通过这条公式,我们或许会直观得以为高个的父亲总会有高个的儿子,矮个的父亲会有矮个的儿子。但高尔顿进一步观察后发现,并非所有的情况都是这样的。特别高的父亲的儿子会比他父亲矮一些,特别矮的父亲的儿子会比他父亲高一些,父子不会说一直不断得更高或更矮下去。 这个现象,其实就是回归 。趋势不会一直持续下去,而是会回到某个中心。 通过这个故事,相信你已经明白了什么是线性回归,那么接下来我们就来说说更加详细的内容。 二.理解线性回归 抛出问题:假设有这样的一些点,这些都是现有的数据,我们要找到拟合这些点的线,然后预测接下来的点。那我们要怎么找出这条线呢? h(x)=a0 + a1 * x(a1是斜率,a0是截距) 或者说换个问法,我们要怎么求出a_1和a_0呢? Cost Function(代价函数) 第一次接触线性回归的同学可能不知道什么叫cost function,其实当碰到不知道的概念的时候,只要想清楚两件事

机器学习 - 线性回归 - 详细数学

て烟熏妆下的殇ゞ 提交于 2019-11-30 22:34:12
线性回归建模 数据集 结构 简述 存在   name - 姓名   sex - 性别   wgt - 体重   smoke - 是否吸烟 预测   sys - 收缩压 建模 训练, 预测 表示一个训练样本, x 表示输入, y 表示输出, 训练数据的 x , y 都是给定的现有数据 则表示训练样本集, 1....N 表示有 N 个样本 当然每个样本可能存在多个特征对结果 y 的影响因素 因此将其简化为 粗体的 X , X 以向量的形式展示, 内部存放多维度的特征值 于此得到的模型为 输入一个 X # , X # 内部存在多个特征值, 然后期望获得一个 y # 的预测结果 线性模型 将模型转化成线性模型的方式, 线性模型作为最经典最简单的模型也是最适用的模型 日后当然也可以使用更复杂的模型, 这里线性模型基本上就可以满足我们的要求实现我们的目的 标量的情况, 拟定的线性方程, 使得每一个原始数据 X (i) 的输出 y (i) 的输出近似于真实的 y (i) ω 是系数, 而 b 为偏置 向量的情况则是这样, 拟定的线性方程, 则是输入的向量进行转置后乘以一个向量 , 既内积 w T 是系数, 而 b 为偏置 最终的结果也是一个标量 , 于此, 这里的问题就是怎么找出这个 ω / w T 以及 b 简单总结 简化为标量线性模型, 转化为向量线性模型, 缺失参数和偏置,

机器学习

守給你的承諾、 提交于 2019-11-30 19:50:33
第一章:机器学习基础 01 机器学习 第二章:监督学习 01 感知机 02 感知机原始形式(鸢尾花分类) 03 感知机对偶形式(鸢尾花分类) 04 线性回归 05 scikit-learn库之线性回归 06 普通线性回归(波斯顿房价预测)+特征选择 07 多元线性回归(波士顿房价预测) 08 多项式回归(波士顿房价预测) 09 对数线性回归(波士顿房价预测) 10 正则化线性回归(波士顿房价预测) 11 RANSAC算法线性回归(波斯顿房价预测) 12 Logistic(逻辑)回归 13 Softmax回归 14 scikit-learn库之逻辑回归 15 Logistic回归(鸢尾花分类) 16 k近邻算法 17 kd树 18 scikit-learn库之k近邻算法 19 k近邻算法(鸢尾花分类) 20 kd树(鸢尾花分类) 21 决策树ID3算法 22 决策树C4.5算法 23 决策树CART算法 24 决策树总结 25 scikit-learn库之决策树 26 决策树(鸢尾花分类) 27 朴素贝叶斯 28 scikit-learn库之线朴素贝叶斯 29 朴素贝叶斯(垃圾邮件分类) 30 线性可分支持向量机 31 线性支持向量机 32 线性支持向量机(鸢尾花分类) 33 非线性支持向量机 34 非线性支持向量机(鸢尾花分类)+自定义数据分类 35 scikit