如何规范化从 -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?
我正在尝试对神经网络的数据集进行标准化,数据集中的负值和正值可以从 -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?