为了账号安全,请及时绑定邮箱和手机立即绑定

简单机器模型的精度不好?如何调试?

简单机器模型的精度不好?如何调试?

慕盖茨4494581 2022-09-13 19:41:44
我正在尝试构建一个机器学习模型,尽管答案相当简单,但结果确实很糟糕。我知道我做错了什么,但不确定在哪里。以下是我正在做的事情:我有一个公司财务数据集。为了方便起见,我试图预测毛利润(总收入 - 收入成本)为了使它更容易,我实际上正在自己将该值计算到熊猫列中df['grossProfit'] = df['totalRevenue'] - df['costOfRevenue']为了使它有点挑战性,我有一个名为exchange的列,它是数字格式的类别(1,2,3等)。我的目标是简单地预测总利润,我认为这很容易,因为100%的数据计算它在我的数据集中,但当我运行模型时,我得到高达6%的准确率。我预计它会接近100%,因为模型应该计算出总收入+收入成本=总利润。这是我的数据:    grossProfit totalRevenue    Exchange    costOfRevenue0   9.839200e+10    2.601740e+11    NASDAQ  1.617820e+111   9.839200e+10    2.601740e+11    NASDAQ  1.617820e+112   1.018390e+11    2.655950e+11    NASDAQ  1.637560e+113   1.018390e+11    2.655950e+11    NASDAQ  1.637560e+114   8.818600e+10    2.292340e+11    NASDAQ  1.410480e+11... ... ... ... ...186 4.224500e+10    9.113400e+10    NYSE    4.888900e+10187 4.078900e+10    9.629300e+10    NYSE    5.550400e+10188 3.748200e+10    8.913100e+10    NYSE    5.164900e+10189 3.397500e+10    8.118600e+10    NYSE    4.721100e+10190 3.597700e+10    8.586600e+10    NYSE    4.988900e+10191 rows × 4 columns
查看完整描述

1 回答

?
慕少森

TA贡献2019条经验 获得超9个赞

对于初学者:

  1. 您处于回归设置中,其中准确性毫无意义(它仅用于分类问题)。从模型编译中删除,不要为此烦恼 - 您应该使用与损失相同的数量(此处为MSE)来评估模型的性能。metrics=['accuracy']

  2. 出于同样的原因(回归问题),您不应该对最后一个图层使用激活,而应该对最后一个图层使用激活(离开,就像执行该工作一样,因为这是 Keras 图层的默认激活)。sigmoidlinearDense(1)linear

  3. 具有线性激活的中间层(如您在这里的中间层)每个都只是一个单节点线性层(即几乎没有);向所有中间层添加激活(就像对第一层所做的那样)。relu

总而言之,这是实验的起点

model = tf.keras.Sequential() 

model.add(layers.Dense(64, activation='relu', input_shape=(numInputColumns,)))

model.add(layers.Dense(128, activation='relu'))

model.add(layers.Dense(128, activation='relu'))

model.add(layers.Dense(128, activation='relu'))

model.add(layers.Dense(1))

model.compile(loss='mean_squared_error', optimizer='adam')

当你完成这一部分时,你最终会得出一个不幸的结论,即与分类问题相反,我们可以立即说准确性是否“好”,“不够好”,“坏”等,回归问题的性能指标,如MSE,不会让自己进入如此简单的评估;更糟糕的是,您的 MSE 是根据您缩放的数据计算的。阅读我的答案 如何在Keras Regressor中解释MSE 了解如何计算初始未缩放数据中的MSE,获取其平方根,从而能够以原始数据的单位进行比较,以查看它是否适合您的情况(ML教程中通常省略的一部分)...y


查看完整回答
反对 回复 2022-09-13
  • 1 回答
  • 0 关注
  • 47 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信