逻辑回归中的正负样本
时间: 2024-12-31 14:29:40 浏览: 5
### 逻辑回归中正负样本的概念
在逻辑回归这一分类算法里,当面对的是二元分类问题时,会涉及到正样本和负样本的概念。具体而言,在给定的数据集中,每一项记录都属于两个类别之一:一类被定义为正类(positive class),另一类则被称为负类(negative class)。例如,在医疗诊断场景下,如果目标是检测疾病,则患病个体可以视为正样本,而健康个体即为负样本;又或是垃圾邮件过滤器的应用场合,其中垃圾邮件代表正样本而非垃圾邮件则是负样本[^1]。
对于逻辑回归来说,该模型通过计算输入特征对应的线性组合,并将其转换成介于0至1之间的概率值来实现对新实例所属类别的预测。若此概率超过预设阈值,默认情况下可能是0.5,则判定其归属于正类;反之则划入负类范畴内[^4]。
### 处理正负样本不平衡的方法
#### 权重调整法
权重调整策略旨在通过对不同类型的错误赋予不同的代价来进行补偿。这意味着给予少数类更高的误分成本,从而促使模型更加关注这些重要但数量较少的例子。这种方法可以通过修改损失函数内部各部分的重要性因子来达成目的。比如,在Scikit-Learn库中的`LogisticRegression`类提供了`class_weight='balanced'`选项,它能够自动根据各类别频率的比例动态设置相应的权衡系数[^3]。
```python
from sklearn.linear_model import LogisticRegression
clf = LogisticRegression(class_weight='balanced')
```
#### 过/欠抽样技术
过采样指的是增加训练集中小数群体成员的数量直至达到平衡状态的一种手段。常见的做法是从现有少量案例中有放回地随机抽取更多副本加入到原始数据集中去。SMOTE (Synthetic Minority Over-sampling Technique) 是一种更为先进的合成方式,能够在保持原有分布特性的基础上创造出新的虚拟样本点。
另一方面,欠采样是指减少多数族群规模直到两者持平的过程。简单粗暴的方式就是无差别剔除一部分冗余条目,不过这样做可能会丢失有价值的信息。因此更推荐采用智能型算法如Tomek Links 或 Condensed Nearest Neighbor Rule等进行优化后的降维操作。
```python
from imblearn.over_sampling import SMOTE
from collections import Counter
smote = SMOTE(random_state=42)
X_resampled, y_resampled = smote.fit_resample(X_train, y_train)
print(f'Resampled dataset shape {Counter(y_resampled)}')
```
阅读全文