深度神经网络模糊算法预测python多分类代码
时间: 2023-10-24 21:09:37 浏览: 182
以下是一个使用深度神经网络模糊算法进行多分类预测的 Python 代码示例:
```python
# 导入必要的库
import numpy as np
import tensorflow as tf
from tensorflow.keras import layers
# 设置随机数种子,确保结果可重复
tf.random.set_seed(1234)
# 加载数据集,这里以 Iris 数据集为例
from sklearn.datasets import load_iris
iris = load_iris()
x = iris.data
y = iris.target
# 将标签转换为 one-hot 编码
y = tf.keras.utils.to_categorical(y, num_classes=3)
# 切分数据集为训练集和测试集
from sklearn.model_selection import train_test_split
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.2, random_state=1)
# 定义模型
model = tf.keras.Sequential([
layers.Dense(10, activation='relu', input_shape=(4,)),
layers.Dense(10, activation='relu'),
layers.Dense(3, activation='softmax')
])
# 编译模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])
# 训练模型
model.fit(x_train, y_train, epochs=50, batch_size=16, verbose=1)
# 在测试集上评估模型
test_loss, test_acc = model.evaluate(x_test, y_test, verbose=0)
print('Test accuracy:', test_acc)
# 使用模型进行预测
predictions = model.predict(x_test)
predicted_labels = np.argmax(predictions, axis=1)
# 打印预测结果
print('Predictions:', predicted_labels)
```
这段代码使用了一个包含两个隐藏层的深度神经网络,其中每个隐藏层包含 10 个神经元。最后一层使用 softmax 激活函数进行多分类预测。训练过程中使用了 Adam 优化器和交叉熵损失函数。在测试集上评估模型的准确率,并使用模型进行预测。
阅读全文