<?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>MLP on Blog</title>
    <link>/tags/mlp/</link>
    <description>Recent content in MLP on Blog</description>
    <generator>Hugo -- 0.146.0</generator>
    <language>zh-cn</language>
    <lastBuildDate>Fri, 21 Aug 2026 03:00:00 +0800</lastBuildDate>
    <atom:link href="/tags/mlp/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>【LLM】从零开始学大语言模型 | 1 | 神经网络和多层感知机</title>
      <link>/posts/%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C%E5%92%8Cmlp/</link>
      <pubDate>Fri, 21 Aug 2026 03:00:00 +0800</pubDate>
      <guid>/posts/%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C%E5%92%8Cmlp/</guid>
      <description>&lt;h2 id=&#34;一从生物神经元到人工感知机&#34;&gt;一、从生物神经元到人工感知机&lt;/h2&gt;
&lt;p&gt;深度学习的名字里带有“神经”二字，是因为它最初的灵感来自生物神经元。一个生物神经元大致是这样工作的：树突接收来自其他神经元的信号，细胞体对这些信号进行整合；&lt;strong&gt;当总信号超过某个阈值时，神经元就会被激活&lt;/strong&gt;，并通过轴突向外发出脉冲。人工感知机就是对这一过程的高度简化。1957 年前后，Frank Rosenblatt 提出了人工感知机模型。它的数学表达非常简单：&lt;/p&gt;
&lt;p&gt;$$y = f(W^T x + b)$$&lt;/p&gt;
&lt;p&gt;也可以写成：&lt;/p&gt;
&lt;p&gt;$$y = f\left(\sum_{i=1}^{n} w_i x_i + b\right)$$&lt;/p&gt;
&lt;p&gt;其中：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;$x$ 是输入特征向量。例如一张图片的像素值、一个样本的若干数值特征；&lt;/li&gt;
&lt;li&gt;$W$ 是权重向量，表示每个输入特征的重要程度；&lt;/li&gt;
&lt;li&gt;$b$ 是偏置，可以理解为一个阈值，决定神经元是否容易被激活；&lt;/li&gt;
&lt;li&gt;$f$ 是激活函数，或者说输出函数；&lt;/li&gt;
&lt;li&gt;$y$ 是神经元的输出。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;很多初学者第一次看到这个公式时会问：这里的 $f$ 到底是什么？是不是一个 0/1 函数？这个猜测是有道理的。在最早的感知机模型中，$f$ 确实常常是阶跃函数：&lt;/p&gt;
&lt;p&gt;$$
f(z)=
\begin{cases}
1, &amp;amp; z &amp;gt; 0 \\
0, &amp;amp; z \le 0
\end{cases}
$$&lt;/p&gt;
&lt;p&gt;也就是说，从二维来看，如果加权求和的结果大于 0，输出 1；否则输出 0。这看起来就是一个硬性的二分类器。从几何上看，感知机在输入空间中定义了一个超平面：&lt;/p&gt;
&lt;p&gt;$$
W^T x + b = 0
$$&lt;/p&gt;
&lt;p&gt;这个超平面把数据分成两类：一侧输出 1，另一侧输出 0。在二维空间里，它是一条直线；在三维空间里，它是一个平面；在更高维空间里，它是超平面。因此，感知机本质上是一个线性分类器。&lt;/p&gt;
&lt;p&gt;不过，阶跃函数虽然直观，却有一个严重问题：它在 $z=0$ 处不可导。不可导意味着我们无法用微积分中的链式法则去计算梯度，也就很难通过“误差反向传播”来更新参数。所以，在现代神经网络中，感知机公式里的 $f$ 通常不再是阶跃函数，而是更平滑、至少几乎处处可导的函数，例如 Sigmoid、Tanh、ReLU 等。这些函数统称为激活函数。就是说，今天当我们写：&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
