第3章:AI技术基础(下):深度学习入门

好,咱们接着聊。上一章我们把机器学习的基础打了一遍,这一章我带你走进深度学习的世界。说实话,我刚入行那会儿,深度学习还是个挺玄乎的词。后来做项目做多了,发现它其实就是一套更强大的工具——能处理更复杂的数据,比如图片、语音、文本。

你想想看,传统机器学习处理表格数据还行,但一张1024x768的图片,直接扔给逻辑回归?那特征维度就爆炸了。深度学习就是来解决这类问题的。

3.1 神经网络:从感知机到多层网络

神经网络这东西,说白了就是模仿人脑的神经元结构。当然,别被“模仿人脑”吓到,实际就是个数学函数。

最简单的单元叫感知机。它接收多个输入,每个输入有个权重,加起来过个激活函数,输出0或1。嗯,这里要注意:单层感知机只能解决线性可分问题。我在项目中遇到过,有人想用单层感知机做图像分类,结果怎么调都不收敛——因为图像数据本质上是非线性问题。

那怎么办?堆层数。把多个感知机叠起来,就成了多层感知机(MLP)。结构很简单:

  • 输入层:接收原始数据,比如图片的像素值
  • 隐藏层:中间的计算层,可以有一层或多层
  • 输出层:输出最终结果,比如分类标签

我个人的习惯是,设计网络时先从2-3层开始试。别一上来就整个50层的ResNet,调参能调到怀疑人生。

核心要点:神经网络的本质是“万能近似器”。只要有足够的神经元和层数,理论上可以拟合任何函数。但实际中,过深的网络会带来梯度消失/爆炸问题——这个后面会讲。

3.2 卷积神经网络(CNN):专治图像问题

CNN是我最喜欢的网络结构之一。为什么?因为它聪明。全连接网络处理图像时,每个像素都要跟下一层所有神经元连接,参数多到爆炸。一张256x256的彩色图,输入维度就是196608,全连接第一层如果有1000个神经元,光这一层就有近2亿个参数——训练个鬼。

CNN用了两个核心技巧来解决:

  1. 局部连接:每个神经元只连接输入的一小块区域(感受野)
  2. 权值共享:同一个卷积核在整个图像上滑动,参数是共享的

举个例子,一个3x3的卷积核,参数只有9个(加上偏置共10个),但它能提取整个图像的边缘、纹理等特征。我在做电商图片分类项目时,就是用CNN提取商品图片的特征,准确率从传统方法的72%直接干到了91%。

典型的CNN结构包含:

  • 卷积层:提取特征,比如边缘、角点
  • 池化层:降采样,减少参数,防止过拟合
  • 全连接层:最后做分类或回归

实战技巧:设计CNN时,我建议卷积核大小用3x3或5x5,步长用1,padding用same。这样特征图尺寸不变,信息损失少。池化层一般用2x2最大池化,步长2,尺寸减半。

3.3 循环神经网络(RNN):处理序列数据

CNN处理图像很牛,但遇到文本、语音、时间序列这种数据就抓瞎了。为什么?因为这些数据有先后顺序,前面的内容会影响后面的理解。你想想看,“我喜欢苹果”和“苹果发布了新手机”,同一个“苹果”意思完全不同——上下文决定的。

RNN就是为序列数据设计的。它的核心思想是:每个时间步的隐藏状态不仅由当前输入决定,还受上一个时间步的隐藏状态影响。说白了,它有“记忆”。

但RNN有个大问题:长期依赖。当序列很长时(比如一篇500字的文章),前面的信息传到后面已经衰减得差不多了。我在做情感分析项目时,用普通RNN处理长评论,效果很差——模型根本记不住开头说了什么。

解决方案是LSTM(长短期记忆网络)和GRU(门控循环单元)。它们引入了“门”机制,可以选择性地记住或遗忘信息。LSTM有三个门:

  • 遗忘门:决定丢弃哪些旧信息
  • 输入门:决定存储哪些新信息
  • 输出门:决定输出哪些信息

避坑指南:我曾经在项目中直接用普通RNN处理200步以上的序列,结果梯度爆炸了。后来换成LSTM,加了个梯度裁剪(gradient clipping),问题就解决了。记住:处理长序列,优先选LSTM或GRU。

3.4 NLP与计算机视觉基础

这两个领域是深度学习应用最广的方向。作为AI产品经理,你不一定要会手写模型,但必须理解它们能做什么、不能做什么。

NLP基础

自然语言处理的核心任务包括:

任务 说明 典型应用
文本分类 判断文本的类别 垃圾邮件过滤、情感分析
命名实体识别 识别文本中的人名、地名、组织名 信息抽取、知识图谱构建
机器翻译 将一种语言翻译成另一种 Google翻译、DeepL
文本生成 根据输入生成连贯文本 ChatGPT、文案生成

文本怎么变成数字让模型理解?答案是词嵌入。把每个词映射成一个向量,比如“国王” - “男人” + “女人” ≈ “女王”。这个性质很有意思,说明模型学到了词之间的语义关系。

计算机视觉基础

CV的核心任务:

  • 图像分类:这张图里是什么?比如猫还是狗
  • 目标检测:图里有什么物体,在什么位置?比如行人检测
  • 图像分割:把图中的每个像素分类,比如自动驾驶中的道路、车辆、行人分割
  • 图像生成:根据描述生成图片,比如Stable Diffusion

我记得有个项目要做商品图片的自动标注,用目标检测模型YOLOv3,在几千张标注数据上训练后,准确率能达到85%以上。但要注意,如果商品种类太多(比如超过100类),模型效果会明显下降——这时候需要更复杂的模型或者更多的数据。

3.5 模型训练与评估指标

模型搭好了,怎么训练?怎么知道它好不好?这部分是产品经理必须掌握的,因为你得跟算法工程师沟通需求、评估效果。

训练流程

标准流程分五步:

  1. 数据准备:收集、清洗、标注、划分训练集/验证集/测试集
  2. 模型定义:选择网络结构,设置超参数(学习率、批次大小等)
  3. 损失函数:定义优化目标,分类用交叉熵,回归用均方误差
  4. 优化器:选择梯度下降算法,Adam是默认首选
  5. 迭代训练:前向传播→计算损失→反向传播→更新参数

这里有个关键点:训练集、验证集、测试集一定要分开。我见过有人用测试集调参,结果模型在真实场景中表现一塌糊涂——这叫数据泄露,是新手常犯的错误。

评估指标

不同任务用不同指标。分类任务最常用:

指标 公式 说明
准确率 (TP+TN)/(TP+TN+FP+FN) 整体正确率,但类别不平衡时不可靠
精确率 TP/(TP+FP) 预测为正例的样本中,真正正例的比例
召回率 TP/(TP+FN) 真正的正例中,被正确找出来的比例
F1分数 2*P*R/(P+R) 精确率和召回率的调和平均
AUC ROC曲线下面积 衡量模型排序能力,0.5=随机,1=完美

产品经理必知:跟算法同学沟通时,别只问“准确率多少”。要问清楚是哪个指标。比如做反欺诈模型,精确率比召回率重要——宁可漏掉几个欺诈,也别误伤大量正常用户。反过来,做癌症筛查,召回率更重要——宁可误诊,也别漏诊。

回归任务常用指标:

  • MAE:平均绝对误差,直观易懂
  • MSE:均方误差,对大误差惩罚更大
  • :决定系数,衡量模型拟合优度,越接近1越好

嗯,这一章内容不少。从神经网络的基本原理,到CNN处理图像、RNN处理序列,再到NLP和CV的基础任务,最后是训练流程和评估指标。你把这些搞懂了,跟算法团队沟通基本不会掉链子。

下一章我们聊聊数据——AI产品的命脉。数据怎么来、怎么管、怎么用,都是实战中绕不开的坑。