如何将模型预测的np.log值还原为球员价值原始值?
还原对数转换后的球员价值预测值
- 核心原理:你预处理阶段对球员价值(因变量y)使用
np.log()做了自然对数转换(底数为e),要还原回原始尺度的数值,直接对模型输出的对数预测值执行指数运算即可——这是对数运算的逆操作。 - 代码实现:
假设模型输出的对数预测值存储在log_pred变量中,用以下代码就能得到原始数值:import numpy as np # 将对数预测值还原为原始球员价值 original_player_value = np.exp(log_pred) - 特殊情况处理:
- 如果你当时用的是其他底数的对数转换(比如
np.log10()常用对数、np.log2()以2为底的对数),要对应使用不同的还原方式:- 常用对数还原:
original_pred = np.power(10, log_pred) - 以2为底的对数还原:
original_pred = np.power(2, log_pred)
- 常用对数还原:
- 若预测的对数结果出现负数,
np.exp()会生成趋近于0的正数,这是合理的——因为原始球员价值本身是正数,对数转换后才可能出现负数(对应原始值小于1的情况)。
- 如果你当时用的是其他底数的对数转换(比如
内容的提问来源于stack exchange,提问作者Samuel Osaghae
相关产品推荐
相关产品推荐

