对python构建的DNN模型使用评价指标ACC/PPV/MCC代码
时间: 2023-09-22 12:06:44 浏览: 249
DNN模型实现代码(带注释)
以下是使用Python构建DNN模型,并使用ACC/PPV/MCC评价指标的示例代码:
```python
from sklearn.metrics import confusion_matrix
from sklearn.metrics import accuracy_score, precision_score, matthews_corrcoef
# 构建DNN模型
model = Sequential()
model.add(Dense(64, input_dim=10, activation='relu'))
model.add(Dense(32, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
# 训练模型
model.fit(X_train, y_train, epochs=10, batch_size=32, validation_data=(X_test, y_test))
# 在测试集上进行预测
y_pred = model.predict_classes(X_test)
# 计算评价指标
acc = accuracy_score(y_test, y_pred)
ppv = precision_score(y_test, y_pred)
mcc = matthews_corrcoef(y_test, y_pred)
cm = confusion_matrix(y_test, y_pred)
print("Accuracy: %.2f%%" % (acc * 100))
print("PPV: %.2f%%" % (ppv * 100))
print("MCC: %.2f" % mcc)
print("Confusion Matrix:\n", cm)
```
在上面的代码中,我们使用了`sklearn`库中的`confusion_matrix`、`accuracy_score`、`precision_score`和`matthews_corrcoef`函数来计算评价指标。其中,`confusion_matrix`可以输出混淆矩阵,`accuracy_score`计算准确率,`precision_score`计算精确率,`matthews_corrcoef`计算马修斯相关系数。我们可以根据需要选择使用哪些指标来评价模型的性能。
阅读全文