<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>文章 on 豌豆道场</title>
    <link>https://www.ysecho.top/posts/</link>
    <description>Recent content in 文章 on 豌豆道场</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>zh</language>
    <lastBuildDate>Sat, 10 Feb 2024 19:44:43 +0800</lastBuildDate><atom:link href="https://www.ysecho.top/posts/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>数据传输视角下的语言模型和VAE</title>
      <link>https://www.ysecho.top/posts/2023/%E7%94%9F%E6%88%90%E6%A8%A1%E5%9E%8B%E6%95%B0%E6%8D%AE%E4%BC%A0%E8%BE%93/</link>
      <pubDate>Sat, 10 Feb 2024 19:44:43 +0800</pubDate>
      
      <guid>https://www.ysecho.top/posts/2023/%E7%94%9F%E6%88%90%E6%A8%A1%E5%9E%8B%E6%95%B0%E6%8D%AE%E4%BC%A0%E8%BE%93/</guid>
      <description>&lt;p&gt;生成式模型可以抽象成数据传输游戏：Alice要向Bob发送一些数据，而他们的目标是发送的&lt;b class=&#34;emphasize&#34;&gt;损失&lt;/b&gt;
尽量小，所谓损失就是&lt;b class=&#34;emphasize&#34;&gt;编码的位数&lt;/b&gt;
。&lt;/p&gt;



&lt;div class=&#34;card info&#34;&gt;
    &lt;div class=&#34;card-title&#34;&gt;
        数据传输视角下的语言模型
    &lt;/div&gt;
    &lt;div class=&#34;card-content&#34;&gt;
        假设Alice和Bob有一个共同的词表$\mathcal{V}$。现在，Alice要给Bob发送一段包含$n$个token的文本$\boldsymbol{x}=(x_1, \cdots, \boldsymbol{x}_n)$。
注意，Alice并非将整段文本直接发送给Bob，而是逐个token发送（与LM的工作方式一样）。假设Bob能够根据已经接收到的token预测Alice下一个将要发送的token，也就是说Bob有一个$\mathcal{V}$上的分布：
$$P(x_i|x_{&amp;lt;i})$$
那么发送每个token的损失就是根据条件概率分布$p$对这个token进行最优编码的位数，即条件概率的负对数，而发送这段文本的损失等价于发送所有token的损失：
$$-\sum_{i=1}^{n}\log P(x_i|x_{&amp;lt;i})=-\log\prod_{i=1}^{n} P(x_i|x_{&amp;lt;i})=-\log P(\boldsymbol{x})$$
注：以上的对数函数$\log$均以2为底。
    &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;没错，根据以上数据传输游戏的目标，我们可以推出语言模型的损失函数。这个框架同样适用于VAE。



&lt;div class=&#34;card tip&#34;&gt;
    &lt;div class=&#34;card-title&#34;&gt;
        VAE的损失函数
    &lt;/div&gt;
    &lt;div class=&#34;card-content&#34;&gt;
        $$
\begin{align*}
-\log P(\boldsymbol{x}) &amp;amp;= -\log\int P(\boldsymbol{x},\boldsymbol{z})d\boldsymbol{z} \\
&amp;amp;=-\log\int P(\boldsymbol{x},\boldsymbol{z})\frac{P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})}{P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})}d\boldsymbol{z} \\
&amp;amp;=-\log\mathop{\mathbb{E}}\limits_{ P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})} \frac{P(\boldsymbol{x},\boldsymbol{z})}{P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})} \\
&amp;amp;\leq -\mathop{\mathbb{E}}\limits_{ P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})}[\log P_{\boldsymbol{\phi}}(\boldsymbol{x}|\boldsymbol{z}) + \log \frac{P(\boldsymbol{z})}{P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})}] \\
&amp;amp;=-\mathop{\mathbb{E}}\limits_{ P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})}\log P_{\boldsymbol{\phi}}(\boldsymbol{x}|\boldsymbol{z}) + \int P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})\log\frac{P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})}{P(\boldsymbol{z})} d\boldsymbol{z} \\
&amp;amp;=-\mathop{\mathbb{E}}\limits_{ P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})}\log P_{\boldsymbol{\phi}}(\boldsymbol{x}|\boldsymbol{z}) + \text{KL}[P_{\boldsymbol{\theta}}(\boldsymbol{z}|\boldsymbol{x})|P(\boldsymbol{z})]
\end{align*}
$$
注: 此处$P(\cdot;\boldsymbol{\theta})$代表使用参数为$\boldsymbol{\theta}$的神经网络对$P(\cdot)的$估计。另外，
带有误差项的推导可参考文献[1]中的公式9-16。
    &lt;/div&gt;
&lt;/div&gt;
总的来说，VAE的优化目标包含两个部分，分别是在最大化样本$x$的条件概率似然，以及最小化隐变量$z$的后验分布和先验分布的KL散度。我们同样可以从数据传输的角度理解VAE。&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>【译】深度生成建模（二）</title>
      <link>https://www.ysecho.top/posts/2023/%E6%B7%B1%E5%BA%A6%E7%94%9F%E6%88%90%E6%A8%A1%E5%9E%8B%E4%BA%8C/</link>
      <pubDate>Fri, 10 Nov 2023 22:59:17 +0800</pubDate>
      
      <guid>https://www.ysecho.top/posts/2023/%E6%B7%B1%E5%BA%A6%E7%94%9F%E6%88%90%E6%A8%A1%E5%9E%8B%E4%BA%8C/</guid>
      <description>&lt;h2 id=&#34;11-人工智能不仅仅是决策&#34;&gt;1.1 人工智能不仅仅是决策&lt;/h2&gt;
&lt;p&gt;在思考深度生成建模之前，先看一个简单的例子：假如我们已经训练了一个对动物图像$\boldsymbol{x}\in\mathbb{Z}^D$分类的深度神经网络，图像的标签表示为$y\in\mathcal{Y}$, 其中$\mathcal{Y}$={cat, dog, horse}；假设这个神经网络已训练完成且能够对一个样本进行正确分类。目前为止还不错，对吧？但如文献[1]所指出，在输入图像中添加一些噪声可能会导致完全错误的分类结果。图1.1展示了一个添加噪声改变预测标签概率的例子；然而，加入的噪声几乎没有改变图像的内容（至少对人类来说）。&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>【译】深度生成建模（一）：前言</title>
      <link>https://www.ysecho.top/posts/2023/%E6%B7%B1%E5%BA%A6%E7%94%9F%E6%88%90%E6%A8%A1%E5%9E%8B%E4%B8%80/</link>
      <pubDate>Sat, 28 Oct 2023 12:03:30 +0800</pubDate>
      
      <guid>https://www.ysecho.top/posts/2023/%E6%B7%B1%E5%BA%A6%E7%94%9F%E6%88%90%E6%A8%A1%E5%9E%8B%E4%B8%80/</guid>
      <description>&lt;figure class=&#34;align-center &#34;&gt;
    &lt;img loading=&#34;lazy&#34; src=&#34;https://www.ysecho.top/2023_image/1.1.dgm.png#center&#34; width=&#34;50%&#34;/&gt; 
&lt;/figure&gt;



&lt;div class=&#34;block info&#34;&gt;
  &lt;strong&gt;虽然以生成式AI作为研究方向，但是对与各种生成式模型实在是一知半解，缺乏深入的认识。网络上的教程和解读纷繁多样，即使看过不少，不过大都囫囵吞枣，早已成过眼云烟。&lt;/strong&gt;
😮‍💨
&lt;strong&gt;最近正好发现22年出版的《Deep Generative Modeling》（作者：Jakub M. Tomczak）一书，是个系统学习深度生成模型的好机会。秉着好记性不如烂笔头的精神，打算通读一遍并将其中的内容翻译记录下来，作为加深记忆理解之用。限于英语水平，且有些内容融合了个人看法，所做翻译未必与原文完全一致。&lt;/strong&gt;
&lt;/div&gt;


&lt;div class=&#34;block tip&#34;&gt;
  &lt;strong&gt;本书的序由机器学习领域大牛Max Welling而作，通读下来，感觉更像一篇随笔，其中没有对具体技术做深入阐述，只描述了对当前AI的一些看法，但其思考的问题和方式却值得学习借鉴，故将序言翻译整理如下：&lt;/strong&gt;
&lt;/div&gt;
&lt;p&gt;在过去十年中，深度学习的崛起引领了人工智能领域的巨大进展，彻底改变了众多子领域，例如计算机视觉、语音识别和自然语言处理等。此时此刻，更多的领域正在被颠覆重塑，包括机器人学、无线通信以及各种自然科学。&lt;/p&gt;</description>
    </item>
    
  </channel>
</rss>
