首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏小小程序员——DATA

    线性回归 numpy实现线性回归

    手写线性回归 使用numpy随机生成数据 import numpy as np import matplotlib.pyplot as plt # 生成模拟数据 np.random.seed(42) X = 2 * np.random.rand(200, 1) y = 4 + 3 * X + np.random.randn(200, 1) # 可视化数据 plt.scatter(X, y) plt.xlabel ('X') plt.ylabel('y') plt.title('Generated Data') plt.show() 定义线性回归参数并实现梯度下降 对于线性拟合,其假设函数为: h_θ(x)= ) plt.ylabel('y') plt.legend() plt.title('Linear Regression using Gradient Descent') plt.show() 实现多元线性回归 多元线性回归的梯度下降算法: θ_j≔θ_j−α\frac{∂J(θ)}{∂θ_j} 对 \frac{∂J(θ)}{∂θ_j} 进行等价变形: θ_j≔θ_j−α\frac{1}{m}∑_{i=1}^

    1.1K10编辑于 2023-12-02
  • 来自专栏技术圈

    线性回归,LWLR,岭回归,逐步线性回归

    版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。

    1K10发布于 2019-08-21
  • 来自专栏专知

    线性回归:简单线性回归详解

    【导读】本文是一篇专门介绍线性回归的技术文章,讨论了机器学习中线性回归的技术细节。线性回归核心思想是获得最能够拟合数据的直线。 文中将线性回归的两种类型:一元线性回归和多元线性回归,本文主要介绍了一元线性回归的技术细节:误差最小化、标准方程系数、使用梯度下降进行优化、残差分析、模型评估等。在文末给出了相关的GitHub地址。 Linear Regression — Detailed View 详细解释线性回归 线性回归用于发现目标与一个或多个预测变量之间的线性关系。 有两种类型的线性回归 – 一元线性回归(Simple)和多元线性回归(Multiple)。 一元线性回归 ---- 一元线性回归对于寻找两个连续变量之间的关系很有用。 2,回归平方和SSR (sum of squares for regression) ? 3,残差平方和SSE (sum of squares for error) 是: ?

    2.4K80发布于 2018-04-08
  • 来自专栏杂七杂八

    线性回归

    线性回归 下面我们用一个预测房价的例子来说明。 由此我们可以看出,房价和人口百分比成反比,与房间数成正比 通过梯度下降法计算回归参数,实现线性回归模型 关于梯度下降可以参看这篇文章 import numpy as np class LinearRegressionByMyself 使用sklearn实现线性回归模型 from sklearn.linear_model import LinearRegression sk_model = LinearRegression() sk_model.fit (X, y, sk_model) plt.xlabel('Percentage of the population') plt.ylabel('House price') plt.show() 评估线性回归模型 y_line_fit = Linear_model.predict(X_fit) linear_r2 = r2_score(y, Linear_model.predict(X)) #二次模型,先二次变换再线性回归

    1.5K70发布于 2018-04-27
  • 来自专栏iOSDevLog

    线性回归

    线性模型、线性回归与广义线性模型 逻辑回归 工程应用经验 数据案例讲解 1. 线性模型、线性回归与广义线性回归 1.1 线性模型 image 线性模型(linear model)试图学得一个通过属性的线性组合来进行 预测的函数: image 向量形式: image 简单 价格(y,千美元) 1500 3 2 3 ... ? 对于样本 image 如果我们希望用线性的映射关系去逼近y值 可以得到线性回归模型 image 有时候关系不一定是线性的 如何逼近y 的衍生物? 比如令 image 则得到对数线性回归 (log-linear regression) 实际是在用 image 逼近y image 要点总结 线性回归 线性映射关系 yˆ=θTX 损失函数

    1.1K30发布于 2018-06-07
  • 来自专栏NowlNowl_AI

    机器学习第3天:线性回归

    文章目录 线性回归简介 线性回归公式 (1)基本公式 (2)公式向量化 模型评估 机器学习代码 环境安装 生成数据 机器学习线性模型拟合 线性回归简介 线性回归问题是机器学习中最基本的问题,它常用来预测一些和特征具有线性关系的值 ,我们在之前的文章中也提到过,可见这篇文章:机器学习第1天:概念与体系漫游-CSDN博客 线性回归公式 (1)基本公式 在这个公式中,y是预测值,a是参数,x是特征值,模型的学习目标就是拟合合适的a值, 因为在代码中,我们常常把数据组合成向量进行训练 模型评估 我们当然要判断模型的性能,这时我们需要一个指标,在回归任务中,最常见的指标是MSE(均方误差) 其中m是数据的个数,容易得到,MSE越小时模型性能更好 np.random.rand函数,rand的参数个数代表维度,参数数字代表每个维度的大小,在这个例子中rand(100, 1)创建了一个二维数组,里面有100个一维数据,数据类型大概为[[x1], [x2], [x3] 这个红色的线就是机器学习模型拟合的线,可以看到效果还是不错的 重点代码 model = LinearRegression() model.fit(x, y) pre_y = model.predict(x) 这里先定义模型为线性回归模型

    29310编辑于 2024-01-18
  • 来自专栏又见苍岚

    线性回归 - 岭回归

    本文记录岭回归角度进行线性回归的方法。 问题描述 考虑一个线性模型 {y}=f({\bf{x}}) 其中y是模型的输出值,是标量,\bf{x}为d维实数空间的向量 线性模型可以表示为: f(\bf{x})=\bf{w} ^Tx,w\in \mathbb{R} 线性回归的任务是利用n个训练样本: image.png 和样本对应的标签: Y = [ y _ { 1 } \cdots \quad y _ { n } ] ^ { T } \quad y \in \mathbb{R} 来预测线性模型中的参数 \bf{\omega},使得模型尽可能准确输出预测值 线性回归 / 岭回归回归就是带有L_2正则的线性回归> 之前最小二乘法的损失函数 : L(w)= w^{T} X{T{\prime}} X w-2 w^{T} X^{T} Y+Y^{T} Y 岭回归的代价函数: image.png 上式中 \lambda 是正则化系数,现在优化的目标就转为

    1.6K10编辑于 2022-08-05
  • 来自专栏大数据学习笔记

    线性回归

    /usr/bin/env python3 # -*- coding: utf-8 -*- import numpy as np import matplotlib.pyplot as plt 2、线性拟合 #! /usr/bin/env python3 # -*- coding: utf-8 -*- import tensorflow as tf import numpy as np import matplotlib.pyplot learning_rate = 0.01 training_epochs = 100 # 初始化线性模拟数据 x_train = np.linspace(-1, 1, 101) y_train = 将输入和输出节点设置为占位符,而真实数值将传入 x_train 和 y_train X = tf.placeholder("float") Y = tf.placeholder("float") # 将回归模型定义为

    66610发布于 2019-07-01
  • 来自专栏AI Master's Road

    线性回归

    设:$$y=ax_1+b_x2$$ 这公式那么一写阿,瞅起来像是一个线性模型,简单理解也就是一条线嘛。 累加当然可以用,假如说L(θi)={1,2,3,4,5,6,7,8,9},把所有的数累加起来,其结果sum_L(θi)=45,但是如果把所有的结果累乘起来,其结果ride_L(θi)=362880。 有了公式,现在回头来看看真实的问题和真实的数据该怎么处理: House Prices: Advanced Regression Techniques 房价:先进的回归技术 housing = pd.read_csv 去除异常数据 4.绘制散点图和线性关系 那么接下来我们吧数据统一重新处理一下: train_house = pd.read_csv("http://kaggle.shikanon.com/house-prices-advanced-regression-techniques submisson.csv", index=False) 我们把submission提交到Kaggle的平台上,看看能获得什么样的分数: [在这里插入图片描述] 结果显示并不是很好,当然,我们还有好多因素没有考虑,不过,线性回归

    1.4K20发布于 2020-02-14
  • 来自专栏jinyu's Blog

    线性回归

    理论 回归问题通常用于连续值的预测,可以总结为给定x, 想办法得到f(x),使得f(x)的值尽可能逼近对应x的真实值y。 假设,输入变量x与输出值y成线性关系,比如随着年龄(x)增大, 患癌症的概率(y)也会逐渐增大。 = gradient_descent_step(b, w, points, leaning_rate) print("step{0}====b:{1}, w:{2}, loss: {3}

    1.1K30编辑于 2022-03-17
  • 来自专栏python3

    线性回归

    线性回归是一种回归分析技术,回归分析本质上就是一个函数估计的问题(函数估计包括参数估计和非参数估计),就是找出因变量和自变量之间的因果关系。 回归分析的因变量是应该是连续变量,若因变量为离散变量,则问题转化为分类问题,回归分析是一个有监督学习问题。 线性其实就是一系列一次特征的线性组合,在二维空间中是一条直线,在三维空间中是一个平面,然后推广到n维空间,可以理解高维广义线性吧。线性回归实现和计算都比较简单,但是不能拟合非线性数据。 关于推导,有用到线代、统计、概率、微积分等方面的知识,其实大概了解下就OK,下面是代码: 1 import numpy as np 2 import matplotlib.pyplot as plt 3 plt.show() 想说个小技巧,选中调用的函数,快捷键crtl+B,或者单击右键,Go To,Declaration;就可以快速转到调用的函数那儿,注:我用的是Pycharm + Anaconda3.

    68810发布于 2020-01-19
  • 来自专栏csico

    线性回归

    统计学习方法 算法(线性回归) 策略(损失函数) 优化(找到最小损失对于的W值) 线性回归 寻找一种能预测的趋势 线性关系 二维:直线关系 三维:特征,目标值,平面当中 线性关系定义 h(w)=w0 = std_y.inverse_transform(lr.predict(x_test)) # std_y.inverse_transform() 转换数据 print(lr.coef_) # 显示回归系数 梯度下降预测结果返回的是一维数组 需要转换 sdg_p = std_y.inverse_transform(sgd.predict(x_test).reshape(-1,1)) print(sgd.coef_) # 显示回归系数

    65060编辑于 2021-12-29
  • 来自专栏jzc的blog

    线性回归

    线性回归 线性回归预测函数: 逻辑回归预测函数: 线性回归损失函数: 逻辑回归损失函数: MSE直接应用到LR中会导致损失函数变成非凸函数,所以我们加入log让损失函数变成了凸函数 二项分布中): 非二项分布: 损失函数(经验损失+结构损失): 两者损失函数求导后,除了假设函数不一样,表示形式是一样的: 损失函数中参数倍数变化并不会影响最优值的最终结果 1.1 逻辑回归 sigmiod 其中\theta是收敛之后得到的结果 根据sigmoid曲线,h_{\theta}≥0时,置为1;否则置为0 1.1.1.1 决策边界 1.1.2 代价函数 当我们把线性回归的代价函数放到逻辑回归上使用时 分析 化简 得到如下结果,使用了==极大似然法==(能够在统计学中能为不同模型快速寻找参数),并且结果是凸函数 参数梯度下降: ==可以发现,求导后线性回归和逻辑回归的公式是一样的,但是他们的假设函数 训练多个逻辑回归分类器,然后将输入放到各分类器中,将输入归类为得分值最大的类别即可 1.4 过拟合和欠拟合解决 1.4.1 过拟合 适当减少多余的参数 使用正则化,适当减少参数维度(阶/次方)/大小

    1K20编辑于 2022-03-31
  • 来自专栏大龄程序员的人工智能之路

    线性回归

    于是我又找到吴恩达的Marchine Learning课程,再次学习了线性回归和Logistic回归。 Machine Leanring这门课程是先从线性回归讲起,然后再介绍的Logistic回归,个人感觉这样的次序更容易理解。 线性回归 在[机器学习实战札记] Logistic回归中,我们了解到回归的定义,其目的是预测数值型的目标值,最直接的方法是依据输入写出一个目标值的计算公式。 一旦有了这些回归系统,再给定输入,做预测就非常容易。 回归中使用得最多的就是线性回归,而非线性回归问题也可以经过变化,简化为线性回归问题。比如有如下图所示的数据集: ? 可以通过引入高阶多项式: ? , 需要计算XTX的逆 当n很大时可以很好的工作 如果n很大,将会非常慢 用正态方程求逆的复杂度为O(n3)。

    1K30发布于 2019-07-02
  • 来自专栏个人学习笔记

    线性回归(一)-多元线性回归原理介绍

    若多个变量的的取值与目标函数取值仍呈现线性关系,则可以使用多元线性回归进行建模预测。本文将从一元线性回归推广到多元线性回归。 -- more --> 多元线性回归理论 从一元线性回归讲起 假设有一个分布列,如下表所示: 0 1 2 3 4 5 6 7 8 9 Y 6.7 7.2 10.3 12.4 15.1 17.6 19.4 如果卡方值越大,其偏离程度越大,若卡方值等于0,则说明总体和样本完全吻合^3。 对于一次函数的线性回归模型,我们需要检验回归得到的系数是否显著,同时要检验回归得到的方程是否显著。 否则一定有线性相关的列向量。 参考资料 ^1: 皮尔逊积矩相关系数 ^2: 假设检验和参数检验 ^3: 卡方检验 ^4: 数学模型-参数估计和显著性

    6.3K01发布于 2020-06-13
  • 来自专栏明天依旧可好的专栏

    机器学习第3天:多元线性回归

    X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.2, random_state=0) 第2步: 在训练集上训练多元线性回归模型 关于多元线性回归 简单线性回归:影响Y的因素唯一,只有一个。 多元线性回归:影响Y的因数不唯一,有多个。 与一元线性回归一样,多元线性回归自然是一个回归问题。 一元线性回归方程:Y=aX+b。 多元线性回归是:Y=aX1+bX2+cX3+…+nXn。 相当于我们高中学的一元一次方程,变成了n元一次方程。因为y还是那个y。只是自变量增加了。 2. ] 表示 3,在上例输出结果中的最后四位 […0,0,0,1] 也就是表示该特征为 3 可以简单理解为“male”“US”“Safari”经过LabelEncoder与OneHotEncoder的编码就变成了 更多OneHot编码知识可前往:scikit-learn 中 OneHotEncoder 解析 3.

    97330发布于 2019-01-22
  • 来自专栏WeiMLing

    线性回归与逻辑回归

    在读研期间,一直在帮导师做技术开发,甚至偶尔做一做美工(帮导师和实验室博士生画个图啥的),算法还是较少接触的,其实,我发现,算法还是蛮好玩的,昨晚看了B站一个美女算法工程师讲了线性回归和逻辑回归两种算法 概念2:线性回归详解与实例。 1)线性回归:用一个直线较为精准的描述数据之间的关系,每当出现新的数据时(X),可以预测出一个对应的输出值(Y)。 3)总结(3部) 1.构造预测函数(也就是构造那个拟合的直线,这里是多维线性回归) 2.构造损失函数 3.最小化损失函数 ? 概念3:逻辑回归详解。 细说:逻辑回归是在线性回归的基础上嵌套了一个sigmoid函数,目的是将线性回归函数的结果映射到sigmoid函数中(如下图)。 我们知道,线性回归的模型是求出输出特征向量Y和输入样本矩阵X之间的线性关系系数 θ,满足 Y =Xθ。此时我们的Y是连续的,所以是回归模型。 如果我们想要Y是离散的话,怎么办呢?

    1.1K10发布于 2019-08-23
  • 来自专栏生信补给站

    R|机器学习入门-多元线性回归3

    回归分析是一种预测性的建模技术,它研究的是因变量(目标)和自变量(预测器)之间的关系。本文简单的介绍一下多元线性回归。 ? Multiple Linear Regression Data Preprocessing 1 读入数据集 # 导入数据 setwd("C:\\Users\\****\\Documents\\ML\\day3\ 471784.1 New York 192261.8 2 162597.7 151377.59 443898.5 California 191792.1 3 4.1 多重线性回归 regres = lm(formula = Profit ~ R.D.Spend + Administration + Marketing.Spend + State, +03 0.058 0.954 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 4.2 进行逐步回归分析

    70520发布于 2020-08-06
  • 来自专栏Hsinyan写字的地方

    多元线性回归

    推导 在广义的线性回归中,是可以有多个变量或者多个特征的,在上一篇文章线性回归算法中实现了一元线性回归,但在实际问题当中,决定一个label经常是由多个变量或者特征决定的。 在一元线性回归当中,问题最终转化为使得误差函数最小的a和b,预测函数为\hat{y}^{(i)}=ax^{(i)}+b,也可以写成这种形式\hat{y}=\theta_0+\theta_1x,其中\theta _0为截距b,\theta_1为前面式子中的a 那么对于在多元线性回归,我们也可以将预测函数函数表示为 \hat{y}^{(i)}=\theta_0+\theta_1X_1^{(i)}+\theta_2X theta)尽可能小,则有\theta的正规方程解(Normal Equation): \theta = (X_b^TX_b)^{-1}X_b^Ty 但是这种方法存在缺点,即计算的时间复杂度比较高,为O(n^3) 1,\theta_2,…,\theta_n)^T中,\theta_0为截距(intercept),\theta_1,\theta_2,…,\theta_n为系数(coefficients) 实现 多元线性回归

    99120编辑于 2022-06-19
  • 来自专栏mantou大数据

    多元线性回归

    多元线性回归定义 在回归分析中,如果有两个或两个以上的自变量,就称为多元回归。 因此多元线性回归比一元线性回归的实用意义更大。 我们现在介绍方程的符号,我们可以有任意数量的输入变量。 梯度下降 下面我们使用梯度下降法来解决多特征的线性回归问题。 [image] Hypothesis: 假设假设现有多元线性回归并约定x0=1。 Parameters: 该模型的参数是从θ0 到θn。 2.2 当有一个以上特征时 现有数目远大于1的很多特征,梯度下降更新规则变成了这样: [image] 有些同学可能知道微积分,代价函数 J 对参数 θj 求偏导数 (蓝线圈出部分),你将会得到多元线性回归的梯度下降算法 如果它的取值 在-1/3 到+1/3的话,我觉得 还不错,可以接受。或者是0到1/3或-1/3到0,这些典型的范围,我都认为是可以接受的。

    2.3K180发布于 2018-04-21
领券