基于逻辑回归的鸢尾花分类 4.模型训练 可直接采用sklearn库中的LogisticRegression模型 from sklearn.linear_model import LogisticRegression 鸢尾花是三分类,建议采用“一对剩余”
时间: 2024-09-26 09:16:54 浏览: 33
基于逻辑回归的鸢尾花分类通常涉及以下几个步骤:
1. **数据准备**:首先需要导入鸢尾花数据集,可以使用sklearn库中的`load_iris()`函数加载Iris dataset,这是一个经典的机器学习示例,包含了150个样本,每个样本有四个特征(花瓣长度、花瓣宽度、萼片长度和萼片宽度),目标变量是三个品种之一。
```python
from sklearn.datasets import load_iris
iris = load_iris()
X = iris.data
y = iris.target
```
2. **预处理**:数据可能需要标准化或归一化,以便逻辑回归模型更好地工作。对于连续特征,通常会将它们转换到相同的尺度上。
```python
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
```
3. **模型训练**:使用`LogisticRegression`类创建一个实例,并调用`fit()`方法对数据进行拟合。由于是多分类问题,可以使用`multi_class`参数指定策略,如"ovr"(一对一),这是默认值,代表为每个类别建立独立的逻辑回归模型。
```python
from sklearn.linear_model import LogisticRegression
model = LogisticRegression(multi_class='auto')
model.fit(X_scaled, y)
```
4. **评估**:训练完成后,通过交叉验证、混淆矩阵等方法评估模型性能,例如查看精确率、召回率和F1分数。
```python
from sklearn.model_selection import cross_val_score
scores = cross_val_score(model, X_scaled, y, cv=5)
print("Cross-validation scores:", scores)
```