实现逻辑回归代价函数
时间: 2024-02-04 20:08:04 浏览: 72
逻辑回归python实现
5星 · 资源好评率100%
逻辑回归的代价函数通常使用交叉熵损失函数来表示。假设我们有一个二分类问题,标签为0或1,预测值为y_hat。则交叉熵损失函数的公式为:
```python
J = -1/m * sum(y*log(y_hat) + (1-y)*log(1-y_hat))
```
其中,m为样本数量,y为真实标签,y_hat为预测值。log为自然对数。
在代码实现时,可以使用numpy库来进行向量化计算,提高计算效率。下面是一个简单的Python实现:
```python
import numpy as np
def sigmoid(z):
"""
sigmoid函数
"""
return 1 / (1 + np.exp(-z))
def cost_function(theta, X, y):
"""
逻辑回归代价函数
"""
m = len(y)
h = sigmoid(X.dot(theta))
J = -1/m * np.sum(y*np.log(h) + (1-y)*np.log(1-h))
return J
```
其中,theta为模型参数,X为特征矩阵,y为标签向量。使用时,可以将特征矩阵X和标签向量y传入函数中,计算出代价函数的值。
阅读全文