局部加权回归(Lowess)

代码示例:(源自:https://blog.csdn.net/weixin_71158509/article/details/136060826)
import numpy as np
import matplotlib.pyplot as plt
def local_weighted_regression(x, y, query_point, tau):
m = len(x)
weights = np.exp(-0.5 * ((x - query_point) / tau) ** 2)
X = np.column_stack((np.ones(m), x))
W = np.diag(weights)
theta = np.linalg.inv(X.T @ W @ X) @ X.T @ W @ y
return theta[0] + theta[1] * query_point
# 生成带噪声的非线性数据
np.random.seed(0)
x = np.linspace(-5, 5, 100)
y = np.sin(x) + np.random.normal(0, 0.2, 100)
# 设定tau参数
tau = 0.5
# 针对每个x点进行局部加权回归拟合
pred_y = [local_weighted_regression(x, y, query_point, tau) for query_point in x]
# 绘制原始数据和拟合曲线
plt.scatter(x, y, label='Original Data')
plt.plot(x, pred_y, color='red', label='Locally Weighted Regression')
plt.xlabel('x')
plt.ylabel('y')
plt.legend()
plt.show()

参考:
http://www.360doc.com/content/23/1114/09/1103876076_1103876076.shtml
https://blog.51cto.com/u_14405/10716690
https://blog.51cto.com/u_16213668/10656049
https://www.bilibili.com/video/BV1pFHxexE61
https://blog.csdn.net/longgb123/article/details/79520982
https://www.cnblogs.com/mooba/p/5947161.html
https://www.bilibili.com/video/BV1NP411K7eS/
局部加权回归(Lowess)的更多相关文章
- 局部加权回归LOWESS
1. LOWESS 用kNN做平均回归: \[ \hat{f(x)} = Ave(y_i | x_i \in N_k(x)) \] 其中,\(N_k(x)\)为距离点x最近k个点组成的邻域集合(nei ...
- Stanford大学机器学习公开课(三):局部加权回归、最小二乘的概率解释、逻辑回归、感知器算法
(一)局部加权回归 通常情况下的线性拟合不能很好地预测所有的值,因为它容易导致欠拟合(under fitting).如下图的左图.而多项式拟合能拟合所有数据,但是在预测新样本的时候又会变得很糟糕,因为 ...
- 第三集 欠拟合与过拟合的概念、局部加权回归、logistic回归、感知器算法
课程大纲 欠拟合的概念(非正式):数据中某些非常明显的模式没有成功的被拟合出来.如图所示,更适合这组数据的应该是而不是一条直线. 过拟合的概念(非正式):算法拟合出的结果仅仅反映了所给的特定数据的特质 ...
- [置顶] 局部加权回归、最小二乘的概率解释、逻辑斯蒂回归、感知器算法——斯坦福ML公开课笔记3
转载请注明:http://blog.csdn.net/xinzhangyanxiang/article/details/9113681 最近在看Ng的机器学习公开课,Ng的讲法循循善诱,感觉提高了不少 ...
- Robust Locally Weighted Regression 鲁棒局部加权回归 -R实现
鲁棒局部加权回归 [转载时请注明来源]:http://www.cnblogs.com/runner-ljt/ Ljt 作为一个初学者,水平有限,欢迎交流指正. 算法参考文献: (1) Robust L ...
- 线性回归 Linear regression(4) 局部加权回归
这篇文章将介绍过拟合和欠拟合的概念,并且介绍局部加权回归算法. 过拟合和欠拟合 之前在线性回归中,我们总是将单独的x作为我们的特征,但其实我们可以考虑将,甚至x的更高次作为我们的特征,那么我们通过线性 ...
- 局部加权回归(LWR) Matlab模板
将百度文库上一份局部加权回归的代码,将其改为模板以便复用. q2x,q2y为数据集,是n*1的矩阵: r是波长参数,就是对于距离的惩罚力度: q_x是要拟合的数据横坐标,是1*n的矩阵: 得到的q_y ...
- 局部加权回归、欠拟合、过拟合(Locally Weighted Linear Regression、Underfitting、Overfitting)
欠拟合.过拟合 如下图中三个拟合模型.第一个是一个线性模型,对训练数据拟合不够好,损失函数取值较大.如图中第二个模型,如果我们在线性模型上加一个新特征项,拟合结果就会好一些.图中第三个是一个包含5阶多 ...
- 局部加权回归、欠拟合、过拟合 - Andrew Ng机器学习公开课笔记1.3
本文主要解说局部加权(线性)回归.在解说局部加权线性回归之前,先解说两个概念:欠拟合.过拟合.由此引出局部加权线性回归算法. 欠拟合.过拟合 例如以下图中三个拟合模型.第一个是一个线性模型.对训练数据 ...
- Locally weighted linear regression(局部加权线性回归)
(整理自AndrewNG的课件,转载请注明.整理者:华科小涛@http://www.cnblogs.com/hust-ghtao/) 前面几篇博客主要介绍了线性回归的学习算法,那么它有什么不足的地方么 ...
随机推荐
- MYSQL——mysql检索不包含字母U的数据
2024/07/09 1. NOT LIKE 2. IS NOT.<>.!= 3. NOT IN 如题,正确答案如下: SELECT * FROM your_table_name WHER ...
- macOS 扫描局域网设备
arp-scan: arp-scan 是一个直接用于扫描本地网络中的设备的 UNIX 工具.这不是 macOS 自带的,但可以使用 Homebrew 安装.首先安装 Homebrew(如果尚未安装), ...
- diff 输出解释
diff 最原始的 diff 我们先编写两个文件: f1: 1 2 3 4 5 6 7 8 9 f2: 1 2 3 4 5 66 7 8 9 然后我们进行比较: diff f1 f2 6c6 < ...
- 安卓系统使用chrome插件(以yandex安装油猴为例)
以tampermonkey为代表的Chrome插件广受好评,但由于Chrome在安卓系统并不支持令人遗憾.所以带来安卓手机使用Chrome插件的教程. 一,首先下载安卓开源浏览器(个人推荐yandex ...
- 【YashanDB数据库】YAS-02079 archive log mode must be enabled when database is in replication mode
[标题]错误码处理 [问题分类]调整归档 [关键字]关闭归档.YAS-02079.replication mode [问题描述]执行alter database noarchivelog 关闭归档时, ...
- k8s 知识
命令 Pod 管理 kubectl get pods 查看pod在哪个node上 kubectl get pods -o wide kubectl describe pod pod_name 创建新的 ...
- Gaussdb: CN修复失败对openssl版本依赖问题处理
1.问题背景 GaussDB轻量化分布式集群安装完成后,进行openssh和openssl升级,现有环境openssh-8.2p1-9.p03.ky10.x86_64和openssl-1.1.1f-2 ...
- 6.2 XXE和XML利用
pikaqu靶场xml数据传输测试-有回显,玩法,协议,引入 1.构造payload 写文件 <?xml version="1.0" encoding="UTF-8 ...
- Angular Material 18+ 高级教程 – CDK Drag and Drop
前言 CDK Drag and Drop 和 CDK Scrolling 都是在 Angular Material v7 中推出的. 它们有一个巧妙的共同点,那就是与 Material Design ...
- ASP.NET Core – Byte, Stream, Directory, File 基础
前言 以前的文章: Stream 基础和常用 和 IO 常用. 这篇主要是做一个整理, 方便要用的时候 warm up. 之前有讲过 Bit, Byte 的基本概念: Bit, Byte, ASCII ...