巴普洛夫的狗
今天豆瓣推送的一篇关于养狗的文章让我想起了中学课本读学过一个关于条件反射的经典实验:巴普洛夫的狗。俄国生理学家巴普洛夫在研究的狗的消化时发现狗看到肉会自动流口水,如果摇铃,但是不给肉,狗是不会流口水的。于是巴普洛夫每次给肉前先摇铃,再给肉,重复多次。后来只摇铃、不给肉,发现狗照样会流口水,铃声变成了条件刺激,流口水变成了条件反射。于是他推论出,原本无关的刺激,通过和能自然引发反应的刺激反复配对,也能单独引发同样反应。
回想刚开始使用QQ的年代,上线就是彩色头像,下线就是灰色头像、我们不会下意识的反复登录QQ收看是否有人会给于自己信息留言或回复。因为你会清楚的知道灰色头像的对方无法立刻回复你的信息,或者对方隐身情况即代表了对方无社交需求的状态。现代微信当道,QQ逐渐没落,这种现象在金融里称为cannibalization(产品蚕食)。当这款产品现在大家不得不捏着鼻子用的时候。整个互联网的逻辑已发生翻天覆地的变化。
你有没有发现,现在几乎所有产品,都在训练你对信号做出反应?上到微信、飞书等即时通讯,下到各类手游、短视频,都逐渐变成了监督式的任务制模式。当我们听到手机的消息提示音会下意识的看手机,当后台的游戏资源堆积满了后会需要打卡,积分、抽奖,曾几何时,我们已逐渐变为对信号产生本能反应。现代产品不是在服务你,而是在给你做条件反射训练。
为了克服这种被动的训练。为何我们不把这个过程改为非监督式学习(Unsupervised Learning)呢?

Image by JackieLou DL from Pixabay
作为机器学习的一个类别。非监督式学习(Unsupervised Learning)简单说,就是不给答案,让模型自己“看数据、找门道”。非监督式学习让模型在一种在没有已知标签的数据中,让其自动发现数据结构和规律的机器学习方法,常用于聚类、降维和异常检测。那到底如何将巴普洛夫的狗实验改造为非监督式学习呢?狗狗从关心有没有吃的变为关心:铃铛和肉总是同时出现,那主人喂我和摇铃铛是不是同一个事情呢?
首先让我们假设搞到了马斯克的脑机接口拿给狗狗用一天。赫布(Donald Hebb)则为我们的实验提供了假设模型赫布学习理论 (Hebbian Learning)。我们只需要将铃声+气味共现后,不立刻给食物,真正喂食发生在与铃声无关的随机时间,并观察狗狗的脑机数据结果。
注:不看下列公式不影响理解结论
假设铃声为神经元A(x_i)、肉为神经元B(x_j),那突触权重 w_{ij} 的变化正比于神经元 i 和 j 的激活乘积
实际上,没有人告诉狗狗“你应该学会什么”,但是各种信号的同时出现(铃声、肉味、流口水),让狗狗不知不觉的把它们自动绑定在一起。如果脑机能够捕捉到狗狗的神经元波动信号,那也许证明了狗狗从流口水这样的结果期待,变成了学会对环境规律总结,形成自我的认知地图。甚至,狗狗可能不会流口水,但是狗狗会变为异常敏锐。一旦铃声响起而肉没出现,它会感到非常强烈的异常检测信号。铃声不再等于肉,而是铃声和肉在本狗的世界观里是一件事。
【非技术读者可跳过以下小节】为了证明:世界里,铃声和肉总是一起出现,模型(狗狗)被迫用一个“概念”去理解它们,只要给铃声,它就会脑补出肉。
于是我们用自编码器实现这个非监督的条件反射模拟。我们在PyTorch中模拟这个实验:
import torch
import torch.nn as nn
import torch.optim as optim
# 1. 模拟环境数据:铃声和肉总是高度同步
# 生成 1000 条数据,模拟铃声和肉总是同时出现(带一点噪声)
data = torch.cat([
torch.ones(500, 2) + torch.randn(500, 2) * 0.1, # 都有
torch.zeros(500, 2) + torch.randn(500, 2) * 0.1 # 都没有
], dim=0)
# 2. 定义自编码器
class PavlovAE(nn.Module):
def __init__(self):
super(PavlovAE, self).__init__()
# 编码器:2维 -> 1维 (潜空间)
self.encoder = nn.Linear(2, 1)
# 解码器:1维 -> 2维 (重构)
self.decoder = nn.Linear(1, 2)
def forward(self, x):
latent = torch.sigmoid(self.encoder(x)) # 压缩
reconstructed = self.decoder(latent) # 还原
return reconstructed, latent
# 3. 训练过程
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
model = PavlovAE().to(device)
criterion = nn.MSELoss()
optimizer = optim.Adam(model.parameters(), lr=0.01)
data = data.to(device)
for epoch in range(200):
output, _ = model(data)
loss = criterion(output, data)
optimizer.zero_grad()
loss.backward()
optimizer.step()
if (epoch + 1) % 50 == 0:
print(f"Epoch [{epoch+1}/200], Loss: {loss.item():.4f}")
# 4. 实验测试
print("\n--- 实验结果 ---")
with torch.no_grad():
# 测试 A:只给铃声 [1, 0]
test_bell = torch.tensor([[1.0, 0.0]]).to(device)
prediction, latent = model(test_bell)
print(f"输入信号 (只有铃声): {test_bell.cpu().numpy()}")
print(f"潜空间特征 (理解为'晚餐'的概念): {latent.item():.4f}")
print(f"模型重构结果 (脑补出的画面): {prediction.cpu().numpy()}")
导入Pycharm运行后结果如下:
Loss结果逐渐下降,狗狗逐渐理解了吃饭时刻。潜在空间特征的出现给了狗狗一种不是真吃饭,但是有点像吃饭的信号,这是它已经开始心理上准备吃饭了。正好说明非监督版巴普洛夫实验真的跑通了。
迷茫定价

Image by Raniere from Pixabay
当世界不再给你标签,你该怎么给自己定价?
诚然,传统的教育和职业路径就是典型的监督式学习。无论是考研、考证、还是完成KPI,都属于典型的特征输入,而我们则被分数,业绩、排名归类为不同的子集。并按照所处的高低阶段子集得到奖励。但是新的危机和机遇却因为AI的出现变得混乱不堪,如果巴浦洛夫不在了,或者肉发完了,狗狗依然会对着铃声发疯似的流口水。这也是为什么当代许多人在面临行业变革时感到的巨大迷茫,因为这种混乱让大家失去了典型的外部标签的指引,不知道如何自发的定义价值,当你决定把你的各种过时#Tag写上你的简历却依旧无人问津的时候,你深深的对自我能力的定价感到怀疑。在一个没有标签的世界里,个人价值如何被看见?
自从ChatGPT2.5发布和互联网越发孤岛以来,现代社会的信息越来越多的成为了海量、无标记的未清洗数据,没有人会告诉你哪些是肉,哪些是杂音,就像有的人用抖音学K线,有的人用快手看擦边,有的人说这周又收藏了多少条微信文章、有的人加了多少个小时的班。不同岛屿的人们在各方鄙视链端互相猜忌。
行情不好的时候,人们的选择开始分化。有人选择考公、考研等待变局,降低风险延迟决策。有的人在观察市场的趋同和机会,试图在不确定性中富贵险中求。也有人试图想找到市场的定价差异,在混乱中利用自身优势收割他人。本质却一致,试图对抗失去确定性的世界,从监督式转为非监督式。
不管怎样,我愿抛出一个暴论,在未来的5-10年内,AI将会完成绝大部分监督式任务和学习过程。未来一定是非监督式、结构感知力的天下。
但是,从”执行者“到”布局者“的转变,真的适合每一个人吗。

mage by Moritz Strohm from Pixabay
至少在这点,我个人持悲观态度,《赛博朋克2077》里的世界未必也许真的会像那般极端形式而来。但某些趋势正提前显现。当我在完成这篇文章的时候,Seedance2.0的发布又作为一记重拳砸向内容行业的底层逻辑。在 AI 的时代,筛选将变得极其困难,一个优质的内容提供者很可能会因此掩埋在大量的工业化复制品之下。但同时,AI 也可以提高最好的那批内容提供者的产出。但有点可悲的是,这种产出往往是同质化的。当所有结果都被同一个 AI 修饰过,我们所用的词汇,造句的格式都让人有种似曾相识的感觉,这到底是好还是坏呢?
不过,我依然相信,即使我们如何挣扎都显得无用,但是不妨碍成为自己的强尼·银手。也许以前一个毕业于卡内基梅隆大学CS的学生是看不起打Hello World的纯血文科生的。但是AI Skills的出现又让这一切对每个人有了转机。
也许实现这样愿景的第一步即为打烂那些资本为你量身定制的监督式、被动的数据困境。从对自己的监督式学习,逐渐改变为非监督式学习。工作后,我常对权威表示嗤之以鼻。从监督式学习到非监督式学习,本质不是不学,而是不再等别人告诉你对不对。以前我用微软的OneNote来记笔记,后来我发现了obsidian的双链、又了解了诸如《防弹笔记法》这样的逻辑方法论。遂停止了追问标准答案。而尝试去链接万物。如果我们真的能在大脑里编制出一张清晰的逻辑网络,往往好过克服艾宾浩斯的第50%以后的曲线。因为无论怎么样,你的所有知识会在95%的曲线之后全部忘掉。但是你编制的逻辑网络是无法磨灭的,因为无形之中这些双链、甚至多链,组合成了无数个节点和网络、在无数的Nodes中,甚至又衍生出了属于你自己的强化学习路径。
如果有一天,你发现当一个事件出现很明显的结论,自己不在急着表态,而是预感其未来走向时,也许真的就是实现了非监督式的切换。监督式学习让你得分,非监督式学习让你“有感觉”。
而现实世界,奖励的往往是后者。

Image by Albrecht Fietz from Pixabay
不过,非监督式学习并不一定意味着自由,也许隐蔽的结构性偏见。 当我们看结构时,看的往往仍是自己所处信息环境允许我们看到的那部分结构。
如果有一天,你发现自己在面对新事物时,不再急于判断好坏,而是下意识地在脑中寻找它和过去经验的共现结构,那么你已经开始用非监督的方式理解世界了。
