随着人工智能技术的快速发展,机器学习成为了越来越多人关注的领域。今天,我们将使用Python中的sklearn库来构建一个简单的单层神经网络,以实现对鸢尾花数据集的分类任务。鸢尾花数据集是机器学习中最常用的入门级数据集之一,它包含了三种不同类型的鸢尾花(山鸢尾、变色鸢尾和维吉尼亚鸢尾)的测量数据。
首先,我们需要导入必要的库:
```python
import numpy as np
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.neural_network import MLPClassifier
```
接下来,我们加载鸢尾花数据集,并将其划分为训练集和测试集:
```python
iris = load_iris()
X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, test_size=0.2, random_state=42)
```
为了提高模型性能,我们可以对数据进行预处理,例如标准化:
```python
scaler = StandardScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)
```
然后,我们可以定义并训练我们的单层神经网络模型:
```python
mlp = MLPClassifier(hidden_layer_sizes=(5), activation='logistic', max_iter=200)
mlp.fit(X_train, y_train)
```
最后,我们评估模型的性能:
```python
accuracy = mlp.score(X_test, y_test)
print(f"Model accuracy: {accuracy100:.2f}%")
```
通过以上步骤,我们成功地使用单层神经网络实现了鸢尾花数据集的分类任务。这不仅加深了我们对机器学习算法的理解,也为我们后续更复杂的项目打下了坚实的基础。🌈🌈🌈