2017-09-17 1 views
-1

차등 개인 정보 보호에 대한 웹 기반 데모를 만들고 싶습니다. 이렇게하려면 라플라스 잡음 분포의 자바 스크립트 구현이 필요합니다.자바 스크립트의 라플라스 잡음 분포

JavaScript에서 Gaussian과 같은 기본적인 노이즈 분포를 찾을 수 없었습니다. 이것은 놀랍습니다. 배포본 작성 방식, 그리기 방식, 예쁜 종 모양 커브 생성 방법을 보여주는 멋진 자바 스크립트 데모가 많이 있기를 바랍니다.

어떻게 Javascript에서 Laplace 노이즈 분포를 생성합니까?

+0

제목을 검색 할 때 첫 번째 링크 중 하나 – mplungjan

+0

정상적인 배포는 Laplace 배포와 동일하지 않습니다. – vy32

+0

봤어? 3 개 또는 4 개의 다른 배포 버전 - 2 개 이상의 Gaussian – mplungjan

답변

0
 function sgn(x) { 
      return x < 0 ? -1 : 1; 
     } 

     // From wikipedia: 
     // Lap(X) = mu - b sgn(U) ln (1-2|U|) where U is a random variable between -0.5 and 0.5 
     function laplace(mu, b) { 
      var U = Math.random() - 0.5; 
      return mu - (b * sgn(U) * Math.log(1 - 2* Math.abs(U))); 
     } 

     function privatize(F,deltaF,epsilon) { 
      return F + laplace(0.0, deltaF/epsilon); 
     }