org.apache.mahout.math.jet.random.Gamma.randomDouble()方法的使用及代码示例

x33g5p2x  于2022-01-20 转载在 其他  
字(1.9k)|赞(0)|评价(0)|浏览(166)

本文整理了Java中org.apache.mahout.math.jet.random.Gamma.randomDouble()方法的一些代码示例,展示了Gamma.randomDouble()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Gamma.randomDouble()方法的具体详情如下:
包路径:org.apache.mahout.math.jet.random.Gamma
类名称:Gamma
方法名:randomDouble

Gamma.randomDouble介绍

暂无

代码示例

代码示例来源:origin: apache/mahout

  1. b = 1.0 + 0.36788794412 * alpha; // Step 1
  2. while (true) {
  3. double p = b * randomDouble();
  4. if (p <= 1.0) { // Step 2. Case gds <= 1
  5. gds = Math.exp(Math.log(p) / alpha);
  6. if (Math.log(randomDouble()) <= -gds) {
  7. return gds / rate;
  8. if (Math.log(randomDouble()) <= (alpha - 1.0) * Math.log(gds)) {
  9. return gds / rate;
  10. double v1;
  11. do {
  12. v1 = 2.0 * randomDouble() - 1.0;
  13. double v2 = 2.0 * randomDouble() - 1.0;
  14. v12 = v1 * v1 + v2 * v2;
  15. } while (v12 > 1.0);
  16. double u = randomDouble();
  17. if (d * u <= t * t * t) {
  18. return gds / rate;
  19. double e;
  20. do {
  21. e = -Math.log(randomDouble());
  22. u = randomDouble();
  23. u = u + u - 1.0;
  24. sign_u = u > 0 ? 1.0 : -1.0;

代码示例来源:origin: cloudera/mahout

  1. b = 1.0 + 0.36788794412 * alpha; // Step 1
  2. while (true) {
  3. double p = b * randomDouble();
  4. if (p <= 1.0) { // Step 2. Case gds <= 1
  5. gds = Math.exp(Math.log(p) / alpha);
  6. if (Math.log(randomDouble()) <= -gds) {
  7. return gds / rate;
  8. if (Math.log(randomDouble()) <= (alpha - 1.0) * Math.log(gds)) {
  9. return gds / rate;
  10. double v1;
  11. do {
  12. v1 = 2.0 * randomDouble() - 1.0;
  13. double v2 = 2.0 * randomDouble() - 1.0;
  14. v12 = v1 * v1 + v2 * v2;
  15. } while (v12 > 1.0);
  16. double u = randomDouble();
  17. if (d * u <= t * t * t) {
  18. return gds / rate;
  19. double e;
  20. do {
  21. e = -Math.log(randomDouble());
  22. u = randomDouble();
  23. u = u + u - 1.0;
  24. sign_u = u > 0 ? 1.0 : -1.0;

代码示例来源:origin: org.apache.mahout/mahout-math

  1. b = 1.0 + 0.36788794412 * alpha; // Step 1
  2. while (true) {
  3. double p = b * randomDouble();
  4. if (p <= 1.0) { // Step 2. Case gds <= 1
  5. gds = Math.exp(Math.log(p) / alpha);
  6. if (Math.log(randomDouble()) <= -gds) {
  7. return gds / rate;
  8. if (Math.log(randomDouble()) <= (alpha - 1.0) * Math.log(gds)) {
  9. return gds / rate;
  10. double v1;
  11. do {
  12. v1 = 2.0 * randomDouble() - 1.0;
  13. double v2 = 2.0 * randomDouble() - 1.0;
  14. v12 = v1 * v1 + v2 * v2;
  15. } while (v12 > 1.0);
  16. double u = randomDouble();
  17. if (d * u <= t * t * t) {
  18. return gds / rate;
  19. double e;
  20. do {
  21. e = -Math.log(randomDouble());
  22. u = randomDouble();
  23. u = u + u - 1.0;
  24. sign_u = u > 0 ? 1.0 : -1.0;

相关文章