逻辑回归理解
-
逻辑回归是用来二分类的! 是在线性回归模型之后加了一个激活函数(Sigmoid)将预测值归一化到【0~1】之间,变成概率值。
-
一般计算其中一个类别的概率P,自然会得到另一个类别的概率1-P。假如一个人是女生的概率是0.7,是男生的概率是多少呢?自然是0.3。那你会认为这个人是男生还是女生呢?当时是女生!一般认为概率最大的类别为分类结果。
损失函数
- MSE loss:计算数值之间的差异 (线性回归)
- BCE Loss:计算分布之间的差异(逻辑回归)
代码
# 导入必要的库
import numpy as np
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score
import matplotlib.pyplot as plt
# 准备数据
x_data = [1.0], [2.0], [3.0]
y_data = [0], [0], [1]
# 创建并拟合逻辑回归模型
model = LogisticRegression()
model.fit(x_data, y_data )
# 在测试集上进行预测
y_pred = model.predict(x_data)# predict预测的是值,可能是:[0,0,1]
# 计算准确率
accuracy = accuracy_score(y_data, y_pred)
print("Accuracy:", accuracy)
# 绘制决策边界
x = np.linspace(0, 10, 200).reshape(-1,1<