深度学习中利用TensorFlow环境对鸢尾花数据集进行分类的代码
时间: 2024-09-29 21:12:39 浏览: 42
在深度学习中,我们可以使用TensorFlow库来处理鸢尾花数据集并进行分类。下面是一个简单的示例,展示如何使用TensorFlow 2.x版本加载鸢尾花数据集,并训练一个基本的神经网络模型:
```python
# 导入必要的库
import tensorflow as tf
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
# 加载鸢尾花数据集
iris = datasets.load_iris()
X = iris.data
y = iris.target
# 数据预处理
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X_scaled, y, test_size=0.2, random_state=42)
# 定义模型结构
model = tf.keras.models.Sequential([
tf.keras.layers.Dense(64, activation='relu', input_shape=(4,)), # 输入层
tf.keras.layers.Dense(64, activation='relu'), # 隐藏层
tf.keras.layers.Dense(3, activation='softmax') # 输出层(3个类别)
])
# 编译模型
model.compile(optimizer='adam',
loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
metrics=['accuracy'])
# 训练模型
history = model.fit(X_train, y_train, epochs=50, validation_data=(X_test, y_test))
# 打印一些关键性能指标
print("Training accuracy:", history.history['accuracy'][-1])
print("Validation accuracy:", history.history['val_accuracy'][-1])
#