梯度下降法python代码
时间: 2023-10-13 14:26:13 浏览: 140
各种梯度下降算法的代码(python)
5星 · 资源好评率100%
梯度下降法是一种常见的优化算法,主要用于最小化损失函数。下面是一份使用Python实现的梯度下降法代码示例:
```python
import numpy as np
def gradient_descent(X, y, theta, alpha, iterations):
"""
X: 特征矩阵
y: 标签向量
theta: 参数向量
alpha: 学习率
iterations: 迭代次数
"""
m = len(y)
for i in range(iterations):
h = X.dot(theta)
loss = h - y
gradient = X.T.dot(loss) / m
theta = theta - alpha * gradient
return theta
```
其中,X是一个m * n的特征矩阵,y是一个m * 1的标签向量,theta是一个n * 1的参数向量,alpha是学习率,iterations是迭代次数。函数的过程是每次计算损失函数的梯度,然后根据学习率和梯度更新参数向量。最后返回更新后的参数向量。
阅读全文