범위는 0에서 1 사이이며 그 사이에 피크가 있습니까?


13

배포판이 있습니까 아니면 다른 배포본에서 작업하여 아래 이미지와 같은 배포판을 만들 수 있습니까 (나쁜 도면에 대한 사과)?

분포 여기서 피크가 어디에 있어야하는지에 대한 숫자 (예 : 0.2, 0.5 및 0.9)와 함수를 더 넓게 또는 덜 넓게하는 표준 편차 (시그마)를 제공합니다.

PS : 주어진 숫자가 0.5 일 때 분포는 정규 분포입니다.



19
정규 분포의 범위는 이기 때문에 0.5의 경우 정규 분포가 ±

8
당신이 당신의 사진을 찍을 경우 그대로 다음 어떤 배포판이없는 당신이에 대한 지원을 제한하려는 경우 모든 경우에 영역이 엄격하게 적은 1보다이기 때문에 것을 같이 [0,1]다음을 당신이 PDF 파일의 범위를 제한 할 수 없습니다 [0,1]뿐만 아니라 (사소한 균일 한 경우 제외).
존 콜맨

답변:


29

가능한 한 가지 선택은 베타 분포 이지만 평균 μ 와 정밀도 ϕ로 다시 매개 변수화 됩니다 . 즉, "고정 μ 의 경우 ϕ 의 값이 클수록 y 의 분산이 작아집니다 "(페라리 및 크리 바리 참조) Neto, 2004). 확률 밀도 함수는 베타 분포의 표준 매개 변수를 α = ϕ μβ = ϕ ( 1 μ ) 로 대체하여 구성됩니다.μϕμϕyα=ϕμβ=ϕ(1μ)

f(y)=1B(ϕμ,ϕ(1μ))yϕμ1(1y)ϕ(1μ)1

여기서 V a r ( Y ) = μ ( 1 μ )E(Y)=μ .Var(Y)=μ(1μ)1+ϕ

또는 사전 정의 된 평균 및 분산으로 베타 분포로 이어지는 적절한 αβ 매개 변수를 계산할 수 있습니다 . 그러나 베타 배포에 유효한 가능한 분산 값에는 제한이 있습니다. 개인적으로 정밀도를 사용한 매개 변수화는보다 직관적입니다 ( x를 생각하십시오)αβ 의 비율binomially 분산 X 샘플 크기와, φ 와 성공의 확률 μ ).x/ϕ Xϕμ

Kumaraswamy 분포 는 또 다른 경계 연속 분포이지만 위와 같이 다시 매개 변수화하기가 더 어렵습니다.

다른 사람들이 알다시피 정규 분포가 ( , )를 지원하기 때문에 정상 이 아니므잘린 법선 을 근사치로 사용할 수 있습니다 .(,)

Ferrari, S., & Cribari-Neto, F. (2004). 모델링 속도 및 비율에 대한 베타 회귀. 응용 통계 저널, 31 (7), 799-815.


나는 당신의 대답을 좋아합니다, 나는 그것으로부터 몇 가지 그래프를 만들었습니다. 내가 가진 유일한 문제는 너비를 조절할 수 없다는 것입니다 (일반 곡선 분포의 시그마). 특정 시그마 값이 주어지면 phi 값을 계산하는 공식을 갖고 싶습니다. 내가 가진 문제는 곡선이 거꾸로되거나 이상한 모양을 취하는 것입니다. 이것은 내가 피하고 싶은 행동입니다.
Stan Callewaert

간단히 말해서 : 함수에 뮤와 시그마를주고 시그마가 작을 때 시그마가 크고 얇은 경우 (거꾸로 뒤집어 지거나 이상한 행동을 보이지 않음) 넓은 분포를 얻고 싶습니다. .
Stan Callewaert

1
ϕ=μ(1μ)/σ21αβμ=1/2ϕ>2σ<0.707

2
언급해야 할 또 다른 사항은 단일 베타 배포가 충분히 유연하지 않은 경우 베타 배포를 혼합하여 사용할 수 있다는 것입니다.
Björn

@knrumsey 나는 phi에 대해 동일한 공식을 사용했지만, 내가 가진 유일한 문제는 시그마가 큰 숫자 일 때 phi가 음수가되고 알파가 음수가된다는 것을 의미합니다. Wikipedia에 따르면 알파는 음수 일 수 없습니다. 이에 대한 해결책이 있습니까?
Stan Callewaert

5

α(α+β)


1
매우 흥미로운 것처럼 보이지만 내 숫자 (최고 값)와 시그마를 알파 및 베타 값으로 변환하려면 어떻게해야합니까?
Stan Callewaert

1
Wikipedia에서 찾아보십시오 ... 그것은 두 개의 매개 변수 분포입니다. 둘 사이에서, 그들은 (여유의 자유로) 당신의 최고 가치에 맞출 수 있습니다.

5

y=exp(x)1+exp(x)yx

함수 에는 특별한 것이 없습니다exp(x)1+exp(x)

y=F(x)F()yF()xxyxy

yxF()


0

누군가가 솔루션에 관심이 있다면 주어진 숫자에 가까운 임의의 값을 매개 변수로 생성하기 위해 Python에서 사용했습니다. 내 솔루션은 네 단계로 존재합니다. 각 단계에서 생성 된 수가 주어진 수에 더 근접 할 가능성이 더 큽니다.

나는 해결책이 하나의 배포판을 사용하는 것만 큼 아름답 지 않다는 것을 알고 있지만 이것이 내 문제를 해결할 수있는 방법이었습니다.

number_factory.py :

import random
import numpy as np

class NumberFactory:
    def __init__(self):
        self.functions = [self.__linear, self.__exponential_point_four, self.__exponential_point_three, self.__exponential_point_twenty_five]  
        self.stage = 0

    def next_stage(self):
        self.stage += 1

    def get_mutated_number(self, number):
         # True if the generated number will be higher than the given number
         # False if the generated number will be lower than the given number
        add = bool(np.random.choice([0,1], p=[number, 1-number]))

        # Generate a number between 0 and 1 that will be used
        # to multiply the new number by which the number parameter will be substracted or added
        # The bigger the stage number (0-3) the more change that the mutated number is close to the number parameter
        multiply_number_seed = random.uniform(0, 1)
        multiply_number = self.functions[self.stage](multiply_number_seed)

        if (add):
            return number+((1-number)*multiply_number)
        else:
            return number-(number*multiply_number)

    def __linear(self, x):
        return -x+1

    def __exponential_point_four(self, x):
        return 0.4*x**2 - 1.4*x + 1

    def __exponential_point_three(self, x):
        return 0.8*x**2 - 1.8*x + 1

    def __exponential_point_twenty_five(self, x):
        return x**2 - 2*x + 1

    def get_stage(self):
        return self.stage

main.py :

import matplotlib.pyplot as plt
import numpy as np

factory = NumberFactory()
numbers = []

factory.next_stage()
factory.next_stage()
factory.next_stage()

for _ in range(100000):
    numbers.append(factory.get_mutated_number(0.3))

bins = 100

plt.hist(numbers, bins, normed=True)
plt.plot(1, np.ones_like(bins))
plt.show()

이 코드를 실행할 때의 결과는 아래 그림에 나와 있습니다. 그래프


0

'Johnson curves'를 살펴볼 수 있습니다. NL Johnson : 변환 방법으로 생성 된 주파수 곡선 시스템을 참조하십시오. 1949 Biometrika Volume 36 pp 149-176. R은 임의의 커브에 적합하도록 지원합니다. 특히 그의 SB (경계) 곡선이 유용 할 수 있습니다.

제가 사용한지 40 년이 지났지 만 그 당시에는 매우 유용했습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.