Skip to main content
3 of 5
added 163 characters in body
user117053
  • 371
  • 1
  • 3
  • 5

Is there a formula for an s-shaped curve with domain and range [0,1]

Basically I want to convert similarity measures into weights which are used as predictors. The similarities will be on [0,1], and I will restrict the weights to also be on [0,1]. I'd like a paramteric function that does this mapping which I'll likely optimize using gradient descent. The requirements are that 0 maps to 0, 1 maps to 1 and it be strictly increasing. A simple derivative is also appreciated. Thanks in advance

Edit: Thanks for the responses so far, those are very helpful. To make my purpose more clear, the task is prediction. My observations are extremely sparse vectors with a single dimension to predict on. My input dimensions are used to compute similarity. My prediction is then a weighted sum of other observations' value for the predictor where the weight is a function of similarity. I'm bounding my weights on [0,1] for simplicity. It is hopefully obvious now why I require 0 to map to 0, 1 to map to 1, and for it to be strictly increasing. As whuber has pointed out using f(x) =x meets these requirements and actually works pretty well. However it has no parameters to optimize. I have lots of observations so I can tolerate a lot of parameters. I'll be hand coding the gradient descent, hence my preference for a simple derivative.

For example, much of the responses given are symmetric about .5. It would be useful to have parameter to shift left/right (such as with the beta distribution)

user117053
  • 371
  • 1
  • 3
  • 5