机器学习小组知识点2:最小均方算法(LMS)

这篇博客详细介绍了机器学习中的有监督学习,重点讲解了线性回归和最小均方误差(LMS)算法。通过成本函数阐述了如何寻找最佳参数θ,对比了批量梯度下降和随机梯度下降,并提及正规方程作为另一种求解方法。还讨论了正规方程的局限性和特征缩放的重要性。
摘要由CSDN通过智能技术生成

感谢:向原文作者Nanshu Wang致以崇高的敬意!原文请点击这里
声明:
博主只是推了一遍然后细节更多的阐释了下,再次向原文作者致谢!同时,向上海交通大学软件学院教师肖凯博士所搭建的平台致谢!

  1. 有监督学习(Supervised Learning)
  2. 线性回归(Linear Regression)
  3. LMS算法
  4. 正规方程(The Normal Equations)
  5. 正规方程与梯度下降的比较

1.有监督学习

先理清几个概念:

  1. xi : xi 表示”输入”变量(“input” variables),也称为特征(features)。
  2. yi : yi 表示”输出”变量(“output” variables),也称为目标值(target)。
  3. 一对 (xi,yi) 称为一个训练样本(training example),用作训练的数据集就是就是一组 m 个训练样本 (xi,yi) ; i=1,,m ;被称为训练集(training set)。
  4. X 表示输入变量的取值空间, Y 表示输出变量的取值空间。那么 h:XY 是训练得到的映射函数,对于每个取值空间
  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
最小均方算法LMS)是一种自适应滤波算法,常用于数字信号处理、通信系统、雷达等领域。下面是使用Python实现LMS算法的步骤: 1. 导入必要的库 ```python import numpy as np ``` 2. 初始化参数 ```python N = 1000 # 采样点数 n = 100 # 系统阶数 mu = 0.01 # 步长 w = np.zeros(n) # 初始权值向量 ``` 3. 生成随机信号和系统响应 ```python x = np.random.normal(0, 1, N) # 生成高斯白噪声 d = np.convolve(x, np.ones(n)/n, mode='same') # 系统响应为均值滤波器 v = np.random.normal(0, 0.1, N) # 生成高斯白噪声 d = d + v # 加入噪声 ``` 4. LMS算法迭代更新权值 ```python for i in range(n, N): x_i = x[i-n:i][::-1] # 构造输入向量 e = d[i] - np.dot(w, x_i) # 计算误差 w = w + mu * e * x_i # 更新权值向量 ``` 5. 绘制结果 ```python import matplotlib.pyplot as plt plt.plot(w) plt.xlabel('Time index') plt.ylabel('Weight value') plt.show() ``` 完整代码如下: ```python import numpy as np import matplotlib.pyplot as plt N = 1000 # 采样点数 n = 100 # 系统阶数 mu = 0.01 # 步长 w = np.zeros(n) # 初始权值向量 x = np.random.normal(0, 1, N) # 生成高斯白噪声 d = np.convolve(x, np.ones(n)/n, mode='same') # 系统响应为均值滤波器 v = np.random.normal(0, 0.1, N) # 生成高斯白噪声 d = d + v # 加入噪声 for i in range(n, N): x_i = x[i-n:i][::-1] # 构造输入向量 e = d[i] - np.dot(w, x_i) # 计算误差 w = w + mu * e * x_i # 更新权值向量 plt.plot(w) plt.xlabel('Time index') plt.ylabel('Weight value') plt.show() ``` 运行代码后,可以看到随着迭代次数的增加,权值向量逐渐收敛到最优解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值