Python机器学习:使用MLPRegressor进行回归预测及R^2评估
使用Python和MLPRegressor进行回归预测
本示例演示如何使用Python中的sklearn.neural_network模块构建多层感知机回归模型 (MLPRegressor),并使用model.score方法计算模型的R^2分数来评估模型性能。
代码示例:
import pandas as pd
from sklearn.neural_network import MLPRegressor
# 读取训练和测试数据
train_data = pd.read_csv('data_tr.txt')
test_data = pd.read_csv('data_te.txt')
# 准备特征和目标变量
X_train = train_data[['x1', 'x2']]
X_test = test_data[['x1', 'x2']]
y_train = train_data['y']
y_test = test_data['y']
# 创建MLPRegressor模型
model = MLPRegressor(hidden_layer_sizes=(100,), max_iter=1000)
# 训练模型
model.fit(X_train, y_train)
# 进行预测
y_pred = model.predict(X_test)
# 计算R^2分数
score = model.score(X_test, y_test)
print('R^2 score:', score)
代码说明:
- 首先,我们导入必要的库:
pandas用于数据处理,sklearn.neural_network用于创建MLPRegressor模型。 - 然后,我们读取训练和测试数据,并准备特征 (X) 和目标变量 (y)。
- 接下来,我们创建一个MLPRegressor模型,并设置
hidden_layer_sizes参数以定义隐藏层的数量和大小,max_iter参数设置最大迭代次数。 - 使用训练数据训练模型。
- 使用测试数据进行预测。
- 最后,我们使用
model.score方法计算模型的R^2分数,并将结果打印出来。
注意:
在回归问题中,accuracy_score函数不适用,因为它用于评估分类模型的性能。对于回归问题,R^2分数是一个更合适的指标,它表示模型对目标变量的解释能力。R^2分数越接近1,表示模型的拟合效果越好。
原文地址: https://www.cveoy.top/t/topic/bQHg 著作权归作者所有。请勿转载和采集!