微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python PyTorch Pyro-多元分布

如何解决Python PyTorch Pyro-多元分布

如何在Pyro中采样多元分布?我只想要一个(M,N) Beta版,但以下内容不起作用:

impor torch
import pyro
with pyro.plate("theta_plate",M):
    theta = pyro.sample("theta",pyro.distributions.Beta(concentration0=torch.ones(N),concentration1=torch.ones(N)))

解决方法

使用 to_event(n) 声明依赖样本。

import torch
import pyro
import pyro.distributions as dist

def model(N,M):
    with pyro.plate("theta_plate",M):
        theta = pyro.sample("theta",dist.Beta(torch.ones(N),1.).to_event(1))
    return theta


if __name__ == '__main__':
    print(model(10,12).shape) # (10,12)
,

对于PyTorch和Pyro发行版,语法是相同的:

<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title></title>
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous">
    <link href="https://fonts.googleapis.com/css2?family=Vollkorn&display=swap" rel="stylesheet">
    <script src="https://use.fontawesome.com/releases/v5.0.8/js/all.js"></script>
  </head>
  <body>


    <header>
          <nav class="navbar navbar-expand-lg navbar-dark bg-light">
            <button class="navbar-toggler">
              <span class="navbar-toggler-icon" data-toggle="collapse" data-target="#navbarMenu"></span>
            </button>
            <div class="collapse navbar-collapse justify-content-end" id="navbarMenu">
              <ul class="navbar-nav">
                <li class="nav-item"><a href="#">Home</a></li>
                <li class="nav-item"><a href="#">About me</a></li>
                <li class="nav-item"><a href="#">Projects</a></li>
                <li class="nav-item"><a href="#">Contact me</a></li>
              </ul>
            </div>
          </nav>

    <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
    <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js" integrity="sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN" crossorigin="anonymous"></script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js" integrity="sha384-B4gt1jrGC7Jh4AgTPSdUtOBvfO8shuf57BaghqFfPlYxofvL8/KUEfYiJOMMV+rV" crossorigin="anonymous"></script>
  </body>
</html>

除非您只想对分布进行抽样,否则无需使用牌照概念。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。