乂silenceeee 2022-05-12 19:50 采纳率: 66.7%
浏览 156
已结题

基于python的ANN多输出回归问题,应该如何处理输入数据和选择损失函数呢?

基于python的ANN多输出回归问题,应该如何处理输入数据和选择损失函数呢?
具体的数据类型如下:输入4个特征,输出两个回归值。

img


单输出回归问题,我是这样写的:
import和数据导入的部分省略了
X = data.loc[:,'X1':'X4']
y = data.loc[:,'y1']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.1, random_state = 1)
model = MLPRegressor(solver = 'lbfgs',hidden_layer_sizes = (6,7), random_state = 123, max_iter = 10000)
model.fit(X_train_s,y_train)
可是多输出回归的时候,我把输入训练的数据这样写:
X = data.loc[:,'X1':'X4']
y = data.loc[:,'y1':'y2']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.1, random_state = 1)
model = MLPRegressor(solver = 'lbfgs',hidden_layer_sizes = (6,7), random_state = 123, max_iter = 10000)
model.fit(X_train_s,y_train)
虽然能够训练,但损失函数一直不降(基于keras的也试了,也是不行。损失函数是mse)
请问进行神经网络的训练时,多输出该怎么处理数据,损失函数该怎么写呢,keras或skilearn中有现成的吗?还是需要自己编写呢?
谢谢!

  • 写回答

1条回答 默认 最新

  • 清淡的淡 2022-05-13 10:52
    关注

    你的输入特征之间,存在明显的量级差别,最好进行归一化;输出也是,直接使用mse作为loss,两个输出的比重会差很多

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 5月21日
  • 已采纳回答 5月13日
  • 创建了问题 5月12日

悬赏问题

  • ¥15 NAO机器人的录音程序保存问题
  • ¥15 C#读写EXCEL文件,不同编译
  • ¥15 如何提取csv文件中需要的列,将其整合为一篇完整文档,并进行jieba分词(语言-python)
  • ¥15 MapReduce结果输出到HBase,一直连接不上MySQL
  • ¥15 扩散模型sd.webui使用时报错“Nonetype”
  • ¥15 stm32流水灯+呼吸灯+外部中断按键
  • ¥15 将二维数组,按照假设的规定,如0/1/0 == "4",把对应列位置写成一个字符并打印输出该字符
  • ¥15 NX MCD仿真与博途通讯不了啥情况
  • ¥15 win11家庭中文版安装docker遇到Hyper-V启用失败解决办法整理
  • ¥15 gradio的web端页面格式不对的问题