如何规范化从 -inf 到 +inf 的 0,1 之间的数据,其中值 0 在规范化时始终等于 0.5?

How to normalize data that goes from - inf to +inf between 0,1 where the value 0 is always equals to 0.5 when normalized?

我正在尝试对神经网络的数据集进行标准化,数据集中的负值和正值可以从 -inf 到 +inf。 我需要将 0,0.5 之间的负值和 0.5,1 之间的正值归一化,但归一化数据永远无法达到 0 或 1,因为它们是 -inf 和 +inf respectvely。

我可以用 python 做这个吗?

抱歉我生疏的英语,如果这个问题看起来很愚蠢,但我真的很难解决这个问题。

您可以使用 sigmoid 函数

Sigmoid function
import numpy as np

def sigmoid(x):
  return 1 / (1 + np.exp(-x))

但是 sigmoid 并不是唯一执行此操作的函数。也请查看 tanh(x)

tanh(x) = (exp(x) - exp(-x))/(exp(x) - exp(-x)) = sigmoid(2x) - sigmoid(-2x)

参考

How to calculate a logistic sigmoid function in Python?

看看sigmoid function