Sklearn 机器学习 数值指标 Sigmoid函数

💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在优快云上与你们相遇~💖

在这里插入图片描述

本博客的精华专栏:
【自动化测试】 【测试经验】 【人工智能】 【Python】


在这里插入图片描述

Sklearn 机器学习:数值指标与 Sigmoid 函数全解析

在机器学习中,数值输出指标(如概率、得分、置信度)不仅是模型性能评估的关键依据,更是模型可解释性的基础。而 Sigmoid 函数 则是连接模型输出与概率的重要桥梁,在逻辑回归、神经网络等模型中被广泛应用。

本文将带你深入理解 Sklearn 中常见的数值输出类型,并系统解析 Sigmoid 函数的数学原理、实际用途与可视化呈现,助你建立更扎实的模型解释基础。


🔍 一、Sklearn 中的数值输出有哪些类型?

在 Sklearn 中,分类模型的输出通常有三种:

1. 分类预测值(predict

用于输出离散的类别标签,是最常见的预测方式:

from sklearn.linear_model import LogisticRegression

model = LogisticRegression()
model.fit(X_train, y_train)
pred_class = model.predict(X_test)
print(pred_class[:5])

示例输出:

[1 0 0 1 1]

这代表模型对每个样本的直接分类判断。

2. 概率预测值(predict_proba

返回每个样本属于每个类别的概率。是许多评估指标(如 ROC/AUC)计算的基础:

prob = model.predict_proba(X_test)
print(prob[:3])

输出示例:

[[0.12 0.88]
 [0.34 0.66]
 [0.90 0.10]]
  • 每行代表一个样本;
  • 每列代表一个类别的概率(通常类别 0 在前,类别 1 在后);
  • 多分类问题中,列数 = 类别数。

☑️ 额外说明predict 的结果其实是 predict_proba 中最大概率对应的类别。

3. 决策函数得分(decision_function

该方法输出模型对样本的“原始打分值”或“边界距离”,对某些模型(如 SVM 和逻辑回归)非常有用:

score = model.decision_function(X_test)
print(score[:5])

输出:

[-1.23  0.87  2.45 -0.56  0.00]
  • 对逻辑回归而言,这些值是对数几率(log-odds)
  • 正值表示偏向正类,负值表示偏向负类
  • 数值越大,模型对其所属类别的“置信”越高

☑️ 注意:虽然 SVM 也提供 decision_function,但不能直接通过 Sigmoid 将其映射为概率。


🔗 二、三种输出之间的联系

上述三种输出之间存在内在联系,特别是:

  • predict_proba 是通过某种概率映射函数(如 Sigmoid)从原始得分(decision_function)变换而来
  • predict 实际是选取 predict_proba 最大的那个类别

那么,Sigmoid 函数是如何完成这一步概率映射的呢?


🧮 三、Sigmoid 函数数学原理

Sigmoid 函数将任意实数映射到 (0, 1) 区间,非常适合用来表示概率:

σ ( z ) = 1 1 + e − z \sigma(z) = \frac{1}{1 + e^{-z}}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Thomas Kant

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值