一维特征的csv文件对其进行全连接网络的三分类python3.8代码
时间: 2024-04-12 19:31:51 浏览: 165
对于csv文件的操作
下面是一个使用全连接网络进行三分类的Python 3.8代码示例,其中输入特征为一维的CSV文件。
```python
import pandas as pd
import numpy as np
import tensorflow as tf
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import LabelEncoder
from tensorflow.keras import layers, models
# 读取CSV文件
data = pd.read_csv('data.csv')
# 将特征和标签分开
X = data.iloc[:, :-1].values
y = data.iloc[:, -1].values
# 对标签进行编码
label_encoder = LabelEncoder()
y = label_encoder.fit_transform(y)
# 数据集划分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 构建全连接网络模型
model = models.Sequential()
model.add(layers.Dense(64, activation='relu', input_shape=(X_train.shape[1],)))
model.add(layers.Dense(64, activation='relu'))
model.add(layers.Dense(3, activation='softmax'))
# 编译模型
model.compile(optimizer='adam',
loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
metrics=['accuracy'])
# 训练模型
model.fit(X_train, y_train, epochs=10, batch_size=32, validation_data=(X_test, y_test))
# 评估模型
test_loss, test_acc = model.evaluate(X_test, y_test)
print('Test Loss:', test_loss)
print('Test Accuracy:', test_acc)
```
请确保将上述代码中的"data.csv"替换为你实际的CSV文件路径。此代码使用了TensorFlow和Keras库构建了一个全连接网络模型,通过对数据进行训练和评估,实现对一维特征的三分类任务。
阅读全文