4、深度生成模型:自回归模型与流模型解析

深度生成模型:自回归模型与流模型解析

1. 自回归模型(Autoregressive Models)

1.1 目标函数

自回归模型的目标函数具有良好的形式。假设 (x_{<1} = \varnothing)(即无条件),目标函数如下:
[
\sum_{n}\sum_{d}\sum_{l = 1}^{L}[x_d = l]\ln\theta_d(x_{<d})
]
对数作用于独立同分布(i.i.d.)数据 (D) 后,会得到各个数据点的分布 (p(x_n)) 的对数之和。再应用乘积法则与对数运算,会得到另一个求和,这次是对维度求和。通过使用因果卷积(CausalConv1D)对条件概率进行参数化,我们可以在一次前向传播中计算所有的 (\theta_d),然后检查像素值。理想情况下,当 (x_d = l) 时,我们希望 (\theta_{d,l}) 尽可能接近 1。

1.2 代码实现

以下是自回归模型(ARM)的代码实现:

import torch
import torch.nn as nn
from torch.distributions.categorical import Categorical

class ARM(nn.Module):
    def __init__(self, net, D=2, num_vals=256):
        super(ARM, self).__init__()
        print('ARM by JT.')
        self.net = net
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值